Il sistema operativo
Stefano Brocchi
[email protected]
Stefano Brocchi
Il sistema operativo
1 / 70
Il sistema operativo
Il sistema operativo è il primo programma caricato in memoria
all’avvio del computer, e resta sempre attivo fino allo spegnimento
E’ avviato dal bootstrap
Il suo primo scopo è quello di mettere a disposizione all’utente
un’interfaccia per l’avvio degli altri programmi
Qualsiasi calcolatore programmabile ne deve disporre
Questo include per esempio gli smartphone, per i quali molti principi di
funzionamento sono uguali a quelli di un calcolatore
Stefano Brocchi
Il sistema operativo
2 / 70
Funzionalità
Inoltre, il sistema operativo gestisce molte altre funzionalità
fondamentali della macchina:
L’accesso ai dispositivi di ingresso ed uscita (I/O, Input/Output)
La gestione dei dati presenti nel calcolatore, e la loro strutturazione in
file e cartelle
Coordinazione dei programmi in esecuzione contemporaneamente
Comprensiva di ottimizzazione delle risorse condivise
Controllo degli accessi e sulle limitazioni dei programmi
Gestione della memoria
Stefano Brocchi
Il sistema operativo
3 / 70
Il sistema operativo come tramite
Il sistema operativo fa da tramite tra i programmi e le risorse del
computer
Le risorse comprendono il processore, la memoria, le periferiche, i file e
la rete
E’ possibile cosı̀ ripartire le risorse tra i vari processi
Definito quello che ogni programma può o non può fare
Imposti dove necessario anche vincoli per la sicurezza
Stefano Brocchi
Il sistema operativo
4 / 70
Programmi e processi
Uno dei compiti più delicati di un sistema operativo è quello della
gestione dei processi
Un programma differisce da un processo, in quanto è una sequenza di
istruzioni statiche non in esecuzione
Da un programma si origina un processo quando questo viene caricato
in memoria centrale e viene fatta partire l’esecuzione delle sue
istruzioni
Nei sistemi Windows, tipicamente ogni processo avviato dall’utente
corrisponde ad una diversa finestra
Presenti però altri processi in esecuzione, per esempio avviati in
automatico all’avvio
Stefano Brocchi
Il sistema operativo
5 / 70
Visione a livelli
Si può pensare al sistema operativo tramite una visione a livelli, dove
dopo il nucleo più interno gli altri livelli gestiscono le altre funzioni del
sistema
Utente
Programma
applicativo
Programma
applicativo
Interprete comandi
Gestore file (filesystem)
Gestore delle periferiche
Sistema
operativo
Gestore della memoria
Nucleo (kernel)
Hardware
Stefano Brocchi
Il sistema operativo
6 / 70
Interprete dei comandi
L’interprete dei comandi è quella parte del sistema operativo che da la
possibilità all’utente di avviare gli altri programmi
L’interfaccia del sistema operativo definisce la facilità di utilizzo del
sistema
In passato, veniva utilizzato un sistema a comandi di testo, tramite il
quale l’utente potesse comunicare più facilmente con la macchina
Stefano Brocchi
Il sistema operativo
7 / 70
Sistemi operativi, grafica e GUI
Con lo sviluppo delle potenzialità grafiche del calcolatore, nascono i
sistemi operativi con interfaccia grafica (detta anche GUI, Graphical
User Interface)
Detti anche ’punta e clicca’ per il sistema di interazione molto
semplice ottenuto con l’uso di mouse
Il computer diventa uno strumento usabile anche ai non addetti ai
lavori
Stefano Brocchi
Il sistema operativo
8 / 70
Nucleo del sistema
Il nucleo (kernel) del sistema operativo è quello che si occupa di
gestire i vari processi in esecuzione
I moderni sistemi operativi sono multiprogrammati: possono eseguire
più processi contemporaneamente
Importante, per esempio perché problemi di blocco o rallentamento
potrebbero essere dovuti a programmi in esecuzione diversi da quello in
primo piano
Stefano Brocchi
Il sistema operativo
9 / 70
Nucleo del sistema
Per assicurare un’equa distribuzione del tempo, la CPU esegue a
rotazione un po’ di codice per ogni processo in esecuzione
Definito un quanto di tempo assegnato a rotazione ai processi
Essendo la quantità di tempo molto breve, la rotazione passa da un
processo all’altro molte volte al secondo, dando l’impressione che tutto
accada contemporaneamente
Politica chiamata round robin
Stefano Brocchi
Il sistema operativo
10 / 70
Politica round robin, esempio
Vediamo come si alternano i processi tramite round robin
Quando un processo è in attesa di input o output, viene messo in
attesa
Esempio: un word processor in attesa di comandi dall’utente, o che sta
aspettando che un file venga salvato su disco
Quanto di tempo
Elaborazione
Stefano Brocchi
Attesa
Il sistema operativo
Richiesta di I/O
11 / 70
Gestione dell’hardware
Il sistema operativo è anche incaricato di gestire l’hardware del
computer, compito assegnato al gestore delle periferiche
Gli altri processi non possono accedere direttamente all’hardware, per
manipolarlo devono inoltrare una chiamata al sistema operativo
Esempio: nel momento in cui si debba scrivere su disco fisso
Stefano Brocchi
Il sistema operativo
12 / 70
Gestione dell’hardware: vantaggi
Si garantisce cosı̀ un maggiore controllo sul sistema
E’ possibile limitare le operazioni che un processo può eseguire,
impedendo per esempio la manipolazione di alcuni file di sistema o un
uso eccessivo delle risorse
Sui sistemi operativi più moderni, quando un programma richiede di
effettuare alcune operazioni, il sistema operativo chiede conferma
all’utente prima di procedere
Possibilità di maggiore coordinazione: quando diversi processi sono in
attesa di input, il sistema operativo sa smistare i dati in ingresso al
processo giusto
Stefano Brocchi
Il sistema operativo
13 / 70
Coordinazine dell’hardware: vantaggi
Alcuni esempi di utilizzo di coordinazione dell’hardware
Smistamento corretto dell’input: se abbiamo due word processor
aperti contemporaneamente, digitando un carattere questo appare
solo in quello attivo grazie al sistema operativo
Se due processi diversi stanno aspettando dati inviati dalla rete, il
sistema operativo distingue automaticamente i dati destinati ad uno o
all’altro
Impedite operazioni potenzialmente non coerenti su filesystem, come
due processi che scrivono contemporaneamente sullo stesso file, o la
cancellazione di un file aperto o in esecuzione
Stefano Brocchi
Il sistema operativo
14 / 70
Coordinazine dell’hardware: sicurezza
Tramite il controllo degli accessi all’hardware, e la gestione del
filesystem, è possibile limitare quello che un programma può fare
Meccanismo utilizzato negli smartphone per avere programmi con
permessi limitati
Quando viene installata un’applicazione, questa deve dichiarare subito
tutti i tipi di operazioni di cui necessita
Dopo che l’utente ha dato l’autorizzazione, il sistema operativo
consentirà solo le operazioni permesse
Importante per la sicurezza del sistema (impossibile manipolare il
funzionamento del sistema operativo), la privacy (un’applicazione non
può leggere e diffondere dati delle altre, come gli SMS) e per proibire
operazioni a pagamento non desiderate
Stefano Brocchi
Il sistema operativo
15 / 70
Driver
Grazie alla gestione centralizzata delle periferiche, un programma può
funzionare anche senza conoscere il tipo di hardware presente
Per la gestione delle componenti hardware, sono necessari dei
programmi detti driver che si occupano di tradurre comandi in un
linguaggio comprensibili alla periferica
I processi comunicheranno la richiesta al sistema operativo che la
tradurrà opportunamente al dispositivo
Stefano Brocchi
Il sistema operativo
16 / 70
Esempio driver: stampa
Un esempio di uso di driver: un word processor richiede la stampa di
un documento
Il programma specifica solo il file da stampare, il sistema operativo
apre una finestra dove si possono configurare le proprietà tramite il
driver
Stefano Brocchi
Il sistema operativo
17 / 70
Driver e spooling
Tramite driver è possibile inoltre la manipolazione in parallelo di
risorse intrinsecamente non condivisibili
Esempio: una stampante deve terminare la stampa di un documento
prima di poterne stampare un altro
Tramite un meccanismo detto spooling, il sistema operativo accoda
correttamente le richieste arrivate in parallelo in modo che possano
essere correttamente eseguite
Stefano Brocchi
Il sistema operativo
18 / 70
Gestione della memoria
Un’importante funzione del sistema operativo è quello della gestione
della memoria (centrale)
Ad ogni processo viene associata una zona di memoria limitata, e gli
viene proibito di manipolare il resto della RAM
Si impedisce cosı̀ che un difetto in un processo alteri il funzionamento
degli altri
Ogni processo funziona cosı̀ indipendentemente dal contesto
In caso di necessità, due processi si possono comunque ’accordare’ per
condividere un’area di memoria
Stefano Brocchi
Il sistema operativo
19 / 70
Memoria virtuale
Grazie alla gestione centralizzata della memoria, è possibile sfuttare
degli artifici per disporne di maggiori quantità
Nel caso la richiesta di memoria ecceda le dimensioni della memoria
centrale, viene utilizzata parte del disco fisso per integrare la
mancanza
Questa memoria aggiuntiva viene detta virtuale, e l’operazione di
scambio tra RAM e disco fisso swapping
Stefano Brocchi
Il sistema operativo
20 / 70
Politiche per la memoria virtuale
Come scegliere quali porzioni di memoria tenere in memoria e quali su
disco fisso ?
Utilizzate politiche simili a quelle della cache
In effetti, il meccanismo di paginazione virtuale è del tutto analogo a
quello della cache, dove la RAM fa la parte della memoria veloce e il
disco fisso di quella più lenta
Opposte le motivazioni: invece di usare una memoria di supporto più
veloce per ottimizzare le prestazioni, se ne usa una più lenta per
aumentare la capacità
Stefano Brocchi
Il sistema operativo
21 / 70
Memoria virtuale: limitazioni
Utilizzando tuttavia il disco fisso come memoria centrale, l’efficienza
della macchina decade molto rapidamente
Uno dei motivi di rallentamento quando troppe applicazioni vengono
utilizzate contemporaneamente
La memoria centrale, essendo ad accesso casuale, ha tempi di accesso
uguali indipendentemente dal carico
Per questo, la quantità di memoria virtuale impiegata è solitamente
limitata ad una soglia massima
Stefano Brocchi
Il sistema operativo
22 / 70
Filesystem
Il sistema operativo si occupa inoltre della gestione dei contenuti del
disco fisso in una struttura logica facilmente gestibile detta filesystem
Il filesystem può essere considerato un gestore della memoria di archivio
I dati sono strutturati in unità logiche di base dette file
Un file può rappresentare per esempio un’immagine, un programma, un
documento...
Stefano Brocchi
Il sistema operativo
23 / 70
File
Un file è formato da un nome ed un’estensione, separati da un punto
Es. ding.wav è un file di nome ding e di estensione wav
L’estensione serve ad identificare il tipo di file
Es. I file .jpg sono immagini, i .mp3 sono file audio, i .pdf documenti .
Per ogni file, nel filesystem è memorizzata la sua posizione su disco
Stefano Brocchi
Il sistema operativo
24 / 70
Tipi di file ed estensioni
L’estensione del file definisce con che programma sarà aperto il file
stesso
Es. doc con editor di documenti, jpg con un visualizzatore di immagini
Presente una scelta di default, utilizzata a meno che l’utente non
specifichi diversamente
Scelta di default modificabile dalle opzioni del file (menù apribile
cliccando con il tasto destro sul file)
Spesso, l’estensione dei file è nascosta dal sistema operativo, per
impedirne la modifica
Se l’estensione viene modificata, quando l’utente clicca sul file il
sistema tenterebbe di aprirlo con un programma inappropriato
Stefano Brocchi
Il sistema operativo
25 / 70
File eseguibili
Il tipo di file si vede anche dall’icona associata, corrispondente al
programma con cui verrà aperto il file
Eccezione: i programmi (file eseguibili) dispongono di un’icona propria
Fare attenzione quando si clicca su di un file eseguibile, in quanto
questo eseguirà un comportamente attivo
Possibili azioni potenzialmente dannose sul sistema, o diffusione di
programmi come virus o trojan
Stefano Brocchi
Il sistema operativo
26 / 70
File eseguibili
I file eseguibili su windows hanno estensione .exe, anche se esistono
altre estensioni meno diffuse di file eseguibili come .jar, .com, .bat,
.msc
Diffidare da file con questa estensione scaricati da Internet,
specialmente se non si sta scaricando un programma
Alcuni sistemi operativi più moderni avvisano l’utente prima di
eseguire file scaricati dalla rete
Stefano Brocchi
Il sistema operativo
27 / 70
File: date memorizzate
Il sistema operativo inoltre tiene traccia di tre momenti importanti di
un file:
Il tempo e la data di creazione
Il tempo e la data dell’ultima modifica
Il tempo e la data dell’ultimo accesso
Utili sia come criteri di ricerca, sia per avere informazioni su di un file
Es. quanto è recente questo documento ? Quando è stato aggiornato
per l’ultima volta ?
Stefano Brocchi
Il sistema operativo
28 / 70
Cartelle
I file sono raggruppati in gruppi logici detti cartelle
Metafora che rispecchia un archivio cartaceo
Una cartella può a sua volta contenere altre cartelle; si crea cosı̀ una
struttura ad albero
Stefano Brocchi
Il sistema operativo
29 / 70
Radice
Su windows, le radici del filesystem sono rappresentate dalle prime
lettere dell’alfabeto seguite da ’:’, ed identificano il dispositivo di
memoria di archivio dove si trova il file
Un esempio verosimile: c: potrebbe essere il disco fisso, d: il lettore
cd/dvd, e all’inserimento di una chiave USB comparirebbe il disco e:
(a: e b: erano solitamente riservate per i floppy disk)
Stefano Brocchi
Il sistema operativo
30 / 70
Percorsi
Un file è determinato da un percorso che ne identifica la posizione e
dal suo nome
Il formato del percorso (sempre su sistemi windows) è
drive\cartella\cartella\...\nomefile
Es. c:\windows\images\stripe.png è un file sul disco c: nella
sottocartella images della cartella windows con nome stripe ed
estensione png
Il percorso, completo del nome del file, è univoco per ogni file: due file
nella stessa cartella e con lo stesso nome (comprensivo di estensione)
non possono coesistere
Copiando un file in una cartella dove è presente un file omonimo, il
sistema operativo chiede se si vuole sovrascrivere il vecchio file o
copiare quello nuovo con un altro nome (es. aggiungendo ’- copia’ al
nome del file)
Stefano Brocchi
Il sistema operativo
31 / 70
Collegamenti
Per poter richiamare un file da una cartella diversa, si possono
utilizzare i collegamenti
Possibile creare un collegamento dal menù che compare cliccando con il
pulsante destro su un file
Questi file contengono semplicemente un percorso ad una cartella o a
un file
Possono essere utili per navigare il filesystem in modo comodo
Esempio: le icone sul desktop sono solitamente dei collegamenti per
avviare i vari programmi senza andarli a cercare nelle loro cartelle di
installazione
Stefano Brocchi
Il sistema operativo
32 / 70
Gestione filesystem tramite GUI
Vediamo come si può gestire un filesystem su windows tramite GUI
Stefano Brocchi
Il sistema operativo
33 / 70
Gestione più utenti
Nei moderni sistemi operativi, è possibile dare accesso al sistema ad
utenti diversi
Per identificarsi all’avvio, ognuno potrà disporre di una sua password
Le impostazioni del sistema sono personalizzate a seconda dell’utente
Es. contenuto del desktop e dello sfondo, impostazioni dei programmi,
sensibilità del mouse, ...
Possibile imporre permessi limitati ai vari utenti, in modo che ognuno
non possa cancellare o modificare file degli altri
Si possono imporre altri vincoli di controllo, come limitare lo spazio
occupabile da ognuno, impedire le modifiche di impostazioni di
sistema, ecc...
Stefano Brocchi
Il sistema operativo
34 / 70
Utente amministratore
Per la gestione dei vari utenti, è presente almeno un utente
amministratore (detto a volte super utente)
L’amministratore potrà creare o eliminare gli altri utenti, e manipolare
tutti i file e le impostazioni di sistema
Ogni programma avviato avrà gli stessi permessi dell’utente che lo ha
avviato
A volte può essere conveniente avviare i programmi in modalità non
amministratore se si sospetta che il programma altrimenti possa
causare problemi
Stefano Brocchi
Il sistema operativo
35 / 70
Utente amministratore
Nei moderni sistemi operativi, spesso per modificare caratteristiche
del sistema occorre avere permessi di amministratore
Anche se si è amministratori, spesso il sistema chiede conferma
all’utente quando un programma tenta di modificare il sistema
Questo avviene tipicamente al momento di un’installazione
Importante per la sicurezza: possibile bloccare programmi che cercano
di modificare il sistema ma che non dovrebbero
Stefano Brocchi
Il sistema operativo
36 / 70
Windows
Windows è probabilmente il sistema operativo più utilizzato nel
mondo
Programma proprietario della Microsoft, a pagamento
Nel 1990 nasce Windows 3.0, contenente un’interfaccia che faceva da
ponte tra l’utente e la vecchia console dei comandi
Invece di scrivere comandi sulla console, l’utente poteva usufruire
dell’interfaccia punta e clicca, e l’interfaccia grafica si occupava di
creare il comando corrispondente
Stefano Brocchi
Il sistema operativo
37 / 70
Windows 95
Grandi evoluzioni arrivano nel 1995 con Windows 95
Nasce il supporto per nomi di file lunghi, prima limitati a 8 caratteri e
3 di estensione
Anche altre funzionalità aggiunte, come la distinzione tra maiuscole e
minuscole e la possibilità della presenza di spazi
Parallelismo gestito in maniera migliore (possibilità di avviare più
programmi contemporaneamente)
Stefano Brocchi
Il sistema operativo
38 / 70
Plug and Play
Con Windows 95 nasce il Plug and Play, la possibilità di attaccare una
periferica al sistema operativo e di farla funzionare automaticamente
Realizzata tramite la presenza di una serie di driver comuni nel sistema
operativo
Richiesti comunque diversi anni prima che il meccanismo funzionasse
in modo stabile
Stefano Brocchi
Il sistema operativo
39 / 70
Windows 98 - 8
Ulteriori evoluzioni vanno da Windows 98 all’ultimo Windows 8,
passando per Windows 2000 e Windows XP
Sviluppi sotto molteplici aspetti, dall’usabilità e l’aspetto grafico ad
una più attenta gestione della sicurezza
Esistono altre versioni per scopi specifici, come Windows Phone per
dispositivi mobili o Windows Server per server web
Molte versioni distribuite anche in modalità ’professional’, con
funzionalità aggiuntive per quanto riguarda le reti, la gestione di più
utenti o la configurazione del sistema
Stefano Brocchi
Il sistema operativo
40 / 70
Applicazioni incluse
Insieme a Windows, distribuite diverse applicazioni in modo che il
computer sia utilizzabile già dall’installazione del sistema operativo
Esempi: software per word processing (Wordpad), calcolatrici,
programmi base per la gestione di immagini (Paint)
Anche se distribuiti con Windows, questi programmi non sono parte
del sistema operativo vero e proprio
Stefano Brocchi
Il sistema operativo
41 / 70
Desktop
All’avvio di Windows, compare il desktop (scrivania)
Su di uno sfondo selezionabile, delle icone che consentono l’avvio di
programmi
Le icone sono dei collegamenti al programma, la loro presenza o
rimozione non modifica l’installazione del programma
Essendo lo spazio su desktop limitato, è consigliabile tenere solo le
icone dei programmi usati più recentemente
Le icone sono attivabili tramite due click ripetuti rapidamente (doppio
click)
Stefano Brocchi
Il sistema operativo
42 / 70
Desktop: icone base
Sul desktop di windows sono sempre presenti delle icone fondamentali
per la manipolazione del sistema
L’icona ’risorse del computer’ consente di navigare il filesystem per
aprire qualsiasi file presente nella macchina
’Risorse del computer’ è la radice del filesystem, e contiene i dischi
rigidi e le periferiche di memoria di massa (CD/DVD/memorie USB)
L’icona ’cestino’ rappresenta una locazione dove vengono posizionati i
file eliminati
Stefano Brocchi
Il sistema operativo
43 / 70
Cestino
Nel momento dell’eliminazione di un file, Windows non elimina il file
ma lo sposta in una cartella speciale detta ’Cestino’
Utile per recuperare file eliminato per errore: ogni file può essere
ripristinato e tornare nella posizione originaria
Quando lo spazio su disco si riempie, il sistema chiederà se si vuole
procedere con lo svuotamento del cestino, creando spazio eliminando
dei file di cui comunque era stata richiesta la cancellazione
Stefano Brocchi
Il sistema operativo
44 / 70
Icone e convenzioni
Per le icone e gli altri elementi cliccabili esistono delle convenzioni
standard
Per avviare un’icone solitamente serve un doppio click, per qualsiasi
altra interazione (pressione di un pulsante o di un menù) ne basterà
uno
Cliccando una volta su un’icona, questa verrà solo selezionata
Con il tasto destro solitamente si apre un menù che specifica delle
azioni alternative per l’elemento cliccato
Su di un file, appaioni per esempio le opzioni ’Rinomina’, ’Cancella’,
’Taglia’, ’Copia’...
Tenendo premuti i tasti Shift e Control, si possono selezionare più
oggetti contemporaneamente
Utile per eliminare o spostare gruppi di file
Stefano Brocchi
Il sistema operativo
45 / 70
Barra delle applicazioni: tasto start
Windows dispone di una barra delle applicazioni tipicamente in fondo
allo schermo
In basso a sinistra, il tasto start, che attiva delle opzioni fondamentali
del funzionamento del sistema
Cliccandoci, appaiono una serie di menù che consentono l’avvio dei
programmi e la gestione del sistema
Le posizioni esatte dipendono dalla versione di windows e dalla
configurazione del sistema
Stefano Brocchi
Il sistema operativo
46 / 70
Menù programmi
Il menù dei programmi contiene una serie di collegamenti che avviano
i vari programmi installati sul sistema
Si può scegliere quali collegamenti tenere nel menù e quali no
manipolando l’apposita cartella del filesystem
Spesso il sistema mostra automaticamente solo i programmi più usati
o aperti più recentemente, per una scelta più rapida
Stefano Brocchi
Il sistema operativo
47 / 70
Configurazione impostazioni
Per manipolare la configurazione di sistema, esiste un pannello di
controllo
Da qua si possono modificare le impostazioni delle varie periferiche
Es. la risoluzione dello schermo, lo sfondo, la sensibilità del mouse, la
configurazione delle connessioni di rete, la creazione di nuovi utenti...
Stefano Brocchi
Il sistema operativo
48 / 70
Ricerca file
L’opzione di ricerca dei file è utile per trovare file di cui non si
conosce la posizione
Opzioni specificabili nella ricerca:
Nome del file o parte di esso
Data di creazione o dell’ultima modifica
Tipo di file
La ricerca si può effettuare o su di un intero disco o in una cartella e
nelle sue sottocartelle
Stefano Brocchi
Il sistema operativo
49 / 70
Opzione esegui
L’opzione esegui permette di inviare comandi al sistema operativo in
stile simile a come avveniva nei sistemi a comandi
Esempio: notepad avvia il blocco note, cmd avvia la console dei
comandi
Utile per avviare un comando che magari non è presente nei vari menù
Stefano Brocchi
Il sistema operativo
50 / 70
Chiusura sessione
Il menù di chiusura della sessione consente di spegnere il computer
dopo la terminazione di tutti i programmi
Si garantisce cosı̀ che tutti i vari dati siano stati salvati prima dello
spegnimento
Disponibili altre opzioni di tipo standby, che consentono uno
spegnimento ’a metà’
Spesso, il computer viene lasciato acceso, ma lo schermo ed i dischi
rigidi vengono spenti per risparmiare energia
Utile per riiniziare ad usare il computer rapidamente, senza riavviare
tutto il sistema
Stefano Brocchi
Il sistema operativo
51 / 70
Barra delle applicazioni
Le icone accanto al pulsante start sono semplicemente dei
collegamenti, tipicamente a programmi usati frequentemente
La parte centrale della barra contiene le finestre attualmente aperte,
che si possono portare in primo piano tramite un click
Stefano Brocchi
Il sistema operativo
52 / 70
Barra delle applicazioni
Le icone sulla destra rappresentano programmi in esecuzione che non
corrispondono a finestre attive
Si trovano qua spesso programmi lanciati all’avvio del computer che
devono restare sempre attivi, come antivirus o programmi per il
controllo del volume
A seconda del programma, cliccando sulla sua icona comparirà un
diverso menù per interagirvi
Nella parte più a destra, l’ora corrente, manipolabile (insieme alla
data di sistema) cliccandoci sopra
Stefano Brocchi
Il sistema operativo
53 / 70
Finestre
In Windows, ogni applicazione avviata dall’utente è tipicamente
associata ad una finestra
In ogni momento, una sola finestra è considerata attiva (questa è
anche detta in primo piano o a fuoco)
Una finestra attiva ha il titolo evidenziato, la zona corrispondente nella
barra delle applicazioni è in evidenza
La finestra attiva è quella che riceve l’input da tastiera
Esempio: premendo un tasto quando ci sono due word processor aperti,
il carattere comparirà in quello relativo alla finestra in primo piano
Per portare in primo piano una delle finestre aperte, si può passare da
una all’altra tramite i tasti Alt+Tab
Con il tasto di Windows + D si visualizza il desktop, minimizzando
tutte le finestre
Stefano Brocchi
Il sistema operativo
54 / 70
Finestre: manipolazione
I tasti in alto a destra consentono la manipolazione della finestra
Il tasto ’X’ chiude la finestra e l’applicazione
Il tasto ’ ’ minimizza la finestra: questa diventa invisibile, si potrà
riselezionare dalla barra delle applicazioni
Il tasto centrale si alterna tra ’Massimizza’ (ingrandisci la finestra su
tutto lo schermo) e riporta a dimensioni normali (inverso di
massimizza)
Le finestre si possono spostare trascinando la barra del titolo, o
ridimensionare trascinando i bordi o l’angolo della finestra
Stefano Brocchi
Il sistema operativo
55 / 70
Clipboard
La clipboard è una memoria temporanea del sistema operativo
utilizzata per molteplici scopi
Non corrisponde ad una componente fisica, ma è un’area della memoria
centrale dedicata a questo scopo
Può contenere dati di vario tipo, come testo, immagini o file
Utilizzata nel copia e incolla: al momento della copia la parte
selezionata viene copiata nella clipboard, e nel momento dell’incolla
viene recuperata da questa zona di memoria
Tasti rapidi per taglia, copia e incolla: Ctrl+X (taglia), Ctrl+C (copia),
Ctrl+V (incolla)
Stefano Brocchi
Il sistema operativo
56 / 70
Clipboard (2)
Essendo una memoria nel sistema operativo, la clipboard può essere
utilizzata per spostare dati tra programmi diversi
Un esempio: copiare una parte di una pagina web selezionata in un
word processor
Il meccanismo di copia e incolla viene spesso utilizzato anche per
copiare e spostare file nel filesystem
Si può inserire la schermata attualmente visualizzata nella clipboard
tramite il tasto ’Stamp’
Potrà essere utilizzata in un programma di manipolazione di immagini
come Paint o Photoshop
Stefano Brocchi
Il sistema operativo
57 / 70
Gestione processi
Per vedere che processi sono in esecuzione e quante risorse occupino,
esiste un monitor di sistema
Programma lanciabile dal pannello di controllo, o dalla schermata ’di
emergenza’ attivabile la combinazione di tasti Ctrl+Alt+Del
Solitamente, il sistema risponde a questa combinazione di tasti anche
se altrimenti bloccato
Tramite il monitor si possono visualizzare i processi in esecuzione e la
loro occupazione di memoria e CPU
Stefano Brocchi
Il sistema operativo
58 / 70
Gestione processi
Molti processi sono sempre in esecuzione perché di supporto al
sistema
Es. per la gestione delle reti, delle stampanti o antivirus
E’ possibile imporre la terminazione dei vari processi
Agire con cautela: si rischia la perdita di dati non salvati o il
malfunzionamento del sistema
Utile per terminare processi che eccedendo nelle risorse utilizzate di
fatto bloccano il sistema
Stefano Brocchi
Il sistema operativo
59 / 70
Avvio automatico dei processi
All’avvio del sistema operativo, molti processi vengono avviati
automaticamente
Alcuni sono processi necessari al sistema, altri derivano da programmi
che una volta installati si avviano ad ogni accensione
Un numero eccessivo di processi rallenta l’avvio del computer ed
occupa una grande quantità di memoria
Esistono programmi per gestire cosa viene lanciato all’avvio
Se Windows XP e Windows 7, è possibile utilizzare il comando
’msconfig’
Stefano Brocchi
Il sistema operativo
60 / 70
Risoluzione problemi: blocco
Supponiamo che il computer si blocchi, cioè non risponda più
all’input dell’utente
Come si può risolvere il problema alla luce delle conoscenze acquisite ?
Il computer sta leggendo da disco fisso ?
Segnalato dall’apposita spia sul case
In questo caso, è più probabile che la macchina stia caricando qualcosa,
e che si sbloccherà con il tempo
Se ci sono molti programmi in memoria, è possibile che la causa sia
l’uso eccessivo di memoria virtuale
Stefano Brocchi
Il sistema operativo
61 / 70
Risoluzione problemi: blocco (2)
Si possono controllare i processi in esecuzione tramite il monitor di
sistema
C’è qualche programma che sta utilizzando buona parte della CPU ?
Se sı̀, potrebbe essere responsabile del blocco
Possibile forzare la terminazione
Attenzione: i dati non salvati del programma andranno persi
Se i soliti programmi continuano a bloccare il computer, se ne potrebbe
cercare una versione più nuova e più stabile, oppure cercare del
software alternativo
Visibile anche l’occupazione di memoria dei programmi, utile nel caso
in cui il problema può essere causato dall’uso eccessivo di memoria
virtuale
Se ad occupare la CPU è un programma sconosciuto, nel caso
peggiore potrebbe trattarsi di un virus o un trojan
Stefano Brocchi
Il sistema operativo
62 / 70
Risoluzione problemi: prestazioni lente
Come si può affrontare invece un calo drastico delle prestazioni della
macchina ?
Se il computer rallenta molto passando da una finestra all’altra, il
problema potrebbe essere causato dallo swapping: può essere
necessario aprire meno applicazioni contemporaneamente
Controllare se le applicazioni lanciate all’avvio siano effettivamente
tutte necessarie
Soluzione hardware: incrementare la memoria centrale della macchina
Se il computer richiede molto tempo all’accensione, potrebbero essere
avviati molti processi all’avvio
Di nuovo, rimuovere i programmi non necessari dall’avvio automatico
Soluzione hardware: utilizzare un disco fisso più veloce, magari con
tecnologia SSD
Anche nel caso di basse prestazioni, può essere utile controllare il
sistema con un antivirus
Stefano Brocchi
Il sistema operativo
63 / 70
Linux
La principale alternativa a sistemi Windows sono i sistemi operativi
Linux
Sistema operativo nato nel 91, scritto da Linux Torvald
Gratis e open source: chiunque può vedere il programma che realizza
il sistema
Adottata (e creata) la filosofia del software libero
Stefano Brocchi
Il sistema operativo
64 / 70
Linux come sistema open source
Dal momento che ognuno può vedere e modificare il codice,
qualunque programmatore può scrivere una componente del sistema
operativo
Il sistema operativo è realizzato da tante piccole parti create da
persone diverse
Inoltre, con questo metodo chiunque può rilevare problemi di
sicurezza o stabilità
Spesso, il sistema è considerato più solido di Windows, e per questo
viene spesso utilizzato nei server web
Stefano Brocchi
Il sistema operativo
65 / 70
Confronto con Windows
Vediamo vantaggi e svantaggi di usare un sistema Linux:
Minore facilità di utilizzo, soprattutto per non addetti ai lavori
In molte versioni di Linux, la differenza di usabilità si sta rapidamente
assottigliando
Una delle versioni più orientate all’usabilità è Ubuntu
Maggiore sicurezza, grazie al codice aperto
Quasi inesistenti virus che funzionano su Linux
Stefano Brocchi
Il sistema operativo
66 / 70
Confronto con Windows (2)
Diverse compatibilità con i programmi: programmi creati per
Windows non funzioneranno su Linux e viceversa
Alcuni programmi sono disponibili in entrambe le versioni; molti
software commerciali sono sviluppati tuttavia principalmente su
Windows, in modo da garantire un bacino d’utenza più grande
I sistemi Linux, grazie alla loro modularità, possono occupare meno
risorse ed essere più veloci
Linux è gratuito
Stefano Brocchi
Il sistema operativo
67 / 70
Altri sistemi operativi
Un altro sistema operativo comune è quello per Macintosh, detto
prima Mac OSX poi OSX
Creato specificatamente per un tipo di computer, il Mac
Esistenti versioni per dispositivi portatili (iPhone, iPad), detti iOS
(IPhone Operative System)
Molte componenti costruite in modo simile a sistemi Linux
Grande differenza: il sistema è di nuovo (in parte) chiuso,
similarmente a Windows
Stefano Brocchi
Il sistema operativo
68 / 70
Domande da esame
Quali sono le principali funzionalità del sistema operativo ?
Come vengono gestiti i processi in un sistema operativo moderno ?
Come interagiscono con il sistema operativo e con l’hardware della
macchina ?
Cosa è la memoria virtuale, e quando viene utilizzata ? Quali sono i
suoi vantaggi e svantaggi ?
Come sono organizzati i dati del computer all’interno del filesystem ?
Come si distinguono i tipi di file ?
Stefano Brocchi
Il sistema operativo
69 / 70
Domande da esame (2)
Quali sono le caratteristiche principali dei sistemi Windows ?
Come si possono gestire e manipolare le finestre aperte ?
Come si possono visualizzare e gestire i processi in esecuzione ? Se il
sistema rallenta o si blocca, come si può cercare di capire la causa e
risolverla ?
Cosa è la clipboard e come si può utilizzare ?
Quali sono le differenze con un sistema Linux ? Quali vantaggi e
svantaggi ci sono nell’utilizzare Windows o Linux ?
Stefano Brocchi
Il sistema operativo
70 / 70