文章目录
1.微内核发展的历史背景
操作系统微内核技术起初是被设计用来解决传统一体化操作系统在可维护性,扩展性,可靠性和稳定性方面的诸多问题。但是伴随着微内核思想的进一步发展,最终形成一整套操作系统设计的核心理念。即操作系统微内核仅提供最简单,基本的服务,如通信功能,而操作系统的普通服务,如文件管理,设备管理,网络管理等则在微内核以外提供。下面我们将阐述三代微内核的发展历程。
2.微内核发展的历史
2.1第一代微内核:0的突破
伴随着Unix操作系统的巨大成功,卡耐基梅隆大学的Mach微内核操作系统就是试图从架构上重构Unix系统但是仍然能够维持原有系统功能的一次尝试。为此,Mach微内核发展出了一系列概念用于支撑该项目,其中比较突出的有核外页管理器和用户空间设备驱动。
在Mach中,核外页管理器是处理缺页异常的用户空间线程。而用户空间设备驱动则将操作系统中的大量设备驱动从内核空间剥离,使之运行在用户空间。举个例子:linux内核设备驱动代码占总代码的百分之70左右,而linux中约百分之40的bug都来自设备驱动。用户空间设备驱动的出现降低了Mach微内核系统的代码量,极大提高了稳定性。
Mach发布了2个版本,主要做出了以下的这些工作:
1.从概念上验证了微内核技术的可行性;
2.在多处理器计算机上进行移植验证了微内核在多处理器计算机上的运行;
3.Mach使用共享内存机制完成IPC,从而提高了IP