vuoi
o PayPal
tutte le volte che vuoi
DVD+RW)
• Blu-ray Disc (BD): - capacità fino a 54 GB, BD-ROM (sola lettura), BD-R (scrivibili una sola volta),
BD-RE (riscrivibili)
La compressione è operata dal Sistema (“trasparente” per l’utente, in cui si comprimono file
specifici o anche l’intero disco [NB: il libro non è preciso]; dai programmi di utilità (l’utente crea
archivi, si comprimono file specifici o gruppi di file, si hanno formati compressi senza perdere
informazioni come zip, rar, gz.
Aumento della memoria - Espansioni della memoria principale con Juke-box (ospita molti CD e
seleziona automaticamente il CD necessario), Libreria di nastri (insieme di nastri selezionabili da
un robot).
Backup dei dati/file, è la copia di tutti o di parte dei dati/file su altri supporti (CD, DVD, hard disk
esterni, siti web), è un'operazione costosa in termini di tempo e di spazio.
Dispositivi di input/output
Le capacità di un computer possono essere estese inserendo apposite schede di espansione su
connettori presenti sulla scheda madre chiamati slot di espansione (Es. di schede di espansione
come schede grafiche, audio, di rete).
I dispositivi di I/O sono le periferiche dell’elaboratore e sono collegate all’elaboratore attraverso le
porte, cioè delle prese, all’interno del computer e sono presenti sulla scheda madre o sulle schede
di espansione.
In un PC troviamo questi tipi di porte: - porta VGA o HDMI (per il monitor), - porte USB (per varie
periferiche, fino a 127 in serie), - Ethernet (RJ45).
I dispositivi di input (Tastiera, dispositivi di puntamento come il mouse, microfono, scanner, fax)
I dispositivi di output (Stampanti, videoterminali, videoproiettori, casse acustiche, plotter)
Elementi di output (Pixel: picture element; Dot: elemento di immagine su una pagina stampata;
Bit mapping: ogni pixel ha un indirizzo, la CPU può modificare ogni pixel; risoluzione (stampa):
indica la qualità di una immagine, si misura in punti per pollice (dpi, dots per inch) più è elevata,
migliore è l’immagine; dot pitch dei monitor: distanza tra i fosfori o le celle LCD (RGB) sullo
schermo; Font: Font bitmap/caratteri rappresentati come matrice di punti, Font scalabili/caratteri
rappresentati come serie di formule).
Il Bus é la linea di comunicazione per la trasmissione di informazioni tra i vari componenti del
sistema. Fisicamente, è un insieme di collegamenti in rame e tutti i componenti del sistema sono
collegati al bus. Il bus locale è un’evoluzione del bus di sistema, per il collegamento veloce tra
CPU, memoria e periferiche veloci (es. riprese video, schede video che mandano il segnale al
monitor). Essendo un metodo molto flessibile è facile aggiungere componenti.
Software e Sistema Operativo
L’hardware da solo è soltanto un insieme di ferro, plastica e silicio e non è sufficiente per il
funzionamento dell’elaboratore, per questo motivo occorre utilizzare il software, un insieme di
programmi che permettono di trasformare un insieme di circuiti elettronici in un oggetto in grado di
svolgere funzioni di varia natura. I computer sono programmabili, infatti possono svolgere compiti
diversi in base a istruzioni contenute nei programmi.
L’utilizzo diretto dell’hardware è complicato, infatti l’utente dovrebbe sapere programmare e
conoscere l’hardware e il relativo linguaggio macchina. Ogni programma dovrebbe essere scritto
come sequenza di bit e le modifiche hardware richiederebbero la riscrittura (parziale) del
programma. Occorre, quindi, fornire all’utente un meccanismo per astrarre dall’organizzazione
fisica, per usare nello stesso modo (o in modo simile) macchine (hardware) diverse, avere un
semplice linguaggio di interazione e avere un insieme di programmi applicativi per svolgere
diversi compiti, quali elaborare testi, navigare in Internet, ecc.
I computer moderni raggiungono questi obiettivi mediante la definizione di macchine virtuali
realizzate al di sopra della macchina hardware reale. Essa consiste in un livello software creato
sull’hardware, fornisce le funzionalità desiderate ed è facile da utilizzare, è virtuale in quanto non
esiste fisicamente, ma viene realizzata mediante il software (sistema operativo o software di base).
L'utente interagisce con la macchina virtuale con un linguaggio ad alto livello (interfaccia grafica/
testuale) e la macchina virtuale traduce ogni comando ad alto livello, nell'opportuna serie di
comandi per l’hardware: astrazione.
Il Sistema Operativo è un insieme di programmi che interagiscono e cooperano tra di loro per
gestire efficientemente il computer e le sue periferiche e per creare un ambiente virtuale per
facilitare l'interazione uomo-macchina. Il S.O. ha una struttura a cipolla, ogni livello “astrae” il
livello inferiore, nascondendone la complessità e fornisce servizi al livello superiore. In questo
modo si può usare il computer senza conoscere i dettagli dei dispositivi elettronici. Ogni dispositivo
di I/O collegato al computer è gestito da un modulo del S.O. chiamato driver. Ogni volta che si
aggiunge un nuovo dispositivo, si deve installare il driver corrispondente all’interno del S.O.
Le funzioni svolte dal sistema operativo sono diverse:
• Accensione e configurazione della macchina - bootstrap = avvio all'elaboratore, all’accensione
della macchina, un programma (il BIOS) in ROM cerca sulla memoria secondaria il S.O. e ne
carica una parte in RAM. Ordine tipico di ricerca è Floppy disk, CD/DVD, Hard Disk e questo
ordine è utile per installare un S.O. o per live cd (un live cd contiene un s.o. che non necessita di
installazione su hard disk). In seguito, viene caricata la prima parte del S.O. che comprende: i
programmi per gestire processi e CPU, quelli per gestire la memoria, per gestire periferiche e I/O,
per gestire il File System e il programma che crea l'interfaccia (grafica o testuale) utente.
- Parte dei programmi del s.o. devono essere mantenuti sempre in RAM per essere sempre
pronti per l’esecuzione! --> una porzione della RAM è riservata a programmi e dati del S.O.
- All’avvio, vengono identificati tutti i dispositivi di memoria secondaria e tutte le periferiche e
vengono avviati i relativi programmi di gestione (driver).
- Alcuni sistemi verificano anche lo stato delle risorse hardware, per esempio lo stato dei dischi
(presenza di errori nel file system?)
• Gestione del processore - I moderni S.O. sono multitasking, cioè è possibile eseguire più
programmi allo stesso tempo (ad es. scaricare un file mentre si scrive un documento). Spesso gli
elaboratori hanno una unica CPU, quindi il S.O. alterna i programmi assegnando la CPU a turno".
In ogni istante un solo programma è eseguito dalla CPU e anche se l’alternanza è frequente, si ha
l’impressione che i programmi vengano eseguiti contemporaneamente.
I processi sono i programmi in esecuzione, un processo può trovarsi in uno dei tre stati:
– in esecuzione, cioè è in esecuzione nella CPU
– in attesa, cioè attende che un’operazione di I/O termini
– pronto, cioè può andare in esecuzione, ma la CPU è occupata ad eseguire un altro
processo
Il S.O. ha il compito di scegliere quale tra i processi pronti mandare in esecuzione in modo da
usare l’elaboratore in modo efficiente (no sprechi) ed efficace (per es. con tempi di attesa limitati).
• Gestione della memoria (principale e virtuale) - La tecnica di gestione della memoria utilizzata da
tutti i sistemi operativi moderni permette di “fare credere” ai singoli programmi di avere a
disposizione una quantità di memoria più grande di quella effettivamente installata e contigua. Il
S.O. traduce automaticamente gli indirizzi virtuali (usati dalle applicazioni) in indirizzi fisici.
Se si utilizza frequentemente una quantità di memoria virtuale molto più grande della memoria
fisica, avviene il Thrashing (con la ‘h’, to thrash = dimenarsi) cioè il S.O. impiega più tempo a
trasferire le pagine da e su disco che a effettuare lavoro utile, l’hard disk viene usato intensamente
e il computer è inutilizzabile, per risolvere il problema bisogna aumentare la quantità di RAM
oppure usare meno programmi contemporaneamente. Dato che la RAM è molto più veloce
dell’hard disk, aumentare la quantità di RAM può migliorare le prestazioni del computer, perché il
S.O. dovrà fare ricorso meno frequentemente all’hard disk per implementare la memoria virtuale.
• Linguaggio ad alto livello per l’interazione con l’utente - Due tipi di interazione utente/S.O. :
– interazione testuale (MS-DOS, Mac OS X, Linux) basata su comandi scritti tramite
tastiera, l’interfaccia è più rapida da usare per utenti esperti, richiede poca memoria
principale, Script (programmi costituiti da comandi), molto usata nei sistemi Unix-like.
– interazione grafica (Mac OS X, Linux , Windows) basata su interfacce grafiche che
presentano funzionalità comuni, ai programmi sono associate finestre, interazione “point
and click”, tecnologia WYSIWYG (What You See Is What You Get), comandi uniformi: es.
Cancellare “oggetto” - taglia, Copiare “oggetto” - copia, l’“oggetto” può essere testo, file,
immagini, …
• Gestione e accesso alle informazioni su memoria secondaria (File system) - Il File System è
parte del S.O. che si occupa di gestire e strutturare le informazioni memorizzate su supporti di
memoria secondaria (ad es. su hard disk, CD, DVD…). Le operazioni di base supportate dal File
System sui dati memorizzati sono lettura/scrittura, cancellazione, modifica, copia. I dati della
memoria secondaria vengono strutturati e gestiti mediante l’organizzazione in file e i file sono
utilizzati per la memorizzazione di programmi (del sistema, dell’utente) e di dati. Il file system usa
l’indice, memorizzato sul dispositivo di memoria secondaria, per reperire i cluster che
compongono i file e trovare lo spazio libero per nuovi file. Il file system deve fornire una visione
astratta dei file, consentendo all’utente di dare un nome ai file (filename), manipolare i file -
operazioni - (creare, cancellare, copiare, rinominare, modificare), accedere alle informazioni
indipendentemente dal supporto fisico (vedere file su hard disk e su CD allo stesso modo),
strutturare i file (file con caratteristiche comuni possono essere ‘raggruppati’), proteggere (da
lettura, scrittura, cancellazione) i file di utenti diversi e i moderni S.O. (es. Windows) forniscono
queste funzionalità. Tutti i sistemi operativi forniscono i seguenti comandi per operare sui file
(creazione, cancellazione, copia, visualizza