Post precedente: Da Interface Manager a Windows 8, le origini
Continuiamo il nostro viaggio attraverso la storia di Windows con il secondo post relativo ai 25 anni dell’ambiente di Microsoft.
Windows al Bivio: OS/2 e le “furbizie” contro Digital Research
Nel 1986 Ballmer sigla ufficialmente l’accordo con IBM per lo sviluppo di un nuovo ed innovativo sistema operativo che dovrà sostituire il DOS e sfruttare proprio la UI di Windows. Nasce così OS/2 che, nella strategia della casa di Redmond, significa anche la morte di Windows come prodotto stand-alone, tant’è che diversi membri del team vengono spostasti in quello relativo al nuovo OS.
Nonostante ciò Trower è al lavoro sulla versione 2.0 che, già dalle prime versioni beta, viene utilizzato dal Microsoft Applications Group per il porting di Word ed Excel. Dopo circa 8 mesi di lavoro, nel 1987, Microsoft rilascia in sordina Windows 2.03.
Windows 2.03
La nuova release incorpora le caratteristiche che, come descritto precedentemente, erano state eliminate dalla prima release, tra cui: finestre sovrapponibili (overlapping windows) e font ridimensionabili nella title bar. Tutte le modifiche vengono effettuate con un team praticamente rinnovato e cercando di garantire la compatibilità con Presentation Manager la UI di OS/2.
Ma la novità più rilevante è la possibilità di superare il limite dei 640Kb di indirizzamento contiguo per la memoria, imposto dall’architettura Intel pre-386. La procedura sviluppata deriva direttamente da un tavolo tecnico tra IBM, Lotus e Microsoft, rappresentata da David Weise, da poco entrato nel team di Windows e proveniente dalla piccola start-up Dynamical Research, acquisita dalla casa di Redmond per fare propria la tecnologia Mondrian, simile a quella di TopView, da integrare in OS/2.
Il codice sviluppato viene utilizzato anche dal team dell’MS-DOS, guidato da Adrian King, per lo sviluppo di un nuovo Memory Management del Kernel specifico per il nuovo i386. Lo stesso viene inglobato in Windows/386 (alias Win 2.1 x i386), che permette di utilizzare applicazioni DOS in multitasking grazie al supporto della memoria estesa e della modalità protetta nativa dei nuovi processori Intel.
Nel frattempo la versione standard viene rinominata in Windows/286 e aggiornata anch’essa alla release 2.1.
Windows/386 comincia a farsi strada tra gli utenti, ma ciò che ne cattura l’attenzione, probabilmente, non è tanto l’ambiente operativo in se, ma la disponibilità della relativa prima versione di Excel. Finalmente, infatti, è possibile far funzionare su un PC-IBM l’ottimo foglio elettronico made in Redmond, molto apprezzato dagli utenti Mac, che comincia, così, la scalata per diventare il dominatore incontrastato del settore, relegando Lotus 1-2-3 ad un ruolo del tutto marginale.
Lo sviluppo di Windows è comunque ormai sul punto di essere congelato in favore di OS/2 e Trower cerca un modo per rilanciare se stesso, ed il proprio team, in funzione del nuovo OS, definendo quelli che, secondo la sua esperienza, sono alcuni dei punti critici nello sviluppo degli OS GUI based della casa di Redmond:
- Utilizzo di sviluppatori e non di designer per la creazione delle interfacce;
- Necessità di strutturare test di usabilità e dei servizi;
- Definizione delle linee guida per lo sviluppo di interfacce coerenti per le applicazioni Windows;
- Sviluppare le nuove interfacce al di fuori degli attuali cicli produttivi.
Gates fa proprie queste “osservazioni” sposta Trower con il suo gruppo di lavoro sotto la supervisione del nuovo vicepresidente alle Applicazioni, Mike Maples (proveniente da IBM), assegnandogli la mansione di responsabile della UI R&D Division.
Nel frattempo OS/2 non conquista il successo sperato.
Il nuovo OS è lento e richiede un insieme di risorse eccessive per il periodo (fine ’80).
Inoltre Microsoft ed IBM hanno un approccio allo sviluppo software molto differente, causando continui contrasti tra i rispettivi team.
D’altronde Windows/386 ha ottenuto un buon successo e la necessità di offrire al team di sviluppo delle applicazioni office un ambiente grafico con un’adeguata API per la conversione di Word ed Excel, spinge Microsoft a non abbandonare Windows e a pianificarne la versione 3.
Il team viene coordinato da Phil Barrett che ha da poco assunto anche il ruolo di team lead dell’MS-DOS, per il quale è in sviluppo la release 5. La scelta è strategica: Windows ed MS-DOS devono rappresentare il binomio vincente nel mondo dei PC, scalzando ogni tipo di concorrenza.
Windows 3.0
Windows 3.0 viene rilasciato il 22 maggio del 1990. Si tratta di un ambiente a 16-bit completamente rivisto, multilingua (anche se inizialmente solo Inglese, Tedesco e Francese), pensato per essere l’ambiente grafico ideale da affiancare al Dos, rispetto al quale permette di eseguire più applicazioni grafiche (windows) e testuali (Dos) contemporaneamente. In particolare i programmi DOS sono eseguiti in una sorta di macchine virtuali 8086/8088 isolate tra loro, mentre le applicazioni native possono usare oltre 16 MB di RAM.
Questa release è ottimizzata sia per processori 286 e 386: con i primi sono supportate solo le modalità di funzionamento Real Mode e Standard che consentono, rispettivamente, di utilizzare fino a 640 Kb e fino a 16 Mb di Ram. Inoltre nella modalità Real Mode le applicazioni Dos girano in full screen senza protezione della memoria e supporto al multitasking. Su processori 386 è, invece, possibile sfruttare l’Enhanced Mode che estende le funzioni multitasking e consente l’accesso al file di swap anche alla applicazioni Dos.
Windows 3.0 introduce molte innovazioni tecnologiche: GDI (Graphics Display Interface), una rinnovata API (Application Program Interface) per i programmatori, il supporto DDE (Dynamic Data Exchange) e OLE (Object Linking and Embedding). L’utilizzatore dispone di una clipboard per la gestione delle operazioni di copia e incolla che permette lo scambio di dati tra applicazioni diverse.
Fanno la loro comparsa il Program Manager, che diventa il cuore di tutte le attività dell’ambiente grafico, il File Manager per l’accesso gerarchico al file system, un completo Pannello di Controllo, per la gestione delle impostazioni del sistema, ed il Print Manager, che, tra l’altro, consente l’utilizzo di stampanti LAN esattamente come se fossero in locale.
In merito alla volontà di rafforzare il binomi Win-Dos è interessante proporre gli stralci di alcune mail interne che evidenziano la preoccupazione di Barrett rispetto al DR-DOS 5:
“You asked me for a user’s view of DR DOS 5.0… I used DR DOS 5.0 with a huge number of apps. I found it incredibly superior to MS DOS 3.31 and IBM DOS 4.01. … The most important reason to use any version of DOS is to run DOS apps. DR DOS 5.0 runs every DOS app I know. DR DOS 5.0 works successfully with Windows (2.11, Win 386 2.11 and Windows 3.0 and 3.0a). … Conclusion: DR DOS is vastly superior to MS dos 5.0”
Questa analisi diviene la base della strategia di sviluppo dell’MS-DOS 5, che, come obiettivo primario, pone la necessità di rendere il più possibile veloce la nuova versione dell’OS e migliorare drasticamente la gestione della memoria. Il nuovo DOS 5 viene rilasciato a giugno del 1991 e centra tutti gli obiettivi prefissati, ponendosi come sistema host ideale per Windows 3.0 e per l’imminente Windows 3.1.
In realtà Digital Research continua a non far dormine sonni tranquilli a Barrett, preoccupato delle notizie relative al nuovo DR-DOS 6 (rilasciato alcuni mesi dopi l’MS-DOS 5). Sul versante Windows comincia un’interessante scambio di mail con David Cole, membro chiave del team di sviluppo:
“It’s pretty clear we need to make sure Windows 3.1 only runs on top of MS DOS or an OEM version of it. […] The approach we will take is to detect DR 6 and refuse to load. The error message should be something like ‘Invalid device driver interface.'”
Nelle prime versioni beta di Windows 3.1 viene introdotto un controllo che restituisce un messaggio di errore, non fatale, se rilevato un DOS non Microsoft, anche se l’utente può decidere di ignorarlo e continuare ad usare Windows. Alla software house di Kildall non ci vuole molto per aggirare il problema con una patch e, nella versione definitiva di Windows 3.1, Microsoft rimuove definitivamente il controllo.
La versione 3.1 dell’ambiente di Redmond (marzo 1992) in pochi mesi conta oltre 2 milioni di copie e, sempre più spesso, viene pre-installato sui nuovi pc insieme al Dos. Come nella versione 3.0 sono presenti il File Manager ed il Program Manager, mentre fanno la loro comparsa i font TrueType, che migliorano notevolmente le funzioni di supporto alle applicazioni di desktop publishing, nuovi strumenti multimediali ed il registro di sistema, che persiste informazioni relative alle applicazioni e a Windows stesso.
Win 3.1 logo
Il nuovo nato in casa Microsoft da un taglio netto al supporto delle vecchie applicazioni, garantendo il funzionamento dei software realizzati per Windows 3.0 ma supportando solo in minima parte per quelli realizzati per le versioni 2.xx.
Ad Ottobre dello stesso anno viene rilasciata anche l’edizione Windows 3.1 for Workgroups (WFW), un’espansione di Windows 3.1 che aggiunge funzionalità di networking. In primis vengono introdotti il supporto per i protocolli: NETBEUI, IPX e P2P e vengono inclusi strumenti per la configurazione delle reti LAN e per i Netware server. Le novità interessano, comunque, diversi aspetti dell’ambiente operativo: un nuovo File Manager per la gestione delle directory condivise su PC remoti, un nuovo strumento di configurazione di rete presente nel pannello di controllo e nuove funzionalità delle stampanti remote.
A novembre del 1993 viene rilasciato WFW 3.11 che incorpora il supporto alla VFAT, operante in protected mode e pensata per mascherare l’accesso diretto alla FAT da parte delle applicazioni, e un avanzato tool di caching del disco a 32bit. Da segnalare che WFW 3.11 poteva essere installato anche senza le funzionalità di rete e a lungo termine andò a sostituire tutte le precedenti release della serie 3.1x.
Nel 1994 la famiglia 3.x si arricchisce dell’ultimo componente, Windows 3.2 che aggiunge il supporto al Cinese Semplice.
Windows 3.2
Windows 3.1 unboxing
Windows 3.1 su iPad