You are on page 1of 4

MINIX es un clon del sistema operativo Unix distribuido junto con su c�digo fuente

y desarrollado por el profesor Andrew S. Tanenbaum en 1987.

En 1975 los Laboratorios Bell de la AT&T, publicaron el sistema operativo Unix V6,
para 1977 John Lions public� unas notas con el c�digo fuente que se usaba en los
cursos de sistemas operativos. Cuando los Laboratorios Bell publicaron Unix V7 en
1979, prohibieron su uso para la ense�anza. Por lo que en 1984 Andrew S. Tanembaum
comenz� a escribir un clon de Unix para las IBM-PC con Intel 8086 de ese tiempo,
con el fin de usarlo en su clase en lugar del entonces prohibido Unix. Terminado en
1987 pudo usarlo para ense�ar a sus alumnos el dise�o de sistemas operativos en la
Vrije Universiteit de �msterdam.

Su libro fue ampliamente adoptado, porque adem�s de que Unix estaba bajo
restricciones de licencia de AT&T, era demasiado complicado y corr�a sobre m�quinas
complejas; algo completamente antipedag�gico, mientras que Minix fue escrito con
fines pedag�gicos y para una m�quina muy accesible. En 1979 public� Minix 2 y en el
2004, gracias al financiamiento de la Union Europea, Minix 3 que es compatible con
NetBSD y a prueba de fallas.

Gracias a su reducido tama�o, dise�o basado en el paradigma del micron�cleo, y su


amplia documentaci�n, resulta bastante apropiado para personas que desean instalar
un sistema operativo compatible con Unix en su m�quina personal as� como aprender
sobre su funcionamiento interno.

El primer Minix fue desarrollado para ser ejecutado en un IBM PC con


microprocesador Intel 8088 o superior, aunque se han creado conversiones para otros
sistemas y Minix 3, tambi�n corre en procesadores ARM.

Debido al enfoque puramente educacional de MINIX, Tanenbaum no permit�a que este


fuera modificado demasiado ya que esto complicar�a el sistema y no permitir�a que
sus estudiantes lo entendieran en un semestre. Por estos motivos, Linus Torvalds
decidi� escribir su propio n�cleo de sistema operativo (Linux) compatible con Unix.
En simbiosis con las herramientas de GNU surgi� GNU/Linux, que ha ganado
protagonismo en el campo de los Unix para ordenadores compatibles con el IBM PC,
principalmente debido a que su licencia (GPL) permite la modificaci�n del mismo.
Actualmente Minix se distribuye con una licencia similar, la licencia BSD, que es
menos restrictiva que la de GNU, porque en palabras de Tenembaum, "est� permitido
todo excepto demandarlo".

Para una persona poco familiarizada con los elementos internos de un sistema
operativo, MINIX es una buena opci�n que le permite entender casi todos los
elementos del sistema, con solo algunos meses de uso y estudio.

�ndice
1 Historia
2 Estructura de Minix
3 V�ase tambi�n
4 Enlaces externos
Historia
Andrew S.Tanenbaum cre� MINIX en la Universidad Libre de �msterdam para
ejemplificar los principios recogidos en su libro de texto Operating Systems:
Design and Implementation (1987). Una parte del c�digo en C del n�cleo, el
controlador de memoria y el sistema de ficheros de MINIX 1.0 se recogen en este
libro.

Junto con el libro tambi�n hab�a disponible un disquete con el c�digo fuente de
MINIX y los binarios, junto con un manual de referencia del sistema.
Tanenbaum cre� originalmente MINIX para que fuera compatible con las arquitecturas
IBM PC e IBM PC/AT, que eran las comunes en esa �poca.

MINIX 1.5, publicado en 1991, inclu�a soporte para MicroChannel IBM PS/2 y tambi�n
fue adaptado para las arquitecturas Motorola 68000 y SPARC, soportando Atari ST,
Commodore Amiga, Apple Macintosh y plataformas Sun SPARCstation.

