Microkernel

Páginas: 8 (1805 palabras) Publicado: 2 de septiembre de 2012
Opinión: Andrew W. Tanenbaum • COMUNIDAD

¿Por qué los ordenadores simplemente no pueden funcionar todo el tiempo?

MICRO VS. MONOLÍTICO
La trifulca entre el inventor de Minix Andrew W. Tanenbaum, y el entonces novato Linus Torvalds ya es materia de leyenda. Torvalds era usuario de Minix antes de montar su primer Linux basándose en el sistema de Tanenbaum. El Doctor Tanenbaum ha sido tangentil como para escribir para nosotros su opinión… una opinión que en 15 años no ha cambiado: tanto Linux como Windows son poco fiables. POR ANDREW W. TANENBAUM
(1) son más complicados y (2) se inspeccionan menos. Mientras que mucha gente inspecciona el scheduler, pocos se ocupan del controlador de una impresora.

L

os usuarios de ordenadores están cambiando. Hace diez años, la mayoría eragente joven con muchos conocimientos técnicos. Cuando algo iba mal, cosa que ocurría a menudo, sabían arreglarlo. Hoy en día, el usuario medio es mucho menos sofisticado, puede que sea una niñita de 12 años o su abuelo. Tal vez sepan tanto de arreglar ordenadores como sabe el hacker típico de arreglar su coche. Lo que más desean es un ordenador que funcione todo el tiempo, sin excentricidades nifallos. Muchos usuarios comparan sus ordenadores con su televisor. Ambos están llenos de mágicos componentes electrónicos y tienen grandes pantallas. La mayoría tienen un concepto implícito de televisor: (1) compras uno; (2) lo enchufas; (3) funciona perfectamente sin fallos durante los siguientes 10 años. Esperan que ocurra lo mismo con los ordenadores y, cuando no es así, se frustran. Cuando unexperto en informática les dice que “si Dios hubiera querido que los ordenadores funcionaran todo el tiempo, no habría inventado el botón RESET”, no le ven la gracia. Ante la ausencia de una definición de fiabilidad mejor, adoptemos la siguiente: Un dispositivo se considera un 99% fiable si los usuarios nunca experimentan ningún fallo a lo largo de todo el periodo en el que poseen el dispositivo. Enfunción de esta definición, casi ningún ordenador es fiable, mientras que casi todos los TVs, iPods, cámaras digitales,

vídeo cámaras, etc. sí lo son. La gente con conocimientos técnicos está dispuesta a perdonar a un ordenador que se cuelga un par de veces al año, pero los usuarios normales no. Los usuarios domésticos no son los únicos a quienes frustra la pobre fiabilidad de los ordenadores.Incluso en entornos altamente técnicos es un problema. Las compañías como Google y Amazon, con centenares de miles de servidores, experimentan miles de fallos cada día. Han aprendido a vivir con ello, pero preferirían sistemas que simplemente funcionaran todo el tiempo. Desafortunadamente, el software actual les falla. El problema de fondo es que el software contiene errores, y cuanto más softwarehay, más errores contiene. Varios estudios han demostrado que el número de bugs por mil líneas de código (KLoC) cae en un horquilla de entre 1 y 10 en sistemas de producción de gran tamaño. Un software bien escrito puede tener 2 bugs por KLoC, pero nunca menos. Según esto, un sistema operativo con, digamos, 4 millones de líneas de código puede contener entonces hasta 8000 bugs. No todos sonfatales, pero algunos lo serán. Un estudio de la Universidad de Stanford muestra que los controladores de dispositivos, que componen el 70% de la base de código de un sistema operativo típico, tiene índices de errores de entre 3 a 7 veces superiores al resto del sistema. Y tienen unos índices tan altos porque

Kernels más Pequeños
La solución a este problema es mover el código fuera del kernel, dondepuede hacer el máximo daño, y depositarlo en procesos del espacio de usuario, donde los bugs no pueden colgar el sistema. Así es como se ha diseñado MINIX 3. El sistema MINIX actual es la (segunda) encarnación del MINIX original que se lanzó en 1987 como sistema operativo educativo, pero que, desde entonces, ha sido revisado radicalmente hasta convertirse en un sistema de alta fiabilidad y con...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Estructura de Microkernel

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS