fbpx
Wikipedia

Mach (núcleo)

Mach es un proyecto de diseño de sistemas operativos iniciado en la Universidad Carnegie Mellon con el objetivo de desarrollar un micronúcleo.

Mach
Parte de núcleo
Información general
Tipo de programa Núcleo (informática)
Autor Carnegie Mellon University
Lanzamiento inicial 1985
Información técnica
Programado en
Versiones
Última versión estable 3.0 ()
Enlaces
Sitio web oficial

Objetivo

Mach es un núcleo de sistema operativo desarrollado en la Carnegie Mellon University (CMU) para soportar la investigación de sistemas operativos, principalmente computación distribuida y paralela. El proyecto en CMU se ejecutó desde 1985 hasta 1994.

Mach se desarrolló con la premisa de que todos los sistemas operativos modernos comparten una serie de características en común, o son deseadas si es que no las tienen aún. Estas incluyen:

  • Soporte para múltiples aplicaciones usando multitarea.
  • Hilos, los cuales pueden ser pensados como las partes de una aplicación, o mini-aplicaciones cuando hay multitarea.
  • Soporte multi-procesadores, en una máquina única o sobre una red.
  • Comunicaciones interprocesos, enviando mensajes directamente entre aplicaciones.
  • Protección y seguridad de memoria.

Historia

Por la época, a inicios de la mitad de los '80, varios proyectos estuvieron intentando resolver uno de estos problemas. Esto típicamente significó tomar un sistema operativo existente – a menudo BSD (UNIX)- modificando partes del mismo. Después de cada modificación el sistema operativo era compilado, la máquina reiniciada, y se probaba el nuevo cambio. Había una serie de problemas con este enfoque, incluso los más insignificantes errores causarían que la máquina entera se colgara.

Mach explora el concepto al que ahora nos referimos como micronúcleo. En vez de tener todo el código para el sistema operativo en un gran programa único (llamado núcleo), la mayoría del código estaría ubicado en programas más pequeños conocidos como servidores, los cuales se ejecutarían como cualquier otro programa. El trabajo del núcleo se reduce esencialmente en "ser" el sistema operativo, a mantener los servidores y programar su acceso al hardware.

En teoría esto significa que los cambios al S.O. requerirían nada más que una recarga de ese único programa servidor, concepto opuesto a reconstruir el Sistema Operativo y reiniciar la máquina. Solo trabajar en el núcleo Mach en sí mismo requeriría un reinicio, y en teoría eso debería ser un hecho inusual.

Mach no es un sistema operativo en sí mismo, y es bastante inútil sin un conjunto de servidores (estos servidores no existen). De modo que para obtener un sistema útil y ejecutándose, los autores de Mach portaron el Unix BSD al núcleo Mach de forma rápida y simple: en vez de separar BSD en distintas partes y construir cada una de ellas como un servidor, simplemente compilaron el núcleo entero en un servidor y lo ejecutaron. El resultado era conocido como POE.

Con POE ejecutándose (efectivamente) entre las otras aplicaciones, el rendimiento fue pésimo. Cada llamada de una aplicación de usuario, digamos para obtener la hora, requería que el mensaje fuera enviado al núcleo (una operación simple conocida como cambio de contexto), el cual enviaría el pedido a la librería Unix con otro cambio de contexto y luego repetir todo de nuevo para la respuesta... Sin embargo, Mach, a pesar de que no era un fallo propio, era considerado muy poderoso, pero increíblemente lento.

Durante la década siguiente, el trabajo se orientó a mejorar el funcionamiento de estos mensajes varias veces, hasta el punto de que el rendimiento de estos sistemas operativos basados en Mach fuera a menudo mejor que el de los BSD en los que estaban basados. Sin embargo por ese tiempo el mundo académico había perdido en gran parte interés en la investigación de SSOO, y la promesa de Mach's siguió sin cumplirse.

En la Actualidad

A finales del siglo XX se ha pensado que el Mach asumiría lentamente el control del universo entero de sistemas operativos, pero esto no ha sucedido. Quizás la razón más grande del fracaso de Mach puede ser la "holgazanería": a todos les parecía que era el trabajo de otro entregar la biblioteca basada en el SO, y no lo hizo nadie. El esfuerzo más grande hasta la fecha es GNU Hurd, pero GNU Hurd está ahora alrededor de una década de atraso. Varios sistemas operativos propietarios han sido más acertados, incluyendo QNX que parece cumplir todas las promesas de Mach.

