zoukankan      html  css  js  c++  java
  • 通俗易懂理解操作系统设备管理

    I/O硬件系统

    1. I/O设备

      1. 设备的类别

        从数据交换单位来分,I/O设备可以大致分为两类

        • 块设备:信息存储在固定大小的块中,并且每个块都有地址,因此可以独立寻址。块的通常大小为512~32768字节。如硬盘,USB闪存盘等。
        • 字符设备:以字节为单位发送或接收一个字符流,且不可寻址。如打印机、鼠标、网络接口以及大多数与磁盘不同的设备,都可看做字符设备
      2. 设备硬件的组成

        I/O设备一般由机械部件和电子部件两部分组成

        • 机械部件:设备本身
        • 电子部件:设备控制器或适配器
      3. 总线

        计算机系统中的设备及处理器、内存等硬件资源通过总线通信

    2. I/O控制方式

      主机通过控制器对设备输入、输出进行控制的方式

      1. 轮询(忙等待)

        cpu通过控制器命令寄存器向设备下达操作命令后,设备操作完成状态由cpu不断查询控制器状态寄存器来获得

      2. 中断控制

        设备主动向cpu报告任务完成状态,无需cpu主动循环检测设备操作状态

      3. 直接存储器访问(DMA)

        通过一个专用处理器DMA完成具体的传输控制操作,数据传输的基本单位是一个连续的数据块,仅在传输数据块的开始和结束时才需要cpu干预

      4. 通道方式(输入输出处理器)

        独立于cpu专门负责数据输入/输出传输工作的处理机,与cpu并行操作,指令单一,与cpu共享内存

    I/O软件系统

    1. 设备中断处理程序

      • 作用:解除设备驱动程序的阻塞
    2. 设备驱动程序

      • 概念:专门与控制器对话,发出命令并接受响应的软件

      • 与操作系统的结合方式

        设备是共享资源,设备驱动程序运行在核心态

      • 设备驱动程序与设备控制器的通信

        通过设备寄存器来进行通信

    3. 设备无关I/O软件

      设备无关I/O软件的基本功能是执行所有设备公关的I/O功能,并想用户层软件提供一个统一的接口

      • 设备管理功能

        屏蔽I/O设备细节差异,抽象设备共性特征,对不同设备提供尽可能一致的使用接口

      • 缓冲管理

      • 错误报告

      • 分配与释放设备

      • 提供与设备无关的块尺寸

    磁盘管理

    1. 磁盘的结构

    1. 磁盘的调度算法
      • 先来先服务算法:根据磁道的访问请求到来的先后顺序完成请求
      • 最短寻道时间优先算法:优先满足距离当前磁头位置最近的访问请求
      • 电梯调度算法:类似于电梯
      • 循环扫描算法:磁臂从开始端柱面走向结束端柱面,过程中处理请求,走完后从结束端返回,但不处理请求,然后从开始端再重新开始。
      • N步扫描算法:分成诺干个长度为N的子队列,按先来先服务算法依次执行这些队列。处理某子队列是,来了新请求,则将新请求放入其他队列

    虚拟设备

    作用:提高设备的利用率,尤其是独占设备,将其模拟成共享设备。这种技术就是虚拟

    SPOOLing(假脱机技术):对脱机输入/输出系统的模拟,即利用一类物理设备模拟另外一类物理设备

  • 相关阅读:
    Realtime crowdsourcing
    maven 常用插件汇总
    fctix
    sencha extjs4 command tools sdk
    首次吃了一颗带奶糖味的消炎药,不知道管用不
    spring mvc3 example
    ubuntu ati driver DO NOT INSTALL recommand driver
    yet another js editor on windows support extjs
    how to use springsource tools suite maven3 on command
    ocr service
  • 原文地址:https://www.cnblogs.com/cjdstudy/p/13268766.html
Copyright © 2011-2022 走看看