Il sistema operativo
Stefano Bilotta
Corso di Informatica
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
1 / 57
Il sistema operativo
Il sistema operativo può essere interpretato come un insieme di
programmi che fungono da intermediario tra l’hardware e il software
applicativo in calcolatore.
Mediante il bootstrap il sistema operativo è il primo programma
caricato in memoria all’avvio del calcolatore ed è attivo fino allo
spegnimento.
Il suo primo scopo è dunque quello di mettere a disposizione
all’utente un’interfaccia per l’avvio degli altri programmi.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
2 / 57
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,
ottimizzando le risorse condivise,
Controllo degli accessi e controllo sulle limitazioni dei programmi,
Gestione della memoria.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
3 / 57
Il sistema operativo come tramite
Il sistema operativo fa da tramite tra i programmi e le risorse del
computer, quest’ultime comprendono il processore, la memoria, le
periferiche, i file e la rete.
E’ possibile in questo modo ripartire le risorse tra i vari processi,
imponendo dove necessario anche vincoli per la sicurezza.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
4 / 57
Processi e Programmi
L’entità di riferimento nel contesto dei sistemi operativi è il processo.
Per processo si intende l’esecuzione dinamica di un programma,
questa comprende anche l’insieme dei dati necessari all’esecuzione
dello stesso.
Formalmente, un processo differisce da un programma: quest’ultimo
infatti è definito come una sequenza di istruzioni statiche non in
esecuzione.
In particolare, da un programma si origina un processo tipicamente
quando questo viene caricato in memoria e viene inizializzata
l’esecuzione delle sue istruzioni.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
5 / 57
Visione a livelli
Si può pensare al sistema operativo mediante una visione a livelli, in
cui ogni livello svolge particolari 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 Bilotta)
Il sistema operativo
Corso di Informatica
6 / 57
Il nucleo del sistema operativo
Il nucleo del sistema operativo (anche detto kernel ) è quello che si
occupa di interagire direttamente con l’hardware del calcolatore.
Gestisce inoltre vari processi che sono in esecuzione
contemporaneamente.
Decide che programma eseguire e quando deve essere eseguito
(compito detto scheduling ).
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
7 / 57
Gestore della memoria
Il gestore della memoria gestisce la memoria centrale della macchina.
Assegna ai vari processi la memoria necessaria.
Controlla che ogni processo acceda solo agli spazi di memoria che è
autorizzato a manipolare.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
8 / 57
Gestore delle periferiche
Il gestore delle periferiche permette ai vari programmi di accedere alle
periferiche del sistema.
Accesso astratto: i programmi inviano le richieste indipendentemente
dall’hardware specifico del sistema, la gestione specifica avviene
mediante opportuni programmi detti driver, ovvero guide.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
9 / 57
Gestore dei file
Il gestore dei file permette la lettura e la scrittura sul filesystem, una
struttura che contiene tutti i dati presenti su disco fisso.
Controllo e coordinazione sugli accessi ai file:
Protezione di file di sistema critici,
In un sistema con più utenti, è permessa la manipolazione di alcuni file
solo da specifici utenti.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
10 / 57
Interprete dei comandi
L’interprete dei comandi è quella parte del sistema operativo che da la
possibilità all’utente di avviare gli altri programmi.
Gestisce l’interfaccia che compare all’utente una volta che, dopo
l’accensione della macchina, il sistema operativo è stato interamente
caricato.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
11 / 57
Sistemi operativi e usabilità
Proprio per la loro proprietà di fare da ponte tra utente ed i
programmi nel sistema, i sistemi operativi definiscono anche l’usabilità
del calcolatore.
Nei primi calcolatori, i dati in ingresso ed in uscita venivano
comunicati tramite schede perforate
In seguito, con l’uso di tastiere e schermi, è stato possibile creare un
sistema a comandi di testo, tramite il quale l’utente potesse
comunicare più facilmente con la macchina
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
12 / 57
Sistemi operativi a comandi
Uno dei primi sistemi operativi, MS-DOS, utilizzava un’interfaccia a
comandi
Per eseguire un comando, occorreva scrivere il nome del comando o
del programma da avviare eventualmente seguito da dei parametri. Es:
dir
Elenca i file nella cartella corrente
del *.jpg
Elimina tutti i file jpg nella cartella corrente
copy letter.doc copia.doc
Copia il file letter.doc in un altro file chiamato copia.doc
notepad
Avvia il programma chiamato notepad
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
13 / 57
Console e vantaggi dei sistemi a comandi
I sistemi operativi moderni dispongono ancora di una console dei
comandi.
In caso di comandi complessi, per utenti esperti a volte può risultare
la soluzione più veloce. Tramite i sistemi a comandi si possono infatti
automatizzare facilmente una serie di operazioni, tramite la scrittura
di procedure che eseguono in sequenza una serie di comandi.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
14 / 57
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 Bilotta)
Il sistema operativo
Corso di Informatica
15 / 57
Alternanza tra processi
Uno dei compiti principali di un sistema operativo è quello della
gestione dell’alternanza dei processi.
Durante l’esecuzione di più processi, mentre un processo viene
eseguito gli altri vengono mantenuti in una coda detta dei processi
pronti.
Quando il processo in esecuzione termina il suo quanto di tempo,
l’esecuzione torna al sistema operativo.
Il processo viene inserito in fondo alla coda, ed il primo processo in
coda va quindi in esecuzione.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
16 / 57
Alternanza tra processi, esempio
Vediamo un esempio di 5 processi in esecuzione:
Tempo
Coda processi pronti
In esecuzione
Processo 5 Processo 4 Processo 3 Processo 2
Processo 1
Fine quanto di tempo processo 1
Processo 1 Processo 5 Processo 4 Processo 3
Processo 2
Fine quanto di tempo processo 2
Processo 2 Processo 1 Processo 5 Processo 4
(Stefano Bilotta)
Il sistema operativo
Processo 3
Corso di Informatica
17 / 57
Processi in attesa
Quando un processo in esecuzione per proseguire necessita di
attendere dispositivi di I/O, viene messo in attesa ed un altro
processo tra quelli pronti viene eseguito al suo posto in modo da
ottimizzare le risorse utilizzate.
Una volta che la periferica termina un compito o ha dell’input a
disposizione invia un segnale, detto interrupt, tramite bus .
L’esecuzione passa quindi al sistema operativo che fa tornare il
processo in attesa tra i processi pronti o in esecuzione.
Il processo può tornare in esecuzione o tra i processi pronti a seconda
di vari criteri del sistema operativo.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
18 / 57
Interrupt: esempio
Vediamo un esempio di alternanza di processi in caso di interrupt:
Tempo
Coda processi pronti
In esecuzione
Processo 4 Processo 3 Processo 2
Processo 1
In attesa
Richiesta I/O del processo 1
Processo 4 Processo 3
Processo 2
Processo 1
Fine del quanto per il processo 2
Processo 2 Processo 4
Processo 3
Processo 1
Interrupt relativo alla richiesta del processo 1
Processo 2 Processo 4 Processo 3
(Stefano Bilotta)
Il sistema operativo
Processo 1
Corso di Informatica
19 / 57
Gestione dell’hardware
Il sistema operativo è anche incaricato di gestire l’hardware del
computer.
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 Bilotta)
Il sistema operativo
Corso di Informatica
20 / 57
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 dati importanti o
un uso eccessivo delle risorse.
Possibilità di maggiore coordinazione tra le risorse del calcolatore.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
21 / 57
Driver
Per la gestione effettiva delle componenti hardware, sono necessari dei
programmi detti driver che si occupano di tradurre i comandi del
processo in un linguaggio comprensibile alla periferica.
I processi comunicheranno dunque la richiesta di utilizzo di un
dispositivo I/O tramite chiamata al sistema operativo, quest’ultimo
attiverà il driver che tradurrà oppurtamente la richiesta al dispositivo.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
22 / 57
Esempio driver: stampa
Un esempio di uso di driver: un processo per la creazione di testi
richiede la stampa di un documento, il sistema operativo apre una
finestra dove si possono configurare la proprietà di stampa tramite il
driver.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
23 / 57
Gestione della memoria
Un’importante funzione del sistema operativo è quello della gestione
della memoria.
Ad ogni processo viene associata una zona di memoria limitata, in
questo modo si proibisce che il processo manipoli il resto della RAM.
Si impedisce cosı̀ che un difetto in un processo alteri il funzionamento
degli altri.
Ogni processo funziona dunque indipendentemente dal contesto.
Tuttavia in caso di necessità, due processi si possono comunque
’accordare’ per condividere un’area di memoria.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
24 / 57
Allocazione nuova memoria
A volte i programmi necessitano di spazi di memoria piuttosto grandi,
per tale motivo un processo in esecuzione può richiedere altra
memoria al sistema tramite una chiamata di sistema.
Per esempio, questo avviene quando in un word processor si richiede
l’apertura di un nuovo documento.
Il sistema si occuperà di individuare una zona di memoria libera delle
dimensioni richieste e di assegnarla al processo.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
25 / 57
Memoria virtuale
Grazie alla gestione centralizzata della memoria, è possibile sfuttare
alcuni espedienti per disporre di maggiori quantità di memoria.
Nel caso la richiesta di memoria ecceda le dimensioni della memoria
centrale, viene utilizzata parte del disco fisso per integrare la
mancanza di memoria centrale.
Tale memoria aggiuntiva viene detta virtuale, e l’operazione di
scambio tra RAM e disco fisso swapping.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
26 / 57
Pagine
In generale, per ottimizzare l’uso della memoria del sistema, questa
viene suddivisa in blocchi detti pagine, la cui dimensione totale può
eccedere quella fisica della RAM. In questo modo alcune pagine si
troveranno nella memoria RAM ed altre su disco fisso.
Per associare l’indirizzo di una pagina virtuale (es. la pagina numero
1386) alla sua posizione fisica (es. la pagina si trova sul disco fisso
all’indirizzo 7981) è adibita ad un dispositivo hardware detto Memory
Management Unit (MMU)
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
27 / 57
Pagine: esempio
Vediamo un esempio in cui un processo richiede una pagina presente
in memoria centrale:
La pagina virtuale 1386 e’ in
memoria centrale all’indirizzo 5918
Processo
Richiesta pagina
1386
MMU
Pagina richiesta
(Stefano Bilotta)
Il sistema operativo
Richiesta pagina
5918
Memoria
centrale
(RAM)
Memoria di
archivio
(disco fisso)
Corso di Informatica
28 / 57
Pagine: esempio (2)
Vediamo un esempio dove invece un processo richiede una pagina
presente su disco fisso:
La pagina virtuale 1386 e’ in memoria
di archivio all’indirizzo 7981
Processo
Richiesta pagina
1386
MMU
Richiesta pagina
7981
Pagina richiesta
(Stefano Bilotta)
Il sistema operativo
Memoria
centrale
(RAM)
Memoria di
archivio
(disco fisso)
Corso di Informatica
29 / 57
Politiche per le pagine
Come scegliere quali pagine tenere in memoria e quali su disco?
Utilizzate politiche simili a quelle della cache (principio di località
spaziale e temporale)
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
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
30 / 57
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
Per questo, la quantità di memoria virtuale impiegata è solitamente
limitata ad una soglia massima
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
31 / 57
Filesystem
Una delle principali funzionalità di un sistema informatico è la
gestione di grandi quantità di dati. Uno specifico componente del
sistema operativo, chiamato filesystem, è deputato a gestire in modo
efficiente la memoria di massa, con l’obiettivo di presentare all’utente
(nel modo più semplice) l’organizzazione logica dei dati e le
operazioni che è possibile compiere su di essi.
I dati contenuti nella memoria di massa vengono strutturati e gestiti
mediante unità logiche di base dette file.
Un file può rappresentare per esempio un’immagine, un programma, un
documento...
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
32 / 57
File
Un file è formato da un nome e da un’estenzione, separati da un
punto:
Es. ding.wav è un file di nome ding e di estenzione wav.
L’estenzione serve ad identificare il tipo di file:
Es. I file .jpg sono immagini, i .mp3 sono file audio, i .pdf documenti .
Nel filesystem è memorizzata la posizione su disco di ogni file.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
33 / 57
File: attributi
Un file può avere impostati diversi attributi :
Un file può essere in sola lettura: non può essere modificato o rimosso
dell’utente.
Un file può essere di sistema: essendo fondamentale per il
funzionamento del sistema, in questo caso il file non può essere
modificato o cancellato.
Un file può essere nascosto, cioè non viene visualizzato con gli altri
quando un utente esamina il filesystem.
Limitazione aggirabile tramite le opportune opzioni nel programma di
esplorazione delle risorse.
Nel caso di un sistema con più utenti, è possibile che un file di un
utente sia di sola lettura per gli altri utenti ma non per il suo
proprietario.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
34 / 57
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.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
35 / 57
Cartelle
I file sono raggruppati in gruppi logici detti cartelle o directory.
Metafora che rispecchia un archivio cartaceo.
Una cartella può a sua volta contenere altre cartelle; si crea cosı̀ una
struttura ad albero
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
36 / 57
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.
Es. tipicamente in un computer c: è il disco fisso, d: è il lettore
cd/dvd, e all’inserimento di una chiave USB compare il disco e: (a: e
b: erano solitamente riservate per i floppy disk).
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
37 / 57
Percorsi
Ciascun file viene individuato univocamente dal suo percorso
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.
Ogni file può essere anche identificato, oltre che dal suo percorso
completo, anche dal percorso relativo alla directory corrente, spesso
più breve del precedente.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
38 / 57
Collegamenti
Per poter richiamare un file da una cartella diversa, si possono
utilizzare i collegamenti.
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 semplicemente dei collegamenti
per avviare i vari programmi senza andarli a cercare nelle loro cartelle
di installazione.
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
39 / 57
Gestione filesystem tramite GUI
Vediamo come si può gestire il filesystem su Windows tramite
l’interfaccia grafica GUI:
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
40 / 57
Operazioni su filesystem
La struttura ad albero del filesystem non contiene anche i file stessi,
ma solo un puntatore alla loro posizione su disco.
Filesystem
Disco fisso
c:
documenti vecchi
contenuto di
lettera.doc
lettera.doc
appunti.doc
documenti nuovi
(Stefano Bilotta)
contenuto di
appunti.doc
Il sistema operativo
Corso di Informatica
41 / 57
Operazioni su filesystem
Nel caso della copia di file, questo viene copiato in un’altra posizione
su disco ed un riferimento a questa posizione viene salvato nel
filesystem.
Filesystem
Disco fisso
c:
documenti vecchi
contenuto di
lettera.doc
lettera.doc
appunti.doc
contenuto di
appunti.doc
documenti nuovi
appunti.doc
contenuto di
appunti.doc
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
42 / 57
Operazioni su filesystem: spostamento
Quando invece un file viene spostato all’interno dello stesso disco, la
sua posizione fisica non cambia, rendendo questa un’operazione molto
veloce.
Filesystem
Disco fisso
c:
documenti vecchi
contenuto di
lettera.doc
lettera.doc
appunti.doc
contenuto di
appunti.doc
documenti nuovi
appunti.doc
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
43 / 57
Operazioni su filesystem: rimozione
Quando un file viene cancellato, fisicamente resta su disco ma viene
rimosso il riferimento ad esso nel filesystem.
La zona di memoria occupata risulterà libera, e potrà essere riscritta
quando viene richiesto spazio per altri file.
Filesystem
Disco fisso
c:
documenti vecchi
contenuto di
lettera.doc
lettera.doc
appunti.doc
documenti nuovi
(Stefano Bilotta)
contenuto di ero
ib
ol
appunti.doc
azi
Sp
Il sistema operativo
Corso di Informatica
44 / 57
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 stia eseguendo
lo swapping: appena il sistema si riattiva, provare a chiudere alcune
applicazioni
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
45 / 57
Risoluzione problemi: blocco (2)
Si possono controllare i processi in esecuzione, tramite Ctrl+Alt+Del
e usando il monitoraggio di sistema
C’è qualche programma che sta utilizzando buona parte della CPU?
Se si, 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
Se ad occupare la CPU è un programma sconosciuto, nel caso
peggiore potrebbe trattarsi di un virus (programmi di danneggiamento
dati) o un trojan (programmi che consentono l’accesso non permesso
al vostro calcolatore)
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
46 / 57
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
Se il computer richiede molto tempo all’accensione, potrebbero essere
avviati molti processi all’avvio (msconfig: per la gestione di processi
all’avvio)
Rimuovere i programmi non necessari dall’avvio automatico
Anche nel caso di basse prestazioni, può essere utile controllare il
sistema con un antivirus (scansione dei dati)
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
47 / 57
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 Bilotta)
Il sistema operativo
Corso di Informatica
48 / 57
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 Bilotta)
Il sistema operativo
Corso di Informatica
49 / 57
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 Bilotta)
Il sistema operativo
Corso di Informatica
50 / 57
Windows 98 - 8
Ultieriori evoluzioni del sistema operativo vanno da Windows 98
all’ultimo Windows 8, passando per Windows 2000, Windows XP,
Windows Vista, Windows 7
Esistono altre versioni per scopi specifici, come Windows Phone per
dispositivi mobili
Molte versioni distribuite anche in modalità ’professional’, con
funzionalità aggiuntive per quanto riguarda le reti e la gestione della
sicurezza
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
51 / 57
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 propriamente detto, ma sono a tutti gli effetti
applicativi
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
52 / 57
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 Bilotta)
Il sistema operativo
Corso di Informatica
53 / 57
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à
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
54 / 57
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ù usabili è Ubuntu
Maggiore sicurezza, grazie al codice aperto
Quasi inesistenti virus che funzionano su Linux
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
55 / 57
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à, solitamente sono più veloci
Linux è gratuito
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
56 / 57
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
(Stefano Bilotta)
Il sistema operativo
Corso di Informatica
57 / 57