POSIX接口在微内核方面指的是什么



>我在一篇文章中读到了以下内容:任何一种方法(指单片或微内核)都可以提供POSIX接口,其中内核的设计对于只想编写代码以在任何给定设计上运行的人来说变得不感兴趣。在这种情况下,POSIX 接口是什么意思?

POSIX 是一组标准,它定义了应用程序编程接口 (API) 以及其他一些东西,但让我们只关注 API。 基本上,它定义了一组应该可用的用户空间函数。 如果上述功能在所有POSIX系统上都可用,则程序可以轻松地从一个POSIX系统移植到另一个POSIX系统,因此称为便携式操作系统接口。

微内核与单片内核描述了系统的设计方式。 微内核被设计为尽可能简单,只执行内核必须做的必要工作。 这通常是线程、内存和中断管理以及进程间通信 (IPC)。 IPC 是一个重要的功能,因为微内核不实现的功能,但典型的单体将作为用户空间服务实现并通过 IPC 访问。 例如,设备驱动程序和文件系统通常作为用户空间服务实现。 在单体内核设计中,这些是在内核中实现的(尽管可以像Linux那样拥有用户空间的设备驱动程序或文件系统)。

所以POSIX定义了用户空间函数,但没有说明如何实现这些功能。 因此,单体架构中的open可能会导致触发open系统调用。 在微内核中,open实际上可能只是IPC系统调用的包装器,它将联系负责处理open的用户空间服务(这可能取决于您打开的内容)。 POSIX所关心的只是有一个open并且它的行为正确,它不关心open如何完成它的任务。

POSIX interface表示POSIX标准中描述的用户界面。

由于它是用户界面,因此它不依赖于特定内核的实现。

最新更新