ChilenoMac: Mac OS X a la chilena

noviembre 6, 2009

Las siete vidas del gato: la prehistoria de OS X (I)

Mac OS X es un hijo de padres muy distintos: NeXTSTEP y Mac OS. Aunque lleva menos de diez años con nosotros, en realidad su gestación ha sido bastante larga. En esta serie de artículos revisaremos un poco de su historia.

FinderLos orígenes en Apple

Cuando apareció el Macintosh original, en 1984, representó la culminación de varios años de desarrollo. Desde la idea original de Jef Raskin, pasando por las visitas a los laboratorios de Xerox, donde los ingenieros de Apple aprendieron los conceptos básicos de interfaces gráficas de usuario, hasta su lanzamiento, habían transcurrido varios años y el resultado era, a primera vista, simplemente sorprendente.

Efectivamente, para poder funcionar en un hardware que apenas daba el ancho, los ingenieros de Apple debieron hacer múltiples optimizaciones. Una muy importante para el desarrollo posterior es que el sistema sólo podía correr una aplicación a la vez. Sin embargo, los años pasaron, aparecieron nuevos modelos de Mac con mayor poder a nivel de hardware y esto hizo posible remover la limitación de “un programa a la vez“.

Pero hay varias formas de hacer eso. La forma escogida (y la más fácil de implementar) fue la multitarea cooperativa. Eso quiere decir que cada aplicación usa el procesador un intervalo de tiempo y lo cede voluntariamente a otros procesos. Todo muy bien, pero hay algunos problemas con ese enfoque. Por ejemplo, ¿qué pasa si una aplicación está mal programada y no cede el procesador? O peor aún, un evento tan simple como mantener el mouse apretado llevaba a que el procesador fuera usado completamente por la aplicación principal, sin importar si otras aplicaciones tenían cosas que hacer.

Había otros problemas. En los primeros sistemas operativos, sin multitarea, el manejo de la RAM era muy fácil: cuando lanzabas una aplicación, todas las otras se cerraban, liberando la memoria (inclusive el Finder). Al cerrarla, se liberaba RAM y se volvía a abrir el Finder. Pero con multitarea, ¿cómo funcionaba? Cada aplicación pedía un espacio de RAM y se le concedía completo, lo usara o no. Si necesitaba más, el usuario podía aumentarlo a mano, exponiendo un factor crítico de la operación de la aplicación. Si necesitaba menos, de todas formas la aplicación tenía reservado su espacio de memoria, sin importar que otras aplicaciones necesitaran más.

Evidentemente, estos y otros problemas (como no tener múltiples cuentas de usuario) hacían que el sistema operativo se fuera quedando atrás. Peor aún, estos conceptos estaban tan intrincados en la estructura de éste, que resultaba casi imposible cambiarlos. En Apple, por cierto, se dieron cuenta de estas limitaciones y realizaron varios intentos por cambiar esta situación.

Tarjetas azules, rosadas y rojas

A finales de los 80, un grupo de ingenieros en Apple empezaron a escribir propuestas para el sistema operativo en tres tipos de tarjetas: propuestas que podían ser implementadas rapidamente en tarjetas azules, propuestas para una próxima revisión mayor del sistema operativo en tarjetas rosadas y propuestas para un futuro lejano en tarjetas rojas. Las propuestas de las tarjetas azules evolucionaron rápidamente en System 7. En las tarjetas rosadas se escribieron cosas como:

  • un ambiente de programación orientado a objetos
  • mejor soporte internacional
  • multitarea preemptiva (es decir, que el sistema operativo se hace cargo de cómo distribuir el uso del procesador).
  • mejores gráficos

Finalmente, estos conceptos terminaron evolucionando en un sistema operativo aparte, llamado Pink, que a su vez evolucionó, en una alianza de Apple con IBM, en Taligent. ¿Por qué nunca se escuchó mayormente de este sistema operativo? Porque fue un fracaso absoluto, en parte porque de sistema operativo, se convirtió en un ambiente orientado a objetos que podía correr sobre cualquier sistema operativo. Pero si Apple, uno de los impulsores, jamás pudo desarrollar un sistema capaz de correr Taligent… el resto fue historia.

