1.微内核发展历程
操作系统微内核技术起始于20世纪80年代,起初被设计用来解决传统一体化操作系统在可维护性、拓展性、可靠性和稳定性方面的诸多问题。但是随着微内核思想的进一步发展,最终形成一套操作系统设计的核心理念。操作系统微内核仅提供最简单、基本的服务,如通信功能。操作系统的普通服务,如文件管理、设备管理、网络管理等则在we内核以外提供。这种设计思路简化了核心系统的维护压力以提高系统整体的可维护性。下面将从微内核操作系统的历史出发,阐述三代微内核的发展进程。
1.1第一代微内核——Mach
20世纪80年代,Unix操作系统获得了巨大成功,卡耐基梅隆大学的AvieTevanian和RichardRashid主导开发了第一代微内核的代表Mach。Mach在设计的时的一大目标就是兼容UNIX,试图从架构上重构Unix系统但是仍然维持原有系统功能。用户空间设备驱动是Mach操作系统的首创,这一特性降低了Mach微内核系统的代码量,极大提高了稳定性。1986年Mach发布了第2版,两版Mach贡献:
1.验证了微内核的可行性;
2.在多处理器计算机上进行移植验证了微内核在多处理器计算机上的运行;
3.最后为了提高IPC的效率,Mach使用共享内存机制来完成IPC。
最终由于时间仓促,Mach开销较大,没有足够人手与资金,此时Mach内核无法提供完全的系统服务。
1.2第二代微内核——L4
第一代微内核从概念上验证了微内核技术的可行性,但由于性能原因,并未在产业界引起大规模推广。鉴于第一代微内核在性能上的劣势