Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Il software di sistema
•
Il software in un calcolatore è organizzato in due parti distinte:
– Il “Software di Sistema” o “Sistema Operativo”, che
comprende una serie di programmi atti a gestire le risorse
fisiche del calcolatore e a rendere agevole l’interazione
dell’utente con il sistema
– I programmi applicativi, che vengono scelti ed installati
dall’utente.
Fondamenti di informatica
119
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Il software di sistema
• È quella parte del software che consente di gestire tutte
le risorse di un calcolatore a diversi livelli (fisico, logico,
utente).
• È formato da un insieme di programmi e funzioni
fondamentali per il funzionamento del calcolatore.
– Per esempio, le funzioni per gestire monitor, tastiera e
stampante, come pure per leggere e scrivere su
disco, sono tutte parte del sistema operativo.
• L’utente non vede tutto questo ma solo una parte del
sistema operativo, espressamente orientata all’utente.
Fondamenti di informatica
120
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Il software di sistema
• Il sistema operativo è organizzato secondo una struttura
a “cipolla”
PROGRAMMI DI UTILITA’
UTENTE
SERVIZI DI SISTEMA
INTERPRETE DI COMANDI
FILE SYSTEM
KERNEL
HARDWARE
Fondamenti di informatica
121
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Il software di sistema
•
Il kernel è costituito da un insieme di programmi che operano
direttamente sull’hardware del sistema. Gestisce tutte le risorse fisiche
del calcolatore.
•
Il file system include i programmi e le strutture dati per
l’organizzazione dei dati sul disco fisso (o altro supporto di
memorizzazione).
•
I servizi di sistema sono una serie di funzioni utilizzabili da altri
programmi che il sistema operativo mette a disposizione per
consentire dall’esterno l’accesso alle risorse disponibili.
•
L’interprete di comandi è un programma di interfaccia che consente
all’operatore di interagire con il sistema operativo ed eseguire
direttamente un sottoinsieme dei servizi di sistema.
•
I programmi di utilità sono veri e propri programmi applicativi di norma
forniti con il sistema operativo e utili a risolvere problemi generici di
installazione e configurazione.
Fondamenti di informatica
122
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Il software di sistema
•
Esempi di sistema operativo sono: Windows 98, DOS, Linux,
Windows 2000, WindowsXP, UNIX.
– Ognuno di essi è caratterizzato da un insieme di
componenti differenti (all’interno della struttura a cipolla).
– Parti di sistemi operativi diversi non sono compatibili, ma è
possibile realizzare delle interfacce fra loro.
•
Le parti piu` interessanti per l’utente finale sono quelle più
esterne:
– il file system
– I servizi di sistema (li vedremo con la programmazione)
– l’interprete di comandi
– i programmi di utilita`
Fondamenti di informatica
123
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Il software di sistema - il file system
•
Il file system organizza i dati all’interno del disco secondo una
struttura logica “ad albero”.
•
I dati sono raggruppati all’interno di archivi logici chiamati
“directory”.
– Esempio: un insieme di lettere possono essere raggruppate in
una singola directory.
•
Insiemi di dati coerenti formano un “file”.
– Esempio: un documento come una lettera costituisce un file;
•
Si definisce il “percorso” (path) per accedere ad un file o directory,
come l’attraversamento dell’albero fino al punto desiderato.
– Il percorso può essere assoluto oppure relativo.
Fondamenti di informatica
124
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Il software di sistema - il file system
C:
alfa
teta
usr
beta
bin
personale
exec
vita
locale
cartelle
sistema
documenti
740
parco
prova
tour
letter
alfa
Directory corrente
Fondamenti di informatica
125
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Il software di sistema - l’interprete dei comandi
• È un programma (chiamato anche shell) in grado di
interpretare una serie di comandi immessi tramite la
tastiera.
• Esempi di comandi possono essere:
– La stampa di un documento;
– La richiesta di visualizzare i file di una directory
specificata
– La richiesta di cancellazione di un file;
– La navigazione all’interno del file system.
Fondamenti di informatica
126
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Il software di sistema - l’interprete dei comandi
•
L’interprete di comandi MS-DOS si chia COMMAND.COM. In
versioni leggermente modificate esso esiste anche nei più
recenti sistemi operativi (es. Microsoft XP)
•
I comandi più comuni sono:
– DIR - per vedere il contenuto della directory di lavoro;
– CD - per cambiare la directory di lavoro;
– COPY - per copiare uno o più files;
– DEL - per cancellare uno o più files;
– MKDIR - per creare una nuova directory;
– RMDIR - per cancellare una directory;
– TYPE - per visualizzare un file di testo;
– PRINT - per stampare un file di testo;
– PROMPT - per cambiare il prompt;
– TREE – per visualizzare la struttura ad albero del file
system
– PATH - visualizzare o imposta il percorso di ricerca per i
file eseguibili;
– FORMAT - per formattare un disco;
Fondamenti di informatica
127
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Il software di sistema – i programmi di utilità
•
Esistono diversi tipi di programmi di utilità. A volte il confine tra
questi programmi e i programmi più propriamente applicativi è
molto labile.
– Text editor elementari (edit, notepad o wordpad);
– Calcolatrici su schermo (calc);
– Visualizzatori del file system (explorer);
– Internet browser più o meno complessi (strumenti per la
navigazione in Internet);
– Programmi per il controllo e la configurazione di dispositivi e
periferiche (deframmentazione, comunicazioni);
– Programmi per il monitoraggio dello stato del sistema (CPU,
memorie, dischi);
Fondamenti di informatica
128
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
I programmi applicativi
•
I programmi applicativi sono installati dall’utente e rispondono a
specifiche esigenze di lavoro. Tra gli altri vanno elencati
– Word processor (formattatore di documenti);
– Spreadsheet (foglio elettronico);
– Database (gestione di basi di dati);
– Calendar/planner (agenda e rubrica/organizer);
– Internet browser avanzati (strumenti per la navigazione in
Internet);
– Programmi per la comunicazione di rete (posta elettronica, ftp)
– Registratori/replicatori di suoni;
– Compilatori e interpreti;
– Applicazioni particolari (visualizzazione/analisi di immagini,
analisi di dati, gestionali ecc.)
Fondamenti di informatica
129
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Approfondimenti
• Gestione dei processi
●
Processo (job) = immagine in memoria di un programma
●
Il primo processo caricato è il sistema operativo
●
Nei primi calcolatori solo un processo alla volta (sistema
monoprogrammato)
●
●
uso di coda FIFO
Ovvie controindicazioni nel caso di più processi
Fondamenti di informatica
130
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Approfondimenti
MEMORIA
PRIMARIA
ROM
MEMORIA
PRIMARIA
PROGRAMMA DI
ISTRUZIONE
A0
BOOT STRAP
MEMORIA
SECONDARIA
MEMORIA
PRIMARIA
PROGRAMMA DI
BOOT
PROGRAMMA DI
BOOT STRAP
+
SISTEMA
OPERATIVO
Sistema
operativo
SISTEMA
OPERATIVO
SEGMENTO
ISTRUZIONI
PROCESSO
IN
MEMORIA
RAM
SEGMENTO
DATI
MEMORIA
LIBERA
FASE 1
FASE 2
FUNZIONAMENTO
ORDINARIO
Fondamenti di informatica
131
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Approfondimenti
•
Nei sistemi moderni più
processi competono per
l’esecuzione (sistemi
multiprogrammati
RESCHED
READY
RUN
RESCHED
•
i processi vengono eseguiti a
turno
SUSPEND
RESUME
•
la tecnica più frequente è
quella del “time sharing”: la
CPU dedica un uguale
intervallo di tempo ad ogni
processo
Fondamenti di informatica
SUSPEND
WAIT
KILL
CREATE
132
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Approfondimenti
T
T
T
T
T
T
SIST. OP.
PROC. A
PROC. B
PROC. C
TEMPO
IOS
IOS
IOS
T
IOS
IOS
IOS
RUN
T
T
IOS
T
T
READY
SIST. OP.
WAIT
PROC. A
PROC. B
PROC. C
IOS
Fondamenti di informatica
IOS
IOS
INIZIO
I/O
IOS
INTERRUPT
FINE I/O
IOS
IOS
TEMPO
133
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Approfondimenti
•
Memoria virtuale paginata
– Il processo viene diviso in pagine di uguale dimensione (ad es.
256KB)
– I processi possono avere dimensione molto più grande della
memoria effettivamente disponibile
– Viene continuamente gestito lo SWAP di pagine, secondo le
necessità di indirizzamento legate all’esecuzione
– Ovviamente più processi possono essere gestiti
contemporaneamente
– La gestione delle pagine è completamente trasparente per
l’utente
– Possono essere gestiti anche blocchi di dimensione variabile
(SEGMENTI)
Fondamenti di informatica
134
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Approfondimenti
• Memoria virtuale paginata
Processor
Memory
Disk
Page 1
Page 2
Page 3
Page 4
Page 5
Fondamenti di informatica
135
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Approfondimenti
• Struttura del disco MS-DOS
Fondamenti di informatica
136
Università di Sassari – Dipartimento di Sc. Politiche, Sc. Delle Comunicazione e Ingegneria dell'Informazione - A.A. 2015-2016
Approfondimenti
• File system
MS-DOS
Fondamenti di informatica
137