因为OS的功能增多,代码扩大,所以要提供合理的结构。
分层结构
分层结构的特点是每层只能调用它紧邻的低层的服务,是单向依赖的 优点是方便调试,验证,简化设计和实现,容易扩充和维护 缺点是合理的调用过程困难,效率比较差。
模块化
按功能划分成若干具有一定独立性的模块,它们通过接口调用。大模块可以细分成小模块。
模块化的问题是模块的大小要仔细权衡,如果大了,内部会比较复杂,如果小了,系统会比较混乱 权衡模块的独立性,要高内聚,低耦合。。
模块化的优点是提高了操作系统设计的正确性、可理解性和可维护性,增强了OS的适用性,加速了操作系统的开发过程。
缺点是接口规定很难满足接口需求,各个设计师都同时开发,无法找到可靠的决定性的顺序。
宏内核
宏内核是指把系统中的主要功能模块都作为一个紧密联系的整体,运行在内核态,从而提供高性能的服务。 优点是各管理模块之间共享信息,能够有效地利用相互之间的有效性,所以具有天然的无可比拟的性能优势。 缺点是,随着体系结构和要求的发展,OS会面临越来越复杂的危机
微内核
微内核指把内核中最基本的功能保留在内核,行的,把不需要在内核态中执行的功能划分到用户态执行,从而降低内核设计的复杂性。被移出的OS代码被划分成若干服务程序执行,相互独立交互则借助微内核进行通信。
微内核的优点是扩展性、灵活性、可靠性、安全性、可移植性和分布式计算。
它的缺点是性能较差