Mac OS
# Mac OS

Mac OS (del inglés Macintosh Operating System, en español Sistema Operativo de Macintosh) es el nombre del sistema operativo creado por la compañía norteamericana Apple para su línea de computadoras Macintosh, también aplicado retroactivamente a las versiones anteriores a System 7.6, y que apareció por primera vez en System 7.5.1. Es conocido por haber sido uno de los primeros sistemas dirigidos al público en contar con una interfaz gráfica compuesta por la interacción del mouse con ventanas, iconos y menús.

Deliberada a la existencia del sistema operativo en los primeros años de su línea Macintosh en favor de que la máquina resultara más agradable al usuario, diferenciándolo de otros sistemas contemporáneos, como MS-DOS, que eran un desafío técnico. El equipo de desarrollo del Mac OS original incluía a Bill Atkinson, Jef Raskin y Andy Hertzfeld.

Este fue el comienzo del Mac OS clásico, desarrollado íntegramente por Apple, cuya primera versión vio la luz en 1985. Su desarrollo se extendería hasta la versión 9 del sistema, lanzada en 1999. A partir de la versión 10 (Mac OS X), el sistema cambió su arquitectura totalmente y pasó a basarse en Unix, sin embargo su interfaz gráfica mantiene muchos elementos de las versiones anteriores.

Hay una gran variedad de versiones sobre cómo fue desarrollado el Mac OS original y dónde se originaron las ideas subyacentes. Pese a esto, documentos históricos prueban la existencia de una relación, en sus inicios, entre el proyecto Macintosh y el proyecto Alto de Xerox PARC. Las contribuciones iniciales del Sketchpad de Ivan Sutherland y el On-Line System de Doug Engelbart también fueron significativas.

## Versiones

Antes de la introducción de los últimos sistemas basados en el microprocesador PowerPC G3, partes significativas del sistema se almacenaban en la memoria física de solo lectura de la placa base. El propósito inicial de esto fue evitar el uso de la capacidad de almacenamiento limitada de los disquetes de apoyo al sistema, dado que los primeros computadores Macintosh no tenían disco duro. Solo el modelo Macintosh Classic de 1991, podía ser iniciado desde la memoria ROM. Esta arquitectura también permitió una interfaz de sistema operativo totalmente gráfica en el nivel más bajo, sin la necesidad de una consola de solo texto o el modo de comandos de línea. Los errores en tiempo de arranque, como la búsqueda de unidades de disco que no funcionaban, se comunicaron al usuario de manera gráfica, generalmente con un icono o con mensajes con el tipo de letre Chicago y un Timbre de la muerte o una serie de pitidos. Esto contrastaba con los PCs de la época, que mostraban tales mensajes con un tipo de letra mono-espaciada sobre un fondo negro, y que requerían el uso del teclado y no de un ratón, para la entrada. Para proporcionar tales detalles en un nivel bajo, el Mac OS dependía de software de la base del sistema grabado en la ROM de la placa base, lo que más tarde ayudó a garantizar que solo los computadores de Apple o los clones bajo licencia (con el contenido de la memoria ROM protegido por derechos de autor de Apple, pudieran ejecutar el Mac OS).

El Mac OS puede ser dividido en dos familias:

* La familia Mac OS Classic, basada en el código propio de Apple Computer.
* El Sistema Operativo Mac OS X, desarrollado a partir de la familia Mac OS Classic y NeXTSTEP, el cual estaba basado en UNIX.

### "Classic" Mac OS (1984-2003)

El "Mac OS clásico" se caracteriza por su falta total de una línea de comandos; es un Sistema Operativo completamente de extensiones. Mac OS podría ser un largo proceso de ensayo y error.

El Macintosh original utilizaba el Macintosh File System (MFS), un sistema de archivos plano con un solo nivel de carpetas o directorios. Este sistema fue rápidamente reemplazado en 1985 por el HFS, que tenía un verdadero sistema de árbol de directorio. Ambos sistemas de archivos son compatibles.

