- 1、本文档共112页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6.7.4 缓冲池(Buffer Pool) 1. 缓冲池的组成 缓冲池管理着多个缓冲区,每个缓冲区由用于标识和管理的缓冲首部以及用于存放数据的缓冲体两部分组成。缓冲首部一般包括缓冲区号、设备号、设备上的数据块号、同步信号量以及队列链接指针等。为了管理上的方便,一般将缓冲池中具有相同类型的缓冲区链接成一个队列,于是可形成以下三个队列: (1) 空白缓冲队列emq。 (2) 输入队列inq。 (3) 输出队列outq。 2. ?Getbuf过程和Putbuf过程 在数据结构课程中,曾介绍过队列和对队列进行操作的两个过程,第一个是 Addbuf(type,number)过程。该过程用于将由参数number所指示的缓冲区B挂在type队列上。第二个是Takebuf(type)过程。它用于从type所指示的队列的队首摘下一个缓冲区。 缓冲区可以工作在如下四种工作方式,如图6-27所示。 图6-27 缓冲区的工作方式 ? 6.8 磁盘存储器的性能和调度6.8.1 磁盘性能简述 磁盘设备是一种相当复杂的机电设备,在此仅对磁盘的某些性能,如数据的组织、磁盘的类型和访问时间等方面做扼要的阐述。 1. 数据的组织和格式 磁盘设备可包括一个或多个物理盘片,每个磁盘片分一个或两个存储面(Surface)(见图6-28(a)),每个盘面上有若干个磁道(Track),磁道之间留有必要的间隙(Gap)。为使处理简单起见,在每条磁道上可存储相同数目的二进制位。 图6-28 磁盘的结构和布局 图6-29 磁盘的格式化 2. 磁盘的类型 对于磁盘,可以从不同的角度进行分类。最常见的有:将磁盘分成硬盘和软盘、单片盘和多片盘、固定头磁盘和活动头(移动头)磁盘等。下面仅对固定头磁盘和移动头磁盘做些介绍。 (1) 固定头磁盘。 (2) 移动头磁盘。 3. 磁盘访问时间 磁盘设备在工作时以恒定速率旋转。为了读或写,磁头必须能移动到所指定的磁道上,并等待所指定的扇区的开始位置旋转到磁头下,然后再开始读或写数据。 6.8.2 早期的磁盘调度算法 1. 先来先服务(FCFS) 这是最简单的磁盘调度算法。它根据进程请求访问磁盘的先后次序进行调度。 2. 最短寻道时间优先(SSTF) 该算法选择这样的进程,其要求访问的磁道与当前磁头所在的磁道距离最近,以使每次的寻道时间最短,但这种算法不能保证平均寻道时间最短。 图6-30 FCFS调度算法 图6-31 SSTF调度算法 6.8.3 基于扫描的磁盘调度算法 1. 扫描(SCAN)算法 SSTF算法的实质是基于优先级的调度算法,因此就可能导致优先级低的进程发生“饥饿”(Starvation)现象。因为只要不断有新进程的请求到达,且其所要访问的磁道与磁头当前所在磁道的距离较近,这种新进程的I/O请求必然优先满足。在对SSTF算法略加修改后,则可防止低优先级进程出现“饥饿”现象。 2. 循环扫描(CSCAN)算法 SCAN算法既能获得较好的寻道性能,又能防止“饥饿”现象,故被广泛用于大、中、小型机器和网络中的磁盘调度。但也存在这样的问题:当磁头刚从里向外移动而越过了某一磁道时,恰好又有一进程请求访问此磁道,这时,该进程必须等待,待磁头继续从里向外,然后再从外向里扫描完处于外面的所有要访问的磁道后,才处理该进程的请求,致使该进程的请求被大大地推迟。 图6-32 SCAN调度算法示例 图6-33 CSCAN调度算法示例 5. 独立于设备的逻辑数据块 不同类型的设备,其数据交换单位是不同的,读取和传输速率也各不相同,如字符型设备以单个字符(字)为单位,块设备是以一个数据块为单位。即使同一类型的设备,其数据交换单位的大小也是有差异的,如不同磁盘由于扇区大小的不同,可能造成数据块大小的不一致。设备独立性软件应能够隐藏这些差异而被逻辑设备使用,并向高层软件提供大小统一的逻辑数据块。 6.5.3 设备分配 系统为实现对独占设备的分配,必须在系统中配置相应的数据结构。 1. 设备分配中的数据结构 在用于设备分配的数据结构中,记录了对设备或控制器进行控制所需的信息。在进行设备分配时需要如下的数据结构。 1) 设备控制表DCT 系统为每一个设备都配置了一张设备控制表,用于记录设备的情况,如图6-17所示。 图6-17 设备控制表 2) 控制器控制表、通道控制表和系统设备表 (1) 控制器控制表(COCT)。系统为每一个控制器都设置了用于记录控制器情况的控制器控制表,如图6-18(a)所示。 (2) 通道控制表(CHCT)。每个通道都有一张通道控制表,如图6
您可能关注的文档
最近下载
- 计算机操作系统(慕课版)期末考试卷及评分标准(共5套).docx VIP
- 第十讲中外会通与中华民族巩固壮大(明朝时期)-中华民族共同体概论专家大讲堂课件.pptx VIP
- 痛风的药物治疗.pptx
- 中华民族共同体概论课件专家版10第十讲 中外会通与中华民族巩固壮大(明朝时期).pdf VIP
- HX108-2_七管半导体收音机_实习报告.doc VIP
- 新外研版高二英语选择性必修三developing ideas课件(巴黎圣母院).pptx
- 民谣介绍PPT教程文件.ppt
- 青岛版六年级数学下册《总复习二 图形的位置与运动》教学课件PPT小学公开课.pptx
- 银行信用卡行业发展前景与机遇展望报告.docx
- 毕业论文:《小车倒立摆系统进行专家控制的Matlab仿真》.doc
文档评论(0)