ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt

上传人:wj 文档编号:7173025 上传时间:2023-05-08 格式:PPT 页数:28 大小:660.50KB
下载 相关 举报
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第1页
第1页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第2页
第2页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第3页
第3页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第4页
第4页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第5页
第5页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第6页
第6页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第7页
第7页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第8页
第8页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第9页
第9页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第10页
第10页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第11页
第11页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第12页
第12页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第13页
第13页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第14页
第14页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第15页
第15页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第16页
第16页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第17页
第17页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第18页
第18页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第19页
第19页 / 共28页
ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt

《ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt》由会员分享,可在线阅读,更多相关《ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt(28页珍藏版)》请在冰点文库上搜索。

ch5-5.9windowsIO系统和5.8Linux设备管理PPT文档格式.ppt

当进程访问设备文件时,它只要驱动物理设备就行,VFS负责为应用程序隐蔽设备文件与普通文件之间的差异,可把对设备文件的任一系统调用转换成对设备驱动程序的函数调用。

5.8.2设备驱动程序,1驱动程序的注册与注销2设备的打开与释放3设备的读写操作4设备的控制操作和控制方式,5.8.3设备I/O的处理,1数据传输和设备驱动2块设备请求3低级请求处理,5.9Windows2003I/O系统,5.9.1I/O系统结构和组件5.9.2I/O系统数据结构5.9.3I/O类型和处理5.9.4高速缓存管理,5.9.1I/O系统结构和组件

(1),WindowsI/O系统是执行体的组件,存在于NTOSKRNLEXE文件中。

它接受来自用户态和核心态的I/O请求,并以不同形式把它们传送到I/O设备。

I/O系统结构和组件

(2),一个典型的I/O请求流程,I/O管理的特点,1)I/O包驱动2)通过虚拟文件实现I/O操作,5.9.2I/O系统数据结构,四种数据结构代表了I/O请求:

文件对象、驱动程序对象、设备对象、IO请求包(IRP)。

1、文件对象,文件作为对象来管理,是可以共享的系统资源,被基于对象的安全性所保护,并且它们支持同步。

当调用者打开文件或单一设备时,I/O管理器为文件对象返回句柄。

文件对象由包含访问控制表(ACL)的安全描述体保护。

I/0管理器查看安全子系统来决定文件的ACL是否允许进程去访问它的线程正在请求的文件。

2、驱动程序对象和设备对象

(1),线程为文件对象打开句柄时,I/O管理器根据文件对象名称来决定将调用哪个或哪些驱动程序来处理请求。

下面的系统对象满足这些要求:

驱动程序对象,I/O管理器从驱动程序对象中获得并且为I/O记录每个驱动程序的调度例程的地址。

设备对象在系统中代表一个物理的、逻辑的设备并描述它的特征,例如,所需要的缓冲区的对齐方式和用来保存I/O请求包的设备队列位置。

驱动程序对象和设备对象

(2),3、I/O请求包

(1),IRP是I/O系统用来存储处理IO请求所需信息的数据结构。

线程调用I/O服务时,I/O管理器就构造一个IRP来表示在整个系统I/O进展中要进行的操作。

I/O管理器在IRP中保存一个指向调用者文件对象的指针。

I/O请求包

(2)IRP由两部分组成,固定部分(标题)和一个或多个堆栈单元。

固定部分包括:

请求的类型和大小、同步请求还是异步请求、用于缓冲I/O的指向缓冲区的指针和随着请求的进展而变化的状态信息。

IRP堆栈单元包括一个功能码、功能特定的参数和指向调用者文件对象的指针。

4驱动程序分类和组成,1)驱动程序分类:

(1)核心模式驱动程序。

(2)用户模式驱动程序。

(3)硬件支持驱动程序。

2)包括调用处理I/O请求不同阶段的例程,主要有:

初始化例程、功能例程、启动I/O例程、中断服务例程、延迟过程调用例程、完成例程、取消例程、卸载例程、系统关闭通知例程和错误记录例程。

5多处理机中I/O同步问题,多个CPU上运行,驱动程序必须同步执行的主要原因。

驱动程序必须同步执行的方法。

5.9.3I/O类型和处理

(1),1I/O类型1)同步I/O和异步I/O2)快速I/O3)映射文件I/O和文件高速缓存4)分散/集中I/O,I/O类型和处理

(2),2I/O处理步骤

(1)Windows核心态设备驱动程序I/O请求包含步骤:

I/O库函数经过语言的运行时库转换成对子系统DLL的调用;

子系统DLL调用I/O的系统服务;

I/O系统服务调用对象管理程序,检查给定的文件名,再搜索名空间,把控制转交给I/O管理器寻找文件对象;

驱动程序询问安全子系统,确定线程的存取权限。

I/O类型和处理(3),I/O处理步骤

(2)I/O管理器以IRP的形式将I/O请求送给设备驱动程序,驱动程序启动I/O操作;

设备完成指定操作,请求I/O中断,设备驱动程序的ISR服务于中断;

I/O管理器再调用I/O完成例程,将完成状态返回给调用线程。

上述是同步I/O执行的步骤,对于异步I/O,还要增加一步,I/O管理器将控制返回调用线程,使得调用线程与I/O操作并行执行。

3对单层驱动程序的I/O请求处理,4对多层驱动程序的I/O请求处理,1)打开一个文件2)读文件3)写文件,5.9.4高速缓存管理1高速缓存管理器主要特征,

(1)单一集中式系统高速缓存

(2)与主存管理器结合(3)高速缓存的一致性(4)虚拟块缓存(5)基于流的缓存(6)可恢复文件系统支持,2、高速缓存的结构

(1),系统高速缓存管理器基于虚拟空间缓存数据,它管理一块系统虚拟地址空间区域,而不是一块物理主存区域。

高速缓存管理器把每个地址空间区域分成256KB的槽(slot),被称为视图(view)。

高速缓存的结构

(2),3高速缓存的操作,

(1)回写缓存和延迟写

(2)计算脏页阈值(3)屏蔽对文件延迟写(4)强制写缓存到磁盘(5)刷新被映射的文件(6)智能预读(7)虚拟地址预读(8)带历史信息的异步预读,快速IO,读写被缓存文件可用被称为快速IO的高速机制来处理。

快速IO读写一个缓存的文件不要产生IO请求包(1RP)。

有了快速IO机制,IO管理器可以调用文件系统驱动程序的快速IO例程来查看是否能够直接从高速缓存管理器得到所需的数据,而不需产生IRP。

5、高速缓存支持例程,三种基本的访问缓存数据的方法

(1)“拷贝读取”方法,在系统空间中的高速缓存数据缓冲区和用户空间中的进程数据缓冲区之间拷贝用户数据。

(2)“映射暂留”方法,使用虚拟地址直接读写高速缓存的数据缓冲区。

(3)“物理主存访问”方法,使用物理地址直接读写高速缓存的数据缓冲区。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2