Een uiterst beknopte geschiedenis van PDP-computers

De evolutie van de PDP-modellen

De PDP-1 De PDP-1 werd grotendeels als experiment gecreëerd. In die tijd maakten industriële controlesystemen gebruik van mensen of ingewikkelde constructies van logische printplaten om beslissingen te nemen. Enkele ingenieurs bij DEC wilden onderzoeken of er een klantenbestand was dat bereid was om in plaats daarvan algemene computers (general-purpose computers) te gebruiken [1]. Destijds werd het echter geen 'computer' genoemd, omdat dat woord toen verwees naar grote mainframe-systemen die batchberekeningen uitvoerden.

De PDP-4, PDP-7 en PDP-9 De PDP-4 was een variant van de PDP-1 die iets langzamer en veel goedkoper was, maar niet compatibel was met de PDP-1. De PDP-4 werd later geüpgraded met nieuwe chiptechnologie en werd de PDP-7. Deze werd vervolgens verder geoptimaliseerd voor kosten en snelheid, wat resulteerde in de PDP-9.

De PDP-5 en PDP-8 De PDP-5 ontstond toen men zich realiseerde dat de PDP-1 en PDP-4 te krachtig waren voor industriële controlesystemen. Door het systeem kleiner te maken, kon het veel goedkoper worden, al ging dit ten koste van de compatibiliteit met de PDP-1 en PDP-4. Het was nog steeds bedoeld voor nagenoeg dezelfde markt. Een chip-upgrade transformeerde dit model vervolgens in de PDP-8.

De PDP-6 en PDP-10 De PDP-6 was een heel ander type machine, gericht op een andere markt. Deze ondersteunde grote hoeveelheden direct adresseerbaar geheugen en beschikte over geheugenbescherming, waardoor hij als time-sharing-systeem gebruikt kon worden. Door de hoeveelheid geheugen was de machine zeer geschikt voor het draaien van Lisp [2]. De kleinere machines konden ook Lisp draaien, maar geen grote Lisp-programma's. Met de chip-upgrade werd dit model de PDP-10.

De PDP-11 De PDP-11 was opnieuw een nieuwe architectuur, bedoeld om alle vorige modellen te vervangen om te voorkomen dat er drie incompatibele lijnen parallel zouden lopen. Er waren veel varianten van de PDP-11, met verschillende prestatiekenmerken en bijbehorende prijsklassen. Echter, zelfs de krachtigste configuratie was niet krachtig genoeg om veel PDP-10-gebruikers over te halen.

De VAX De VAX kwam veel later, maar is hier toch opgenomen omdat dit het systeem is dat uiteindelijk de PDP-10 verving. De VAX was enigszins compatibel met de PDP-11, maar ze bedienden verschillende markten.

De splitsing in de hackercultuur

Er is een merkbare splitsing in de hackercultuur tussen gebruikers van de kleinere computers (18-bit en minder) en de grotere computers (32-bit en meer). Dit wordt geïllustreerd door het contrast tussen Unix en Emacs.

De "New Jersey-benadering" (Kleine computers) Unix werd oorspronkelijk gecreëerd op de PDP-7, daarna geport naar de PDP-11 en vervolgens gedistribueerd naar andere PDP-11-gebruikers. Het feit dat het op deze kleinere machines moest draaien en toch time-sharing moest ondersteunen, heeft de implementatie en interface sterk gevormd. Hetzelfde geldt voor de C-taal en de standaardbibliotheek.

Deze benadering werd bepaald door het budget van de werkgever. Unix werd gecreëerd bij Bell Labs, een privaat bedrijf dat probeerde meer te doen met minder middelen.

De "MIT/Stanford-stijl" (Grote computers) Emacs daarentegen werd gecreëerd op de massieve PDP-10 en werd populair bij andere PDP-10-gebruikers. Het had volop hardwarebronnen tot Its beschikking, en dat merkt men terug in het ontwerp. Hetzelfde geldt voor veel Lisp-varianten.

Emacs werd gebouwd aan het MIT, dat in die tijd overvloedig gefinancierd werd door DARPA.

Voorbeelden van softwareontwikkeling

Ontwikkeld op de PDP-11:

  • Usenet
  • vi
  • RSX-11 (een besturingssysteem waarvan de lijn doorloopt in Windows NT)
  • make
  • Het concept van een shell met combineerbare commando's
  • Kleine programmeertalen zoals AWK

Ontwikkeld op de PDP-10:

  • Scheme
  • TeX
  • Zork
  • E-mail
  • Microsoft Basic

***

Voetnoten [1] Destijds werd het geen computer genoemd, omdat het woord "computer" destijds verwees naar grote mainframe-systemen die batchberekeningen uitvoerden. [2] De kleinere machines konden ook Lisp draaien, maar geen grote Lisp-programma's.