Linux 设备管理

一、I/O设备的类型

按设备的所属关系可以将I/O设备分为以下两类。

1、系统设备

     系统设备是在系统生成时已登记于系统中的标准设备,属于系统的基本配置

2、用户设备

     用户设备是在系统生成时示登记于系统中的非标准设备。(U盘,移动硬盘)

按设备的信息交换的单位可将I/O设备分为以下两类

1、字符设备

     字符设备是以字符为单位进行输入和输出的设备。

2、块设备

     块设备的输入和输出是以数据块为单位的。(SCSI硬盘)

按设备的共享属性可将I/O设备分为以下三类

1、独占设备

     所有的字符设备都是独占设备。独占设备是指一段时间内只允许一个用户(进程)访问的设备,即临界资源。(打印机)

2、共享设备

      块设备都是共享设备。共享设备是指一段时间内允许多个进程同时访问的设备。

3、虚拟设备

     通过虚拟投备技术把一台独占设备变换为若干台逻辑设备,供若干个用户(进程)同时使用,以提高设备的利用率。

设备管理的任务的功能

设备管理是对计算机的输入/输出系统的管理,它是操作系统中最具有多样性和复杂性的部分。其主要务如下所述

(1)选择和分配I/O设备以便进行数据传输操作。

(2)控制I/O设备和CPU(或内存)之间交换数据。

(3)为用户提供一个友好的透明接口把用和设备硬件特性分开,使得用户在编制应用程序时不必涉及具体设,由系统按用户的要求来对设备的工作进行控制。另外,这个接口还为新增加的用户设备提供一个和系统核心相连接的入口,以便用户开发新的设备管理程序。

(4)提高设备和设备之间、CPU和设备之间以及进程和进程之间的并行操作程度,以使操作系统获得最佳效率

设备管理程序提供以下功能:

(1)提供和理进程管理系统的接口

(2)进行设备分配

(3)实现设备和设备、设备和CPU等之间的并行操作

(4)进行缓冲管理

(5)设备控制与驱动

设备控制器

设备控制器是CPU与I/O设备之间的接口,它接收从CPU发来的命令并去控制I/O设备工作。设备控制器是一个可编址设备,当它仅控制一个设备时,它只有一个惟一的设备地址当它控制多个设备时,则应具有多个设备地址,使每一个地址对应一个设备。

设备控制器的由三部分组成:

A、设备控制器与处理机的接口

B、设备控制器与设备的接口

C、I/O逻辑

图见附件。

I/O通道

设置I/O通道的目的是使一些原来由CPU处理的I/O任务转由通道来承担,从而把CPU从繁杂的I/O任务中解脱出来。在设置了通道后,CPU只需向通道发送一条I/O指令。通道在收到该指令后,便从内存中取出本次要执行的通道程序,然后执行该通道程序,仅当通道完成了规定的I/O任务后,才向CPU发中断信号。

通道有两种基本类型:选择通道和多路通道

单通路I/O系统图见附件

多通路I/O系统图见附件

 

设备驱动

设备驱动程序的主要任务,是接收上层软件开发来的抽象要求,如read或write命令,再把它转换为具体要求,发送给设备控制器;此外,它也将由设备控制器发来的信号传送给上层软件,从而完成两者间的相互通信。

设备驱动程序的处理过程:

(1)将抽象要求转换为具体要求

(2)检查I/O请求的合法性

(3)读出和检查设备的状态

(4)传送必要的参数

(5)工作方式的设置

(6)启动I/O设备

 

 

二、I/O控制方式

程序I/O方式(查询方式)

图见附件

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值