15/10/2013, Víctor R. Ruiz | Signatura convidada

Mòbil i software lliure: Com Bell Labs (o AT&T) va crear el sistema del món

Mòbil i software lliure: Com Bell Labs (o AT&T) va crear el sistema del món | Mobile World Capital

Imagen | opensource.com

Als anys 60, la carrera espacial feia que la nostra imaginació s’enlairés cap a un futur de viatges espacials i meravelles tecnològiques. Martin Cooper, aleshores director de la divisió de sistemes de comunicació de Motorola, va confessar que es va inspirar en el comunicador personal de Star Trek per desenvolupar un telèfon sense fil portàtil. El 1973 va fer la primera trucada amb un prototip de telèfon mòbil a un directiu d’AT&T, la competència, per anunciar-los que ho havia aconseguit. “No els va fer gaire gràcia”, va explicar Cooper.

Avui en dia Apple i Google dominen clarament el mercat de sistemes operatius de telefonia mòbil. En molt pocs anys, aquestes empreses informàtiques han conquerit posicions privilegiades, eclipsant la influència dels fabricants de terminals. Motorola Mobility ha acabat en mans de Google. Però, ironies del destí, la indústria informàtica li deu molt a la de telefonia. Sense proposar-s’ho, AT&T va crear el sistema operatiu que ara domina el món, des dels mòbils fins als superordinadors. És el llenguatge de programació que ha estat referència durant 40 anys. De passada, també van plantar el germen del software lliure.

Ombres d’avantpassats oblidats

A finals dels anys seixanta, el MIT, AT&T i General Electric es van embarcar en el desenvolupament de Multics, un sistema operatiu multiusuari i multitasca, dues funcionalitats que representaven una gran innovació en aquella època.

AT&T va dedicar molts recursos a Multics. Va assignar el projecte als millors investigadors dels seus Laboratoris Bell; entre ells, hi havia Ken Thompson i Dennis Ritchie. Com sol passar amb els projectes ambiciosos, els retards es van anar acumulant i finalment la direcció d’AT&T va decidir abandonar-lo. Aquesta decisió va frustrar els investigadors de Bell Labs, que creien en la utilitat dels sistemes de “temps compartit” com Multics. Així que, tot i la decisió, van idear en paper un nou sistema similar a Multics.

Mòbil i software lliure: Com Bell Labs (o AT&T) va crear el sistema del món | Mobile World Capital

Com que després de la cancel·lació del projecte tenien temps per dedicar-s’hi, Ken Thompson es va dedicar a crear un joc de simulació anomenat “Space Travel” mentre Armstrong, Aldrin i Collins es preparaven per arribar a la Lluna. El jugador controlava una nau per viatjar pel Sistema Solar i aterrar als planetes i satèl·lits que calgués. Thompson va programar originalment el joc en un ordinador GE-635. Però utilitzar-lo era car, uns 75 dòlars per partida. Per fortuna per a Thompson, Bell Labs disposava d’un PDP7 que amb prou feines s’utilitzava. Aquest equip era un miniordinador (“mini” per als estàndards de l’època: era tan gran com una prestatgeria) i gaudia d’una bona pantalla. Thompson va aprendre a programar el PDP-7 i va adaptar el codi de “Space Travel”. Amb el coneixement adquirit, durant l’estiu de 1969 va crear un primitiu sistema operatiu dins del PDP-7, amb els conceptes que havia desenvolupat amb el seu equip. En broma, els enginyers es van referir a aquest sistema com “Unics”, ja que inicialment només suportava un sol usuari (Thompson).

Al llarg de 1970, “Unix” va madurar i el PDP-7 se li va quedar petit. Thompson i el seu equip van decidir buscar finançament per al projecte, però sabien que després del fracàs de Multics AT&T s’oposaria al desenvolupament d’un nou sistema operatiu. La necessitat aguditza l’enginy. L’equip va formular una petició per crear un processador de textos —per tant, necessitaven adquirir un PDP-11— i, com a detall anecdòtic, desenvolupar un sistema operatiu. Sorprenentment, la proposta va ser acceptada i va rebre finançament. Bell Labs va comprar un PDP-11 i, durant 1970, Unix i el processador de textos que van programar va ser adoptat amb entusiasme pel departament de patents dels laboratoris.

Tant “Space Travel” com Unix van ser originalment programats en llenguatge “acoblador”. Aquest llenguatge requereix el coneixement de detalls particulars de l’equip, cosa que obligava a realitzar costoses modificacions quan es passava d’un equip a un altre, com va succeir arran del pas del GE-635 al PDP-7, i del PDP-7 al PDP-11. El 1971, Dennis Ritchie va crear un nou llenguatge anomenat “C” que van usar per reescriure Unix. I aquest fet va canviar el rumb de la indústria. Unix era un sistema modular, comprensible, multiusuari, multitasca i, gràcies a l’ús de “C”, fàcilment adaptable a altres ordinadors. El 1974, amb el sistema ja madur, Ken Thompson i el seu equip va publicar un article descrivint el sistema. No van trigar a rebre una allau de peticions de còpies de l’Unix.

