Login Barrapunto
Linus y el diseño de los sistemas operativos
Muchos de vosotros recordaréis la famosa batalla dialéctica entre
el famoso profesor Tanenbaum y un aún desconocido Linus Torvalds sobre
el diseño de sistemas operativos monolíticos y basados en microkernels. El nuevo MacOS X se basa en Mach, un sistema operativo con arquitectura de microkernel, y Linus hace unas
críticas bastante negativas de él. Este mismo Mach se usa en el
núcleo de la FSF, GNU/Hurd. La historia completa en ZDNet.
Este hilo ha sido archivado.
No pueden publicarse nuevos comentarios.
Linus y el diseño de los sistemas operativos
|
Log in/Crear cuenta
| Top
| 18 comentarios
| Buscar hilo
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.

También en slashdot
(Puntos:1)( http://acsblog.es/ | Última bitácora: Lunes, 09 Mayo de 2005, 09:17h )
--
Parafraseando a Trosky "aunque a ti no te importe la ley, a la ley le importas tú" - Josemi
Re:También en slashdot
(Puntos:2)( http://icewinddale.blogspot.com/ | Última bitácora: Jueves, 30 Enero de 2014, 23:34h )
-- icewinddale.blogspot.com [blogspot.com]
Será como todo: cada uno con sus ventajas
(Puntos:1)( http://barrapunto.com/ )
Yo creo que Linus es un cabezota
(Puntos:1)( http://barrapunto.com )
En su contra tienen la velocidad... Eso de ir todo el rato con mensajes arriba y abajo siempre hará que las cosas vayan más lentas que en un kernel monolítico.
# apt-get laid
Microkernels
(Puntos:5, Informativo)( http://es.gnu.org/ )
apropiado es muy interesante y amplio.
¿Qué es mejor? ¿Microkérnel o monolítico?
Como todo, está lleno de matices.
La existencia de la evolución de otras
tecnologías frente a los kernels monolíticos
tradicionales responde a ciertas deficiencias
que presentan estos últimos:
- La arquitectura interna de un kernel
monolítico tiende de manera natural a cierto
tipo de caos. Si bien teóricamente es
posible implantar interfaces bien definidas,
la recurrencia al uso de objetos globales
y "callbacks" hacen que se gaste mucho esfuerzo
únicamente en mantener una coherencia en
la pieza software completa. El resultado
es que se crean dependencias cruzadas entre
diferentes componentes, que sin embargo son
lógicamente distintos.
Estos problemas se manifiestan a la hora de
hacer releases o versiones. Los mantenedores
de partes de un kernel monolítico al uso
tradicional deben estar constantemente al
acecho de cualquier cambio que pueda afectarles.
Esto pasa bastante a menudo. En resumen:
cualquier cambio en un kernel monolítico debe
ser largamente ponderado y estudiado, puesto
que aunque se efectue en una función "interna"
de un componente diferenciado (tal como
un driver o el gestor de ficheros, por ej.)
hay grandes probabilidades de que afecte al
resto del kernel. Es decir, efectos laterales
por todos los sitios, que obligan a un gran
esfuerzo para mantener la coherencia del
conjunto, y por tanto su buen funcionamiento.
- Otra deficiencia visible en los kernels
monolíticos tradicionales es que engloban
como propios componentes como gestores de
ficheros, o de memoria. Esto disminuye la
flexibilidad del sistema. En parte, es
similar a la situación de las shells. En
entornos Unix, los intérpretes de comandos
no forman parte del kernel, y como consecuencia
un usuario puede utilizar varios, e incluso
hacerse el suyo e instalarlo sin ningun tipo
de privilegios. Sin embargo, en otros sistemas
el intérprete de comandos si forma parte del
kernel, con las desventajas evidentes.
Parece razonable hacer lo mismo con otros
componentes como gestores de ficheros,
gestores de "objetos de memoria", etc.
Estas deficiencias son universalmente reconocidas,
y están bien estudiadas y asumidas. Como era de
esperar, han ido surgiendo alternativas y
propuestas de evolución, que intentan solventar
estos problemas. De estas propuestas, tal vez
la mas evolucionada es el concepto de microkernel.
La idea del microkernel es muy clara: tener un
kernel lo mas pequeño posible (que haga pocas
cosas) y sobre el, utilizando las abstracciones
que el microkernel "exporta", construir el resto
del sistema. Generalmente los microkernels
exportan abstracciones para unidades de
ejecución (en el caso de Mach, hilos), unidades
de encapsulación (en Mach, tareas), y un sistema
de comunicación entre las tareas (mensajes y
puertos, en Mach).
De este modo, se ejecuta en modo kernel lo menos
posible, y en modo usuario el resto. Es
importante darse cuenta de que esto no implica
en modo alguno que el sistema no sea seguro.
Todos los sistemas basados en microkernels que
emulan sistemas Unix (tales como el Hur
Re:También en slashdot
(Puntos:2)( http://acsblog.es/ | Última bitácora: Lunes, 09 Mayo de 2005, 09:17h )
Los comentarios en BarraPunto en esta ocasión los he encontrado interesantes. Que alivio después de leer alguna noticia llena de comentarios de prensa amarilla :-(
--
Parafraseando a Trosky "aunque a ti no te importe la ley, a la ley le importas tú" - Josemi
Microkernel, componentes y CORBA
(Puntos:3, Informativo)( http://acsblog.es/ | Última bitácora: Lunes, 09 Mayo de 2005, 09:17h )
El software libre avanza hacia un modelo de desarrollo basado en componentes y el núcleo debería de seguir también este esquema. Los componentes nos llevan a un mundo mucho más desacoplado que se ajusta mejor a el modelo de desarrollo de software libre.
--
Parafraseando a Trosky "aunque a ti no te importe la ley, a la ley le importas tú" - Josemi
Re:Yo creo que Linus es un cabezota
(Puntos:1)( http://barrapunto.com )
# apt-get laid
Re:Yo creo que Tanenbaum es un envidiosillo
(Puntos:1)( http://barrapunto.com )
Ahí entra en juego la flexibilidad de los microkernels. Con cada cosa en su subsistema separada de los demás, que debería facilitar enormemente su desarollo. Si bien es más difícil hacer que un microkernel dé sus primeros pasos, yo creo que el esfuerzo merece la pena. Yo no me vengais con que Hurd lleva 10 ó 15 años gestándose porque si Hurd tuviera la mitad de desarrolladores que tiene Linux yo creo que haría ya tiempo que habrían sacado una versión ya estable.
Ah, y si crees que Linus no descalificó a los microkernels, leete si puedes la famosa discusión que mantuvieron Tanenbaum y el mismo Linus.
# apt-get laid
Re:Que metan lo que les de la gana
(Puntos:1, Divertido)Uy que va!
(Puntos:1)( http://librexpresion.org/ | Última bitácora: Martes, 17 Marzo de 2009, 08:40h )
libreXpresion.org [librexpresion.org]