- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统(东南大学滕至阳ppt)chapter8
* 第九章 操作系统设计与实现 9.1 操作系统设计的目标 ◆易用性 ◆可靠性 ◆安全性 ◆高效性 第九章 操作系统设计与实现 9.1 操作系统设计的目标 ◆易维护性 ◆易移植性 与硬件有关的代码量越小,移植工作量就越 小。微核心技术就是在这种背景下产生的 第九章 操作系统设计与实现 9.2 操作系统设计方法 9.2.1 模块接口法 图9-1 模块之间的复杂关系 第九章 操作系统设计与实现 9.2.2 有序分层法 ◆自顶向下 ◆自底向上 ◆双向策略 图9-2 分层图 第九章 操作系统设计与实现 9.2.2.2 分层原则 图9-3 参考层次划分 5 WPS and Application 4 API 3 DLLs 2 OS/2 Kernel 1 Device Drivers 0 Hardware 图9-4 OS/2的层次 第九章 操作系统设计与实现 9.2.3 面向对象方法 9.2.3.2 开发方法 ◆ IBM在研制OS/2的过程中,定义了系统对象模 型SOM(System Object Model) 图9-5 图9-5 OS/2中WPS的对象层次 图9-5 OS/2中WPS的对象层次 第九章 操作系统设计与实现 9.2.4 微核法 9.2.4.1微核结构 ◆ Mach3.0中的主要对象有:任务(task)、线程、 端口(port)、消息(message)和存储对象 第九章 操作系统设计与实现 9.2.4.1微核结构 ◆任务是提供线程运行的资源构成的静态环境,它是资源的分配单位和保护单位。线程是运行的基本单位,它包括必须的栈和寄存器组等。UNIX进程相当于只有1个线程的任务。端口是1个单向的通信通道,可有多个发送者,但接受者只能有1个 第九章 操作系统设计与实现 9.2.4.1微核结构 ◆ IPC实现中尽量减少消息复制而采用映射(maping) 的方法。通信双方线程通过核心堆栈的转让(handoff) 实现发送线程和接收线程的快速切换,从而大大提高 通信效率,特别是站点内通信的效率 ◆存储对象管理通过pager进行。Match核心提供缺省 page负责换页分区管理 task vm_map vm_map_entry vm_object 同一任务中线程拉链 任务的ipc_space 任务的地址映象 任务所连的pset 属同一pset的任务拉链 地址映象表头 Pmap指针 pmap 地址映象表项双向链 对应vz区的首末址 映象的存储 结构指针及 offsset 保护属性 继承属性 该存储对象在主存的页面(驻留页表项)拉链 Pager的三个port; memory_object_port; request_port; name_port. 存储对象及pager的特性和状态信息 thread vm_page(驻留页表项,一个页面一项) 所在任务的指针 同一任务中线程拉链 所在的pset 属同一pset线程拉链 所在运行队列的拉链 (全局或局部队列) 等待接受消息而被封 锁的线程队列拉链 状态消息 调度消息 核心栈指针 硬件现场保护 thread port指针 属同一存储对象的页表项拉链 对应的存储对象结构指针及offset 空闲页队列 可回收页队列 已分配页队列 页面状态信息 页物理地址 注:系统中有三个外部变量分别存放空闲页,可回收页,已分配页3个队列的队首: free,inactive,active ipc_space table表项 port结构 port_set结构 存放part名指针table 作为table扩充的splay数指针 port结构指针 具发送权port的hast链 结构者的ipc_space指针 所代表对象的结构指针(如task结构) 所属port集 接受信息队列 等待接受的线程队列 发送消息等待线程队列 port名 接受信息队列 等待接受而封锁的线程队列 part_set名 processer_set processer 全局运行队列头 属于pset处理机队列 pset空闲处理机队列 pset中任务队列 pset中线程队列 系统中pset拉链 pset_port指针 局部运行队列头 所属处理机集 空闲处理机队列 状态信息 处理机的idle thead的结构指针 processer port指针 图9-6 Mach3.0的主要数据结构及关系 *
文档评论(0)