2012-04-08 14 views
7

¿cómo se comunican los programas con el núcleo micro/kernel monolítico/exo kernel?cómo se comunican los programas - núcleo micro kernel exolénico exo kernel

enter image description here

He leído muchos libros que muestran como en la imagen, que los núcleos monolíticos se comunica con el programa a través de la capa de mesa/sistema de archivos llamada al sistema.

Pero, ¿cómo se comunican los micro kernels y exo kernel con el programa?

¿La base del kernel micro habla directamente con el programa y, a continuación, el kernel micro se comunica con los servidores?

Actualización: yo encontramos este respondió bastante bien

cliente-servidor o Microkernel sistema operativo El advenimiento de nuevos conceptos en el diseño del sistema operativo, microkernel, está dirigido a la migración traditionalservices de un sistema operativo de la monolítica núcleo en el proceso de nivel de usuario. La idea es dividir el sistema operativo en varios procesos, cada uno de los cuales implementa un solo conjunto de servicios, por ejemplo, servidores de E/S, servidor de memoria, servidor de procesos, sistema de interfaz de subprocesos. Cada servidor se ejecuta en modo de usuario, proporciona servicios al cliente solicitado. El cliente, que puede ser otro componente del sistema operativo o programa de aplicación, solicita un servicio enviando un mensaje al servidor. El kernel de AnOS (o microkernel) que se ejecuta en modo kernel entrega el mensaje al servidor apropiado; theserver realiza la operación; y microkernel entrega los resultados al cliente en otro mensaje

+0

¿No mencionan estos libros la interfaz de llamada del sistema? En cierto sentido, en los sistemas * nix es la ** única ** forma en que la mayoría de los procesos se comunican con el kernel. –

+0

@ AdamMihalcin, entonces, ¿qué opina usted de que el programa se comunica con el núcleo base a través de la interfaz de llamadas del sistema y no a través de los servidores? – zeitue

+0

También aquí en estos documentos https://docs.google.com/viewer?a=v&q=cache:P8U0Y9-4UPkJ:community.qnx.com/sf/sfmain/do/downloadAttachment/projects.core_os/wiki/Oct27_Microkernel_Innovation% 3Fid% 3Datch1222 + & hl = es & gl = us y pid = BL & Srcid = ADGEESgXFLBn6HJD6f9RndRAJJikgttpH7VoD8MW-YVTg7X2AsucCnhr6m2Jj9ivbSS7DjXnqll7Z8WDyvd2Gb7cBGMWCkjb3sLcqSJinAemmdSHuA0nOJPkXw1KGO05uSJPzpSXAgXn y sig = AHIEtbSwaYInyP7NR98kM2hMJw5tsX5OrQ que muestra que hay un bus de mensajes que toda cosa que se comunican a través. pero todavía no sé dónde está la tabla de llamadas del sistema en estos microkernels. – zeitue

Respuesta

2

Las llamadas al sistema son la principal forma de comunicación con núcleos tanto monolíticos como micro. Al usar la interfaz de llamadas del sistema, kernel puede proporcionar numerosos métodos IPC (como señales, memoria compartida, transmisión de mensajes). Debido a la naturaleza de los microkernels, IPC suele ser la parte más importante de dicho kernel y se usa para permitir que los programas se comuniquen con los servidores.

En otras palabras, hay llamadas al sistema que permiten a los programas realizar solicitudes al kernel. Kernel proporciona algunos métodos de IPC que permiten que los programas se comuniquen entre sí, incluidos los servidores en sistemas operativos basados ​​en microkernel.

+0

para que el programa se comunique con el kernel como lo hace program -> library -> servers -> kernel then <-, yes? – zeitue

Cuestiones relacionadas