La mayoría de los sistemas de archivos utilizados con el DOS, Unix u otros sistemas operativos tratan a un archivo como una simple secuencia de bytes, lo que requiere una aplicación para saber qué bytes representan cual tipo de información. Por el contrario, MFS y HFS dan a los archivos dos bifurcaciones. La bifurcación de datos contiene el mismo tipo de información como otros sistemas de archivos, tales como el texto de un documento o los mapas de bits de un archivo de imagen. La bifurcación de recursos contiene otros datos estructurados, tales como las definiciones de menús, gráficos, sonidos o segmentos de código. Un archivo puede consistir solo de los recursos con de datos vacía, o solo una bifurcación de datos, sin bifurcación de recursos. Un archivo de texto puede contener su texto en la bifurcación de datos y la información de estilo en la bifurcación de recursos, de modo que una aplicación, que no reconoce la información de estilo, todavía puede leer el texto sin formato. Por otro lado, estas bifurcaciones proporcionan un reto para la interoperabilidad con otros sistemas operativos; el copiado de un archivo desde un sistema Mac a otro diferente, lo despoja de su bifurcación de recursos, requiriendo de sistemas de codificación tales como BinHex y MacBinary.

Las versiones para la plataforma PowerPC de Mac OS X hasta, e incluyendo, Mac OS X v10.4 Tiger no poseen una capa de compatibilidad para ejecutar las aplicaciones más antiguas de Mac, llamada el entorno Classic. Este entorno ejecuta una copia completa del Mac OS, versión 9.1 o posterior, en un proceso de Mac OS X. Los Macintosh basados en la plataforma PowerPC tenían el Mac OS 9.2 preinstalado así como el Mac OS X. El Mac OS 9.2 tuvo que ser instalado por el usuario, puesto que no se instalaba, por defecto, en las revisiones de hardware presentadas tras el lanzamiento de Mac OS X 10.4 Tiger. La mayoría de las aplicaciones "clásicas" bien escritas funciona correctamente en este entorno, pero la compatibilidad solo se asegura si el software fue escrito sin tener en cuenta el hardware actual, y para interactuar únicamente con el sistema operativo. El Entorno Classic no está disponible en sistemas Macintosh basados en plataformas de Intel, debido a la incompatibilidad del Mac OS 9 con el hardware x86.

Los usuarios del Mac OS Classic en general, actualizaron sus máquinas a Mac OS X, pero muchos criticaron a este último por ser más difícil y menos amigable con el usuario que el original sistema operativo Mac, por la falta de ciertas características que no habían sido re-implementadas en el nuevo sistema operativo, o por ser más lento en el mismo hardware (especialmente el más antiguo) u otros, o incompatibilidades, a veces graves con el antiguo sistema operativo. Debido a que los controladores (para impresoras, escáneres, tabletas, etc), escritos para los antiguos Mac OS no son compatibles con Mac OS X, y debido a la falta de soporte para Mac OS X para máquinas más antiguas de Apple, un número significativo de usuarios de Macintosh sigue utilizando el antiguo Mac OS Clásico. Pero para el año 2005, se había informado que casi todos los usuarios de sistemas capaces de ejecutar Mac OS X lo están haciendo, con solo una pequeña fracción ejecutando el Mac OS Classic.

