Appunti per Scuola e Università
humanisticheUmanistiche
Appunti e tesine di tutte le materie per gli studenti delle scuole medie riguardanti le materie umanistiche: dall'italiano alla storia riguardanti le materie umanistiche: dall'italiano alla storia 
sceintificheScientifiche
Appunti, analisi, compresione per le scuole medie suddivisi per materie scientifiche, per ognuna troverai appunti, dispense, esercitazioni, tesi e riassunti in download.
tecnicheTecniche
Gli appunti, le tesine e riassunti di tecnica amministrativa, ingegneria tecnico, costruzione. Tutti gli appunti di AppuntiMania.com gratis!
Appunti
informatica
CComputerDatabaseInternetJava
Linux unixReti


AppuntiMania.com » Informatica » Appunti di computer » Struttura a livelli di un sistema operativo

Struttura a livelli di un sistema operativo




Visite: 722Gradito:apreciate 4-stela [ Picolo appunti ]
Leggi anche appunti:

Informatica - gli archivi


Informatica - gli archivi ARCHIVI DI DATI Per poter gestire

La terza generazione: dal 60' al 68'


La terza generazione: dal 60' al 68' La terza generazione di elaboratori

Uso di asim


Uso di ASIM 1.1           I
immagine di categoria

Scarica gratis Struttura a livelli di un sistema operativo

STRUTTURA A LIVELLI DI UN SISTEMA OPERATIVO


Oggi prendiamo in considerazione la struttura a livelli dei SO. Si tenga presente che i SO reali possono avere una struttura meno articolata di quella che presentiamo qui di seguito.


1) PROGRAMMA UTENTE.


2) INTERPRETE DEI COMANDI (SHELL). Questo livello si occupa della traduzione dei comandi simbolici in invocazioni di moduli di memoria.


3) PROGRAMMI DI UTILITÀ. Programmi di sistema per il supporto allo sviluppo dei programmi, editor di testi, fogli elettronici, database, videogiochi etc.[1].


4) FILE SYSTEM. Gestione di blocchi di informazioni strutturati logicamente e registrati nella memoria secondaria (file), e controllo degli accessi (chi può leggere, scrivere, modificare i file).


5) PERIFERICHE VIRTUALI. Simulazione di periferiche virtuali dedicate: implementazione di primitive di I/O, gestione parziale dei malfunzionamenti, etc..


6) GESTIONE MEMORIA VIRTUALE. Corrispondenza tra indirizzi logici & fisici. Allocazione della memoria ai programmi che ne fanno richiesta. Caricamento e scaricamento delle informazioni. Protezione della memoria.


7) NUCLEO. Gestione degli eventi asincroni, primitive di sincronizzazione, allocazione dell'unità centrale (CPU) tramite scheduler.


8) HARDWARE.


I livelli 2 e 3 per poter funzionare devono richiamare tutti i livelli successivi, 4, 5, 6 e 7, che nell'insieme costituiscono il SO vero e proprio. Ciò che sta ai livelli più esterni, da 1 a 3, è invece un insieme di processi dedicati. Il livello 1 e il livello 2 sono sostanzialmente equivalenti nei riguardi di tutti gli altri: non è detto cioè che il livello 1 'abbia bisogno' delle funzioni esplicate dal livello 2.

In base a quanto osservato all'inizio di pag.2, si può dire anche che i livelli da 4 a 7 costituiscono il kernel del SO. Alcuni SO hanno un kernel più piccolo, in quanto certe funzioni che nello schema che abbiamo presentato rientrano in tali livelli sono spostate ai livelli superiori (sono cioè anche esse dei processi dedicati). Questo comporta che, mentre secondo lo schema tradizionale un processo, per ottenere un determinato servizio, deve rivolgersi direttamente - per esempio - al file system (sia pure attraverso l'interprete dei comandi), in presenza di un kernel ridotto il processo potrebbe richiamare un altro processo suo pari, il quale dialogherà direttamente con uno dei livelli facente parte del kernel per ottenere il servizio richiesto: nel nostro esempio il 5, il 6 o il 7 (a seconda di quanto il kernel è stato reso più piccolo).


Abbiamo detto che ogni strato del SO costituisce una macchina virtuale. Solo lo strato 8 (l'hardware) costituisce una macchina reale o MACCHINA BASE:


Unità centrale memoria disco



periferica periferica


Rispetto ad essa, i PROCESSI possono essere RUNNING (in esecuzione nella CPU), READY (per poter funzionare hanno bisogno solo della disponibilità della CPU e attendono il momento opportuno per occuparla) e WAIT (sono in attesa di qualche evento che li farà diventare prima ready e poi, quando sarà possibile, running).


La macchina emulata dal nucleo può essere schematizzata come segue:





CPU virtuale CPU virtuale CPU virtuale memoria disco




periferica             periferica periferica



Ogni processo dispone virtualmente di un proprio processore, nei riguardi dei quali un processo può essere solo RUNNING. Quando un processo WAIT può essere eseguito gli viene assegnata una CPU virtuale, e diventa running.


La macchina simulata dal gestore della memoria virtuale è:


memoria virtuale memoria virtuale

CPU virtuale CPU virtuale




periferiche


Ogni processo possiede virtualmente una propria CPU e una propria memoria. Il gestore della memoria virtuale si occupa pure di simulare la memoria centrale tramite la memoria di massa.


La macchina virtuale del livello successivo (periferiche virtuali) assegna a ciascun livello la sua CPU, la sua memoria ed un insieme di periferiche proprie. Cosa significa questo? Supponiamo che due processi richiedano entrambi una stampa su di una macchina che possiede una sola stampante. Anziché lasciare che ciò determini un'interruzione nel funzionamento dei due programmi, si fa in modo che uno dei processi mandi il suo output alla stampante mentre l'altro lo mandi al disco; il SO si occuperà di redirezionarlo alla stampante, non appena  ciò sarà possibile.





In un SO come il DOS i 'programmi di utilità' possono essere molto meno complessi di quelli indicati: ad esempio il comando md (make directory) è già un programma di utilità.

Scarica gratis Struttura a livelli di un sistema operativo
Appunti su:



Scarica 100% gratis e , tesine, riassunti



Registrati ora

Password dimenticata?
  • Appunti superiori
  • In questa sezione troverai sunti esame, dispense, appunti universitari, esercitazioni e tesi, suddivisi per le principali facoltà.
  • Università
  • Appunti, dispense, esercitazioni, riassunti direttamente dalla tua aula Universitaria
  • all'Informatica
  • Introduzione all'Informatica, Information and Comunication Tecnology, componenti del computer, software, hardware ...