操作系统知识点——设备管理

一、I/O设备的分类与I/O管理的任务

(一)按设备的使用特性分类

1、存储设备

2、I/O设备

(二)按信息交换单位分类

1、字符设备

2、块设备

(三)按传输速率分类

1、低速设备

2、中速设备

3、高速设备

(四)按设备的共享属性分类

1、独占设备

2、共享设备

3、虚拟设备

(五)I/O管理的任务和功能

1、设备分配。按照设备类型和相应的分配算法觉得将I/O设备分配给哪一个进程。

2、设备处理。设备处理程序用以实现CPU和设备控制器之间的通信。

3、缓冲管理。设置缓冲区的目的是为了缓和I/O设备与CPU速度不匹配的矛盾。缓冲管理程序负责完成缓冲区的分配、释放及有关的管理工作。

4、设备独立性。设备独立性又称为设备无关性,是指应用程序独立于物理设备。用户在编程时要尽量避免直接使用实际设备名。若程序中使用了实际设备名,则当该设备没有连续在系统中或者该设备发生故障时,用户程序无法执行,若要运行用户程序,则需要修改程序。如果用户程序不涉及实际设备而使用逻辑设备,那么它所要求的输入输出便与物理设备无关。设备独立性可以提高用户程序的可适应性。

二、I/O控制方式

(一)设备控制器

设备的电子部分通常成为设备控制器。设备控制器处于CPUI/O之间,接收来自CPU的命令,并控制I/O设备工作。设备控制器是一个可编址的设备,当它只控制一个设备时,它只有一个设备地址;当它可连接多个设备时,它应该具有多个设备地址。

设备控制器应具备以下功能:①接收和识别来自CPU的各种指令;②实现CPU与设备控制器、设备控制器与设备之间的数据交换;③记录设备的状态供CPU查询;④识别所控制的每个设备的地址。

大多数设备控制器由设备控制器与处理器的接口、设备控制器与设备的接口及I/O逻辑3部分组成,如下图所示:

 

(二)程序直接控制方式

由于CPU速度远远快于I/O设备,因此CPU需要不断地测试I/O设备,这种控制方式又称为轮询或忙等。

以数据输入为例,当用户进程需要输入数据时,由处理器向设备控制器发出一条I/O指令启动设备进行输入。当设备输入数据期间,处理器通过循环执行测试指令不断地检测I/O设备状态寄存器的值,当状态寄存器的值显示设备输入完成时,处理器将书籍寄存器中的数据读取出来并送入内存指定单元,然后再启动设备输出并等待输出操作完成。

优点:过程简单。

缺点CPU利用率相当底。由于CPU速度远远快于I/O设备,致使绝大部分时间都在测试I/O设备是否已经完成数据传输,从而造成CPU的极大浪费。

(三)中断控制方式

以数据输入为例,当用户进程需要输入数据时,由处理器向设备控制器发出一条I/O指令启动设备进行输入。在输入数据的同时,CPU可以做其他工作。当输入完成时,设备管理器向CPU

  • 9
    点赞
  • 92
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值