Tambi�n existi� una adaptaci�n no oficial a las arquitecturas compatibles con Intel
80386 (en modo de 32 bits protegido), National Semiconductor NS32532, ARM y
procesadores INMOS transputer. Meiko Scientific utiliz� una primera versi�n de
MINIX como base de su sistema operativo MeikOS. Tambi�n existi� una versi�n de
MINIX que se ejecutaba como un proceso de usuario en el sistema operativo SunOS.

Al decrementarse la demanda de las computadoras de arquitectura de 68k, MINIX 2.0,


publicado en 1997, s�lo era compatible con las arquitecturas x86 y SPARC. Fue el
tema para la segunda edici�n del libro de Tanenbaum, en esta ocasi�n co-escrito
junto con Albert Woodhull, y fue distribuido en un CD-ROM incluido en el libro.
MINIX 2.0 a�ad�a compatibilidad con POSIX1, soporte para arquitecturas Intel 80386
y superiores de 32 bits y reemplaz� los protocolos de red Amoeba incluidos en MINIX
1.5 por TCP/IP. Tambi�n aparecieron adaptaciones no oficiales de MINIX 2.0 para las
arquitecturas basadas en el 68020 ISICAD Prisma 7000 y las basadas en Hitachi SH3.

Minix-vmd es una variante de MINIX 2.0 para procesadores compatibles con Intel IA-
32, que fue creada por dos investigadores de la Vrije Universiteit, la cual a�ad�a
memoria virtual y soporte para el sistema gr�fico X Window System.

MINIX 3 fue p�blicamente anunciado el 24 de octubre de 2005 por Andrew Tanenbaum,


durante su exposici�n en la conferencia de ACM en el Symposium on Operating System
Principles. Aunque sigue manteni�ndose como ejemplo para la nueva edici�n de su
libro, est� comprensiblemente redise�ado para ser �utilizado como un sistema serio
en computadoras con recursos limitados y para aplicaciones que requieren de gran
fiabilidad�.

Actualmente MINIX 3 soporta s�lo arquitecturas derivadas de IA-32, y est�


disponible en LiveCD, lo que permite ser utilizado sin necesidad de instalar el
sistema operativo, y en versiones compatibles con sistemas de emulaci�n o
virtualizaci�n como BOCHS, Qemu, VMware y VirtualPC.

La versi�n 3.1.5 fue lanzada el 5 de noviembre de 2009, y contiene X11, emacs, vi,
cc, gcc, perl, python, ash, bash, zsh, ftp, ssh, telnet, pine y cerca de 650
aplicaciones m�s, comunes a los sistemas Unix. Con la incorporaci�n de X11, esta
versi�n marca el punto de transici�n entre el modo texto y gr�fico en este sistema
operativo. Otra caracter�stica de esta versi�n, que ser� mejorada en un futuro, es
la habilidad del sistema para mantenerse cuando el driver de alg�n componente deja
de funcionar, y en algunos casos �stos son reemplazados autom�ticamente sin afectar
a los procesos que se est�n ejecutando. Siguiendo este camino, MINIX puede auto-
reponer su salud, lo que �l llama self-healing, por lo que es ideal para sistemas
que requieren alta fiabilidad.

Estructura de Minix
Para comprender mejor la estructura microkernel de MINIX se detallan a continuaci�n
las diferentes capas.

EstructuraMINIX.jpeg

Capa 1
Esta es la capa que interact�a directamente con el hardware. Es la encargada de
atrapar todas las interrupciones y trampas, de planificar y ofrecer a las capas
superiores un modelo de procesos independientes y secuenciales para comunicarse
mediante el uso de mensajes. En resumen cuenta con dos partes bien definidas: la
primera trata todo lo referente a la programaci�n de bajo nivel para brindar la
abstracci�n de procesos a las capas superiores. La segunda parte gestiona los
aspectos m�s mec�nicos de los mensajes, como los buffers de env�o y recepci�n de
mensajes que se alojan en la memoria f�sica, las verificaciones de destinos y todo
lo referente al manejo f�sico de memoria en lo que respecta a los mensajes. Esta
primera capa est� escrita en lenguaje ensamblador, el resto est�n escritas en
lenguaje C.

