Storia dei sistemi operativi - Università degli studi di Napoli
by user
Comments
Transcript
Storia dei sistemi operativi - Università degli studi di Napoli
S.I.C.S.I. Università degli studi di Napoli “Parthenope” Indirizzo Tecnologico Classe di abilitazione A042 - Informatica Storia dell’Informatica e del Calcolo Automatico Prof. Francesca Perla a.a. 2003/2004 1 Storia dei sistemi operativi Svolto da: Assunta Manzo Rosa Franzese Vincenzo Malafronte 2 Premessa La presente unità didattica si propone di analizzare e approfondire : La Storia dei Sistemi Operativi e di approfondire quella parte di storia che riguarda i sistemi che sono stati e sono più utilizzati. 3 Contenuti unità didattica Breve panoramica su che cos’è un sistema operativo e la sua utilità Storia dei Sistemi operativi attraverso una cronologia generazionale Approfondimenti storici sui sistemi Operativi che hanno fatto parlare di sé, sia per successo che per insuccesso. 4 Prerequisiti Per visionare tale unità didattica non occorrono conoscenze specifiche, ma si consiglia, magari: una lettura dell’informatica di base, in modo particolare la parte riguardante l’hardware una lettura della storia dei calcolatori, in questo modo si può evidenziare il parallelismo che esiste tra la storia dei calcolatori e quella dei sistemi operativi. 5 L'evoluzione dei sistemi operativi è stata spinta dal progresso tecnologico nel campo dell'hardware ha guidato il progresso tecnologico nel campo dell'hardware Perché analizzare la storia dei sistemi operativi? • Perché permette di capire l'origine di certe soluzioni presenti oggi nei moderni sistemi operativi • Perché è l'approccio didattico migliore per capire come certe idee si sono sviluppate • Perché alcune delle soluzioni più vecchie sono ancora utilizzate 6 Note Introduttive 7 Introduzione I primi calcolatori digitali furono pensati e realizzati per risolvere problemi di calcolo complesso, soprattutto in ambito scientifico. Via via che la tecnologia avanzava e diveniva possibile produrre più computer e a costi più bassi, veniva imponendosi la necessità di costruttori e produttori di software di diffondere il computer su larga scala, rendendone l’uso sempre più semplice, intuitivo e accattivante, passando dai sistemi a riga di comando a quelli grafici. 8 Introduzione Negli ultimi anni, infine, l’accresciuta velocità dei microprocessori e la maggiore capacità dei supporti di memorizzazione (con costi sempre in diminuzione) ha creato attorno all’universo dei sistemi operativi un’attesa crescente ed esigente di prodotti ricchi di funzionalità, anche se non sempre l’accattivante resa grafica è stata affiancata da una maggiore qualità. Attualmente lo scenario dei sistemi operativi vede Microsoft Windows (nelle sue varie versioni) dominare ampiamente, soprattutto nella fascia bassa di mercato (home e small office) con un’evidente crescita di Windows NT/2000 nel settore networking. 9 Introduzione Accanto a questi sistemi, che potremmo definire “di massa” per la loro vasta diffusione, esistono realtà “di nicchia”, ovvero sistemi meno noti ai più, che svolgono egregiamente il loro compito, ma che sono realizzati solo per architetture specifiche (Mac, SunSparc, Amiga, etc.) che hanno trovato una base di mercato meno ampia rispetto ai richiestissimi processori Intel compatibili. Sono comunque disponibili, per computer basati sulle architetture Intel-compatibili, delle solide realtà alternative a quelle spesso fornite dalle case produttrici insieme ai loro prodotti. Stiamo parlando di sistemi quali GNU/Linux, FreeBSD, OpenBSD, BeOS, QNX e altri. 10 Introduzione In questa lezione non esamineremo meriti o demeriti delle software-house che producono sistemi operativi, ma andremo solamente a sbirciare nella storia dei Sistemi Operativi e di come questi si siano evoluti e si siano imposti al mercato. 11 Generalità sul Sistema Operativo Il SOFTWARE si divide in : programmi applicativi Programmi di sistema {Office,photoshop,frontpage, etc..} Tra i programmi di sistema importante è il SISTEMA OPERATIVO { il più MS Dos,Windows,Unix,Linux, etc…. } Il termine Sistema operativo indicato anche con S.O viene 12 Sistema Operativo Che cos’è un Sistema operativo? Un sistema operativo è un insieme di programmi che corredano l’elaboratore, gestendone le risorse hardware e software. Controlla l’esecuzione dei lavori degli utenti e permette l’efficiente utilizzazione delle risorse dell’elaboratore; per risorse s'intendono i dispositivi hardware e software che concorrono all’elaborazione dell’informazione. 13 Sistema Operativo Realizza una duplice funzionalità : costituisce un’interfaccia tra la macchina e l’utente (supporto per l'utente) gestisce in modo ottimale le risorse del sistema (supporto per l'efficienza dell'elaboratore). 14 Sistema Operativo Il sistema operativo coordina le varie operazioni, stabilisce le priorità quando vi sono più richieste, sfrutta nel modo migliore le risorse. L’utente ha così l’impressione di avere la macchina a sua completa disposizione, anche se collegata in rete ed è sicuro di trovare la propria stampa anche se altri usano la stampante. Il compito del sistema operativo è quindi quello di portare la macchina all’utente, permettendo a questo di usarla in modo semplice, sicuro ed efficiente. 15 Sistema Operativo Un sistema operativo si compone di due insiemi di istruzioni: i comandi interni, che rimangono in memoria dopo il caricamento (boot) che segue l’accensione i comandi esterni, che vengono all’occorrenza su richiesta dell’utente. caricati solo 16 Sistema Operativo Il modo di operare di un sistema definisce i seguenti tipi di elaborazione: elaborazione a lotti (batch processing): più lavori vengono raccolti e presentati al sistema che li elabora in sequenza e ne fornisce i risultati relativi. Sono esempi il calcolo degli stipendi mensili del personale di un’azienda, l’elaborazione di dati sperimentali raccolti per un certo periodo. 17 Sistema Operativo elaborazione in tempo reale (real time processing): i dati su cui operano i programmi per ottenere risultati arrivano ininterrottamente e vengono elaborati istantaneamente influenzando eventualmente elaborazioni successive. Un esempio è il sistema di prenotazioni dei posti su linee aeree; la singola prenotazione infatti deve essere registrata dal sistema all’atto della richiesta in modo da poter fornire un quadro aggiornato dell’occupazione dei posti. Altri esempi sono il controllo dei processi industriali, il controllo delle traiettorie missilistiche, la gestione dei conti correnti bancari. 18 Sistema Operativo elaborazione in multi programmazione (multiprogramming): più lavori possono essere eseguiti contemporaneamente, la CPU può eseguire una alla volta nel tempo istruzioni di job diversi, permettendone uno sviluppo contemporaneo senza dover attendere il completamento di un lavoro prima di iniziarne un altro. 19 Sistema Operativo multielaborazione (multiprocessing): più lavori vengono elaborati simultaneamente mediante duplicazione di unità. Ad esempio più unità centrali possono operare in parallelo. 20 Sistema Operativo divisione di tempo (time sharing): il tempo di CPU è ripartito fra più utenti; più lavori possono essere elaborati simultaneamente ed ogni utente avrà la sensazione di essere l’unico utilizzatore del sistema. Il funzionamento in time sharing differisce dalla multiprogrammazione per il fatto che l’elaborazione rimane sempre sotto il controllo dell’utente e quindi esiste un colloquio utente-elaboratore, cioè c’è un rapporto interattivo o conversazionale. 21 Sistema Operativo Per quanto riguarda il tipo di accesso permesso all’utente al sistema di elaborazione possiamo distinguere in: accesso locale dei lavori: l’utente può accedere alle classiche unità di input-output poste nello stesso ambiente del sistema di elaborazione; accesso remoto: i lavori giungono al sistema da stazioni remote collegate. 22 Sistema Operativo: Modello 23 Sistema Operativo Definizione 1: Un sistema operativo è un programma che controlla l'esecuzione di programmi applicativi e agisce come interfaccia tra le applicazioni e l'hardware del calcolatore 24 Sistema Operativo Definizione 2 : Un Sistema Operativo può essere definito come un insieme di programmi indispensabili per utilizzare un Sistema di Elaborazione (computer) in modo semplice ed efficiente. 25 Sistema Operativo Obiettivi: Efficienza: Un S.O. cerca di utilizzare in modo efficiente le risorse del calcolatore Semplicità: Un sistema operativo dovrebbe semplificare l'utilizzazione dell'hardware di un calcolatore 26 Sistema Operativo Per questo un Sistema Operativo deve: 1. Mettere in grado l'utilizzatore (utente, operatore o programmatore) del computer di usufruire delle risorse disponibili in modo semplice e immediato 2. Gestire in modo ottimizzato le risorse a disposizione attuando le politiche di gestione opportune. 3. In ultima analisi, un Sistema Operativo può essere considerato come un insieme di programmi che costituisce un'interfaccia logica tra l'hardware (il computer) e l'utente per formare quella che viene chiamata "La Macchina Estesa". 27 Sistema Operativo Una delle prime interfacce a riga di comando Interfaccia grafica più evoluta L’utente interagisce con il S.O., per richiederne i servizi tramite una interfaccia o shell, che nel corso della storia si è sempre più evoluta, diventando una vera e propria interfaccia grafica. 28 Sistema Operativo Possiamo inoltre avere: sistemi operativi proprietari se usati solo su hardware appositi sistemi operativi non proprietari possono essere utilizzati anche su hardware diversi. Sullo stesso P.C. possiamo avere diversi S.O. 29 Sistema Operativo I S.O. moderni sono di solito su CD ROM e per essere utilizzati bisogna installarli sul disco rigido dal supporto di memorizzazione. Durante l’installazione o dopo si può configurare il sistema in base all’ hardware presente, ai programmi di utilità necessari e alle proprie preferenze. 30 Sistema Operativo N.B Una precisazione va fatta sui termini sistema operativo e software di base, che comunemente vengono usati come sinonimi, anche se esiste una certa differenza. Il sistema operativo è l’insieme dei programmi necessari al funzionamento della macchina; il software di base rappresenta tutto il corredo di software di cui un computer può essere dotato, comprendendo in particolare il sistema operativo stesso. 31 Tecnicamente possiamo dire che… Un generico sistema operativo moderno si compone di alcune parti ben definite: un gestore di file system che si occupa di esaudire le richieste di accesso alle memorie di massa, un gestore di memoria virtuale che alloca pagine di memoria a richiesta e si assicura che questa sia presente nella memoria fisica al momento giusto, uno scheduler che assicura ai vari processi in esecuzione una ben definita quantità di tempo di elaborazione, uno spooler che accumula i dati da stampare e li stampa in successione, una interfaccia utente (shell o GUI) che permette agli esseri umani di interagire con la macchina ed un kernel, fulcro del sistema, che gestisce il tutto. A seconda dei casi, un particolare sistema operativo può avere tutti questi componenti o solo alcuni. 32 Tecnicamente possiamo dire che… Inoltre un sistema operativo può essere: multitasking e multiutente. Multitasking significa che più lavori possono essere eseguiti contemporaneamente. Multiutente significa che il sistema riesce a gestire più utenti per volta. Un sistema può essere anche contemporaneamente multitasking e multiutente (es. Unix ) 33 Panoramica dei dispositivi che utilizzano S.O Esistono diversi dispositivi elettronici la cui complessità ha reso necessario dotarli di un sistema operativo. Tra questi, agende elettroniche e telefoni cellulari sono esempi comuni. La gestione dell’hardware è un aspetto di secondaria importanza per gli utenti di questi dispositivi. L’interfaccia ha una grande importanza. 34 L’evoluzione dei Sistemi Operativi 35 “Non c’è ragione per cui qualcuno possa volere un computer a casa sua.” (Ken Olson, fondatore di Digital, 1977) 36 Cronologia dei Sistemi Operativi Questa slide presenta una linea del tempo che va dalla nascita dei sistemi operativi avvenuta nel 1960 al 2004. •1961 •CTSS •1964 •OS/360 •1965 •Multics •OS/360 •Tape Operating System •1966 •MS/8 •1967 •CP/CMS •ITS •WAITS •1969 •ACP (IBM) •TENEX •Unix 37 Cronologia • • • • • dei Sistemi Operativi 1970 • DOS/BATCH 11 1971 • OS/8 1972 • MFT • MVT • RDOS • SVS • VM/CMS 1973 • Alto OS • RSX-11D • RT-11 • VME 1974 • MVS 38 Cronologia • • • • • dei Sistemi Operativi 1976 • CP/M • TOPS-20 1978 • Apple DOS 3.1 (Primo sistema operativo dell'Apple) • TRIPOS • VMS 1979 • Apple DOS 3.2 1980 • Apple DOS 3.3 • OS-9 • QDOS • SOS • XDE (Tajo) (Xerox Development Environment) • Xenix 1981 • MS-DOS 39 Cronologia • • • • dei Sistemi Operativi 1982 • SunOS (1.0) • Ultrix 1983 • Lisa OS • Coherent • ProDOS 1984 • Macintosh OS (System 1.0) • QNX • UniCOS 1985 • AmigaOS • Atari TOS • MIPS OS • Microsoft Windows 1.0 40 Cronologia • • • dei Sistemi Operativi 1986 • AIX • GS-OS • HP-UX 1987 • Arthur • IRIX (3.0 è la prima versione prodotta dall'SGI) • Minix • OS/2 (1.0) • Microsoft Windows 2.0 1988 • A/UX (Apple Computer) • LynxOS • MVS/ESA • OS/400 41 Cronologia • • • • • dei Sistemi Operativi 1989 • NeXTSTEP (1.0) • RISC OS • SCO Unix (release 3) 1990 • BeOS (v1) • OSF/1 1991 • Linux 1992 • Solaris (2.0 è la prima versione non chiamata SunOS) • Windows 3.1 1993 • Plan 9 • FreeBSD • NetBSD • Slackware Linux • Windows NT 3.1 (Prima versione di NT) 42 Cronologia • • • • • • dei Sistemi Operativi 1994 • Red Hat Linux 1995 • Digital Unix (detto anche Tru64 ) • OpenBSD • OS/390 • Windows 95 1996 • Debian GNU/Linux (Debian 1.1) (http://www.debian.org/doc/manuals/project-history/) 1997 • Mac OS 7.6 (Primo sistema operativo ufficialmente chiamato Mac OS) 1998 • Windows 98 1999 • Mac OS 8 43 Cronologia • • • • dei Sistemi Operativi 2000 • AtheOS • Mac OS 9 • Windows 2000 • Windows ME 2001 • Mac OS X • Windows XP • z/OS 2002 • Syllable 2003 • Windows Server 2003 44 Percorso generazionale dei Sistemi Operativi L'evoluzione delle ARCHITETTURE DEI CALCOLATORI segna anche l'evoluzione dei SISTEMI OPERATIVI 45 Percorso generazionale dei Sistemi Operativi Generazione 0 : 1792 – 1881 Computer di C. Babbage Generazione 1: 1945 - 1955 valvole e tavole di commutazione Generazione 2: 1955 - 1965 transistor e sistemi batch Generazione 3: 1965 – 1980 circuiti sharing integrati, multiprogrammazione e time- Generazione 4: 1980 – oggi personal computer 46 Generazione 0 : 1792 - 1881 Il primo computer fu progettato dal matematico inglese Charels Babbage (17921881), che, però non potè mai costruirlo per la tecnologia non adeguata dell'epoca. Babbage capì che avrebbe avuto bisogno di "un programma" per far funzionare il computer e per questo assunse una certa Ada Lovelace,( figlia del poeta Lord Byron ) la "prima programmatrice", che ha dato il nome al linguaggio di programmazione ADA. 47 Prima Generazione (1945-55) - Valvole e Pannelli I primi computer sfruttavano la tecnologia a valvole ed anche se erano poco potenti ed affidabili, erano di dimensioni enormi e potevano occupare intere stanze. Un team di specialisti costruiva, manteneva e programmava (in linguaggio macchina, per intendersi solo 1 e 0 ) la macchina; non c'era sistema operativo e nemmeno l'assembler, bisognava eseguire un programma per volta (generalmente tabelle matematiche) sotto la supervisione del programmatore. 48 Prima Generazione (1945-55) - Valvole e Pannelli Principali problemi: 1. 2. 3. 4. grossi problemi di affidabilità (guasti frequenti) rigidità nell'assegnazione dei ruoli; non esiste il concetto di programmatore come entità separata dal costruttore di computer e dall'utente utilizzazione lenta e complessa; l'operatore doveva: 1. 2. 3. 4. 5. 5. caricare il programma da eseguire inserire i dati di input eseguire il programma attendere il risultato ricominciare dal punto 1. tutto ciò a causa dell'assenza del sistema operativo 49 Seconda Generazione (1955-65) – Transistor e sistemi batch Primo Transistor Con l'introduzione dei transistor negli anni cinquanta la situazione cambiò radicalmente. Infatti i computer iniziarono ad essere prodotti in serie per poterci lavorare. Si ebbe così la prima divisione tra coloro che progettavano l'hardware e quelli che, invece, scrivevano e mantenevano il software. Queste macchine, chiamate Mainframe, erano grosse e costose e venivano usate soprattutto nelle istituzioni quali banche, università, etc. Permettevano di usare i linguaggi di programmazione quali il Fortran e l'Assembler. 50 Seconda Generazione (1955-65) – Transistor e sistemi batch Inizialmente per poter eseguire dei programmi (o come venivano chiamati job), un programmatore doveva scrivere il proprio programma su carta, trasferirlo su schede, caricarlo nel computer, aspettare che il computer avesse eseguito il calcolo e quindi stampare il risultato. Esempio di scheda perforata 51 Seconda Generazione (1955-65) – Transistor e sistemi batch Tale operazione era molto dispendiosa in fattori di tempo, è per questo che si adottò la soluzione del sistema batch (a lotti). L'idea di base era quella di dividere i tre lavori, ovvero: il caricamento dei dati, il calcolo la stampa. Fu così che per il caricamento dei dati e la stampa vennero usati gli IBM 1401, i quali utilizzavano per comunicare delle cassette; per il calcolo venne impiegata, invece una macchina più potente e costosa, l'IBM 7094. In questo modo i tre compiti erano suddivisi e si potevano ottimizzare i tempi di utilizzo dei pc. Ma questa generazione di computer venne usata principalmente in ambito scientifico ed ingegneristico ed i primi sistemi operativi (ovviamente ancora rudimentali) usati furono l'FMS (Fortran Monitor System) e l'IBSYS, detti anche sistemi batch ("infornata"). 52 Seconda Generazione (1955-65) – Transistor e sistemi batch 53 Seconda Generazione (1955-65) – Transistor e sistemi batch Principali problemi: Molte risorse restavano inutilizzate: • durante le operazioni di lettura schede / stampa, • durante il caricamento di un nuovo job, il processore restava inutilizzato • parte della memoria restava inutilizzata Primo miglioramento (ma non una soluzione) • caricamento di numerosi job su nastro (off-line) • elaborazione (output su nastro) • stampa del nastro di output (off-line) 54 Seconda Generazione (1955-65) – Transistor e sistemi batch Riassumendo, in questa generazione troviamo: 1. una netta separazione tra costruttori, operatori e programmatori, infatti: 2. 3. 4. il programmatore scrive (su carta) un programma in un linguaggio ad alto livello, perfora una serie di schede con il programma e il suo input e consegna le schede ad un operatore. l'operatore inserisce le schede di controllo,inserisce le schede del programma, attende il risultato e lo consegna al programmatore. Utilizzo di schede perforate. Utilizzo di linguaggi di programmazione : Fortran e Assembly Utilizzo di Sistemi operativi batch 55 Seconda Generazione (1955-65) – Transistor e sistemi batch 56 Terza Generazione (1965-1980) – Circuiti Integrati e multiprogrammazione Primo Chip Negli anni sessanta ci fu il problema di mantenere due produzioni di prodotti, l'IBM 1401 e l'IBM 7094, la cui manutenzione risultava troppo costosa. Per questo motivo fu prodotto il System/360, un prodotto che poteva sostituire (e migliorare) le funzionalità dei due prodotti precedenti, ed inoltre poteva servire sia per applicazioni scientifiche sia commerciali. Il 360 utilizzava gli IC (Integrated Circuit) che offrivano un miglior rapporto prezzo/prestazioni e utilizzava il sistema operativo OS/360 il quale poteva sia eseguire numerosi processi di I/O (come il 1401) sia eseguire difficili compiti computazionali (come il 7094). 57 Terza Generazione (1965-1980) – Circuiti Integrati e multiprogrammazione • L'OS/360 venne implementato anche nei computer successivi i quali erano, tra loro, tutti compatibili; lo svantaggio era che i sistemi operativi stavano diventando di dimensioni mastodontiche. • Ma i vantaggi apportati nel campo furono notevoli, grazie alla multiprogrammazione, che permetteva al computer di eseguire più job conteporaneamente ottimizzando l'uso della CPU, ed allo spooling (Simultaneous Peripheral Operation On Line), usato per mettere l'output in sequenza e mandarlo quindi ai dispositivi. • Per evitare che i programmatori aspettassero ore prima di sapere il risultato di un programma, il M.I.T. sviluppò il concetto di timesharing (con il CTSS - Compatible Time Sharing System), ovvero una serie di computer collegati che sfruttavano la CPU in base alle richieste "reali", ottimizzando in questo modo il lavoro stesso. 58 Terza Generazione (1965-1980) – Circuiti Integrati e multiprogrammazione • Successivamente il M.I.T., con la Bell Labs e la General Electric sviluppò il progetto MULTICS (MULTiplexed Information and Computing Service) che doveva collegare tra loro dei server con dei terminali, permettendo quindi a costi ridotti di accedere a dei servizi che fino a qualche hanno prima costavano milioni di dollari. • Così come la macchina di Babbage, non c'erano i presupposti, il MULTICS fu un mezzo flop, ma pose delle ottime basi teoriche per i sistemi operativi futuri. 59 Terza Generazione (1965-1980) – Circuiti Integrati e multiprogrammazione Infatti un dipendente della Bell Labs, Ken Thompson, sviluppò una versione ad "un-utente" del MULTICS ed è così che nacque UNIX. Molte varianti di UNIX si sono sviluppate, come il System V, BSD (Berkley Software Distribution), Minix (usato in ambito didattico) e successivamente (sulla base di MINIX e UNIX) l'ormai famosissimo Linux dello studente finlandese Linus Torvalds. Ad oggi i sistemi operativi UNIX offrono una compatibilità di base necessaria a non stroncarne lo sviluppo. 60 Terza Generazione (1965-1980) – Circuiti Integrati e multiprogrammazione Quindi in questa generazione i sistemi operativi non erano più batch, ma iterattivi, multiprogrammazione e time sharing, venivano programmati con linguaggi ad alto livello come C,shell scripting e possedevano editor testuali e editor grafici 61 Terza Generazione (1965-1980) – Circuiti Integrati e multiprogrammazione Vantaggi • Il processore non viene lasciato inattivo (idle) durante operazioni di I/O molto lunghe • la memoria viene utilizzata al meglio, caricando il maggior numero di job possibili. 62 Quarta Generazione (1980-oggi) – Microprocessori-Personal Computer Microprocessori I punti chiave importanti che troviamo in questa generazione sono: I personal computer sono dedicati a singoli utenti L’obiettivo primario diventa la facilità d’uso Essendo dedicati a singoli utenti, i sistemi operativi per PC sono in generale più semplici Tecnologie a finestre 63 Quarta Generazione (1980-oggi) – Microprocessori-Personal Computer Dagli anni 80 ad oggi abbiamo assistito ad un crescente miglioramento dei sistemi operativi e finalmente si può dire che il versante del software sembra aver raggiunto quello dell’hardware I sistemi operativi sfruttano le nuove istruzioni dei microprocessori, sono compatibili con tutto l’hardware disponibile e rendono il lavoro molto più facile ed efficiente. In questo periodo di tempo si sono susseguiti molti sistemi operativi, (non sono mancate le polemiche legati ad essi e ai monopoli) primo tra tutti il CP/M (Control Program for Microcomputers), il cui autore fondò la Digital Research. 64 Quarta Generazione (1980-oggi) – Microprocessori-Personal Computer In seguito si affacciò sulla scena il DOS, comprato dalla Microsoft e rivenduto all'IBM con il nome MS-DOS. Un po' di tempo dopo un certo Doug Engelbart inventò la GUI (Graphical User Interface) che venne adottata dalla Xerox e poi ceduta alla Apple per creare, prima il Lisa, poi il Macintosh 65 Quarta Generazione (1980-oggi) – Microprocessori- Personal Computer Sul successo della Apple, la Microsoft decise di sviluppare un'interfaccia grafica per il DOS, dando così vita al Windows; se le prime versioni di Windows non erano veri e propri sistemi operativi (fino al Win 3.11), con l'uscita di Windows 95, Microsoft si afferma come leader mondiale nei sistemi operativi. Prima dell'uscita della versione successiva, Windows 98, venne sviluppato Windows NT. L'attuale evoluzione di Windows 98 è il Windows ME (Millenium), mentre NT è sviluppato in Windows 2000. Ad oggi è disponibile, invece, Windows XP, sia per l'utenza domestica che professionale. 66 Quarta Generazione (1980-oggi) – Microprocessori- Personal Computer Sull'altro versante i sistemi operativi come Unix e Linux hanno continuato a crescere e implementano un'interfaccia grafica (molto simile a quella di Windows) chiamata X Windows. Altri sistemi operativi da menzionare sono il BeOS il quale è, ormai, completamente abbandonato a se stesso ed il QNX, sistema operativo real-time intenzionato a conquistare ampie fette di mercato. Finalmente oggi possiamo dire che un moderno sistema operativo è quindi perfettamente aderente alla definizione data in qualche slide precedente cioè: costituisce un’interfaccia tra la macchina e l’utente, (rendendo quest’ultimo in grado di operare in modo semplice, efficiente e sicuro) e gestisce in modo ottimale le risorse, sfruttando il parallelismo esistente tra i vari sottoinsiemi e le ultime innovazioni tecnologiche. 67 Quarta Generazione (1980-oggi) – Microprocessori- Personal Computer Classificazione dei Computer e dei loro Sistemi Operativi: Mainframe Al livello più alto ci sono i sistemi operativi per i mainframe, enormi computer con una elevata capacità di I/O; basti pensare che un mainframe con 1000 dischi e migliaia di Gigabyte non è affatto inusuale. Vengono ancora usati come server per internet, per grosse compagnie o per transazioni commerciali. I sistemi operativi per mainframe devono poter eseguire moltissimi job alla volta. Un esempio di sistema operativo per mainframe è l'OS/390, l'evoluzione dell'OS/360. Server Scendendo troviamo i sistemi operativi per i server, che possono spaziare da grandi personal computer, workstation fino ai mainframe. Il sistema operativo deve poter permettere agli utenti di condividere risorse hardware e software, come ad esempio un Web Server contenente delle pagine web. I sistemi operativi presenti in questa categoria sono UNIX, Windows 2000 (ed anche Windows XP) e Linux. 68 Quarta Generazione (1980-oggi) – Microprocessori-Personal Computer Multiprocessore Alcune compagnie ed università connettono più CPU in parallelo per aumentare la potenza di calcolo. Questi computer generalmente necessitano di particolari sistemi operativi, ma spesso non sono altro che varianti dei sistemi operativi server con particolari funzioni per la comunicazione e la connettività. Personal Computer Un sistema operativo per personal computer deve offrire ad un utente un'interfaccia gradevole e delle funzionalità come un wordprocessor ed un accesso ad internet. I sistemi operativi in questa categoria sono Windows 98, Windows 2000, Windows XP, Macintosh e Linux. 69 Approfondimento storico di alcuni Sistemi operativi 70 Storia del MS-DOS 71 Cos’è MS-DOS? MS-DOS è il sistema operativo, prodotto da Microsoft, che fu abbinato al primo PC IBM. Il nome deriva dalle iniziali della Microsoft, cioè MS, mentre DOS significa Disk Operating System. Dalla sua prima uscita, nel 1981, ad oggi, l’MS-DOS ha subito un’evoluzione profonda, concretizzata nelle diverse versioni rilasciate dalla Microsoft. Questo sistema operativo ha due compiti principali: la gestione dell’interfaccia utente la gestione delle risorse. Entrambe sono state fortemente influenzate nel corso degli anni sia dal progresso tecnologico, sia dall’evoluzione delle teorie di gestione. I personal, ai quali l’MS-DOS si rivolge, pur conservando le loro caratteristiche di base, in un decennio sono cambiati profondamente. 72 Cos’è MS-DOS? I PC si sono arricchiti di nuovi dispositivi come il disco fisso, che in principio non era previsto, le memorie e i processori sono diventati a ritmo vertiginoso sempre più veloci e il PC si è dovuto adattare ad interfacciarsi con le strumentazioni più disparate. L'interfaccia standard di MS-DOS era una shell (chiamata command), come su tutti i sistemi dell'epoca. Interfaccia utente del MS-DOS 73 Cos’è MS-DOS? La riduzione dei prezzi e l’aumento delle prestazioni ha permesso la diffusione del PC nelle case di una massa enorme di utenti. Per questo, se un sistema deve essere accessibile ad un vasto pubblico, spesso digiuno anche delle minime nozioni informatiche, è necessaria un’interfaccia evoluta e semplice, ma contemporaneamente anche in grado di sfruttare le potenti risorse dei nuovi PC. 74 MS-DOS Nel 1979, la compagnia americana 'Seattle Computer Products' realizzò una scheda con processore 8086 per il bus S-100. Una delle prime di queste schede fu a disposizione della Microsoft. Questa piccola compagnia era conosciuta per il loro BASIC per CP/M . Circa due settimane dopo, alla conferenza nazionale di computer a New York, mostrarono una versione di BASIC per processori 8086. Nel Novembre del 1979 la vendita delle schede cominciò. Seattle Computer Products era in attesa che la Digital Research rilasciasse una nuova versione del loro sistema operativo CP/M. Dopo sei mesi di attesa la versione del nuovo CP/M non era in vista, così Seattle decise nell'Aprile del 1980 di realizzare il suo sistema operativo. Nell'Agosto del 1980 Seattle iniziò la vendita della prima versione del suo sistema operativo chiamato 'QDOS V0.10'. Era veloce è grezzo (dirty), ma funzionava. 75 MS-DOS Intorno all'Ottobre 1980, IBM cominciò a cercare nel mercato un sistema operativo per il nuovo PC-IBM. Essa inizialmente cercò di usare il CP/M della Digital Reseach, il sistema operativo industriale standard di allora, a quei tempi potevi lanciare un BASIC con funzioni per il disco, il sistema operativo di qualcun'altro o il CP/M. Ci sono varie storie popolari che raccontano gli attriti tra DR e IBM. La storia più popolare narra che Gary Kildall o DR ha snobbato gli esecutivi della IBM volando con il suo areoplano il giorno in cui avevano fissato l'appuntamento. Un'altra storia narra che Kildall non ha voluto rilasciare il sorgente del CP/M alla IBM, tuttavia lo aveva sempre fornito alle altre compagnie. Una affermata industria molto attendibile afferma che la moglie di Kildall ha rovinato l'affare insistendo su vari cambiamenti da applicare al contratto. 76 MS-DOS L'IBM allora si recò dalla Microsoft. Questi erano dei fornitori di linguaggi. Bill Gates e Paul Allen avevano scritto dei BASIC e li vendevano su nastri perforati o dischi. Microsoft non aveva sistemi operativi per 8086 da vendere, tuttavia molto velocemente si accordò con la 'Seattle Computer Products' per dare in licenza la nuova versione del 86-DOS V0.30 (QDOS fu rinominato in 86-DOS) alla IBM. 77 MS-DOS L'86-DOS V0.30 era approssimativamente composto da 4000 linee di codice. Questo codice fu rapidamente ripulito e presentato alla IBM per essere valutato. La IBM stessa si trovò disponibile verso l'offerta del "Microsoft Disk Operating System 1.0" da parte della Microsoft. Un accordo fu raggiunto tra i due, IBM accettò l'86-DOS come il principale sistema operativo per i loro nuovi PC. Microsoft comprò tutti i diritti del 86-DOS nel Luglio 1981 (orami giunto nella versione 1.0 rilasciata dalla Seattle nell'Aprile del 1981) e "IBM personal Computer DOS 1.0" fu pronto per la data di introduzione dei PC nel mercato nell'Ottobre 1981. 78 MS-DOS IBM sottopose il sistema operativo ad un programma intensivo per assicurarne la qualità, furono trovati oltre 300 bugs e decisero di riscrivere i programmi. Questo è il motivo per cui PC-DOS è proprietà sia di IBM che di Microsoft. Alcune successive versioni del DOS avevano differenti nomi, tipo CompaqDOS, Z-DOS, Software Bus86, etc,. Dalla versione 2.0 Microsoft ha manovrato tutti tranne IBM a riferirsi al prodotto come "MS-DOS". 79 MS-DOS IBM non fornì il DOS come prodotto a se stante fino a quando la seconda generazione AT/339 fu commercializzata (PC-DOS 1.1 = MS-DOS 1.24). Per gli IBM venduti senza sistema operativo potevi ordinare uno tra i disponibili di allora, nell'ipotesi che che avevi il disk drive opzionale e l'espansione di memoria di 64K ( il modello base aveva 16K ed il connettore per il registratore a cassette). Questi sistemi operativi erano IBM Personal Computer DOS 1.0 CP/M-86 della Digital Research. Fin quando il DOS da $35.95 era l'alternativa più economica alle altre scelte tutti quanti lo comprarono. 80 MS-DOS La prima versione acquistabile del MSDOS è la V1.25 distribuita nel Luglio 1982. Microsoft vendette questa versione a tutti i produttori di computers che mostravano interesse. La versione V1.25 è la stessa cosa del PC-DOS V1.10 ed MS-DOS V1.24. Il sistema operativo che la Microsoft offri alla IBM si chiamava MS-DOS 1.0, esso non fu mai distribuito al pubblico. 81 Cronologia dello sviluppo del sistema MS-DOS 0.1 QDOS Agosto 1980 Realizzato dalla Seattle Computer. 0.3 86-DOS Dicembre 1980 Realizzato dalla Seattle Computer. 1.0 86-DOS Aprile 1981 Realizzato dalla Seattle Computer. 1.00 PC-DOS Agosto 1981 Primo rilascio della IBM Basilarmente ha le stesse funzioni del 86-DOS 82 Cronologia dello sviluppo del sistema MS DOS 1.05 PC-DOS Versione interna alla IBM. 1.10 PC-DOS Giugno 1982 Correzione di alcuni Bugs Supporto per i floppy drive a doppia faccia. 1.24 MS-DOS Giugno 1982 Come il PC-DOS v1.10. 1.25 MS-DOS Luglio 1982 Come il PC-DOS v1.10, è il primo rilascio non-IBM del DOS La storia del MS-DOS comincia da qui, con il rilascio della versione 1.25. 83 Cronologia dello sviluppo del sistema MS DOS 2.00 PC-DOS Marzo 1983 Per PC/XT Supporto per subdirectory tipo Unix Device drivers installabili Ridirezione dell'I/O Supporto per il disco fisso Gestione dei file tramite handle 1.85 PC-DOS Aprile 1983 Versione interna alla IBM , estende la v1.10. 2.01 MS-DOS Maggio 1983 Primo supporto per formati di contea differenti. 2.10 PC-DOS Ottobre 1983 Per IBM PCjr Corretti i Bugs della 2.0. 84 Cronologia dello sviluppo del sistema MS DOS 2.11 MS-DOS Dicembre 1983 Basilarmente un incrocio tra PC-DOS 2.10 e MS-DOS 2.01 2.12 MS-DOS - 1983 Versione Speciale per TI pro 3.00 PC-DOS Agosto 1984 Floppy da 1,2 MB Nuove chiamate di sistema Nuovi programmi esterni 16-bit FAT Supporto specifico per le reti IBM 3.05 MS-DOS Novembre 1984 Primo rilascio Non-IBM della versione 3.x 85 Cronologia dello sviluppo del sistema MS DOS 3.10 PC-DOS Novembre 1984 Corretti gli errori della 3.0 Implementato il supporto per le reti. 2.25 MS-DOS Ottobre 1985 Esteso il supporto per le lingue straniere. 3.20 PC-DOS Gennaio 1986 supporto per i floppy da 720KB XCOPY Diverse versioni nazionalizzate rilasciate per entrambi MS-DOS e PC-DOS. 4.00 MS-DOS Aprile 1986 Multitasking (Solo per l'Europa) Ritirato dal mercato dopo brevissimo tempo. 86 Cronologia dello sviluppo del sistema MS DOS 3.30 PC-DOS Aprile 1987 per PS/2 series Supporto per floppy da 1.44 Supporto per multiple partizioni DOS Migliorato il supporto per le lingue straniere Nuove chiamate di sistema 3.31 MS-DOS Novembre 1987 Supporto per le partizioni superiori a 32 Mb 3.40 PC-DOS - 1988 Versione interna alla IBM - non rilasciata 87 Cronologia dello sviluppo del sistema MS DOS PC-DOS 4.0 - Agosto 1988 Limite di dimensione di 32 MB per le partizioni degli hard disk ufficialmente superato. l'introduzione per il supporto di dischi con capacità maggiore di 32 Mb, con conseguente riorganizzazione della struttura con cui i dati erano posti sul disco stesso, sconvolse un po' tutti. Erano numerosi i programmi che accedevano direttamente alla struttura del disco. Sebbene questo non sarebbe mai dovuto accadere, è compito del sistema operativo occuparsi delle funzioni a basso livello Aggiunte altre chiamate di sistema Supporto di rete migliorato per alcuni comandi esterni Abbandonato il PCjr 88 Cronologia dello sviluppo del sistema MS DOS 4.01 MS-DOS Dicembre 1988 Versione Micro$oft con alcune correzioni. In realtà la versione 4.01 correggeva numerosi bugs presenti nella 4.00. Questa era così instabile che costrinse la Microsoft a lavorare duro per poter fornire questa 4.01 dopo soli 4 mesi. La versione corretta di questo rilascio doveva essere 5.0 MS-DOS 5.0 - Giugno 1991 Possibilità di usare fino a 8 hard disk Supporto ai floppy da 2,88KB Versione decisamente più stabile e robusta delle precedenti. 89 Cronologia dello sviluppo del sistema MS DOS V MS-DOS Febbraio 1993 Versione di MS-DOS 5.0 per il mercato Giapponese MS-DOS 6.0 - Marzo 1993 Compressione del disco Configurazioni multiple in AUTOEXEC.BAT e CONFIG.SYS 90 Cronologia dello sviluppo del sistema MS DOS MS-DOS 6.20 - Settembre 1993 Doublespace riscritto, per perdite di dati che occasionalmente causava. MS-DOS 6.22 - Maggio 1994 Nuovo software di compressione del disco (Drivespace) Ultima versione di DOS standalone MS-DOS 7.0 - Agosto 1995 incorporata in Windows 95 91 Cloni di MS-DOS: DR-DOS Il DR-DOS è un clone software del sistema operativo MS-DOS, di cui è compatibile con la versione 6.22. Sviluppato dalla Digital Research nel 1987; nei primi anni '90 venne acquistato da Novell, che lo cedette a Caldera nel 1996. Quest'ultima, dopo varie vicende legali contro Microsoft, decide di rilasciarlo gratuitamente per uso privato con il nome di Caldera OpenDOS. Ceduto successivamente alla Lineo, una consociata della Canopy, venne modificato per farne un sistema operativo per sistemi embedded: nel 2002 viene ceduto alla DeviceLogics che ne continua lo sviluppo in questo senso, e attualmente ne commercializza la versione 8.0. Attualmente la versione di DR-DOS disponibile gratuitamente è la 7.03, ed è multitasking. 92 Cloni di MS-DOS: FreeDOS FreeDOS è un progetto che mira a produrre un sistema operativo open source completamente compatibile con il vecchio MS-DOS. Scopo del progetto è anche la rivitalizzazione di vecchi computer che potrebbero ancora funzionare egregiamente con un sistema operativo molto leggero e dinamico. Il progetto è nato il 28 giugno 1994 con il nome di PD-DOS per opera di Jim Hall quando capì che, esistendo già diversi programmi in grado di sostituire gli originali comandi di MS-DOS, sarebbe stato possibile riprodurre un sistema completo. Il 24 luglio 1994 il nome venne cambiato in Free-DOS. Nel giro di breve tempo il progetto attirò un buon numero di contributori. Nel 1996 il entrò nell'uso scrivere FreeDOS invece che Free-DOS. 93 Storia di Windows 94 Windows Microsoft Corporation iniziò lo sviluppo di Windows, che allora si chiamava Interface Manager, nel settembre 1981, mentre la Apple rilasciava già un sistema operativo grafico per il suo Lisa (il precursore dei Macintosh). L'annuncio ufficiale venne dato nel novembre 1983, promettendo un'interfaccia facile da usare, con il supporto del multitasking. Il rilascio fu però posticipato diverse volte e solo dopo due anni di attesa la prima versione, la 1.0, fu disponibile sul mercato. Le applicazioni disponibili erano così poche che MS incassò un duro colpo. 95 Windows Una delle prime interfacce di Windows Ver.1.01 96 Windows Negli anni successivi furono studiati miglioramenti che potessero rendere ancor più interessante il prodotto, e fu necessario includere dei driver che consentissero di utilizzare differenti tipi di hardware (monitor, stampanti, ecc.). Il primo passo venne compiuto nel novembre 1987, con la commercializzazione della versione 2.0. 97 Windows 2.0 e 2.1 Nel novembre 1987 esce la versione 2.0 e a fine 1988 è disponibile la 2.1 (meglio note rispettivamente, poi, come Windows/286 e Windows/386). I miglioramenti introdotti nella 2.0 consistono nella nascita del DDE (Dynamic Data Exchange), soluzione in grado di facilitare le comunicazioni fra applicativi diversi. Finalmente si può scegliere tra finestre affiancate oppure sovrapposte e lo standard SAA (System Application Architecture) rende le applicazioni più simili tra loro, facilitando l'apprendimento. 98 Windows 2.0 e 2.1 In questo periodo si incominciano ad utilizzare dei computer AT (Processore Intel 80286) con hard disk da 10-20 MB e a sfruttare tutti i 640 K di RAM del DOS. Le prestazioni risultano sempre molto limitate La versione Windows/286 è in grado di utilizzare 64K di memoria estesa. In questo modo si superava il limite di 640K del DOS; ciò in aggiunta alla disponibilità della specifica LIM EMS 4.0 (Lotus.Intel-Microsoft Expandede Memory Specification) consentiva un miglior utilizzo della memoria. La versione Windows/386 richiedeva l'utilizzo dei nuovi processori 386 con bus dati a 32 bit, ma offriva ulteriori incrementi di velocità e potenza. 99 Windows 2.0 e 2.1 100 Windows 3.0 La comparsa di Windows 3.0 nel maggio del 1990 segna un momento storico: l'aspetto friendly (amichevole) e le icone del nuovo Program Manager sono molto gradite e la flessibilità è grande. La 3.0 fu la prima versione di Windows che ebbe un largo successo, permettendo a Microsoft di competere con il computer Apple Macintosh e Commodore Amiga sul fronte dell'interfaccia grafica (GUI). 101 Windows 3.0 La versione 3.0 includeva una interfaccia utente riorganizzata, assieme ad a miglioramenti tecnici per permettere l'uso delle capacità dei processori Intel 80286 e 80386. I programmi che non facevano uso dell'interfaccia grafica potevano essere eseguiti in una finestra, rendendo il sistema utilizzabile come una grezza piattaforma multitasking per le applicazioni legacy. Il Program launcher e il file manager del DOS furono sostituiti con gli equivalenti a icone e venne introdotto un pannello di controllo, che includeva una limitata gestione dello schema di colore dell'interfaccia. Era inclusa una limitata quantità di applicazioni, come: un semplice editor di testo (Notepad) un Word Processor (Write) un gestore di macro una calcolatrice. 102 Windows 3.0 103 Windows 3.1 Windows 3.1 nel 1992 completa l'opera, migliorando tutti i tipi di supporto (reti,stampanti, ecc.), velocizzando il File Manager e aprendo la via ai programmi multimediali. Anche i messaggi "Errore dell'applicazione irreversibile“ diminuiscono o sono comunque ben spiegati tramite i nuovi servizi API (Application Programming Interface). 104 Windows 3.1 105 Windows 3.x L'implementazione del protocollo TCP/IP sotto Windows 3.x faceva affidamento su pacchetti di terzi. Un'altra soluzione era l'aggiornamento a Windows for Workgroups Windows 3.2 fu solo una versione per la lingua cinese Windows 3.x fu infine sostituito prima da Windows 95 e poi da Windows 98, che integrarono le componenti MS-DOS e Windows in un unico prodotto. 106 Windows 95 Windows 95 (chiamato in codice Chicago) è un sistema operativo a interfaccia grafica per processori Intel 80386 e superiori, rilasciato il 24 agosto 1995 da Microsoft. 107 Windows 95 Le novità introdotte da Windows 95 sono molteplici e sostanziali tanto da poter parlare di un prodotto nuovo rispetto alle versioni precedenti. Tra le molteplici caratteristiche della nuova architettura, la più rilevante è senza dubbio il fatto che Windows 95 è un vero e proprio sistema operativo a 32 bit. Ciò significa la possibilità di sfruttare a pieno la velocità e le capacità di indirizzamento dei processori Intel 32 bit (80386, 80486 e Pentium). 108 Windows 95 109 Windows 95 Come secondo aspetto, ma non meno importante, la nuova implementazione interna di Windows 95 chiude finalmente il capitolo MS-DOS; siamo infatti di fronte ad un sistema integrato, nel senso che la vecchia dualità tra MS DOS e Windows con tutte le problematiche connesse (acquisto e installazione separata, coesistenza difficile dei due mondi) è ormai solo un ricordo: l'utente dopo l'avvio macchina si trova direttamente a livello di interfaccia grafica. Altra grande novità rispetto alle versioni precedenti è la funzione Plug and Play (PnP) che ha reso molto più semplice l'installazione e la configurazione di nuovi dispositivi hardware. 110 Windows 95 L'installazione di nuove periferiche hardware con le vecchie versioni di DOS e Windows non era un compito facile, soprattutto per l'utente medio che ha una conoscenza limitata del funzionamento dei computer. Ogni componente necessita di accedere a risorse di sistema come IRQ e canali DMA, del tutto sconosciute alla maggior parte degli utenti, e l'errata configurazione di un componente può portare a conflitti che provocano il cattivo funzionamento del sistema. IRQ sta per Interrup ReQuest line (Linea di richiesta di interrup); molte periferiche utilizzano un IRQ per segnalare alla CPU che necessitano del suo controllo. DMA sta per Direct Memory Access (Accesso diretto alla memoria), e molte periferiche utilizzano canali DMA per accedere alla memoria direttamente, anziché attraverso la CPU. 111 Windows 95 La specifica Plug and Play si propone cinque obbiettivi fondamentali: 1. Facilitare l'installazione e la configurazione di nuovi dispositivi; 2. Intraprendere in modo dinamico modifiche alla configurazione; 3. Mantenere l'indipendenza dal sistema operativo e dall'hardware; 4. Garantire la compatibilità con l'hardware esistente; 5. Aumentare la flessibilità senza aumentare la complessità. 112 Windows 95 Per consentire tutti questi obbiettivi è indispensabile la collaborazione tra produttori hardware, progettisti BIOS e programmatori di sistemi operativi. Il concetto di Plug and Play è stato formalizzato nel marzo 1993 alla Windows Hardware Conference da Microsoft, Intel e Compaq. Le specifiche Plug and Play per BIOS, APM, ISA, SCSI,LPT, COM, ESCD, PCI, PCMCIA, VL E VESA DDC sono state completate e rese disponibili ai produttori di hardware. Queste specifiche sono state ottenute mediante un lavoro di interscambio di notizie svoltosi su Compuserve. Il Plug and Play è parte integrante dell'accordo dei produttori di PC per l'anno 1995. 113 Windows 95 Lo standard Plug and Play rende molto più semplice l'installazione di nuove periferiche, poiché in questo caso esse vengono configurate automaticamente da Windows. Per i dispositivi interni, si deve ancora aprire il computer e installare fisicamente la periferica, ma poi è sufficiente lanciare la procedura automatica di installazione hardware dal pannello di controllo. Windows riconosce il nuovo dispositivo hardware e lo configura automaticamente assegnando il canale DMA e l'IRQ appropriato, ed effettuando tutte le impostazioni in modo che non si verifichino conflitti con altre periferiche installate nel sistema. 114 Windows 95 Windows 95 è il capostipite della famiglia di sistemi operativi a cui siamo abituati: ha introdotto il menu "Start", la "Barra delle applicazioni", il desktop come area operativa e tutta una serie di tecnologie che utilizziamo ancora oggi, anche se perfezionate e rese più semplici. Desktop 115 Windows 95 Un’ altra Importante novità é la possibilità di dare nomi lunghi (255 caratteri) ai file, che possono contenere spazi, lettere maiuscole e simboli strani. Le icone che rappresentano documenti, cartelle o programmi possono essere manipolate, per copiarli, cancellarli o spostarli. Per cancellare un documento, ad esempio, basterà trascinare la sua icona sul cestino; per recuperarlo basterà scegliere "ripristina" dal cestino oppure per eliminarlo definitivamente e recuperare lo spazio sul disco fisso l’opzione è "svuota cestino". La guida in linea è più ricca di quella della versione precedente. 116 Windows 95 Il Sistema fornisce anche delle utility come: BACKUP per l’archiviazione dei dati SCANDISK per analizzare e riparare malfunzionamenti sulle unità disco DEFRAG per ottimizzare l’accesso ai dati riducendo i tempi di attesa e aumentando l’efficienza del sistema DriveSpace, per comprimere volumi (un disco contiene dati compressi che se richiamati vengono decompattati automaticamente da Windows ed eseguiti) 117 Windows 95 Agli inizi di novembre 1995 le copie installate ufficialmente erano 7 milioni. La pubblicità, accompagnata dalla canzone "Start me up" dei Rolling Stones, è costata 100 milioni di dollari, lo sviluppo di Wndows 95 ha richiesto il lavoro di 500 programmatori (impegnati per ben 3 anni) e di 400 mila beta tester. Nei primi quattro giorni vennero vendute un milione di copie. 118 Windows 95 Interfaccia grafica Windows 95 119 Windows NT 3.1 Le varie versioni di Windows NT erano destinate principalmente all'uso professionale, Windows NT 3.1 è la piattaforma Microsoft per i grandi sistemi. Rilasciato nel 1993, era stato progettato per l'uso su server, workstations e macchine per lo sviluppo di software. Non rimpiazzerà Windows per DOS; la serie NT (New Technology) rappresenterà un'alternativa, un percorso parallelo dedicato a sistemi di fascia alta ed altre organizzazioni. In futuro, le versioni NT e "home" convergeranno in un'unica soluzione. Mentre l'interfaccia utente rimase simile a quella di Windows 3.1, 120 Windows NT 3.5 Windows NT 3.5, migliorò le prestazioni e ridusse i requisiti di memoria. Fu rilasciato nel settembre 1994. Windows NT 3.5 Workstation sostituì Windows NT 3.1, mentre la versione NT 3.5 Server sostituì Windows NT 3.1 Advanced Server. L’interfaccia grafica è quella del vecchio Windows 3.x, con l’aggiunta di alcune utilità per la gestione delle risorse di sistema (System Administration Tools). 121 Windows NT 3.5 122 Windows NT 3.5 Vi è inoltre : un software di backup un Disk Administrator per modificare la configurazione delle unità a disco un Event Viewer che raccoglie cronologicamente gli eventi di sistema, permettendo in questo modo di verificare eventuali malfunzionamenti Diagnostics permette l’analisi della configurazione del sistema User Manager consente la gestione dei profili dei vari utenti Sono riconosciuti tutti protocolli e supporti hardware per la maggior parte degli adattatori di rete disponibili sul mercato Sono inoltre possibili funzioni standard Ftp, Telnet, e Ping 123 Windows NT 4.0 L'ultima versione del sistema NT è Windows NT 4.0, esce il 24 agosto 1996 a un anno esatto da Windows 95 (di cui però non è il successore) e ne prende l'interfaccia utente. Il sistema operativo affianca un'interfaccia sensibilmente migliorata graficamente con una potente possibilità di gestione avanzata delle reti, infatti è destinato a server e workstation Ha un ottimo successo di mercato come sistema server a spese dei sistemi Unix 124 Windows NT 4.0 125 Windows CE Windows CE (Compact Edition) è il sistema, dotato del look di Windows 95 e NT, che permette, a chi ha familiarità con i sistemi operativi Microsoft di usare istintivamente un palmare. Windows CE 1.0 venne rilasciato nel novembre 1996; nell'anno seguente verranno venduti circa 500 mila palmari in tutto il mondo. Windows CE 2.0, disponibile dagli inizi del 1998, pose fine a molti problemi sollevati dagli utilizzatori della versione precedente. Nel corso della Windows Ce Developers Conference di San Jose nell'aprile 1998, la Microsoft annunciò in anteprima il nuovo sistema Windows CD 2.1. Tra le nuove funzioni, il supporto per nuovi processori, nonchè ad Ethernet e alla specifica Usb (universal serial bus). 126 Windows 98 Windows 98 (nome in codice "Nashville”) venne lanciato nel giugno 1998, nel bel mezzo delle indagini dell'antitrust relative all'inclusione di Internet Explorer nel sistema. 127 Windows 98 Permette di integrare il Web sul personal computer: tutte le risorse, Internet o locali, possono essere navigate tramite il browser Microsoft Internet Explorer 4.0 integrato. L'Active Desktop permette di trasformare la scrivania in una pagina Web personale, completa di collegamenti e contenuti ipertestuali. L’integrazione con il browser Microsoft Internet Explorer rende il PC un sito Internet, mentre il desktop assume la forma e la funzionalità di una pagina Web, dove è possibile aggiungere elementi attivi, ovvero collegamenti diretti a Internet. 128 Windows 98 Tra i nuovi strumenti troviamo: Backup (potenziamento dello strumento in Windows 95: è più veloce e più semplice da usare e consente di fare una copia di sicurezza del registro di sistema), MS System Information (visualizza le informazioni sul proprio sistema e consente di avviare altri programmi diagnostici), Controllo file di sistema (verifica che i file di sistema non siano stati danneggiati), Dr Watson (per identificare le cause del malfunzionamento del sistema), Windows Update (per aggiornare il sistema operativo automaticamente da Internet), Time Zone Editor (modifica della data e dell’ora di inizio dell’ora legale). 129 Windows 98 Per la gestione dei dischi ci sono: DriveSpace 3 (compressione), ScanDisk e Defrag, oltre a programmi per pianificare queste operazioni. Vengono supportati USB (porta seriale in grado di collegare 127 periferiche ad una sola porta seriale) e i dischi ad alta capacità (DVD-ROM), nonché le porte a infrarossi. Windows 98 è già predisposto per il 2000, così come i suoi componenti che dipendono dalla data di sistema. 130 Windows 98 131 Windows 98 SE Windows 98 SE "Second Edition" di Windows 98 è sostanzialmente un Windows 98 aggiornato in alcuni componenti, come il browser o il sistema multimediale. Le differenze con la prima versione sono praticamente nulle. 132 Windows ME Se Windows 98 portava con se la rivoluzione Internet, Windows ME galoppa un nuovo cavallo: la multimedialità. Caratterizzato da una grande attenzione al mercato consumer, Windows ME porta con se il supporto al DVD, una miglior gestione dei problemi, una nuova versione di Microsoft Internet Explorer (sensibilmente migliore di quella di Windows 98), semplificazioni per la gestione delle immagini e dei suoni, un miglior supporto ai videogiochi, e, in generale, una marcata attenzione a tutto quello che di "divertente" si può fare con il PC. Non si può fare a meno di notare come tutto il sistema operativo sia disegnato attorno all'utenza alle primissime armi, con procedure guidate e descrizioni degli oggetti veramente banali, in alcuni casi addirittura intrusive nei confronti dell'utenza con un minimo di esperienza. 133 Windows ME Le migliorie di sistema sono sostanziali: innanzitutto si impedisce di "Riavviare in modalità MSDos", benché questo sia ancora presente, probabilmente come anticipazione della totale rimozione dello stesso nelle versioni future, viene introdotto un sistema di protezione dei file di sistema, viene migliorata la stabilità generale anche grazie a una più attenta gestione della memoria, viene introdotto il "System Restore" per sistemare velocemente i problemi. Windows ME è l'ultima incarnazione di Windows 95. 134 Windows ME 135 Windows 2000 Professional Uno dei principali punti di forza di Windows 2000 è la tecnologia Intellimirror, che permette agli utenti di passare da un sistema all’altro, sempre seguiti dalla propria configurazione personalizzata. I miglioramenti apportati all’interfaccia di Windows 2000 Professional hanno semplificato la gestione delle connessioni di rete e, in particolare, la possibilità di gestire tutti i dispositivi di sistema da una singola interfaccia risulta molto utile. 136 Windows 2000 Professional Le funzionalità Plug and Play della versione Professional di Windows 2000 forniscono un supporto per gli scanner e per le videocamere digitali che rende Windows 2000 una buona piattaforma per la creazione di contenuti digitali. La funzionalità per il caching dei file sarà, a buon motivo, la più popolare di tutte le novità di Windows 2000. Questa funzione permette, infatti, di ottenere una sincronizzazione e un backup automatico dei file di rete sul disco locale dei portatili, in modo da poterli utilizzare anche quando non si è connessi alla rete. 137 Windows 2000 Professional 138 Windows XP Windows XP è L'ultimo nato di casa Microsoft: con questo nuovo sistema l'informatica diventa un'esperienza, "eXPerience" appunto; un sistema operativo decisamente valido. XP, al momento, è l'ultima versione di Windows rilasciata da Microsoft, ma e' molto probabile che le prossime versioni non introdurranno a breve novità sufficienti a giustificare l'aggiornamento. 139 Windows XP XP si presenta con un'interfaccia grafica ancora più curata nei dettagli e i miglioramenti si scoprono tornando ad usare una vecchia versione di Windows 98, per esempio. Inoltre è molto più rigoroso nell'installazione dei drivers. Periferiche e loro software troppo vecchie possono non essere attivabili. 140 Windows XP In linea di massima la responsabilità di aggiornare i drivers spetta ai produttori di terze parti, ma questi (a volte anche per spingere al rinnovo dei componenti) non sempre mettono a disposizione un nuovo drive e l'utilizzatore a quel punto non ha molte scelte: o attende a passare alla nuova versione, o deve comprare una periferica nuova. D'altro canto molte instabilità del pc sono erroneamente imputate alla Microsoft. 141 Windows XP Molto spesso è il software che fa da intermediario tra la periferica e il sistema operativo, che ha dei problemi e ciò si spiega anche pensando che chi produce periferiche (stampanti, scanner, mouse, webcam, ecc) ha un orientamento e un'esperienza prevalentemente rivolta all'hardware piuttosto che ai sistemi operativi. 142 Windows XP Menù di Windows XP da PC nuovo Classico menù di Windows 143 Windows XP Cosa differenzia Windows XP dai sistemi operativi precedenti? Abbiamo scelto i punti principali, quelli che caratterizzeranno la nuova eXPerience: La nuova interfaccia consente di eseguire le operazioni comuni in modo più semplice ed efficiente. Nuovo Windows Media Player, un unico strumento per la ricerca, il download, l'archiviazione e la riproduzione di musica digitale della massima qualità. Nuove funzionalità per acquisire, organizzare e condividere immagini e fotografie digitali, e tanti altri strumenti necessari per creare, condividere e vedere video nel PC. Condivisione semplice del computer (Cambio utente rapido) e nuove funzionalità per reti domestiche. Una nuova piattaforma di gioco completa e affidabile con elevate prestazioni audio e grafiche e una scelta di giochi quasi illimitata. Il sistema operativo più affidabile, sicuro e stabile per un PC sempre operativo. 144 Windows XP – Service Pack2 Ottanta megabyte per scacciare il fantasma degli attacchi informatici e mettere a tacere le polemiche. Quasi un mezzo sistema operativo per affermare che da oggi si cambia, che per entrare nei computer della gente non basterà più soltanto bussare alla porta. Milioni di dollari investiti e una scommessa: il nuovo terreno di battaglia nel mercato dei sistemi operativi è la sicurezza. 145 Windows XP – Service Pack2 Microsoft risponde a chi accusa i suoi sistemi operativi di essere una specie di groviera, esposti ad aggressioni e intrusioni su ogni lato. La ServicePack2 per Windows XP è in distribuzione in tutto il mondo. I server Microsoft la pompano a tempo pieno nei computer degli utenti (100 milioni di download fino ad oggi). Tra qualche settimana, a chi non ha tempo e banda per scaricarlo, il cd contenente l'aggiornamento sarà inviato a domicilio, gratuitamente. Quasi un milione e mezzo di cd, inoltre, saranno allegati a riviste per essere distribuiti in edicola. Uno sforzo titanico con il quale Microsoft spera di recuperare la fiducia degli utenti, spaventati dalle continue minacce alla sicurezza dei loro pc. 146 Windows XP – Service Pack2 Dopo l'installazione alcune differenze rispetto al vecchio Windows saltano immediatamente agli occhi. Internet Explorer, riprendendo una funzionalità già presente in software concorrenti, blocca le pop-up, le finestre che si aprono automaticamente quando si visitano alcune pagine web. Una serie di nuovi avvisi mette in guardia circa l'apertura di contenuti potenzialmente pericolosi durante la navigazione. Viene attivata automaticamente una versione rinnovata del firewall che blocca i tentativi di intrusione esterna. 147 Windows XP – Service Pack2 Ci sono anche una serie di innovazioni meno evidenti, ma altrettanto importanti. In particolare, la Sp2 gestisce la memoria in modo da impedire i cosiddetti "buffer overrun", vulnerabilità alla base di molti recenti attacchi informatici. Come sempre quando c'è di mezzo Microsoft, anche il rilascio della Sp2 ha dato adito a polemiche e malumori. In particolare, molti utenti lamentano che alcune applicazioni smettono di funzionare una volta installato l'aggiornamento. Microsoft, riconoscendo il problema, ha stilato una lista di programmi per i quali sarà necessario un intervento da parte dei produttori che li renda compatibili con la Sp2. 148 Windows Longhorn In informatica, Longhorn è il nome in codice della versione client del sistema operativo Windows di Microsoft successiva a Windows XP, prevista per la fine del 2006. Quando nel 2002 lanciò sul mercato Windows XP, Microsoft promise una nuova versione del sistema operativo ogni due anni, quindi Longhorn avrebbe dovuto essere rilasciato nel 2004. Fu invece ben presto chiaro che, come per ogni precedente versione di Windows, i tempi si sarebbero dilatati e nuove date di rilascio si sono susseguite nel tempo: prima il 2005, poi il 2006, quindi il 2007 e infine di nuovo il 2006... In realtà tra la fine del 2003 e la metà del 2004 Microsoft è stata impegnata nella produzione del Sevice Pack 2 di Windows XP, nel quale praticamente tutto il codice del sistema operativo è stato soggetto a revisione e che quindi ha di fatto bloccato lo sviluppo di Longhorn 149 Windows Longhorn Longhorn è un sistema operativo della famiglia Windows NT, sarà rilasciato in versioni a 32 bit per processori Intel e compatibili e a 64 bit per processori Intel e AMD Longhorn richiederà un computer molto performante per girare al meglio. Secondo alcune indiscrezioni per avere delle prestazioni accettabili sarà necessario usare almeno processori da tre GHz e avere almeno un GByte di memoria RAM. 150 Windows Longhorn Le principali caratteristiche di Longhorn saranno: Interfaccia utente task-based (centrata sull'attività da compiere) chiamata Aero Presenza di una "sidebar" opzionale, un pannello presente sul lato destro dello schermo, nel quale l'utente può mettere collegamenti a programmi o applet interattive Motore grafico di gestione delle finestre tridimensionale .NET framework aggiornato alla versione 2.0 Interfaccia utente in codice gestito basata su .NET framework Nuove API basate su .NET framework chiamate WinFX, Avalon e Indigo 151 Per approfondire la storia della Microsoft clicca: 152 Storia di UNIX 153 “Unix, il “figlio ribelle" del ´69 . La storia del sistema operativo Unix: un grande successo tra gli appassionati di informatica e nel mondo universitario, dove questo strumento libero è stato migliorato dal lavoro coordinato di miriadi di sviluppatori sparsi per il pianeta e uniti grazie alla "intelligenza collettiva" delle reti telematiche” 154 Introduzione Se e' vero che la storia e' maestra di vita, allora non e' stato vano lo sforzo di reperire informazioni e riprodurre le varie evoluzioni di Unix a partire dai sistemi che l'hanno preceduto, fino ad arrivare ai giorni nostri. Lo scopo prefissato non era quello di effettuare una ricostruzione completa, ma di individuare quelle cause sia di natura tecnica che di natura politica e commerciale che hanno portato questo sistema operativo al successo e che a trent'anni dalla sua nascita viene ancora adottato dalle case costruttrici di calcolatori. 155 1960 - La preistoria – Il Multics Alla meta' degli anni '60 l'American Telephone and Telegraph (AT&T), Honeywell, General Electric e il MIT si cimentarono nel progetto sponsorizzato dall'ARPA (Advanced Research Project Agency), - l'agenzia governativa del Dipartimento della Difesa USA - di sviluppare un nuovo sistema operativo chiamato Multics acronimo di Multiplexed Information and Computing Service. Victor Vyssotsky era il responsabile della parte di progetto di competenza dei Bell Laboratories e Ken Thompson era uno degli sviluppatori. 156 Il Multics Multics doveva essere un sistema modulare pensato in modo tale da consentire di poter spegnere o disattivare alcune parti del computer senza impattare sulle altre componenti ne' sugli utenti che vi stavano lavorando. L'obbiettivo era quello di creare un computer che potesse fornire i propri servizi 24 ore su 24, 365 giorni all'anno - un computer che potesse essere reso piu' veloce con la semplice aggiunta di nuove componenti nello stesso modo in cui l'aggiunta di nuove caldaie e turbine rende piu' potente una centrale elettrica. 157 Il Multics 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 ovvero: Massimo segreto, Segreto Confidenziale, informazione Non classificata dovevano coesistere nello stesso computer. Multics era ingrado di evitare che le informazioni appartenenti ad un livello potessero finire nelle mani di un altro livello. 158 Punti di forza - Il Multics Diverse parti di Multics costituirono uno spunto fondamentale per la progettazione di altri sistemi operativi: gestione della memoria e di comunicazione tra i processi trattare uniformemente tutte le devices come special files, cosa che fu ripresa in Unix e che ne fecero una sua peculiarita'. 159 Punti deboli - Il Multics Questo sistema operativo tuttavia non riusci' mai a sfondare perche' reso inutilizzabile da una serie di scelte infelici, esempio: per effettuare un logout bisognava dare la password inoltre era un sistema operativo con un kernel enorme ed era molto complesso. I primi a ritirarsi dal progetto furono i Bell Laboratories seguiti dalla General Electric. L'Honeywell rilevo' le attivita' informatiche di quest'ultima e produsse una versione funzionante di Multics. 160 Il Gecos Altro sistema operativo che lascio' un marchio su Unix fu Gecos (General Electric Comprehensive Operating System) della General Electric. Definito come quick and dirty clone of System/360 DOS, prese il nome di Gcos (General Comprehensive Operating System) dopo che fu rilevato dall'Honeywell. Qui alcuni gruppi avversi ne parlavano come di un God's Chosen Operating System in reazione a quanti lo ritenevano superiore ad altri sistemi operativi. 161 Il Gecos A conti fatti Gcos sopravvisse fino agli inizi degli anni 80 per cedere poi il passo a Unix. Le prime versioni di Unix usavano le macchine Gcos per la gestione remota delle stampe e per altri servizi. Nel file delle password /etc/passwd esisteva un campo detto Gecos field che serviva a gestire il task-to-task tra le macchine per effettuare i servizi appena citati 162 1969: Unix anno zero - Nasce UNICS Nel 1969 Ken Thompson, presso i Bell Laboratories di Murray Hill , creo' un sistema operativo prendendo spunto dal Multics e dandogli il nome di Unics sottolineando il fatto di essere monoutente. Unics stava per UNiplexed Information and Computing System. Questo sistema operativo, che poco dopo prese il nome di Unix, fu sviluppato su un elaboratore Digital PDP-7 utilizzando il linguaggio interpretato B realizzato da Thompson stesso. I fondatori di UNIX non sanno piu' nulla di questo vecchio PDP-7, esso fu donato ad un college dopodiche' ne fu persa ogni traccia. 163 PDP-7 Il PDP-7, introdotto nel 1965, era il terzo computer Digital con registri a 18 bit; disponeva di 8-64 KB di memoria. Il PDP-7 disponeva inoltre del primo sistema operativo Digital per memorie di massa (DECsys, su nastri DECtape). Nella foto è visibile in primo piano una teletype KSR-33 . In secondo piano, nel cabinet centrale dal basso verso l'alto: la CPU, un lettore di nastri perforati e un doppio driver per DECtape; nel cabinet a destra, un altro doppio driver per DECtape. La pittoresca sedia in cuoio a rotelle e il curioso bancale in legno completano questa foto d'altri tempi. 164 1970 Come scienziati AT&T aggiungono caratteristiche che nel 1970 portano UNIX a diventare il sogno dei programmatori. Il sistema era costituito da programmi compatti chiamati tools, ognuno dei quali eseguiva una specifica funzione. L'uso combinato di questi programmi permetteva di risolvere problemi complessi. Per avere la piena funzionalità del sistema gli utenti necessitavano di tutti questi tools e in molti casi anche del codice sorgente. La crescita del sistema diviene sempre più veloce grazie all'aggiunta di nuovi tools. 165 1971 Nel 1971 fu sviluppata una versione multiutente di Unix per Digital PDP-11. Il sistema era caratterizzato da dimensioni molto piccole: 16 Kbytes per il sistema operativo, 8 Kbytes per i programmi di utente, un disco di 512 Kbytes e un limite di 64 Kbytes per ogni file. Inizialmente gli sviluppatori e gli utilizzatori coincidevano I primi veri e propri utenti in assoluto furono tre dattilografi che stilavano domande di brevetti. Questo iniziale interesse per gli aspetti di word processing venne molto apprezzato in seguito dai programmatori che poterono scrivere sulla stessa macchina sia il software che la 166 documentazione relativa. Figure 1.2: uno dei primi manuali di UNIX 167 Richie, Thompson e il PDP-11 168 1973: viene scritto Unix in C Nel 1973, Thompson riscrive la maggior parte di UNIX in C; linguaggio appena inventato da Richie, non si era piu’ costretti a parlare il "linguaggio macchina" dei calcolatori fatto di "zeri" e di "uno". C era disegnato per essere semplice e portabile. I programmi scritti in C possono essere spostati con estrema facilità da un computer ad un altro come era nel caso dei programmi scritti con altri linguaggi di alto livello. Se era vero che per portare un programma C da un sitema all'altro basta ricompilarlo era vero anche il fatto che ogni sistema gestisce le I/O in modo diverso. Mike Lesk sviluppò una "libreria portabile di I/O" per eliminare le incompatibiltà ma molte 169 rimasero. 1973: viene scritto Unix in C Il numero di installazioni nei Laboratori Bell crebbe fino a circa 25 e fu formato un gruppo di sistemisti per fornire supporto interno. Unix fu progettato con l'intento di realizzare uno strumento orientato allo sviluppo del software di base e alla produzione di documenti. La prima applicazione produttiva scritta in ambiente Unix fu una procedura dedicata all'aggiornamento degli elenchi telefonici e alla rilevazione delle telefonate a numeri cambiati. 170 1974 In seguito a un accordo stipulato nel 1956 con il Governo Federale, AT&T non poteva commercializzare prodotti informatici, quindi offrì UNIX a basso prezzo per scopi didattici alle Università che lo richiesero, senza però commercializzarlo né pubblicizzarlo e senza fornire supporto, come imposto dal corrispondente decreto. Nonostante questa limitazione, la popolarità di UNIX crebbe costantemente. 1974 Thompson e Ritchie descrivono in una relazione pubblicata in un comunicato dell'ACM il nuovo sistema operativo Unix. Unix genera entusiasmo nella comunità accademica che lo vede come un potente strumento di insegnamento per lo studio della programmazione di sistemi. 171 172 1975 Nel 1975 Ken Thompson ritornò all'Università della California a Berkeley, e portò Unix con sé. Là due dottorandi, Chuck Haley e Bill Joy, fecero il porting del sistema Pascal, al quale Thompson aveva lavorato, ad uno stato in cui poteva essere utilizzato. Nacque così la Berkeley System Distribution di Unix o più semplicemente BSD Unix, una soluzione che veniva distribuita su nastro su richiesta. Le stesse intenzioni erano ben lontane dagli scopi commerciali; la diffusione di BSD Unix, come affermò Joy, era un modo per ampliare la base degli utenti e avere maggior feedback e così fu. 173 1977 Nel 1977 UNIX era arrivato a circa 500 installazioni, 125 delle quali nelle Università. UNIX diventò famoso nelle compagnie telefoniche, poiché offriva un buon abiente di sviluppo software, transazioni tramite servizi di rete e servizi in tempo reale. Le licenze furono rese disponibili sia per le Università che per istituzioni commerciali. Nel 1977, Interactive System Corporation cominciò a produrre applicativi commerciali di supporto di tipo “office automation” per UNIX. Sempre nel 1977, il gruppo si rese conto che era più facile portare UNIX stesso che tutte le librerie e per la prima volta UNIX fu portato su un computer che non fosse un PDP, l'Interdata 8/32, con poca fatica grazie al fatto che dal 1973 era scritto in C. 174 1977 Nel 1977 Ken Thompson scrisse il termcap ed il mitico vi. Il termcap e' un file che contiene le descrizioni dei vari tipi di terminali e le loro caratteristiche; e' usato dal comando tset e dalle relative routine di libreria per determinare come un dato terminale vada fisicamente gestito. 175 Il vi e' il famoso elaboratore di testo di Unix, se usato da chi e' abituato a lavorare con i moderni word processor si rendera' conto di quanta strada sia stata fatta da allora a oggi. Si tratta infatti di un elaboratore di testo a tutto schermo di tipo modale, vale a dire che puo' essere usato in command mode ed in input mode. In command mode, accetta comandi per il movimento dei cursori, per l'eliminazione di porzioni di testo e cosi' via. Per effettuare degli inserimenti l'utente deve fornire all'editor un comando che lo pone in input mode e tutti i tasti che verranno premuti da quel momento in poi saranno interpretati come dati in input finche' non verrà premuto il tasto Escape. 176 1978 Nel 1978 all'Universita' Berkley venne installato un Vax 11/780 che faceva uso della memoria virtuale, ovvero della possibilita' in automatico e in maniera trasparente all'utente di poter usare parte del disco come memoria di appoggio nei casi in cui la memoria centrale non sia sufficiente a far girare i programmi applicativi. Lo UNIX su VAX (elaboratore a 32 bit) prese il nome di UNIX 32V (o UNIX V32 o UNIX/32V). 177 Le Version n di AT&T Nei primi dieci anni le versioni iniziali si chiamavano Version n o altrimenti dette Nth Edition; le piu' significative sono di seguito riportate: 1969 - la prima scrittura in B su Digital PDP-7; 1971 - V1: scritta in assembly su Digital PDP11/20; 1972 - V2: nasce la pipe ad opera di Doug McIlroy; 1973 - V4: scritta in C, e' l'evento piu' importante nella storia dei sistemi operativi; 1975 - V6: cominciano la diffusione fuori dai Bell Labs e le prime differenziazioni; 1979 - V7: considerato l'ultimo vero Unix, il suo kernel era di circa 40 Kbyte ! 178 V7 Con riferimento alle versioni successive a Unix V7 si attribuisce a Ken Thompson la seguente frase: "It became a commercial product, and that was the end of the age of innocence for this system" [N.d.W.:"E' diventato un prodotto commerciale, e per questo sistema e' terminata l'era dell'innocenza"]. 179 1978/1979 La "Second Berkeley Software Distribution" (abbreviata in 2BSD) è pronta nel 1978, e la versione finale di questa distribuzione, la 2.11BSD, è utilizzata ancora oggi da diversi PDP11 sparsi in vari angoli del mondo. La terza distribuzione di Berkeley, la 3BSD del dicembre 1979, viene così apprezzata all'interno degli ambiti scientifici e universitari che Bob Fabry riesce a strappare un ingente finanziamento al DARPA, (Defense Advanced Research Project Agency), l'organizzazione governativa militare figlia dell'ARPA. 180 1980 A questo punto (1980) la storia di UNIX subisce una delle sue diramazioni più importanti perchè lo U.S.A. Department of Defence richiede all'University of California Computer System Research Group (CSRG) (a Berkeley) di riprogettare UNIX in modo da trasformarlo da sistema operativo time-sharing puro ad un mezzo per la ricerca sul calcolo distribuito nell'ambito del progetto DARPA (Defence Advanced Research Projects Agency). Il risultato è una versione UNIX chiamata 4BSD (Fourth Berkeley Software Distribution) derivata appunto da UNIX 32V su VAX e diffusa soprattutto in ambiente scientifico. 181 1982 E’ l'anno dell'apertura di Unix al mondo delle reti TCP/IP: in aprile nasce la distribuzione 4.1a, che ristruttura completamente Unix con l'aggiunta di nuovi protocolli e di nuovi servizi per l'utilizzo di risorse remote condivise in rete, come ad esempio il servizio rlogin che utilizzando un collegamento ad una rete TCP/IP consente di utilizzare un computer remoto, situato anche a migliaia di chilometri di distanza, così come si farebbe se il computer fosse a pochi metri da noi. 182 1982 Nel 1982 Bill Joy lascia l'università per fondare la Sun Microsystems, una compagnia dedita alla produzione di "workstation", computer grandi e potenti, di gran lunga superiori ai personal computer, utilizzati generalmente da grandi aziende o centri universitari. Le prime macchine della Sun hanno come sistema operativo proprio il nuovo Berkeley Unix, corredato dal TCP/IP. La scelta della Sun di includere gratuitamente questo sistema operativo senza nessun costo aggiuntivo rispetto a quello della sola macchina causa una vera e propria esplosione del networking. 183 Il McKusik All'Universita' di Berkley, che riteneva di dover insistere su ricerca e sviluppo, l'agenzia DARPA (Defense Advanced Research Project Agency), intenzionata a utilizzare Unix BSD (Berkley Software Distribution) commissiono' progetti migliorativi che differenziarono significativamente da quello dell'AT&T. Fu progettato infatti un file system piu' potente e veloce, il McKusik file system, capace di supportare processi con molti gigabyte di spazio d'indirizzamento, fu realizzata una versione dell'IPC (Inter Process Communication) in grado di supportare l'elaborazione su sistemi distribuiti, si scrissero parti orientate al networking, ecc. 184 Dal 1983 al 1989 Nell'agosto 1983 viene rilasciata la nuova distribuzione 4.2BSD, seguita nel giugno 1986 dalla versione 4.3 della "Berkeley Software Distribution". Le "generazioni" di Unix si susseguono con regolarità fino al giugno 1989, data di nascita della "Networking Release 1", una versione di Unix caratterizzata dalla totale libertà di utilizzo del codice sorgente. 185 Networking Release 1 Fino alla "Networking Release 1" per assicurarsi le varie versioni della Berkeley Software Distribution bisognava versare una somma di denaro alla At&t, che aveva sviluppato il primo embrione di Unix, per ottenere una "licenza di accesso al codice sorgente" (source license), che permettesse di aprire la "scatola nera" di Unix per aggiungere nuove funzioni o migliorare quelle già esistenti, con una operazione che in gergo viene definita "debugging". Inizialmente il costo della licenza At&t non è proibitivo, ma quando il prezzo da pagare per accedere al codice sorgente di Unix inizia a lievitare 186 Quindi i programmatori di Berkeley decidono di fornire separatamente i programmi necessari per le funzionalità di rete e l'accesso remoto (il "networking" di Unix), mettendo a disposizione anche i rispettivi codici sorgente. Gli sviluppatori Unix di Berkeley, cercano di aumentare il più possibile il numero dei "pezzi di Unix" liberamente distribuibili. Attraverso la rete, Keith Bostic chiama a raccolta un piccolo esercito di programmatori, cui viene affidato il compito di riscrivere le cosiddette utilities, funzioni aggiuntive del sistema operativo, per rimpiazzare quelli prodotti dalla At&t le qualivengono riscritte dal nulla nel giro di 18 mesi. 187 Keith Bostic, Mike Karels e Kirk McKusick, dopo aver ripulito la maggior parte del kernel, si accorgono che nonostante la riscrittura di decine e decine di file, ci sono ancora sei file che non possono essere rimpiazzati facilmente, sei pezzetti di sistema operativo che non riescono a sfuggire al controllo della At&t. 188 1991 Nel giugno 1991 viene diffusa la "Networking Release 2", una nuova distribuzione del sistema operativo, purtroppo ancora "contaminata" dai sei file riconducibili alla At&t, ma rilasciata con la stessa licenza di libero utilizzo adoperata per la "Networking Release 1". Nel giro di sei mesi Bill Jolitz riesce a rimpiazzare anche i sei file mancanti, producendo finalmente la prima distribuzione Unix di Berkeley completamente libera da qualunque vincolo con la At&t, una "materia prima" informatica utilizzata come ambiente comune di lavoro da centinaia di sviluppatori, programmatori, docenti universitari e studenti sparsi per il mondo. 189 1992 Nel 1992 Bill Jolitz annuncia la nascita di 386/BSD, una versione della "Berkeley Software Distribution" scritta su misura per i microprocessori Intel 80386 dei personal computer domestici. A pochi mesi di distanza dalla diffusione in rete di questa nuova versione di Unix, un gruppo di utenti interessati allo sviluppo di 386/BSD dà vita al NetBSD group, una task force di programmatori che nel corso degli anni produrrà varie versioni della "NetBSD distribution", una distribuzione Unix nata a partire dalla 386/BSD, migliorata e sviluppata in rete attraverso il lavoro del NetBSD group. 190 Un altro gruppo, attorno al quale si è sviluppata una distribuzione Unix derivata dalla "Networking Release 2", è il FreeBSD group che nasce con l'intento di venire incontro agli utenti meno esperti cercando di facilitare il processo di installazione del sistema operativo. 191 1981 L'AT&T, avendo deciso che Unix era diventato un major product ritenne che era giunta l'ora di passare alla stabilizzazione e alla commercializzazione del prodotto. Nel 1981 nacque Unix System III e veniva venduto con le seguenti modalita’: 1)as is (così com'e'); 2)no support (senza assistenza); 3)payment in advance (pagamento anticipato). Il prezzo era compreso tra i 25.000 e i 40.000 dollari e non veniva fornito upgrade, vale a dire che ogni volta che usciva una nuova versione del sistema operativo bisognava reinstallarla exnovo. Bisogna dire che la gestione della memoria virtuale verra' fornita dalla AT&T solo nel 1985 192 nella versione System V Release 2. Evoluzione di Unix negli anni 80 Come tutti sanno la diffusione di Unix negli anni ’80 non fu per niente travolgente, infatti l’evento informatico che si distinse in questo periodo fu lo sviluppo dei personal computer con il sistema operativo MS-DOS; l’Unix, dal suo canto, continuava la sua evoluzione guadagnandosi tra l’altro l’ironica etichetta di eterna promessa. La storia di Unix degli anni ’70 fu più tecnica e pionieristica e quindi più affascinante di quella del decennio successivo che invece fu caratterizzata da eventi dettati dal mercato e da alleanze contrapposte che si confrontavano a colpi di standard. 193 Agli inizi degli anni ’80, perché multitasking, perché multiuser, perché affidabile, ma soprattutto perché economico molte ditte decisero di adottare Unix tra cui Onyx, Altos, Fortune, Convergent Technologies ecc. Nel 1985 Unix era diffuso su circa 150 modelli ed offerto da ottanta diversi fornitori In realtà c’era un’altra ragione che si andava affiancando a quella economica e che lasciava pendere l’ago della bilancia verso tale sistema operativo ed era l’esigenza di legarsi ad un sistema che facesse riferimento a degli standard e che allo stesso tempo continuasse a crescere tecnologicamente. 194 1983 Nel gennaio 1983 AT&T rilasciò Unix System V (che d’ora in poi chiameremo Unix SVRx indicando con x il numero della versione). A maggio dello stesso anno l’AT&T chiuse un accordo con i principali produttori di microprocessori dell’epoca, vale a dire Motorola, Intel, National e Zilog per mettere a punto una versione di Unix System V per i rispettivi chip. In quel periodo David Korn scrisse la korn-shell. Si trattò di un miglioramento della Bourne shell, sempre della AT&T, contenente anche alcune caratteristiche della C-shell. 195 1984 Nel 1984 AT&T definì lo standard SVID (System V Interface Definition) descrivendo l’insieme minimo di chiamate di sistema (system call) e di librerie di cui doveva disporre un qualsiasi sistema operativo basato su System V affinché le applicazioni sviluppate su di esso potessero funzionare. 196 1985 Nel 1985 sempre AT&T chiuse un accordo con Microsoft per una versione di Xenix che fosse SVID compatibile, Xenix V appunto. C’è da dire che Microsoft non ha mai partecipato in maniera significativa allo sviluppo di Unix in generale, tuttavia nell’87 Xenix raggiungeva il 50% dell’istallato dei sistemi Unix. Sempre nel 1985 AT&T e Sun Microsystem, che disponeva di un sistema derivato di quello di Berkley, raggiunsero un accordo per far convergere System V e Unix BSD. La Sun in precedenza aveva rilasciato NFS (Network File System) ovvero un file system distribuito su rete eterogenea. 197 Nuovi standard sulla scena: IEEE POSIX e X/OPEN In quel periodo, parallelamente, l’IEEE (Institute of Electric and Electronic Engineering), importante ente americano di standardizzazione, costituì una commissione per la definizione di un sistema operativo standard denominato POSIX (Portable Operating System Interfaces). Successivamente anche NBS (National Bureau of Standards), ANSI (American National Standards Institute) e ISO (International Standard Organization) annunciarono iniziative per la standardizzazione dei sistemi operativi. Nel 1984 l’organizzazione degli utenti di Unix denominata /usr/group rilasciò le proposte per la definizione di un sistema operativo standard. X/OPEN, consorzio costituito dalle maggiori case di calcolatori europee cui si aggiunsero successivamente le maggiori case americane e giapponesi, si occupò di selezionare e supportare standard finalizzati a garantire la portabilità delle applicazioni. 198 Scontri a colpi di standard Quando AT&T nel 1986 rilasciò Unix SVR3, chiese l’obbligo di certificare la compatibilità SVID per i prodotti licenziati System V. Questa richiesta metteva in difficoltà i fornitori basati sull’Unix BSD di Berkley. Non la prese bene la Digital che rispose dicendo che AT&T con SVID conduceva verso un ambiente proprietario mentre IEEE POSIX verso un prodotto aperto. Successivamente AT&T eliminò la richiesta di certificazione di compatibilità SVID accettando anche gli standard IEEE. 199 Era chiaro oramai che il controllo sullo sviluppo degli standard di Unix stava diventando il punto fondamentale per il seguito. Tra le grandi aziende la Hewlett-Packard fu la prima a investire in quella direzione seguita immediatamente dall’inglese ICL, dalla tedesca Siemens e dall’italiana Olivetti, quest’ultima con i sistemi LSX. La Digital, fu sempre molto sensibile al controllo su Unix e si fece sentire più volte nel contrasto con AT&T. All’epoca ci furono infatti richieste di sistemi da parte di alcuni enti governativi USA dai grossi importi in cui si chiedeva la conformità SVID e la predisposizione alla conformità POSIX. Questa circostanza mise l’AT&T nella condizione di essere unico fornitore, cosa che non fu per nulla gradita alla Digital. 200 La standardizzazione di Unix, letta come momento di divisione, vide ancora alcuni passaggi importanti quali l’obiettivo della compatibilità binaria. Nel 1987 tramite l’accordo tra AT&T e Microsoft si determinava l’uscita di una versione di Xenix per processore INTEL 80386 completamente compatibile con le versioni System V. A partire dal 1989 Microsoft avrebbe rilasciato i sistemi operativi non più con il nome di Xenix ma con il nome di Unix. Sempre nel 1987 AT&T e Sun stipularono un accordo per il definitivo superamento del sistema operativo System V-Sun OS e per nuovi obiettivi di compatibilità binaria relativamente al processore SPARC (Scalable Processor ARChitecture) della Sun e all’interfaccia ABI (Application Binary Interface). 201 Nasce OSF in opposizione ad AT&T e SUN La preoccupazione che gli accordi tra AT&T e Sun potessero determinare vantaggi incolmabili rispetto ad altre aziende che adottavano il sistema operativo Unix, provocò nel 1988 la formazione di una nuova organizzazione che prese il nome di OSF (Open System Foundation). Essa inizialmente era composta da sette soci fondatori e precisamente: Apollo, Digital, HP, IBM, BULL, Nixdorf e Siemens; . Il primo compito di OSF era di realizzare una nuova versione dell’AIX di IBM, derivato di SVR2, conforme agli standard POSIX. Lo scopo era quello di raggiungere la compatibilità piena con POSIX, Unix System V e BSD. 202 AT&T e Sun propongono Unix International in opposizione a OSF Apparentemente gli obiettivi espressi da OSF sembravano chiari e coerenti nell’ottica del raggiungimento di uno standard in un mondo di sistemi aperti. Tuttavia, l’oggettiva indifferenza storica ai sistemi aperti di alcuni dei principali componenti dell’alleanza e, addirittura, il netto ed evidente contrasto d’interessi tra i sistemi proprietari e i sistemi aperti cui mostravano di aderire, provocò la reazione ed il rifiuto all’adesione da parte dell’AT&T che dubitò della sincerità e della profondità dei loro proponimenti. Questo portò alla formazione di un loro consorzio inizialmente denominato the Archer group e successivamente Unix International. Aderirono a questo consorzio anche Control Data, DG, Fujitsu, ICL, Intel ed altri. 203 1992 Nel 1992 At&t cede alla Novell, un'azienda specializzata in reti locali di computer, la sua società specializzata in Unix, gli Unix System Laboratories. Il prezzo pagato è di 150 milioni di dollari. A sua volta la Novell cederà le sue attività relative a Unix alla SCO, Santa Cruz Operation, nel settembre 1995. 204 205 “Questo sistema operativo, figlio ribelle di cui nessun genitore vuol prendersi cura, ha grandi difficoltà a diventare un prodotto commerciale redditizio: nessuno riesce ad appropriarsene e a chiuderlo nella gabbia del copyright quando si è ancora in tempo. Nonostante il suo fallimento come prodotto commerciale, la storia di Unix è caratterizzata da un grande successo tra gli appassionati di informatica e nel mondo universitario, dove questo strumento libero è stato migliorato, anno dopo anno, dal lavoro coordinato di miriadi di sviluppatori Unix sparsi per il pianeta e uniti grazie alla "intelligenza collettiva" delle reti telematiche.” 206 Storia di LINUX 207 ”Si conoscono solo due modi per costruire cose estremamente complesse. Il primo è l’ingegneria, l’altro è l’evoluzione. E, tra i due, l’evoluzione produce le cose più complesse. Danny Hills 208 Introduzione Nel 1985 Richard Stallman fondò la Free Software Foundation (FSF), il cui obiettivo era riassunto nell'acronimo ricorsivo GNU = Gnu's Not Unix. In realtà l'obiettivo era la scrittura di un intero Sistema Operativo, analogo a UNIX, con delle caratteristiche innovative e varie applicazioni di corredo, che fosse interamente free, negando così la natura commerciale di UNIX. In quell'epoca Stallman, l'ultimo custode dell'etica hacker sviluppata al MIT (Massachusetts Institute of Technology), storico centro universitario americano, incubatrice di molti importanti progetti legati a Internet, utilizza i principi assimilati nei suoi anni di permanenza all'Ia Lab, il laboratorio di intelligenza artificiale, come linee guida per la sua opera più conosciuta, un programma di editing chiamato Emacs che permette agli utenti di personalizzarlo senza limite: la sua architettura aperta incoraggia le persone ad aggiungervi nuove funzioni e a migliorarlo senza sosta. 209 Stallman distribuisce gratis il programma a chiunque accetti la sua unica condizione: rendere disponibili tutte le estensioni apportate, in modo da collaborare al miglioramento di Emacs, che diviene quasi subito l'editor di testi standard nei dipartimenti universitari di informatica. Negli anni il progetto GNU ha partorito molti prodotti software importanti e di qualità, come il famoso compilatore (gcc, g++, ecc.), LATEX, Emacs, vari applicativi, ecc. Tuttavia lo sviluppo del Sistema Operativo vero e proprio, basato su un'architettura a microkernel, e’stato piuttosto lento. 210 Introduzione Tutto ebbe inizio nella fredda Helsinki nel 1990 quando ad un'allora sconosciuto studente universitario iscritto alla facoltà di informatica e rispondente al nome di Linus Torvalds non venne la brillante idea di imbattersi nella stimolante avventura dello sviluppo di un sistema operativo che ricalcasse le orme dell'affidabilissimo Unix. 211 Torvalds doveva studiare il nuovo processore Intel 80386, che aveva caratteristiche molto innovative rispetto ai suoi predecessori, come ad esempio la natura multitasking. Sulla macchina utilizzata da Linus girava il Sistema Operativo Minix, un piccolo UNIX commerciale a microkernel, che veniva offerto con notevoli agevolazioni per scopi didattici. Linus si pose il problema di migliorare Minix; non riuscendo nell'intento, iniziò lo sviluppo di un kernel che permettesse di scrivere una versione gratuita di UNIX. 212 1991 Alla fine dell'Agosto 1991, Linus arrivò a qualcosa di compiuto, a cui impose il numero di versione 0.01, che tuttavia rendeva ancora necessario l'utilizzo di una macchina con Minix. Da quel momento, secondo le sue stesse parole, Linus fu irrimediabilmente catturato da ciò che stava facendo, a tal punto da dover a tutti i costi realizzare qualcosa che gli permettesse di “cacciare” Minix dal suo computer 213 Il 5 Ottobre 1991 Linus annunciò la prima versione “ufficiale” di Linux, cioè la 0.02. Si può immaginare che le parole con cui Linus annunciò il rilascio di tale versione indispettirono non poco Andy Tanenbaum, famoso professore della stessa Università, guida dello sviluppo di Minix. Il tutto diede origine a una famosa “flame”, un lungo scambio di e-mail a cui non parteciparono solo Linus e Tanenbaum e i cui toni diventarono presto molto accesi. Tale flame è raccolta nel file linux_is_obsolete.txt, disponibile su Internet 214 Tanenbaum affermava che Linux nasceva obsoleto, in quanto era una riscrittura di qualcosa che esisteva già da vent'anni. UNIX, come tanti altri sistemi operativi, è monolitico: il suo kernel corrisponde a un unico file eseguito in “kernel mode”, che gestisce i processi, la memoria, il file system e così via. A chi voleva qualcosa di moderno e innovativo, Tanenbaum consigliava di far riferimento a sistemi a microkernel, nei quali la maggior parte del sistema operativo viene eseguita in termini di processi separati, la comunicazione tra i quali viene gestita da un kernel di dimensioni ridotte. 215 Tanenbaum portava come esempi, tra gli altri, il suo Minix, il progetto GNU, e una versione non ancora rilasciata di ms windows nt. Minix aveva limitazioni serie; ad esempio, non permetteva di allocare memoria dinamicamente (malloc()). Per i sistemi a microkernel, la pratica contraddice la teoria, dimostrando che sono inevitabilmente lenti rispetto a quelli “classici” a macrokernel. Linux introduce notevoli novità in merito ed esiste anche una sua versione a microkernel. Riguardo a ms windows nt, per esso non esiste il concetto di processo; inoltre non rispetta molto rigorosamente una struttura a microkernel. 216 Tra Torvalds e Tanenbaum l'approccio per lo sviluppo di un sistema operativo era abbastanza diverso: Tanenbaum sosteneva e pretendeva che chiunque avesse realizzato del codice per il suo SO lo avrebbe dovuto preventivamente sottoporre alla sua approvazione Torvalds diede libertà assoluta agli sviluppatori, mantenendo per sè solamente il trade mark. 217 HELP Linus, nel rilasciare Linux 0.02, chiese pubblicamente aiuto per portare avanti il suo progetto. Infatti è facile intuire che lo sviluppo del kernel di un Sistema Operativo UNIX è un problema di dimensione eccessiva per una persona sola. 218 From: Linus Benedict Torvalds. Rimpiangete ancora i vecchi tempi di Minix 1.1,quando gli uomini erano uomini, e scrivevano da sé i propri device driver [il software di interfacciamento ai dispositivi (nda)]? Vi manca un progetto simpatico e state morendo per un sistema operativo in cui piantare i denti? Siete frustrati dal fatto che in Minix tutto funziona? [...] Sto lavorando per una versione free di un sistema operativo simile a Minix per computer AT-386. Ho finalmente raggiunto lo stadio in cui è perfino usabile (anche se questo ovviamente dipende da cosa volete) e ho messo dei sorgenti a disposizione per una più ampia distribuzione. È solo alla versione 0.02, ma sono riuscito a eseguire con successo bash/gcc/gnu-make/gnused/compress [alcune utility GNU (nda)] etc su di esso. 219 Molti offrirono aiuto a Linus... oggi solo una piccola parte del kernel è scritta direttamente da lui, che nel tempo, senza mai imporsi, è stato riconosciuto come la guida indiscussa dello sviluppo di Linux. C'è stata perfino una battaglia legale in suo favore, conclusasi il 20 Agosto 1997 con il riconoscimento a Linus Torvalds del Trade Mark (marchio registrato) LINUX, che nel Settembre 1995 era stato assegnato a William R. Della Croce, sollevando un mare di proteste. Attualmente Linus ha un ruolo fondamentale, dato che l'ultima parola nelle varie scelte riguardanti il kernel è ovviamente sua. 220 1992 Viene rilasciata la versione 0.12 che si presenta già relativamente stabile e in grado di supportare un pò di hardware. Tutto ciò avviene con l'immediata disponibilità del codice in rete e il coinvolgimento di altri appassionati che collaborano allo sviluppo di alcune parti. Sono già presenti anche alcuni utilizzatori, che ne denunciano i vari errori ed esigenze. In aprile è rilasciata la versione 0.96 e nascono le prime distribuzioni, ovvero la MCC Linux e la SLS. 221 1994 Esce la versione definitiva Linux 1.0. Nascono RedHat, Debian e SUSE, che sono ancora oggi tra le distribuzioni più note e diffuse. Linux è sotto copywrite di Linus Torvalds, ma diventa ufficialmente un software "open source", nel rispetto della General Public License del movimento GNU Open Source. Dato l'interesse fortissimo, nascono i primi Linux User Group. 222 1996 E' rilasciata la versione 2.0 e compaiono le prime versioni tradotte in altre lingue. Nasce la mascotte di Linux: TUX, il pinguino più famoso del mondo. 223 Agli inizi Linux non aveva ancora un logo, ma si sollevarono subito tante voci che chiedevano una mascotte ufficiale. Così nel 1996 un pinguino di nome Tux divenne il logo ufficiale del sistema operativo libero. Chiaramente l'origine del nome è da ricercare nella passione che Linus Torvalds, il padre di Linux, nutre per pinguini. Linus racconta che un giorno venne morso da uno di questi abitanti del Polo Sud in bianco e nero nello zoo di Canberra, nell'Australia, e che in quel occasione contrasse la cosiddetta "penguinitis". Dal quel giorno in poi, ogni notte sognava sempre dei pinguini. Ne derivò che Linus scegliesse un piccolo, grazioso pinguino quale mascotte per il "suo" sistema. Ovviamente Tux deriva dall'inglese tuxedo (che vuol dire frac).Il vignettista Larry Ewing vinse il concorso indetto proprio per creare una mascotte Linux e dobbiamo a lui le sembianze di Tux. Esiste anche un vero pinguino vivente di nome Tux. In occasione del compleanno di Linus Torvalds nel 1997, rappresentanti della comunità Linux adottarono per lui un pinguino nello zoo di Bristol (Regno Unito). 224 1997/1999 Dal ‘97 la storia di Linux diventa sempre più indipendente da Torvalds, che lascia la Finlandia e si sposta a Santa Clara (Silicon Valley), dove assume un ruolo non molto chiaro nella misteriosa azienda Transmeta. La Transmeta, infatti, è una azienda che tra i soci fondatori annovera un certo Paul Allen (Microsoft). L'azienda progetta di produrre microprocessori a basso consumo, però assume programmatori e tecnici molto esperti e paga Torvalds per continuare a sviluppare il suo Linux. 1999 esce il kernel in versione 2.2 225 2001 Nel febbraio 2001 Linux ha deciso di rilasciare ufficialmente l’ormai attesissima (da un paio d’anni) versione 2.4 del kernel. L’attesa era giustificata dal fatto che il nuovo kernel presentava importanti novità, sia da un punto di vista tecnico e funzionale che dal punto di vista degli utenti(per es. con l’introduzione del pieno supporto per le porte USB che nel frattempo si sono sempre più diffuse nel mondo del personal computer). 226 2003 Linux ha indubbiamente conquistato un ruolo fondamentale tra i più diffusi sistemi operativi, a fianco di Unix e Microsoft. La stessa IBM ha adottato il pinguino, che è installabile sui sistemi AS/400 o iSeries e spinge molto verso un uso massiccio di questo sistema che offre garanzie di notevole affidabilità soprattutto come server web. Inoltre è presente nei sistemi integrati e nei dispositivi robotizzati. E' stato usato sullo Shuttle, sui palmari e sulle workstation Alpha. Possiamo senz'altro considerarlo il sistema operativo più portabile oggi esistente. 227 Microsoft, ovviamente, lo considera il più temibile nemico da combattere, anche perchè trattandosi di un prodotto open source, presente sul mercato in varie versioni sviluppate in tutto il mondo, non è possibile tentarne l'acquisto per metterlo in soffitta o sfruttarlo come ha fatto con altri prodotti saliti alla gloria. Attualmente Torvalds vive ancora in California, a Santa Clara, con la moglie Tove (sei volte campionessa nazionale di Karate in Finlandia), e lavora presso la Transmeta Corporation dove si occupa di coordinare il gruppo di programmatori che sviluppa il Kernel di Linux. 228 Giugno: Linus Torvalds ha deciso di dedicarsi interamente in OSDL allo sviluppo del kernel del "suo" sistema operativo. Un messaggio sulla mailing list di http://www.kernel.org/ per annunaciare una minor release del kernel di sviluppo e poi qualche riga dedicata a sè stesso. Così Linus Torvalds annuncia la fine dell'avventura in Transmeta, per dedicarsi in pieno allo sviluppo del kernel di Linux presso l'ODSL (Open Source Developement Lab). 229 2003 Il 2003 sarà ricordato anche per l'anno di SCO e dei suoi attacchi a Linux e al mondo OpenSource, consequenziali ad una azione legale intrapresa contro IBM. Tecnologicamente la strada è chiara e le carte sono vincenti: Linux e tutto il software OpenSource sono decisamente all'altezza sia sui sistemi di fascia alta che sui desktop, oltre ad essere presente nel cuore invisibile di innumerevoli device elettronici. 230 2004 Sgonfiato, anche se non concluso, il caso SCO, nuove minacce si profilano all'orizzonte di un pinguino che continua a diffondersi e conquistare nuovi territori: in particolare leggi draconiane sui brevetti, che permettono di brevettare indiscriminatamente algoritmi, soluzioni e idee informatiche triviali Intanto il kernel 2.6 si diffonde e viene usato nelle principali distribuzioni, sempre più user friendly e pronte per il desktop. 231 Storia del sistema operativo OS/2 232 OS/2 OS/2 è un sistema operativo sviluppato dalla IBM per l'uso sui propri personal computer. L'inizio della storia di OS/2 risale al 1984, con l'arrivo sul mercato del primo PC AT IBM con processore 80286 che per la prima volta in un personal computer supportava la modalità protetta per il sistema operativo, una tecnica per avere un sistema stabile e al sicuro da crash o malfunzionamenti delle applicazioni. Il progetto venne iniziato congiuntamente da IBM e da Microsoft; la versione più aggiornata disponibile di OS/2 è del 2002, con la versione 4.52 nota anche come OS/2 Convenience Pack 2. 233 OS/2 Dotato di ottima stabilità, tecnicamente superiore alla concorrenza Microsoft, ma meno diffuso per via della esosità di risorse di memoria delle prime versioni e storicamente carente di applicazioni, non riuscì mai a rimontare lo svantaggio presso gli utenti finali, nemmeno quando la IBM con una mossa promozionale provò a distribuire gratis le versioni 3.0 e 4.0, molto migliorate. OS/2 si ricavò comunque una nicchia nel settore bancario, dove conserva ancora una certa base installata. 234 OS/2 Attualmente lo sviluppo di IBM OS/2 è congelato e il supporto tecnico a questo sistema operativo da parte della casa madre cesserà nel 2007. Tuttavia la IBM ha continuato ad aggiornare OS/2 negli anni, che ora supporta comunque tutte le tecnologie più recenti: Java 1.4, USB 2.0, JFS (Journaled File System) e le ultime schede video NVidia, ATI e Matrox. Nel 2000 Serenity System ha stretto un accordo con IBM per distribuire un nuovo sistema operativo basato sul kernel dell'ultima versione rilasciata di OS/2 Warp: questo nuovo sistema operativo (o nuova versione di OS/2) prende il nome di eComStation. Attualmente (2004) è giunto alla versione 1.1 e viene regolarmente commercializzato. 235 Storia di OS/2 Nel 1987 viene rilasciata la prima versione di OS/2, denominata CP/DOS. Non ha interfaccia grafica ma solo modalità testo: è multitasking, ma è visibile una sola applicazione alla volta mentre le altre girano in background. Introduce anche un nuovo formato di file eseguibile, il NE o New Executable basato su sezioni distinte per codice e dati. 236 Storia di OS/2 Interfaccia OS/2 – PC/DOS 237 Storia di OS/2 La versione OS/2 1.1 (nome in codice Trimaran) viene rilasciata nel 1988: stavolta comprende una interfaccia grafica, il Presentation Manager (PM), ed è disponibile in due vesti: Standard Edition ( SE ) Extended Edition (EE); la versione EE comprende in più un database manager ed un communications manager. 238 Storia di OS/2 Interfaccia OS/2 1.1 239 Storia di OS/2 Nel 1989 viene rilasciata la versione 1.2 (nome in codice Sloop), con un PM migliorato: nella versione EE compaiono il nuovo file system HPFS e il linguaggio REXX. Intanto si stanno affermando i processori 80386 e IBM mette in cantiere OS/2 2.0, che dovrà essere interamente a 32 bit e solo per processori 80386, abbandonando i vecchi 286. Ormai però l'alleanza con la Microsoft è sempre più tesa a causa dei tempi lunghi che la IBM impone, ritardando l'adozione definitiva di una interfaccia grafica per il nuovo sistema operativo, e poco dopo decide di staccarsi dal progetto per sviluppare una propria versione di OS/2, che più tardi verrà ribattezzata Windows NT. Dalla fine del 1990 in poi la IBM si fa carico da sola dello sviluppo di OS/2. 240 Storia di OS/2 Interfaccia OS/2 1.2 241 Storia di OS/2 Nel 1991 IBM rilascia la prima versione interamente sviluppata in casa. Ci sono ancora molte parti di codice Microsoft, ma alcune cose sono state modificate e tutte le nuove aggiunte sono made in IBM. OS/2 1.3 è più veloce, più stabile e più compatto di prima, grazie anche ad un nuovo algoritmo di swap. Inoltre sono stati apportati cambiamenti come: Ci sono molti driver nuovi, l'installazione è più semplice, i font di sistema sono stati ridisegnati il driver video supporta risoluzioni fino a 1024x768. Inoltre il REXX è incluso anche nella versione SE. 242 Storia di OS/2 Interfaccia OS/2 1.3 243 Storia di OS/2 OS/2 2.0 (nome in codice Cruiser), rilasciato nel 1992, è il primo vero sistema operativo a 32-bit per il PC. Ha una emulazione DOS tramite macchine DOS virtuali (VDM) che fanno credere ai programmi DOS di girare in un PC tutto per loro; incorpora una versione licenziata di Windows chiamata Win-OS2 attraverso cui far girare anche i programmi per Windows 3.0/3.1; viene introdotta la WorkPlace Shell (WPS), una interfaccia utente orientata agli oggetti (OOUI) che integrata nel Presentation Manager di OS/2 diventa uno dei punti di forza di OS/2. 244 Storia di OS/2 Interfaccia OS/2 2.0 245 Storia di OS/2 desktop OS/2 versione 2 246 Storia di OS/2 Un anno dopo (1993) esce la versione 2.1 (nome in codice Borg), che introduce una grossa novità: il Presentation Manager si evolve, acquisisce capacità multimediali e diventa Multimedia Presentation Manager/2 (MMPM/2). Inoltre vengono introdotti: il supporto allo standard di risparmio energetico APM, l'interfaccia PCMCIA, il supporto TrueType in Win-OS/2 e tutto il codice viene rivisto ed ottimizzato. 247 Storia di OS/2 Successivamente escono le versioni 2.1 e 2.11 che aggiungono ulteriori ottimizzazioni, ma purtroppo OS/2 continua a chiedere almeno 8 MB di RAM per funzionare bene, in un periodo in cui i PC hanno al massimo 4 MB e la RAM costa cara. Cosciente di questo fatto la IBM mette in cantiere una versione leggera di OS/2, che giri bene anche con poca RAM. 248 Storia di OS/2 Centra l'obiettivo e nel 1994 esce OS/2 3.0 (Warp) capace di funzionare egregiamente anche con solo 4 MB di RAM. Questa nuova versione comprende una WPS molto migliorata e il supporto nativo al protocollo TCP/IP e ad internet. 249 Storia di OS/2 Se esaminiamo la figura,notiamo tre tipi di oggetti distinti: Icone tridimensionali animate Desktop Launch Pad Interfaccia OS/2 3.0 Warp 250 Storia di OS/2 1. 2. 3. lo sfondo del video, denominato Desktop, personalizzabile a livello di colori disegno e font di caratteri; questo è la principale cartella di OS/2; una barra rettangolare fornita di icone, il Launch Pad, che consente all’utente di raggruppare unico posto logico gli oggetti che più frequentemente utilizza (novità della versione Warp); delle icone tridimensionali animate, che rappresentano graficamente file di dati, cartelle o programmi. 251 Storia di OS/2 Caratteristica fondamentale di WPS del Warp è la manipolazione diretta degli oggetti, che l’utente effettuata tramite entrambi i pulsanti del mouse: Il primo (pulsante sinistro) viene utilizzato per selezionare gli oggetti, mentre il secondo (pulsante destro) effettua il “dragand-drop” (trascina-e-rilascia). Drag-and-drop è una delle parole di OS/2 Warp. E’ una funzione tramite la quale è possibile spostare o copiare oggetti (file di dati, cartelle, dispositivi) da un posto ad un altro della scrivania. 252 Storia di OS/2 Un’altra novità di OS/2 Warp è il supporto didattico che si presenta potenziato rispetto alla precedente versione. Dopo l’accensione del Personal immediatamente successiva all’installazione di OS/2 Warp, il sistema si presenta all’utente eseguendo l’applicazione Supporto Didattico (o Tutorial), un programma di aiuto interattivo per introdurre l’utente ad alcuni dei concetti base di funzionamento del sistema. La figura ne presenta la copertina. 253 Storia di OS/2 Tale supporto didattico consiste di una serie di pannelli di testo e immagini grafiche per illustrare i criteri fondamentali per interagire con il sistema operativo. Tra gli esempi trattati compare la descrizione dell’uso del mouse e l’accesso ai menu di una finestra. L’esecuzione del Supporto Didattico non è limitata alla prima accensione del sistema, ma l’oggetto risiede nella cartella Informazioni e tra gli oggetti del Launch Pad. Risulta evidente che lavorare con OS/2 Warp è semplice, ma soprattutto produttivo grazie anche all’ausilio di svariate applicazioni di utilità introdotte con il Bonus Pack fornito insieme al sistema operativo. 254 Storia di OS/2 Nel 1995 successivamente escono altre due versioni di OS/2 3.0 denominate Connect e Server, che integrano una serie di tool di rete IBM avvantaggiandosi della ottima stabilità raggiunta da OS/2 che ne fa una buona piattaforma per server di rete. 255 Storia di OS/2 Nel 1996 viene rilasciato Warp Server . E' la combinazione di Warp 3 con le capacità di una versione avanzata dei prodotti LAN server 4.0 di IBM. OS/2 Warp server risulta essere una piattaforma integrata ideale per l'emergente mercato dei server, completo di tutti i tradizionali servizi di stampa e condivisione file. Comprende accesso remoto e advanced backup disaster e recovery. 256 Storia di OS/2 Nel 1996 esce l'ultima versione completa di OS/2, la Warp 4.0 (nome in codice Merlin). 257 Storia di OS/2 Warp 4 sfoggia una nuova veste grafica, integra i tool di rete della precedente versione Connect e in più ha un client di rete universale, capace di connettersi a praticamente ogni tipo di rete e di protocollo esistente possiede inoltre il supporto per la sincronizzazione dei files e la gestione remota dell'accesso che permette di collegarsi alla propria macchina da una qualsiasi stazione in rete. Fornisce la WarpGuides un modo intelligente per guidare l'utente nelle azioni più comuni. Il desktop configurato per l'accesso ad internet consente l'accesso ai siti preferiti con un solo click. 258 Storia di OS/2 OS/2 Warp 4 introduce inoltre miglioramenti nell'interfaccia utente rendendola ancora più funzionale ed intuitiva, con icone tridimensionali ombreggiate, 256 colori (o più) molti sfondi personalizzati. Le cartelle sono di nuovo disegno ed è possibile personalizzare gli indicatori degli argomenti con diversi colori. Inoltre OS/2 Warp 4 integra una nuova versione del Lotus SmartCenter (detto WarpCenter) una barra ad icone della scrivania elettronica che permette di attivare facilmente i programmi e verificare lo stato del sistema. 259 Storia di OS/2 In particolare WarpCenter crea dinamicamente: una vista di tutto quanto c'e' sull'area di lavoro del PC la lista dei programmi attivi indicatori di stato relativi allo spazio libero sul disco ed al livello di carica della batteria dei PC portatili. WarpCenter, essendo sempre visibile, permette di attivare una nuova applicazione, verificare il contenuto di un drive o collegarsi ad Internet senza dover chiudere la finestra su cui si sta lavorando. 260 Storia di OS/2 Ma ormai il destino commerciale di OS/2 è segnato. Nel 1997 IBM decide di congelarne lo sviluppo. Nel 1999 IBM smentisce le voci di una versione 5.0 di OS/2, ma in cambio lo aggiorna un'ultima volta ed esce Warp Server for eBusiness (nome in codice Aurora; versione 4.5) che integra un nuovo kernel. 261 Storia di OS/2 Nel 2000 IBM rilascia il Convenience Pack che contiene in pratica una nuova versione di Warp Server for eBusinness e di Warp 4. Nel 2002 viene rilasciato il Convenience Pack 2. Questa è al momento l'ultima versione di OS/2 rilasciata da IBM 262 La Storia del sistema operativo BeOS 263 Cos'é BeOS? BeOS é un sistema operativo basato sul concetto di MediaOS, termine ideato dai progettisti della Be inc per indicare un sistema operativo in grado di manipolare le grandi quantitá di dati multimediali. 264 Cos'é BeOS? Caratteristiche principali BeOS al contrario di quanto si crede non nasce da Unix ma é stato scritto da zero per non avere vincoli di compatibilità e quindi poter implementare soluzioni e caratteristiche moderne. In BeOS tutte le applicazioni aperte vengono eseguite contemporaneamente e non una alla volta; si possono lanciare applicazioni, navigare sul web, vedere video e ascoltare audio contemporaneamente, senza necessità di aspettare la fine di ogni esecuzione dei comandi impartiti tutto ciò perché BeOS è un sistema realtime ovvero studiato per eseguire molteplici operazioni insieme senza rallentare le prestazioni del p.c. su cui si sta lavorando. BeOS è un sistema multiprocessore, infatti supporta il Simmetric Multiprocessing che gli permette di gestire fino ad 8 processori in parallelo, ( si può notare come la velocità e le prestazioni del computer aumentano se si utilizza un sistema multiprocessore con BeOS. 265 Cos'é BeOS? Ogni applicazione viene eseguita in un suo determinato spazio di memoria; grazie all'utilizzo della memoria protetta è praticamente impossibile pensare di mandare in crisi il sistema, se eventualmente un applicazione va in crash basta semplicemente effettuare il kill dell'applicazione e continuare a lavorare come se niente fosse accaduto. 266 Cos'é BeOS? Con BeOS si può: sfogliare il web spedire e-mail BeOS supporta infatti la piena integrazione con il protocollo TCP/IP dando la possibilità di navigare in Internet . 267 Cos'é BeOS? Desktop di BeOS 268 Cos'é BeOS? BeOS 5 non é molto esigente in fatto di risorse hardware; basta possedere: un processore Pentium 32 Mbyte di Ram, circa 500 Mbyte di spazio libero su Hard Disk una scheda grafica compatibile con lo standard Vesa. Purtroppo non sono supportate tutte le periferiche poiché molti produttori hardware non considerano gli utenti nonWindows. 269 Storia del sistema operativo BeOS Verso la fine di Settembre del 1990 Jean-Louis Gassée e Steve Sakoman lasciarono la Apple con l'idea di costruire una macchina che avrebbe dovuto suscitare lo stesso senso di lealtà e attaccamento del computer Amiga, una macchina che aveva affascinato per anni Gassée; questa macchina avrebbe avuto un sistema operativo innovativo che superasse i limiti degli altri sistemi nella gestione dei dati multimediali. 270 Storia del sistema operativo BeOS Jean-Louis Gassée prima di fondare la Be Incorporated nel1990 é stato per più di 9 anni un ingegnere della Apple come presidente del settore ricerca e sviluppo dei nuovi prodotti; il cofondatore Steve Sakoman era direttore dello sviluppo delle CPU e delle linee di produzione di Apple II, Macintosh e Newton. 271 Storia del sistema operativo BeOS L'anno dopo aver lasciato la Apple Gassée e Sakoman iniziarono a lavorare al loro progetto e alla fine del 1999 Sakoman aveva costruito il primo prototipo con processore AT&T Hobbit (lo stesso usato nei primi prototipi Newton), la macchina fu soprannominata Be-1 nome che fu poi sostituito con BeBox. I chips AT&T Hobbit furono preferiti ai chips Intel per il minor costo, infatti costavano circa $35 l'uno rispetto ai $300 necessari per comprare un Intel 386s . 272 Storia del sistema operativo BeOS Verso la fine del 1991 Sakoman finì di realizzare il secondo prototipo costruito a mano in garage (come nella storia dei primi Apple) con cinque processori AT&T Hobbit RISC e tre 3210 DSP che gestivano (video, audio e input/output); per tre anni Sakoman continuò a migliorare la BeBox, aggiungendoci varie componenti. I processori Hobbit non ebbero mai un'ampia diffusione e così la AT&T che li aveva sviluppati per alcune macchine portatili ne cessò la costruzione uscendo definitivamente dal mercato dei processori; 273 Storia del sistema operativo BeOS la Be fu così costretta a cambiare l'architettura hardware della BeBox e ad utilizzare il chip PowerPC 603, che ancora una volta fu preferito ai chips Intel per il miglior rapporto prezzo/prestazioni; la prima revisione progettata da Glenn Adler fu ottenuta aggiungendo una scheda contenente i PowerPC alla macchina esistente basata sui processori Hobbit, grazie a questo ibrido fu possibile iniziare la migrazione verso la piattaforma PPC; più tardi a Joe Palmer fu affidato il compito di progettare e costruire la BeBox basata su PPC. 274 Storia del sistema operativo BeOS Nell'ottobre del 1995 veniva, per la prima volta, presentata al pubblico la BeBox insieme alla prima demo del sistema operativo BeOS, generando un grande interesse tra utenti e sviluppatori. Nel gennaio 1996 la Be Inc con sole 100 BeBox messe a disposizione degli sviluppatori raccolse circa 1000 applicazioni inviate da aspiranti Be Developer, inoltre nello stesso mese uscì la DR6 del sistema BeOS. 275 Storia del sistema operativo BeOS Durante il MacWorld tenutosi a Boston nell'agosto del 1996 la Be mostrò per la prima volta al pubblico il sistema operatico BeOS funzionante su un Power Macintosh, nel frattempo il BeOS per la BeBox non era ancora maturo; mentre la BeBox, che molti allora definirono il nuovo Amiga, era pronta e conteneva due processori PowerPC 603 a 66Mhz (o 603e a 133 Mhz) della Motorola, il prezzo della versione base sul mercato americano era di $1600 mentre il sistema completo arrivava a $3000 . 276 Storia del sistema operativo BeOS A metà del 1996 la Apple che viveva una grave crisi si avvicinò alla poco conosciuta Be Inc. con l'intenzione di prelevarla in blocco e di fare proprio il suo sistema operativo, in questo frangente Gassée riuscì a trarre vantaggio dalla situazione per far conoscere e lanciare nel mondo informatico la Be Inc.; le trattative tra la Apple e la Be Inc. andarono avanti finché Steve Jobs, uno dei due inventori del primo Apple, riuscì a convincere i vertici della Apple a scartare la Be e a comprare la Next, di sua proprietà, per $400 milioni di dollari una cifra che era il doppio di quanto chiesto dalla Be . 277 Storia del sistema operativo BeOS Una volta tornato alla Apple, Jobs non rilasciò più le specifiche per le nuove macchine (i PowerMac G3) di fatto impedendo alla Be di portare avanti lo sviluppo di BeOS per PowerMac; inoltre nonostante le ottime qualità della BeBox il suo costo finale era troppo alto, per cui nel gennaio del 1997 ne fu cessata la produzione per concentrarsi sul solo sviluppo del sistema operativo BeOS che uscì il 14 luglio 1997 nella versione commerciale per PowerPC e nel mese di ottobre nella versione 2. Impossibilitata dalle scelte della Apple a continuare lo sviluppo del suo sistema operativo per l'architettura PowerMac la Be Inc. decise di iniziare il porting per i PC (x86) e da notare che fino ad allora tale eventualità era stata indicata come impossibile o molto improbabile. 278 Storia del sistema operativo BeOS Nel marzo del 1998 arriva la prima versione di BeOS per Intel (e "vecchi" PowerPC), la versione 3 che supportava una ridottissima serie di schede audio e video e a novembre dello stesso anno la versione 4 seguita dalla 4.5, infine nel marzo 2000 la R5, prima in versione gratuita (BeOS Personal Edition) e dopo qualche mese in versione Professional; la R5 ha avuto due upgrade: il 5.0.1 e il 5.03 del 27 Marzo 2000 che di fatto é l'ultima versione rilasciata di BeOS. 279 Storia del sistema operativo BeOS Varie sono le cause che portarono la Be a rilasciare una versione gratuita del BeOS, tra queste: vi fu sicuramente la difficoltà nel fornire il sistema operativo a distributori OEM per via degli ostacoli creati da Microsoft con i suoi discutibili contratti e l'obiettivo di rendere più semplice provare il sistema senza dover ripartizionare il disco rigido per installarlo; bisogna inoltre notare che ormai la fine era vicina poiché la Be Inc. aveva accumulanto debiti per oltre 54 milioni di dollari. 280 Storia del sistema operativo BeOS Nel tentativo di risollevarsi La Be Inc. cercò di diversificare la sua produzione sviluppando una versione di BeOS adatta al mercato embedded (palmari) chiamata BeIA (Be Internet Appliance), questo riempi di preoccupazione la comunità BeOS circa la sorte del sistema per i desktop; di lì a poco le preoccupazioni si accentuarono quando la Palm iniziò a interessarsi a BeIA e si materializzarono quando il13 Novembre 2001, la Palm completò l'acquisizione della Be inc. divenendo proprietaria di BeOS. La Palm all'inizio non svelò le sue intenzioni nonostante la pressante richiesta di chiarimenti sul futuro di BeOS avanzata dalla comunità, e solo dopo aver negato la licenza per il codice sorgente di BeOS al BeUnited group chiarì che non aveva intenzione di puntare su BeOS per ragioni tecniche e d'affari. 281 Storia del sistema operativo BeOS Dopo pochi giorni dall'annuncio che la Palm stava per comprare BeOS nasceva il progetto OpenBeOS con l'obiettivo principale di consegnare il controllo del Sistema alla comunità BeOS evitando così che la Palm o un'altra compagnia potesse deciderne il destino; OpenBeOS ha ricevuto da subito l'appoggio della comunità e alcuni programmatori si sono aggregati per iniziare a lavorare a questo ambizioso progetto che ha come base le parti del sistema che la Be Inc. aveva reso opensource (Deskbar e Tracker), il progetto viene sviluppato per gruppi di programmazione che si dedicano alle varie parti del Sistema. 282 Storia del sistema operativo BeOS Oltre a OpenBeOS tra i progetti, chiamati i "cloni BeOS", nati per ricreare BeOS ci sono: "Blue Eyed OS" guidato dal Guillaume Maillard e "Cosmoe" che sono essenzialmente dei tentativi per ricreare BeOS basandosi su un kernel Linux. Nel periodo prima dell'acquisizione da parte della Palm la Be Inc. oltre a lavorare a BeIA stava testando alcuni aggiornamenti per BeOS tra cui: BONE che sta per BeOS Networking Environment e doveva rappresentare un grosso passo avanti nella parte del sistema dedicata al netwoking, offrendo nuove possibilità nel settore delle reti allora dominato da Linux/Unix e Windows NT/2000; inoltre viene portato avanti lo sviluppo sulla nuova struttura OpenGL e dei driver con accelerazione 3D. 283 Storia del sistema operativo BeOS La Be Inc non fece in tempo a realizzare la R6 con gli annunciati BONE e OpenGL ma poco dopo l'acquisizione della Palm forse per mano di qualche dipendente della Be Inc. compare sul Web BeOS 5.1 (detto "Dano") una versione illegale e ancora sperimentale di BeOS (con OpenGL non ultimato, BONE e una GUI migliore della R5) frutto degli ultimi sforzi della Be Inc.; la Palm, che di fatto era la nuova proprietaria di questo materiale, non reagì dimostrando il più assoluto disinteresse per la sorte di BeOS. Venendo ai giorni nostri, la comunità é tuttora impegnata nel portare avanti e sostenere i vari progetti che mirano a ricreare BeOS mentre la YellowTAB una compagnia con base in Germania sta per rilasciare un nuovo aggiornamento di BeOS che si chiama "Zeta"; sicuramente la YellowTAB ha degli accordi con la Palm ma la natura di questi accordi non é ancora di dominio pubblico; la cosa più importante é che Zeta é un update legale di BeOS (in pratica BeOS R6) che si può acquistare. 284 Polemiche ? 285 Polemiche ? In queste slide vengono presentate al lettore, a scopo di curiosità, alcuni articoli critici verso alcune case produttrici di sistemi operativi. Gli articoli sono stati tratti dai seguenti siti: ilmattino.caltanet.it/hermes/ 20040224/NAZIONALE/ESSERE_E_AVERE/TETE.htm http://www.vnunet.it/computerresellernews/detalle.asp?ids=/A rticoli/News//20030603008 http://www.tmcrew.org/csa/l38/multi/microsoft/le_monde_dip l_02.htm http://utenti.lycos.it/progettoeurasia/bmicrosoft.htm http://processo.microsoft.oasi.asti.it/0704.html 286 Polemiche ? http://www.cerca360.com/load.asp?page=http://www.wowarea.c om http://www.iltuosistema.it/storia.html Leggere Ralph Nader e James Love, "Microsoft, monopolio del prossimo secolo", le Monde diplomatique/il manifesto, novembre 1997. http://www.mmedium.com/dossiers/piege/ Leggere Bernard Lang, "Des logiciels libres à la disposition de tous", le Monde diplomatique, gennaio 1998. Le Monde informatique, 2 luglio 1998, e http://www.aful.org/ 287 Articolo 1 288 Microsoft contro Linux ? Windows e' un sistema operativo di tipo proprietario, cioè non gratuito. In altre parole non sono disponibili i sorgenti di Windows e per ogni copia occorre acquistare una licenza d'uso . Linux al contrario, e' un sistema operativo non proprietario e gratuito, del quale sono disponibili i sorgenti. Inoltre, essendo disponibili i sorgenti, Linux è sottoposto ad una continua ed interminabile revisione ad opera della comunità di programmatori sparsi in tutto il mondo che contribuisce al suo sviluppo. Perciò gli errori dei programmi presenti su Linux vengono più facilmente controllati e corretti. Windows non viene revisionato da migliaia di programmatori. 289 Microsoft contro Linux ? Windows è di proprietà della Microsoft, che è l'unico soggetto in grado di poterlo modificare e correggere. Quindi c'e' oggettivamente una fase di revisione degli errori molto più limitata. Inoltre quando viene rilasciata una versione nuova di Windows occorre pagarla. Quando esce una 'versione' nuova di Linux al contrario, e' sufficiente scaricarla dalla rete senza dover pagare . Migliore qualità e costo zero quindi, ecco perchè molte persone stanno cominciando ad indirizzarsi verso il mondo Linux. E di questo fatto se ne sono accorte anche le grosse case produttrici di software, che stanno cominciando a produrre software utilizzabile su piattaforma Linux. 290 Come nasce il monopolio Microsoft A questo punto occorre illustrare come un prodotto come Windows si sia imposto sul mercato ed abbia acquisito una posizione di monopolio, nonostante esistano in giro sistemi operativi di qualità superiore come appunto Unix (commerciale) e Linux (gratuito). Nel 1969 Ken Thompson degli AT&T Bell Laboratories sviluppò il sistema operativo Unix e 22 anni più tardi, nel 1991 uno studente di scienze dell'informazione dell'universita' di Helsinki, Linus Torvalds ideò Linux: una versione per PC di Unix. Linux però nacque come progetto di ricerca e non come operazione commerciale, perciò l'obiettivo di Linus Torvald non era quello di acquisire maggiori fette di mercato rendendolo un prodotto facile da usare. 291 Come nasce il monopolio Microsoft Infatti le prime versioni di Linux erano abbastanza difficili da usare: occorreva realmente essere degli esperti informatici. Questo non fu lo stesso ragionamento di Bill Gates, che al contrario ha sempre mirato al raggiungimento di fette di mercato sempre più ampie fino a acquisire di fatto una posizione di monopolio. In molti paesi molte marche di computer vendono i loro personal con Windows preinstallato e non e' possibile acquistarne uno senza Windows. In Italia e' leggermente diverso, nel senso che e' possibile farlo anche se non tutti lo sanno. Infatti esiste un accordo tra i rivenditori di computer e la Microsoft: per ogni versione preinstallata su un computer il rivenditore deve pagare una cifra alla Microsoft e tale cifra fa parte poi del prezzo posto all'acquirente. 292 Come nasce il monopolio Microsoft In altre parole oggi in Italia e' possibile acquistare un PC e farsi preinstallare Linux (ormai alla portata anche dell'utente meno esperto), e questo i venditori di computer non lo dicono... ;o) Ma la posizione di monopolio e' stata acquisita dalla Microsoft grazie ad abili trucchi e stratagemmi che avevano come primo obiettivo il consolidamento del monopolio e non certo la soddisfazione dell'utente finale e la produzione di software di qualita'. Si sente spesso utenti di Windows dire frasi del tipo: 'ogni tanto si pianta il PC se uso quel tale programma', oppure: 'ogni tanto succede questa cosa strana e devo spegnere e riaccendere il computer' o ancora: 'ho paura a toccare questo programma o ad installarne uno nuovo, perche' una volta l'ho fatto e si e' bloccato tutto'. 293 Come nasce il monopolio Microsoft Utenti che pensano di non essere troppo esperti e che evitano di 'smanettare' sul loro computer per paura di fare danni, non sapendo che in realtà il loro problema principale e' proprio il sistema operativo che usano e non la loro inesperienza. Nel 1991 nasce il web, nel 1993 nasce Mosaic (il primo browser web grafico) e nel 1994 nasce Netscape Navigator, un browser web grafico di ottima qualità che si diffonde immediatamente tra gli utilizzatori di Internet. Un anno dopo ecco la risposta Microsoft: nasce Internet Explorer e comincia una dura guerra tra la Netscape e la Microsoft. Parte immediatamente una delle prime manovre della Microsoft: offrire Internet Explorer gratuitamente 294 Come nasce il monopolio Microsoft Attenzione però: non proprio gratuitamente, in quanto tale browser web e' disponibile solo su Windows e chi possiede un sistema operativo diverso (ad esempio Linux) non può usarlo. Un'altra mossa della Microsoft e' stata poi l'integrazione di Internet Explorer addirittura all'interno del sistema operativo. Integrazione così forte da impedirne la disinstallazione da parte degli utenti che non erano intenzionati ad usarlo. Il che pratica significa: ti dò questo browser web e tu lo prendi e lo usi insieme a Windows, ma non provare ad usarne altri perché: primo non puoi disinstallare Internet Explorer dalla tua macchina secondo se provi ad installarne un altro, quest'ultimo sicuramente creerà dei problemi di conflitto con il mio. 295 Come nasce il monopolio Microsoft Di fatto questo significa costringere gli utenti ad usare Internet Explorer. Morale della favola: la Netscape e' stata sbaragliata dal colosso Microsoft che l'hanno poi costretta a distribuire Netscape Navigator gratis (fornendo però i sorgenti del programma ). Ora che sta cominciando a diffondersi Linux anche tra gli utenti non troppo esperti grazie alla sua acquisita facilità d'uso e che sta diventando una minaccia per la Microsoft cosa accadra'? 296 Come nasce il monopolio Microsoft Nel novembre del 1998 si diffusero sulla rete dei documenti noti con il nome di 'Halloween documents'. Questi documenti contenevano delle analisi fatte dalla Microsoft relative all'open source ed al fenomeno Linux. Qui viene da loro stessi constatata la notevole qualità del software open source e di Linux e l'impossibilità della Microsoft di raggiungere gli stessi traguardi (in quanto software proprietario). Venivano anche suggeriti dei sistemi per combattere i pericoli open source e Linux. Ancora una volta ecco partire delle strategie che non mirano certo ad ottenere del software di qualità superiore e a soddisfare gli utenti, ma mirano a soffocare un nemico e a stroncarne lo sviluppo e la diffusione . 297 Come nasce il monopolio Microsoft Un' operazione che sa fare molto bene la macchina Microsoft e' quella di obbligare gli utilizzatori di personal computer ad utilizzare Windows e prodotti Microsoft. E' a seguito di queste pratiche scorrette che già nel 1995 la giustizia americana si e' occupata del caso Microsoft. Se una casa produttrice di un sistema operativo (Windows) produce anche gli applicativi che 'girano' all'interno di tale sistema operativo (Word, Excel etc.), e' facile modificare il sistema operativo in modo da essere instabile e andare in errore con programmi prodotti da società concorrenti e funzionare perfettamente solo con i propri. 298 Come nasce il monopolio Microsoft Cosa c'e' dietro il software prodotto dalla Microsoft? Come fa la Microsoft a costringere gli utilizzatori di computer a comprare i suoi prodotti? Perchè i programmi prodotti da terze parti non funzionano correttamente sotto Windows? Cosa significa il messaggio: 'Questo programma ha causato un errore di pagina non valida e sara' terminato'? Semplice, si tratta di manovre per consolidare il monopolio. 299 Come nasce il monopolio Microsoft Qualsiasi prodotto distribuito dalla Microsoft ha tentato in vari modi di imporre delle scelte proprietarie cercando di sovvertire gli standard del momento. Questo si puo' vedere molto bene nei browser web, dove Internet Explorer ha tentato più volte di imporre gli standard Microsoft (con il linugaggio JScript, i tag HTML, il linguaggio ASP e via dicendo). Nei documenti halloween la Microsoft parla esplicitamente delle loro intenzioni di scardinare gli standard attuali in modo da poter imporre i propri. E' da notare che la Microsoft non ha smentito quei documenti ma li ha anzi confermati facendoli passare per semplici analisi di mercato e studi di fattibilità. Internet e' diventata così importante e grandiosa grazie agli standard aperti. Primo tra tutti il protocollo TCP/IP (una sorta di linguaggio esperanto che permette a qualsiasi computer di dialogare con qualsiasi altro) e secondo - ma non per questo meno importante - il linguaggio HTML (che ha permesso la nascita del web). Riuscira' la Microsoft ad imporre i propri standard ed ad eliminare Linux? 300 Come nasce il monopolio Microsoft A questo punto bisogna sfatare alcune convizioni: Prima leggenda sfatata: la Microsoft non inventò l'MS-DOS ma acquistò i diritti dell'86DOS di Tim Paterson Seconda leggenda sfatata: la Microsoft non ha inventato l'interfaccia grafica composta da finestre tipica di Windows, infatti tale merito spetta forse ad un'altra società, la Apple. Quindi la Microsoft non ha inventato i prodotti sopra elencati ma li ha prodotti acquistandone i diritti. 301 Articolo 2 302 Il monopolio Microsoft di Philippe Riviere La fortuna di Bill Gates da le vertigini: il presidente e principale azionista della casa americana Microsoft vale, secondo una graduatoria fatta in luglio dalla rivista Forbes, oltre 50 miliardi di dollari... Quanto a Paul Allen, cofondatore della società, egli si trova alla testa della quarta fortuna professionale del mondo. La percentuale dei profitti di Microsoft non poggia su competenze tecniche fuori dal comune ma su un meccanismo simile a una tassa sulle istallazioni informatiche mondiali. 303 • • Il suo principio è semplice: i costruttori di computer, di stampanti, di software, etc. hanno bisogno di basi comuni per poter proporre prodotti che funzionino insieme. D'altra parte, milioni di utenti vogliono potersi scambiare facilmente i loro documenti. La strategia di Microsoft, fin dalla sua collaborazione con Ibm nel 1981, è stata quella di proporre gli elementi informatici che consentono questi scambi e di farne degli "standard del mercato". A costo di imporli quando il mercato non li adotta spontaneamente. Ciò ha valso a Microsoft una causa per "comportamenti anticompetitivi ed esclusivi, aventi per scopo di consolidare il proprio monopolio sui sistemi di gestione dei personal computer e di estendere questo monopolio ai software di navigazione su Internet". La causa è stata promossa il 18 maggio 1998 dall'amministrazione federale e da venti stati americani. 304 Finora, questa strategia gli è andata bene visto che, fra i suoi prodotti (MS-DOS, Word, Excel, Windows, etc..), numerosi sono quelli che controllano quasi il 90% del mercato dell'intero pianeta .Ma c'è un fatto nuovo: la stampa sottolinea le lagnanze degli utenti: i programmi Microsoft sarebbero "lenti", "sempre più esigenti in risorse [memoria e disco rigido]" e "infarciti di errori". Perciò, molti grandi produttori di computer consigliano ai clienti di aspettare prima di installare Windows 98, per incompatibilità. Qualunque altro editore di software sarebbe fatto a pezzi dalla concorrenza, ma Microsoft si è reso inattaccabile con strumenti tecnici e legali: spesso gli utenti che hanno elaborato dati con i suoi software non possono rileggerli con programmi concorrenti che violerebbero, in tal caso, il copyright di Microsoft. 305 La causa, che potrebbe portare a uno smantellamento simile a quello della compagnia dei telefoni At&t nel 1982, ha intanto consentito al grande pubblico di aprire gli occhi. Lo sviluppo di "standard" alternativi e aperti sta ripartendo . In Francia, il ministero dell'educazione prevede di firmare un accordo con l'Associazione francofona degli utenti di software liberi (Aful) . Le aziende che, appena sei mesi fa, nascondevano il fatto di utilizzare software liberi ne fanno oggi un argomento pubblicitario, incoraggiate dai pezzi grossi come Ibm, Netscape o Oracle e dal successo del film Titanic, i cui effetti speciali sono stati realizzati con questo genere di software. 306 307 Articolo 3 308 Martedì 24 Febbraio 2004 Bill Gates vuol regalare le licenze di Windows ’98 e 2000 alle scuole italiane Di LORENZO DELL’UVA La posizione dominante occupata da Microsoft nel mondo dell'informatica personale non ha pari. Il colosso di Redmond governa saldamente, con percentuali vicine al 90%, il mondo dei sistemi operativi con il suo Windows e dei software per la produttività grazie al celeberrimo Office. La posizione dominante ottenuta da Microsoft anche grazie ad alcune pratiche aziendali al limite dell'illegalità (operate in passato per danneggiare o mettere fuori gioco aziende concorrenti) hanno richiamato, più di una volta, l'attenzione delle autorità Antitrust di tutto il mondo. Mentre negli Stati Uniti, grazie anche all'amministrazione Bush, la partita legale sembra essere stata vinta da Microsoft grazie ad una sentenza che è parsa ai più come «annacquata» i guai con la Comunità Europea sembrano essere più seri, e le autorità europee sembrano intenzionate a 309 «colpire» seriamente la casa di Redmond. L'accusa è sempre la stessa: Microsoft abusa della propria posizione dominante per mettere fuori dal mercato i prodotti concorrenti, ovvero Linux e Mac OS X. In questo scenario certamente stupisce l'annuncio di «Fresh Start» un programma attraverso il quale l'azienda di Gates intende regalare licenze originali di Windows 98 e Windows 2000 alle scuole italiane che ne facciano richiesta ed i cui pc rientrino in certi criteri (stringenti, ma non troppo). Stupisce per vari motivi: innanzitutto uno dei cavalli di battaglia di Microsoft contro Linux è proprio sull'assenza di costo delle soluzioni open source. Il ragionamento sino ad oggi è stato grosso modo questo: «sviluppare software costa caro, quindi chi lo regala fornisce un prodotto non affidabile». Evidentemente in Microsoft hanno cambiato (repentinamente) idea oppure si può concludere che Windows 98 e 2000 non devono essere poi così affidabili. 310 Il vero problema però è che «Fresh Start» rappresenta un attacco diretto al mondo dell'open source: il mondo scolastico guarda da tempo a Linux proprio grazie alla possibilità di usarlo gratuitamente (e vista la situazione della scuola italiana non è un male). Una operazione come questa, potrebbe chiudere definitivamente la partita proprio a favore dell'azienda di Gates. Ma l'attacco è anche contro Apple ed il suo Mac OS X, l'unica soluzione commerciale alternativa a Windows. Solo Microsoft, grazie alla propria potenza economica, si può permettere di regalare un prodotto come Windows, ed Apple, un topolino rispetto al gigante, non può contrastare certo questa offensiva. In pratica è come se in Italia aprisse una nuova catena di supermercati, ricchissima, che per sbaragliare la concorrenza decidesse di regalare la spesa a tutti. Il ministro Stanca, da sempre attento anche alle problematiche del Software Libero, farebbe bene ad intervenire, prima che lo faccia la UE. 311 Articolo 4 312 I tying contracts nell'abuso di posizione dominante: il processo Microsoft Questo articolo è tratto da una Tesi di Laurea che verte sul processo delle Microsoft. Chiunque è interessato a approfondire tale articolo può mandare un e-mail a: [email protected], [email protected], [email protected] 313 Riflessioni sulla condanna 7 aprile 2000 a) Microsoft ha indubbiamente abusato di una posizione dominante non interamente derivante dalla superiorità qualitativa dei suoi prodotti, ma anche dalla sua condotta commerciale spregiudicata. In particolare il monopolio Microsoft é protetto da alcuni fattori: -la barriera di entrata delle applicazioni, che si trovano in grande quantità praticamente solo su piattaforma Microsoft. -la pratica di Microsoft di legare a sè gli OEMs attraverso forme contrattuali anticompetitive.. b) Microsoft , integrando IE 4.0 in Windows 98 non ha tanto seguito la tendenza di un m,ercato un cui gli utenti desideravano un sistema integrato col Web, quanto il proprio intento di tagliare le gambe alla concorrenza, anche servendosi astutamente della pigrizia dell'utente medio. 314 c) L'integrazione del browser nel sistema operativo é la prima tappa di una politica diretta a far propri tutti o la maggior parte dei servizi fruibili via internet attraverso l'architettura client/server. Un esempio potrebbe essere la recente integrazione di WMP nel sistema operativo al fine di superare la concorrenza di Apple e RealNetworks nel settore del audio/video streaming Altro esempio può essere la introduzione di specifiche proprietarie Di Ms FrontPage nelle pagine web prodotte con questo software... d) altre funzionalità avrebbero potuto essere introdotte con un vantaggio ben più grande per l'utente finale.Alcune di queste sono presenti in Windows 98 e Windows 2000 ma i due os hanno avuto grande ritardo nel loro rilascio con danni incalcolabili per i produttori hardware che hanno inutilmente atteso mesi per aver il supporto software per i loro prodotti. Esempio: il supporto per le schede AGP e per le porte USB che soprattutto per le seconde si é fatto attendere addirittura due anni!!! 315 e)il danno per la concorrenza non é quantificabile come non lo é quello per gli utenti. f)si é affermato il principio che una software house non può invocare le leggi sulla proprietà individuale per violare norme antitrust. g) si é affermato il principio, contrariamente a quanto Microsoft aveva richiesto, che lo Sherman Act del 1890 é assolutamente applicabile all'industria del software in quanto normativa flessibile ed adattabile ai tempi. 316 Siti Consultati 317 Siti Consultati ilmattino.caltanet.it/hermes/ 20040224/NAZIONALE/ESSERE_E_AVERE/TETE.htm http://www.vnunet.it/computerresellernews/detalle.asp?ids=/A rticoli/News//20030603008 http://www.tmcrew.org/csa/l38/multi/microsoft/le_monde_dip l_02.htm http://utenti.lycos.it/progettoeurasia/bmicrosoft.htm http://processo.microsoft.oasi.asti.it/0704.html http://www.cerca360.com/load.asp?page=http://www.wowarea.c om http://www.iltuosistema.it/storia.html Leggere Ralph Nader e James Love, "Microsoft, monopolio del prossimo secolo", le Monde diplomatique/il manifesto, novembre 1997. http://www.mmedium.com/dossiers/piege/ Leggere Bernard Lang, "Des logiciels libres à la disposition de tous", le Monde diplomatique, gennaio 1998. Le Monde informatique, 2 luglio 1998, e http://www.aful.org/ 318 Siti Consultati http://www.windoweb.it/edpstory_new/em.htm http://journal.pluto.it/pj9812/storia-unix.html http://www.linux.it/ospiti/majin/storia-unix.php http://www.ufficioscolastico.liguria.it/USProvinciali/Genova/tec nologia/Vivere_PC/Indice.htm http://www.ufficioscolastico.liguria.it/USProvinciali/Genova/tec nologia/Vivere_PC/Parte8%5Cw981.htm (http://www.uniud.it/rep/) http://www.ecomstation.it/pido2/ http://www.be.com Informazioni ufficiali tecniche: http://www.beeurope.com Informazioni e software: http://www.bespecific.com http://it.wikipedia.org/wiki/MS-DOS 319 Siti Consultati Il sito web ufficiale (http://www.freedos.org) Un buon tutorial in italiano (seguire il link FreeDos) (http://www.sintesinet.net/main/) Ricavato da "http://it.wikipedia.org/wiki/FreeDOS http://digilander.libero.it/bunix/it_hist.html http://www.dizionarioinformatico.com/cgilib/diz.cgi?frame&key=unix http://digilander.libero.it/linuxboxitalia/html/Storia_Linux.htm l http://www.risorsehitech.it/informatica/guide/linuxfacile_12/networking_release.php http://www.windoweb.it/edpstory_new/ex.htm 320