Vai alla Home Page About me Courseware Federica Living Library Federica Federica Podstudio Virtual Campus 3D La Corte in Rete
 
Il Corso Le lezioni del Corso La Cattedra
 
Materiali di approfondimento Risorse Web Il Podcast di questa lezione

Antonino Mazzeo » 3.Architettura e funzionalità dei sistemi operativi


Sommario

  • Il sistema operativo come macchina virtuale
  • Livello nucleo (Kernel)
  • Livello memoria
  • Livello periferiche
  • File System
  • Il flusso di controllo del sistema operativo
  • Le system call

Funzionalità

Funzionalità di un Sistema Operativo

  • Virtualizzazione delle risorse hardware
  • Gestione e coordinamento

In figura si mostra uno schema relativo al S.O. come macchina virtuale.

SO come macchina virtuale

SO come macchina virtuale


La macchina virtuale realizzata dal SO

A livello Kernel (parte del SO che contiene le funzioni più utilizzate, detto anche nucleo):

  • possiede tante unità centrali quanti sono i processi
  • non possiede meccanismi di interruzioni
  • possiede istruzioni di sincronizzazione e scambio di messaggi tra processi che operano sui processori virtuali

A livello gestione della memoria:

  • consente di far riferimento a spazi di indirizzi virtuali
  • garantisce la protezione
  • consente in taluni casi di ignorare se il programma e/o i dati siano fisicamente residenti in memoria centrale o su memoria di massa (disco)

La macchina virtuale realizzata dal SO

A livello gestione periferiche:

  • dispone di periferiche dedicate ai singoli processi
  • maschera le caratteristiche fisiche delle periferiche
  • gestisce parzialmente i malfunzionamenti delle periferiche

A livello file system:

  • gestisce blocchi di informazioni su memoria di massa strutturati logicamente
  • ne controlla gli accessi
  • ne gestisce l’organizzazione

System call

Come è invocato un SO (flusso di controllo)?

  • Qualunque richiesta di un servizio di sistema deve essere inoltrata attraverso una system call.
  • La funzione di una system call, perciò, consiste nel soddisfare le richieste di un determinato servizio di sistema o di acquisizione di una certa risorsa.
  • Categorie di System Call: Controllo di processo, Manipolazione dei file, Gestione dei dispositivi, Gestione delle informazioni, Comunicazione.

So in esecuzione

La CPU carica il “boot program” dalla ROM, il quale:

  • Esamina/Controlla la configurazione del calcolatore
  • Costruisce un struttura dati che descrive la configurazione hardware
  • Carica il nucleo del SO, fornendogli la configurazione creata

Inizializzazione del SO

Dopo che i processi di base sono stati creati,il SO può eseguire dei programmi utente, se disponibili, o esegue il cosiddetto “idle loop
Il SO si “sveglia” a seguito di interruzioni da dispositivi hardware, eccezioni generate da programmi utente, “System calls” invocate da programmi utente.
Due modi di esecuzione: User mode (modo di esecuzione ristretto) o Supervisor mode (accesso non ristretto ad ogni risorsa)

Architetture

Sistemi Monolitici

  • Il S.O. è scritto come un insieme di procedure di servizio, tutte allo stesso livello gerarchico, richiamabili mediante chiamata di sistema

Architetture a Microkernel

  • Assegnano al kernel solo poche ed essenziali funzioni
    • Spazio di indirizzamento;
    • Interprocess communication (IPC)
    • Scheduling di base

Windows 2000 – Architettura a microkernel Ibrida
Linux – Kernel Modulare

Sistemi monolitici

Sistemi monolitici


Prossima lezione

Esercitazione – Installazione del Sistema operativo Linux

I materiali di supporto della lezione

P. Ancilotti, M.Boari, A. Ciampolini, G. Lipari, “Sistemi Operativi”, Mc-Graw-Hill (Cap.1, Par. 1.4)

Architettura di un SO

  • Contenuti protetti da Creative Commons
  • Feed RSS
  • Condividi su FriendFeed
  • Condividi su Facebook
  • Segnala su Twitter
  • Condividi su LinkedIn
Progetto "Campus Virtuale" dell'Università degli Studi di Napoli Federico II, realizzato con il cofinanziamento dell'Unione europea. Asse V - Società dell'informazione - Obiettivo Operativo 5.1 e-Government ed e-Inclusion

Fatal error: Call to undefined function federicaDebug() in /usr/local/apache/htdocs/html/footer.php on line 93