Minix | |
---|---|
Desarrollador | andres tanenbaum |
familia de sistemas operativos | Sistema operativo similar a Unix |
Primera edición | 1987 [3] |
ultima versión |
|
Última versión de prueba |
|
Idiomas admitidos | inglés |
Plataformas compatibles | x86 y brazo |
tipo de núcleo | micronúcleo |
Licencia | licencia BSD modificada [d] [4][5][6] |
Repositorio de código fuente | git.minix3.org/?p=minix.… |
Sitio web | minix3.org _ |
Archivos multimedia en Wikimedia Commons |
Minix es un sistema operativo gratuito de microkernel similar a Unix distribuido bajo la licencia BSD [7] [8] . Andrew Tanenbaum creó la primera versión de Minix en 1987 como una "ilustración" para el libro de texto Sistemas operativos: diseño e implementación. Linus Torvalds , el desarrollador de Linux [9] , ha alcanzado la mayor fama entre los estudiantes que estudian la teoría del sistema operativo de la fuente Minix . Inicialmente, el objetivo de Minix era enseñar a los estudiantes cómo construir computadoras y los conceptos básicos de los sistemas operativos. El código fuente de Minix es completamente diferente del código del sistema operativo Linux, pero al igual que Linux, Minix es un sistema operativo similar a Unix con un conjunto similar de comandos.
El código fuente de MINIX 3 con comentarios traducidos al ruso se puede obtener en CD junto con el libro "Sistemas Operativos: Desarrollo e Implementación" (Tanenbaum E.S., Woodhull A.S., 3ra edición publicada en Rusia en 2007), que describe en detalle la estructura del sistema operativo en el ejemplo de Minix.
El 1 de noviembre de 2008, Andrew Tanenbaum recibió una subvención de 2,5 millones de euros del Consejo Europeo de Investigación para trabajar en el proyecto: "Investigación sobre software de sistema verdaderamente fiable y seguro". La subvención permitirá continuar trabajando en el desarrollo adicional del sistema operativo MINIX 3 durante al menos cinco años (hasta noviembre de 2013) [10] .
Andrew Tanenbaum creó Minix en la Universidad Libre de Ámsterdam para demostrar los principios descritos en su libro "Sistemas operativos: diseño e implementación" ( 1987 ). ISBN 0-13-637406-9 . En el libro se imprimieron 12.000 líneas abreviadas de código fuente para el kernel , el subsistema de administración de memoria y el sistema de archivos Minix . Minix está predominantemente escrito en el lenguaje de programación C.
En 1987, Tanenbaum solo trató a Minix como una herramienta de enseñanza. Con el fin de mantener el código del sistema operativo disponible para estudiar durante el semestre , Andrew Tanenbaum rechazó las propuestas para mejorar Minix o aceptar parches que provinieran de los lectores de su libro de texto. El papel del proyecto, en el que los lectores de Tanenbaum plasmaron su deseo de desarrollar sistemas operativos, lo asumió Linux .
Tanenbaum desarrolló originalmente Minix para las computadoras IBM PC e IBM PC/AT disponibles en ese momento. Minix versión 1.5 fue portado al Motorola 68000 , haciéndolo compatible con las populares plataformas Amiga , Atari ST , Apple Macintosh . Además, se realizaron versiones para SPARC , National Semiconductor NS32032 y transputers .
Minix 1.5 fue lanzado en 1991 . Esto incluía soporte para los sistemas IBM PS/2 MicroChannel , que también fueron portados a las arquitecturas Motorola 68000 y SPARC , mientras que también era compatible con Atari ST , Amiga , Macintosh [11] y SPARCstation [12] [13] .
Minix 2.0 nuevamente solo admitía la arquitectura x86 y se lanzó en 1997 . Se incluyó en la segunda edición del libro de Tanenbaum, del que fue coautor con Albert Woodhull. Minix 1 y 2 eran herramientas de aprendizaje [14] [15] .
La versión 3 de Minix fue anunciada el 24 de octubre de 2005 por Andrew Tanenbaum durante su discurso en el Simposio sobre principios de sistemas operativos de la Asociación para la maquinaria de computación (Simposio ACM sobre principios de sistemas operativos). Aunque Minix todavía sirve como caso de estudio en la nueva edición del libro de Tanenbaum y Woodhull, se ha rediseñado y se ha vuelto utilizable como un sistema operativo robusto para microcontroladores y otros sistemas integrados . Está disponible en un LiveCD que se puede ejecutar sin tener que instalar el sistema en un disco duro y es compatible con muchos emuladores como Bochs , QEMU , VMware , VirtualBox y Virtual PC [16] .
Este sistema operativo es compacto. Las partes que funcionan en modo usuario están divididas en pequeños módulos y bien aisladas entre sí. Por ejemplo, cada controlador de dispositivo se ejecuta como un proceso de modo de usuario independiente, y un error en el controlador (con mucho, la fuente de la mayoría de los errores en cualquier sistema operativo) no puede romper por completo el sistema en su conjunto. En Minix, cuando un controlador falla, se reinicia automáticamente sin necesidad de intervención del usuario, recarga y sin afectar los programas en ejecución. Estas características, la arquitectura de microkernel y otros aspectos aumentan en gran medida la confiabilidad de este sistema operativo.
A partir de la versión 3.1.4, Minix admite memoria virtual .
Anuncio de cambios en la versión 3.1.5 [17] :
Anuncio de cambios en la versión 3.1.6:
Anuncio de cambios en la versión 3.1.7:
Anuncio de cambios en la versión 3.2.0:
La versión 3.3.0 comenzó a admitir ARM .
Minix 3.4.0 se convirtió en una versión candidata en enero de 2016 [20] .
Minix 3 todavía tiene una comunidad que lo desarrolló, y la comunidad se reunió en MINIXCon 2016 con 50 personas para discutir el futuro de Minix [21] .
Todos los conjuntos de chips Intel posteriores a 2015 se ejecutan en MINIX 3 como un componente de software de Intel Management Engine [22] .
Torvalds usó y apreció MINIX como estudiante de Tanenbaum [23] , pero al implementar la arquitectura del kernel de Linux, decidió no usar la arquitectura MINIX, adoptando una arquitectura de kernel monolítica en lugar de una arquitectura de microkernel. Esta decisión de Torvalds no fue aprobada por Tanenbaum y resultó en una disputa entre Tanenbaum y Torvalds . Tanenbaum presentó su caso para usar la arquitectura microkernel en mayo de 2006 [24] .
El desarrollo inicial del kernel de Linux se realizó en un sistema host MINIX, lo que llevó a que Linux incorporara varias funciones de MINIX, como la compatibilidad con el sistema de archivos MINIX.
En mayo de 2004, Kenneth Brown del Instituto Alexis de Tocqueville alegó que partes importantes del kernel de Linux se copiaron del código base de MINIX, y lo anunció en su libro Samizdat [ 25] . Estas acusaciones han sido desacreditadas, sobre todo por Andrew Tanenbaum, quien ha sido muy crítico con Kenneth Brown y ha publicado una larga refutación en su sitio web personal, señalando también que Brown fue financiado por Microsoft [26] [8] .
Sistemas operativos | |||||
---|---|---|---|---|---|
Para servidores o estaciones de trabajo |
| ||||
Incrustado | |||||
Otro |