1 © politecnico di torino, 2001 introduzione ai sistemi operativi fondamenti di informatica anno...
TRANSCRIPT
1© P
olite
cnic
o di
Tor
ino,
200
1
Introduzione ai Sistemi Operativi
Fondamenti di InformaticaAnno Accademico 2001-02
2© P
olite
cnic
o di
Tor
ino,
200
1
Contenuti
Architettura di un PCIl sistema operativoOrganizzazione dei dischiComandi DOS
3© P
olite
cnic
o di
Tor
ino,
200
1
Il calcolatore “fuori”
Monitor
Unitàcentrale
Mouse
Tastiera
Lettorefloppy disk
Stampante
floppy disk
4© P
olite
cnic
o di
Tor
ino,
200
1
Il calcolatore “dentro”Schedavideo
Memoria RAM
CPU
Hard disk
5© P
olite
cnic
o di
Tor
ino,
200
1
Il calcolatore - modello funzionaleMemoriaMemoria
datidati
periferiche
programma
CPUCPU
datidati
6© P
olite
cnic
o di
Tor
ino,
200
1
Memoria RAM
Random Access MemoryÈ il deposito di dati e programmi durante
l’elaborazioneÈ suddivisa in piccole celle di dimensione
uniforme, ciascuna capace di contenere un numero binario
Dimensioni: centinaia di milioni di celleVelocità: tempo di accesso alla singola
cella: decine di nanosecondiSi cancella allo spegnimento del computer
7© P
olite
cnic
o di
Tor
ino,
200
1
Dischi
Costituiscono il deposito “a lungo termine” del calcolatore
Possono essere fissi (contenuti all’interno del calcolatore, hard disk) o rimovibili (dischetti, floppy disk)
Non si cancellano allo spegnimentoI floppy disk sono lenti (100 ms) e piccoli
(1.44 MB)I dischi fissi sono un po’ più veloci (10 ms)
e molto più capienti (30 GB e oltre)
8© P
olite
cnic
o di
Tor
ino,
200
1
Programmi
Sono gli “spartiti” del calcolatoreDa un punto di vista logico, sono formati
da sequenze di istruzioniFisicamente sono costituiti da sequenze di
numeri binariSono memorizzati all’interno dei dischiPer poter essere eseguiti devono venir
trasferiti nella memoria RAM
9© P
olite
cnic
o di
Tor
ino,
200
1
CPU
Central Processing UnitÈ il corrispettivo del pianistaGuidata dagli spartiti (programmi)
“produce” la musica (dati)È tanto migliore quante più
istruzioni riesce ad elaborare al secondo
10© P
olite
cnic
o di
Tor
ino,
200
1
Dati
Costituiscono l’oggetto dell’elaborazionePossono essere raccolti dalla periferiche di
ingresso (mouse, tastiera, scanner, microfono, telecamera, …)
Possono essere trasferiti alle periferiche di uscita (video, casse, stampante, …)
A seconda dei casi possono rappresentare numeri, testi, immagini, filmati, suoni, …
Fisicamente, sono costituiti da sequenze di numeri binari
11© P
olite
cnic
o di
Tor
ino,
200
1
Sistema operativo
Sistem
a
operativ
odatidati
CPUCPU
datidati
12© P
olite
cnic
o di
Tor
ino,
200
1
Sistema operativo
È il programma (o l’insieme di programmi) che media e coordina l’utilizzo del calcolatore da parte degli utentida parte dei singoli programmi applicativi
Ha il compito di:Regolare l’utilizzo del computer
da parte dei suoi utentiOrganizzare dati e programmi sul discoGestire accensione e spegnimentoTrasferire i programmi in memoria
ed iniziarne l’esecuzioneRegolare l’accesso alle periferiche
13© P
olite
cnic
o di
Tor
ino,
200
1
Interfaccia del sistema operativo
Permette all’utente di interagire con il calcolatore consentendogli di impartire singoli comandi
Due modalità:Grafica, basata sul concetti di “finestra” e di
puntatore (mouse)Testuale, basata sullo scambio di messaggi
costituiti da righe di testo
14© P
olite
cnic
o di
Tor
ino,
200
1
Interfaccia grafica (1)
Il sistema operativo visualizza un ambiente virtuale costituito da finestre, menu, bottoni, icone, …
L’utente impartisce comandi interagendo con l’ambiente virtuale tramite il puntatore e la tastiera
Il risultato dell’esecuzione del comando si riflette sull’ambiente virtuale, modificandolo
15© P
olite
cnic
o di
Tor
ino,
200
1
Interfaccia grafica (2)
Difetti
Pregi Immediatezza comunicativa IntuitivitàSupporto multimediale
Difficoltà nell’automatizzazione dei compiti ripetitivi
Richiede molte risorse elaborativePuò limitare la produttività individuale
16© P
olite
cnic
o di
Tor
ino,
200
1
Interfaccia testuale (1)
La comunicazione tra utente e s.o. segue la metafora richiesta/risposta:L’utente impartisce
comandi al s.o. tramite la tastiera
Il sistema risponde visualizzando eventuali messaggi testuali, poi si pone in attesa di ulteriori comandi
py c:\*.txtmmand done> _
17© P
olite
cnic
o di
Tor
ino,
200
1
Interfaccia testuale (2)
Difetti
Richiede poche risorse elaborativeFacilita l’automazione di compiti
ripetitivi
Pregi
Richiede la conoscenza di linguaggi specifici la cui sintassi/semantica può essere complessa
Scarsa intuitivitàComunicazione limitata dello stato del
sistema
18© P
olite
cnic
o di
Tor
ino,
200
1
Sistemi operativi
All’interno di tali finestre vieneemulato il vecchio sistema operativo Microsoft
Di fatto, nei sistemi operativi attuali convivono le due modalità di interfaccia
Nel caso dei sistemi operativi Microsoft (Windows 95, 98, ME, NT, 2000, …), accanto alla modalità grafica, è disponibile l’interfaccia testuale attraverso le finestre MS-DOS
19© P
olite
cnic
o di
Tor
ino,
200
1
MS-DOS
MicroSoft Disk Operating SystemNato come sistema operativo per i PC IBMProgettato per computer molto meno
potenti di quelli attualiMonoutente
Si ipotizza che un’unica persona lo utilizziNon viene verificata l’identità dell’utenteChiunque utilizzi una macchina equipaggiata
con MS-DOS può eseguire qualsiasi operazioneMonotask
Può essere eseguito un solo programma per volta
20© P
olite
cnic
o di
Tor
ino,
200
1
Organizzazione dei dischi
Un disco può contenere da 1’000’000 a più di 10’000’000’000 di caratteri
Per poter trovare le informazioni che servono all’interno dei dischi occorre organizzarle in modo logico
Le informazioni sono raggruppate all’interno di file
21© P
olite
cnic
o di
Tor
ino,
200
1
File
Dati e programmi sono memorizzati all’interno dei dischi in file (detti anche documenti)
Ogni file:è contenuto in un discocontiene un insieme di informazionipuò essere più o meno lungoha un nome ed, eventualmente, un’estensioneha un insieme di informazioni collaterali (data e
ora in cui è stato modificato l’ultima volta,…)
22© P
olite
cnic
o di
Tor
ino,
200
1
Formato dei file
Da un punto di vista logico, i file possono contenere molti tipi di informazioni:Testi, immagini, suoni, programmi, filmati, …
Da un punto di vista fisico, un file è costituito da una sequenza di bit
Per poter essere utilizzato un file ha bisogno di un programma che lo “capisca” ed interpreti opportunamente i bit11
11 10
000
00101 01
100
0
23© P
olite
cnic
o di
Tor
ino,
200
1
Nomi ed estensioni
Il nome: aiuta l’utente a ricordare il contenuto in DOS, è formato da 1 ad 8 caratteri: lettere (A-
Z), cifre (0-9), alcuni caratteri speciali ( ! $ % & @ # _ - ^ ( ) ‘ )
Maiuscole e minuscole sono considerate ugualiL’estensione
aiuta ad associare al file il relativo programma che lo “capisce” e lo sa trattare
in DOS, è formata da 0 a 3 caratteri (stesse regole del nome)
Nome ed estensione vengono separati da “.”
24© P
olite
cnic
o di
Tor
ino,
200
1
Alcune estensioni
.txt: file di testo.exe programma eseguibile.jpg immagine compressa.c programma in linguaggio C.bas programma in linguaggio basic.doc documento di testo con impaginazione.bat file di testo contenente una sequenza
di comandi MS-DOS
25© P
olite
cnic
o di
Tor
ino,
200
1
File e cartelle (2)I file sono raggruppati all’interno di
cartelle o directoryOgni cartella:
Può contenere più file (con nomi e/o estensioni diversi)
Ha un proprio nome ed, eventualmente, un’estensione
1111 10
000
0
010101100
0
1111 10
000
0
010101100
0
1111 10
000
0
010101100
0
1111 10
000
0
010101100
0
26© P
olite
cnic
o di
Tor
ino,
200
1
Cartelle e sottocartelle
Una cartella può contenere altre sottocartelle (subdirectory, subfolder)
1111100 0000101011000
1111100 0000101011000
1111100 0000101011000
1111100 0000101011000 111110
0 0000101011000
1111100 0000101011000
1111100 0000101011000
1111100 0000101011000
1111100 0000101011000
1111100 0000101011000
1111100 0000101011000
1111100 0000101011000
Si forma una struttura ad “albero rovesciato”
27© P
olite
cnic
o di
Tor
ino,
200
1
I dischi
Ad un calcolatore possono essere collegati più dischi
Nel caso del DOS, ogni disco ha un nome, costituito da una lettera seguita da ‘:’
Esempio A: floppy disk C: hard disk D: CD-ROM
Ogni disco contiene almeno una cartella, detta cartella radice ed identificata dal carattere “\”
28© P
olite
cnic
o di
Tor
ino,
200
1
Struttura ad albero (1)
A:\
ESEMPI DISEGNI
TESTI
LETTERE
ESAMI ANALISI
FISICA
Cartella radice
sotto-cartelle(1° livello)
sotto-cartelle(2° livello)
29© P
olite
cnic
o di
Tor
ino,
200
1
Struttura ad albero (2)C:\
VARIE
ESAMI ANALISI
FISICA
tesina.doctesti.doc
elenco.docvoti.xls
CASA SPESE
ENTRATE
giugno.xlsluglio.xlsagosto.xls
tesina.doctesti.doc
ricorda.txt
telefono.xlsamici.txt
file
30© P
olite
cnic
o di
Tor
ino,
200
1
Percorsi
Si identifica un file particolare in base alla posizione in cui è memorizzato
La posizione può essere specificata in modo assoluto in modo relativo rispetto ad una data
cartella
Mario Rossi
Via Verdi, 3
Torino
31© P
olite
cnic
o di
Tor
ino,
200
1
Percorsi assoluti
Mario Rossi
Via Verdi, 3
Torino
nome
via
città
C:\varie\amici.txt
nome
(sotto-)cartella
disco
32© P
olite
cnic
o di
Tor
ino,
200
1
Esempi
C:\ESAMI\elenco.doc
disco radice
C:\
VARIE
ESAMI ANALISI
FISICA
tesina.doctesti.doc
elenco.docvoti.xls
CASA SPESE
ENTRATE
giugno.xlsluglio.xlsagosto.xls
tesina.doctesti.doc
ricorda.txt
telefono.xlsamici.txt
C:\CASA\SPESE\luglio.xls
C:\ESAMI\FISICA\tesina.doc
C:\VARIE\amici.txt
C:\ESAMI\ANALISI\tesina.doc
33© P
olite
cnic
o di
Tor
ino,
200
1
Percorsi relativi
Data una cartella di riferimento, è possibile specificare la posizione di un file in modo relativo
Si specifica il percorso in termini di sequenza di sottocartelle che devono essere attraversate per giungere al file
Si possono utilizzare alcuni “nomi” predefiniti“.” indica la cartella di attualmente individuata“..” indica la cartella “genitrice” (ovvero quella
che contiene la cartella attualmente individuata)
34© P
olite
cnic
o di
Tor
ino,
200
1
Esempi
elenco.doc(ma anche.\elenco.doc)
ESAMI
C:\
VARIE
ANALISI
FISICA
tesina.doctesti.doc
elenco.docvoti.xls
CASA SPESE
ENTRATE
giugno.xlsluglio.xlsagosto.xls
tesina.doctesti.doc
ricorda.txt
telefono.xlsamici.txt
cartella di riferimento
..\CASA\SPESE\luglio.xls
FISICA\tesina.doc
..\VARIE\amici.txt
ANALISI\tesina.doc
35© P
olite
cnic
o di
Tor
ino,
200
1
Caratteri Jolly (1)
A volte è utile indicare un gruppo di file, piuttosto che un file singolo
Il DOS permette di indicare in modo parziale il nome/estensione di un file utilizzando i caratteri jolly (‘?’ e ‘*’)
Quando si utilizzano questi caratteri, il DOS confronta il nome parziale indicato con i nomi di tutti i file presenti nella directory e seleziona quelli che soddisfano i criteri indicati
36© P
olite
cnic
o di
Tor
ino,
200
1
Caratteri Jolly (2)
Il confronto avviene carattere per carattere, da sinistra verso destra, separatamente per nome e per estensione
Il carattere jolly ‘?’ può corrispondere a qualsiasi carattere presente nel nome del file, nella medesima posizione
Il carattere jolly ‘*’ può corrispondere a qualsiasi sequenza di caratteri, anche di lunghezza nulla, a partire dalla sua posizione
37© P
olite
cnic
o di
Tor
ino,
200
1
EsempiProva?.txt identifica i file
prova1.txt, prova2.txt, prova3.txtma non il file
prova.txtprova*.txt identifica i file
prova.txt, prova1.txt, prova2.txt, prova3.txt
tesina.* identifica i filetesina.doc, tesina.xls
*.* identifica tutti i file della cartella
38© P
olite
cnic
o di
Tor
ino,
200
1
Il DOS – diagramma di flusso
BootstrapBootstrap
Stampaprompt
Stampaprompt
Leggicomando
Leggicomando
EseguicomandoEsegui
comando
InizioInizio
39© P
olite
cnic
o di
Tor
ino,
200
1
I comandi: vista funzionale
Agiscesui dischi
outputoutput
Messaggigenerati
ComandoComando
OpzioniParametri
inputinput
40© P
olite
cnic
o di
Tor
ino,
200
1
ParametriIndicano il cosa, il dove, … , dell’azione
richiestaPer lo più sono costituiti da nomi di file e
di cartelle (con i relativi percorsi)Esempio:
DIR a:\analisiIl volume nell'unità A è BACKUP 001Directory di A:\analisi. <DIR> 06/07/93 14.42.. <DIR> 06/07/93 14.42ESERCIZ1 TXT 88.226 29/06/93 11.11RELAZION DOC 92.807 29/06/93 11.11 2 file 181.033 byte2 dir 758.784 byte disponibili
Il volume nell'unità A è BACKUP 001Directory di A:\analisi. <DIR> 06/07/93 14.42.. <DIR> 06/07/93 14.42ESERCIZ1 TXT 88.226 29/06/93 11.11RELAZION DOC 92.807 29/06/93 11.11 2 file 181.033 byte2 dir 758.784 byte disponibili
41© P
olite
cnic
o di
Tor
ino,
200
1
Opzioni
Permettono di specificare eventuali modalità particolari di esecuzione del comando
Di solito consistono in nomi brevi, preceduti dal carattere ‘/’
Esempio:DIR a:\analisi /wIl volume nell'unità A è BACKUP 001
Directory di A:\analisi[.] [..] ESERCIZ1.TXT RELAZION.DOC2 file 181.033 byte2 dir 758.784 byte disponibili
Il volume nell'unità A è BACKUP 001Directory di A:\analisi[.] [..] ESERCIZ1.TXT RELAZION.DOC2 file 181.033 byte2 dir 758.784 byte disponibili
42© P
olite
cnic
o di
Tor
ino,
200
1
I comandi: sintassi
Vengono espressi sotto forma di singole righe di testo
Sintassi:NOME_COMANDO [parametri] [opzioni]
Nome_comando indica l’azione che deve essere eseguita e determinail numero ed il tipo di parametri ed opzioni disponibili
Il nome del comando, i singoli parametri e le opzioni sono separati da spazi (“ ”)
43© P
olite
cnic
o di
Tor
ino,
200
1
Parametri di default
In alcuni casi, è possibile invocare comandi senza indicare esplicitamente dei parametri:
Quando ciò succede, il sistema utilizza, al posto dei parametri mancanti, alcuni parametri interni che riflettono lo stato del sistema (valori di default)
Alcuni comandi richiedono l’indicazione esplicita di uno o più parametri
44© P
olite
cnic
o di
Tor
ino,
200
1
Disco corrente (1)
Quando si nomina un file è necessario indicarneDisco, directory e sottodirectory, nome ed
estensione
Il sistema operativo mantiene al proprio interno una variabile che indica su quale drive si sta operando (disco corrente)
Se, nell’indicare un file, si omette il nome del disco, il sistema provvede a completare il cammino anteponendo il nome del disco corrente
45© P
olite
cnic
o di
Tor
ino,
200
1
Disco corrente (2)
Il volume nell'unità A è BACKUP 001Directory di A:\analisi. <DIR> 06/07/93 14.42.. <DIR> 06/07/93 14.42ESERCIZ1 TXT 88.226 29/06/93 11.11RELAZION DOC 92.807 29/06/93 11.11 2 file 181.033 byte2 dir 758.784 byte disponibili
Il volume nell'unità A è BACKUP 001Directory di A:\analisi. <DIR> 06/07/93 14.42.. <DIR> 06/07/93 14.42ESERCIZ1 TXT 88.226 29/06/93 11.11RELAZION DOC 92.807 29/06/93 11.11 2 file 181.033 byte2 dir 758.784 byte disponibili
DIR \analisi Discocorrente
46© P
olite
cnic
o di
Tor
ino,
200
1
Disco corrente (3)
È possibile cambiare il disco corrente con il comando “X:”, dove X deve essere sostituito dalla lettera che identifica il disco su cui si intende operare
Il prompt di sistema (se non viene modificato da altri comandi) indica quale sia il disco correnteC> a:
A> f:Unità specificata non validaA>
C> a:A> f:Unità specificata non validaA>
47© P
olite
cnic
o di
Tor
ino,
200
1
Cartella corrente (1)
Per ogni disco collegato al calcolatore, il sistema identifica una cartella che considera come cartella di lavoro (o cartella corrente)
Se, nell’indicare un file, si utilizza un percorso relativo, il sistema utilizza come cartella di riferimento la cartella corrente del disco indicato
Se si omette il nome del disco e si usa un percorso relativo, il sistema usa come cartella di riferimento la cartella corrente del disco corrente
48© P
olite
cnic
o di
Tor
ino,
200
1
Cartella corrente (2)
Il comando COPY relazion.doc c:..\..\esami\
copia il file a:\analisi\relazion.doc
nella cartella c:\esami\
Disco corrente: A:Cartella corrente disco A: \analisi\Cartella corrente disco C: \varie\amici\Cartella corrente disco D: \
Disco corrente: A:Cartella corrente disco A: \analisi\Cartella corrente disco C: \varie\amici\Cartella corrente disco D: \
Stato del sistema
49© P
olite
cnic
o di
Tor
ino,
200
1
Cartella corrente (3)
Alla partenza, la cartella corrente di tutti i dischi è la cartella radice
Il comando “CD”, se utilizzato senza parametri, stampa la cartella corrente del disco corrente
Il comando “CD x:” stampa la cartella corrente del disco x:
Il comando “CD <nome_cartella>” modifica la cartella corrente del disco corrente
Il comando “CD x:<nome_cartella>” modifica la cartella corrente del disco x:
50© P
olite
cnic
o di
Tor
ino,
200
1
Le categorie di comandi
Comandi “interni” Caricati, all’atto del bootstrap, nella memoria centrale
per renderne immediata l’esecuzione DIR, COPY, DEL, REN, MD, CD, RD, TYPE, PROMPT
Comandi “esterni” Si trovano sul disco e vengono caricati in RAM solo
all’atto della loro invocazione Sviluppati dal produttore del sistema operativo
Programmi applicativi Come i comandi “esterni”, si trovano sul disco e
vengono caricati quando necessario Sviluppati da terze parti
51© P
olite
cnic
o di
Tor
ino,
200
1
I comandi principali DIR – elenca i file presenti in una data cartella COPY – copia un file da una cartella ad un’altra DEL – cancella un file REN – cambia il nome ad un file MD – crea una cartella CD – cambia la cartella corrente RD – elimina una cartella PROMPT – cambia il prompt di sistema FORMAT – inizializza un disco DISKCOPY – copia un disco EDIT – crea/modifica un file di testo TYPE – visualizza un file di testo PRINT – invia un file di testo alla stampante
52© P
olite
cnic
o di
Tor
ino,
200
1
Path (1)
I comandi esterni ed i programmi applicativi si trovano sul disco
Per poterli eseguire il sistema deve conoscerne l’ubicazione
Quando si digita un comando, se non si tratta di un comando interno, il sistema operativo cerca sul disco il relativo codice
Per default, il programma viene cercato nella cartella corrente del disco corrente
53© P
olite
cnic
o di
Tor
ino,
200
1
Path (2)
Per poter accedere ai comandi esterni quando la cartella corrente non è quella in cui sono memorizzati, è possibile indicare al DOS quali sono le cartelle ulteriori in cui cercare i comandi da eseguire
Il comando PATH <percorso_cartella>
indica che la ricerca deve essere estesa anche alla cartella indicata (il cui percorso deve essere espressoin modo assoluto)
54© P
olite
cnic
o di
Tor
ino,
200
1
Path (3)
È possibile indicare più cartelle in cui effettuare la ricerca, separandole con il carattere “;”
Esempio: il comandoPATH c:\dos;c:\programs
indica che la ricerca dovrà essere effettuata dapprima nella cartella corrente del disco corrente, poi nella cartella c:\dos ed infine nella cartrella c:\programs
55© P
olite
cnic
o di
Tor
ino,
200
1
Prompt (1)
Per invitare l’utente ad introdurre una riga di comando, il sistema stampa un messaggio di invito (prompt)
Per default, essa consiste della lettera che identifica il disco corrente seguita dal simbolo “>”
Il comando PROMPT permette di modificare tale messaggio
56© P
olite
cnic
o di
Tor
ino,
200
1
Prompt (2) PROMPT <messaggio>
indica al sistema di utilizzare <messaggio> come prompt
<messaggio> può contenere alcune variabili che, nel testo stampato, vengono sostituite dal relativo valore.
Queste comprendono $n: il disco corrente $p: il percorso corrente (disco e cartella) $d: la data corrente $t: l’ora corrente $g: il carattere “>” $l: il carattere “<” $b: il carattere “|”
57© P
olite
cnic
o di
Tor
ino,
200
1
Prompt (3)
C> prompt $p$gC:\> cd esamiC:\esami> prompt $d$bMer 04/10/2000| prompt $n$gC> cd ..C> prompt $p$lC:\<
58© P
olite
cnic
o di
Tor
ino,
200
1
Input e output dei programmi
Se, durante l’esecuzione di un comando, vengono generati messaggi in uscita, per default, questi vengono stampati sullo schermo
Alcuni comandi operano alcune trasformazioni sui dati mandati loro in ingresso: per default, l’ingresso coincide con i tasti premuti sulla tastiera durante l’esecuzione dl comando
È possibile modificare queste impostazioni di base mediante la redirezione dei flussi di ingresso e uscita
59© P
olite
cnic
o di
Tor
ino,
200
1
Redirezione dei flussi di I/O
Per inviare i messaggi stampati da un comando ad un dato file, si scrive:COMANDO [parametri][opzioni] > nome_file
Per aggiungere i messaggi stampati da un comando in coda ad un dato file, si scrive:COMANDO [parametri][opzioni] >> nome_file
Per indicare ad un comando di ricevere i propri dati da un file, invece che dalla tastiera, si scrive:COMANDO [parametri][opzioni] < nome_file
60© P
olite
cnic
o di
Tor
ino,
200
1
Catene di comandi
È possibile concatenare due o più comandi, indicando che quanto stampato dal primo venga posto in ingresso al secondo, e così via…
Si scrive:CMD1 [par][opz] | CMD2 [par][opz]
61© P
olite
cnic
o di
Tor
ino,
200
1
I filtri
Sono comandi che operano trasformazioni sul flusso di ingresso e inviano il risultato sul flusso di uscita
EsempiMORE: suddivide il flusso di ingresso in pagine,
formate da un numero opportuno di righe; invia le pagine in uscita attendendo, tra una pagina e l’altra, la pressione di un carattere sulla tastiera
SORT: ordina le righe in ingresso e le invia in uscita
FIND: identifica, tra le righe in ingresso, tutte quelle che soddisfano una data condizione