Arribats a aquest punt de la història, AT&T podria haver-se convertit en predecessora de Microsoft, com a pròspera empresa llicenciatària de sistemes operatius per a universitats i fabricants d’ordinadors. No obstant això, a causa de la seva posició de monopoli de facto, el 1956 AT&T va subscriure un acord amb el govern nord-americà que li impedia vendre productes que no estiguessin directament relacionats amb la telefonia. Al començament, com no podien vendre còpies d’Unix, la companyia va distribuir el codi font a qui ho sol·licités a canvi de sufragar les despeses d’enviament. Al voltant d’Unix es va formar ràpidament una comunitat de desenvolupadors i usuaris, tant del món acadèmic com de la indústria. A finals dels anys setanta, Unix era ja un sistema molt popular i AT&T oferia llicències d’Unix a universitats i empreses.

La història d’Unix pateix una sèrie de turbulències durant els anys vuitanta. El 1983, un segon judici antimonopoli divideix AT&T en múltiples empreses (“Baby Bells”). Alliberada de l’acord de 1956, AT&T comença a comercialitzar Unix, fet que posarà en perill el futur del sistema. La companyia talla d’arrel la distribució “no autoritzada”del codi font, sota pena d’accions legals. L’interès acadèmic en Unix comença a esvair-se. A més, les empreses que comercialitzaven versions d’Unix van començar a competir entre elles, i a incloure característiques que les feien incompatibles. No és accidental que aquell mateix any un investigador del MIT anomenat Richard Stallman posés en marxa el projecte GNU (GNU’s Not Unix) i la llicència GPL, per crear un sistema de tipus Unix que assegurés que els usuaris sempre tindrien accés al codi font.

Amb AT&T i Sun Microsystems intentant “desfragmentar” l’ecosistema Unix, el 1991 un estudiant finlandès repeteix la història de Ken Thompson. Linus Torvalds publica a Internet el codi d’un incipient sistema de tipus Unix, que va escrivint en el seu temps lliure en un petit PC. Utilitza les eines de GNU i la llicència GPL. Havia nascut Linux. La resta, és història.

L’herència d’Unix continua més viva que mai 40 anys després. Quan utilitzem el mòbil, gairebé amb tota seguretat estem gaudint d’alguna idea cuinades als Laboratoris Bell. Tant Android com iOS gaudeixen de sistemes operatius de tipus Unix. Les seves encarnacions viuen també en tablets, servidors, routers i dispositius encastats. Més enllà d’Unix, pràcticament tots els llenguatges de programació utilitzats avui en dia estan escrits en “C”, són compatibles amb “C”, o estan directament inspirats per “C”, igual que la resta de sistemes operatius populars. Tal és la influència d’un projecte que va sorgir casualment dels Laboratoris Bell.

El dilema de l’innovador

Però algunes de les lliçons importants que Ken Thompson i els seus van aprendre amb Unix s’acostumen a oblidar, amb grans perjudicis. El 1997, Eric S. Raymond va publicar un assaig seminal sobre les diferències entre els models obert i tancat de desenvolupament. Intitulat La catedral i el basar, enfrontava dos paradigmes. La catedral és una metàfora d’una organització tancada i jerarquitzada. A les catedrals, els objectius es planifiquen i es desenvolupen controladament. El basar (o mercat) és una metàfora d’organitzacions obertes, horitzontals, sense objectius definits i de desenvolupament caòtic. Raymond sostenia que el desenvolupament en “basar” oferia millors resultats que el desenvolupament en “catedral”.

Mòbil i software lliure: Com Bell Labs (o AT&T) va crear el sistema del món | Mobile World Capital

Això és justament el que havia passat amb Multics. El MIT, AT&T i General Electric s’havien proposat fer un sistema operatiu molt ambiciós, però quan AT&T va comprovar que el projecte es retardava i no donava els fruits esperats, va decidir retirar-se’n. L’aproximació al desenvolupament d’Unix va ser molt diferent. El va començar Thompson com a repte personal en un miniordinador en desús. L’arquitectura era simple, senzilla i escalable. En compartir el codi, moltes persones van poder usar-lo, comprendre’l i adaptar-lo a les seves necessitats particulars, contribuint així a la seva expansió. El desenvolupament de Multics era de tipus catedral, mentre que originalment Unix va tenir un desenvolupament de tipus “basar”. Als anys noranta, AT&T va cometre un enorme error estratègic quan va voler comercialitzar Unix directament. Va passar del model de basar al model de catedral. Va rebentar les aportacions acadèmiques i va fragmentar l’ecosistema, dissipant el seu interès tant per a les universitats com per als desenvolupadors.