En junio de 2005, Steve Jobs anunció en la apertura de la Conferencia Mundial de Desarrolladores de Apple que la empresa haría la transición de la plataforma PowerPC a procesadores Intel y por lo tanto dejaría de lado la compatibilidad de las nuevas máquinas para Mac OS Classic. En la misma conferencia, Jobs anunció kits de transición para desarrolladores que incluían versiones beta del software de Apple, incluyendo Mac OS X que los desarrolladores podían utilizar para probar sus aplicaciones, mientras las transportaban para ejecutarlas en computadores Mac con procesadores Intel. En enero de 2006, Apple lanzó las primeras computadoras Macintosh con procesadores Intel, un iMac y el MacBook Pro, y al mes siguiente, Apple lanzó un mini Mac con un procesador Intel Core Solo y Dúo. El 16 de mayo de 2006, Apple lanzó el MacBook, antes de completar la transición a Intel el 7 de agosto con el Mac Pro. Para facilitar la transición para los primeros compradores de las nuevas máquinas, los equipos Mac basados en Intel incluyen una tecnología de emulación llamada Rosetta, que les permite ejecutar software de Mac OS X que fue compilado para sistemas Macintosh basados en PowerPC. Rosetta se ejecuta de forma transparente, creando una experiencia de usuario idéntica a la de ejecutar el software en una máquina PowerPC, aunque la ejecución es más lenta que con código nativo.

### Mac OS X

Es el sistema operativo más nuevo de Apple. Aunque oficialmente es designado como "versión 10" del Mac OS, tiene una historia en gran medida independiente de las versiones anteriores de Mac OS. Es el sucesor del Mac OS 9 y del Mac OS Classic. Se trata de un Sistema Operativo Unix, basado en el sistema operativo NeXTSTEP y el Núcleo Mach que Apple adquirió tras la compra de NeXT, al regresar su director general Steve Jobs a Apple en este momento. Mac OS X también hace uso del código base de BSD. Hasta el momento existen diecinueve actualizaciones, de las que la más reciente es la actual Mac OS 13.0 "Ventura", seguido de Mac OS 12.0 "Monterey", Mac OS 11.0 "Big Sur", MacOs 10.15 llamada "Catalina", MacOs 10.14 llamada "Mojave", MacOS 10.13 llamada "High Sierra", "MacOS 10.12 llamada "Sierra". Antes hubo Mac OS X 10.11 ("El Capitán"), Mac Os X 10.10 ("Yosemite"), 10.9 "Mavericks", 10.8 "Mountain Lion", 10.7 "Lion", 10.6 "Snow Leopard", 10.5 "Leopard", 10.4 "Tiger", 10.3 "Panther", 10.2 "Jaguar", 10.1 ("Puma"), y 10.0 ("Cheetah").

Mac OS X también ha tenido seis liberaciones significativas como una versión de servidor, llamada Mac OS X Server. El primero de ellos, Mac OS X Server 1.0, fue lanzado en versión beta en 1999. Las versiones de servidor son, en arquitectura, idénticas a las versiones de cliente, con la diferencia en la inclusión de herramientas para administración de servidores, incluyendo herramientas para la gestión de sistemas basados en Mac OS X como servidores de grupos de trabajo, servidores de correo y servidores web, entre otras herramientas. Es actualmente el sistema operativo por defecto para el hardware de servidor Xserve, y como característica opcional en el Mac Mini, así como instalable en la mayoría de otros Macs. A diferencia de la versión de cliente, Mac OS X Server se puede ejecutar en una máquina virtual utilizando un software de emulación como Parallels Desktop.

Mac OS X es también la base del iOS, anteriormente conocido como el Sistema Operativo del iPhone, el iPod Touch y el iPad, así como la base para el sistema operativo utilizado en el Apple TV.

## Proyecto Star Trek

Un aspecto interesante de la historia del Mac OS clásico fue un prototipo secreto relativamente desconocido en el que Apple comenzó a trabajar en 1992, cuyo nombre en código fue Star Trek. El objetivo de este proyecto era crear una versión de Mac OS que se ejecutara en computadoras personales x86 compatibles con Intel. La intención de la liberación en colaboración con Novell, era proporcionar compatibilidad DOS, en apoyo de las aplicaciones DOS existentes en la plataforma. En ese momento, Novell DOS estaba perdiendo cuota de mercado ya que los clientes se actualizaban a Windows. Una combinación de Mac OS y Novell DOS se consideró una alternativa. El proyecto fue de corta duración, y se canceló solo un año más tarde a principios de 1993, cuando el nuevo CEO de Apple cambió de estrategia. El equipo fue capaz de hacer que el Macintosh Finder y algunas aplicaciones básicas, como QuickTime, funcionasen a la perfección en un PC. Parte del código de este esfuerzo fue reutilizado más tarde cuando se migró Mac OS a la plataforma PowerPC.

