Este artículo necesita citas adicionales para su verificación . ( febrero de 2012 ) |
El nanokernel de Mac OS es un núcleo de sistema operativo que sirve como base de la mayoría de las versiones de software del sistema basadas en PowerPC 7 a 9 del Mac OS clásico , anteriores a Mac OS X.
La revisión inicial de este software es un sistema de una sola tarea que delega la mayoría de las tareas a un emulador que ejecuta la versión de la serie 68000 (68K) de Motorola del sistema operativo. La segunda revisión importante admite multitarea , multiprocesamiento y paso de mensajes , y sería más apropiado llamarlo microkernel . A diferencia del kernel de Mac OS derivado de 68K que se ejecuta dentro de él, el kernel PowerPC existe en un espacio de memoria protegido y ejecuta controladores de dispositivos en modo de usuario .
El nanokernel es muy diferente del microkernel de Copland OS , aunque fueron creados sucesivamente con objetivos similares. [1] [2] [3]
El nanokernel original y el emulador Mac 68k estrechamente integrado fueron escritos por el consultor de emulación Gary Davidian. [4] Su propósito principal es permitir que la versión 68K de Motorola existente del sistema operativo se ejecute en nuevo hardware. Como tal, el estado normal del sistema es ejecutar código 68K. El sistema operativo hace poco hasta que se activa mediante una interrupción , que se asigna rápidamente a su equivalente 68K dentro de la máquina virtual.
Otras tareas pueden incluir volver al modo PowerPC, si es necesario, una vez finalizado el manejo de interrupciones y asignar el sistema de memoria virtual de Macintosh al hardware PowerPC. Sin embargo, como el software está poco documentado, es posible que estas tareas las realice el emulador que se ejecuta en modo de usuario .
Este nanokernel se almacena en el chip ROM de Mac OS integrado en las computadoras ROM del Viejo Mundo , o dentro del archivo ROM de Mac OS en el disco en las computadoras ROM del Nuevo Mundo , en lugar de estar instalado en el sentido habitual.
Los avances posteriores a 1994 exigieron funcionalidades adicionales. Se introdujo una arquitectura de vanguardia para los controladores de tarjetas PCI en previsión del microkernel Copland llamado NuKernel, que admite la protección de la memoria . La arquitectura de red Open Transport introdujo primitivas de sincronización PowerPC estandarizadas. El clon DayStar Digital Genesis MP para Macintosh requiere extensiones de kernel para admitir el multiprocesamiento. Esta evolución afectaría más tarde a la revisión del nanokernel en Mac OS 8.6.
El nanokernel de Mac OS 8.6 fue reescrito por René A. Vega para agregar soporte para Multiprocessing Services 2.0. PowerMacInfo, distribuido en el Multiprocessing SDK, es una aplicación que muestra estadísticas sobre el funcionamiento del nanokernel. [5]