Pocs programes han influït tant amb tan poques línies de codi. El Research Unix que Ken Thompson i Dennis Ritchie van desenvolupar als laboratoris Bell d’AT&T durant els anys setanta és l’avantpassat comú de gairebé tots els sistemes operatius seriosos que fem servir avui. I dues versions concretes, la Sisena Edició (V6, 1975) i la Setena Edició (V7, 1979), van marcar el moment en què Unix va deixar de ser un experiment intern per convertir-se en un fenomen mundial.
Bell Labs i els orígens
Unix va néixer a finals dels seixanta als laboratoris Bell, el braç de recerca d’AT&T, com a reacció al fracàs de l’ambiciós projecte Multics. Thompson, Ritchie i un grapat de col·legues volien un sistema senzill, elegant i útil per a ells mateixos. El gran salt va arribar quan Ritchie va reescriure bona part del sistema en llenguatge C, creació seva. Per primer cop un sistema operatiu es podia moure d’una màquina a una altra sense reescriure’l sencer en assemblador.
Les primeres edicions van circular només dins d’AT&T. La Cinquena Edició es va llicenciar a institucions educatives, però va ser la següent la que va obrir les portes de bat a bat.
V6 (1975): Unix surt al món
Llançada el maig de 1975, la Sisena Edició va ser la primera versió d’Unix amb distribució àmplia fora de Bell Labs. AT&T la va llicenciar a les universitats per uns 200 dòlars i als usuaris comercials per la barbaritat de 20.000, un preu pensat per espantar les empreses. Tot i així, V6 va acabar sent la versió més usada fins ben entrats els anys vuitanta.
Estava dissenyada per als miniordinadors PDP-11 de Digital Equipment Corporation. La seva gran gesta històrica va arribar el 1977, quan Richard Miller i Ross Nealon, a la Universitat de Wollongong (Austràlia), la van portar a l’Interdata 7/32. Va ser el primer Unix que funcionava en una cosa que no era un PDP, i va demostrar a la pràctica que un sistema operatiu portable escrit en C era possible. Aquesta lliçó de portabilitat és la que avui permet que Linux o FreeBSD funcionin en mòbils, servidors i superordinadors per igual.
El Lions Commentary: el llibre pirata més estimat
La curiositat més cèlebre de V6 és pedagògica. John Lions, professor a la Universitat de Nova Gal·les del Sud, va escriure el 1976 un comentari línia per línia del nucli de V6: les 9.073 línies del kernel acompanyades d’un altre tant d’explicacions. Una eina d’ensenyament brillant.
El problema era la llicència. AT&T en restringia la circulació a qui tingués llicència d’Unix, i a partir de V7 va prohibir aquest tipus de comentaris docents. El resultat es veia venir: milers d’estudiants de tot el món es van passar fotocòpies de fotocòpies del Lions Commentary durant gairebé vint anys, fins a convertir-lo en un dels documents clandestins més venerats de la informàtica. No va ser fins al 1996 que Santa Cruz Operation va autoritzar-ne la publicació oficial juntament amb el codi de l’«Unix antic».
V7 (1979): l’última gran versió de Bell Labs
La Setena Edició de 1979 va ser l’última versió dels laboratoris Bell amb distribució massiva abans que AT&T es posés a vendre Unix de debò. Venia carregada de novetats que avui reconeixes a l’instant: el shell de Bourne (sh) de Stephen Bourne, amb els seus bucles for...do...done, estructures case...esac, here-documents i la convenció del descriptor de fitxer 2> per als errors; i ordres com ara awk, make, lint, tar, touch, find o el compilador portable de C.
V7 va ser tan completa que es va ramificar en dos grans llinatges. D’una banda, els Unix comercials d’AT&T que van portar a System V i van influir en Solaris i AIX. De l’altra, els desenvolupaments de Berkeley que van donar lloc a BSD i, amb els anys, a FreeBSD, OpenBSD i NetBSD. Fins i tot MINIX, el sistema que va inspirar Linus Torvalds, beu d’aquesta tradició.
«No s’espera que entenguis això»
Cap anècdota defineix millor el caràcter d’aquell codi que un comentari del kernel de V6, a la zona del canvi de context entre processos: /* You are not expected to understand this */. Depenia d’un truc peculiar del compilador de C per al PDP-11 a l’hora de desar registres, es va trencar en portar-lo a altres màquines i es va haver de redissenyar a V7.
Ritchie va aclarir anys després que la frase volia dir una cosa com ara «això no entrarà a l’examen». No era un repte arrogant. El més graciós és que ni els mateixos autors l’entenien del tot. Avui passa per un dels comentaris de codi font més famosos de la història.
El llegat
V6 i V7 eren minúsculs per al que manegem ara, però van plantar les llavors de tot: el sistema de fitxers jeràrquic, els pipes, les eines petites que fan una sola cosa bé, el shell programable i la filosofia Unix. Cada cop que obres un terminal a macOS, Linux o qualsevol BSD estàs tocant, de manera molt llunyana però directa, aquell codi de Bell Labs.
