目录
2.1 操作系统逻辑结构
1.逻辑结构
- OS的设计和实现思路
2.逻辑结构的种类
-
整体式结构
以模块为基本范围构建,例:c语言程序
特点:
-
模块设计、编码和调试独立
-
模块调用自由
-
模块通信多以全局变量形式完成
缺点:
- 信息传递随意,维护和更新苦难
-
-
层次式结构
所有功能按照调用次序拍成若干层,相邻层次间只有单向依赖或单向调用 。 例子:TCP/IP协议栈
分层原则:
-
硬件相关——最底层
-
外部特性——最外层
-
中间层——调用次序或消息传递顺序
-
共性的服务——较低层
-
活跃功能——较低层
优点:
- 结构清晰,避免循环调用
- 整体问题局部化,系统的正确性容易保证
- 有利于操作系统的维护、扩充、移植
-
微内核结构(client/server)
-
操作系统=微内核+核外服务器
-
微内核
- 足够小,提供OS最基本的核心功能和服务
-
- 实现与硬件紧密相连的处理
- 实现一些较基本的功能
- 负责客户和服务器间的通信
-
核外服务器
-
完成OS的绝大部分服务功能,等待应用程序提出请求
-
有若干服务器或进程共同构成
如:进程/线程服务器,虚存服务器,设备管理服务器等,以进程形式运行在用户态
-
-
操作系统的微内核结构的优点,对我们设计应用程序有什么启示?
答:设计大规模的应用程序应该保证系统灵活性,仅提供最基本,最必要的服务,体现程序的简洁,体现系统开放性,可以基于微内核开发设计用户自己的新系统,易于保证其正确性,运用系