Copland

El segundo gran intento por crear un sistema operativo avanzado por parte de Apple fue Copland. Éste sería por fin el sistema que convertiría a los Mac en máquinas de absoluto primer nivel, sería la verdadera respuesta de Apple a Microsoft Windows, sería lo que se había añorado largo tiempo. Para empezar, Copland sería capaz de correr aplicaciones ya existentes, lo que Pink no pretendía hacer. Se cambiaría todo, desde el sistema de archivos, la interfaz, el Finder que sería multihilo (es decir, podría efectuar varias operaciones simultáneamente), sería 100% nativo para la arquitectura PowerPC, una búsqueda bastante similar a Spotlight y por supuesto, multitarea preemptiva. Todo muy bien, pero las fechas de entrega continuaban atrasándose. Apple finalmente lanzó la primera beta en agosto de 1996, y era increíblemente inestable: se caía a veces sin hacer nada. En realidad, como Copland era el gran proyecto, muchos ingenieros terminaban yéndose a trabajar en él y los managers, para no quedarse sin staff, terminaban sumando su proyecto al desarrollo de Copland. Así, más que un sistema operativo, éste terminó siendo un enredo de distintas partes. Para muestra, un botón: En la época de la WWDC ’96, poco antes de la fecha anunciada de la primera beta, el kernel de Copland era incapaz de usar más de un procesador (esa sería una característica que sí tendría su sucesor, Gershwin, que aparentemente nunca pasó de ser sólo un nombre), y muchos desarrolladores se quejaron de esta situación luego de la presentación de Gil Amelio, CEO de Apple. Esta es una característica absolutamente central y nada fácil de implementar. Pues bien, luego de terminada su presentación, Amelio volvió al escenario y anunció que se añadiría esa medida a la lista de características.

Pronto se dieron cuenta que Copland jamás existiría y que la mejor solución era comprar un sistema operativo externo. ¿Pero por dónde empezar? La respuesta en el próximo artículo de la serie.

Anuncios

6 comentarios »

  1. Jajaja, está entretenida la historia….
    No sé por qué me tinca que el sistema operativo que comprarán será NextStep (que es una de las bases de Mac OS X, junto a Unix)…y así es como Steve Jobs vuelve a la empresa que él había creado y de la cual lo habian despedido. ¿Voy bien?
    Saludos.

    Comentario por Francisco Carle — noviembre 6, 2009 @ 12:00 pm | Responder

    • Falta algo de agua bajo el puente, y aclarar un par de conceptos que mencionas, pero un poco por ahí.

      Comentario por varodonaire — noviembre 6, 2009 @ 2:29 pm | Responder

  2. Esta interesante esto. En un principio, inmediatamente se me vino a la cabeza la película “Piratas de Silicon Valley”.
    Espero el próximo articulo.
    Saludos!

    Comentario por Cromo — noviembre 7, 2009 @ 12:26 am | Responder

  3. […] Las siete vidas del gato: la prehistoria de OS X (II) Archivado en: Apple Inc., Mac OS X, Personal — varodonaire @ 4:00 am Tags: BeOS, Copland, historia, Jean-Louis Gassée, Mac OS X, NeXTSTEP, Steve Job Mac OS X es un hijo de padres muy distintos: NeXTSTEP y Mac OS. Aunque lleva menos de diez años con nosotros, en realidad su gestación ha sido bastante larga. Esta es una continuación del artículo que puedes encontrar aquí. […]

    Pingback por Las siete vidas del gato: la prehistoria de OS X (II) « ChilenoMac: Mac OS X a la chilena — noviembre 13, 2009 @ 4:02 am | Responder

  4. […] Las siete vidas del gato: la prehistoria de OS X (I) […]

    Pingback por De NeXTStep a OS X o la excursión de Steve Jobs « El Buzón de Ebaste — noviembre 6, 2011 @ 4:41 pm | Responder


RSS feed for comments on this post. TrackBack URI

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Crea un blog o un sitio web gratuitos con WordPress.com.

A %d blogueros les gusta esto: