典型微内核架构
微内核是正确实现操作系统所需的最少软件。这包括内存、进程调度机制和基本的进程间通信。
下图显示了微内核的架构:
在上图中,微内核包含基本需求,例如内存、进程调度机制和基本的进程间通信。唯一以特权级别(即内核模式)执行的软件是微内核。操作系统的其他功能从内核模式中移除,并在用户模式下运行。这些功能可能是设备驱动程序、文件服务器、应用程序进程间通信等。
微内核确保代码易于管理,因为服务在用户空间中划分。这意味着内核模式下运行的代码更少,从而提高了安全性和稳定性。
微内核中的基本组件
微内核只包含系统的核心功能。只有将组件放在外部会破坏系统功能的情况下,才将其包含在微内核中。所有其他非基本组件都放在用户模式中。
微内核中包含的最小功能包括:
- 微内核中包含内存管理机制,例如地址空间。这也包含内存保护功能。
- 处理器调度机制在微内核中也是必要的。这包含进程和线程调度程序。
- 进程间通信非常重要,因为它需要管理运行自己地址空间的服务器。
微内核系统的性能
在微内核系统中提供服务比在普通的单片系统中要昂贵得多。服务是通过向服务器发送进程间通信消息并获取返回消息来获得的。这意味着如果驱动程序分别实现为进程或过程,则需要进行上下文切换或函数调用。
因此,微内核系统的性能可能很复杂,并可能导致一些问题。但是,这个问题在现代创建的微内核系统(例如 L4 微内核系统)中正在减少。
微内核的优点
微内核的一些优点包括:
- 微内核是模块化的,可以根据需要替换、重新加载、修改、更改不同的模块。这甚至可以在不接触内核的情况下完成。
- 微内核非常安全,因为只包含那些否则会破坏系统功能的组件。
- 与单片系统相比,微内核包含较少的系统崩溃。此外,由于微内核的模块化结构,发生的崩溃也可以很容易地处理。
广告