El trabajo sobre Mach se llevó durante varios años en la CMU, para quedar finalmente inactivo cuando muchos de los desarrolladores dejaron la academia para trabajar en la industria. El Mach fue brevemente revivido en la Universidad de Utah a mediados de los 90s y produjo el Mach 4 (http://www.cs.utah.edu/flux/mach4/html/Mach4-proj.html) que tenía mejoras significativas, antes de otra vez volverse inactivo.

Mientras tanto varios vendedores tomaron enfoques prácticos para usar Mach. La capa del BSD (y otras) fue ejecutada directamente dentro del núcleo (lo que evita así intercambios de contexto) lo que dio lugar a un rendimiento razonable mientras que todavía conservaba las ventajas del multi-procesamiento y de un modelo de hilos fácil de usar. Sin embargo incluso estas ventajas se han erosionado tanto como el hecho de que varios vendedores de Unix que han trabajado para proporcionarlas en sus propios productos.

Relaciones con Otros sistemas Operativos

Los sistemas operativos basados en este concepto del Mach fueron OSF/1, NeXTSTEP, e IBM OS/2 para las máquinas basadas en RS/6000 – ninguno de los cuales es ya usado ampliamente -. Otros sistemas operativos querían migrar a esta clase de sistema también, como Pink de Apple, Workplace OS de IBM y varios más.

Apple seleccionó OPENSTEP para ser la base para el sucesor de su clásico Mac OS. Se convirtió en API Cocoa Mac OS X. OPENSTEP es de hecho una versión actualizada de NeXTSTEP, que utilizó el Mach 2.5. Como tal, la amalgama de Mach/BSD de OPENSTEP es la base para el sistema operativo Mac OS X de Apple.

El desarrollador líder en el proyecto Mach, Richard F. Rashid, ha estado trabajando en Microsoft desde 1991 en las varias posiciones a nivel superior en la división de la investigación de Microsoft, Microsoft Research. El Windows NT de Microsoft, precursor del Windows XP, comenzó con un modelo basado en un micronúcleo similar al de Mach. Otro de los desarrolladores originales de Mach, Avie Tevanian, fue antes jefe de software en NeXT y hasta mayo del 2006 fue director de la Oficina de Tecnología de Software en Apple.

Véase también

Enlaces externos

  • – Apéndice del sistema operativo Conceptos (7 ª ed) por Avi Silberschatz, Galvin Baer Pedro y Greg Gagne
  • – Contiene numerosas mediciones de rendimiento, como los citados en el artículo
  • The Performance of µ-Kernel-Based Systems – Contiene una comparación de rendimiento excelente de Linux ejecutándose como un monokernel, el Mach 3 y en L4
  • Mach kernel source code - La versión navegable del código fuente del núcleo Mach en el FreeBSD / sitio núcleo Linux referencia cruzada
  •   Datos: Q14643

mach, núcleo, mach, proyecto, diseño, sistemas, operativos, iniciado, universidad, carnegie, mellon, objetivo, desarrollar, micronúcleo, machparte, núcleoinformación, generaltipo, programanúcleo, informática, autorcarnegie, mellon, universitylanzamiento, inici. Mach es un proyecto de diseno de sistemas operativos iniciado en la Universidad Carnegie Mellon con el objetivo de desarrollar un micronucleo MachParte de nucleoInformacion generalTipo de programaNucleo informatica AutorCarnegie Mellon UniversityLanzamiento inicial1985Informacion tecnicaProgramado enClenguaje ensambladorVersionesUltima version estable3 0 EnlacesSitio web oficial editar datos en Wikidata Indice 1 Objetivo 2 Historia 3 En la Actualidad 4 Relaciones con Otros sistemas Operativos 5 Vease tambien 6 Enlaces externosObjetivo EditarMach es un nucleo de sistema operativo desarrollado en la Carnegie Mellon University CMU para soportar la investigacion de sistemas operativos principalmente computacion distribuida y paralela El proyecto en CMU se ejecuto desde 1985 hasta 1994 Mach se desarrollo con la premisa de que todos los sistemas operativos modernos comparten una serie de caracteristicas en comun o son deseadas si es que no las tienen aun Estas incluyen Soporte para multiples aplicaciones usando multitarea Hilos los cuales pueden ser pensados como las partes de una aplicacion o mini aplicaciones cuando hay multitarea Soporte multi procesadores en una maquina unica o sobre una red Comunicaciones interprocesos enviando mensajes directamente entre aplicaciones Proteccion y seguridad de memoria Historia EditarPor la epoca a inicios de la mitad de los 80 varios proyectos estuvieron intentando resolver uno de estos problemas Esto tipicamente significo tomar un sistema operativo existente a menudo BSD UNIX modificando partes del mismo Despues de cada modificacion el sistema operativo era compilado la maquina reiniciada y se probaba el nuevo cambio Habia una serie de problemas con este enfoque incluso los mas insignificantes errores causarian que la maquina entera se colgara Mach explora el concepto al que ahora nos referimos como micronucleo En vez de tener todo el codigo para el sistema operativo en un gran programa unico llamado nucleo la mayoria del codigo estaria ubicado en programas mas pequenos conocidos como servidores los cuales se ejecutarian como cualquier otro programa El trabajo del nucleo se reduce esencialmente en ser el sistema operativo a mantener los servidores y programar su acceso al hardware En teoria esto significa que los cambios al S O requeririan nada mas que una recarga de ese unico programa servidor concepto opuesto a reconstruir el Sistema Operativo y reiniciar la maquina Solo trabajar en el nucleo Mach en si mismo requeriria un reinicio y en teoria eso deberia ser un hecho inusual Mach no es un sistema operativo en si mismo y es bastante inutil sin un conjunto de servidores estos servidores no existen De modo que para obtener un sistema util y ejecutandose los autores de Mach portaron el Unix BSD al nucleo Mach de forma rapida y simple en vez de separar BSD en distintas partes y construir cada una de ellas como un servidor simplemente compilaron el nucleo entero en un servidor y lo ejecutaron El resultado era conocido como POE Con POE ejecutandose efectivamente entre las otras aplicaciones el rendimiento fue pesimo Cada llamada de una aplicacion de usuario digamos para obtener la hora requeria que el mensaje fuera enviado al nucleo una operacion simple conocida como cambio de contexto el cual enviaria el pedido a la libreria Unix con otro cambio de contexto y luego repetir todo de nuevo para la respuesta Sin embargo Mach a pesar de que no era un fallo propio era considerado muy poderoso pero increiblemente lento Durante la decada siguiente el trabajo se oriento a mejorar el funcionamiento de estos mensajes varias veces hasta el punto de que el rendimiento de estos sistemas operativos basados en Mach fuera a menudo mejor que el de los BSD en los que estaban basados Sin embargo por ese tiempo el mundo academico habia perdido en gran parte interes en la investigacion de SSOO y la promesa de Mach s siguio sin cumplirse En la Actualidad EditarA finales del siglo XX se ha pensado que el Mach asumiria lentamente el control del universo entero de sistemas operativos pero esto no ha sucedido Quizas la razon mas grande del fracaso de Mach puede ser la holgazaneria a todos les parecia que era el trabajo de otro entregar la biblioteca basada en el SO y no lo hizo nadie El esfuerzo mas grande hasta la fecha es GNU Hurd pero GNU Hurd esta ahora alrededor de una decada de atraso Varios sistemas operativos propietarios han sido mas acertados incluyendo QNX que parece cumplir todas las promesas de Mach El trabajo sobre Mach se llevo durante varios anos en la CMU para quedar finalmente inactivo cuando muchos de los desarrolladores dejaron la academia para trabajar en la industria El Mach fue brevemente revivido en la Universidad de Utah a mediados de los 90s y produjo el Mach 4 http www cs utah edu flux mach4 html Mach4 proj html que tenia mejoras significativas antes de otra vez volverse inactivo Mientras tanto varios vendedores tomaron enfoques practicos para usar Mach La capa del BSD y otras fue ejecutada directamente dentro del nucleo lo que evita asi intercambios de contexto lo que dio lugar a un rendimiento razonable mientras que todavia conservaba las ventajas del multi procesamiento y de un modelo de hilos facil de usar Sin embargo incluso estas ventajas se han erosionado tanto como el hecho de que varios vendedores de Unix que han trabajado para proporcionarlas en sus propios productos Relaciones con Otros sistemas Operativos EditarLos sistemas operativos basados en este concepto del Mach fueron OSF 1 NeXTSTEP e IBM OS 2 para las maquinas basadas en RS 6000 ninguno de los cuales es ya usado ampliamente Otros sistemas operativos querian migrar a esta clase de sistema tambien como Pink de Apple Workplace OS de IBM y varios mas Apple selecciono OPENSTEP para ser la base para el sucesor de su clasico Mac OS Se convirtio en API Cocoa Mac OS X OPENSTEP es de hecho una version actualizada de NeXTSTEP que utilizo el Mach 2 5 Como tal la amalgama de Mach BSD de OPENSTEP es la base para el sistema operativo Mac OS X de Apple El desarrollador lider en el proyecto Mach Richard F Rashid ha estado trabajando en Microsoft desde 1991 en las varias posiciones a nivel superior en la division de la investigacion de Microsoft Microsoft Research El Windows NT de Microsoft precursor del Windows XP comenzo con un modelo basado en un micronucleo similar al de Mach Otro de los desarrolladores originales de Mach Avie Tevanian fue antes jefe de software en NeXT y hasta mayo del 2006 fue director de la Oficina de Tecnologia de Software en Apple Vease tambien EditarUnix Mac OS X BSD GNU MachEnlaces externos EditarThe Mach project at Carnegie Mellon The Mach System Apendice del sistema operativo Conceptos 7 ª ed por Avi Silberschatz Galvin Baer Pedro y Greg Gagne A comparison of Mach Amoeba and Chorus Towards Real Microkernels Contiene numerosas mediciones de rendimiento como los citados en el articulo The Performance of µ Kernel Based Systems Contiene una comparacion de rendimiento excelente de Linux ejecutandose como un monokernel el Mach 3 y en L4 Mach kernel source code La version navegable del codigo fuente del nucleo Mach en el FreeBSD sitio nucleo Linux referencia cruzada Datos Q14643 Obtenido de https es wikipedia org w index php title Mach nucleo amp oldid 132149226, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos