Gary Kildall: il vero padre del DOS

Gary KildallNell’avventurosa storia dell’informatica, è difficile trovare un uomo che accentri su di sé la paternità di tante delle pietre miliari su cui si sostiene tutta la moderna concezione di Personal Computer. È purtroppo altrettanto difficile trovare una figura così misconosciuta, dimenticata, trascurata dall’establishment che pure ha lucrato e lucra fior di quattrini attorno alle autentiche rivoluzioni introdotte dal nostro.

Vi presento quindi un uomo dinanzi a cui tutti i CEO degli ultimi vent’anni d’informatica possono solo togliersi il cappello e fare l’inchino: Gary Kildall, fondatore di (Intergalactic!) Digital Research Inc., padre del moderno concetto di sistema operativo.

Negli ultimi 10/15 anni abbiamo sentito parlare un giorno sì e l’altro pure di Bill Gates come un grande innovatore, il padre dell’informatica moderna, il genio, il guru. Bene, con tutto il rispetto per il fondatore di Microsoft, posso dirvi che il suo ruolo di innovatore sta al genio di Kildall come i Cugini di Campagna stanno ai Bee Gees.

Kildall e Gates, l’innovatore e lo squalo commerciale, rappresentano due figure speculari nell’olimpo informatico: non sarebbero stati bene nella stessa azienda, ma ciascuno è stato eccelso dove l’altro ha mancato. Non voglio tuttavia stabilire un’equivalenza: più avanti spiegherò perché.

Alla luce di quello che vedremo, glorificare Gates e dimenticare Kildall è un’azione antistorica: procediamo dunque a raccontare le gesta che hanno fatto di quest’uomo il vero padre del moderno concetto di sistema operativo per PC.

Nei primi anni ’70 non era chiara come lo è oggi, la differenza fra una CPU e un microcontroller. Di conseguenza non era del tutto chiaro nell’industria, se un Intel 8080 potesse essere più adatto ad un elettrodomestico, o a un computer. “Il futuro dei processori sono gli orologi” rispondeva Bob Noyce, co-fondatore e CEO di Intel negli anni ’70 a chi gli proponeva usi differenti.

Unix dominava da sempre e incontrastato nel regno dei mainframe, ma la rapida evoluzione delle CPU Intel ne apriva le possibilità di impiego su dispositivi più complessi che semplici elettrodomestici: nel 1975 per esempio, sarebbe nato il mitico MITS Altair, per il quale la Micro Soft avrebbe poi sviluppato un interprete BASIC.

In questo scenario si inscrive Gary Kildall, un giovanotto di una trentina d’anni, scampato alla chiamata per il Vietnam grazie alla sua competenza nautica, che gli frutta un posto d’insegnante nell’Accademia Navale di Monterey.

Ha contatti in Intel, esperienza con la programmazione dei primi processori Intel 4004, 8008, 8080, lavora nell’azienda ci Santa Clara come consulente e ha una mente piena di grandi idee. Dopo anni di pratica con CPU a 4 e 8bit e sistemi a schede perforate, Gary apprende della messa in commercio dei primi lettori di floppy disk, e subito si cimenta nella scrittura di un programma che consenta di abbinare il processore al nuovo sistema di storage.

Da questo sforzo nasce CP/M, il primo disk operating system (DOS) della storia, il quale accompagna fin dai primi attimi la rapida evoluzione del fenomeno dei “microcomputers”, divenendo presto uno standard di fatto.

CPMGary Kildall diventa un uomo ricco, oltre che una delle figure più note del panorama tecnologico americano. Lo stesso Bill Gates – che allora sviluppava software per IBM – consiglia agli uomini di Big Blue di rivolgersi alla Digital Research Inc. di Gary Kildall per ottenere un sistema operativo compatibile con il progetto PC – basato proprio sui processori Intel che Kildall conosceva alla perfezione.

Da qui si avvia una storia oggetto di grandi speculazioni e mistificazioni. Le fonti più attendibili raccontano che Kildall abbia respinto la proposta di IBM di acquistare CP/M in toto, altri arrivano a sostenere che l’accordo fra Kildall e IBM per la remunerazione tramite royalties fosse stato definito genericamente e attendesse solo la siglatura. È certamente falsa la storiella raccontata da Bill Gates, secondo cui Kildall avrebbe disertato l’incontro per occuparsi del suo hobby preferito, il volo.

