La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Il Sistema Operativo insieme di programmi Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono.

Presentazioni simili


Presentazione sul tema: "Il Sistema Operativo insieme di programmi Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono."— Transcript della presentazione:

1 Il Sistema Operativo insieme di programmi Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: u gestire efficientemente u gestire efficientemente l'elaboratore e le sue periferiche, cercando di sfruttare al massimo tutte le componenti hardware ambiente amichevole u creare un ambiente amichevole per l'interazione uomo-macchina

2 Il Sistema Operativo Funzioni del Sistema Operativo Funzioni del Sistema Operativo: u Avvio u Avvio dellelaboratore processore u Gestione del processore e dei programmi in esecuzione memoria principale u Gestione della memoria principale memoria secondaria u Gestione della memoria secondaria input/output u Gestione dei dispositivi di input/output file u Gestione dei file u Interazione u Interazione con lutente

3 Il Sistema Operativo n Tipologie di SO: mono-utentemulti-utente u sistemi mono-utente - sistemi multi-utente i sistemi mono- utente sono destinati ad elaboratori per usi personale (tipo PC) mentre i sistemi multi-utente sono destinati ad elaboratori utilizzati da piu` utenti contemporaneamente mono-programmati multi-programmati u sistemi mono-programmati - sistemi multi-programmati i sistemi mono- programmati gestiscono l esecuzione di un solo programma alla volta, mentre i sistemi multi-programmati gestiscono piu` programmi contemporaneamente interattivi batch u sistemi interattivi - sistemi batch classificazione basata sull interazione con lutente

4 Il Sistema Operativo n Sistemi mono-utente interattivi pensati per Personal Computer u IBM PC - Compatibili (DOS - Windows) u Macintosh n L interazione utente/computer puo` essere: u testuale F es. MS-DOS per PC-IBM u grafica F es. Macintosh F es. Windows per PC-IBM

5 Il Sistema Operativo: Esempio Immettiamo il comando date

6 Il Sistema Operativo: Esempio Premendo il tasto Enter si ottiene

7 n Le operazioni effettuate sembrano abbastanza semplici ma provocano una serie di eventi in cui vengono coinvolte sia risorse hardware che risorse software n Il coordinamento e la gestione delle varie risorse viene effettuato dal Sistema Operativo n Il Sistema Operativo fornisce i servizi che sono necessari a tutti gli altri programmi in esecuzione

8 Esempio listener directory manager terminal driver disk driver file manager Disco rigido BUFFER Tastiera BUFFER Monitor OROLOGIO dat dat

9 ¶Per ogni carattere immesso tramite la tastiera viene generato un codice corrispondente ·Il codice, grazie ad una componente hardware, viene memorizzato in unarea di memoria riservata (buffer) e viene inviato un segnale alla CPU (interrupt) ¸Quando la CPU riceve l`interrupt dalla tastiera attiva un modulo (un piccolo programma) chiamato terminal driver ¹Il terminal driver invia allo schermo una copia del codice del carattere immesso per visualizzare il carattere

10 ºIl codice corrispondente al carattere Enter indica che il comando immesso (date) è completo »Il terminal driver attiva un altro modulo chiamato listener (perchè attende le richieste provenienti dagli utenti) ¼Il listener legge i caratteri dal buffer della tastiera e ricerca un programma chiamato date, lo carica in memoria centrale e lo esegue ½Il programma date va a leggere un orologio (un contatore che tiene conto dello scorrere del tempo) e passa linformazione letta al terminal driver ¾Il terminal driver trasmette la data al monitor che la visualizza

11 Organizzazione del SO n La gestione dei vari eventi da parte di un S.O. è una delle aree di vitale importanza dellinformatica n Lidea di base è quella di creare una gerarchia di livelli di astrazione (struttura a cipolla) n In questo modo, ad ogni livello le funzionalità presenti possono ignorare i dettagli sulle funzionalità offerte da altri livelli kernel gestione memoria processore, risorse interfaccia comandi

12 Organizzazione del SO n Al livello più alto della gerarchia di funzionalità si trova lutente del sistema n Idealmente lutente è ignaro di tutti i dettagli delle operazioni svolte dai livelli inferiori della gerarchia n Lutente ha conoscenza solo delle operazioni che è interessato ad effettuare u Nellesempio della data lutente è interessato alla data e conosce solo il comando che serve per ottenere tale informazione

13 Avvio dellelaboratore n Il sistema operativo viene mandato in esecuzione allaccensione del calcolatore (fase di bootstrap) n In questa fase una parte del sistema operativo viene caricata in RAM,in genere questa parte comprende: gestione del processore u programmi per la gestione del processore gestione della RAM u programmi per la gestione della RAM gestione dellI/O u programmi per la gestione dellI/O gestione dei file u programmi per la gestione dei file linterfaccia con lutente u programmi per linterfaccia con lutente virus n Spesso in questa fase si eseguono anche programmi per la ricerca di virus

14 Avvio dellelaboratore n Una parte del Sistema Operativo deve essere sempre mantenuta in RAM e deve sempre essere pronta per lesecuzione Sistema Operativo Spazio utente 0 1 n

15 Gestione del processore e dei processi n Il processore è la componente più importante di un sistema di elaborazione e pertanto la sua corretta ed efficiente gestione è uno dei compiti principali di un sistema operativo n Il ruolo del processore è quello di eseguire programmi n Chiamiamo processo un programma in esecuzione

