【操作系统】设备管理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013034640/article/details/89217867

一,概括

        计算机系统的I/o设备即输入输出设备是用于计算机系统与人通信或与其他机器通信的所有的设备,以及所有的外围设备。I/O 设备管理是操作系统的重要功能之一,也简称为设备管理。

        I/O设备是计算机系统中的重要组成部分,计算机I/O设备的多样性使计算机设备的管理非常的复杂。本章首先从计算机硬件的角度介绍I/O设备的一般构成和控制方式,然后从操作系统设备管理软件的角度说明I/O设备管理软件的构成和软件组成部分的功能,并说明部分功能实现的原理。

二,每节详细介绍

第一,硬件角度(I/O系统的组成)

主要包括,I/O系统的结构,I/O设备的分配,设备控制器的功能和构成,以及通道的特点和功能。

第二,IO控制方式

轮询,中断,DMA

第三,缓冲管理

缓冲区是用来保护两个设备之间或者应用程序之间传输数据的内存区域。由于cpu的速度远远高于I/O设备,为了尽可能的使cpu和设备并行工作,提高系统的性能,通常需要操作系统在设备管理软件中提供缓冲区管理功能。

主要讲为什么要引入缓冲,缓冲有哪几种类型,每种的工作原理是什么呢?

第四节,设备分配

在多道程序环境

中,系统中的设备不允许用户自行使用,而必须由操作系统来分配。每当进程向操作系统提出系统请求之后,设备分配程序便按照一定的策略,把设备分配给用户。设备分配功能的完成,需要记录设备分配情况的 数据结构和设备分配算法。

第五节,I/O软件原理

I/O软件的总体目标是将软件组织成为一种层次结构,底层软件用来屏蔽硬件的具体细节,高层软件则主要为用户提供一个简洁/规范的界面。因此用户程序以及操作系统中设备管理软件的构成分为一下4个层次:用户进程,设备无关软件,设备驱动程序,硬件。

设备管理软件与硬件关系最密切是设备驱动程序,包括设备服务程序和中断处理程序。设备驱动程序最上层的是设备无关软件,通常完成设备命令,设备分配,设备独立性和缓冲管理等功能。最上层的是用户进程向系统发送IO请求,显示IO的结果,提供用户与设备的接口。

第六节,磁盘管理

       磁盘存储器容量不仅大,存取速度快,而且可以实现随机存取,是存放大量程序和数据的理想的设备。在现代的操作系统中,都配备了磁盘存储器,并且以它为主存放文件。计算机系统对文件的操作,基本上都涉及到对磁盘的访问。磁盘IO速度的高低和磁盘系统的可靠性,都会直接影响到系统性能。磁盘管理的重要目标是提高磁盘空间的利用率和磁盘访问速度。

1.磁盘的硬件结构

2.磁盘调度算法

先来先服务(FCFS),最短寻道时间(SSTF),扫描算法(scan),循环扫描算饭(FSCAN),其他NstepScan算法和FSacn算法。

3.提高IO速度的方法

三,总结

第六章,讲解的是IO设备管理的相关内容,按照我的思路,可以划分为三大部分。

第一部分, 是I/O设备的硬件角度。

1.什么是IO设备,I/Os 设备主要有哪些(主机,通道,控制器),IO设备的分类,设备控制器是什么?设备控制器功能,设备控制器的组成有哪些?

第二部分, 是设备管理软件,连接着硬件和操作系统,帮助操作系统完成对IO设备的管理和分配。

  1. I/O控制方式:轮询,中断,DMA,DMA中有命令状态寄存器(CR),内存地址寄存器(MAR),数据计数器(DC),数据寄存器(DR),使用DMA控制方式之后跟之前操作方式的区别

  2. 缓冲区

    缓冲区是什么?为什么要引入缓冲区? 缓冲区的类型有哪些?单,双,循环缓冲,缓冲池

    3.设备分配

    设备分配的一种方案,记录设备分配状况的数据结构。设备控制表,控制器控制表,通道控制表,系统设备表,每一种控制表中,都存放着相应的数据结构。

    设备分配需要考虑的因素(设备的固有属性,设备分配算法,设备分配的安全状态)

    设备的固有属性(独占设备,共享设备,虚拟设备),设备分配算法(先来先服务,基于优先权的分配算法),设备分配的安全状态(安全状态和非安全状态)

    4.设备独立性

    什么是设备独立性,设备独立性有哪些好处?设备独立软件的主要功能是什么?(执行所有设备的公有操作,向用户层提供统一接口),独占设备分配程序的步骤,分配设备,分配控制器,分配通道。

    5.spooling技术

    什么是spooling技术?spooling技术的组成部分?利用spooling实现共享打印机的步骤,spooling技术的特点(提高IO速度-使用磁盘作为低速设备的大容量缓存,提高了输入输出速度;将独占设备改造为共享设备,使独占设备变为逻辑上共享的设备,系统可以接受多个用户的请求);实现了虚拟设备功能,把一台物理上只能够互斥使用的设备,变为逻辑上可以供多个用户使用的设备。

    6.IO软件的原理

    IO软件的层次结构,用户进程—(用户进程向系统发送IO请求,显示IO操作的结果,提供用户和设备的接口),设备无关软件—(命名,保护,分配,缓冲分配),设备驱动程序(中断处理程序,设备服务程序),硬件。

    设备管理软件的功能(独,错,异,缓,设备的分配和释放,实现iO 控制方式)

    设备驱动程序是IO进程和设备控制器之间的通信程序,其主要任务是接受上层软件发过来的抽象的IO请求,

    然后将接收到的抽象的IO命令转化为设备控制器能执行的命令序列,向控制器的寄存器发送这些命令序列。

    与硬件无关的IO软件功能如下:设备命令,设备保护,提供独立于设备的块大小,为块设备和字符设备提供必要的缓冲技术,块设备的存储分配,分配和释放独立设备,错误处理。

    第三部分,讲述的是磁盘存储的相关内容

    1.首先讲述磁盘存储硬件的包括哪些内容 2.操作系统管理磁盘,有一些调度算法(FCFS,SSFT,SCAN,CSCAN,NStepScan,FSCAN)3.提高磁盘IO速度的方法(提前读,延迟写,优化物理块存储方式,虚拟盘,磁盘高速缓存)

  3. 哎,本来想简单的串一下的,却发现不是很熟悉,又啰嗦了好多。

猜你喜欢

转载自blog.csdn.net/u013034640/article/details/89217867