Evoluzione dei Sistemi Operativi
Università di Bologna - anno accademico 2012/2013
Orgest Shehaj
30 maggio 2013
2
Indice
1
2
3
4
5
6
7
Introduzione
1.1 Definizione . . . . . . . . . . . . . . . . . . . . . . .
1.2 La struttura di un sistema operativo . . . . . . . . . .
1.3 La preistoria dell'informatica . . . . . . . . . . . . .
La prima generazione (1945-1955):
2.1 Valvole e schede perforate . . . . . . . . . . . .
2.2 Schede perforate . . . . . . . . . . . . . . . . . .
2.2.1 Dettagli funzionali . . . . . . . . . . . . .
2.3 Nascita dei transistor . . . . . . . . . . . . . .
2.4 Nascita di Fortran(Formula Translation/Translator)
2.5 Mark I . . . . . . . . . . . . . . . . . . . . . . .
2.5.1 Mark II . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
La seconda generazione(1955-1965):
3.1 I Sistemi batch . . . . . . . . . . . . . . . . . . . . .
3.2 Fortran Monitor System . . . . . . . . . . . . . . . . .
3.3 IBSYS . . . . . . . . . . . . . . . . . . . . . . . . . .
La terza generazione (1965-1980)
4.1
4.2
4.3
4.4
4.5
4.6
4.7
Anni 60 . . . . . .
IBM System/360 . . .
Multiprogrammazione
Il Timesharing . . .
CTSS . . . . . . . .
MULTICS . . . . . .
UNIX® . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
La quarta generazione (1980-2000)
5.1 Personal Computer . . . . . . . . . . . . . . . . . . . .
Quinta generazione (2000-..)
6.1 Web e Mobile . . . . . . . . . . . . . . . . . . . . . . .
Windows OS
7.1 Nascita della Microsoft . . .
7.1.1 MS-DOS . . . . . . . .
7.2 Microsoft Windows . . . . . .
7.2.1 Il successo di Windows
7.2.2 Windows Vista . . . . .
7.2.3 Windows 7 . . . . . . .
7.2.4 Windows 8 . . . . . . .
3
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
5
5
5
7
7
7
8
8
8
8
10
11
11
14
14
15
15
15
16
16
17
17
18
20
20
22
22
23
23
23
23
24
25
25
25
Indice
8
9
Apple OS
8.1 Nascita della Apple .
8.1.1 Apple Macintosh
8.2 L'inizio del declino .
8.3 MAC OS X . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
L'inizio del progetto . . . .
Software GNU e il sistema GNU
Free come libero . . . . . .
Open Source . . . . . . . . .
Copyleft e la GNU GPL . . . .
Modalità di guadagno . . . . .
LAMP . . . . . . . . . . . . .
Debian . . . . . . . . . . . .
Red Hat . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
GNU/Linux
9.1
9.2
9.3
9.4
9.5
9.6
9.7
9.8
9.9
10 Mobile OS
10.1 Touch screen . . . . . . . . . . . .
10.1.1 Touchscreen capacitivo . . .
10.1.2 Touchscreen resistivo . . . .
10.2 Android . . . . . . . . . . . . . .
10.2.1 2007: la nascita di Android
10.2.2 Il primo smartphone Android .
10.3 Windows Phone . . . . . . . . . . .
10.3.1 Windows Phone 8 . . . . . . .
10.4 iPhone iOS . . . . . . . . . . . . .
10.5 Ubuntu Touch . . . . . . . . . . . .
10.6 Firefox OS . . . . . . . . . . . . .
10.7 Openmoko . . . . . . . . . . . . . .
4
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
27
27
29
31
31
33
34
34
36
37
39
40
40
40
41
42
43
43
43
44
45
45
46
46
47
47
47
48
1 Introduzione
Nella società attuale, l'informatica rappresenta una tra le sde più importanti ed e l'ambito in
cui l'innovazione è uno dei punti strategici attraverso cui si gioca l'evoluzione.
1.1 Denizione
Un sistema operativo è un software che fornisce all'utente una serie di comandi e servizi per
gestire un elaboratore elettronico, in altre parole il sistema operativo altro non e che un insieme
di programmi software che permettono all'utente di interagire con l'hardware. I sistemi operativi si occupano anche di rappresentare le informazioni elaborate dal computer in un modo
comprensibile all'uomo.
1.2 La struttura di un sistema operativo
Il sistema operativo è composto da diverse parti, avente ognuna un determinato compito,
le parti principali di un sistema operativo sono:
Kernel
: è il nucleo del sistema operativo. Il kernel fornisce tutti i servizi alle applicazioni
che permettono l'utilizzo delle risorse hardware. La parte kernel viene eseguito sul calcolatore
con priorità massima e con possibilità di accesso alle periferiche hardware.
File system
: consente le operazioni di lettura e scrittura sulle memorie di massa, inoltre
fornisce la possibilità di creare, cancellare, leggere, modicare ed eseguire un le, denire regole
di accesso e strutturare i le in base alle proprie necessità.
Scheduler
: gestisce i processi nei sistemi multitasking. Lo scheduler si occupa di assegnare ai
processi il tempo di utilizzo della CPU (Central Processing Unit). Poichè la CPU può eseguire
un'unica operazione alla volta, si è pensato di rendere l'idea del parallelismo tra processi,
utilizzando il metodo dell'assegnazione di un determinato tempo, che permetta a tutti i processi
di usufruire della risorsa sica, in modo da creare l'illusione di una concorrenza dei processi,
quando in realtà è lo scheduler che ponendo priorità e code di accesso, rende possibile tale
illusione.
Memoria virtuale
:
e in grado di fornire una astrazione della memoria sica rendendo
possibile l'allocazione di più memoria virtuale rispetto a quella che sicamente si possiede.
Utilizzando algoritmi di rimpiazzo, la MMU (memory management unit) rimpiazza le pagine
reputate inutili, con altre pagine di memoria che dovranno essere utilizzate. Inoltre la MMU si
occupa della traduzione da indirizzi logici a indirizzi sici, ne controlla l'eettiva reperibilità e
gestisce i page fault.
1.3 La preistoria dell'informatica
I sistemi operativi si sono evoluti nel corso degli anni e, storicamente, i sistemi operativi sono
stati strettamente legati all'architettura dei calcolatori.
Nel 1840 si svolse a Torino il secondo Congresso degli Scienziati italiani, organizzato dal re
Carlo Alberto di Savoia. Al congresso partecipo Charles Babbage, il quale presento il progetto
5
1 Introduzione
della
macchina analitica
.
Questo progetto appassiono molti scienziati italiani, fra i quali
anche il sico Ottaviano Fabrizio Mossotti e Luigi Menabrea.
Quindi possiamo dire che il primo autentico calcolatore digitale fu progettato dal matematico
inglese Charles Babbage (1792-1871).
Sebbene Babbage abbia speso grand'parte della propria vita e della propria fortuna cercando
di costruire questa macchina analitica, egli non riusci mai a vederla funzionare in maniera
corretta, dal momento che fu progettata come dispositivo meccanico e che la tecnologia dell'epoca non era in grado di produrre le ruote, gli ingranaggi e le altre parti meccaniche necessarie
con la precisione richiesta. Inoltre la macchina analitica non aveva un sistema operativo.
Modello di una parte della macchina analitica di Babbage
in mostra al museo della scienza di Londra.
Menabrea si dedico a una descrizione del progetto di Babbage che pubblico in francese nel 1842
preso la Bibliothèque Universelle de Genève.
Il lavoro di Menabrea (Notions sur la machine analytique de Charles Babbage) può essere
considerato il primo lavoro scientico nella disciplina dell'informatica.
Il lavoro di Menabrea fu ripreso da Ada Lovelace qualche mese dopo per essere ampliato e
tradotto in inglese.
Ada lavoro insieme a Babbage, e lo aiuto a documentare il suo progetto, tradusse i documenti
in diverse lingue e sviluppo programmi per la macchina.
Il linguaggi di programmazione Ada prende da lei il suo nome.
6
2 La prima generazione (1945-1955):
....ragazzi dovreste fare marcia indietro e cambiare completamente i vostri programmi; lasciate perdere
questa ... sciocchezza di Eckert e Mauchly
- Howard Aiken
Questa e l'opinione che Howard Aiken, matematico di Harward e costruttore del calcolatore
Mark I, espresse nel 1948. Aiken fece questa dichiarazione e decise di non appoggiare la proposta
di J.Presper Eckert e John Mauchly di fabbricare e vendere computer elettronici.
Secondo
Aiken, non si sarebbe mai sviluppato un mercato per i computer, negli Stati Uniti c'era spazio
forse per cinque o sei macchine del genere, non di più.
Eckert e Mauchly fondarono la Eckert-Mauchly Computer Corporation, la concorrente di
IBM.
Uno dei loro prodotti fu l'UNIVAC, un capolavoro tecnico, il quale pero, venne eclissato nel
mercato dai computer prodotti dalla IBM.
2.1 Valvole e schede perforate
Dopo gli inutili sforzi di Babbage, furono fatti pochi progressi nella realizzazione di calcolatori
digitali no alla seconda guerra mondiale.
Circa verso la metà degli anni 40, Howard Aiken ad Harvard, John von Neumann all'Institute
for Advanced Study di Princeton, J.Presper Eckert e William Maunchley all'Univeristà della
Pennsylvania e Konrad Zuse in Germania, riuscirono a costruire macchine da calcolo. Le prime
usavano relè meccanici ma erano molto lente, con tempi di ciclo misurabili in secondi.
I relè furono più tardi sostituiti da valvole termoioniche.
Queste macchine avevano delle dimensioni molto grandi, a tal punto da riempire intere stanze,
poichè erano costituite da centinaia di migliaia di valvole, ma erano anche molto più lenti degli
attuali personal computer.
All'inizio la programmazione veniva eettuata totalmente in linguaggio macchina, predisponendo una serie di spinotti su schede particolari che servivano per controllare le funzioni
elementari della macchina.
I linguaggi di programmazione erano sconosciuti e di sistemi operativi non si sentiva nemmeno
parlare.
2.2 Schede perforate
Quando sono apparsi i primi computer basati sui transistor, ci si e trovato di fronte allo stesso problema che ebbe Gutenberg con la stampa a caratteri mobili:
Dove immagazzinare le
informazioni?
Inizialmente le tecniche per conservare dati nell'era informatica usarono lo stesso supporto
sico usato da Gutenberg per la stampa, ovvero la carta.
La registrazione di dati su supporti ssi avveniva mediante schede o nastri perforati dove la
posizione dei fori corrispondeva a un ben preciso carattere e la lettura veniva fatto in modo
ottico. Una scheda perforata contiene una sequenza di solo 80 caratteri.
7
2 La prima generazione (1945-1955):
2.2.1 Dettagli funzionali
Il metodo è abbastanza semplice: un pezzo di cartoncino leggero viene suddiviso in molteplici
porzioni che possono essere attraversate da un foro o lasciate intatte. I pezzetti di carta rettangolare che vengono asportati durante la perforazione vengono chiamati
chad.
Ogni singola
posizione sulla scheda rappresenta una singola cifra binaria (bit). Ogni colonna sulla scheda
contiene più posizioni forabili (bit multipli).
Scheda Perforata
2.3 Nascita dei transistor
Nel 1948 tre ricercatori dei Bell Telephone Laboratories, negli Stati Uniti, partendo da una
osservazione casuale mentre svolgevano esperimenti sui semiconduttori, inventarono il transistor
ottenendo il Nobel per la Fisica nel 1956. Il primo transistor funzionante fu elaborato da Walter
Brattain e John Bardeen nel mese di dicembre del 1947, nei Bell Labs.
l'anno dopo William Shockley ne spiegò il funzionamento.
2.4 Nascita di Fortran(Formula Translation/Translator)
Nel 1954 un gruppo di lavoro guidato da John Backus inizio a sviluppare il primo linguaggio
di programmazione per il calcolatore
IBM704,
questo linguaggio di programmazione veniva
utilizzato soprattutto per calcoli scientici e numerici, questa situazione incoraggio molti progettisti a creare compilatori che generavano codice molto veloce. Nel 1956 dallo stesso Backus
venne scritta la prima guida all'utilizzo di fortran. Nei giorni nostri il FORTRAN e tuttora
usato e ne esistono varie versioni.
2.5 Mark I
Fu proprio nel dopo guerra che si registro un balzo in avanti nella progettazione e nella
costruzione dei calcolatori.
Furono gli anni in cui dominarono i dinosauri (per via del loro
peso e delle loro dimensioni), come nel caso del calcolatore elettromeccanico I
Harvard Mark
, realizzato nei laboratori IBM da Howard Aiken con la collaborazione di alcuni esperti e
ricercatori dell'università di Harvard.
Mark I pesava cinque tonnellate , aveva 800 chilometri di cavi e più di tre mila relè, per un
totale di 76 mila componenti, era lungo 16 metri e mezzo e alto due e mezzo.
8
2 La prima generazione (1945-1955):
L'Harvard Mark I fu il primo calcolatore a funzionare automaticamente con programmi registrati, gli antenati degli odierni softwares.
Questa macchina era in grado di sommare due
numeri di ventitrè cifre in tre decimi di secondo e moltiplicarli in soli sei secondi.
Mark I venne impiegato dalla Marina militare statunitense per studi di balistica e progettazione di navi e della Commissione per l'energia atomica per ricerche sulla disintegrazione
dell'atomo.
9
2 La prima generazione (1945-1955):
2.5.1 Mark II
Fu proprio sul Mark II che venne coniato il termine di bug, in seguito usato dagli specialisti
e appassionati di informatica per denire un errore di programmazione in un software.
Il fatto prende spunto da un divertente episodio: dopo un improvviso blocco della macchina,
il 9 settembre 1947, la matematica Grace Murray Hopper impiegò diverse ore per comprendere
l'origine del guasto.
Alla ne scopri che una falena si era annidata in un relè, bloccando il funzionamento del
computer.
Foto del primo bug trovato in un computer, 9 settembre 1947
10
3 La seconda generazione(1955-1965):
3.1 I Sistemi batch
Durante la metà degli anni 50 vengono introdotti i transistor e i sistemi batch.
L'introduzione dei transistor cambio la situazione dei calcolatori.
I calcolatori divennero
abbastanza adabili da poter essere costruiti e venduti dando all'acquirente la certezza che
avrebbero funzionato a lungo da poter svolgere dei lavori utili.
Questi calcolatori, ora chiamati
mainframe, erano tenuti chiusi in speciali sale macchine con
aria condizionata, ed al loro funzionamento erano assegnati gruppi di operatori specializzati.
Il loro costo, di molti milioni di dollari, poteva essere arontato solo da grosse compagnie,
dalle agenzie governative o dalle università.
Per far girare un
job(cioè
un programma o un insieme di programmi), un programmatore
doveva prima scrivere il programma su carta(in Fortran o in Assembler), poi doveva copiarlo
su schede perforate, e inne doveva portare il pacchetto delle schede nella stanza dove venivano
raccolti i programmi e darlo ad uno degli operatori. Dopo tutto ciò doveva soltanto aspettare
l'uscita dei risultati.
Appena il calcolatore aveva terminato il job in esecuzione, un operatore andava alla stampante, e prelevava quanto prodotto in uscita dal job.
Non essendo stata ancora introdotta la tecnologia di accesso diretto alla memoria (DMA),
tutte le operazioni di input/output erano a carico della CPU, con conseguente rallentamento
dell'esecuzione del calcolatore.
Dato l'elevato costo delle macchine, e le poche macchina a disposizione, i programmatori
cercavano di ridurre il tempo sprecato, e la soluzione che vene adottata fu quella dei
batch
sistemi
(sistemi di elaborazione a loti): dove l'I/O viene gestito da un calcolatore economico
come l'IBM 1401 e l'elaborazione veniva adata a un calcolatore centrale come l'IBM 7094.
L'idea era quella di raccogliere dei job e di farli trasferire su un nastro magnetico da un
piccolo calcolatore, come ad esempio un IBM 1401, molto adatto a leggere schede perforate,
scrivere nastri magnetici o stampare dati, ma non adatto ad eseguire calcoli.
11
3 La seconda generazione(1955-1965):
Nel 1959,
l'IBM annuncio il 1401, il quale veniva attato per $2,500 al mese per uso commerciale. Il 1401 e stato il primo prodotto di massa del IBM, la macchina era alta
1,4 metri e lunga 1, con una memoria da 4.096 caratteri [da 6-bit(più un bit di
parità)] .
Per eseguire i calcoli venivano usati altri calcolatori, molto più costosi, come gli IBM 7094.
12
3 La seconda generazione(1955-1965):
La serie 709x del IBM fu annunciata intorno al 1958, il 7094 altro non era che
il primo calcolatore commerciale con i transistor logici.
Una volta che venivano raccolti tutti i batch dei lavori, i nastri venivano riavvolti e portati nella
sala macchine, dove venivano montati sul lettore dei nastri.
Batch Monitor
Il Sistema Operativo di questi calcolatori (
) svolgeva pochi servizi quali la
gestione dell'input/output e l'interpretazione ed esecuzione dei comandi contenuti nelle schede
di controllo.
Tali comandi costituiscono il JCL (Job Control Language)
L'operatore caricava un programma speciale(l'antenato dei attuali sistemi operativi) che
leggeva il primo job e lo eseguiva, e i dati in uscita venivano memorizzati su un secondo nastro
magnetico.
Dopo la ne di un job, il sistema operativo leggeva in modo automatico il prossimo job e lo
mandava in esecuzione. Quando l'intero lotto di lavoro era stato eseguito l'operatore portava
i nastri magnetici in uscita al 1401, per stampare i dati fuori linea (o line), cioè senza essere
direttamente collegato al calcolatore principale.
Uno dei primi sistemi di elaborazione batch. Il programmatore porta le schede perforate al 1401, il 1401 legge un lotto di programmi sul nastro, il programmatore porta
il nastro al 7094 il quale esegue tutti i calcoli, dopo di che il nastro in uscita viene
portato al 1401 che stampa l'uscita.
I job cominciavano con una scheda di tipo $JOB, che specicava il tempo di esecuzione massimo
previsto(in minuti), il numero di conto su cui doveva venire addebitato il conto dell'elaborazione,
ed il nome del programmatore. Poi c'era una scheda di tipo $FORTRAN, che richiedeva al sistema operativo di caricare il compilatore FORTRAN dal nastro del sistema, dopo questa scheda
veniva il programma da compilare, quindi una scheda di tipo $LOAD che comunicava al sistema
operativo che il programma oggetto appena compilato doveva essere caricato per l'esecuzione,
c'era poi una scheda di tipo $RUN, che richiedeva al sistema operativo di mantenere in esecuzione il programma con i dati contenuti sulle schede immediatamente seguenti. Inne, una
scheda di tipo $END contrassegnava la ne del job.
//$JOB Prova, USER=Orgest,CPU=50,MEM=30
//COM FORTRAN PROGprova
...
... (Programma Fortran)
...
//LINK PROGprova,Sub1,Sub2,Fortlib
//EXECUTE PROGprova
...
... (dati per il programma)
...
//END
13
3 La seconda generazione(1955-1965):
Le schede che compongono il job sono di due tipi: schede dati (istruzioni e dati
del programma) e schede controllo (contenenti comandi JCL)
I grandi calcolatori della seconda generazione furono principalmente usati per calcoli scientici
ed ingegneristici, come per esempio nella risoluzione di sistemi di equazioni dierenziali ecc.
Per lo più furono programmati in fortran ed in linguaggio assmbler. I sistemi operativi tipici
furono FMS(Fortran Monitor System) e IBSYS, sistema operativo dell'IBM per i 7094.
3.2 Fortran Monitor System
Prima del sistema operativo IBSYS, IBM produsse per i calcolatori 709, 7090 e 7094 un sistema operativo su nastro magnetico il cui unico scopo era quello di compilare i programmi
FORTRAN.
Il sistema operativo FMS e il compilatore FORTRAN si trovavano sullo stesso nastro.
3.3 IBSYS
Il sistema operativo IBSYS fu creato per la serie 7090/7094 da IBM, e consisteva in un insieme
di programmi commerciali e scientici sotto il controllo del 7090-SV-918.
14
4 La terza generazione (1965-1980)
4.1 Anni 60
All'inizio degli anni 60 i calcolatori si dividevano principalmente in due gruppi, da una parte
c'erano i grossi calcolatori scientici orientati alla parola che venivano usati per i calcoli scientici ed ingegneristici , come l'IBM 7094, dall'altra c'erano i calcolatori commerciali, orientati
al carattere che venivano usati dalle dite per ordinare dati sul nastro o per le stampe (dalle
assicurazioni o le banche), come l'IBM 1401.
Sviluppare e mantenere due distinte linee di calcolatori era un attività molto dispendiosa
per le dite che costruivano calcolatori, inoltre molti clienti acquistavano all'inizio una macchina
piccola e in seguito una macchina più veloce e più potente.
L'IBM cerco di risolvere tutti questi problemi con l'introduzione del Sistema 360 (System/360).
Il Sistema 360 era costruito da una serie di macchine, compatibili fra di loro a livello software,
che andavano da macchine piccole, come il 1401, a macchine molto più potenti come il 7094.
Queste macchine dierivano solamente nel prezzo e nelle prestazioni (quantità massima di
memoria, velocità del processore ecc).
Tutte le macchine avevano la stessa architettura e lo stesso insieme di istruzioni, quindi i
programmi scritti per una macchina potevano girare per tutte le altre.
4.2 IBM System/360
Nei primi anni 60 i sistemi low-end e high-end di IBM erano incompatibili fra loro.
I programmi non potevano essere trasferiti facilmente da un calcolatore ad un altro, ed i
sistemi usavano periferiche diverse.
IBM ha concluso che tutti questi fattori aumentavano i costi di produzione dei calcolatori sia
per quanto riguardava il hardware che per quanto riguardava il software, portando ad avere dei
costi insostenibili e facendo diminuire le vendite dei calcolatori sempre di più .
Nel 1964, la società , ha annunciato il sistema 360, che consisteva in una gamma di calcolatori
compatibili fra loro, che utilizzavano tutti le stesse periferiche e le maggior parte dei programmi
girava su tutti i calcolatori senza nessuna modica.
Il sistema 360 fu la prima linea di calcolatori ad usare la tecnologia dei circuiti integrati, che
portò vantaggi molto rilevanti, in termini di prezzo e soprattutto di prestazioni, rispetto alla
seconda generazione di macchine che erano costruite a partire da singoli transistor.
Il sistema 360 fu un successo immediato e l'idea della famiglia di compilatori compatibili fra
loro fu immediatamente adottata da tutti gli altri principali costruttori di calcolatori.
Originariamente l'IBM aveva destinato a questa gamma di calcolatori un solo sistema operativo,
l'OS/360.
L'idea di avere una singola famiglia di macchine, con lo stesso sistema operativo, fu contemporaneamente una grande forza, ma anche una grande debolezza.
L'intenzione era che tutto il software, compreso il sistema operativo, OS/360, dovesse girare
su tutti i modelli dei calcolatori: sui piccoli sistemi, che presto sostituirono i 1401, per copiare
15
4 La terza generazione (1965-1980)
le schede sul nastro, e sui sistemi molto grossi, che sostituirono i 7094, per fare eseguire compiti
molto più dicili.
Quindi tutto il software doveva funzionare ugualmente sia sui sistemi con poche periferiche
che sui sistemi con molte periferiche, doveva lavorare in ambiente scientico e commerciale.
Il risultato dello sforzo di IBM nel scrivere l'OS/360 fu un sistema operativo enorme, molto
complesso, composto da milioni di righe di codice assembler e con migliaia di errori.
Successivamente ci furono delle nuove versioni, del sistema operativo, che cercarono di correggere gli errori, ma ogni nuova versione correggeva alcuni errori introducendone molti altri,
da cui la decisione di fare un altro sistema operativo più semplice per i calcolatori con una
memoria più limitata.
Con la terza generazione dei calcolatori abbiamo l'introduzione di una nuova tecnica, la
multiprogrammazione.
4.3 Multiprogrammazione
I sistemi batch per la multiprogrammazione fanno uso su determinate caratteristiche del calcolatore.
La caratteristica aggiuntiva più notevole per la multiprogrammazione è l'hardware di supporto agli interrupt di I/O e al DMA. Con l'I/O interrupt driven o il DMA, il processore può
inviare un comando di I/O per un job e procedere con l'esecuzione di un altro job mentre
l'I/O viene svolto dal controllore del dispositivo.
Quando l'operazione di I/O è completa, il
processore viene interrotto e il controllo è passato a un programma di gestione dell'interrupt
del sistema operativo. Il sistema operativo trasferirà poi il controllo a un altro job.
I sistemi operativi multiprogrammati sono discretamente sosticati se paragonati ai sistemi
operativi monoprogrammati. I job pronti per l'esecuzione devono essere mantenuti nella memoria centrale, il che richiede una forma di gestione della memoria. Inoltre, se parecchi job sono
pronti per l'esecuzione, il processore deve decidere quale mandare in esecuzione, il che richiede
algoritmi di schedulazione.
4.4 Il Timesharing
Il Desiderio di un tempo di risposta veloce preparò la strada al timesharing (condivisione di
tempo), una variante della multiprogrammazione nella quale ogni utente aveva a disposizione
un terminale.
Dal momento che i primi computer mainframe erano estremamente costosi, non era possibile
garantire l'accesso esclusivo ad un singolo utilizzatore per l'uso in modo interattivo.
Dal momento che con questa modalità di utilizzo i computer trascorrevano molto tempo
in attesa dell'input dell'utente, si pensò di far utilizzare a più utenti lo stesso elaboratore,
utilizzando i tempi morti per servire i diversi utenti a rotazione. Allo stesso modo, le piccole
porzioni di tempo che trascorrevano nell'attesa dei dispositivi, quali dischi, nastro magnetico o
rete potevano essere utilizzati per servire i vari utenti. I computer capaci di fornire servizi in
time-sharing normalmente venivano impiegati per lavori in batch durante la notte.
L'esecuzione della CPU viene suddivisa in quanti temporali. Il time-sharing è l'estensione
logica della multiprogrammazione, dove più utenti possono, con i loro programmi in esecuzione,
interagire con il sistema centralizzato ciascuno con un proprio terminale.
La CPU del computer centrale viene utilizzata per rispondere alle richieste dei singoli utenti,
passando rapidamente da uno all'altro (context switch) dando così l'impressione ad ognuno di
avere a disposizione il computer centrale interamente per sé ovvero dando l'impressione di un
processamento multiplo in parallelo di più processi verso più utenti.
16
4 La terza generazione (1965-1980)
4.5 CTSS
Al inizio degli anni 60, l'IBM 7094 era uno dei calcolatori più veloci , capace di sommare numeri
in virgola mobile con una velocità di 0,35 milioni di istruzioni al secondo.
Il 7094 aveva una memoria da 36 bit orientato alla parola, e arrivava a costare intorno ai $3.5
milioni di dollari.
Dal momento che questi calcolatori erano estremamente costosi, non era possibile garantire
l'accesso esclusivo ad un singolo utilizzatore, inoltre questi computer trascorrevano molto tempo
in attesa dell'input dall'utente, si penso allora di far utilizzare a più utenti lo stesso elaboratore,
utilizzando i tempi morti per servire diversi utenti, dando vita in questo modo al time-sharing.
Il primo vero sistema timesharing, CTSS(Compatible Time Sharing System) fu sviluppato
al MIT su un 7094 appositamente modicato.
Lo sviluppo del CTSS inizio nel 1961, guidato da Corby (Fernando Josè Corbatò), Bob Daley
e Marjorie Merwin-Daggett. Una versione di CTSS a 4 utenti fu dimostrata in un IBM 709 nel
novembre del 1961 al MIT. Questo sistema poteva supportare quattro terminali direttamente
collegati ad un canale I/O del computer.
Lo sviluppo del sistema operativo continuo anche nel 63, espandendo sempre di più le
funzionalità del sistema mentre i servizi per gli utenti del MIT iniziarono nell'estate del 1963.
Il primo tentativo di introduzione commerciale del sistema in time-sharing, che poi si diuse
ampiamente alla ne degli anni 60 è stato il Darmouth Time Sharing System o DTSS, che è
stato implementato per la prima volta al Dartmouth College nel 1964.
Il CTSS dimostrò che il sistema a partizione del tempo era nalmente possibile, inoltre
possedeva una delle prime utility per formattazione testi completamente computerizzati.
In
CTSS fu implementato un primo sistema di scambio di messaggi tra gli utenti, è quindi un
antenato del sistema ad email. C'era un comando dello RUNCOM che eseguiva una lista di
comandi presenti in un le, questo gettò le basi per il futuro shell scripting Unix. Presentava
un complesso algoritmo di scheduling che divideva i processi in categorie secondo il loro utilizzo
di CPU e favoriva processi brevi, in particolare quelli I/O bound.
4.6 MULTICS
Multiplexed Information and Computing Service è un sistema operativo time-sharing il cui
sviluppo è iniziato nel 1964 presso il MIT sotto la guida di Fernando Corbató e in collaborazione
con i colossi dell'industria statunitense Bell Labs e General Electric.
Multics era sviluppato inizialmente sul mainframe della General Electric, il GE-645 e tra gli
sviluppatori c'era Ken Thompson che con l'esperienza su questo computer decise prima per
il porting di un gioco e poi per la creazione di un altro sistema operativo meno ambizioso e
complesso, Unix.
17
4 La terza generazione (1965-1980)
Multics, il padre di Unix e il nonno di Linux
Multics ha però continuato sulla sua strada tra alti e bassi venendo impiegato con successo
commercialmente in decine di enti governativi, aziende e centri di ricerca tra cui l'MIT stesso
dove era usato per ni di ricerca e amministrativi.
I Bell Labs si ritirarono dal progetto nel 1969 e l'anno dopo anche General Electric decise
di abbandonare Multics cedendolo alla Honeywell che già lo supportava sui suoi modelli 6180.
Honeywell ha continuato a sviluppare e commercializzare Multics sino al 1985 e tra i suoi clienti
nei primi anni '80 c'era il sistema universitario francese.
La consociata Bull se ne è assunta la responsabilità prima in Europa e poi anche negli USA
no al 2000 quando, alla ne di ottobre, è stato spento l'ultimo sistema Multics.
Multics è stato il primo OS con un lesystem gerarchico: i nomi dei le già negli anni '60
e '70 potevano essere di qualsiasi lunghezza e caratteri. Inoltre le e directory potevano avere
più nomi ed esistevano già i link simbolici alla directory. Altro primato di Multics è il dynamic
linking e cioè la possibilità che un processo in corso potesse richiedere e caricare altri segmenti
con codice da eseguire.
Inoltre con Multics c'era la possibilità di ricongurare l'hardware mentre era acceso.
4.7 UNIX
®
Le origini di Unix risalgono alla metà del 1960, quanto AT&T, Honeywell, General Electric, e il
Massachusetts Institute of Tecnology attivarono il progetto MULTICS (Multiplexed Information and Computing Service), nanziato dall'Agenzia Progetti di Ricerca Avanzata Dipartimento della Difesa ARPA, MULTICS era un sistema modulare composto da banchi di processori
ad alta velocità, memoria, componenti di comunicazione.
Lo scopo era fornire servizi informatici 24 ore al giorno per 365 giorni all'anno con la
possibilità di aumentare la potenza aggiungendo componenti.
MULTICS fu progettato con in mente la sicurezza militare, sia per la resistenza agli attacchi
esterni che per proteggere ogni utente dagli altri utenti.
MULTICS supportava il concetto di sicurezza multilivello. MULTICS era ingrado di evitare
che le informazioni appartenenti ad un livello potessero nire nelle mani di un altro livello.
18
4 La terza generazione (1965-1980)
Nel 1969 MULTICS era molto indietro rispetto al programma. I suoi creatori avevano promesso molto di più di quello che avrebbero potuto fare nel tempo previsto per il progetto e vista
anche la distanza tra i tre centri di sviluppo del progetto decidono di abbandonare.
Quell'anno Ken Thompson un ricercatore AT&T che aveva lavorato sul progetto MULTICS,
rilevò un computer PDP-7 non usato per proseguire in proprio le idee di MULTICS.
A Thompson si unì presto un altro partecipante del progetto MULTICS Dennis Ritchie.
Peter Neumann suggeri il nome UNIX per il nuovo sistema. Il nome era un gioco di parole sul
nome MULTICS che ironizzava sul fatto che dove MULTICS non era riuscito a fare molte cose
UNIX sarebbe riuscito a fare una cosa: eseguire programmi. Il concetto di massima sicurezza
non faceva parte di questo obbiettivo.
Lo scopo minore era tutto l'impulso che i ricercatori
necessitavano, una prima versione di UNIX operativa molti mesi prima di MULTICS. Entro un
anno Thompson, Ritchie ed altri riscrivono UNIX per il nuovo computer PDP-11 della Digital.
Il nuovo sistema era costituito da programmi chiamati tools, ognuno dei quali eseguiva una
specica funzione, mentre la loro combinazione permetteva di risolvere problemi complessi.
AT&T creò uno
UNIX Support Group (USG) per lo sviluppo e il commercio uciale di
UNIX.
USG rilascia velocemente la releasse dello UNIX AT&T, chiamato
System V , con una nuova
modalità di licenza imposta da AT&T.
System III & V family
19
5 La quarta generazione (1980-2000)
5.1 Personal Computer
L'avvento dei circuiti integrati su larga scala LSI (Large Scale Integration) portò, alla ne degli
anni 70, alla costruzione dei primi personal computer (inizialmente chiamati microcalcolatori),
molto simili ai minicalcolatori come il PDP-11, ma più economici.
Nel 1974 la INTEL costruì il microprocessore 8080 e Gary Kildall costruì un controllore
per oppy disk che collegò all'8080 realizzando il primo microcalcolatore con disco e scrisse il
sistema operativo basato su disco CP/M (Control Programm for Microcomputer).
Kildall fondò la Digital Research e no al 1980 il CP/M domina il mercato dei microcalcolatori. Nel 1980 IBM progetta il PC IBM e chiede a Bill Gates la licenza del suo interprete
BASIC e un sistema operativo adatto.
Gates suggerì di contattare la Digital Research, ma
vista la dicoltà di contrattazione con Kildall, venne anche spronato da IBM a realizzare un
nuovo OS.
Microsoft acquistò allora il DOS (Disk Operative System) da una piccola azienda e lo orì
con l'interprete BASIC alla IBM che accettò anche se fu praticamente costretta a riscriverne
buona parte, visto il numero impressionante di bug.
Il successo dipese anche dalla scelta di
Gates di vender MS-DOS alle aziende che producevano computer perché formasse un unico
pacchetto con la macchina, mentre Digital Research vendeva CP/M direttamente agli utenti.
Le successive versioni di MS DOS avevano caratteristiche più avanzate prese anche da UNIX.
Microsoft vendette anche un versione di UNIX per microcalcolatore detta XENIX.
Una nota particolare merita Linux, apparso per la prima volta nel 1991, che, nato su iniziativa
di un giovane studente di nome Linus Torvalds, che intendeva scrivere una versione professionale
gratuita di un clone di UNIX detto MINIX, ha ben presto ricevuto l'appoggio di numerosi
sviluppatori sparsi in tutto il mondo, che hanno potuto contribuire al suo sviluppo soprattutto
grazie ad Internet. L'aermazione di questo SO è storia recente ed è tuttora in crescita. Questi
sistemi erano basati su comandi da tastiera, ma Engelbart inventò la GUI (Graphical User
Interface) con icone, menù, nestre e l'uso del mouse e Jobs, inventore del calcolatore Apple
sfruttò questa idea e produsse Macintosh ottenendo un enorme successo perché rese il PC
accessibile a tutti. Microsoft, inuenzata da questo, produsse Windows, un sistema operativo
che inizialmente (1985-1995) veniva eseguito sopra MS-DOS ma che con le versioni 95 e poi 98
incorporò quasi tutte le caratteristiche del sistema operativo, sbarazzandosene denitivamente
con la versione XP. Anche UNIX ha un sistema a nestre detto X windows.
Uno sviluppo interessante che iniziò a prendere piede durante la metà degli anni 80 è la
crescita di reti di PC sui quali giravano i primi sistemi operativi di rete e i sistemi operativi
distribuiti.
20
5 La quarta generazione (1980-2000)
Personal Computer
21
6 Quinta generazione (2000-..)
6.1 Web e Mobile
Dal boom di Internet al settore mobile: ecco le nuove sde per l'informatica che non potevano
non interessare il settore dei sistemi operativi.
Una prima ipotesi, cavalcata dai colossi del Web come Google, è stata quella di creare un OS
light browser-based che trasportasse l'utente in una sorta di universo web in cui tutto si può
fare attraverso internet ed il dispositivo diventa un semplice terminale.
In realtà questa tesi sembra quasi del tutto accantonata in favore dei nuovi OS Mobile che
ormai rappresentano un buon connubio tra leggerezza e funzionalità, andandosi a posizionare
su tutta una serie di dispositivi pensati per permettere all'utente una connessione continua alla
rete ma anche la possibilità di utilizzare applicazioni decisamente complete e funzionali.
I sistemi operativi classici (desktop) non restano certo a guardare e, oltre ad una sempre
maggiore integrazione con le reti, guardano a nuove frontiere: basti pensare alle annunciate
funzionalità di riconoscimento facciale o ai nuovi App Market da cui scaricare ed installare
velocemente nuove applicazioni.
22
7 Windows OS
7.1 Nascita della Microsoft
Dopo alcuni anni passati a utilizzare per i test il computer della scuola, provocando diversi
guasti, Bill Gates e Paul Allen fecero alcuni lavori per le società che consegnavano alle scuole i
computer, riconoscendo le loro competenze informatiche. Il vero e primo passo verso il successo
però, avvenne nel 1974, quando la General Electric produsse il primo kit per microcomputer
Altair8800. Bill Gates non perse tempo e contattò la General Electric per proporre software
specico per Altair8800, la quale accolse felicemente Bill e Paul. Grazie a questo contatto la
coppia si trasferì ad Albuquerque (Nuovo Messico), e nell'aprile del 1975 fondò la Microsoft
Corporation.
7.1.1 MS-DOS
Nel 1980 IBM stava cercando un sistema operativo per la sua nuova famiglia di computer PC
IBM.
Tra i vari candidati allo sviluppo di tale sistema vi era la Digital Research di Gary Kildall, la
quale però mandò in fumo la trattativa, decidendo di non rmare l'accordo di non divulgazione
del codice sorgente.
Continuando la ricerca, IBM arrivò anche alle porte della Microsoft, la
quale non esitò a contattare la Seattle Computer Products, che pochi mesi prima aveva scritto
un clone a 16 bit del CP/M chiamato QDOS (o 86- DOS), per comprare il sistema operativo
Disk Operative System. La Microsoft acquistò il DOS, revisionò i sorgenti e li consegnò a IBM
la quale si ritenne soddisfatta. Essendo però il DOS un prodotto aetto da svariati bug, che
vennero corretti da IBM, i nuovi computer IBM si chiamarono IBM PC-DOS 1.0 e vennero
licenziati congiuntamente da IBM e Microsoft. Il DOS venne poi revisionato da Microsoft che
ne sviluppò diverse versioni sempre con il nome MS-DOS.
7.2 Microsoft Windows
Dopo lo sviluppo di MS-DOS la Microsoft si dedicò allo sviluppo di un sistema operativo con
una interfaccia graca.
Infatti nel 1984 Microsoft annunciò che stava sviluppando Windows, un'interfaccia graca
per il suo sistema operativo MS-DOS che era venduto con i PC IBM.
Grazie a una collaborazione con Apple, il team Microsoft copiò l'interfaccia dal sistema
Macintosh.
Apple concesse una licenza di distribuzione a Microsoft impedendo ad esso di
23
7 Windows OS
utilizzare le nestre aancate, prerogativa del Mac. Infatti nella versione di Windows 1.0 le
nestre occupavano tutto lo schermo. Successivamente Windows adottò il sistema delle nestre
aancate e venne citata in giudizio da Apple; l'esito della trattativa intrapresa non è del tutto
noto, poichè il 25 luglio 1989 il giudice William Schwarzer respinse tutte le accuse tranne 10.
7.2.1 Il successo di Windows
Microsoft Windows e arrivata ad ottenere un successo enorme con Windows 3.0, rilasciato nel
1990. Windows 3.0 aveva un multitasking migliore rispetto a Windows/386, grazie all'introduzione della memoria virtuale ed ai device dirver virtuali. Questi miglioramenti resero i PC
dei seri concorrenti dei Macintosh della Apple, ad un costo nettamente più basso.
Il 22 maggio 1990 Microsoft annuncia il lancio di Windows 3.0, seguito nel 1992 da Windows
3.1.
Insieme, questi due sistemi operativi vendono 10 milioni di copie nei primi due anni,
tanto che Windows diventa il sistema operativo più diuso. Questo successo planetario spinge
Microsoft a riesaminare i suoi piani. La memoria virtuale migliora la graca. Nel 1990, l'aspetto
di Windows comincia ad assomigliare a quello che conosciamo oggi.
Windows può contare su prestazioni notevolmente migliorate, una graca avanzata a 16 colori
e icone ancora più intuitive. Una nuova ondata di PC con processore 386 dà una forte spinta
alla diusione di Windows 3.0. Infatti, grazie al supporto completo del processore Intel 386,
l'esecuzione dei programmi è molto più veloce. In Windows 3.0 compaiono per la prima volta
Program Manager, File Manager e Print Manager.
Dal primo sistema operativo, Microsoft, portò ad evoluzione il suo sistema, in modo particolare introdusse in Windows 95 un nuovo gestore della graca chiamato explorer, con l'innovativa
barra delle applicazioni, dal quale poi prenderanno spunto i sistemi graci KDE e GNOME di
GNU/Linux.
Questo passo è di rilevante importanza poichè l'interfaccia graca introdotta da Microsoft
fu il frutto di un vero e proprio studio approfondito e rigoroso di specialisti, che osservando
come veniva utilizzato il computer dettarono le linee guida per l'ergonomia e l'usabilità dell'interfaccia. Il sistema operativo è in continuo sviluppo se pur le API grache non hanno subito
sostanziali modiche.
La tipica schermata di
Windows 3.1
24
7 Windows OS
7.2.2 Windows Vista
L'altro vero passo innovativo è avvenuto con l'introduzione di Windows Vista con una graca
completamente nuova rispetto ai suoi predecessori.
Le vendite al pubblico di questo SO incominciarono il 30 gennaio del 2007.
Windows Vista fu riscritto da 0, usando come base il codice di Windows Server 2003.
Le principali innovazioni di Windows Vista sono l'uso di un nuovo motore di rendering per le
nestre, basato sulle funzionalità 3D delle moderne schede video, e un profondo rinnovamento
della shell Windows Explorer.
7.2.3 Windows 7
Windows 7 e il successsore di Windows Vista, rilasciato da Microsoft il 22 ottobre 2009.
Windows 7 è basato sullo stesso kernel di Vista e ha in comune con il suo predecessore anche
la shell graca Windows Aero.
A dierenza di Vista, Windows 7 ha migliorato la gestione della memoria, dei Driver e risulta
molto più stabile del suo predecessore.
Windows 7 fu prodotto in varie versioni, fra cui una versione mobile chiamata Windows
Phone Mango e una versione per tablet PC.
7.2.4 Windows 8
Windows 8 e il successore di windows 7, uscito il 26 ottobre 2012.
Windows 8 è un prodotto Windows completamente reinventato, dal chipset all'esperienza
utente. Il sistema funziona sia come tablet per l'intrattenimento che come un PC dalle funzionalità complete per garantire la massima ecienza ed è caratterizzato da un'interfaccia
completamente nuova, compatibile sia con la modalità touch che con mouse e tastiera.
In
Windows 8 sono stati introdotti miglioramenti al familiare desktop di Windows, con una nuova
barra delle applicazioni e una gestione dei le semplicata.
Windows 8 è caratterizzato inoltre dalla schermata Start, con riquadri che consentono di
avere sempre contatti, le, app e siti Web a portata di mano.
Le app sono in primo piano,
con accesso al Windows Store, integrato direttamente nella schermata Start, dove è possibile
acquistarle.
Oltre a Windows 8, Microsoft ha inoltre reso disponibile Windows RT, una versione di Windows eseguita su alcuni tablet e PC. Windows RT, pensato appositamente per dispositivi dal
design elegante e con una lunga durata della batteria, esegue esclusivamente app del Windows
Store e viene fornito con una versione integrata di Oce ottimizzata per i PC con touchscreen.
25
7 Windows OS
Interfaccia graca di Windows 8
Timeline windows
26
8 Apple OS
I soci fondatori di apple sono Steve Jobs, Steve Wozniak e Ronlad Wayne.
Steve Jobs e Steve Wozniak, si conoscevano già dai tempi della scuola. Nei primi anni settanta
costruiscono dei dispositivi chiamati Blue Box che permettevano di telefonare gratuitamente.
Nella realizzazione del Blue Box, Steve Wozniak è stato la mente, mentre Jobs ha fatto in
modo di pubblicizzare il prodotto, riuscendo a vendere una buona quantità.
8.1 Nascita della Apple
Nel 1975 i due Steve iniziano a progettare il loro primo computer.
All'inizio Wozniak progetta il suo computer sulla carta, perchè avrebbe voluto utilizzare il
processore Motorola 6800, ma costava 170 dollari ed era un prezzo troppo elevato per le loro
tasche.
Nel 1976 la MOS Technologies commercializzò il chip 6502 al prezzo di 25 dollari, cosi Wozniak
potè adattare i progetti basati sul processore 6800 di Motorola a questo nuovo processore.
Il primo Apple I venne completato nel garage di casa Jobs nel 1976.
L'Apple I viene venduto a 666,66 dollari ad un negozio di computer che ne acquisto 50
esemplari, tutti assemblati a mano dai due.
Dopo aver venduto 50 esemplari dell'Apple I, un computer interamente costruito da Steve
Wozniak e Steve Jobs, i due Steve , Wozniak iniziò a pensare agli sviluppi futuri, iniziando la
progettazione e costruzione dell'Apple II.
Il primo Aprile del 1976 steve Jobs e Steve Wozniak fondarono la Apple Computer Co.
assieme al co-fondatore Ronald Wayne.
27
8 Apple OS
Il primo logo della apple, disegnato interamente a mano dal co-fondatore
della apple Ronald Wayne. All'interno dell'immagine si vede Isaac Newton mentre si dedica alla lettura di un
libro all'ombra di un albero con attaccata una mela luccicante.
Inoltre, in basso a sinistra, c'e una piccola scritta (Newton... A Mind Forever Voyaging Throught Strange
Seas of Thought.... Alone) la cui traduzione italiana equivale a Newton, una mente sempre in viaggio attraverso
strani mari di pensiero... da sola.
La misterisoa frase deriva dal poema The Prelude, Book Third: Residence of Cambridge.
Nel 1977 questo logo fu cambiato da Steve Jobs, con la mela morsicata con i colori del arcobaleno invertiti
(Creato da Rob Janov), poichè ritenuto poco chiaro e non adatto ad essere rappresentato in formati di piccole
dimensioni.
Alla ne del 1976 l'Apple II era stato completato, era molto più avanzato di Apple I, ed era
completo di alloggiamento per la scheda madre, oltre ad avere anche la tastiera. Il computer
era dotato inoltre, di graca a colori e si poteva collegare a qualsiasi televisore.
Nel 1978 Steve Jobs decise che l'Apple doveva comprare i brevetti e le idee della Xerox, poichè
la Xerox stava svolgendo degli studi sulle nuove interfacce d'uso per utilizzare i computer. Xerox
infatti aveva creato nel centro Xerox Parc, un computer chiamato Alto, che era il primo ad avere
un'interfaccia utente graca (GUI), ed era controllato sia con la tastiera che con il Mouse.
Nel 1980, Apple rilascia un nuovo computer, l'Apple III. l'Apple III fu il primo computer
interamente progettato da Apple Computer, perchè i primi due erano stati sviluppati da Steve
Wozniak.
Questo computer aveva un processore da 2 Mhz, la RAM no a 256Kb, un Hard Disk esterno
e un nuovo sistema operativo più avanzato, e costava dai 4340 ai 7800 dollari, in base alle
prestazioni.
28
8 Apple OS
Apple III
Apple III non ebbe successo innanzitutto per il prezzo e anche perchè non era dotato di
ventole di rareddamento.
Nonostante il fallimento di Apple III, la società viene quotata in borsa, tanto che un anno
dopo le azioni sono aumentate del 1700 %. Apple diventa l'azienda che cresce più rapidamente
nella storia.
Ad aprile del 1983 Steve Jobs contatta John Sculley, che era il presidente di
PepsiCo, per proporgli il posto di CEO di Apple, che accettò. Si dice che Jobs abbia convinto
Sculley a diventare CEO con queste parole:
Vuoi continuare a vendere acqua zuccherata
per il resto della tua vita? Oppure vuoi cambiare il mondo? .
8.1.1 Apple Macintosh
Nel 1984 Apple commercializzò Macintosh, un sistema operativo altamente innovativo grazie
all'utilizzo di una interfaccia graca ben funzionante.
Grazie all'accesso nei laboratori della Xerox, Jobs era riuscito a mettere a bordo dei propri
dispositivi il supporto per il mouse e l'interfaccia graca, vera e propria innovazione, sulla
quale venne trasmesso anche uno spot diventato celebre. Tale spot venne trasmesso durante il
Super Bowl del 1984, con la quale Apple accusava IBM di essere il Grande Fratello , e nella
parte del liberatore si trovava, ovviamente, il Macintosh, o meglio l'innovazione signicativa del
Macintosh: l'interfaccia graca.
Le parole della pubblicità diventate famose furono: Il 24 gennaio Apple Computer presenterà
il Macintosh. E vedrete perché il 1984 non sarà come il 1984 .
Il Macintosh rilasciato nel 1984 era chiamato System 7, poichè non vi era la necessità di dare
un nome al sistema che era strettamente legato al computer.
Il nome venne creato quando Apple decise di commercializzare il sitema operativo anche
singolarmente slegato dal calcolatore.
29
8 Apple OS
Il Macintosh 128k (il primo Macintosh della storia) costava 2459$, era dotato di una rivoluzionaria interfaccia graca con icone di facile comprensione ed aveva 128Kb di memoria, mentre gli
altri computer di allora possedevano soltanto 64Kb, quindi il Macintosh fu una vera rivoluzione.
Macintosh 128k
Il più grosso passo che Apple dovette compiere nell'evoluzione del sistema Macintosh avvenne
quando i computer Apple passarono dal processore CISC Motorola 68000 (Complex instruction set computer) al RISC PowerPC (Reduced Instruction Set Computer) nel 1994 dovendo
convertire tutto il sistema per il nuovo processore.
Si introdusse così un emulatore in grado di far girare il codice assembler del motorola 68k
sul nuovo processore, ma piano piano il codice venne convertito alzando le prestazioni del Mac.
Nonostante i grandi sforzi di conversione, Apple era comunque indirizzata allo sviluppo di un
nuovo sistema operativo.
Se pur a buon punto, Mac OS era fortemente limitato da diversi
problemi tra cui l'assenza di memoria protetta e la possibilità del multitasking con prelazione.
Si presero in considerazione diverse alternative tra cui lo sviluppo di Copland, che doveva
garantire multitasking preemptivo, memoria protetta e la piena retrocompatibilità con il software Mac preesistente. Copland doveva essere il Mac OS 8, ma a causa di una cattiva gestione
del progetto, dovuta al massiccio lavoro per garantire la retrocompatibilità, portò ad enormi
ritardi e alla ne all'abbandono del progetto. Dopo una valutazione da parte di Apple, la scelta
migliore fu adottare un sistema esistente da modicare opportunamente.
Così si scelse il sistema OpenStep di NeXT, una azienda fondata dallo stesso Steve Jobs.
Grazie a questa scelta Jobs tornò a lavorare alla Apple con lo sviluppo del nuovo sistema.
Il nuovo sistema doveva essere il connubio perfetto tra la solidità di Unix con l'interfaccia
graca e le altre tecnologie ad alto livello del Mac OS. Il risultato fu il nuovo sistema operativo
Mac OS X con il quale venne ribattezzato il vecchio Mac OS come Mac OS Classic, tuttora
utilizzabile grazie a un emulatore presente su Mac OS X.
30
8 Apple OS
8.2 L'inizio del declino
Nel 1985 Steve Wozniak lascia Apple Computer, Inc.
Durante il 1985, iniziano a vericarsi dei contrasti tra Jobs e Sculley.
Jobs sosteneva che Sculley non capisse niente di computer e che potesse danneggiare la
società, ma quando Sculley lo seppe, pensò che Jobs doveva essere tenuto sotto controllo per
evitare di causare danni all'interno della società.
Il 31 maggio 1985 Sculley toglie a Steve Jobs tutte le responsabilità operative, e le decisioni
di Steve non inuirono più alle scelte della società, Steve non contava più niente per Apple.
Il 17 settembre 1985 Steve Jobs prende la pesante decisione di abbandonare la società da lui
creata, abbandona Apple Computer, Inc.
Da questo momento in poi, Apple entra anno dopo anno, in un periodo di profonda crisi, in
anni molto bui.
Il 24 ottobre 1985 John Sculley rma un contratto con Microsoft in cui Apple permetteva
l'uso di alcuni elementi graci dell'interfaccia del Macintosh alla società di Bill Gates, e in
cambio Microsoft, avrebbe sviluppato Word ed Excel per il Macintosh.
Poco dopo Steve Jobs fonda la NeXT Inc. società fondamentale per la rinascita di Apple.
Inoltre Steve Jobs compra gli studi di animazione digitale computerizzata di George Lucas, la
Pixar ottenendo inoltre un accordo con la Disney.
Nel 1994 Apple era davvero in una grave crisi nanziaria, in quanto vendeva prodotti solo
per uso professionale, dedicati soprattutto alle aziende, e non era disponibile nessuna macchina
consumer .
Apple, disperata, decide di concedere in licenza il proprio sistema operativo, sperando di
riprendersi provando a guadagnare come faceva Microsoft. Il tentativo fu però un insuccesso.
Apple essendo in grave crisi si accorge che non può continuare a vendere sempre lo stesso
sistema operativo, che si basa principalmente sulla potenza dell'interfaccia graca e decide di
acquistare l'azienda con il sistema operativo migliore e più innovativo di quegli anni, su cui
basare le future versioni di Mac OS, acquistando NeXT Computer, Inc.
per 430 milioni di
dollari.
L'acquisto di NeXT permettè a Steve Jobs, il fondatore sia di Apple che di NeXT, di rientrare
in Apple Computer, Inc.
Nel 1997 Steve Jobs per salvare Apple (che ormai tutti credevano andasse in fallimento)
dovette chiedere proprio al suo rivale, Bill Gates di Microsoft, di acquistare Apple.
Bill Gates comprò circa il 7-8% di Apple, per 150 milioni di dollari, e Apple doveva in cambio
includere nelle copie di Mac OS il browser Internet Explorer per i 5 anni avvenire, così come
Microsoft si impegnava a sviluppare l'Oce anche per Mac OS per i prossimi 5 anni.
Il 16 settembre 1997, Steve Jobs diventa a tutti gli eetti il CEO di Apple, ma ad una
condizione:
diventando CEO Steve Jobs, accettava di guadagnare simbolicamente solo 1%
annuo.
8.3 MAC OS X
Nel 2000, Apple presenta Mac OS X, il sistema operativo basato su NeXTStep.
Questo sistema coniuga la sicurezza e stabilità di un sistema Unix con la semplicità e eleganza
tipica dei prodotti Apple.
Nel maggio del 2001, dopo molte speculazioni, Apple annuncia
l'apertura di una linea di propri negozi:
gli Apple Store.
I negozi vengono creati con due
obiettivi fondamentali: evitare un ulteriore riduzione della quota di mercato e fare una seria
concorrenza ai prodotti di terze parti, che riducevano i guadagni derivanti dagli accessori.
Nell'ottobre del 2001 Apple presenta l'iPod, un lettore di musica digitale portatile. Essendo
basato su un mini hard disk, l'iPod è dotato di una elevata capacità di memorizzazione.
31
8 Apple OS
Il 6 giugno 2005 il CEO di Apple Steve Jobs annuncia che l'azienda nel medio termine (2 anni)
intende abbandonare totalmente i processori PowerPC e utilizzare esclusivamente i processori
x86 prodotti da Intel. La compatibilità del software sarà ottenuta tramite la ricompilazione dei
programmi e tramite l'utilizzo di un emulatore software chiamato Rosetta.
Attualmente la Apple e arrivata a rilasciare, il 25 luglio 2012 (al pubblico), l'OS X 10.8
Mountain Lion.
32
9 GNU/Linux
Se non sono per me stesso, chi sarà per me?
E se sono solo per me stesso, che cosa sono?
E se non ora, quando?
Hillie
La decisione di avviare il progetto GNU si basò su uno spirito simile .
Richard Stallman cominciò la sua carriera al MIT nel 1971, in un periodo in cui il software
veniva utilizzato da molte compagnie private ed i programmatori non erano quasi mai soggetti
a un contratto di non divulgazione.
Il software veniva utilizzato in modo molto simile all'attuale software libero, senza però
nessuna regola scritta che ne sancisse le modalità d'uso, cioè senza nessuna licenza.
Già nel 1980, la quasi totalità del software in circolazione, era stato sostituito dal software
proprietario.
Stallman, confrontandosi con le conseguenze del cambiamento, si rese conto che l'avvento del
software proprietario, ha l'eetto di impedire ai programmatori di collaborare tra loro.
Stallman stava vedendo morire lentamente l'etica hacker e quell'attitudine di metterci le
mani sopra, di migliorare e condividere il software.
33
9 GNU/Linux
9.1 L'inizio del progetto
Nel 1983 Stallman lasciò il suo lavoro al MIT per intraprendere lo sviluppo di un nuovo sistema operativo completamente libero, che permettesse a chiunque di leggere il codice sorgente,
modicarlo e ridistribuirlo.
Si poteva così risolvere il problema etico o legale di non poter utilizzare del software poiché chi
l'aveva scritto, aveva voluto rendere proprietario i propri programmi, come ad esempio UNIX.
Il manifesto venne pubblicato il 27 settembre 1983, dando cosi il via al movimento del software
libero.
Lo sviluppo del sistema iniziò nel 1984 sotto il nome di GNU, acronimo ricorsivo che signica
GNU is not Unix. Legate allo sviluppo del progetto vennero anche create delle licenze ad-hoc
per il rilascio del software e della documentazione:
ˆ
la licenza GNU GPL (GNU General Public License)
ˆ
la GNU FDL (GNU Free Documentation License)
le quali sanciscono e proteggono, secondo Stallman, le libertà fondamenti che permettono l'uso
e lo sviluppo collettivo e naturale del software.
9.2 Software GNU e il sistema GNU
GNU e un acronimo ricorsivo che signica GNU's Not Unix (GNU non è Unix), un
astuto gioco di parole per prendere le distanze da un sistema operativo proprietario a
pagamento chiamato Unix, a cui GNU si ispirava.
Nel 1990 il sistema GNU aveva già a sua disposizione un editor di testo, emacs, un compilatore, il GCC (GNU C Compiler), e quasi tutte le funzioni, librerie e utility del sistema Unix.
La parte che però mancava era il kernel, la parte fondamentale del sistema, poiché il kernel
HURD, sviluppato dal progetto GNU, è tuttora in via di sviluppo, ma non ha ancora raggiunto
una maturità tale da garantire adabilità.
Fu così che divenne fondamentale l'intervento di Linus Torvalds, che nel 1991 scrisse il kernel
linux e lo rilasciò sotto licenza GNU GPL, dopo una disputa con il professor Andrew Tanenbaum. Quest'ultimo aveva scritto il sistema operativo Minix per scopi didattici, ma distribuiva
il sistema sotto una licenza che non permetteva le modiche se non autorizzate dall'autore.
Fu così che Torvalds decise di scrivere un kernel simile a Unix e ispirato a Minix ma con una
licenza veramente libera.
34
9 GNU/Linux
In realtà il nome dato da Linus alla sua invenzione fu Freax (da freak = mostriciattolo,
inoltre la tradizione impone che un kernel unix-like nisca con x) ma questo nome venne
poi modicato dalla persona incaricata da Torvalds di pubblicarlo su internet.
È grazie a Linux che oggi possiamo utilizzare una versione del sistema GNU, naturalmente
combinarli fu un lavoro notevole.
Attualmente Linus Torvalds lavora per conto dell'OSDL (Open Source Development Lab)
per la manutenzione del kernel linux.
Grazie all'unione del kernel linux e del progetto GNU nel 1992 venne rilasciato, sotto licenza
GPL, il sistema GNU/Linux. Il progetto GNU e il sistema GNU/Linux, insieme alle licenze
GNU, saranno fondamentali per la losoa open source e il software libero. Infatti la diusione
del sistema porta anche alla diusione delle sue caratteristiche peculiari, cioè la sua totale
libertà. Richard Stallman fonda anche la Free Software Fondation con la quale dichiara le 4
libertà che deniscono un software libero:
1.
Libertà di eseguire il programma per qualsiasi scopo
2.
Libertà di studiare il programma e modicarlo
3.
Libertà di copiare il programma in modo da aiutare il prossimo
4.
Libertà di migliorare il programma e di distribuirne pubblicamente i miglioramenti, in modo tale che tutta la comunità ne tragga benecio
35
9 GNU/Linux
9.3 Free come libero
Il termine "free software" (il termine free in inglese signica sia gratuito che libero) a volte è
mal interpretato: non ha niente a che vedere col prezzo, si tratta di libertà.
Ecco, dunque, la denizione di software libero.
Un programma è software libero per voi, che ne siete un generico utente, se:
ˆ
l'utente ha la libertà di eseguire il programma come desidera, per qualsiasi scopo;
ˆ
l'utente ha la libertà di modicare il programma secondo i propri bisogni (perché questa
libertà abbia qualche eetto in pratica, è necessario avere accesso al codice sorgente
del programma, poiché apportare modiche ad un programma senza disporre del codice
sorgente è estremamente dicile);
ˆ
l'utente ha la libertà di distribuire copie del programma, gratuitamente o dietro compenso;
ˆ
l'utente ha la libertà di distribuire versioni modicate del programma, così che la comunità
possa fruire dei miglioramenti apportati.
Poiché "free" si riferisce alla libertà e non al prezzo, vendere copie di un programma non
contraddice il concetto di software libero.
In eetti, la libertà di vendere copie di programmi è essenziale: raccolte di software libero
vendute su CD-ROM sono importanti per la comunità, e la loro vendita è un modo di raccogliere
fondi importante per lo sviluppo del software libero.
Di conseguenza, un programma che non può essere liberamente incluso in tali raccolte non è
software libero.
A causa dell'ambiguità del termine free , si è cercata a lungo un'alternativa, ma nessuno ne
ha trovata una valida.
La lingua inglese ha più termini e sfumature di ogni altra, ma non ha una parola semplice e
non ambigua che signichi libero; unfettered è la parola più vicina come signicato. Alternative come liberated , freedom e open hanno signicati errati o non sono adatte per altri
motivi ( rispettivamente, liberato, libertà, aperto).
Free software is a matter of liberty, not price. To understand the concept, you should think
of free as in free speech, not as in free beer.
-Richard Stallman
Il sistema GNU/Linux come la maggior parte di sistemi operativi di spicco, adotta un interfaccia graca. Nel sistema vi sono due Window Manager principali che gestiscono l'interfaccia,
Gnome, del progetto GNU, e KDE.
36
9 GNU/Linux
Windows Manager KDE
È possibile quindi dire che anche il sistema GNU/Linux sia ormai diventato un sistema
operativo aperto a tutti, facilmente utilizzabile anche su computer desktop di privati, poiché
l'interfaccia graca è intuitiva e di semplice utilizzo.
Unendo ad essa un sistema stabile si ha il risultato di un sistema operativo con tutte le carte
in regola per la competizione con i sistemi proprietari. Inoltre grazie alla libertà di GNU/Linux,
molti sviluppatori si sono impegnati per lo sviluppo di questo sistema.
Da diverse aziende, diverse losoe, diversi gusti ed esigenze software, sono nate tante
versioni di GNU/Linux, chiamate distribuzioni.
9.4 Open Source
Nel corso degli anni 80 e 90 il software libero ebbe una crescita piuttosto sostanziosa, ma
ancora non aveva fatto breccia nel mondo del business e nelle grandi aziende che mal vedevano
il movimento del free software.
Alla parola inglese free possono essere infatti associati diversi signicati, dando origine ad
una parola ambigua: può essere tradotta sia come gratis che come libero e questa ambiguità
causò parecchie controversie all'interno delle grandi comunità.
Inoltre la losoa che Stallman promuoveva mal s'addiceva ad una diusione anche in ambito
aziendale del software libero poiché il termine free veniva associato a prodotti sì gratuiti, ma
di bassa qualità (in ambito economico la parola gratuito è sinonimo di qualità inferiore).
Proprio per favorire la diusione di licenze liberali nel mondo degli aari, Bruce Perence,
Eric Raymond ed altri esponenti del software libero coniarono il termine Open Source e nel
1998 diedero vita al consorzio Open Source Initiative (OSI) per promuovere il nuovo termine.
37
9 GNU/Linux
Ben presto fu evidente che l'Open Source apriva una breccia nel mondo del software libero
in quanto tralasciava le questioni etiche e losoche: dal concetto del software libero per tutti
e delle restrizioni sull'uso delle opere altrui, l'Open Source cercava di darne un'immagine più
commerciale, più adatta alle logiche di mercato.
La posizione del consorzio OSI si può racchiudere nelle seguenti frasi, citando il pensiero che
si trova nella home page del sito del consorzio: mantenere la stessa licenza del software libero,
mantenere le stesse pratiche collaborative e di conoscenza comune, ma estraniare il concetto di
libertà e ideologia liberale di cui si faceva a fa ancora oggi portavoce Stallman.
Come dissero gli stessi fondatori del termine Open Source, il buon marketing sta alla base
del successo di un prodotto e l'utilizzo di questo termine ben s'addice alle numerose società
software che vogliono migliorare i loro prodotti.
A partire dal 1998 no ai nostri giorni, tantissime aziende e grandi multinazionali hanno
abbracciato il fenomeno dell'Open Source. Un esempio lampante di come l'Open Source abbia
dato linfa vitale a nuovi prodotti di successo è il noto browser Mozilla Firefox, nato dal rilascio
del codice sorgente, sotto licenza Open Source, del famoso browser Netscape da parte del colosso
statunitense America Online (AOL).
Entrambi i movimenti, free software ed Open Source, hanno proseguito sui loro percorsi
seguendo i rispettivi ideali, ma non per questo si sono chiusi ad ogni tentativo di collaborazione.
Sebbene la FSF di Stallman rimanga ancora fortemente attaccata ai suoi forti principi di libertà
informatica, entrambe le fondazioni collaborano per l'obiettivo comune della diusione del
software libero e per l'uso di licenze compatibili.
Oggigiorno, per risolvere i conitti etici e morali derivati da queste terminologie, si sta
promuovendo l'uso di un nuovo acronimo, FLOSS (Free/Libre Open Source Software) con lo
scopo di inglobare in un'unica denizione ogni genere di software open trascendendo eventuali
connotati politici dei due termini.
38
9 GNU/Linux
9.5 Copyleft e la GNU GPL
Il concetto di copyleft nasce dalle idee di Richar Stallman e della Free Software Foundation in
opposizione al copyright.
Tradotto signica "permesso d'autore" che si contrappone al "diritto d'autore".
L'idea di base è che data un'opera sia possibile tutelare la paternità di quest'opera (quindi
identicare il suo autore in modo indelebile) senza però limitare la libertà di distribuzione e
circolazione dell'opera stessa.
Il concetto di libertà di distribuzione di un'opera, si traduce
in libertà di apportare modiche, copiarlo, regalarlo , o addirittura venderlo ma riconoscendo
sempre gli autori e dando la stessa libertà di distribuire anche alle versioni derivate.
Quindi esiste una grossa dierenza tra copyleft e pubblico dominio, poichè un programma
di pubblico dominio potrebbe essere preso da qualcuno, modicato per renderlo diverso dalla
versione originale e messo sotto copyright in questa versione modicata.
Essendo di pubblico dominio, non esiste un copyright sull'opera che impedisce di farlo, ma
tutto ciò non e possibile su un copyleft poichè esiste una sorta di copyright.
Per mettere un'opera sotto copyleft occore dapprima creare un copyright, quindi aggiungere
una licenza che permette di distribuire versioni integrali o modicate dell'opera con la condizione
che anche le versioni distribuite mantengano copyright e licenza di distribuzione.
licenza divengono inseparabili.
Opera e
La licenza copyleft più famosa è la licenza GPL, scritta da
Richard Stallman nel 1989.
39
9 GNU/Linux
La c rovesciata dentro un cerchio è il simbolo del
copyleft.
9.6 Modalità di guadagno
Lo sviluppo opensource ha tra le sue caratteristiche quello di essere quasi sempre gratuito, tanto
da creare confusione tra alcuni che credono che opensource e gratuito siano sinonimi.
Ci si potrebbe chiedere perchè delle persone si dedichino allo sviluppo di progetti senza
remunerazione. In realtà, ci possono essere delle forme di guadagno e si può ricorrere ad una o
più strategie per questo scopo.
Il guadagno può arrivare dalle:
1.
donazioni
: lo sviluppatore dà la possibilità di fare delle donazioni non obbligatorie a chi
usa il suo programma
2.
servizio di supporto a pagamento
: il programma è gratuito ma si paga per avere il
supporto dello sviluppatore
3.
sponsorizzazione
: il programma o il sito che lo ospita può contenere delle publicità a
diverse aziende che supportano economicamente lo sviluppatore
4.
didattica
: lo sviluppatore può guadagnare grazie all'organizzazione di corsi di apprendi-
mento del prodotto che ha creato.
9.7 LAMP
Nel settore server GNU/Linux è alla base dei server LAMP (
P P
erl-
L
inux,
A
pache,
M
ySql e
P
HP-
ython), che hanno raggiunto un'ampia popolarità tra gli sviluppatori web, e sono presenti
nella maggior parte dei sistemi mondiali.
9.8 Debian
Il Progetto Debian è composto da un gruppo di volontari provenienti da tutto il mondo, i loro
sforzi sono concentrati verso la realizzazione di un sistema operativo composto interamente da
software libero.
40
9 GNU/Linux
Attualmente il principale prodotto del progetto è la distribuzione Debian GNU/Linux, che
include il kernel del sistema operativo Linux e migliaia di applicazioni preimpacchettate.
Sono supportati vari tipi di processori, inclusi Intel i386 e superiori, Alpha, ARM, Intel IA-64,
Motorola 68k, MIPS, PA-RISC, PowerPC, Sparc (e UltraSparc), IBM S/390 e Hitachi SuperH.
Il Progetto Debian è stato fondato ucialmente da Ian Murdock il 16 Agosto del 1993, e l'ha
guidata no al marzo 1996.
Il nome Debian è stato coniato dal fondatore del progetto, Ian Murdock, unendo il proprio
nome e le prime tre lettere di quello della sua danzata (ora ex-moglie) Debra.
Ian voleva che Debian fosse una distribuzione sviluppata apertamente, libera, nello spirito di
Linux e di GNU.
Debian è la sola distribuzione aperta a tutti, sviluppatori e utenti, che vogliono contribuire
allo sviluppo. È l'unico signicativo distributore di Linux non commerciale. È il solo grande
progetto con uno statuto, un contratto sociale e dei documenti di politica di organizzazione del
progetto. Debian è anche la sola distribuzione ad usare informazioni dettagliate sulle dipendenze
tra pacchetti per assicurare la stabilità del sistema anche dopo consistenti aggiornamenti.
Debian e arrivato alla versione 6.0.7 (Squeeze) con Gnome rilasciato il 23 febbraio 2013.
9.9 Red Hat
Red Hat è praticamente sinonimo di Linux stesso.
La sua nascita, come per molte altre distro, si deve alla collaborazione di centinaia di
sviluppatori diusi in tutto il mondo e, in parte, al supporto diretto di grosse aziende software.
Red Hat viene fondata nel 1993 da Marc Ewing, che spiega così la scelta del nome:
Ai
tempi del college avevo l'abitudine di indossare un cappello a strisce bianche e rosse che era
appartenuto a mio nonno. Era il mio cappello preferito, ma lo smarrii durante l'ultimo anno di
corso a Philadelphia. Fu in suo ricordo che scelsi il nome Red Hat per la società.
La prima versione viene rilasciata il 3 novembre 1994 con un annuncio sul newsgroup
comp.os.linux.announce, e porta in dote il rivoluzionario sistema di gestione dei pacchetti
RPM Package Manager.
Oggi Red Hat Inc., che si occupa della distribuzione e del relativo
ecosistema, è quotata al NASDAQ di New York, e, tra l'altro, vanta il primato di prima società
fornitrice di soluzioni Open Source ad entrare in borsa.
Nel tempo la strategia di Red Hat è andata sempre più orientandosi verso il mercato professional ed enterprise (soprattutto nel settore delle telecomunicazioni), abbandonando il supporto
diretto all'utenza consumer, per la quale è stato lanciato il progetto Fedora.
I punti forti d RedHat sono:
1. commercializzazione del prodotto;
2. disponibilità di assistenza diretta pensata soprattutto per le aziende;
3. aggiornamenti della distribuzione, come evidenziato dallo stesso Ewing: Prima della comparsa di Red Hat nessuno aveva mai pensato all'aggiornamento di ogni nuova distribuzione
di GNU/Linux, ogni volta bisognava reinstallare ed era un grosso svantaggio.
La famiglia dei prodotti di Red Hat Enterprise Linux è in grado di soddisfare i requisiti sulle
prestazioni, adabilità e sicurezza richiesti dai service provider.
Red Hat e la famiglia dei
prodotti Enterprise Linux forniscono numerosi vantaggi grazie al coinvolgimento diretto dei
grossi clienti nello sviluppo delle varie edizioni della distribuzione stessa.
Inoltre Red Hat ha messo su un ecosistema basato su una serie di certicazioni in grado di
soddisfare i requisiti delle più importanti aziende mondiali nel settore delle telecomunicazioni.
In questa ottica, particolare attenzione è posta nello sviluppo di nuove tecnologie di sicurezza per
GNU/Linux, tra le quali: Security Enhanced Linux (SELinux), Exec Shield, PIE e Auditing.s
41
10 Mobile OS
Con l'avvento di dispositivi sempre più avanzati e per merito della miniaturizzazione ci si sta
avvicinando sempre di più a inserire un vero e proprio computer in ogni strumento elettronico.
Lavatrici, forni a microonde, caldaie e molti altri elettrodomestici vengono oggi dotati di un
processore e di un microsistema operativo per riuscire a svolgere compiti aggiuntivi oltre al
loro scopo fondamentale.
Il settore in cui tale sviluppo si è evidenziato con maggiore intensità, è stato il campo dei
palmari e della telefonia mobile.
Infatti al giorno d'oggi si possono acquistare telefoni con
capacità di calcolo molto elevate, in grado di riuscire ad eseguire un sistema operativo molto
simile a quello dei computer tradizionali, solo un po' alleggerito.
È disponibile sul mercato un rappresentante per ognuno dei tre maggior esponenti:
iOS, Android e Windows Phone sono i tre sistemi che oggi si contengono la palma come
miglior OS per smartphone.
Tra questi quello che ha dato il via alla cosiddetta mobile revolution
è sicuramente iOS,
cuore pulsante dell'IPhone. Il sistema di Apple è facile da usare e molto stabile, rappresentando
il punto di riferimento per l'intero settore. Tra i difetti principali si annotera il fatto di essere
un sistema chiuso e poco personalizzabile.
Il più grande antagonista del sistema di Apple è Google Androind, non legato ad un produttore specico e sicuramente il preferito dalla comunità di sviluppatori.
Il sistema di BigG è altamente personalizzabile, e, ciò, paradossalmente, porta a personalizzazioni talmente spinte che causano anche la dicoltà di iterazioni tra il medesimo OS montato
su dispositivi diversi.
L'ultimo arrivato sul mercato è Windows Phone, il nuovo sistema operativo mobile di Microsoft che rompe completamente il legami con i suoi predecessori. Il nuovo OS mobile ha fatto
proprio il concetto di UI basato su piastrelle (TILES) e può essere installato solo su dispositivi
dotati di speciche caratteristiche minime.
Tutti e tre i sistemi dispongono di un proprio Market Store e di un ecosistema di applicazioni
in continua crescita ed evoluzione.
Windows phone VS Android VS iPhone iOS
42
10 Mobile OS
10.1 Touch screen
Il touch screen ha sicuramente stravolto il mondo della telefonia mobile, dando un grande
impulso allo sviluppo di questa tecnologia.
La storia considera che il primo touchscreen fu inventato da E.A.Johnson nel 1965, nel Regno
Unito (Royal Radar Estabilishment in Malvern).
Johnson inizialmente descrisse il suo lavoro in un articolo intitolato Touch displaya novel
input/output device for computers e lo pubblico in Electronic Letters.
10.1.1 Touchscreen capacitivo
Johnson aveva inventato lo schermo capacitivo, anche se la tecnologia iniziale di Johnson poteva
elaborare un solo tocco alla volta.
Anche se preistorica, l'idea di Johnson ha avuto più acquirenti, infatti la sua scoperta e stato
adottata dal controllo del traco aereo nel Regno Unito, e questa tecnologia è rimasta in uso
no alla ne del 1990.
Il primo schermo capacitivo, inventato
nel 1965 da E.A.Johnson
10.1.2 Touchscreen resistivo
Il touchscreen resistivo fu inventato dal Dr.G.Samuel Hurst quasi per caso, presso l'università
di Kentucky.
Nel 1970 Hurst inizio a lavorare nella cantina di casa sua su un nuovo progetto, il quale
consisteva nel creare un monitor touchscreen per un personal computer, Hurst si rese conto
che questa interazione era semplicemente eccellente e semplicava di molto l'interazione uomocomputer, e decise di chiamare Elographics
la sua invenzione.
Questa scoperta ha contribuito a fondare quello che oggi chiamiamo il touch resistivo (perchè
risponde puramente alla pressione piuttosto che alla conducibilità elettrica, ovvero funzionava
sia con una pena che con un dito).
Nel 1971 erano state introdotte un certo numero di macchine con lo schermo touchscreen.
Uno dei primi dispositivi touch più diusi e stato PLATO IV, introdotto dal Università di
Illinois. Il PLATO IV usava un sistema a raggi infrarossi per determinare le coordinate nello
schermo e determinare cosi la posizione esatta che si toccava. PLATO IV e stato anche il primo
computer touchscreen ad essere utilizzato in una classe, dove gli studenti toccavano lo schermo
per scegliere la risposta corretta.
43
10 Mobile OS
Plato IV
10.2 Android
44
10 Mobile OS
make a device about the size of a small candy bar that cost less than $10 and allowed users to scan
objects and unearth information about them on the Internet.
-Andy Rubin
Android è il sistema operativo mobile più utilizzato e rappresenta la scelta migliore in termini
di bassi costi, personalizzazione e leggerezza del sistema operativo stesso inoltre Android è un
sistema operativo open source basato sul kernel 2.6 di Linux.
L'idea di Rubin nel 1999 era quella di realizzare un dispositivo di dimensioni piccole e del costo
basso che permettesse agli utenti di fotografare (scannerizzare) oggetti ed ottenere informazioni
su di esse attraverso internet.
Nel 2002 Rubin tiene una serie di seminari per presentare il proprio prodotto e incontra Page
e Brin, i due fondatori di Google, i quali si mostrano sin da subito interessati del prodotto di
Rubin.
Nel ottobre del 2003 viene fondato l'Andorid Inc in Palo Alto, California, da Andy
Rubin, Rich Miner, Nick Sears e Chris White.
Google decide di acquistare Android Inc ad agosto del 2005.
10.2.1 2007: la nascita di Android
Il 5 novembre 2007 L'Open Handset Alliance presenta il sistema operativo Android.
Qualche giorno dopo viene rilasciato anche il primo Software Development Kit (SDK) per
gli sviluppatori che include gli strumenti di sviluppo, le librerie, un emulatore del dispositivo,
la documentazione, tutorial e altro.
Al momento del lancio Android presentava un numero molto ridotto di applicazioni:
un
browser basato su webkit, una rubrica e un calendario sincronizzato con gmail.
Per invogliare i programmatori a cimentarsi con questa nuova piattaforma, Google istituì
nel gennaio del 2008 un concorso con un montepremi di 10 milioni di dollari per le migliori 50
applicazioni.
10.2.2 Il primo smartphone Android
Ad agosto del 2008 viene presentata la versione 0.9 dell'SDK di Android sulla cui base l'operatore T-Mobile annuncia il primo smartphone con sistema operativo Android: il T-Mobile
G1. Questo terminale, che in Italia sarà conosciuto come HTC Dream, raggiunse il mercato
americano nel settembre del 2008: se ne vendettero 1 milione nei primi 60 giorni.
45
10 Mobile OS
T-Mobile G1
Google nel 2012 è arrivata a presentare Android 4.1 Jelly Bean. Sviluppato partendo da Ice
Cream Sandwich l'intento principale è quello di rendere il sistema operativo molto più uido e
veloce combattendo qualsiasi rallentamento.
10.3 Windows Phone
Windows Phone è nato per essere il sistema operativo degli smartphone Microsoft ed è stato
lanciato sul mercato nell'ottobre 2010.
A causa dei grossi progressi fatti e degli elementi innovativi che i nuovi telefoni possedevano
questo sistema operativo è stato realizzato da zero e ha perso la compatibilità con i modelli
precedenti. I primi telefoni con s.o. Windows Phone possedevano, oltre a migliorate capacità
elaborative, il supporto multitouch, lo schermo capacitivo e una nuova interfaccia.
Il lancio del sistema operativo avvenne l'11 ottobre 2010, e i primi telefoni iniziarono a
circolare il 22 in Europa e l'8 novembre in America, portando a un milione e mezzo le vendite
dei dispositivi con questo sistema operativo durante i primi 40 giorni circa.
Per quanto riguarda gli aggiornamenti il primo avvenne a marzo 2011 col nome di No-Do ,
mentre il secondo che ha portato la versione alla 7.5 è conosciuto come Mango ed è datato
settembre 2011.
Il 2 luglio del 2012 e stato rilasciato Windows Phone 7.5 Refresh, noto anche come Tango,
è la nuova release del sistema operativo mobile di Microsoft, che introduce diverse migliorie
software e risolve diversi bug .
10.3.1 Windows Phone 8
È stato rilasciato il 29 ottobre 2012, Windows Phone 8 è basato sul kernel Windows NT.
Verrà inoltre inclusa la versione mobile di Windows Internet Explorer 10.
Windows Phone 8 porterà grandi novità anche in ambito tiles, infatti sarà possibile regolare
la grandezza delle tiles di sms/email e visualizzare nella tiles un'anteprima del contenuto appena
ricevuto.
46
10 Mobile OS
10.4 iPhone iOS
La storia di iOS inizia con l'entrata in commercio dell'iPhone, il giorno 29 giugno 2007.
iOS è il sistema operativo sviluppato da Apple per i dispositivi portatili iPhone, iPod touch
e iPad.
Il primo iPhone commercializzato dalla Apple fu l'iPhone 2G, il quale conteneva solamente
le applicazioni preinstallate da Apple ed era disponibile solamente in lingua inglese, da subito
si nota che l'attenzione principale era riposta sul interfaccia.
Il primo iPhone era molto limitato, mancava il multitasking ed era impossibile sviluppare
applicazioni per l'iPhone.
Esattamente un anno dopo viene rilasciato il primo SDK per gli sviluppatori, permettendo
in questo modo anche agli utenti di creare o pubblicare le loro applicazioni.
L'iOS e arrivato alla versione 6 rilasciato al pubblico il 19 settembre 2012, introducendo molte
novità e migliorando le prestazioni.
10.5 Ubuntu Touch
Ubuntu Touch è una versione di Ubuntu ottimizzata per gli smartphone ed i tablet prodotto
da Canonical Ltd.
L'obbiettivo di Ubuntu Touch e portare nel mondo mobile la semplicità e la comodità di
Unity.
Il progetto e stato presentato il 2 gennaio 2013 per gli smartphone, e il 19 febbraio per i
tablet da
Mark Shuttleworth
.
Canonical ha dichiarato che il primo smartphone con Ubuntu Touch sarà rilasciato in ottobre
del 2013.
Ubuntu Touch
10.6 Firefox OS
Andreas Gal, direttore di ricerca della Mozilla Corporation, il 25 luglio 2011, ha annunciato il
Progetto Boot to Gecko.
Il 27 settembre 2012 Boot to Gecko è stato rinominato in Firefox OS in onore al famoso
browser Mozilla Firefox, fù cosi che nacque Firefox OS.
47
10 Mobile OS
10.7 Openmoko
OpenMoko ha iniziato un progetto libero, passato poi alla comunità, dal nome openmoko.
L'azienda ha prodotto recentemente il suo ultimo modello, il freerunner, un telefono completamente open, schemi hardware inclusi, che permette di far girare un kernel linux. Ovviamente
sono state già state implementate diverse distribuzioni come OpenMoko, la distribuzione uciale del produttore, SHR (Stable Hybrid Release), Hackable e molte altre. Se pure il progetto
è ancora all'inizio, con ancora problemi da risolvere, l'idea di avere un sistema free e opensource
anche sul dispositivo telefonico ha attratto molte persone che hanno accettato il compromesso
di qualche piccolo problemino in cambio della totale libertà.
48
Bibliograa
[09]
Andrew S.Tanenbaum-Moderni Sistemi Operativi
[13]
http://it.wikipedia.org/
[13]
http://en.wikipedia.org/
[1]
http://www.gnu.org/
[60]
http://www.linux.org/
[10]
http://www.gnu.org/licenses/gpl.html
[12]
http://en.wikipedia.org/wiki/Ubuntu_Touch
[19]
http://www.ubuntu-it.org/
[15]
http://www.mozilla.org/en-US/refox/partners/
[15]
http://refoxos.info/
[09]
http://wiki.openmoko.org/wiki/Main_Page
[11]
http://creativecommons.org/
[19]
http://developer.android.com/guide/components/index.html
[1] http://www.lamphowto.com/
[fsf ]
http://www.fsf.org/
[08]
http://www.androiditaly.com/
[93]
http://www.debian.org/doc/manuals/project-history/ch-releases.it.html
[00]
http://www.storiainformatica.it/index.php
[01]
http://it.redhat.com/about/company/history.html
49
Bibliograa
Copyright
Copyright
Orgest Shehaj
2013
Questa opera viene rilasciata sotto licenza
Creative Commons
che permette di modicare
e redistribuire il lavoro, mantenendo lo stesso tipo di licenza e citando le fonti. Non è consentito
l'uso commerciale.
50