欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    [精选]OS06设备.pptx

    • 资源ID:96464062       资源大小:732.16KB        全文页数:96页
    • 资源格式: PPTX        下载积分:25金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要25金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    [精选]OS06设备.pptx

    操作系统Operating Systems 操作系统课程组WINDOWSWINDOWSUNIXUNIXLINUXLINUXOS2OS2VxWorksVxWorksMac OSMac OS教材:操作系统教程,人民邮电出版社教材:操作系统教程,人民邮电出版社教材:操作系统教程,人民邮电出版社教材:操作系统教程,人民邮电出版社,20232023年出版年出版年出版年出版第6章 设备管理设备管理是指操作系统对计算机系统中除设备管理是指操作系统对计算机系统中除CPU和内存以外的设备的管理。和内存以外的设备的管理。设备管理的主要任务是完成用户提出的输设备管理的主要任务是完成用户提出的输入输出请求,提高输入输出的速率,以及入输出请求,提高输入输出的速率,以及改善输入输出设备的利用率。改善输入输出设备的利用率。第6章 设备管理设备管理的主要功能有:缓冲区管理、设设备管理的主要功能有:缓冲区管理、设备分配、设备处理、虚拟设备以及设备的备分配、设备处理、虚拟设备以及设备的独立性。独立性。设备不但种类繁多,而且它们的特性和操设备不但种类繁多,而且它们的特性和操作方式相差很大,因此,设备管理是操作作方式相差很大,因此,设备管理是操作系统资源管理中最为复杂、最多样化,且系统资源管理中最为复杂、最多样化,且与硬件密切相关的局部。与硬件密切相关的局部。第6章 设备管理 6.1 设备管理的概念设备管理的概念6.2 I/O控制方式控制方式6.3 缓冲技术缓冲技术6.4 驱动调度技术驱动调度技术6.5 设备分配设备分配6.6 虚拟设备虚拟设备6.7 Linux设备管理设备管理6.1 设备管理的概念6.1.1 设备的分类6.1.2 设备管理的功能和任务6.1.1 设备的分类1 1按传输速率分类按传输速率分类按传输速率分类按传输速率分类1 1低速设备低速设备低速设备低速设备l l低速设备是指每秒传输几低速设备是指每秒传输几低速设备是指每秒传输几低速设备是指每秒传输几B B几百几百几百几百B B的一类设备。这类的一类设备。这类的一类设备。这类的一类设备。这类设备中典型的如键盘、鼠标器、语音的输入和输出等设备中典型的如键盘、鼠标器、语音的输入和输出等设备中典型的如键盘、鼠标器、语音的输入和输出等设备中典型的如键盘、鼠标器、语音的输入和输出等设备。设备。设备。设备。2 2中速设备中速设备中速设备中速设备l l中速设备是指每秒传输几千中速设备是指每秒传输几千中速设备是指每秒传输几千中速设备是指每秒传输几千B B数十千数十千数十千数十千B B的一类设备。的一类设备。的一类设备。的一类设备。这类设备中典型的如行式打印机、激光打印机等设备。这类设备中典型的如行式打印机、激光打印机等设备。这类设备中典型的如行式打印机、激光打印机等设备。这类设备中典型的如行式打印机、激光打印机等设备。3 3高速设备高速设备高速设备高速设备l l高速设备是指每秒数传输几百高速设备是指每秒数传输几百高速设备是指每秒数传输几百高速设备是指每秒数传输几百KBKB数十数十数十数十MBMB的设备。的设备。的设备。的设备。这类设备中典型的如磁带机、磁盘机、光盘机等。这类设备中典型的如磁带机、磁盘机、光盘机等。这类设备中典型的如磁带机、磁盘机、光盘机等。这类设备中典型的如磁带机、磁盘机、光盘机等。2 2按信息交换的单位分类按信息交换的单位分类按信息交换的单位分类按信息交换的单位分类1 1块设备块设备块设备块设备l l块设备用于存储信息。由于信息的存取是以数据块为块设备用于存储信息。由于信息的存取是以数据块为块设备用于存储信息。由于信息的存取是以数据块为块设备用于存储信息。由于信息的存取是以数据块为单位,故称块设备,它属于有结构设备。块设备的基单位,故称块设备,它属于有结构设备。块设备的基单位,故称块设备,它属于有结构设备。块设备的基单位,故称块设备,它属于有结构设备。块设备的基本特征是可寻址,可随机地读本特征是可寻址,可随机地读本特征是可寻址,可随机地读本特征是可寻址,可随机地读/写任意一块;块设备的写任意一块;块设备的写任意一块;块设备的写任意一块;块设备的另一特征是其输入另一特征是其输入另一特征是其输入另一特征是其输入/输出输出输出输出I/OI/O采用采用采用采用DMADMA方式。典型方式。典型方式。典型方式。典型的块设备是磁盘,每个盘块的大小为的块设备是磁盘,每个盘块的大小为的块设备是磁盘,每个盘块的大小为的块设备是磁盘,每个盘块的大小为512B512B4KB4KB。2 2字符设备字符设备字符设备字符设备l l字符设备用于数据传输的基本单位是字符,它属于无字符设备用于数据传输的基本单位是字符,它属于无字符设备用于数据传输的基本单位是字符,它属于无字符设备用于数据传输的基本单位是字符,它属于无结构设备。其基本特征是不可寻址,即不能指定输入结构设备。其基本特征是不可寻址,即不能指定输入结构设备。其基本特征是不可寻址,即不能指定输入结构设备。其基本特征是不可寻址,即不能指定输入时的源地址及输出时的目标地址。此外,字符设备在时的源地址及输出时的目标地址。此外,字符设备在时的源地址及输出时的目标地址。此外,字符设备在时的源地址及输出时的目标地址。此外,字符设备在I/OI/O时常采用中断驱动方式。字符设备的种类较多,如时常采用中断驱动方式。字符设备的种类较多,如时常采用中断驱动方式。字符设备的种类较多,如时常采用中断驱动方式。字符设备的种类较多,如交互式终端、打印机等。交互式终端、打印机等。交互式终端、打印机等。交互式终端、打印机等。3 3从资源分配角度分类从资源分配角度分类从资源分配角度分类从资源分配角度分类1 1独占设备独占设备独占设备独占设备l l独占设备是指在一段时间内只允许一个用户进程独占设备是指在一段时间内只允许一个用户进程独占设备是指在一段时间内只允许一个用户进程独占设备是指在一段时间内只允许一个用户进程使用的设备。系统一旦把该设备分配给某进程后,便使用的设备。系统一旦把该设备分配给某进程后,便使用的设备。系统一旦把该设备分配给某进程后,便使用的设备。系统一旦把该设备分配给某进程后,便让它独占使用,直至用完释放。应当注意,独占设备让它独占使用,直至用完释放。应当注意,独占设备让它独占使用,直至用完释放。应当注意,独占设备让它独占使用,直至用完释放。应当注意,独占设备的分配可能会引起进程死锁。的分配可能会引起进程死锁。的分配可能会引起进程死锁。的分配可能会引起进程死锁。2 2共享设备共享设备共享设备共享设备l l共享设备是指在一段时间内允许多个进程同时访问的共享设备是指在一段时间内允许多个进程同时访问的共享设备是指在一段时间内允许多个进程同时访问的共享设备是指在一段时间内允许多个进程同时访问的设备。典型的共享设备是磁盘。共享设备不仅能获得设备。典型的共享设备是磁盘。共享设备不仅能获得设备。典型的共享设备是磁盘。共享设备不仅能获得设备。典型的共享设备是磁盘。共享设备不仅能获得良好的设备利用率,而且是实现文件和数据共享的物良好的设备利用率,而且是实现文件和数据共享的物良好的设备利用率,而且是实现文件和数据共享的物良好的设备利用率,而且是实现文件和数据共享的物质基础。质基础。质基础。质基础。3 3虚拟设备虚拟设备虚拟设备虚拟设备l l虚拟设备是指通过某种技术将一台独占设备变换为能虚拟设备是指通过某种技术将一台独占设备变换为能虚拟设备是指通过某种技术将一台独占设备变换为能虚拟设备是指通过某种技术将一台独占设备变换为能供假设干个用户共享的设备,因此可将它同时分配给供假设干个用户共享的设备,因此可将它同时分配给供假设干个用户共享的设备,因此可将它同时分配给供假设干个用户共享的设备,因此可将它同时分配给多个用户,从而提高设备的利用率。多个用户,从而提高设备的利用率。多个用户,从而提高设备的利用率。多个用户,从而提高设备的利用率。6.1.2 设备管理的功能和任务为此,设备管理通常应具有以下功能。为此,设备管理通常应具有以下功能。为此,设备管理通常应具有以下功能。为此,设备管理通常应具有以下功能。提高系统的利用率的关键之一是实现设备的并行性。提高系统的利用率的关键之一是实现设备的并行性。提高系统的利用率的关键之一是实现设备的并行性。提高系统的利用率的关键之一是实现设备的并行性。为了提高设备的利用率,在进行设备分配时系统通常采为了提高设备的利用率,在进行设备分配时系统通常采为了提高设备的利用率,在进行设备分配时系统通常采为了提高设备的利用率,在进行设备分配时系统通常采用动态分配方式。对于独占设备往往采用虚拟技术将其改用动态分配方式。对于独占设备往往采用虚拟技术将其改用动态分配方式。对于独占设备往往采用虚拟技术将其改用动态分配方式。对于独占设备往往采用虚拟技术将其改造为共享设备,从而对该设备可以进行动态分配,也不会造为共享设备,从而对该设备可以进行动态分配,也不会造为共享设备,从而对该设备可以进行动态分配,也不会造为共享设备,从而对该设备可以进行动态分配,也不会导致死锁。导致死锁。导致死锁。导致死锁。设备的速率相对设备的速率相对设备的速率相对设备的速率相对CPUCPU而言要慢得多。为了平滑两者之而言要慢得多。为了平滑两者之而言要慢得多。为了平滑两者之而言要慢得多。为了平滑两者之间的差异,提高系统的效率,在设备管理中采用多种缓冲间的差异,提高系统的效率,在设备管理中采用多种缓冲间的差异,提高系统的效率,在设备管理中采用多种缓冲间的差异,提高系统的效率,在设备管理中采用多种缓冲技术。技术。技术。技术。设备管理还要方便用户的使用。设备管理通过屏蔽设备设备管理还要方便用户的使用。设备管理通过屏蔽设备设备管理还要方便用户的使用。设备管理通过屏蔽设备设备管理还要方便用户的使用。设备管理通过屏蔽设备的物理特性,从而实现设备的独立性。的物理特性,从而实现设备的独立性。的物理特性,从而实现设备的独立性。的物理特性,从而实现设备的独立性。6.2 I/O控制方式控制方式6.2.1 程序直接查询控制方式程序直接查询控制方式6.2.2 中断方式中断方式6.2.3 DMA方式方式6.2.4 通道方式通道方式 I/O控制方式开展过程中贯穿着这样的宗旨,控制方式开展过程中贯穿着这样的宗旨,即尽量减少主机对外设的干预,把主机从即尽量减少主机对外设的干预,把主机从繁杂的繁杂的I/O控制中解脱出来,以便有更多的控制中解脱出来,以便有更多的时间进行输出处理。时间进行输出处理。6.2.1 程序直接查询控制方式程序直接查询控制方式程序直接查询方式又称程序直接控制方式或者询程序直接查询方式又称程序直接控制方式或者询程序直接查询方式又称程序直接控制方式或者询程序直接查询方式又称程序直接控制方式或者询问方式。在这种方式下,用户进程直接控制主机问方式。在这种方式下,用户进程直接控制主机问方式。在这种方式下,用户进程直接控制主机问方式。在这种方式下,用户进程直接控制主机和外围设备之间的数据传输。用户进程与外围设和外围设备之间的数据传输。用户进程与外围设和外围设备之间的数据传输。用户进程与外围设和外围设备之间的数据传输。用户进程与外围设备读取数据时,主机向设备控制器发出读指令后备读取数据时,主机向设备控制器发出读指令后备读取数据时,主机向设备控制器发出读指令后备读取数据时,主机向设备控制器发出读指令后进入测试等待状态。在等待时间内,主机重复查进入测试等待状态。在等待时间内,主机重复查进入测试等待状态。在等待时间内,主机重复查进入测试等待状态。在等待时间内,主机重复查询外设的准备状态直至外设准备就绪。外设就绪,询外设的准备状态直至外设准备就绪。外设就绪,询外设的准备状态直至外设准备就绪。外设就绪,询外设的准备状态直至外设准备就绪。外设就绪,数据传送开始,主机从设备控制器读取一个字,数据传送开始,主机从设备控制器读取一个字,数据传送开始,主机从设备控制器读取一个字,数据传送开始,主机从设备控制器读取一个字,再向内存写一个字。如果传送还未结束,再次向再向内存写一个字。如果传送还未结束,再次向再向内存写一个字。如果传送还未结束,再次向再向内存写一个字。如果传送还未结束,再次向设备控制器发出读指令,直到全部数据传输完成设备控制器发出读指令,直到全部数据传输完成设备控制器发出读指令,直到全部数据传输完成设备控制器发出读指令,直到全部数据传输完成再返回现行程序执行。再返回现行程序执行。再返回现行程序执行。再返回现行程序执行。程序查询方式中,一旦主机启动外设,便程序查询方式中,一旦主机启动外设,便不断查询外设的准备情况,终止了原程序不断查询外设的准备情况,终止了原程序的执行,浪费了珍贵的主机时间;另一方的执行,浪费了珍贵的主机时间;另一方面,外设准备就绪后,主机参与数据的传面,外设准备就绪后,主机参与数据的传送工作,此时主机也不能执行原程序。可送工作,此时主机也不能执行原程序。可见这种方式中,主机和外设串行工作,使见这种方式中,主机和外设串行工作,使主机不能充分发挥效率。主机不能充分发挥效率。6.2.2 中断方式中断方式中断机构引入后,外围设备有了反映其状态的能中断机构引入后,外围设备有了反映其状态的能中断机构引入后,外围设备有了反映其状态的能中断机构引入后,外围设备有了反映其状态的能力,仅当操作正常或异常结束时才中断力,仅当操作正常或异常结束时才中断力,仅当操作正常或异常结束时才中断力,仅当操作正常或异常结束时才中断CPUCPU。实。实。实。实现了一定程度的并行操作,这叫中断方式。中断现了一定程度的并行操作,这叫中断方式。中断现了一定程度的并行操作,这叫中断方式。中断现了一定程度的并行操作,这叫中断方式。中断方式是程序查询方式的改进。在主机启动外设后,方式是程序查询方式的改进。在主机启动外设后,方式是程序查询方式的改进。在主机启动外设后,方式是程序查询方式的改进。在主机启动外设后,不必查询外设是否就绪,而是继续执行现行程序,不必查询外设是否就绪,而是继续执行现行程序,不必查询外设是否就绪,而是继续执行现行程序,不必查询外设是否就绪,而是继续执行现行程序,对设备是否就绪不加过问。此时主机和外设并行对设备是否就绪不加过问。此时主机和外设并行对设备是否就绪不加过问。此时主机和外设并行对设备是否就绪不加过问。此时主机和外设并行操作。外设准备完毕,将数据传送至设备控制器操作。外设准备完毕,将数据传送至设备控制器操作。外设准备完毕,将数据传送至设备控制器操作。外设准备完毕,将数据传送至设备控制器的存放器后,外设向主机发出中断请求,主机从的存放器后,外设向主机发出中断请求,主机从的存放器后,外设向主机发出中断请求,主机从的存放器后,外设向主机发出中断请求,主机从设备控制中将数据读入内存指定单元。设备控制中将数据读入内存指定单元。设备控制中将数据读入内存指定单元。设备控制中将数据读入内存指定单元。在中断方式中,外设输入每个数据的过程在中断方式中,外设输入每个数据的过程中,无需主机的干预,因而可使得主机与中,无需主机的干预,因而可使得主机与外设并行工作。仅当输完一个数据时,才外设并行工作。仅当输完一个数据时,才需要主机花费时间中断处理。中断方式在需要主机花费时间中断处理。中断方式在一定程度上提高了主机和外设的并行程度,一定程度上提高了主机和外设的并行程度,提高计算机系统资源的利用率。提高计算机系统资源的利用率。6.2.3 DMA方式方式在在DMA方式中,内存和外设之间有一条数方式中,内存和外设之间有一条数据通路,在内存和外设之间成块传送数据据通路,在内存和外设之间成块传送数据过程中,由过程中,由DMA控制器取代主机来控制数控制器取代主机来控制数据传输,直接执行到数传输完成。该方式据传输,直接执行到数传输完成。该方式的特点是:的特点是:l l 数据传输的基本单位是数据块,即在主机与数据传输的基本单位是数据块,即在主机与数据传输的基本单位是数据块,即在主机与数据传输的基本单位是数据块,即在主机与外设之间传送一个数据块;外设之间传送一个数据块;外设之间传送一个数据块;外设之间传送一个数据块;l l 传送的数据直接从外设到内存,或者相反;传送的数据直接从外设到内存,或者相反;传送的数据直接从外设到内存,或者相反;传送的数据直接从外设到内存,或者相反;l l 仅在传送一个数据块或多个数据块的开始和仅在传送一个数据块或多个数据块的开始和仅在传送一个数据块或多个数据块的开始和仅在传送一个数据块或多个数据块的开始和结束时才需要主机的干预。结束时才需要主机的干预。结束时才需要主机的干预。结束时才需要主机的干预。DMA的组成的组成存放器存放器 命令命令命令命令/状态存放器状态存放器状态存放器状态存放器 mand Register mand Register,CRCR。用于接。用于接。用于接。用于接收从收从收从收从CPUCPU发出来的发出来的发出来的发出来的I/OI/O命令或有关控制信息,或设备的状命令或有关控制信息,或设备的状命令或有关控制信息,或设备的状命令或有关控制信息,或设备的状态。态。态。态。内存地址存放器内存地址存放器内存地址存放器内存地址存放器Memory Address RegisterMemory Address Register,MARMAR。在输入时,它存放把数据从设备传送到内存的起始目。在输入时,它存放把数据从设备传送到内存的起始目。在输入时,它存放把数据从设备传送到内存的起始目。在输入时,它存放把数据从设备传送到内存的起始目标地址;在输出时,它存放由内存到设备的内存源地址。标地址;在输出时,它存放由内存到设备的内存源地址。标地址;在输出时,它存放由内存到设备的内存源地址。标地址;在输出时,它存放由内存到设备的内存源地址。数据存放器数据存放器数据存放器数据存放器Data RegisterData Register,DRDR。用于暂存从设备。用于暂存从设备。用于暂存从设备。用于暂存从设备到内存,或从内存到设备的数据。到内存,或从内存到设备的数据。到内存,或从内存到设备的数据。到内存,或从内存到设备的数据。图图图图6-4 DMA6-4 DMA方式方式方式方式 数据计数器数据计数器数据计数器数据计数器Data CounterData Counter,DCDC。存放本次。存放本次。存放本次。存放本次CPUCPU要要要要读写的字节数。读写的字节数。读写的字节数。读写的字节数。DMA的工作过程的工作过程图6-4 DMA方式 6.2.4 通道方式通道方式通道又称输入输出处理器,是独立于通道又称输入输出处理器,是独立于通道又称输入输出处理器,是独立于通道又称输入输出处理器,是独立于CPUCPU的专门的专门的专门的专门实现输入输出工作的处理机。通道直至控制设备实现输入输出工作的处理机。通道直至控制设备实现输入输出工作的处理机。通道直至控制设备实现输入输出工作的处理机。通道直至控制设备和内存之间进行数据传送,把和内存之间进行数据传送,把和内存之间进行数据传送,把和内存之间进行数据传送,把CPUCPU从琐碎的输入从琐碎的输入从琐碎的输入从琐碎的输入输出操作中解放出来。输出操作中解放出来。输出操作中解放出来。输出操作中解放出来。通道是一种特殊的处理机。通道与一般处理机的通道是一种特殊的处理机。通道与一般处理机的通道是一种特殊的处理机。通道与一般处理机的通道是一种特殊的处理机。通道与一般处理机的区别主要表现在以下两个方面。区别主要表现在以下两个方面。区别主要表现在以下两个方面。区别主要表现在以下两个方面。l l 通道指令单一。通道硬件比较简单,其所能执行的通道指令单一。通道硬件比较简单,其所能执行的通道指令单一。通道硬件比较简单,其所能执行的通道指令单一。通道硬件比较简单,其所能执行的指令主要是与输入输出操作有关的指令。指令主要是与输入输出操作有关的指令。指令主要是与输入输出操作有关的指令。指令主要是与输入输出操作有关的指令。l l 通道没有自己的内存。通道所执行的通道程序是放通道没有自己的内存。通道所执行的通道程序是放通道没有自己的内存。通道所执行的通道程序是放通道没有自己的内存。通道所执行的通道程序是放在计算机内存中的,也就是说通道与在计算机内存中的,也就是说通道与在计算机内存中的,也就是说通道与在计算机内存中的,也就是说通道与CPUCPU共享系统的共享系统的共享系统的共享系统的内存。内存。内存。内存。通道按信息交换方式可分为以下三种类型通道按信息交换方式可分为以下三种类型 字节多路通道字节多路通道 数组选择通道数组选择通道 数组多路通道数组多路通道通道指令和通道程序通道指令和通道程序 通道方式通过执行通道程序,与设备控制器共同实现对设通道方式通过执行通道程序,与设备控制器共同实现对设通道方式通过执行通道程序,与设备控制器共同实现对设通道方式通过执行通道程序,与设备控制器共同实现对设备进行控制。通道程序由假设干的通道命令组成。备进行控制。通道程序由假设干的通道命令组成。备进行控制。通道程序由假设干的通道命令组成。备进行控制。通道程序由假设干的通道命令组成。通道指令通常由以下信息组成。通道指令通常由以下信息组成。通道指令通常由以下信息组成。通道指令通常由以下信息组成。命令码。命令码指出通道命令的操作,常见的操作有读、命令码。命令码指出通道命令的操作,常见的操作有读、命令码。命令码指出通道命令的操作,常见的操作有读、命令码。命令码指出通道命令的操作,常见的操作有读、写、控制、通道转移等。写、控制、通道转移等。写、控制、通道转移等。写、控制、通道转移等。内存地址。用于标明交换数据在内存中存放的位置。内存地址。用于标明交换数据在内存中存放的位置。内存地址。用于标明交换数据在内存中存放的位置。内存地址。用于标明交换数据在内存中存放的位置。计数。用于表示本条指令所要交换数据的字节数。计数。用于表示本条指令所要交换数据的字节数。计数。用于表示本条指令所要交换数据的字节数。计数。用于表示本条指令所要交换数据的字节数。通道程序结束位。用于表示该指令是否是通道程序的最通道程序结束位。用于表示该指令是否是通道程序的最通道程序结束位。用于表示该指令是否是通道程序的最通道程序结束位。用于表示该指令是否是通道程序的最后一条指令。后一条指令。后一条指令。后一条指令。记录结束标志位。用于表示本指令与下一通道指令处理记录结束标志位。用于表示本指令与下一通道指令处理记录结束标志位。用于表示本指令与下一通道指令处理记录结束标志位。用于表示本指令与下一通道指令处理的数据是否是同一个记录。的数据是否是同一个记录。的数据是否是同一个记录。的数据是否是同一个记录。6.3 缓冲技术缓冲技术为了改善为了改善为了改善为了改善CPUCPU与外围设备之间速度不匹配的矛盾,与外围设备之间速度不匹配的矛盾,与外围设备之间速度不匹配的矛盾,与外围设备之间速度不匹配的矛盾,减少减少减少减少I/OI/O对对对对CPUCPU的中断次数和放宽对的中断次数和放宽对的中断次数和放宽对的中断次数和放宽对CPUCPU中断响应中断响应中断响应中断响应时间的要求,提高时间的要求,提高时间的要求,提高时间的要求,提高CPUCPU和和和和I/OI/O设备的并行性,在操设备的并行性,在操设备的并行性,在操设备的并行性,在操作系统中普遍采用了缓冲技术。作系统中普遍采用了缓冲技术。作系统中普遍采用了缓冲技术。作系统中普遍采用了缓冲技术。缓冲技术的基本思想是:当一个进程输出数据时,缓冲技术的基本思想是:当一个进程输出数据时,缓冲技术的基本思想是:当一个进程输出数据时,缓冲技术的基本思想是:当一个进程输出数据时,先向系统申请一块内存作为输出缓冲区;然后,先向系统申请一块内存作为输出缓冲区;然后,先向系统申请一块内存作为输出缓冲区;然后,先向系统申请一块内存作为输出缓冲区;然后,将输出数据高速输出到缓冲区;不断把数据填到将输出数据高速输出到缓冲区;不断把数据填到将输出数据高速输出到缓冲区;不断把数据填到将输出数据高速输出到缓冲区;不断把数据填到缓冲区,直到缓冲区被装满为止;此后,进程可缓冲区,直到缓冲区被装满为止;此后,进程可缓冲区,直到缓冲区被装满为止;此后,进程可缓冲区,直到缓冲区被装满为止;此后,进程可以继续它的计算,同时,系统将缓冲区内容写到以继续它的计算,同时,系统将缓冲区内容写到以继续它的计算,同时,系统将缓冲区内容写到以继续它的计算,同时,系统将缓冲区内容写到I/OI/O设备上。当一个进程执行读操作输入数据时,设备上。当一个进程执行读操作输入数据时,设备上。当一个进程执行读操作输入数据时,设备上。当一个进程执行读操作输入数据时,过程与此类似。过程与此类似。过程与此类似。过程与此类似。6.3 缓冲技术缓冲技术6.3.1 单缓冲单缓冲6.3.2 双缓冲双缓冲6.3.3 循环缓冲循环缓冲6.3.4 缓冲池缓冲池6.3.1 单缓冲单缓冲对于块设备而言,假定从磁盘把一块数据对于块设备而言,假定从磁盘把一块数据输入到缓冲的时间为输入到缓冲的时间为T,操作系统将该缓冲,操作系统将该缓冲区中的数据传送到用户区的时间为区中的数据传送到用户区的时间为M,而,而CPU对这一块数据进行计算的时间为对这一块数据进行计算的时间为C,如,如图图6-5所示。如果系统不采用缓冲技术,数所示。如果系统不采用缓冲技术,数据直接从磁盘到用户区,每块数据的处理据直接从磁盘到用户区,每块数据的处理时间为时间为T+C。如果采用了单缓冲技术,每块。如果采用了单缓冲技术,每块数据的处理时间为数据的处理时间为maxC,T+M。通常。通常来说来说M要远远小于要远远小于C或者或者T,因此采用缓冲,因此采用缓冲技术,输入的效率提高了很多。技术,输入的效率提高了很多。6.3.2 双缓冲双缓冲为了加快输入输出速度和提高设备利用率,为了加快输入输出速度和提高设备利用率,又引入了双缓冲,也称为缓冲对换。又引入了双缓冲,也称为缓冲对换。在双缓冲时,系统处理一块数据的时间可在双缓冲时,系统处理一块数据的时间可粗略地认为是粗略地认为是maxC,T,如果,如果CT,可使,可使CPU不必等待设备输入。不必等待设备输入。图6-6 双缓冲工作示意图 6.3.3 循环缓冲循环缓冲1 1循环缓冲的组成循环缓冲的组成 多个缓冲区。在循环缓冲中包含了多个缓冲区,多个缓冲区。在循环缓冲中包含了多个缓冲区,多个缓冲区。在循环缓冲中包含了多个缓冲区,多个缓冲区。在循环缓冲中包含了多个缓冲区,每个缓冲区的大小相同。缓冲区可分为三种类型:每个缓冲区的大小相同。缓冲区可分为三种类型:每个缓冲区的大小相同。缓冲区可分为三种类型:每个缓冲区的大小相同。缓冲区可分为三种类型:空缓冲区空缓冲区空缓冲区空缓冲区R R;已装满数据的缓冲区;已装满数据的缓冲区;已装满数据的缓冲区;已装满数据的缓冲区GG;计算进程正;计算进程正;计算进程正;计算进程正在使用的缓冲区在使用的缓冲区在使用的缓冲区在使用的缓冲区C C。多个指针。对用于输入的多缓冲,可设置这样多个指针。对用于输入的多缓冲,可设置这样多个指针。对用于输入的多缓冲,可设置这样多个指针。对用于输入的多缓冲,可设置这样三个指针。三个指针。三个指针。三个指针。NextgNextg指示计算进程下一个可用的缓指示计算进程下一个可用的缓指示计算进程下一个可用的缓指示计算进程下一个可用的缓冲区冲区冲区冲区GG;NextiNexti指示输入进程下次可用的空缓冲区指示输入进程下次可用的空缓冲区指示输入进程下次可用的空缓冲区指示输入进程下次可用的空缓冲区R R;CurrentCurrent指示计算进程正在使用的缓冲区。指示计算进程正在使用的缓冲区。指示计算进程正在使用的缓冲区。指示计算进程正在使用的缓冲区。2循环缓冲的使用 GetBuffer GetBuffer过程。对于计算进程而言,调用过程。对于计算进程而言,调用过程。对于计算进程而言,调用过程。对于计算进程而言,调用GetBufferGetBuffer过程,通过过程,通过过程,通过过程,通过NextgNextg获得要进行计算的缓获得要进行计算的缓获得要进行计算的缓获得要进行计算的缓冲区,相应地将该缓冲区改为冲区,相应地将该缓冲区改为冲区,相应地将该缓冲区改为冲区,相应地将该缓冲区改为C C,将,将,将,将CurrentCurrent指向指向指向指向该缓冲区,该缓冲区,该缓冲区,该缓冲区,NextgNextg指向下一个指向下一个指向下一个指向下一个GG缓冲区。对于输入缓冲区。对于输入缓冲区。对于输入缓冲区。对于输入进程而言,调用进程而言,调用进程而言,调用进程而言,调用GetBufferGetBuffer过程,通过过程,通过过程,通过过程,通过NextiNexti获取获取获取获取可用的缓冲区,相应地将该缓冲区改为可用的缓冲区,相应地将该缓冲区改为可用的缓冲区,相应地将该缓冲区改为可用的缓冲区,相应地将该缓冲区改为C C,将,将,将,将CurrentCurrent指向该缓冲区,指向该缓冲区,指向该缓冲区,指向该缓冲区,NextiNexti指向下一个指向下一个指向下一个指向下一个R R缓冲缓冲缓冲缓冲区。区。区。区。ReleaseBuffer ReleaseBuffer过程。当计算进程提取完毕后,过程。当计算进程提取完毕后,过程。当计算进程提取完毕后,过程。当计算进程提取完毕后,当前的缓冲区空出来了,调用当前的缓冲区空出来了,调用当前的缓冲区空出来了,调用当前的缓冲区空出来了,调用ReleaseRelease过程,将过程,将过程,将过程,将C C改为改为改为改为R R。类似输入进程输入完毕,调用。类似输入进程输入完毕,调用。类似输入进程输入完毕,调用。类似输入进程输入完毕,调用ReleaseRelease过过过过程,将该缓冲区改为程,将该缓冲区改为程,将该缓冲区改为程,将该缓冲区改为GG。3进程同步循环缓冲机制中,指针循环缓冲机制中,指针循环缓冲机制中,指针循环缓冲机制中,指针NextiNexti和和和和NextgNextg不断地顺时不断地顺时不断地顺时不断地顺时针运行,这样可能会出现以下两种情况。针运行,这样可能会出现以下两种情况。针运行,这样可能会出现以下两种情况。针运行,这样可能会出现以下两种情况。l l Nexti Nexti指针追上指针追上指针追上指针追上NextgNextg指针。意味着输入进程输入数指针。意味着输入进程输入数指针。意味着输入进程输入数指针。意味着输入进程输入数据的速度大于计算进程处理数据的速度,已把全部可据的速度大于计算进程处理数据的速度,已把全部可据的速度大于计算进程处理数据的速度,已把全部可据的速度大于计算进程处理数据的速度,已把全部可用的空缓冲装满,再无缓冲区可用。此时,输入进程用的空缓冲装满,再无缓冲区可用。此时,输入进程用的空缓冲装满,再无缓冲区可用。此时,输入进程用的空缓冲装满,再无缓冲区可用。此时,输入进程应该阻塞,直到有计算进程计算完毕,将某个缓冲区应该阻塞,直到有计算进程计算完毕,将某个缓冲区应该阻塞,直到有计算进程计算完毕,将某个缓冲区应该阻塞,直到有计算进程计算完毕,将某个缓冲区释放,输入进程才被唤醒。释放,输入进程才被唤醒。释放,输入进程才被唤醒。释放,输入进程才被唤醒。l l Nextg Nextg指针追上指针追上指针追上指针追上NextiNexti指针。意味着计算进程处理数指针。意味着计算进程处理数指针。意味着计算进程处理数指针。意味着计算进程处理数据的速度大于输入进程输入数据的速度,已把所有输据的速度大于输入进程输入数据的速度,已把所有输据的速度大于输入进程输入数据的速度,已把所有输据的速度大于输入进程输入数据的速度,已把所有输入数据的缓冲区处理完毕,再无有数据的缓冲区供计入数据的缓冲区处理完毕,再无有数据的缓冲区供计入数据的缓冲区处理完毕,再无有数据的缓冲区供计入数据的缓冲区处理完毕,再无有数据的缓冲区供计算进程使用。此时,计算进程应该阻塞,直到有输入算进程使用。此时,计算进程应该阻塞,直到有输入算进程使用。此时,计算进程应该阻塞,直到有输入算进程使用。此时,计算进程应该阻塞,直到有输入进程输入数据,将某个缓冲区释放,计算进程才被唤进程输入数据,将某个缓冲区释放,计算进程才被唤进程输入数据,将某个缓冲区释放,计算进程才被唤进程输入数据,将某个缓冲区释放,计算进程才被唤醒。醒。醒。醒。6.3.4 缓冲池缓冲池1 1缓冲池的组成缓冲池的组成缓冲池中的缓冲区一般包含三种类型的缓冲区:空闲缓冲缓冲池中的缓冲区一般包含三种类型的缓冲区:空闲缓冲缓冲池中的缓冲区一般包含三种类型的缓冲区:空闲缓冲缓冲池中的缓冲区一般包含三种类型的缓冲区:空闲缓冲区、装满输入数据的缓冲区和装满输出数据的缓冲区。为区、装满输入数据的缓冲区和装满输出数据的缓冲区。为区、装满输入数据的缓冲区和装满输出数据的缓冲区。为区、装满输入数据的缓冲区和装满输出数据的缓冲区。为了管理方便,系统将同一类型的缓冲区连成一个队列,形了管理方便,系统将同一类型的缓冲区连成一个队列,形了管理方便,系统将同一类型的缓冲区连成一个队列,形了管理方便,系统将同一类型的缓冲区连成一个队列,形成以下成以下成以下成以下3 3个队列。个队列。个队列。个队列。空闲缓冲区队列空闲缓冲区队列空闲缓冲区队列空闲缓冲区队列emqemq:l l由空闲缓冲区所连成的队列。其队首指针由空闲缓冲区所连成的队列。其队首指针由空闲缓冲区所连成的队列。其队首指针由空闲缓冲区所连成的队列。其队首指针F Femqemq和队尾指针和队尾指针和队尾指针和队尾指针L Lemqemq分别指向该队列的首尾缓冲区。分别指向该队列的首尾缓冲区。分别指向该队列的首尾缓冲区。分别指向该队列的首尾缓冲区。输入队列输入队列输入队列输入队列inqinq:l l这是由装满输入数据的缓冲区所连成的队列。其队首指针这是由装满输入数据的缓冲区所连成的队列。其队首指针这是由装满输入数据的缓冲区所连成的队列。其队首指针这是由装满输入数据的缓冲区所连成的队列。其队首指针F Finqinq和队尾指针和队尾指针和队尾指针和队尾指针L Linqinq分别指向该队列的首、尾缓冲区。分别指向该队列的首、尾缓冲区。分别指向该队列的首、尾缓冲区。分别指向该队列的首、尾缓冲区。输出队列输出队列输出队列输出队列outqoutq:l l这是由装满输出数据的缓冲区所连成的队列。其队首指针这是由装满输出数据的缓冲区所连成的队列。其队首指针这是由装满输出数据的缓冲区所连成的队列。其队首指针这是由装满输出数据的缓冲区所连成的队列。其队首指针F Foutqoutq和队尾指针和队尾指针和队尾指针和队尾指针L Loutqoutq分别指向该队列的首、尾缓冲区。分别指向该队列的首、尾缓冲区。分别指向该队列的首、尾缓冲区。分别指向该队列的首、尾缓冲区。还应具有还应具有4种工作缓冲区。种工作缓冲区。用于收容输入数据的工作缓冲区用于收容输入数据的工作缓冲区hin。用于提取输入数据的工作缓冲区用于提取输入数据的工作缓冲区sin。用于收容输出数据的工作缓冲区用于收容输出数据的工作缓冲区hout。用于提取输出数据的工作缓冲区用于提取输出数据的工作缓冲区sout。2缓冲池管理的基本操作Getbuf过程和Putbuf过程缓冲池中两个基本操作。缓冲池中两个基本操作。Getbuftype:用于从:用于从type所指定的所指定的队列的队首摘下一个缓冲区。队列的队首摘下一个缓冲区。Putbuftype,number:用于将由:用于将由参数参数number所指示的缓冲区挂在所指示的缓冲区挂在type队列队列上。上。3缓冲池的工作方式1收容输入工作方式收容输入工作方式2提取输入工作方式提取输入工作方式3收容输出工作方式收容输出工作方式4提取输出工作方式提取输出工作方式6.4 驱动调度技术驱动调度技术6.4.1 磁盘的物理结构磁盘的物理结构6.4.2 磁盘调度磁盘调度6.4.3 提高磁盘提高磁盘I/O速度的一些方法速度的一些方法6.4.1 磁盘的物理结构磁盘的物理结构磁盘是一种直接存取存储设备,又叫随机磁盘是一种直接存取存储设备,又叫随机存取存储设备。它的每个物理有确定的位存取存储设

    注意事项

    本文([精选]OS06设备.pptx)为本站会员(lil****205)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开