Les companyies de telecomunicacions, que fins no fa gaire han gaudit de monopolis, han funcionat tradicionalment com catedrals. A començos dels anys 2000, eren les operadores i els fabricants de terminals els qui decidien quines característiques havien de suportar els telèfons mòbils, exclusivament en funció dels seus models de negoci. Tot i la creixent potència dels terminals, els telèfons eren sistemes tancats de programació complexa. El desenvolupament de programes era un procés burocràtic, que implicava “casar-se” amb el fabricant del terminal per obtenir les eines de programació i amb l’operador telefònic per a la distribució.

Llavors va arribar l’iPhone. Encara que l’iPhone té un nucli de tipus Unix, el desenvolupament del sistema és de tipus catedral. No obstant això, Apple va llançar un kit d’eines per programar aplicacions i una botiga, l’AppStore. Això va suposar el desembarcament efectiu de la indústria del software en la telefonia mòbil. El mòbil ja no és sols un dispositiu de telefonia, és un ordinador personal amb múltiples propòsits. L’AppStore no es va trigar a omplir d’aplicacions creades per empreses prestigioses, però també per persones amb idees innovadores.

Calia moure fitxa i el 2007, pocs mesos després de la presentació de l’iPhone, Google va anunciar la disponibilitat d’Android, el seu sistema operatiu lliure per a mòbils. El 2008, Nokia va anunciar l’alliberament de Symbian com a software lliure i va rescatar de la marginalitat els seus projectes amb Linux. Per a Symbian va ser massa tard. A Google, en canvi, la jugada d’Android li va sortir molt bé. Actualment, posseeix el 75% de la quota de mercat amb terminals fabricats per Samsung, HTC, Sony, LG i altres. I la Play Store d’Android ofereix gairebé un milió d’aplicacions.

Tot i que Android és teòricament software lliure, el seu model de desenvolupament no és de basar. Google s’ha trobat amb alguns dilemes de la història d’Unix. D’una banda, està intentant tallar la fragmentació de l’ecosistema, que augmenta els costos de desenvolupament. D’altra banda, l’adquisició de Motorola per part de Google ha aixecat la suspicàcies dels fabricants: els converteix en competidors directes, com va passar quan AT&T va decidir a comercialitzar Unix.

Les operadores de telefonia també recelen avui en dia de la concentració de poder d’Apple i Google, i desitjarien que hi hagués altres contrincants en competició. En temps recents han sorgit iniciatives basades en software lliure que intenten fer-se un lloc en el mercat. Descendents del sistema MeeGo de Nokia i Intel estan desenvolupant Sailfish OS i Tizen. MeeGo va ser un sistema per a telèfons intel·ligents de Nokia, que va rebre certa empenta fins que Stephen Elop va lligar el futur de Nokia a Windows Phone. Jolla és una empresa formada per exempleats de Nokia que estan desenvolupant Sailfish OS, un sistema basat en Maemo, Linux de Nokia. Tizen també és descendent de MeeGo, i compta amb el suport d’Intel i Samsung. Algunes operadores de telefonia, com Telefónica, estan donant suport al desenvolupament de Firefox OS, un sistema per a mòbils basat en Linux, i amb una aposta per les tecnologies HTML. I finalment, a Canonical estem apostant amb força pel desenvolupament d’Ubuntu Touch.

Totes aquestes iniciatives estan basades en Linux i en el software lliure. Ara sembla obvi que qualsevol plataforma que pretengui fer-se un lloc en el mercat ha de comptar amb un ric ecosistema. A Ubuntu Touch estem involucrant l’àmplia comunitat d’usuaris d’Ubuntu en aquesta aposta.

El mòbil intel·ligent és un dels aparells més prodigiosos inventats mai. Amb raó, va perdent el seu nom original de “telèfon” per quedar-se amb el cognom “mòbil”. El mòbil és un petit —però potent— ordinador en miniatura dotat de múltiples sensors. I gràcies a la seva connexió a lnternet, és capaç d’estendre la seva memòria fins a l’infinit. Els mòbils són veritables ordinadors personals, i estan complint la vella promesa d’apropar la computació a la majoria de la població. A canvi, els usuaris ens enfrontem a una desaparició progressiva de la nostra privacitat, qüestió que com a societat encara no hem tractat a fons.

Tot i això, comparats amb els PCs, els mòbils són dispositius limitats. Els programes d’una plataforma no s’executen en una altra, és difícil instal·lar altres sistemes operatius, modificar-los, i alguns dels programes clau són tancats. Però, com hem vist, les iniciatives personals de vegades són capaces d’eclipsar els plans més ambiciosos i revolucionar una o diverses indústries.

Víctor R. Ruiz (@vrruiz) és Enginyer de Qualitat a Canonical Ltd, especialitzat en tecnologies HTML5 per a Ubuntu Touch. Anteriorment havia desenvolupat aplicaciones iOS, entre altres, pel European Southern Observatory. Des de 2000 és editor de Barrapunto, web de referència de la comunitat de software lliure hispana.

Deixa el teu comentari

Altres articles