I primi anni ottanta furono un periodo di grande fermento per il nascente mercato dei "Personal Computer" (PC). Microsoft assunse un ruolo di primo piano fin da subito grazie alla profittevole partnership con IBM ma, nonostante l'inarrestabile successo già ottenuto con MS-DOS, Bill Gates e soci conservarono l'entusiasmo e continuarono a sviluppare ed investire in un nuovo prodotto: fu così che, il 20 novembre 1985, arrivò il capostipite del sistema operativo per PC leader del mondo moderno: Windows 1.0
nota: questo articolo fa parte de La storia completa di Windows.
Windows 1.0: una shell per MS-DOS (ma non solo)
La primissima iterazione di Windows della storia è pressoché irriconoscibile agli occhi del pubblico moderno. Questo è vero tanto dal punto di vista estetico, quanto per via delle meccaniche di funzionamento.
Windows 1.0 non era infatti un vero e proprio "sistema operativo", ma pocopiù di una mera "shell", ovvero un'interfaccia grafica (GUI) che girava sul vero sistema operativo sottostante: MS-DOS 2.0
In realtà questa definizione sminuisce il ruolo della piattaforma: oltre a veicolare una GUI, Windows 1.0 offriva anche un gestore di memoria proprio, funzioni per l'accesso all'hardware ed un nuovo formato per gli eseguibili (vedi seguito).
Ad ogni modo: la principale attrattiva di Windows 1.0 per gli acquirenti era indubbiamente l'interfaccia grafica e la promessa di fornire all'utente un modo "visuale", e dunque più semplice e gradevole, di interagire con il computer. Per i tempi fu un cambio di paradigma notevole: ricordiamo infatti che la modalità standard di lavorare all'epoca era inserire lunghi comandi sul "prompt" testuale di MS-DOS
L'arrivo di una shell grafica comportò un più massiccio uso del mouse rispetto alla tastiera: mentre, in precedenza, la selezione delle azioni desiderate era delegata ai tasti funzione (F1-F12), l'arrivo del "cursore" finì per rendere obsoleta questa modalità. Si trattò di un processo graduale che richiese molti anni e varie iterazioni, ma il tutto iniziò qui.
Interfaccia grafica: un'idea copiata da Apple (copiata da Xerox)
Non fu certo Microsoft la prima ad implementare l'idea di "interfaccia grafica". Già all'epoca, infatti, erano in circolazione soluzioni analoghe.
Visi On dell'azienda VisiCorp, in particolare, si poneva proprio il medesimo obiettivo: fornire una shell grafica per MS-DOS
Non ebbe mai successo, ma la dimostrazione pubblica tenutasi durante la fiera COMDEX del 1982 colpì positivamente Bill Gates che iniziò ad intavolare il progetto per realizzare una propria soluzione analoga.
Ma l'influenza principale fu probabilmente la GUI che Apple stava sviluppando per il primissimo Macintosh: un prodotto che il team di Gates aveva imparato a conoscere nel 1983, mentre sviluppava le declinazioni per Mac dei propri prodotti. La similitudine più marcata fra i due si rileva nella metafora del "desktop" (scrivania) per identificare lo spazio di lavoro a contatto con l'utente.
In vero, anche Apple stessa stava capitalizzando sul lavoro di altri. In particolare, il vero ideatore delle interfacce grafiche è probabilmente tale Douglas Engelbart, che aveva utilizzato questo paradigma per il sistema oN-Line System (NLS) del 1968. Il paradigma era poi stato ripreso e migliorato presso il centro di ricerca e sviluppo di Xerox di Palo Alto (PARC), il cui PC del 1973 chiamato Xerox Alto è generalmente citato, forse impropriamente, quale "primo computer commerciale ad utilizzare una GUI".
Arrivano le finestre (non-sovrapponibili)
Windows 1.0 permetteva alle nuove applicazioni scritte appositamente per Windows di mostrarsi all'interno di una finestra. Il sistema visualizzava poi più "finestre" contemporaneamente: da qui, il nome "Windows" (è la traduzione letterale del termine "finestre")
Le icone delle applicazioni ridotte ad icona venivano raccolte sulla Barra delle applicazioni in basso. Era poi possibile passare dall'una all'altra cliccando sulla miniatura desiderata. Il paradigma è simile a quello in uso ai tempi nostri, insomma, con la differenza sostanziale che le applicazioni spariscono dalla barra quando vengono ripristinate: questo complica notevolmente le cose
In alternativa, il comando Zoom
proposto dal menu ≡
in alto a sinistra permetteva di massimizzare le dimensioni dell'applicazione corrente fino a coprire la barra in basso.
I programmi per MS-DOS incompatibili venivano invece sempre eseguiti "a schermo intero" (fullscreen), come era tradizione in ambiente MS-DOS "puro".
La primissima generazione di Windows imponeva un limite forte: le finestre potevano essere visualizzate una di fianco all'altra (visualizzazione chiamata tile) e ridimensionate, ma non era concesso di sovrapporle -nemmeno parzialmente- le une sulle altre. Questa comodità arrivò solo a partire da Windows 2.0.
L'unica eccezione erano le finestre di dialogo note come "modali", ovvero i messaggi che, generalmente, includono solo il pulsante OK
oppure OK
e Annulla
: queste potevano già apparire sopra alle altre
Stando ad alcune informazioni recuperate in rete, pare che la limitazione fosse stata forzata per motivi legali, e non tecnici: le finestre sovrapponibili erano infatti state brevettate da Apple. Per evitare un contenzioso per violazione di proprietà intellettuale, Microsoft avrebbe scelto di bloccare questa libertà.
I rapporti fra le due aziende rimasero così "cordiali", ma solo fino al debutto di Windows 2.0. In quella occasione, Microsoft sbloccò la sovrapponibilità delle finestre e, di conseguenza, Apple trascinò in tribunale la concorrente millantando l'abuso dei propri brevetti
» Leggi: La storia di Windows, anno 1987: Windows 2.0
Apple perse, e Microsoft fu libera di proseguire.
Gli eseguibili Windows (NE)
Windows 1.0 introdusse un nuovo formato per i programmi chiamato new executable (NE): l'estensione rimaneva .exe, come per i programmi MS-DOS, ma i software pacchettizzati NE potevano girare solo all'interno di Windows.
La novità principale del formato era la possibilità di caricare codice e dati al momento del bisogno ("on demand"). L'efficienza rispetto al modello precedente, che imponeva il trasferimento preventivo dal disco alla RAM dell'intero software prima di poterlo eseguire, si innalzò drasticamente e permise di scrivere applicativi realmente capaci di funzionare uno di fianco all'altro senza saturare completamente la memoria centrale.
memoria virtuale e API
Windows 1.0 era dotato di un gestore di memoria virtuale: le applicazioni potevano dunque allocare più memoria di quanta RAM fosse materialmente disponibile sul sistema, demandando alla piattaforma Windows l'onere di spostare su disco (swap) i dati inutilizzati.
Un altra novità importantissima fu l'inclusione di driver per le periferiche di input/output (video, mouse, tastiera, stampanti, porte seriali). Le applicazioni potevano dunque finalmente utilizzare le Application Programming Interface (API) esposte per accedervi, senza doversi più preoccupare delle peculiarità di ogni diverso modello o della complessità intrinseca nell'accesso diretto all'hardware.
I programmi in dotazione
Il costituente principale di Windows 1.0 è un programma di nome MS-DOS Executive che svolge il ruolo di Esplora file e permette la visualizzazione del file system. Da qui, l'utente può aprire i file e lanciare le applicazioni scegliendole dalla lista
A corredo troviamo altre alcune applicazioni e utility. Fra le principali, ricordiamo Calcolatrice, Calendario, Visualizzatore appunti, Orologio, Blocco note, Paint, Terminale, il gestore di informazioni Schedario e l'editor di testi Write
È incluso anche un gioco: la trasposizione in digitale di Reversi, meglio noto con il marchio registrato Othello. Per i non-appassionati, basti dire che l'aspetto è simile alla dama
Requisiti di sistema
Windows 1.0 era commercializzato come software "in scatola" e veicolato su quattro floppy disk (due per il sistema operativo, due per i programmi aggiuntivi).
Si poteva poi scegliere se eseguirlo direttamente da dischetto oppure installarlo sul disco fisso interno: in realtà, i computer dell'epoca dotati di hard disk erano davvero molto pochi
Come detto, era necessaria la presenza di MS-DOS 2.0 quale base.
A livello hardware, gli articoli che ho consultato parlano di 192 oppure 256 kB (kilobyte!) di RAM. Bastava un monitor CGA (risoluzione 640×200 pixel) in bianco e nero, ma Windows 1.0 supportava anche i più avanzati modelli a colori con risoluzione EGA (640×350).
Evoluzione o rivoluzione?
Molte fonti che ho consultato nella preparazione di questo articolo liquidano Windows 1.0 come una mera shell grafica per MS-DOS.
Sebbene sia indubbiamente questo l'aspetto più evidente ed è indubbio che MS-DOS fosse un pre-requisito, le funzionalità di basso livello appena presentate tracciano i contorni di un progetto molto più rilevante: la presenza delle API per l'accesso all'hardware, del gestore di memoria e del nuovo formato per gli eseguibili contornano infatti un software agli albori, che Microsoft avrebbe continuato a sviluppare ed ampliare progressivamente sino a sostituire del tutto MS-DOS.
Come a dire: questa è veramente una versione "unopuntozero" capace di gettare le basi per quello che venne dopo.
Windows Premiere Edition e Versioni successive
Qualche mese prima del lancio della versione finale, Microsoft rese disponibile ad un ristretto gruppo di giornalisti, partner e tester una build d'anteprima di quello che sarebbe divenuto Windows 1.0. Il software fu battezzato Microsoft Windows Premiere Edition
In seguito, il prodotto venne completato con il nome di "Windows 1.0" ma, poco prima del lancio sul mercato, venne rilevato un difetto critico nella gestione della memoria che costrinse il team di sviluppo a riscrivere parte del sottosistema dedicato.
La compilazione epurata dal difetto fu quella che effettivamente arrivò sugli scaffali: mantenne il nome "Windows 1.0" sulla confezione, ma, internamente, si presentava come "Windows 1.01" proprio per differenziarsi dalla build difettosa
La prima versione aggiornata, Windows 1.02, arrivò nel maggio 1986: si trattò di una versione rivolta al pubblico "internazionale" (da intendersi come non-statunitense). Come tale, veicolava il supporto a layout di tastiera diversi da quello USA e nuove lingue per l'interfaccia.
Windows 1.03 dell'agosto 1986 integrò il supporto a nuove periferiche e modalità video, oltre alla piena compatibilità con MS-DOS 3.2.
L'ultima versione di questo ramo fu Windows 1.04 dell'aprile 1987. La novità principale fu il supporto alla nuova linea IBM PS/2 e ad altre periferiche hardware, ma veicolò anche schermate di boot rinnovate. Dette grafiche saranno poi riutilizzate su Windows 2.0
Ricezione del mercato e fine del supporto
Al debutto sul mercato del 20 novembre 1985, Windows 1.0 ottenne giudizi generalmente sfavorevoli.
L'aumentato uso del mouse non venne visto di buon occhio da un pubblico storicamente abituato a lavorare pressoché solo con la tastiera. Inoltre, il cambio nell'aspetto e nelle modalità di lavoro rispetto ad MS-DOS fu probabilmente troppo repentino, generando insoddisfazione negli utenti costretti ad imparare a lavorare in un modo completamente nuovo (ricordiamo che non esistevano i motori di ricerca, e l'accesso alle informazioni era dunque totalmente demandato ai manuali cartacei!)
Un altro punto di attrito furono i requisiti hardware: i dischi fissi interni, in particolar modo, erano estremamente rari.
Come era facile prevedere, le prestazioni furono giudicate da molti insoddisfacenti, in particolar modo durante il multitasking: nonostante le tante ottimizzazioni, probabilmente non vi era materialmente RAM a sufficienza per eseguire molteplici applicazioni affiancate. Questo generava un volume elevato di "swap" e il conseguente decadimento nella velocità di reazione (fenomeno noto come "trashing").
Ciò nonostante, Windows 1.0 fu il capostipite di una lunga dinastia ed un tassello-chiave nel decretare il successo di Microsoft.
Rimase sotto supporto per ben 16 anni, fino al 31 dicembre 2001: in buona sostanza, Microsoft lo dichiarò abbandonato solamente in seguito al debutto di Windows XP
» Leggi: La storia di Windows, anno 2001: Windows XP
Le similitudini di Windows 8
In retrospettiva, è interessante notare i parallelismi fra Windows 1.0 (rilasciato nell'anno 1985) e Windows 8 dell'anno 2012. Nonostante i quasi 30 anni a separarli, anche Windows 8 presentò una "nuova shell" in esecuzione su di un sistema operativo ampiamente mutuato da Windows 7: questa volta si trattava della schermata Start e delle "app moderne" realizzate con la nuova tecnologia Windows Runtime (WinRT).
Nemmeno le app WinRT avevano finestre sovrapponibili, ma solamente "affiancabili". Similmente a Windows 1.0, nato dalla volontà di evolvere la piattaforma verso modalità di interazione grafiche, Windows 8 nacque in risposta alla volontà di realizzare una piattaforma adatta all'uso tramite touchscreen.
La rimozione del pulsante Start ed il passaggio agli "angoli caldi" costituì una rivoluzione dall'impatto paragonabile all'incrementato uso del mouse in Windows 1.0
» Leggi: La storia di Windows, anno 2012: Windows 8
Considerate tutte queste similitudini, non c'è da stupirsi se il giudizio del mercato su Windows 8 risultò in larga parte negativo tanto quanto fu quello sul suo antenato più remoto.