La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

1 Il Sistema Operativo: Esempio n Le operazioni effettuate sembrano abbastanza semplici ma … n Provocano una serie di eventi in cui vengono coinvolte sia.

Presentazioni simili


Presentazione sul tema: "1 Il Sistema Operativo: Esempio n Le operazioni effettuate sembrano abbastanza semplici ma … n Provocano una serie di eventi in cui vengono coinvolte sia."— Transcript della presentazione:

1 1 Il Sistema Operativo: Esempio n Le operazioni effettuate sembrano abbastanza semplici ma … n 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

2 2 Il Sistema Operativo: Esempio ¶Per ogni carattere immesso tramite la tastiera viene inviato un codice corrispondente al computer ·Il codice viene ricevuto da un circuito che si occupa di gestire la comunicazione con la tastiera ¸Il codice viene memorizzato in un’area di memoria riservata (buffer) e viene inviato un segnale alla CPU (interrupt) ¹Quando la CPU riceve un interrupt dalla tastiera attiva un modulo (un piccolo programma) chiamato terminal driver

3 3 Il Sistema Operativo: Esempio ºIl terminal driver invia al monitor una copia del codice del carattere immesso per visualizzare il carattere »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

4 4 Il Sistema Operativo: Esempio ¾Il programma date “va a leggere” un “orologio” (un contatore che tiene conto dello scorrere del tempo) e passa l’informazione letta al terminal driver ¿Il terminal driver trasmette la data al monitor che la visualizza Ognuno di questi eventi può essere descritto in dettaglio, per esempio: –prima che il programma listener carichi il programma date in memoria deve localizzare la “directory” dove tale comando si trova, ecc. –La fase di caricamento del programma comprende una fase di lettura dal disco rigido

5 5 Esempio Ogni carattere dato in input dalla tastiera viene ricevuto dal terminal driver che lo invia al monitor per la visualizzazione date listener directory manager terminal driver disk driver file manager Disco rigido BUFFER Tastiera BUFFER Monitor clock dat dat dat

6 6 Esempio Quando viene immesso il carattere Enter il terminal driver passa la stringa date al programma listener che interpreta il comando date listener directory manager terminal driver disk driver file manager Disco rigido BUFFER Tastiera BUFFER Monitor date

7 7 Esempio Il listener richiede al directory manager di cercare (nella directory dei comandi) date. Il programa directory manager richiede al programma file manager, che a sua volta si avvale del programma disk driver, di localizzare sul disco rigido il programma date Tastiera date listener directory manager terminal driver disk driver file manager Disco rigido BUFFER Monitor

8 8 Esempio Quando il comado date è stato localizzato (è un file eseguibile) il listener (mediante il file manager) lo carica in memoria. Per fare questa operazione il file manager utilizza il disk driver Tastiera date listener directory manager terminal driver disk driver file manager Disco rigido BUFFER Monitor

9 9 Esempio Il listener manda in esecuzione il programma date che legge il clock ed effettua delle operazioni di conversione per trasformare il valore letto nella data del giorno Tastiera date listener directory manager terminal driver disk driver file manager Disco rigido BUFFER Monitor

10 10 Esempio Il programma date tramite il terminal driver visualizza sul monitor la data Tastiera date listener directory manager terminal driver disk driver file manager Disco rigido BUFFER Monitor martedì 7 marzo 2000

11 11 Il Sistema Operativo: esempio Sebbene le operazioni che abbiamo preso in esame “sembrino abbastanza semplici” e di uso frequente esse provocano una serie di eventi e azioni molto complesse e articolate L’immissione di un semplice carattere (tramite tastiera) può provocare l’esecuzione di una decina (o anche più) di funzionalità del S.O.

12 12 Strategie adottate n La gestione dei vari eventi che devono essere gestiti da un S.O. è una delle aree di vitale importanza dell’informatica n L’idea di base che si utilizza è quella di creare una gerarchia di livelli di astrazione n In questo modo, ad ogni livello le funzionalità presenti possono ignorare i dettagli sulle funzionalità offerte da altri livelli –Quando il modulo listener carica un programma prelevandolo dal disco rigido non deve specificare il posizionamento della testina del disco rigido. Queste operazioni vengono effettuate da un altro programma che si trova ad un livello più basso della gerarchia

