第12讲.设备管理.pptVIP

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第12讲.设备管理

通道类型 选择通道(selector channel):可以连接多个外设,而一次只能访问其中一个外设,执行一道通道程序(单道工作方式)。以块为单位传送数据,速度快,适合高速外部设备。如:磁盘,磁带。 字节多路(byte multiplexor channel)通道 :以字节为单位传送数据,多个外设分时轮流使用通道(分时系统工作方式)。适合连接低速字符设备。 数组多路(block multiplexor channel)通道:以块为单位传送数据,可以并发访问多个外设,分时执行多道通道程序。适合连接中高速外部设备。如:磁盘,磁带。 处理过程 当进程要求设备输入数据时,CPU执行Start指令指明I/O操作、通道程序地址、设备号和对应的通道。 对应通道接收到CPU发来的启动指令之后开始工作,把存放在内存中的通道指令程序读出并执行,并设置对应设备的I/O控制其中的控制状态寄存器,是设备开始工作。 设备准备好数据,由通道把数据送往通道指令指定的内存区域。 若数据传送结束,通道通过中断请求线发中断信号请求CPU做中断处理。 中央处理机 内存 字节多路通道 数组多路通道 选择通道 卡片 输入机 卡片 输入机 打印机 磁盘 磁带 通 道 结 构 设备分配 系统设备表SDT:每个系统设备占一表目 设备控制表DCT:每个设备一张 控制器控制表COCT:每个控制器一张 通道控制表CHCT:每个通道一张 按一定算法进行设备分配,包括设备、设备控制器及通道 确保 “有” ——用户能得到设备使用权。 “安全”——用户使用设备是安全的。 设备分配的数据结构 … 表目i … 表目1 … DCT指针 获得设备的进程 设备标识 设备类型 … 控制器等待队列尾 控制器等待队列首 COCT指针 设备忙/闲标记 设备标识 设备类型 控制忙/闲标记 … 控制器等待队列尾 控制器等待队列首 CHCT指针 控制器标识 通道忙/闲标记 通道等待队列尾 通道等待队列首 通道标识 SDF DCT 设备控制表  控制器控制表COCT CHCT 通道控制表 … … … 等待进程队列 DCT数据结构 Struct devtab { int dvid; //设备标识 int dvadd; //设备地址 int *dvec; //中断向量 int *dvbuf; //缓冲区指针 int *dvque; //等待队列 int (*dvinit)(); //初始化 int (*dvopen)(); //打开 int (*dvclose)(); //设备关闭 int (*dvread) (); //设备读 int (*dvwrite) (); //设备写 int (*dvseek) (); //设备查询 int (*dvcntl) (); //设备控制 int (*dvgetc) (); //取字符 int (*dvputc) (); //送字符 }dct[ ]; 设备分配的原则 设备分配总原则:充分发挥设备利用率,避免由于不合理分配引起进程死锁。 具体考虑以下方面: 设备的固有属性 (独占、共享、虚拟)。 设备分配算法(先来先服务、优先级)。 设备分配的安全性(安全或不安全分配方式)。 设备独立性(用户程序独立于使用的物理设备)。 设备分配方式 静态分配:在进程分创建时分配,在进程退出时释放; 优缺点:不会出现死锁;     设备利用率不高; 动态分配:在进程执行过程中根据需要分配,使用结束后释放; 优缺点:需要考虑死锁问题     有利于提高设备利用率 设备分配策略 设备分配策略:针对特定的设备采用特定的分配策略。 先来先服务(FCFS):按I/O请求的先后顺序,排成I/O请求命令队列;按FCFS分配设备; 基于优先级:依据进程的优先级,指定I/O请求的优先级,排成不同优先级队列;按优先级高低分配设备; 设备分配算法 进程申请 I/O 分配设备 分配 控制器 分配通道 进程加入设 备等待队列 进程加入通 道等待队列 进程加入控制 字等待队列 成功 成功 成功 成功 不成功 不成功 不成功 启动I/O 设备分配流程 进程P发出I/O请求 搜索SDT找到DCT指针 查DCT 设备忙? 进程P按分配算法 入I/O队列 Y N 按分配算法选择进程 进程P选中? 进程P等待 设备空闲 N Y 检查设备分配的安全性 安全吗? N Y 设备分配给进程P 1 1 搜索DCT找到COCT指针 控制器忙? Y 进程P等待 控制器 N 分配控制器给进程P 搜索COCT找到CHCT指针 CHCT忙 Y 进程P等 待通道 N 分配通道给进程 P 启动 I/O 谢 谢 !

文档评论(0)

zilaiye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档