【发布时间】:2012-04-21 00:13:56
【问题描述】:
程序如何与微内核/单片内核/exo内核通信?
我读过很多书,如图所示,单片内核通过系统调用表/文件系统层与程序通信。
但是微内核和exo内核如何与程序通信呢?
微内核的基础是否直接与程序通信,然后微内核与服务器通信?
更新: 我发现这回答得很好
客户端-服务器或微内核操作系统 操作系统设计中新概念微内核的出现旨在将操作系统的传统服务从单片内核迁移到用户级进程。其思想是将操作系统划分为若干个进程,每个进程实现一组单一的服务——例如,I/O 服务器、内存服务器、进程服务器、线程接口系统。每个服务器都以用户模式运行,为请求的客户端提供服务。客户端可以是另一个操作系统组件或应用程序,它通过向服务器发送消息来请求服务。以内核模式运行的 AnOS 内核(或微内核)将消息传递到相应的服务器;服务器执行操作;微内核在另一条消息中将结果传递给客户端
【问题讨论】:
-
这些书都没有提到系统调用接口吗?从某种意义上说,在 *nix 系统上,这是大多数进程与内核通信的唯一方式。
-
@AdamMihalcin 所以你的意思是程序通过系统调用接口而不是通过服务器与基本内核通信?
-
同样在这些文档docs.google.com/… 中,它显示了所有事物都通过消息总线进行通信。但我仍然不知道这些微内核的系统调用表在哪里。
-
程序 -> 内核 -> 服务器 -> 内核 -> 程序。
标签: kernel inter-process-communicat microkernel