Mach
Mach es un núcleo del sistema operativo desarrollado en la Universidad Carnegie Mellon para apoyar la investigación del sistema operativo, distribuidos principalmente en la computación paralela. Aunque Mach es a menudo mencionado como uno de los primeros ejemplos de un microkernel, no todas las versiones de Mach son micronúcleos.Derivados de Mach son la base de los modernos núcleos del sistema operativo de Mac OS X y GNU Hurd.
El proyecto en la Universidad Carnegie Mellon corrió 1985-94, terminando con Mach 3.0, que finalmente fue un verdadero microkernel. Mach fue desarrollado como un reemplazo para el núcleo en la versión BSD de UNIX, así que no hay nuevo sistema operativo tendría que ser diseñado alrededor de ella.Hoy en día la investigación experimental adicional sobre Mach parece haber terminado, aunque Mach y sus derivados están en uso en un número de sistemas operativos comerciales, tales como NeXTSTEP y OPENSTEP, y más notablemente Mac OS X utilizando el núcleo del sistema operativo XNU que incorpora una anterior Mach como un componente principal. El sistema de gestión de la memoria virtual de Machtambién fue adoptado por los desarrolladores de BSD en CSRG, y aparece en los sistemas derivados de BSD UNIX modernos, como FreeBSD. Ni Mac OS X ni FreeBSD mantener la estructura microkernel Mach fue pionera en, aunque Mac OS X sigue ofreciendo microkernel comunicación entre procesos y primitivas de control a ser utilizado directamente por las aplicaciones.
Mach es el sucesor lógico de kernel Accent deCarnegie Mellon. El desarrollador principal del proyecto Mach, Richard Rashid, ha estado trabajando en Microsoft desde 1991 en varias posiciones de alto nivel en torno a la división de Investigación de Microsoft. Otra de la original Mach desarrolladores, Avie Tevanian, fue antes jefe de software en NeXT, entonces Director de Tecnología de Software de Apple Computer hasta marzo de 2006.Historia
Nombre
Según Tevanian, "Mach" viene de una mala pronunciación. Mientras él y los demás se dirigían a almorzar en un día lluvioso, Pittsburgh evitando charcos de lodo, sugirió una broma a Tevanian, que se nombre a su nueva microkernel MUCK, así como "Kernel Comunicación Multi-usuario" o "multiprocesador universal Comunicación Kernel". Un colega italiano pronunció MUCK como "Mach", al finala Rashid le gusto.
Conceptos Mach
Desde Mach fue diseñado como una "gota-en" el reemplazo para el núcleo tradicional de UNIX, esta discusión se centra en lo que distingue a Mach de UNIX. Quedó claro desde el principio que el concepto de UNIX de todo, como un archivo podría no ser lo suficientemente rápido en sistemas modernos, aunque algunos sistemas como Plan 9 from Bell Labs han tratado deesta manera. Sin embargo, esos mismos desarrolladores lamentaron la pérdida de flexibilidad que el concepto original ofrecía. Otro nivel de virtualización se solicitó que haría que el sistema de "trabajo" de nuevo.
La abstracción crítico en UNIX fue la tubería. Lo que se necesitaba era un concepto similar al tubo que funcionaba a un nivel mucho más general, lo que permite una amplia variedad deinformación que se pasa entre los programas. Este sistema existía con la comunicación entre procesos: Un sistema de tuberías similar que mover toda la información entre los dos programas, en lugar de presentar-como información. Mientras que muchos sistemas, incluyendo la mayoría de los sistemas Unix, había añadido varias implementaciones del IPC en los últimos años, en el momento éstas erangeneralmente bibliotecas de propósito especial sólo es realmente útil para las tareas puntuales.
Universidad Carnegie Mellon comenzó la experimentación en este sentido en el marco del proyecto del kernel Accent, utilizando un sistema de IPC basado en memoria compartida. Accent era un sistema puramente experimental con muchas características, desarrollados de una manera ad-hoc a lo largo de un período...
Regístrate para leer el documento completo.