Fatto sta che IBM, nello stesso tempo, dà a Microsoft mandato di trovare un sistema operativo per il PC. Microsoft contatta un giovane programmatore, Tim Paterson, il quale sviluppa in 6 settimane QDOS, alias Quick and Dirty OS. QDOS viene acquistato da Paterson – tenuto all’oscuro dell’accordo con IBM – per $ 50.000 e quindi diventa PC-DOS, alias MS-DOS.

Secondo alcune fonti, l’OS viene passato alla lente d’ingrandimento da IBM, la quale trova circa 300 bugs ed è costretta a riscriverlo da capo.

Kildall viene a conoscenza della trattativa parallela, ottiene una copia di QDOS e la esamina, trovandola di fatto nient’altro che una riscrittura a 16bit di CP/M. In assenza di leggi che tutelassero il copyright del software, Kildall minaccia IBM di azioni legali e il colosso di Armonk concede di inserire CP/M per IBM PC come opzione, assieme a MS-DOS. Il prezzo stabilito da IBM per CP/M è tuttavia più di sei volte superiore a quello di MS-DOS: $ 240 contro 40, il che ne decreta il fallimento commerciale.

È questo uno dei più fondamentali punti di svolta dell’informatica moderna, il momento in cui per Microsoft si apre la via della più grande crescita fino ad allora conosciuta da un’azienda informatica, della ricchezza, del controllo totale sul mondo PC. Dopo aver creato il “mostro” Intel – scegliendo i suoi processori per il PC, vedi qui – IBM crea anche il “mostro” Microsoft, mostrando una grande attitudine da talent scout, ma poco fiuto: dell’indotto PC, com’è noto, IBM catturerà solo le briciole.

Mentre generazioni di giornalisti sottratti all’agricoltura, cantano le lodi di Gates, Kildall segue nuovi progetti in campo software (tra cui l’ottimo DR-DOS), conduce la famosa trasmissione americana Computer Chronicles. È tuttavia segnato per sempre dall’amaro destino di dover osservare dall’esterno il boom di un’industria da lui co-fondata, e dal sentirsi chiedere se davvero il giorno dell’incontro con IBM, aveva preferito fare un giro sul suo aereo. Morirà prematuramente, in circostanze mai chiarite, nel 1994, a soli 52 anni.

Torniamo per un attimo al quarto paragrafo: non c’è alcuna equivalenza fra i meriti di Kildall e quelli di Gates. Dati storici ben acclarati, e solo parzialmente qui riportati, dimostrano chiaramente che il secondo ha avuto in più del primo non il merito di introdurre il modello di vendita di un OS in bundling – già sperimentato da Kildall dal 1975 in poi, non la paternità di DOS, non la capacità innovativa.

Direi piuttosto una certa spietatezza commerciale, la capacità di operare lucidamente e senza scrupoli in un mondo in cui i principi sono per i fessi. Tutte qualità che hanno funzionato a meraviglia, ma che ho qualche difficoltà ad ammirare nello stesso modo in cui mi piace lodare il genio di Kildall.

Al quale la Software Publishers Association ha definitivamente e pubblicamente riconosciuto la paternità delle seguenti innovazioni, che per esattezza riporto in inglese:

  • He introduced operating systems with preemptive multitasking and windowing capabilities and menu-driven user interfaces.
  • Through DRI, he created the first diskette track buffering schemes, read-ahead algorithms, file directory caches, and RAM disk emulators.
  • In the 1980s, through DRI, he introduced a binary recompiler.
  • Kildall defined the first programming language and wrote the first compiler specifically for microprocessors.
  • He created the first microprocessor disk operating system, which eventually sold a quarter million copies.
  • He created the first computer interface for video disks to allow automatic nonlinear playback, presaging today’s interactive multimedia.
  • He developed the file system and data structures for the first consumer CD-ROM.
  • He created the first successful open-system architecture by segregating system-specific hardware interfaces in a set of BIOS routines, making the whole third-party software industry possible.

PS Nel 2007, a 11 anni dalla morte di Kildall, un giudice americano ha annullato una causa intentata da Tim Paterson – l’autore di QDOS – contro l’autore di un libro che sosteneva la tesi secondo cui QDOS era una riscrittura di CP/M. Fra le motivazioni dell’annullamento, troviamo la sostanziale correttezza della tesi presentata sul libro.

Press ESC to close