《计算机操作系统》学习笔记(五)---设备管理

一、I/O系统

I/O设备的分类

  1. 按传输速率分类:低速设备(键盘,鼠标)、中速设备(激光打印机)、高速设备(磁带机、磁盘机)

  2. 按信息交换的单位分类:字符设备、块设备

  3. 按设备的共享属性分类:独占设备、共享设备、虚拟设备

2、设备控制器

主要职责是控制一个或多个I/O的设备。

  1. 设备控制器的基本功能:

1)接收和识别命令(CPU->设备)

2)标识和报告设备状态(设备->CPU

3)数据交换

4)地址识别

5)数据缓冲

6)差错控制

  1. 设备控制器的组成:

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

    设备控制器与设备的接口

    I/O逻辑


3I/O通道

I/O通道是一种特殊的处理机,具有执行I/O指令的能力。其目的就是为了独立的I/O操作,它不仅数据的传送能够独立于CPU,对于I/O操作的组织、管理及其结束处理也能够独立。

通道类型有:

  1. 字节多路通道(控制器->通道轮流交叉传输一个字节)

  2. 数组选择通道(控制器->通道按顺序一个控制器传输完所有字节再到下一个)

  3. 数组多路通到(控制器->通道轮流交叉传输一组字节)

4、总线系统

ISA-->EISA-->VESA-->PCI(目前最流行的)

二、I/O控制方式

1、程序I/O方式

CPU定时查询设备的状态,若有数据需要输入或需要输出,即开始数据传输,否则下个时刻继续查询

2、中断驱动I/O控制方式

如:CPU向设备控制器发送读命令,设备控制器收到命令后便去控制相应的输入设备读数据,当数据进入数据寄存器后,控制器便通过控制线向CPU发送中断信号,由CPU检查输入过程是否差错,若无错即通过控制器以及数据线,将数据写入内存指定单元。每个数据从设备到控制器的输入过程中,无须CPU干预,可使CPUI/O设备并行工作。

3、直接存储器访问DMAI/O控制方式

中断驱动I/O控制方式时的CPU是以字节为单位进行干预的,如果将其用于块设备,显然极其低效。

该方式的特点:

1)数据传输的基本单位是数据块;

2)所传送的数据是从设备直接读入内存的,或者相反;

3)仅在传送一个或多个数据块的开始或结束时,才需要CPU干预,数据块的传输是在控制器的控制下完成的。

4I/O通道控制方式

I/O通道方式是DMA方式的发展,它可进一步减少CPU的干预,即把对一个数据块的读写为单位的干预,减少为对一组数据块的读写以及有关的控制和管理为单位的干预。


三、缓冲管理

设备管理中,引入缓冲区的主要原因,可归纳为以下几点:

  1. 缓和CPUI/O设备间速度不匹配的矛盾;

  2. 减少对CPU的中断频率,放宽对CPU中断响应时间的限制;

  3. 提高CPUI/O设备之间的并行性。

缓冲类型有三种:

  1. 单缓冲

  2. 双缓冲

  3. 循环缓冲

三种缓冲区:无数据的空缓冲区R、有数据的满缓冲区G、计算进程正用的缓冲区C

三个指针:

计算进程下一可用缓冲Nextg(对应G

输入进程下一可用缓冲Nexti(对应R

计算进程正在使用缓冲Current(对应C

两个过程:GetbufReleasebuf

《计算机操作系统》学习笔记(五)---设备管理_第1张图片

  1. 缓冲池

三种队列:空缓冲队列(emq)、输入队列(inq)、输出队列(outq)三个队列;

四种缓冲:

用于收容输入数据的工作缓冲区的工作缓冲区(hin

用于提取输入数据的工作缓冲区(sin

用于收容输出数据的工作缓冲区(hout

用于提取输出数据的缓冲区(sout)四个工作缓冲区

两个过程:GetbufPutbuf

《计算机操作系统》学习笔记(五)---设备管理_第2张图片

四、设备分配

设备分配中的数据结构

  1. 设备控制表DCT

  2. 控制器控制表COCT

  3. 通道控制表CHCT

  4. 系统设备表SDT


设备分配中的考虑因素

  1. 设备固有属性:独占设备,共享设备(容易造成死锁),虚拟设备

  2. 设备分配算法:先来先服务,优先级高者优先

  3. 设备分配安全性

  4. 设备独立性:设立一层独立性软件,(1)执行所有设备的公共操作(面向设备),(2)向用户层软件提供统一接口(面向用户)


SPOOLing技术(伪脱机操作)

与脱机操作差不多,只是有两点不一样:

  1. 输入进程与输出进程模拟外围机

  2. 脱机操作是使用整个磁盘来缓存作业,而SPOOLing技术只是从磁盘中划分出“输出井”和“输出井”来缓存作业

《计算机操作系统》学习笔记(五)---设备管理_第3张图片

六、设备处理

设备驱动程序的特点:

驱动程序主要是指在请求I/O的进程与设备控制器之间的一个通信和转换程序。它将进程的I/O请求经过转换后,传送给控制器;又把控制器中的记录的设备状态和I/O操作完成情况及时地反映给请求I/O的进程。

设备驱动的特点:

  1. 驱动程序与设备控制器和I/O设备的硬件特性紧密相关,对不同类型的设备应该配置不同的驱动程序。

  2. 驱动程序与I/O设备所采用的I/O控制方式紧密相关。

  3. 由于驱动程序与硬件紧密相关,因而其中的一部分必须用汇编语言写。

驱动程序分两部分:

  1. 设备驱动程序(驱动设备进行I/O

  2. 设备中断处理程序(设备I/O后处理相关)


七、磁盘存储器管理

磁盘访问

访问时间=寻到时间+旋转延迟时间+传输时间

磁盘调度

  1. 先来先服务FCFS

  2. 最短寻道时间优先SSTF

  3. 扫描算法(电梯调度算法)SCAN

  4. 循环扫描算法CSCAN

  5. N-Step-SCAN调度算法(FCFSSCAN的结合体)

    廉价磁盘冗余阵列

    RAID0级:仅提供并行交叉存取

    RAID1级:具有磁盘镜像功能,备份用

    RAID3级:具有并行传输功能,有一专门的校验盘

    RAID5级:具有并行传输功能,没有专门的校验盘,校验信息螺旋方式散布在所有数据盘

你可能感兴趣的:(数据结构,算法,工作,作业,磁盘,raid5)