Capa 2
Contiene todo lo concerniente a los procesos de E/S, uno por cada tipo de
dispositivos (tareas). Como se ilustra en el gr�fico, tenemos tareas para discos,
impresoras, relojes, interfaces de red y tareas de sistema, que si bien no son
dispositivos de sistema s� tienen por finalidad el servicio de copiado entre
diferentes regiones de memoria para procesos que no cuentan con los privilegios
para realizarlos ellos mismos. Todas las tareas de la capa 2 y el c�digo de la capa
1 se combinan para formar un solo programa binario llamado kernel, aunque a pesar
de que son compilados juntos cuando el kernel y los manejadores de interrupciones
se est�n ejecutando estos tienen mayores privilegios que las tareas. De este modo
se logra que el kernel pueda ejecutar todo tipo de instrucciones usando datos de
cualquier parte del sistema, a fin de poder acceder a cualquier parte de la memoria
y cualquier registro de procesador. Sin embargo, las tareas a pesar de no contar
con los privilegios a nivel de kernel s� pueden acceder a cualquier regi�n de
memoria que pertenezca a un proceso menos privilegiado con el objetivo de realizar
E/S para ellos.

Capa 3
Aglutina los procesos conocidos como procesos servidores. Se ejecutan en un nivel
menos privilegiado que el kernel o las tareas, y no acceden directamente a los
puertos de entrada y salida. Tampoco pueden acceder a otra regi�n de memoria que no
sea la que le fue asignada. Para ello se vale de las llamadas al sistema (FORK,
EXEC y BRK) las cuales son proporcionadas por el administrador de memoria (MM). El
sistema de archivos (FS) realiza las llamadas al sistema para los archivos (READ,
MOUNT y CHDIR). Cabe destacar que el sistema de archivos de MINIX est� dise�ado
como �servidor de archivos� por lo que se podr�a mover a una m�quina remota casi
sin cambios. Otros servidores de esta capa son el servidor de reencarnaci�n (RS),
que permite reiniciar los drivers que se cierren por fallos u otras causas.

Capa 4
Finalmente, aqu� se alojan todos los procesos de usuario tales como shells,
editores, compiladores, programas, etc.

V�ase tambi�n
Linux
Xenix
Unix
Enlaces externos
P�gina oficial de Minix 3.0 (en ingl�s)
P�gina no oficial, sitio del desarrollo de la versi�n 2.0.4 (en ingl�s)
Lecciones de Minix, en espa�ol
Categor�as: Variantes de UnixSistemas operativos ARMSistemas operativos
libresSistemas Unix-like ligerosSoftware de 1987
Men� de navegaci�n
No has accedidoDiscusi�nContribucionesCrear una
cuentaAccederArt�culoDiscusi�nLeerEditarVer historialBuscar
Buscar en Wikipedia
Portada
Portal de la comunidad
Actualidad
Cambios recientes
P�ginas nuevas
P�gina aleatoria
Ayuda
Donaciones
Notificar un error
En otros proyectos
Wikimedia Commons
Imprimir/exportar
Crear un libro
Descargar como PDF
Versi�n para imprimir
Herramientas
Lo que enlaza aqu�
Cambios en enlazadas
Subir archivo
P�ginas especiales
Enlace permanente
Informaci�n de la p�gina
Elemento de Wikidata
Citar esta p�gina

En otros idiomas
???????
?????
Deutsch
English
Fran�ais
Bahasa Indonesia
Portugu�s
???????
??
36 m�s
Editar enlaces
Esta p�gina se edit� por �ltima vez el 16 abr 2019 a las 03:02.
El texto est� disponible bajo la Licencia Creative Commons Atribuci�n Compartir
Igual 3.0; pueden aplicarse cl�usulas adicionales. Al usar este sitio, usted acepta
nuestros t�rminos de uso y nuestra pol�tica de privacidad.
Wikipedia� es una marca registrada de la Fundaci�n Wikimedia, Inc., una
organizaci�n sin �nimo de lucro.

You might also like