Quince años después del proyecto Star Trek, fue incluido oficialmente el soporte a la arquitectura x86 en el Mac OS y luego Apple trasladó todas las computadoras de escritorio para la arquitectura x86. Este no fue el resultado de anteriores esfuerzos del Proyecto Star Trek.

## Emulación del procesador 68000

A pesar de que el software Star Trek nunca fue presentada, emuladores de terceros como vMac, Basilisk II, y Executor, han permitido ejecutar el Mac OS Clásico con PC basados en los microprocesadores Intel. Estos programas fueron limitados a emular la serie de procesadores 68000 y la mayoría, como tal, no podía correr las versiones de Mac OS posteriores a la 8.1, que requiere procesadores PowerPC. La mayoría también requiere una "imagen" Mac ROM o una interfaz de hardware de un verdadero Mac ROM. Los que requieren de una imagen son de dudoso valor legal ya que la imagen ROM puede infringir la propiedad intelectual de Apple.

Una excepción notable fue el software comercial Executor de la empresa Abacus Research & Development, el único producto que usó exclusivamente código 100% mediante ingeniería inversa, sin el uso de la tecnología de Apple. Se ejecutaba muy rápido pero nunca logró más allá de un subconjunto menor de funcionalidades. Pocos programas fueron completamente compatibles, y muchos son muy propensos a sufrir fallas si se ejecutaban. Executor llenó un nicho de mercado para transportar aplicaciones Mac 68000 clásico a las plataformas x86. El desarrollo se detuvo en el año 2002 y el código fuente fue liberado por el autor a finales de 2008.

Los emuladores que utilizaban las imágenes Mac ROM ofrecían casi completa compatibilidad con Mac OS y las versiones posteriores ofrecieron un excelente rendimiento mientras el desempeño de los modernos procesadores x86 aumentaba de manera exponencial.

La mayoría de los usuarios de computadoras Macintosh ya había comenzado a cambiarse a la plataforma PowerPC que ofrecía compatibilidad con las versiones del sistema operativo 8.xx y 9.xx junto con soporte de software para el rápido PowerPC. Esto ayudó a facilitar la transición a las aplicaciones solo para PowerPC, mientras los emuladores prematuramente obsoloteos de procesadores 68000 y las aplicaciones para entorno Clásico que ellas soportaban bien, se perfeccionanan lo suficiente como para competir con una verdadera computadora Mac.

## Emulación de PowerPC

En el momento del desarrollo del emulador 68000, el soporte a PowerPC fue difícil de justificar no solo debido al código de emulación en sí, sino también el gran rendimiento previsto de una arquitectura emulada de PowerPC frente a una verdadera Mac basada en PowerPC. Esto más tarde probaría ser correcto con el inicio del proyecto PearPC incluso años después, a pesar de la disponibilidad de la 7.ª y 8.ª generación de procesadores x86 empleando paradigmas de arquitectura similares a los presentes en PowerPC. Muchos desarrolladores de aplicaciones también crearon y lanzaron versiones para 68000 Classic y PowerPC simultáneamente, ayudando a negar la necesidad de la emulación de PowerPC. Usuarios de Mac con PowerPC que técnicamente podían ejecutar cualquiera de las dos opciones, obviamente eligieron las aplicaciones de PowerPC más rápidas. Pronto Apple ya no vendía Macs basadas en 68000, y la base instalada existente comenzó a evaporarse rápidamente. A pesar de la eventual excelente tecnología de emulación 68000 disponible, probaron nunca ser ni siquiera una amenaza menor a Macs reales debido a su retraso en la llegada e inmadurez incluso varios años después de la salida de Macs basadas en PowerPC mucho más convincentes.

