当前位置: 首页 > news >正文

【从零开始学习计算机科学】操作系统(八)IO管理

【从零开始学习计算机科学】操作系统(八)IO管理

    • IO管理
      • IO设备
      • IO设备的分类
      • IO控制器
      • 设备控制器的IO端口编址
      • 设备数据传输控制方法
      • 缓冲技术
        • 缓冲区的分类
        • 常用的缓冲技术
      • 虚拟设备
      • IO设备的分配
      • IO相关的软件的设计

IO管理

IO设备

IO设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备,属于计算机的硬件部件。

日常生活中,最典型的IO设备就是如下几种:键盘,字符输入设备(input);显示器,输出设备(output);移动硬盘,既可以输入又可以输出的设备。

IO设备的分类

  1. 按使用特性分类:人机交互类设备(数据传输速度慢),存储设备(数据传输速度快),网络通信设备(数据传输速度介于上述两者之间)。

  2. 按照传输速率分类:低速设备(每秒几个到几百字节),中速设备(每秒几千到上万个字节),高速设备(每秒数千到千兆字节)。

  3. 按信息交换的单位分类:块设备(传输快,可寻址),字符设备(传输慢,不可寻址,常采用中断驱动方式)。

  4. 按是否可以共享分类:共享设备,独占设备。

IO控制器

CPU无法直接控制IO设备的机械部件,因此IO设备还要有一个电子部件作为CPU和IO设备机械部件之间的中介,用于实现CPU对设备的控制,该电子部件就是IO控制器,又称为设备控制器,CPU控制IO控制器,IO控制器来控制IO的机械设备。

IO控制器的功能主要有:

  1. 接受和识别CPU发出的指令。IO控制器中有相应的控制寄存器来存放cpu传来的相应的命令和参数。

  2. 向cpu报告设备状态。IO控制器中有相应的状态寄存器来记录当前IO设备的状态。

  3. 数据交换。IO控制器中有相应的数据寄存器。输出时,数据寄存器用于暂存CPU发来的数据,之后再由控制器传送设备;输入时,数据寄存器用于暂存设备发来的数据,之后cpu从数据寄存器中取走数据。

  4. 地址识别。为了区分设备控制器中的各个寄存器,也要给各个寄存器设置一个特定的地址,IO控制器通过CPU提供的地址来判断cpu要读/写哪个寄存器。

  5. 数据缓冲。

  6. 差错控制。

相关文章:

  • 搜广推校招面经四十五
  • Spring (十)事务
  • Spring Boot中利用Redis解决接口幂等性问题
  • GPIO接口
  • Django ORM自定义排序的实用示例
  • Axure RP 9 安装与汉化指南(附安装包)包含下载、安装、汉化、授权,Axure9 汉化教程、Axure9 汉化步骤
  • MoonSharp 文档三
  • Rust规律归纳随笔
  • 使用Mermaid语法绘制的C语言程序从Linux移植到Windows的流程图
  • Leetcode8-字符串转换整数(atoi)
  • 【技术白皮书】内功心法 | 第二部分 | Telnet远程登录的工作原理
  • 大模型:定义与主流架构全解析
  • 【TVM教程】为 Mobile GPU 自动调优卷积网络
  • SwiftUI 让视图自适应高度的 6 种方法(四)
  • Kubernetes Pod的生命周期概述
  • LearnOpenGL-笔记-其二
  • DeepSeek-实用集成大礼包
  • 基于某著名企业IPD与质量管理体系融合的研发质量管理方案(64页PPT)
  • 【保姆级教程】使用 oh-my-posh 和 clink 打造个性化 PowerShell 和 CMD
  • 十二天-双指针技术:链表问题的高效解法
  • 深圳拟出让3宗居住用地,共计用地面积6.77公顷
  • “大鼻子情圣”德帕迪约因性侵被判缓刑,还有新的官司等着他
  • 优化营商环境,服务上海“五个中心”建设,北外滩有何举措?
  • 周启鸣加盟同济大学,曾任香港浸会大学深圳研究院院长
  • 新剧|《藏海传》定档,《折腰》《人生若如初见》今日开播
  • 英国首相斯塔默住所起火,警方紧急调查情况