1.分层法
1.1 概述
将OS划分为多层,最底层为硬件,最高层为用户接口。每层只能调用紧邻它的低层的功能和服务(单向依赖)。
1.2 优点
- 便于系统的调试和验证,简化系统的设计和实现。
- 易扩充&易维护。
1.3 缺点
- 合理定义各层比较困难。若各层之间的关系确定下来后,往往就显得不够灵活。
- 效率较低。OS每执行一个功能,都需要穿越多层,层与层之间通信会带来额外的开销,进而导致系统效率低下。
2.模块化
2.1 概述
将OS划分成多个独立的模块,并规定好各模块间的接口,使模块间可进行相互通信,当然模块之下还可以继续划分多个子模块。
2.2 评估
- 若模块划分太小,那么模块之间的联系过多,导致系统较为混乱。
- 若模块划分太大,那么模块自身的复杂性。
- 划分模块的两个标准:
- 内聚性:模块内部的各部分的联系程度。该指标越高,模块独立性越好。</