Monolítico vs Micro kernel


8

¿Cuáles son las diferencias entre un núcleo monolítico y un microkernel con respecto a la estructura y la seguridad? Mi amigo me dijo que los sistemas Linux tienen un núcleo monolítico y, por lo tanto, no son más fáciles de hackear, pero no creo que fuera realmente correcto.

Alguien por favor ilumíneme.


Para un poco de antecedentes históricos, puede leer el Debate de Tanenbaum-Torvalds de 1992.
Pausado hasta nuevo aviso.

Respuestas:


6

La diferencia básica es que un micro kernel (MK) es muy pequeño y solo proporciona un conjunto muy mínimo de servicios. La mayoría de lo que normalmente se consideran servicios del sistema operativo son proporcionados por procesos separados que se ejecutan fuera del núcleo y en un modo menos privilegiado. Estos procesos deben comunicarse a través de algunos de IPC, en lugar de simplemente leer / escribir a cualquier estructura de datos a la que quieran acceder.

Los MK tienden a ser bastante fáciles de portar ya que el núcleo es pequeño, el esfuerzo de portabilidad es bajo.

Dado que muchos de los servicios proporcionados se ejecutan potencialmente en el espacio del usuario en lugar del espacio del núcleo, no pueden destruir fácilmente otros procesos. Este es un plus de seguridad.

Por ejemplo, digamos que la parte de la pila de redes estaba en el espacio del usuario, y se vio comprometida, es posible que no pueda interrumpir otros procesos / tareas. Mientras que si esa misma parte de la pila de red en un kernel monolítico podría estar ejecutándose en el espacio del kernel, si se ve comprometida, podría destruir otros procesos, ya que sería un privilegio.


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.