13 13 Il Sistema Operativo n Dal punto di vista strutturale il sistema operativo è formato da un insieme di livelli, che formano la cosiddetta struttura a cipolla n Ciascun livello fornisce un insieme di funzioni e di servizi a partire dalle funzioni e dai servizi forniti dal livello sottostante kernel gestione memoria processore, risorse interfaccia utente

14 14 Strategie adottate n Al livello più alto della gerarchia di funzionalità si trova l’utente del sistema n Idealmente l’utente è ignaro di tutti i dettagli delle operazioni svolte dai livelli inferiori della gerarchia n L’utente ha conoscenza solo delle operazioni che è interessato ad effettuare –Nell’esempio precedente l’utente è interessato alla data e conosce solo il comando che serve per ottenere tale informazione

15 15 Esempio: i driver dei dispositivi n Ogni dispositivo collegato al computer è gestito da un modulo del sistema operativo chiamato driver n Ogni volta che si aggiunge un nuovo dispositivo si deve installare il driver corrispondente Driver Modem Kernel Driver Stampante Driver Video

16 16 Il File System n Esistono diversi tipi di supporti per la memorizzazione permanente delle informazioni: dischi magnetici (floppy disk, hard disk), dischi ottici (cd), nastri magnetici n Il File System è quella parte del S.O. che si occupa di gestire e strutturare le informazioni memorizzate su supporti permanenti n I file vengono utilizzati per la memorizzazione dei programmi (sia programmi di sistema che programmi utente) e dei dati

17 17 Il File System n Possiamo vedere il disco fisso come un quaderno con tante pagine su cui un utente scrive delle relazioni (file) n L’utente ha la necessità di scrivere / cancellare / modificare i file

18 18 Il File System Problemi: n Quando un file viene cancellato rimangono delle pagine vuote n La modifica di un file può dare origine ad una versione: (più corta o più lunga di quella precedente) n Nel primo caso rimangono delle pagine vuote n Nel secondo caso la modifica può essere impossibile perchè ci potrebbero essere dei file che occupano le pagine seguenti a quelle del file da modificare Come risolvere questi problemi ?

19 19 Il File System n Esistono diverse soluzioni per questi problemi: –Utilizzo di un quaderno “ad anelli”: le pagine possono essere spostate, aggiunte, cancellate senza creare sprechi di spazio e senza limitazioni sulla crescita delle dimensioni di un file (l’unico limite è quello di avere fogli liberi) –Utilizzo di un indice: le pagine del quaderno vengono numerate e l’indice conterrà (nell’ordine) i numeri delle pagine del file

20 20 Il File System Esempio: I livelli più bassi e, in particolare il più basso, detto kernel, sono quelli più vicini all'hardware e dipendono quindi dalla specifica macchina; i livelli più alti, invece, sono più vicini agli utenti e ai programmi applicativi e sono abbastanza indipendenti dalle 4 caratteristiche hardware dell'elaboratore. Ai diversi livelli corrispondono funzionalità diverse; ad esempio, i livelli bassi si occupano della gestione efficiente delle risorse di calcolo mentre quelli alti forniscono 61 Dal punto di vista strutturale il sistema operativo è formato da un insieme di livelli, che formano la cosiddetta struttura a cipolla; ciascun livello fornisce un insieme di funzioni e di servizi a partire dalle funzioni e dai servizi forniti dal livello sottostante (si veda la figura 5.1). relazione1: pag. 1, pag. 4, pag :29 B C:\Matteo\LIBRO- CONS-RIBA\cap1.doc <-- graal /usr/NFS/graal1/matte o/LIBRO-CONS-RIBA cap1.doc :29 B C:\Matteo\LIBRO 2 -CONS- RIBA\cap2.doc <-- graal /usr/NFS/graal1/matte o/LIBRO-CONS-RIBA cap2.doc :29 B C:\Matteo\LIBRO- CONS-RIBA\cap3.doc <-- graal /usr/NFS/graal1 3 /matteo/LIBRO- CONS-RIBA cap3.doc :29 B C:\Matteo\LIBRO- CONS-RIBA\cap4.doc <-- graal /usr/NFS/graal1/matte o/LIBRO-CONS-RIBA cap4.doc 7 relazione2: pag. 2, pag. 3, pag. 7 Dal punto di vista strutturale il sistema operativo è formato da un insieme di livelli, che formano la cosiddetta struttura a cipolla; ciascun livello fornisce un insieme di funzioni e di servizi a partire dalle funzioni e dai servizi forniti dal livello sottostante (si veda la figura 5.1). 5 8 relazione3: pag. 5, pag Pagine bianche

21 21 Il File System: Indice dei file n Con questa organizzazione l’indice conterrà il nome dei file memorizzati n L’indice del quaderno sarà di questo tipo: – : numeri di pagine … n L’utente mediante l’indice accede ai vari file n Il sistema si occupa di reperire le varie pagine

22 22 Il File System n Il sistema operativo deve fornire una visione astratta dei file su disco e l'utente deve avere la possibilità di: –identificare ogni file con un nome (filename) astraendo completamente dalla sua memorizzazione fisica –avere un insieme di operazioni per lavorare sui file: creare o rimuovere un file, copiarlo, cambiargli nome, inserire informazioni in un file –effettuare l'accesso alle informazioni mediante operazioni ad alto livello, che non tengono conto del tipo di memorizzazione (accedere ad un file memorizzato sul disco rigido oppure su un CD-ROM allo stesso modo)

23 23 Il File System –avere la possibilità di strutturare un insieme di file, organizzandoli in sottoinsiemi secondo le loro caratteristiche, per avere una visione ordinata e strutturata delle informazioni sul disco –in un sistema multi-utente, inoltre l’utente deve avere dei meccanismi per proteggere i propri file, ossia per impedire ad altri di leggerli, scriverli o cancellarli –I moderni sistemi operativi (es. Windows) forniscono supporto per queste attività

24 24 Operazioni sui File n Un insieme di operazioni minimale, presente in tutti i sistemi, è il seguente: –creazione di un file –cancellazione (rimozione) di un file –copia di un file –visualizzazione del contenuto di un file ad esempio sul video del terminale o in una finestra sul video –stampa di un file –lettura e modifica del contenuto di un file –rinomina di un file, per cambiare il nome ad un file –visualizzazione delle caratteristiche di un insieme di file (dimensione, data di creazione e dell’ultima modifica, vincoli di protezione, ecc.)

25 25 Organizzazione Gerarchica dei file n Il numero di file che devono essere memorizzati su un disco può essere estremamente elevato n Si ha quindi la necessità di mantenere i file in una forma ordinata n Un unico spazio (contenitore) di file è scomodo perché le operazioni di ricerca di un file e di creazione di un nuovo file diventano onerose (non è possibile avere due file con lo stesso nome) n L'idea è quella di raggruppare i file in sottoinsiemi (seguendo magari dei criteri di tipo logico)

