Nicola D'Agostino (.net) - Articoli, traduzioni, grafica, web

Le macchine di Unix – DEC PDP

Inauguriamo lo spazio sulle macchine che hanno fatto la storia di UNIX con una tappa obbligata: la famiglia Digital PDP. Usata da Kernigan e Ritchie per lo sviluppo del sistema operativo, è stata una delle basi di ARPAnet e il sistema che ha visto la nascita della cultura hacker all’MIT.


di Nicola D’Agostino

UNIX non è fatto solo di idee e linee di codice: il sistema operativo ed i suoi derivati devono la loro esistenza e il successo oltre che al lavoro di geniali personaggi, anche a marchi e piattaforme.
Mitiche, affascinanti, avanzate, talvolta esotiche, sfortunate o poco note, le macchine prodotte da colossi dell’informatica e impiegate da centri di ricerca, governi, industrie e università hanno accompagnato questi 35 anni di UNIX e in una serie di articoli ne presenteremo una selezione pescando tra le più significative ed interessanti, per rilevanza storica e originalità.

Iniziamo con un nome che ha fatto la storia dell’informatica: la serie PDP della Digital Equipment Corporation (DEC).

Digital Equipment Corporation (DEC)

La DEC è stata fondata nel 1957 nel Massachussets da Ken Olson e Harlan Anderson, entrambi con esperienze nel settore, e inizialmente si concentrò sulla produzione di componenti elettroniche. Fu solo tre anni dopo che l’azienda iniziò a costruire i suoi primi calcolatori che, invece di chiamare "computer" (parola all’epoca riservata ai giganti che occupavano stanze intere), preferì definire "Programmed Data Processor".

Il PDP-1, capostipite di una lunga serie, fu lanciato nel 1960 e le sue dimensioni e costo ridotti (da 85 a 120mila dollari contro più di un milione della concorrenza) lo resero un successo in poco tempo.
La Digital si distinse anche per il modello economico che era quello della vendita laddove IBM e gli altri offrivano prevalentemente
in affitto i propri macchinari.

PDP 11 da vicino

Altri aspetti a favore dei PDP furono la relativa facilità di implementazione e di interazione in assembler e scrittura di compilatori grazie a un set di istruzioni ridotto e l’architettura, per l’epoca molto "aperta", in particolare a livello di input e output, ideale per interfacciare il PDP a periferiche di terzi o con macchinari scientifici di laboratorio.
Nel corso degli anni la DEC ha costruito numerosi modelli di PDP, dal PDP-1 al PDP-16 (unica eccezione il PDP-13, escluso per motivi scaramantici vista la cattiva fama del numero nei paesi anglosassoni), sfornando nuovi esemplari per diversi decenni e replicando il successo con un’altra serie mitica: i VAX.
La DEC originaria ha terminato la sua corsa nel 1988 quando è stata acquisita dalla Compaq sotto cui prosegue con lo sviluppo delle sue piattaforme e dei sistemi operativi, anche se con diversi cambiamenti, non solo di nome.Tra tutti i modelli di PDP, i tre che si stagliano in maniera particolare sono il PDP-1, il PDP-10 e il PDP-11.
Questi tre "processori di dati programmabili", per usare la dicitura di DEC, sono molto diversi come caratteristiche, prezzo e capacità ma sono accomunati dal segno indelebile che hanno lasciato nelle vicende informatiche.

Il PDP, gli hacker e Internet

L’anno zero nella storia della cultura hacker è il 1961. Questa precisione cronologica è facile da spiegare: fu allora che l’MIT (Massachussetts Institute of Technology) acquistò un PDP-1 dalla DEC. Come narrato da Steven Levy nel suo saggio "Hackers", il primo modello di PDP divenne subito una meta ambita, in particolare del gruppo di appassionati che orbitava attorno al "Tech Model Railroad Club". L’accesso al PDP-1 all’MIT era limitato, al punto tale che per metterci le mani sopra i primi smanettoni dovettero prodigarsi in vari modi, tra cui quello di forzare serrature, dando luogo alla "tradizione" del lock-picking.

PDP 1 Spacewar

Il PDP-1 con i suoi 4k di memoria base e una notevole espandibilità fu al centro delle attenzioni e degli sforzi di molti dei ricercatori dell’MIT, anche di quelli che lavoravano nel laboratorio di Intelligenza Artificiale e potevano usare il ben più blasonato e costoso ma meno interattivo supercomputer della IBM. Per il PDP-1, che aveva uno schermo a tubo catodico e penna ottica, gli smanettoni, nel 1962, idearono il videogioco "Spacewar", primo della serie degli sparatutto, in cui tramite delle leve autocostruite il giocatore aveva i comandi un navicella spaziale e doveva sparare a asteroidi e detriti.

Quella degli hacker di creare o ricreare gran parte del software e dei tool di interazione per i computer a disposizione non fu una prerogativa solo del del PDP-1 ma anche del successivo (risale al 1967) e più potente PDP-10. Per questo modello i geniali quanto bizzarri e caparbi smanettoni dell’MIT rifiutarono di usare il software fornito dalla DEC e svilupparono una soluzione propria, l’ITS (Incompatible Timesharing System).

PDP 10

Il PDP-10 non si distinse solo presso l’università di Boston, sede dell’MIT, ma diventò uno dei sistemi informatici più usati e seminali della seconda metà degli anni ’60. Sul PDP-10 furono sviluppati per la prima volta molti degli applicativi tuttora in uso oggi come Emacs, TeX e il protocollo Kermit e sopratutto fu uno dei primi quattro sistemi della costituenda rete ARPAnet. L’antesignano di Internet ebbe inizio con l’interconnessione tra i laboratori di ricerca dell’Università della California, di Stanford, di Santa Barbara e dell’università dello Utah che aveva appunto un PDP-10.

PDP-11: la macchina su cui nacque UNIX.

Risale invece al 1970 il modello più noto della serie PDP e su cui è stato sviluppato gran parte di UNIX. Il PDP-11 è stato un successo straordinario: un minicomputer di riferimento per anni, prodotto fino al 1990, clonato in diversi degli ex paesi del Blocco Comunista e tuttora usato da aziende nel mondo. Il PDP-11, le cui orme furono seguite dalla linea dei VAX, fu anche il computer su cui svolsero gran parte del loro storico lavoro due ricercatori dei laboratori Bell.

PDP

Ken Thompson e Dennis Ritchie portarono avanti le prime fasi di scrittura del loro progetto erede di Multics su un vecchio PDP-7 su cui dovettero ripiegare quando fu rifiutata la loro richiesta di acquisto di un nuovo computer per sviluppare un sistema operativo. Nel 1970 i ricercatori poterono acquistare un PDP-11 nuovo di zecca, uno dei primi consegnati in assoluto dalla Digital. Talmente nuovo che ci vollero altri 3 mesi prima che venisse consegnato anche il disco.
Thompson, nel frattempo, riscrisse il kernel di Unix per farlo entrare in ciò che, tolto lo spazio per l’SO del PDP e i programmi, rimaneva dei 24k di memoria ram della macchina. Parallelamente a UNIX, sempre sul PDP-11, proseguì anche lo sviluppo del C che, nel 1973, permise di riscrivere in questo linguaggio (e far diventare portabile) il kernel Unix.
E il resto è storia.

Una versione di questo articolo è stata pubblicata su "Linux Magazine" n. 48 del gennaio 2005