美文网首页
软件设计师考试 | 第四章 操作系统知识 | 设备管理

软件设计师考试 | 第四章 操作系统知识 | 设备管理

作者: Levi_moon | 来源:发表于2020-12-05 20:58 被阅读0次

    设备管理主要管理I/O操作的设备(鼠标、键盘等)、设备控制器、中断控制器、I/O处理机等。

    (一)设备管理概述

    在计算机系统中,将负责管理设备和输入/输出的机构称为I/O系统。
    I/O系统由设备、控制器、通道、总线和I/O软件组成。

    1.设备的分类

    • 按数据组织分类
      • 块设备,以数据块为单位来组织和传送数据信息的设备,如磁盘。
      • 字符设备,以单个字符为单位来传送数据信息的设备,如交互式终端、打印机等。
    • 按设备的功能分类
      • 输入设备
      • 输出设备
      • 存储设备
      • 网络联网设备
      • 供电设备
    • 从资源分配角度分类
      • 独占设备
      • 共享设备
      • 虚拟设备
    • 按数据传输率分类
      • 低速设备,速率为每秒几个字节到数百个字节的设备,如键盘、鼠标等。
      • 中速设备,每秒数千个字节到数十千个字节的设备,如激光打印机等。
      • 高速设备,每秒数百千个字节到数兆字节的设备,如磁带机、光盘机等。

    2.设备管理的目标与任务

    目标: 提高设备的利用率。
    任务: 保证在多道程序环境下,当多个进程竞争使用设备时,按一定的策略分配和管理各种设备,控制设备的各种操作,完成I/O设备与主存之间的数据交换。
    主要功能: 动态地掌握并记录设备的状态、设备分配和释放、缓冲区管理、实现物理I/O设备的操作、提供设备使用的用户接口及设备的访问和控制。


    (二)I/O软件

    设备管理软件的设计水平决定了设备管理的效率。
    设计I/O软件的主要目标是设备独立性和统一命名。
    I/O设备管理软件一般分为四层:

    • 中断处理程序
    • 设备驱动程序
    • 与设备无关的系统软件
    • 用户级软件


      I/O系统的层次结构与每层的主要功能

    (三)设备管理采用的相关技术

    1.通道技术

    引入通道的目的是使数据的传输独立于CPU,使CPU从繁琐的I/O工作中解脱出来。设置通道后,CPU只需向通道发出I/O命令,通道收到命令后,从主存中取出本次I/O要执行的通道程序并执行,仅当通道完成了I/O任务后才向CPU发出中断信号。
    根据信息交换方式的不同,通道分为:

    • 字节多路通道
    • 数组选择通道
    • 数组多路通道

    2.DMA技术

    直接主存存取(DMA)是指数据在主存与I/O设备间直接成块传送,即在主存与I/O设备间传送一个数据块的过程中不需要CPU的任何干涉,只需要CPU在过程开始启动与过程结束时的处理,实际操作由DMA硬件直接执行完成,CPU在此传送过程中可做别的事情。

    3.缓冲技术

    缓冲技术可提高外设利用率,尽可能使外设处于忙状态。
    缓冲技术可分为:

    • 硬件缓冲
    • 软件缓冲

    引入缓冲的原因:

    • 缓和CPUI/O设备间速度不匹配的矛盾;
    • 减少对CPU的中断频率,放宽对中断响应时间的限制;
    • 提高CPUI/O设备间的并行性。

    4.Spooling技术

    Spooling中文名称是“外围设备联机操作”。该技术实际上是用一类物理设备模拟另一类物理设备的技术,是使独占使用的设备变成多台虚拟设备的一种技术,也是一种速度匹配技术。

    Spooling系统的组成和结构

    (四)磁盘调度

    1.磁盘驱动调度

    常用算法:

    • 先来先服务(根据进程请求访问磁盘的先后次序进行调度)
    • 最短寻道时间优先(要求访问的磁道与当前磁头所在磁道距离最近,使得每次寻道时间最短)
    • 扫描算法(磁头移动的规律类似电梯的运行,又称为电梯调度算法)
    • 单向扫描调度算法(规定磁头只能单向移动)

    2.旋转调度算法

    旋转调度要解决的问题是:当移动臂定位后,有多个进程等待访问该柱面时,应当如何决定这些进程的访问顺序。


    相关文章

      网友评论

          本文标题:软件设计师考试 | 第四章 操作系统知识 | 设备管理

          本文链接:https://www.haomeiwen.com/subject/uobviktx.html