




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
5 5设备的分配与回收 5 5 1设备分配所用的数据结构在进行设备分配时所需的数据结构主要有 设备控制表DCT DeviceControlTable 控制器控制表COCT ControllerControlTable 通道控制表CHCT ChannelControlTable 系统设备表SDT SystemDeviceTable 图5 11列出了各自的主要组成部分 下面对它们做一简要介绍 设备控制表集合 a b c d 图5 11设备分配所需的数据结构表 1 设备控制表DCT 系统为每一个设备都配置了一张设备控制表DCT 用来记录设备的特性 设备和I O控制器的连接情况以及设备的分配和使用情况 如图5 11 a 所示 它主要包括以下内容 设备标识符 设备类型 设备地址 设备状态 与设备连接的控制器表指针 等待该设备的进程队列 重复执行次数或时间 其它信息 如一些释放信息等 设备A的DCT 控制器B的COCT 通道D的CHCT 通道E的CHCT 控制器C的COCT 图5 12DCT和COCT CHCT的连接 设备A的DCT PCB B PCB C PCB D PCB 图5 13DCT和PCB的连接 2 控制器控制表COCT 系统为每个控制器都设置了一个COCT 用它来反映I O控制器的使用情况以及所连接的通道情况 如图5 11 b 所示 COCT中各相应项意义与DCT类似 3 通道控制表CHCT此表存在于设置有通道的系统中 也是每个通道都配有一张通道控制表 如图5 11 c 所示 4 系统设备表SDT 如图5 11 d 所示 SDT的每个表项主要包括 设备类型和设备标识符 含义同DCT 正在使用设备的进程标识 指向有关设备的设备控制表 DCT指针 除了以上四种主要的数据结构外 还有 设备数据块DDB DeviceDataBlock 设备分配块DAB DeviceAllocationBlock I O请求包IRP I ORequestPackage 等 有了这些数据结构之后 对于配置有通道的计算机系统中 设备分配程序还应考虑到至少如下三个问题 是否有能用来为I O请求提供服务的通路 是否有多条通路可用 如果当前没有可用通路 那么通路何时才能空闲 对于所请求的I O设备 根据上述的查找方法 可能出现三种情况 对于所请求的I O设备 仅有一条通路可用 例如 通道E 控制器B 设备A 对于所请求的I O设备 可以找出一条以上的可用通路 例如上例中 最多可找出四条可用通路 通道D 控制器B 设备A通道D 控制器C 设备A通道E 控制器B 设备A通道E 控制器C 设备A 对于所请示的I O设备 没有一条可用的通路 若通道D E都处于忙状态 则对于设备A 就没有可用通路 5 5 2设备分配与回收 1 设备分配原则根据设备的固有属性 独占 共享还是虚拟 用户要求和系统配置情况决定设备分配总原则 设备分配方式有静态分配和动态分配两种 动态分配在进程执行过程中根据执行需要进行分配 2 设备分配算法 一般多采用以下几种算法 先来先服务分配算法 即先申请的 先被满足 优先级算法 即优先级高的进程的I O请求先被满足 按时间片轮转分配 3 设备分配程序 REQDEV的一般形式为 REQDEV devtype status 其功能是 系统根据调用参数devtype提供的设备类型名 为进程分配该类设备中的一台物理设备 同时为进程建立设备分配块DAB 记录所分配的设备 将DAB地址存入status变量中返回 若暂时分配不到所需设备 进程在 设备分配队列 中等待 若调用出错 用status返回错误信息 进程执行REQDEV系统调用控制最初转入总控程序 总控程序顺序完成 在系统设备表SDT中 根据设备类型名devtype检查该类设备的设备数据块DDB 若没找到则用status返回 NoDev 信息 为进程创建设备分配块DAB结构 控制转入设备数据块DDB中保存的该类设备的分配程序ALLOCATION ALLOCATION子过程返回后 设备分配块DAB中记录了所分配的设备 将DAB排入进程队列 DAB地址送status后总控程序返回 总控程序算法描述为 voidREQDEV devtype status i search SDT devtype if NOfound status NODev return Else createDAB ALLOCATION DDB i ALLOCATION PID address DDB status address DDB return 下面我们看看对独占型设备和共享型设备的分配程序 独占型设备的分配程序每一类独占型设备的分配程序大致相同 总控程序转来后 顺序完成下列步骤 根据设备数据块DDB 检索DDB中的设备控制表DCT指针所指示的一条资源队列 找一台当前未分配的设备 若没找到未分配设备 则将进程的PCB退至调用指令 自动插入DDB中的等待指针所指向的设备分配队列 返回 若找到可用设备 先进行死锁检测 若不会出现死锁再将该设备分配给进程 这时 要置该设备为已分配状态 将进程标识符填入设备控制表DCT中 在设备分配块DAB中填入设备 控制器 通道控制表地址及设备标识符 再返回 共享型设备的分配程序 设备数据块DDB同样将每一类共享型设备组织成一条资源队列 总控程序转来后 共享设备分配程序的工作也大致相同 顺序完成下列步骤 根据设备数据块DDB 检索资源队列 按用户要求的设备名定位所需设备的DCT 将设备分配给进程 在设备分配块DAB中填入设备 控制器 通道控制表地址及设备标识符 返回 4 设备回收 当某一作业 或进程 使用完设备后 则需 释放设备 调用系统调用RELDEV 释放所分配的设备 简称回收 RELDEV是REQDEV的逆过程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国管理咨询行业人才需求与市场竞争格局分析报告
- 2025-2030中国社区团购团长管理体系与区域扩张策略报告
- 第1课 自上而下的顺序结构教学设计小学信息技术鲁教版2024五年级上册-鲁教版2024
- 第一课 原始人的创造说课稿湘美版2019美术鉴赏-湘美版2019
- 4.6 人工智能发展对社会的潜在影响教学设计高中信息技术浙教版2019选修4 人工智能初步-浙教版2019
- 2022届黑龙江省伊春市高三上学期开学检测语文试题
- 高中地理 第二章 区域可持续发展 2.2 湿地资源的开发与保护-以洞庭湖区为例2说课稿 湘教版必修3
- 2023八年级道德与法治下册 第八课 维护公平正义第2框 公平正义的守护说课稿 新人教版
- 大数据驱动应急灾害评估-洞察与解读
- 网络安全知识题库(一)及答案解析
- 2025年度会计代理记账机构员工劳动合同范本
- 《慢性肾脏病相关心肌病综合管理中国专家共识(2024版)》解读
- 牛津译林版九年级英语上学期期中热点题型专练刷题03名校选词填空20篇(原卷版+解析)
- DB11T 2032-2022 工程建设项目多测合一技术规程
- 中小学教师职称评审讲课答辩英语学科全英答辩题目汇编(附汉语翻译)
- HG∕T 5087-2016 2,6-二叔丁基苯酚
- (完整)马克思主义政治经济学习题及参考答案
- 大规模模型蒸馏技术
- 12、口腔科诊疗指南及技术操作规范
- 我的家乡-枣阳
- GB/T 18851.4-2005无损检测渗透检测第4部分:设备
评论
0/150
提交评论