16 Gestione del processore e dei processi n Quando si clicca sullicona di un programma, il Sistema Operativo: u cerca il programma corrispondente in memoria secondaria u copia il programma in RAM u imposta il Program Counter con lindirizzo della prima istruzione del programma principale

17 Gestione del processore e dei processi Sistemi mono-utente, mono-programmati un solo programma alla volta n Un solo utente puo eseguire un solo programma alla volta lanciato, eseguito e terminato n Il programma viene lanciato, eseguito e terminato non e utilizzata al meglio n La CPU non e utilizzata al meglio! Si spreca molto tempo passa molto del suo tempo in attesa del completamento n La CPU e molto piu veloce delle periferiche (dispositi di I/O e disco) quindi passa molto del suo tempo in attesa del completamento delle operazioni da parte di questi dispositivi idle n Durante queste fasi di attesa si dice che la CPU e idle

18 Gestione del processore e dei processi Esempio 1. n Un processo e costituito da 1000 istruzioni, la CPU ha frequenza di 1MHz, quindi il processo richiede: 10 3 /10 6 sec = 1msec n A meta esecuzione e richiesta la lettura di un dato dal disco. Il tempo di lettura e pari a 1msec. : tempo totale di esecuzione del processo = 2 msec. n Idle time = 1 msec.: Il 50% del tempo totale di esecuzione e tempo sprecato

19 Gestione del processore e dei processi Esempio 2. n Un processo e costituito da 1000 istruzioni, la CPU ha frequenza di 1MHz, quindi il processo richiede: 10 3 /10 6 sec = 1msec n A meta esecuzione e richiesta la lettura di un dato da tastiera. Il tempo di lettura e pari a 1sec. : tempo totale di esecuzione del processo = 1001 msec. n Idle time = 1 sec.: Il 99,9 % del tempo totale di esecuzione e tempo sprecato!!!

20 Gestione del processore e dei processi Sistemi multiprogrammati n Quando un processo si ferma in attesa di operazioni di I/O, la CPU passa ad eseguire un altro proceso n Il SO si occupa dellalternanza tra i vari processi contemporaneamente n Piu programmi sembrano cosi essere eseguiti contemporaneamente in ogni istante ce sempre un solo processo in esecuzione n In realta in ogni istante ce sempre un solo processo in esecuzione, ma se lalternanza e molto frequente si ha unimpressione di simultaneita contemporaneamente grado di multiprogrammazione n Il numero di processi contemporaneamente in esecuzione e comunque limitato ed e detto grado di multiprogrammazione

21 Gestione del processore e dei processi n Un processo può trovarsi in tre diversi stati: esecuzione, u in esecuzione, quando sta utilizzando il processore; attesa u in attesa (bloccato), quando è in attesa del verificarsi di un evento esterno (terminazione di unoperazione di input/output o altro) u pronto u pronto, quando è potenzialmente in condizione di poter utilizzare il processore che è occupato da un altro processo

22 Gestione del processore e dei processi I/O terminato o risorsa disponibile in_esecuzione prontoin_attesa creazione terminazione richiesta I/O o risorsa scambio esecuzione

23 Gestione del processore e dei processi Cosa succede se Cosa succede se…. non si ferma mai n Un processo non si ferma mai in attesa di I/O? n Piu utenti n Piu utenti vogliono usare il computer? distribuito politica di scheduling n E necessario che il tempo della CPU sia distribuito tra i processi in attesa: si parla di politica di scheduling della CPU. Se un processo in stato di esecuzione puo essere interrotto e ritornare nello stato di pronto, la politica si dice di tipo preemptive (prerilasciabile)

24 Gestione del processore e dei processi I/O terminato o risorsa disponibile in_esecuzione prontoin_attesa creazione terminazione richiesta I/O o risorsa scambio esecuzione Coda ready tempo scaduto

25 Gestione del processore e dei processi n Per gestire linsieme dei processi attivi il SO mantiene in unarea di memoria riservata, la tabella dei processi, in cui per ogni processo memorizza molte informazioni: u Identificatore del processo u Identificatore dellutente u Stato del processo u Contenuto del Program Counter e altri registri u Informazioni file aperti u ….

26 Gestione del processore e dei processi scambio di contesto n Le informazioni della tabella dei Processi servono a realizzare lo scambio di contesto (context switching) informazioni del suo stato vengono copiate nel suo descrittore n Quando un processo rilascia la CPU, le informazioni del suo stato vengono copiate nel suo descrittore allinterno della tabella dei processi ricopiati negli opportuni registri n Quando il processo torna in esecuzione questi valori vengono ricopiati negli opportuni registri riparte dal punto in cui era stato interrotto n In questo modo quando riprende lesecuzione, il processo riparte dal punto in cui era stato interrotto

27 Obiettivi del gestore dei processi n massimizzare l utilizzazione del processsore throughput n massimizzare il numero dei programmi eseguiti nell unita` di teempo (throughput) turnaround n minimizzare il tempo d`esecuzione dei processi (turnaround) n minimizzare il tempo d`attesa dei processi


Scaricare ppt "Il Sistema Operativo insieme di programmi Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono."

Presentazioni simili


Annunci Google