![Page 1: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/1.jpg)
Il Sistema Operativo 1
Corso di Laurea Ingegneria CivileFondamenti di Informatica
Dispensa 02Il Sistema Operativo
Marzo 2009
![Page 2: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/2.jpg)
Il Sistema Operativo 2
Prerequisiti
Architettura calcolatoreHardwareSoftwareMacchina di Von Neumann
![Page 3: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/3.jpg)
Il Sistema Operativo 3
Contenuti
L’architettura a strati di un calcolatoreI compiti del sistema operativoL’esecuzione delle applicazioni
![Page 4: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/4.jpg)
Il Sistema Operativo 4
Obiettivi (competenze da acquisire)
Al termine dell’unità didattica lo studente sarà in grado diSaper distinguere tra uni e multi - programmazioneSaper distinguere I diversi strati del sistema operativoSaper individuare il desktop e il path di un fileSaper applicare il giusto programma per gestire un file in base alla sua estensionesaper configurare le variabili d’ambiente (*)Saper assegnare delle istruzioni dalla linea di comando (*)
(*) queste competenze saranno acquisite in seguito
![Page 5: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/5.jpg)
Il Sistema Operativo 5
Cos’è il Sistema Operativo?
Un programma che gestisce le risorse del calcolatoreUn’interfaccia tra le applicazioni e l’hardware del calcolatoreUn insieme di programmi che forniscono funzionalità di base
![Page 6: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/6.jpg)
Il Sistema Operativo 6
Architettura a strati di un calcolatore
Hardware del calcolatore
Sistema Operativo
Librerie e strumenti comuni
Programmi applicativi
Progettista del Sistema
Operativo
Progettistadi applicazioniUtente finale
![Page 7: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/7.jpg)
Il Sistema Operativo 7
Il sistema operativo
Il sistema operativo è il componente del software di base responsabile della gestione delle risorse del calcolatore, e in particolare di come le risorse vengono allocate alle applicazioni
dal punto di vista dell’utente• l’utente può richiede al sistema operativo di eseguire una
applicazione facendo doppio click sull’icona dell’applicazione stessa
• l’utente può cancellare o rinominare un’applicazione• l’utente può esplorare i dischi fissi alla ricerca di una
particolare applicazione
ma non vede come tutte queste operazioni vengono gestite
![Page 8: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/8.jpg)
Il Sistema Operativo 8
Architettura a livelli di un sistema operativo
I sistemi operativi hanno una struttura complessa, che può essere descritta in modo gerarchico
ciascun livello della gerarchia è relativo alla gestione di una diversa tipologia di risorse
• le risorse gestite sono i processori, la memoria, le periferiche, le memorie secondarie, l’interfaccia utente
l’utente del calcolatore interagisce solo con l’interprete comandi del sistema operativo
![Page 9: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/9.jpg)
Il Sistema Operativo 9
Architettura a livelli del sistema operativo
Hardware del calcolatore
Sis
tem
a O
pera
tivo
Nucleo
Gestore della memoria
Gestore delle periferiche
Gestore dei file
Interprete dei comandi
Programmi applicativi e librerie comuni
![Page 10: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/10.jpg)
Il Sistema Operativo 10
Nucleo
Il nucleo (o kernel, o gestore dei processi) del sistema operativo è responsabile della gestione del processore
generalmente sotto il nucleo esiste fisicamente un solo processore• quindi il calcolatore potrebbe svolgere un solo programma alla volta
(uniprogrammazione)il nucleo ha il compito di ripartire il tempo di calcolo del processore ai programmi in esecuzione, realizzando la multiprogrammazione
• ciascun programma ha l’impressione di essere l’unico programma eseguito dal calcolatore
il nucleo gestisce anche l’eventuale presenza di più processori
![Page 11: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/11.jpg)
Il Sistema Operativo 11
Uniprogrammazione
Nella uniprogrammazione (ormai in disuso) il processore attende la fine delle operazioni di I/O per riprendere l’esecuzione dell’unico processo
tempo
esecuzioneProcesso A attesa esecuzione
inizio I/O
attesa
fine I/O inizio I/O
![Page 12: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/12.jpg)
Il Sistema Operativo 12
Multiprogrammazione
Nella multiprogrammazione o multitasking il processore “salta” da un processo all’altro
tempo
esec.Processo A attesa attesa
esec.Processo B attesa attesa
esec.Processo C attesaattesa
esec.A
Complessivo
esec.
esec.
esec.
esec.A
attesa
esec.B
esecB
esec.C
esecC
![Page 13: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/13.jpg)
Il Sistema Operativo 13
Gestore della memoria
Il gestore della memoria consente l’allocazione dinamica della memoria centrale ai programmi in esecuzione
a ciascun programma viene allocata un’area di memoria virtuale sufficiente per la sua esecuzione il gestore della memoria gestisce la corrispondenza tra le memorie virtuali e l’unica memoria reale la dimensione della memoria virtuale può essere maggiore di quella reale
• i dati possono essere “parcheggiati “ temporaneamente nella memoria secondaria
![Page 14: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/14.jpg)
Il Sistema Operativo 14
Gestore delle periferiche
Il gestore delle periferiche adatta la modalitàd’uso delle singole periferiche (che possono essere estremamente diverse) a quello di poche tipologie di periferiche virtuali
ad esempio, un programma può usare una stampante senza conoscere i dettagli precisi di funzionamento della stampante fisicamente disponibile un driver è un adattatore di dati dal formato virtuale (generico) usato sopra il gestore delle periferiche a quello reale della periferica effettivamente in uso
![Page 15: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/15.jpg)
Il Sistema Operativo 15
Il file system
Il file system gestisce le informazioni memorizzate nelle memorie di massa (dischi)
le informazioni vengono distribuite in file, cartelle e volumi
• un file è una sequenza di lunghezza variabile di byte e costituisce l’unità di dati elementare gestita dal file system
• una cartella (o directory, o direttorio) è un contenitore di file e cartelle
• un volume è una unità logica che contiene file e cartelle e corrisponde ad una porzione (detta partizione) della memoria di massa gestita dal file system
![Page 16: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/16.jpg)
Il Sistema Operativo 16
Alberi di cartelle
Le cartelle, potendo contenere altre cartelle, sono organizzate gerarchicamente ad albero
:└─── MiaDirectory
│ Log.txt│ Appunti.doc│└───PSMaker
│ BedobePSMakerX.dll│ BedobePSMakerX.tlb│ install.txt │├───Legale│ Licenza.txt│└───Ufficio2000
PSMakerA.dotPSMPowerPoint.dllPSMWord.dll
:└─── MiaDirectory
│ Log.txt│ Appunti.doc│└───PSMaker
│ BedobePSMakerX.dll│ BedobePSMakerX.tlb│ install.txt │├───Legale│ Licenza.txt│└───Ufficio2000
PSMakerA.dotPSMPowerPoint.dllPSMWord.dll
![Page 17: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/17.jpg)
Il Sistema Operativo 17
Volumi e cartelle
I sistemi Windows gestiscono un albero di cartelle separato per ogni volume
questa caratteristica deriva dal DOS “Disk Operating System”ad esempio:
• il file a:\miadir\prova.txt risiede nel volume a:• il file c:\win\log.txt risiede nel volume c:
I sistemi Unix (come per esempio Linux) presentano all’utente un singolo albero di cartelle, nascondendo l’effettiva dislocazione dei file nei volumi
ad esempio• il file /home/user/miadir/prova.txt potrebbe risiedere su un
disco diverso da quello su cui risiede il file /usr/bin/ls, ma entrambi i file appartengono allo stesso albero di cartelle
![Page 18: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/18.jpg)
Il Sistema Operativo 18
File
Un file è l’unità di dati elementare gestita dal file system ed è caratterizzato da
un contenuto, cioè una sequenza di byteun identificatore, unico per ogni file
I dati contenuti nel file devono essere opportunamente interpretati
le regole con cui interpretare il file sono chiamate formato del filei formati dei file corrispondono a codifiche convenzionali di informazioni adottatte dalle applicazioni
![Page 19: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/19.jpg)
Il Sistema Operativo 19
Nome dei fileUn file è identificato da un percorso ed un nome
il percorso• indica la sequenza delle cartelle che occorre traversare per raggiungere il file• in alcuni sistemi indica anche il volume in cui si trova il file
il nome• unico all’interno della cartella in cui si trova il file• il nome può contenere il carattere “.” (punto) • la parte terminale del nome dopo l’ultimo punto (quando presente) viene
chiamata estensione– l’estensione è lunga generalmente tre caratteri (esempi: .txt .doc .exe .htm, …)– in alcuni sistemi (tipicamente DOS e Windows) l’estensione identifica il formato del file
Per esempio, il nome d:\Home\Java\Dispense\01_calcolatore.pptd:\Home\Java\Dispense\ è il percorso01_calcolatore.ppt è il nome del fileppt è l’estensione e suggerisce che il file possa essere interpretato correttamente dall’applicazione PowerPoint
![Page 20: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/20.jpg)
Il Sistema Operativo 20
Operazioni sui fileIl sistema operativo mette a disposizione degli utenti le seguenti operazioni
creazione• l’utente, o più spesso un’applicazione lanciata dall’utente, può creare file ed
aggiungerli al file systemcancellazione
• l’utente può cancellare un fileapertura
• l’utente, o più spesso un’applicazione lanciata dall’utente, può dichiarare di essere interessato a leggere o scrivere su un file
• questa dichiarazione serve a prevenire la modifica del file da parte di altri utenti/applicazioni
chiusura• l’utente dichiara di aver terminato la lettura/modifica del file
lettura• l’utente legge il file
scrittura• l’utente aggiorna il file
![Page 21: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/21.jpg)
Il Sistema Operativo 21
Rapporto tra file e applicazioni: file eseguibili
Alcuni file, chiamati programmi o applicazioni, sono riconosciuti dal sistema operativo come eseguibili
nei sistemi Windows i file eseguibili sono determinati dalla loro estensione (.exe .com .bat)nei sistemi Linux i file eseguibili non si possono riconoscere dal nome, ma sono esplicitamente etichettati come tali con speciali comandi
![Page 22: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/22.jpg)
Il Sistema Operativo 22
Rapporto tra file e applicazioni: file dati
Il sistema operativo può gestire anche l’associazione tra file e applicazioni in grado di interpretare il loro formato Nei sistemi Windows
ogni estensione (.doc, .txt, .ppt, .pdf, ecc) viene associata ad una applicazione in grado di interpretare il formato del file (rispettivamente Winword, Notepad, PowerPoint, AcrobatReader, ecc)quando si fa doppio click su un file, viene eseguita l’applicazione associata all’estensione del file, e il file selezionato viene aperto automaticamente dall’applicazione
In alcuni sistemi Unixl’applicazione in grado di interpretare il formato del file viene desunta dalla lettura dei primi byte del file stesso
![Page 23: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/23.jpg)
Il Sistema Operativo 23
Esercizio
Su una piattaforma Windows1. considera un file con estensione .pdf2. rinomina il file con estensione .doc3. fai doppio-click sul file
• cosa ti aspetti che succeda?• perché?
Ripeti lo stesso esperimento su una piattaforma Unix (per esempio Linux)
cosa ti aspetti che succeda?perché?
![Page 24: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/24.jpg)
Il Sistema Operativo 24
Programma e processoPer un file eseguibile o programma, oltre alle consuete operazioni (creazione, cancellazione, apertura, chiusura, lettura e scrittura) l’utente può richiedere l’operazione di esecuzioneQuando esegue un programma il sistema operativo
reperisce nel file system il file contente il codice eseguibile del programmaalloca al programma le risorse necessarie per la sua esecuzione (ad esempio, una certa quantità di memoria centrale) copia il codice eseguibile del programma in memoria centraleavvia l’esecuzione del programma
Un programma in esecuzione viene chiamato processoil processo non va confuso con il file eseguibile, o programma, corrispondentel’utente potrebbe richiedere l’esecuzione contemporanea dello stesso programma più volte, generando diversi processi tutti corrispondenti allo stesso programma
![Page 25: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/25.jpg)
Il Sistema Operativo 25
Interprete comandi
L’interprete comandi è l’interfaccia utente del sistema operativo
definisce le operazioni che possono essere utilizzate direttamente dall’utente finale, chiamate comandiesempi di comandi sono
• esecuzione di una applicazione • apertura di un documento (eseguendo l’applicazione in grado
di interpretare il suo formato) l’interprete comandi può essere
• basato su una interfaccia a caratteri — come nei sistemi operativi Unix, ma anche nel “prompt dei comandi” di Windows
• basato su una interfaccia grafica — come nei sistemi operativi Windows e nell’ambiente X Window di Unix
![Page 26: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/26.jpg)
Il Sistema Operativo 26
Interfaccia grafical’elemento principale è la scrivania (o desktop) sulla quale riposano le cartelle ed i file che corrispondono ai dati presenti sul disco fissosul desktop si possono aprire delle finestre che astrattamente corrispondono ai documenti che materialmente possono essere disposti su una scrivaniacartelle e finestre sono oggetti che l’utente può manipolare tramite il mouse: drag & drop, menu contestuale, point&click, doppio click, ecc.sul desktop appaiono anche i programmi disponibili sotto forma di iconaun menù che consente di selezionare delle voci corrispondenti a programmi l’utente può richiedere l’esecuzione di un programma facendo doppio click sull’icona corrispondente o selezionando la voce opportuna del menùl’utente può mantenere aperte più finestre contemporaneamente corrispondenti ai vari processi in esecuzione
![Page 27: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/27.jpg)
Il Sistema Operativo 27
Esempio di interfaccia grafical’utente può mantenere aperte più finestre contemporaneamente corrispondenti ai vari processi in esecuzione
![Page 28: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/28.jpg)
Il Sistema Operativo 28
Interfaccia a caratteriL’interfaccia a caratteri (detta anche shell dei comandi) consente di interagire con il sistema operativo scrivendo e leggendo delle sequenze di caratteriNei sistemi Unix l’interfaccia a caratteri è lo strumento principe di interazione con il sistema operativoNei sistemi Windows si può ottenere un’interfaccia a caratteri selezionando “Programmi” “Accessori” “Prompt dei comandi”oppure selezionando “Avvio” “Esegui…” e digitando “cmd”
![Page 29: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/29.jpg)
Il Sistema Operativo 29
Interfaccia a caratteri
Utilizzando una interfaccia a caratteri l’utente può richiedere l’esecuzione di un programma nel seguente modo
una speciale stringa, detta prompt, segnala all’utente che l’interfaccia a caratteri è pronta a ricevere comandil’utente scrive il nome del file corrispondente al programma da eseguire e batte il tasto invio (o return)il sistema operativo avvia un processo corrispondente al programma selezionato quando il processo è terminato all’utente riappare il prompt dei comandi che gli consente di immettere un nuovo comando
![Page 30: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/30.jpg)
Il Sistema Operativo 30
Parametri sulla linea di comando
L’interfaccia a caratteri consente all’utente di specificare delle stringhe aggiuntive (dette parametri) in coda al nome del programma o del comando da eseguire
Esempi• dir c:\miadirectory• cd ..• help dir• winword miofile.doc• dir *.exe *.com
I progettisti di applicazioni hanno a disposizione dei costrutti che consentono all’applicazione di recuperare la lista delle stringhe (separate da spazi) presenti sulla linea di comando
![Page 31: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/31.jpg)
Il Sistema Operativo 31
Flag
I parametri vengono chiamati flag quando sono brevi stringhe precedute da caratteri di controllo
Esempi• dir /a• cd /?
Alcune applicazioni richiedono flag seguiti da argomenti accessori
Esempi• tar –t –v –z –f miofile.tgz miadir• javac –g –source 1.3 –encoding UTF8 file.java
![Page 32: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/32.jpg)
Il Sistema Operativo 32
Variabili d’ambiente
Le variabili d’ambiente sono un insieme di stringhe associate a dei nomiEsempi di variabili d’ambiente
HOMEDRIVE=C:• al nome “HOMEDRIVE” è associata la stringa “C:”
OS=Windows_NT• al nome “OS” è associata la stringa “Windows_NT”
TEMP=C:\tmpdir• al nome “TEMP” è associata la stringa “C:\tmpdir”
I progettisti delle applicazioni e dei comandi hanno a disposizione dei costrutti che consentono all’applicazione di recuperare la stringa associata ad uno specifico nome (oppure tutte le coppie nome=valore)
![Page 33: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/33.jpg)
Il Sistema Operativo 33
Vedere il valore di una variabile d’ambiente
L’utente può chiedere all’interfaccia a caratteri il valore della stringa associata ad una variabile d’ambiente
su una piattaforma Windows occorre eseguire:echo %NOMEVARIABILE%
su una piattaforma Unix/Linux occorre eseguire:echo $NOMEVARIABILEoppure echo ${NOMEVARIABILE}
C:\WINDOWS\system32\CMD.exe X-C:\Documents and Settings\Utente> echo %PATH%
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Support Tools\;C:\PROGRA~1\CA\SHARED~1\SCANEN~1;C:\PROGRA~1\CA\ETRUST~1;C:\Program Files\QuickTime\QTSystem\
C:\Documents and Settings\Utente>
![Page 34: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/34.jpg)
Il Sistema Operativo 34
Vedere il valore di tutte le variabile d’ambiente
L’utente può chiedere all’interfaccia a caratteri il valore di tutte le variabili d’ambiente
su una piattaforma Windows occorre eseguire:set
su una piattaforma Unix/Linux occorre eseguire:env
C:\WINDOWS\system32\CMD.exe X-C:\Documents and Settings\Utente> set
ALLUSERSPROFILE=C:\Documents and Settings\All UsersAVENGINE=C:\PROGRA~1\CA\SHARED~1\SCANEN~1CLIENTNAME=ConsoleCommonProgramFiles=C:\Program Files\Common FilesCOMPUTERNAME=WINPISOLOComSpec=C:\WINDOWS\system32\cmd.exeHOMEDRIVE=C:HOMEPATH=\Documents and Settings\pizzonia…
![Page 35: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/35.jpg)
Il Sistema Operativo 35
Assegnare una stringa ad una variabile d’ambiente
L’utente può assegnare una stringa ad una variabile d’ambiente con i seguenti comandi
su una piattaforma Window:set pippo=mia stringa
su una piattaforma Unix/Linux:pippo=mia stringa
C:\WINDOWS\system32\CMD.exe X-C:\Documents and Settings\Utente> set pippo=miastringa
miastringaC:\Documents and Settings\Utente> echo %pippo%
C:\Documents and Settings\Utente>
![Page 36: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/36.jpg)
Il Sistema Operativo 36
Aggiornare una variabile d’ambienteL’utente può aggiornare il valore di una variabile d’ambiente
su una piattaforma Window:set pippo=la%pippo%
su una piattaforma Unix/Linux:pippo=la${pippo}
C:\WINDOWS\system32\CMD.exe X-C:\Documents and Settings\Utente> set pippo=miastringa
lamiastringaC:\Documents and Settings\Utente> echo %pippo%
C:\Documents and Settings\Utente> set pippo=la%pippo%
C:\Documents and Settings\Utente>
![Page 37: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/37.jpg)
Il Sistema Operativo 37
Parametri sulla linea di comando e variabili d’ambiente
Alcune applicazioni accettano alcune opzioni sia come parametri sulla linea di comando che come variabili d’ambiente In questo caso, se il comando deve essere ripetuto spesso con gli stessi parametri, è opportuno settare la corrispondente variabile d’ambiente
C:\WINDOWS\system32\CMD.exe X-C:\miadir> javac –c miadir pippo.java…
C:\miadir> javac –c miadir pippo.java
C:\miadir> set CLASSPATH=miadir
…
C:\miadir> javac pippo.java…C:\miadir> javac pippo.java
![Page 38: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/38.jpg)
Il Sistema Operativo 38
Variabili d’ambiente E’ possibile definire variabili d’ambiente per tutte le interfacce a caratteri che saranno in futuro create sulla macchina
![Page 39: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/39.jpg)
Riepilogo della dispensa
Architettura a livelli di un sistema operativo:NucleoGestore della memoriaGestore delle perifericheFile systemInterprete dei comandi
Uni e multi programmazione
Il Sistema Operativo 39
![Page 40: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/40.jpg)
Nucleo
Il nucleo è lo strato più basso del sistema oprativo, che interagisce con il processoreRipartisce il tempo di calcolo del processore gestendo insieme diversi programmi in modo che l’utente abbia l’impressione che più programmi siano attivi contempraneamente (multitasking)
Il Sistema Operativo 40
![Page 41: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/41.jpg)
Gestore della memoria
Il gestore della memoria alloca dinamicamente in memoria centrale programmi (o porzioni di essi) in esecuzionePoiché I programmi in esecuzione possono occupare più spazio rispetto a quello disponibile in memoria centrale, il gestore della memoria alloca una memoria virtuale al programma, parcheggiando temporaneamente i dati in memoria secondaria, e gestisce le corrispondenze tra la memoria reale e le memorie virtuali
Il Sistema Operativo 41
![Page 42: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/42.jpg)
Gestore delle periferiche
Il gestore delle periferiche si occupa dell’interazione con le diverse periferiche, tramite driverUn driver è un file che adatta il formato di una specifica periferica (variando tra marca e marca, modello e modello) al formato generico della periferica, previsto nel sistema operativo
Il Sistema Operativo 42
![Page 43: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/43.jpg)
File system
Il file system gestisce e organizza le informazioni nelle memorie di massaL’organizzazione ad albero, prevede la divisione in partizioni, direcotry e fileUn disco può essere suddiviso in più partizioni, ogni partizione è composta da directory che a loro volta possono contenere altre directory, o fileIl file è l’unità di dati elementare gestita dal file system ed ècaratterizzato da un contenuto e da un identificatorePiù file possono avere lo stesso nome purché percorsi diversi
Il Sistema Operativo 43
![Page 44: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/44.jpg)
Interprete dei comandi
L’interprete dei comandi è la parte del sistema operativo che si interfaccia con l’utenteMette a disposizione dell’utente un insieme di comandi per interagire con la macchinaL’interprete può essere basato su un’interfaccia a caratteri (shell di comandi) o su un’interfaccia grafica
Il Sistema Operativo 44
![Page 45: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/45.jpg)
Il Sistema Operativo 45
Conoscenze acquisite
Ruolo dei diversi livelli del sistema operativo
![Page 46: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/46.jpg)
Il Sistema Operativo 46
Competenze acquisite
Saper distinguere tra uni e multi - programmazioneSaper distinguere I diversi strati del sistema operativoSaper individuare il desktop e il path di un fileSaper applicare il giusto programma per gestire un file in base alla sua estensionesaper configurare le variabili d’ambienteSaper assegnare delle istruzioni dalla linea di comando
![Page 47: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/47.jpg)
Il Sistema Operativo 47
Parole chiave
Interfaccia (grafica e a caratteri)Utente, progettistaProgrammi applicativi, librerieRisorse, allocazione di risorseMacchina virtualeNucleo (kernel, gestore dei processi)Programma, processo, applicazioneUniprogrammazione, multitaskingFile system, desktop, pathFile, estensione di file, directory (cartelle), volumiPrompt, return, flag, menuVariabili d’ambiente, parametri
![Page 48: Dispensa 02 Il Sistema Operativo - Roma Tre Universityelinf/0809/dispense0809/02_Sistema-Operativo.pdfIl Sistema Operativo 20 Operazioni sui file Il sistema operativo mette a disposizione](https://reader034.vdocuments.pub/reader034/viewer/2022051804/5fedea40e2413e10dd2fc878/html5/thumbnails/48.jpg)
Il Sistema Operativo 48
Rifermimenti al libro di testo
Per lo studio di questi argomenti si fa riferimento al libro di testo, e in particolare al capitolo 1sull’architettura dei calcolatori:
1.4 Il sistema operativo• 1.4.1 Architettura di un sistema operativo