OS-DeviceManagement-case课案.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《OS-DeviceManagement-case课案.ppt》由会员分享,可在线阅读,更多相关《OS-DeviceManagement-case课案.ppt(17页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、操作系统课程讲义操作系统课程讲义2Minix中的中的I/O设备管理设备管理v设备驱动方式(与设备驱动方式(与Unix的本质区别,与的本质区别,与Linux类似方式)类似方式) 每一类设备均有单独的设备驱动程序,其中硬件无关的内容形成公共程序、硬件相关每一类设备均有单独的设备驱动程序,其中硬件无关的内容形成公共程序、硬件相关的内容作为特定驱动。以模块化组织提高系统灵活性的内容作为特定驱动。以模块化组织提高系统灵活性 采用进程间通信的方式完成采用进程间通信的方式完成I/O设备的使用(设备的使用(Minix的进程式组织结构)的进程式组织结构) Unix采用过程调用的方式,用户进程调用驱动程序,引发操
2、作系统陷入,完成采用过程调用的方式,用户进程调用驱动程序,引发操作系统陷入,完成I/O操操作后由中断处理程序唤醒用户进程作后由中断处理程序唤醒用户进程v设备管理方法设备管理方法 设备驱动程序作为独立进程存在,设备驱动程序作为独立进程存在,OS启动时各个设备驱动进程完成基本初始化,而后启动时各个设备驱动进程完成基本初始化,而后等待消息(阻塞),直到用户进程发送消息(使用等待消息(阻塞),直到用户进程发送消息(使用I/O设备)将其唤醒设备)将其唤醒 与硬件相关的设备驱动部分作为过程被设备驱动程序调用,从而实现无关性封装与硬件相关的设备驱动部分作为过程被设备驱动程序调用,从而实现无关性封装vI/O软
3、件与死锁处理软件与死锁处理 Minix将所有与设备无关的将所有与设备无关的I/O软件封装在文件系统模块中,所有的块设备均作为一种软件封装在文件系统模块中,所有的块设备均作为一种特殊的文件特殊的文件 用户空间的用户空间的I/O软件主要是供用户程序调用的函数库软件主要是供用户程序调用的函数库 Minix中对死锁的处理采用中对死锁的处理采用“鸵鸟算法鸵鸟算法”I/O管理实例管理实例操作系统课程讲义操作系统课程讲义3进程式进程式OS与整体式与整体式OSI/O管理实例管理实例操作系统课程讲义操作系统课程讲义4Windows中的中的I/O设备管理设备管理vI/O管理系统结构管理系统结构 I/O管理系统是一
4、个独立的系统组件,存在于管理系统是一个独立的系统组件,存在于NTOSKRNL.exe文件中文件中 I/O管理系统由多个执行体组件和设备驱动程序组成,负责接受管理系统由多个执行体组件和设备驱动程序组成,负责接受I/O请求,并针对性的请求,并针对性的将设备请求传送到各类对应的设备将设备请求传送到各类对应的设备 Windows中将所有的中将所有的I/O操作均看作对虚拟文件的操作,所有的操作均看作对虚拟文件的操作,所有的I/O数据传输都被看数据传输都被看作作“流数据流数据”,由,由I/O管理系统负责将虚拟文件映射到对应的物理设备上管理系统负责将虚拟文件映射到对应的物理设备上vI/O管理系统组成管理系统
5、组成 I/O管理器:负责定义支撑设备驱动程序的基本架构,直接响应管理器:负责定义支撑设备驱动程序的基本架构,直接响应I/O请求请求 设备驱动程序:负责定义并实现某一特定类型设备的设备驱动程序:负责定义并实现某一特定类型设备的I/O接口管理接口管理 PnP管理器:与管理器:与I/O管理器和总线驱动程序协同,检测硬件资源的分配、设备的变更管理器和总线驱动程序协同,检测硬件资源的分配、设备的变更 电源管理器:与电源管理器:与I/O管理器协同工作来检测整个系统和单个设备,完成电源状态转换管理器协同工作来检测整个系统和单个设备,完成电源状态转换 WDM WMI:WDM的的WMI支持例程,负责实现设备与支
6、持例程,负责实现设备与WMI服务之间的通信服务之间的通信 注册表:作为一个数据库,存储基本硬件描述信息以及驱动程序的初始化和配置信息注册表:作为一个数据库,存储基本硬件描述信息以及驱动程序的初始化和配置信息 硬件抽象层:将设备驱动程序实现为二进制可移植的形式,实现对硬件平台的独立硬件抽象层:将设备驱动程序实现为二进制可移植的形式,实现对硬件平台的独立vWindows中的中的I/O系统数据结构系统数据结构 文件对象、驱动程序对象、设备对象、文件对象、驱动程序对象、设备对象、I/O请求包请求包I/O管理实例管理实例操作系统课程讲义操作系统课程讲义5Windows中中I/O系统组件系统组件I/O管理
7、实例管理实例操作系统课程讲义操作系统课程讲义6Windows中的中的I/O数据结构数据结构v文件对象文件对象 所有所有I/O设备被看作文件对象,用户程序进行设备被看作文件对象,用户程序进行I/O操作时就像是对一个文件进行操作操作时就像是对一个文件进行操作 文件对象是可共享的、有设备无关命名的、受保护的、支持同步的结构文件对象是可共享的、有设备无关命名的、受保护的、支持同步的结构 调用与实现过程:调用与实现过程:C库函数库函数Win32 DLLNTDLL.DLLNTOSKRNL.DLLv驱动程序对象与设备对象驱动程序对象与设备对象 驱动程序对象代表一个独立的驱动程序,驱动程序对象代表一个独立的驱
8、动程序,I/O管理器从驱动程序对象中获得并且为管理器从驱动程序对象中获得并且为I/O记录每个驱动程序的入口点记录每个驱动程序的入口点 设备对象在设备对象在OS中代表一个物理中代表一个物理/逻辑逻辑/虚拟的设备,并描述设备的基本特征虚拟的设备,并描述设备的基本特征 当驱动程序被加载时,当驱动程序被加载时,I/O管理器将创建一个驱动程序对象,然后调用驱动程序的初管理器将创建一个驱动程序对象,然后调用驱动程序的初始化例程,初始化例程将创建一个设备对象。设备对象接受始化例程,初始化例程将创建一个设备对象。设备对象接受I/O操作请求,驱动程序操作请求,驱动程序对象实现对象实现I/O操作请求操作请求vI/
9、O请求包请求包 由固定部分(标题)和堆栈单元(数量不定)组成,包含了由固定部分(标题)和堆栈单元(数量不定)组成,包含了I/O请求的各类信息请求的各类信息 IRP由由I/O管理器构造,保存了管理器构造,保存了I/O请求的相关信息,同时保存了调用者的相关信息请求的相关信息,同时保存了调用者的相关信息 所有的所有的IRP均保存在均保存在IRP队列中,当用户程序终止后,队列中,当用户程序终止后,I/O系统将清除未完成的系统将清除未完成的IRPI/O管理实例管理实例操作系统课程讲义操作系统课程讲义7I/O请求涉及到的数据结构请求涉及到的数据结构I/O管理实例管理实例操作系统课程讲义操作系统课程讲义8W
10、indows中设备驱动程序层中设备驱动程序层次次I/O管理实例管理实例操作系统课程讲义操作系统课程讲义9设备驱动程序的内容组成设备驱动程序的内容组成I/O管理实例管理实例操作系统课程讲义操作系统课程讲义10Windows中的中的I/O处理简述处理简述v设备驱动程序的同步操作设备驱动程序的同步操作 驱动程序在访问相关数据时,必须实现驱动程序在访问相关数据时,必须实现“同步同步”操作,即以互斥的形式保护操作,即以互斥的形式保护各类共享数据。在单各类共享数据。在单CPU的机器上,通过同步例程实现;在多的机器上,通过同步例程实现;在多CPU的机器上,的机器上,通过通过“自旋锁自旋锁”实现实现vI/O处
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- OS DeviceManagement case 课案
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内