+ Introduzione ai Calcolatori Elettronici Aspetti Sistemistici Il Sistema Operativo A.A. 2013/2014 Domenica Sileo Università degli Studi della Basilicata + Aspetti Sistemistici : Il Sistema Operativo >> Sommario Sommario n Aspetti Sistemistici n Il Sistema Operativo (SO) n Architettura del SO n Una possibile classificazione n I vari tipi di Sistema Operativo n Programmi per la virtualizzazione dei S.O. D. Sileo A.A 2013/2014 2 + Aspetti Sistemistici : Il Sistema Operativo >> Il Sistema Operativo (SO) Il Sistema Operativo n Con il termine sistema operativo si intende l’insieme di programmi e librerie che opera direttamente sulla macchina fisica n mascherandone le caratteristiche specifiche n e fornendo agli utenti un insieme di funzionalità di alto livello D. Sileo A.A 2013/2014 3 + Aspetti Sistemistici : Il Sistema Operativo >> Il Sistema Operativo (SO) Il Sistema Operativo (SO) n Uno degli scopi fondamentali del SO è la gestione efficiente delle risorse di un sistema di calcolo, n intendendo per risorse il tempo di CPU, la memoria, i dispositivi di I/O etc. n Nella gestione delle risorse il SO deve dirimere questioni relative alla conflittualità delle richieste sia da parte dei programmi che degli utenti mantenendo sempre alta l’efficienza del sistema D. Sileo A.A 2013/2014 4 + Aspetti Sistemistici : Il Sistema Operativo >> Il Sistema Operativo (SO) Il Sistema Operativo (SO) n I primi SO erano molto semplici e la loro funzione si riduceva ad eseguire, in sequenza, lotti (batch) di lavoro (job = insieme di lavori) n Considerazione: un singolo utente non riesce a tenere costantemente impegnata la CPU n L’idea: far coesistere più lavori in memoria ottimizzando l’utilizzo della CPU n Nascono i SO batch multi-programmati D. Sileo A.A 2013/2014 5 + Aspetti Sistemistici : Il Sistema Operativo >> Architettura del SO Architettura del Sistema Operativo n Un moderno S.O. è organizzato secondo una architettura “a strati” (a cipolla) n Ogni strato implementa una macchina virtuale più potente della precedente n Appoggiandosi alle funzionalità offerte dallo strato precedente n Tale approccio permette una chiara separazione tra interfaccia e implementazione delle diverse funzionalità D. Sileo A.A 2013/2014 6 + Aspetti Sistemistici : Il Sistema Operativo >> Architettura del SO Architettura del Sistema Operativo Programmi utente Interfacce utente Interprete dei comandi Interfaccia grafica Gestore del file system Gestore delle periferiche Gestori di risorse (kernel) Gestore della memoria Gestore dei processi (nucleo) Macchina fisica D. Sileo A.A 2013/2014 7 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il kernel Il Kernel n Il Kernel contiene componenti software che eseguono n le funzioni di base del computer, il coordinamento della memoria di massa, n la collocazione dei file tramite cartelle in strutture dette ad albero, come il file manager D. Sileo A.A 2013/2014 8 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il kernel Il Kernel n (cont.) è composto da una raccolta di driver di periferica, unità software che comunicano con i controller delle periferiche n Controller: strumento hardware che ha il compito di comunicare il verificarsi di eventi esterni (dati disponibili, periferica libera, etc.) n Un ulteriore componente è il memory manager, n che ha il compito di coordinare l’utilizzo della memoria principale del computer D. Sileo A.A 2013/2014 9 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore dei processi Il gestore dei processi n Si appoggia direttamente sulla macchina fisica ed effettua la gestione dei processi n In un sistema multitasking realizza una macchina virtuale in cui ad ogni processo è assegnato un processore virtuale n Realizza le primitive di sincronizzazione e scambio messaggi tra processi D. Sileo A.A 2013/2014 10 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore dei processi Il gestore dei processi n La macchina virtuale realizzata dal nucleo Processore virtuale Processore virtuale ... Processore virtuale Bus di sistema Disco D. Sileo A.A 2013/2014 Memoria centrale Interfaccia delle periferiche Ad ogni processo è assegnato un processore virtuale 11 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore della memoria Il gestore della memoria n Il gestore della memoria realizza le funzionalità di allocazione della memoria n Supera i limiti della memoria fisica e mostra ai processi uno spazio di memoria virtuale n Partiziona la memoria tra i vari processi che la richiedono n Garantendo di memoria D. Sileo A.A 2013/2014 la protezione delle diverse zone 12 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore della memoria Il gestore della memoria n La memoria centrale deve essere suddivisa tra i vari processi in competizione n Il sistema operativo deve quindi occuparsi del modo in cui i singoli programmi occupano la memoria, in modo che ogni processo abbia l’illusione di una risorsa di memoria virtualmente infinita n Infatti la memoria centrale è deficitaria rispetto alle esigenze del/i processo/i che vogliono andare in esecuzione D. Sileo A.A 2013/2014 13 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore della memoria Il gestore della memoria n (cont.) di conseguenza, il programma viene caricato un pò per volta sotto richiesta del processore di ulteriori istruzioni n In questo modo, gli utenti lavorano come se avessero in memoria centrale tutti i programmi da loro richiesti n Vedendo una memoria molto più grande di quella reale, detta appunto, memoria virtuale D. Sileo A.A 2013/2014 14 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore della memoria Il gestore della memoria n La macchina virtuale realizzata dal gestore della memoria Memoria virtuale Memoria virtuale ... Memoria virtuale Processore virtuale Processore virtuale ... Processore virtuale Bus di sistema Disco D. Sileo A.A 2013/2014 Interfaccia delle periferiche 15 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore delle periferiche Il gestore delle periferiche n Maschera le caratteristiche fisiche delle periferiche n Fornisce agli strati superiori un insieme di procedure di alto livello per l’accesso alle diverse periferiche n Offre ad ogni processo la visibilità di un insieme di periferiche virtuali dedicate n Gestisce, almeno in parte, i malfunzionamenti delle periferiche D. Sileo A.A 2013/2014 16 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore delle periferiche Il gestore delle periferiche n La macchina virtuale realizzata dal gestore delle periferiche Interfaccia periferiche virtuali Memoria virtuale Bus Memoria virtuale ... Bus Processore virtuale Processore virtuale Bus di sistema Disco D. Sileo A.A 2013/2014 Interfaccia periferiche virtuali 17 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore del file system Il gestore del file system n Il gestore del file system è responsabile della gestione delle periferiche di massa n Hard disk n CD / DVD n Pen driver n … n Fornisce agli strati superiori un insieme di procedure per l’accesso al file system n Garantisce la protezione nell’accesso ai file D. Sileo A.A 2013/2014 18 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore del file system Il gestore del file system n Le funzioni di base che sono supportate da un file system sono n Il recupero di dati precedentemente memorizzati n L’eliminazione di dati obsoleti n La modifica/aggiornamento di dati preesistenti n La copia di dati tra supporti di memorizzazione diversi (ad es. da HD a CD) in cartelle diverse nello stesso supporto D. Sileo A.A 2013/2014 19 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore del file system Il gestore del file system n I dati contenuti nella memoria di massa vengono strutturati e gestiti mediante una organizzazione in file e directory (contenitore) D. Sileo A.A 2013/2014 20 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore del file system Il gestore del file system D: Documenti Downloads Incoming Temp ... ... D. Sileo A.A 2013/2014 21 + Aspetti Sistemistici : Il SO >> Architettura del SO >> Il gestore del file system 22 Il gestore del file system n La macchina virtuale realizzata dal gestore del file system Memoria virtuale Interfaccia periferiche virtuali Bus File ... Memoria virtuale File ... Processore virtuale Bus Processore virtuale Bus di sistema D. Sileo A.A 2013/2014 Interfaccia periferiche virtuali File ... File + Aspetti Sistemistici : Il SO >> Architettura del SO >> L’interfaccia 23 L’interfaccia n L’interfaccia consente l’interazione dell’utente con il SO e con i programmi applicativi in esecuzione n Permette di accedere ai programmi presenti su memoria di massa e di mandarli in esecuzione allocando la memoria necessaria e creando il processo relativo Programmi utente Interfacce utente D. Sileo A.A 2013/2014 Interprete dei comandi Gestore del file system Interfaccia grafica + Aspetti Sistemistici : Il SO >> Architettura del SO >> L’interfaccia L’interfaccia n L’interprete comandi e l’interfaccia grafica n Costituiscono l’interfaccia verso l’utente n L’interazione dell’utente con il sistema operativo può avvenire tramite n La shell o prompt dei comandi (Es. Microsoft DOS) n O tramite le GUI (Graphical User Interface), icone, dialog, combobox etc. D. Sileo A.A 2013/2014 24 + Aspetti Sistemistici : Il Sistema Operativo >> Una possibile classificazione Una possibile classificazione n I moderni sistemi operativi possono essere classificati in sistemi monotask e multitask n Sistemi monotask n Permettono l’esecuzione di un solo programma utente per volta (es. DOS) n L’elaboratore rimane a disposizione del programma dall’inizio alla fine dell’esecuzione D. Sileo A.A 2013/2014 25 + Aspetti Sistemistici : Il Sistema Operativo >> Una possibile classificazione Una possibile classificazione n Sistemi multitask n Permettono l’esecuzione di più programmi utente contemporaneamente n Classificazione n Multitasking ulteriore: cooperativo (Windows 3.1, MacOS) n Multitasking preemptive (Windows 95/98/NT, Unix) n Time sharing o meno D. Sileo A.A 2013/2014 26 + Aspetti Sistemistici : Il SO >> Una possibile classificazione >> Svantaggi … Svantaggi dei sistemi monoprocessore mono-tasking n Nessuna interazione utente-programma n Lentezza: la CPU non può essere usata da nessun processo mentre il programma in esecuzione svolge operazioni di I/O (molto più lente di letture/scritture in Memoria) n Esempio: DOS n non è un SO mono-tasking; si può fare niente altro mentre si formatta un floppy o si memorizzano dati su disco D. Sileo A.A 2013/2014 27 + Aspetti Sistemistici : Il SO >> Una possibile classificazione >> Time sharing Time sharing n La successiva evoluzione è quella del time sharing (partizione di tempo) o multitasking che aggiungeva ai sistemi multiprogrammati a lotti la possibilità di interazione con l’utente durante la lavorazione dei job n Nei sistemi time sharing la CPU viene dedicata ciclicamente ad ogni processo in modo che ogni utente abbia l’impressione di disporre completamente del computer D. Sileo A.A 2013/2014 28 + Aspetti Sistemistici : Il SO >> Una possibile classificazione >> Sistemi mono … Sistemi mono e multi-processore n Time sharing in sistemi mono-processore: n multi-tasking (più programmi in esecuzione con una sola CPU) n Sistemi n le multiprocessore: varie CPU possono lavorare contemporaneamente su job diversi n ciascuna CPU opera in multi-tasking D. Sileo A.A 2013/2014 29 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi I Sistemi Operativi n MS-DOS (Disk Operating System) n MS-Windows (95, 98, 2000, XP, Vista, Seven, 8) n Unix (The Open Group) n Commerciali: Sun Solaris, IBM AIX, HP-UX,… n Linux n BSD n Mac OS n Mac n Altri (Berkeley Software Distribution) OS X 10.8 (IBM AS/400, Symbian,…) D. Sileo A.A 2013/2014 30 + Software: Cenni sui SO >> I sistemi Operativi >> Il Prompt dei Comandi 31 Il Prompt dei Comandi n MS-DOS è l’acronimo di “Microsoft - Disk Operating System” n Il primo di una lunga serie di sistemi operativi della Microsoft n È un sistema operativo commercializzato dal giugno 1982 al 2001 n Fino alla commercializzazione di Microsoft Windows 95, MS-DOS è stato il sistema operativo per personal computer più diffuso al mondo D. Sileo A.A 2013/2014 Approfondimento per CDL Scienze e Tecnologie Informatiche >> Aspetti Sistemistici: Prompt dei Comandi + Software: Cenni sui SO >> I sistemi Operativi >> Il Prompt dei Comandi Il Prompt dei Comandi n L’MS-DOS è un sistema operativo monoutente e monotask n La digitazione dei comandi consente di eseguire attività senza utilizzare l’interfaccia grafica di Windows n Viene generalmente utilizzato solo dagli utenti più esperti D. Sileo A.A 2013/2014 32 + Software: Cenni sui SO >> I sistemi Operativi >> Il Prompt dei Comandi Il Prompt dei Comandi n Il termine prompt dei comandi è riferito alla parentesi angolare chiusa ‘>’ che indica che l’interfaccia della riga di comando è pronta per accettare comandi n Tutto ciò che è scritto prima del segno ‘>’ indica la directory corrente di lavoro n Per esempio C:\Documenti> D. Sileo A.A 2013/2014 33 + Software: Cenni sui SO >> I Sistemi Operativi >> Il Prompt dei Comandi 34 Il Prompt dei Comandi n Per accedere alla linea di comando del DOS o meglio alla finestra di Windows che contiene il prompt, occorre: n cliccare su “Start -> Esegui” e digitare cmd n oppure cliccare su “Start > Programmi > Accessori > Prompt dei comandi” n Comando help per visualizzare un elenco di comandi comuni >> help D. Sileo A.A 2013/2014 + Software: Cenni sui SO >> I SO > Il Prompt dei Comandi > Il percorsi dei file 35 Il percorso dei file n Quando i comandi utilizzati intervengono su file o cartelle è necessario digitare per esteso il percorso di destinazione dopo il comando n Per esempio n Copy “C:\Documents and Settings\CorsoPP \2011-2012\orarioLezioni.pdf” “C:\Documents and Settings\CorsoPP\2012-2013” n Suggerimento n trascinare con il mouse il file o la cartella in questione all’interno della finestra del prompt dei comandi >> use copy D. Sileo A.A 2013/2014 + Software: Cenni sui SO >> I SO > Il Prompt dei Comandi > Alcuni comandi Alcuni Comandi n cd <nome_cartella> n Il comando cd permette di cambiare cartella n ATTENZIONE: cd .. e cd change directory n chdir <nome_cartella> n Il comando chdir cambia la directory corrente e ne visualizza il nome n copy (move) n permette D. Sileo A.A 2013/2014 la copia di file o gruppi di file 36 + Software: Cenni sui SO >> I SO >> Il Prompt dei Comandi >> Alcuni comandi Alcuni Comandi n del <nome_file> (rd <nome_cartella>) n elimina uno o più file (directory) n dir n visualizza l’elenco dei file e delle sotto directory di una directory n Ipconfig n permette di conoscere il proprio indirizzo IP, quello del SUBNET MASK e del GATEWAY n Taskkill n sostituisce D. Sileo A.A 2013/2014 il Task Manager di Windows 37 + Software: Cenni sui SO >> I SO >> Il Prompt dei Comandi >> I file batch I file batch n Per creare un file batch: n avviare un editor di testo (ad esempio Blocco Note) n inserire i comandi nell’ordine in cui vogliamo siano eseguiti n salvare il file con nome con estensione .bat n lanciare lo script dal prompt dei comando >> esempio stampa il contenuto di una cartella in un file di testo cd d:/Documenti/LaboratorioInformatica dir > elencoDocumenti.txt D. Sileo A.A 2013/2014 38 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi >> Windows Il SO Windows Vista/Seven n Successori di Microsoft Windows XP n Contiene molte nuove funzioni e diverse migliorie come ad esempio la nuova GUI (Graphical User Interface): Windows Aero n In primo piano la sicurezza del sistema (Windows XP risultato troppo vulnerabile) n …Windows Seven successore di Vista n Nuovo Explorer (Risorse) n Interfaccia migliorata n Nuova gestione semplificata delle reti wireless n … D. Sileo A.A 2013/2014 39 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi >> Windows Il SO Windows 8 n Successore di Microsoft Windows 7 n tutto ciò che si può definire l’uso “tradizionale” di Windows ora è dentro ad un’applicazione n Dalla Schermata Start si può lanciare l’applicazione principale, o una specifica dopo averla aggiunta n Perde l’interfaccia Aero e guadagna quella “ribbon” per Esplora Risorse n Anche il Task Manager (Gestione Attività) è stato migliorato e semplificato D. Sileo A.A 2013/2014 40 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi >> Ubuntu Il SO Ubuntu n È un sistema operativo libero e gratuito basato su GNU/Linux n Il termine ubuntu deriva da un antico vocabolo zulu (letteralmente: umanità) diffuso in varie parti dell’Africa meridionale n Ubuntu è costruito sulle fondamenta dell’architettura e dell’infrastruttura di Debian n http://www.debian.org/ D. Sileo A.A 2013/2014 41 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi >> Ubuntu Ambiente grafico: Ubuntu D. Sileo A.A 2013/2014 42 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi >> Mac OS-X Il SO MAC OS-X n MAC OS-X è l’ultima generazione di S.O. per i personal computer prodotti da Apple n Abbandonato il precedente sistema operativo Apple ha costruito la nuova generazione del proprio S.O. a partire da una variante di BSD, chiamata Darwin, che rimane open source n A questo nucleo, Apple ha aggiunto componenti proprietari, dall’interfaccia grafica (Aqua) ad una suite di applicazioni e utilities D. Sileo A.A 2013/2014 43 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi >> Mac OS-X Il SO MAC OS-X Architettura MAC OS-X Applicazioni GUI à Kernel, gestori di risorse e servizi di base D. Sileo A.A 2013/2014 44 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi >>Virtuali Installare più sistemi operativi n La virtualizzazione consente di installare più sistemi operativi in un computer solo, n in modo che essi possano lavorare in modo separato, come se fossero su computer diversi n Nella virtualizzazione di sistemi operativi, c’è n l’host: computer principale dove viene installato il programma di gestione e n il guest: sistema operativo che viene eseguito all’interno del programma di virtualizzazione D. Sileo A.A 2013/2014 45 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi >>Virtuali Installare più sistemi operativi n Il computer virtuale viene tutto racchiuso in un file che può essere di diversi tipi a seconda del programma usato per crearlo: n VMDK (VMWare), VHD (Microsoft) e HDD (Parallel), VDI (VirtualBox) n Un programma considerato leggero, veloce e nettamente più semplice da installare è VirtualBox D. Sileo A.A 2013/2014 46 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi >>Virtuali VirtualBox n Software di virtualizzazione della Sun Microsystems n È un emulatore di sistemi operativi n può essere eseguito su molte piattaforme come Windows, Linux e Mac n Si può scaricare dal sito: n http://www.virtualbox.org/wiki/Downloads D. Sileo A.A 2013/2014 47 + Aspetti Sistemistici : Il Sistema Operativo >> I Sistemi Operativi >> Virtuali VirtualBox n È distribuito in due versioni: n versione completa ma commerciale n versione ridotta distribuita secondo i termini della GNU General Public License n Esistono altri software di virtualizzazione: n Es: VM Ware Workstation n Es: Parallels D. Sileo A.A 2013/2014 Desktop 9 per Mac (non gratuito) 48 + Aspetti Sistemistici : Il Sistema Operativo >> Sommario Sommario n Aspetti Sistemistici n Il Sistema Operativo (SO) n Architettura del SO n Una possibile classificazione n I vari tipi di Sistema Operativo n Programmi per la virtualizzazione dei S.O. D. Sileo A.A 2013/2014 49 + Aspetti Sistemistici : Il Sistema Operativo >> Termini della Licenza Termini della Licenza n This work is licensed under the Creative Commons Attribution-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/1.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. n Questo lavoro viene concesso in uso secondo i termini della licenza “Attribution-ShareAlike” di Creative Commons. Per ottenere una copia della licenza, è possibile visitare http://creativecommons.org/licenses/by-sa/1.0/ oppure inviare una lettera all’indirizzo Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. D. Sileo A.A 2013/2014 50