26 26 Organizzazione Gerarchica dei file n Tutti i sistemi operativi forniscono operazioni per creare delle directory n Una directory è costituita da un insieme di file n I nomi dei file sono locali alle directory (si possono avere due file con lo stesso nome purché siano in due directory diverse) n In questo modo l’indice conterrà due tipi di oggetti: nomi di file e nomi di directory relazione1 relazione2 cartella-esami cartella-documenti-privati relazione3 Rel-esame1 Rel-esame2 { { Elenco-Appuntamenti Elenco-Indirizzi

27 27 Nomi di file e directory n Costituiti da (almeno) due parti: –nome: scelto dall’utente, sistema impone lunghezza massima (8 caratteri in DOS, 255 in Unix e Windows 95) e caratteri usabili –estensione: separata dal nome dal carattere ‘.’, identifica il formato del file o l’applicazione che lo ha creato F image1.bmp indica un file immagine in formato bitmap F testo.doc indica un documento Word

28 28 Nomi di Unità n I sistemi sono dotati di più unità di memoria n DOS e Windows usano nomi di unità per distinguerle n In UNIX la gestione è trasparente all’utente: utente conosce solo nome di file, e non si interessa dell’unità dove è memorizzato

29 29 Organizzazione Gerarchica dei file

30 30 Organizzazione Gerarchica dei file Floppy da 3,5 pollici (A:) Applicazioni Biblioteca Indice Utenti Elab_imm Elab_suoni Elab_testi Narrativa-Fra Narrativa-Ing Narrativa-Ita Bianchi Photoshop.exe Premiere.exe Winword.exe Pautasso Rossi libro1 libro2 libro1 libro2 libro3 libro1 libro2 libro3 Questa struttura viene chiamata albero Radice dell’albero NodiFoglie

31 31 Organizzazione Gerarchica dei file n Se non esiste la strutturazione in directory, tutti i file possono essere identificati mediante il loro nome n Nel caso di un’organizzazione gerarchica a più livelli il nome non è più sufficiente ad identificare il file (nell’esempio precedente esistono diversi file con lo stesso nome) Per individuare un file o una directory in modo univoco si deve allora specificare l'intera sequenza di directory che lo contengono, a partire dalla radice dell'albero

32 32 Organizzazione Gerarchica dei file n Ad esempio il file libro1 di narrativa italiana è univocamente identificato dalla sequenza: A:\Biblioteca\Narrativa-Ita\libro1 n La directory Pautasso di Utenti è identificata dalla sequenza: A:\Utenti\Pautasso Il carattere “\” (backslash) viene usato come separatore. n Una sequenza di questo tipo può essere vista come il cammino che si deve compiere per raggiungere un determinato file a partire dalla radice dell'albero, ed è chiamata pathname

33 33 Organizzazione Gerarchica dei file n Un altro modo di individuare un file (o una directory) è basato sul concetto di posizione In questo caso per individuare un file o una directory in modo univoco si deve specificare l'intera sequenza di directory che lo contengono, a partire dalla posizione corrente

34 34 Organizzazione Gerarchica dei file Floppy da 3,5 pollici (A:) Applicazioni Biblioteca Indice Utenti Elab_imm Elab_suoni Elab_testi Narrativa-Fra Narrativa-Ing Narrativa-Ita Bianchi Photoshop.exe Premiere.exe Winword.exe Pautasso Rossi libro1 libro2 libro1 libro2 libro3 libro1 libro2 libro3 Posizione corrente

35 35 Organizzazione Gerarchica dei file n Se la posizione corrente è A:\Biblioteca, il file libro1 di narrativa italiana è univocamente identificato dalla sequenza: Narrativa-Ita\libro1 n Se la posizione corrente è A:\Utenti, la directory Pautasso è identificata dalla sequenza: Pautasso n Per raggiungere un determinato file a partire dalla posizione corrente si utilizza il pathname relativo

36 36 Organizzazione Gerarchica dei file Per organizzare gerarchicamente i file, il sistema operativo deve fornire all'utente un insieme di operazioni sulle directory, per esempio: –creare una nuova directory –rimuovere una directory –ridenominare una directory –elencare il contenuto (l'insieme di file e sotto-directory) di una directory –copiare o spostare i file da una directory ad un'altra

37 37 Struttura logica e organizzazione fisica Floppy da 3,5 pollici (A:) Applicazioni Biblioteca Indice Utenti Elab_imm Elab_suoni Elab_testi Narrativa-Fra Narrativa-Ing Narrativa-Ita Bianchi Photoshop.exe Premiere.exe Winword.exe Pautasso Rossi libro1 libro2 libro1 libro2 libro3 libro1 libro2 libro3

38 38 Organizzazione fisica Elenco file e directory floppy da 3,5 pollici (A:) Applicazioni directory... Biblioteca directory... Utenti directory... Index file-Word... Elenco file e directory directory Applicazioni Elab_imm directory... Elab_suoni directory... Elab_testi directory... Elenco file e directory directory Elab_imm Photoshop.exe program... Premiere.exe program... Elenco file e directory directory Elab_suoni Elenco file e directory directory Elab_imm Photoshop.exe program... Premiere.exe program...


Scaricare ppt "1 Il Sistema Operativo: Esempio n Le operazioni effettuate sembrano abbastanza semplici ma … n Provocano una serie di eventi in cui vengono coinvolte sia."

Presentazioni simili


Annunci Google