La mayor parte de los sistemas operativos que utilizamos en la actualidad son antiguos. Y con antiguos quiero decir muy antiguos. Mac OS X por ejemplo, data tan solo de 2001, pero haríamos bien en recordar que no es sino una versión más avanzada de NeXTStep/OpenStep, que data de 1989, pero que a su vez había sido construido como un «monstruo de Frankenstein» a partir de otros dos sistemas operativos más antiguos: BSD (1977) y Mach (1985). La historia de Windows no es muy distinta, con sus antecesores directos siendo MS-DOS (1981, a su vez un refrito de QDOS, de 1980) y VMS (1975). Linux es probablemente el más «joven» de los sistemas operativos, cuyo kernel comenzó a desarrollarse en 1991, pero su diseño, basado en UNIX es de 1969, y muchas de las utilidades que lo acompañan son del proyecto GNU, que empezó en 1983. ¿Ven lo que quiero decir?
Incluso los más recientes sistemas operativos, para dispositivos que no existían ni en la más descabellada de las imaginaciones de los ingenieros hace apenas quince años, parten de diseños de décadas de antigüedad: iPhone OS es una versión modificada de Mac OS X, mientras que Android lo es de Linux. ¿Podemos entonces concluir que no hay nada nuevo bajo el sol, al menos en lo que a sistemas operativos se refiere? Hoy sí, pero no hace mucho, hubo un proyecto que trató de desarrollar un nuevo sistema operativo de cero, aprovechando la ocasión para crear un ordenador adecuado a los nuevos usos: gran capacidad multimedia, preparado para tratar con grandes cantidades de archivos con metadatos y sin las limitaciones que los sistemas de la época tenían por razones históricas o de compatibilidad hacia atrás. Estoy hablando de BeOS, el sistema que estuvo a punto de ser Mac OS X.
La historia empieza en Apple en 1985. Después de que John Sculley consiguiera echar a Steve Jobs de Apple, un ejecutivo de la filial francesa de la compañía, Jean-Louis Gassée, ocupó su lugar. De personalidad arrolladora e ideas incontestables, Gassée era en muchos aspectos un digno sucesor de Jobs. Defendió con la misma firmeza la decisión de no licenciar el Mac OS a otros fabricantes, y mantuvo la marca Apple en el segmento premium contra los intentos de Sculley de penetrar en el mercado económico. Los paralelismos con Jobs no acababan ahí: la relación con Sculley era igual de tormentosa, y finalmente, en 1990, se vio en la misma situación que su predecesor. Al igual que Jobs, a su salida de Apple Gassée creó una nueva compañía, con la intención de hacer bien todo lo que a su juicio Apple estaba haciendo mal. Esa compañía se llamó Be, Inc., y el sistema operativo que desarrollaron se llamó BeOS.
BeOS se centraba en torno a un microkernel que se ocupaba de las funciones más básicas del sistema, mientras que otras funcionalidades normalmente ubicadas en el kernel se alojaban en unos programas especiales llamados servers, que comunicaban los procesos normales con el kernel. Cada server era independiente y dinámico: se podían cargar drivers dinámicamente y sin reiniciar el sistema, y un fallo en un driver no podía tirar el sistema abajo—los famosos kernel panics de Linux y Mac OS X. Tenía memoria protegida y multitarea preventiva—en una época en la que ni Mac OS ni las versiones de Windows de escritorio disponían de ellas. Por su propio diseño, BeOS estaba particularmente bien preparado para trabajo en tiempo real, como edición de vídeo y audio. Las APIs —las librerías que los desarrolladores utilizan para crear aplicaciones— eran orientadas a objetos y estaban escritas en C++. Dicha arquitectura permitía reutilizar componentes fácilmente, arrastrando y soltando partes de una aplicación que podían permanecer de forma persistente en el escritorio: en efecto, estamos hablando de los predecesores directos de los actuales widgets. Solo que se llamaban replicantes**, que si alguien me pregunta, es un nombre muchísimo más interesante.
¿Quiere eso decir que BeOS era perfecto? Casi. Pero no. Es cierto que algunas de sus características estaban a años luz de sus contemporáneos, y algunas incluso hoy no han sido reproducidas (como BFS, su sistema de archivos que permitía búsquedas instantáneas como en una base de datos gracias al sistema de metadatos). Pero hubo una serie de fallos de diseño que condenaron al naciente sistema al olvido. El primero y más importante, su dependencia de hardware no-estándar. Originalmente diseñado para correr en la plataforma Hobbit de AT&T, a mitad del desarrollo pasó a funcionar sobre PowerPC, en unas máquinas multiprocesador propietarias llamadas BeBoxen (singular BeBox). Las ventas de hardware fueron anecdóticas en el mejor de los casos, y pronto Be, Inc. pasó al negocio del software. Portaron su sistema a procesadores x86 y comenzaron a distribuirlo a OEMs. Sin embargo, las presiones de Microsoft sobre los fabricantes impidieron que adquiriera la masa crítica necesaria, y tras un breve experimento en sistemas embebidos, en 2001 Be fue adquirido por PalmSource y se convirtió en la base de Palm OS 6, que corrió más o menos la misma suerte.
Durante su corta existencia, BeOS concentró a su alrededor una base de fans semejante a la de Apple y una dedicada comunidad de desarrolladores creativos e imaginativos que aprovecharon al máximo las de por sí magníficas posibilidades de la plataforma. Incluso hoy, BeOS vive en forma de Haiku OS, un clon de código abierto del sistema de Gassé que aspira a —y está muy cerca de— replicar en todo la funcionalidad de la última versión liberada por Be, la R5.1. Si queréis echar un vistazo al pasado, podéis descargar Haiku desde su página web. Y tal vez no estéis echando un vistazo sólo al pasado, sino también, tal vez y sólo tal vez, al futuro.
Imágenes: GUIdebook