El emulador PearPC es capaz de emular los procesadores PowerPC requeridos por las nuevas versiones de Mac OS (como Mac OS X). Por desgracia, todavía está en sus primeras etapas y, al igual que muchos emuladores, tiende a ser mucho más lento que un sistema operativo nativo.

Durante la transición de PowerPC a los procesadores Intel, Apple se dio cuenta de la necesidad de incorporar un emulador de PowerPC en Mac OS X con el fin de proteger las inversiones de sus clientes en software diseñado para ejecutarse en el PowerPC. La solución de Apple es un emulador llamado Rosetta. Antes del anuncio de Rosetta, los observadores de la industria asumieron que cualquier emulador de PowerPC, corriendo sobre un procesador x86 sufriría una excesiva merma de rendimiento (por ejemplo, PearPC es de bajo rendimiento). Rosetta tiene una merma de rendimiento relativamente menor, por lo que tomó por sorpresa a muchos.

Otro emulador de PowerPC es SheepShaver, que ha estado con nosotros desde 1998 para BeOS en la plataforma PowerPC pero en 2002 fue convertido a código abierto con el fin de conseguir que fuera ejecutable en otras plataformas. Originalmente no estaba diseñado para su uso en plataformas x86 y requería un procesador PowerPC real presente en la máquina en que se ejecutaba de manera similar a un hypervisor. A pesar de que proporciona soporte al procesador PowerPC, solo puede ejecutar hasta Mac OS 9.0.4, ya que no emula una unidad de manejo de memoria.

Otros ejemplos son ShapeShifter (por el mismo programador que concibió SheepShaver), Fusion y iFusion. Este último corrió el Mac OS clásico con una tarjeta aceleradora "coprocesador" PowerPC. El uso de este método se ha dicho que iguala o mejora la velocidad de un equipo Macintosh con el mismo procesador, en especial con respecto a la serie m68k debido a Macs reales ejecutándose en modo de desvío de MMU, obstaculizando el desempeño.

## Clones de Macintosh

A pesar de lo que comúnmente se cree, Apple llegó a licenciar su sistema operativo para que otros fabricantes hicieran "Mac compatibles". Varios fabricantes llegaron a fabricar clones de Macintosh capaces de ejecutar Mac OS, en particular Power Computing, UMAX y Motorola. Estas máquinas ejecutaron varias versiones del sistema operativo clásico de Mac. Una de las primeras cosas que hizo Steve Jobs a su vuelta a Apple en 1997 fue cerrar el programa de licencias de forma que de nuevo Apple fue fabricante propietario de HW y SW de su plataforma como lo había sido antes.

En 2008 el fabricante estadounidense Psystar Corporation anunció un ordenador de bajo costo (499 USD) que ejecutaba Mac OS X 10.5 Leopard. Amenazados por las batallas legales, Psystar denominó a su sistema OpenMac y posteriormente Open Computer. Actualmente Apple sigue en litigio con esta compañía a la que pretende hacer pagar por daños y perjuicios, por cada clon vendido y por los costos de la batalla legal.

En 2009 el fabricante HyperMegaNet UG lanzó un ordenador "Macintosh Compatible" bajo la marca comercial PearC, basándose en el hecho de que la licencia de software no puede aceptarse al no poder ser leída antes de adquirir el producto, puesto que se encuentra dentro de la caja en la que viene el ordenador, por lo que la parte que apela a la no instalación de OS X en hardware que no sea Apple es nula a todos los efectos, al menos en Alemania.

También de forma no legal hay modificaciones de OS X que permiten su ejecución nativa en sobre determinados modelos de PC, lo que es denominado Hackintosh.

