【OS笔记38】:设备管理 - I/O 设备原理

文章目录

    • [7.1 I/O 设备原理](#7.1 I/O 设备原理)
      • [1. 设备的类别与概念](#1. 设备的类别与概念)
        • [(1) 基本概念](#(1) 基本概念)
        • [(2) 设备的分类 (按使用特性)](#(2) 设备的分类 (按使用特性))
      • [2. 设备管理的设计目标](#2. 设备管理的设计目标)
        • [(1) 向用户提供方便的统一接口 (User Interface)](#(1) 向用户提供方便的统一接口 (User Interface))
        • [(2) 提高各种设备的使用效率](#(2) 提高各种设备的使用效率)
        • [(3) 统一的管理方法](#(3) 统一的管理方法)
      • [3. 设备管理的主要功能](#3. 设备管理的主要功能)
        • [(1) 记录设备的管理信息](#(1) 记录设备的管理信息)
        • [(2) 实施设备分配](#(2) 实施设备分配)
        • [(3) 完成 I/O 操作](#(3) 完成 I/O 操作)
        • [(4) 缓冲管理与地址转换](#(4) 缓冲管理与地址转换)
      • 知识点关联记忆

前言

计算机系统中,除了 CPU 和内存,其余部分均为外设。设备管理的任务最为繁杂,源于设备种类繁多且速度差异极大。
本章内容:实现用户能以操作文件的方式简便地操作各种复杂硬件设备。

7.1 I/O 设备原理

1. 设备的类别与概念

(1) 基本概念
  • 外设 (I/O Device) :计算机系统中,通常将处理机 (CPU)主存储器 (Memory) 之外的部分定义为外设。
  • 设备管理的职责 :对种类繁多的 I/O 设备进行管理和控制,以实现用户对各类设备的高效、统一、简便使用。
(2) 设备的分类 (按使用特性)

为便于管理,设备通常按功能和使用特性进行分类结构化:

  • 存储设备 :主要用于信息存储。
    • 磁带
    • 磁盘(软盘、硬盘)
    • 其他(光盘、磁鼓等)
  • 输入输出设备 :用于人机交互或数据转换。
    • 键盘、显示器、打印机
    • 图形/图像输入输出设备
    • 音频设备、网络通信板等
  • 终端设备
    • 通用终端(对话型、批处理型)
    • 专用终端、虚终端
  • 脱机设备:不直接由主机控制的设备。

2. 设备管理的设计目标

操作系统设计设备管理模块,主要为实现以下三个目标:

(1) 向用户提供方便的统一接口 (User Interface)

此目标最为重要,即实现设备独立性

  • 屏蔽物理细节:使用户无需了解具体设备的物理特性,例如磁盘磁头运转或打印机针头工作方式。
  • 虚拟设备:用户程序中使用逻辑设备(虚拟设备),系统在后台负责将其映射至物理设备(实设备)。
  • Linux/UNIX 哲学 :在 Linux 系统中,外设被视为特殊文件处理 ,与普通文件统一管理(即"一切皆文件")。用户可通过 readwrite 等系统调用来操作硬件。
(2) 提高各种设备的使用效率
  • 并行性
    • 提高 CPU 与外设 之间的并行程度(避免 CPU 空等 I/O 完成)。
    • 提高 外设与外设 之间的并行程度。
(3) 统一的管理方法
  • 尽管外设差异显著,操作系统应尽可能采用统一的策略和数据结构进行管理,以使系统更简练、易于维护。

3. 设备管理的主要功能

为实现上述目标,设备管理程序需完成以下具体工作:

(1) 记录设备的管理信息
  • 核心数据结构设备控制块 (DCB, Device Control Block)
  • 作用:类似于进程管理中的 PCB 和文件管理中的 FCB,DCB 记录了设备的详细信息(如状态、类型、等待队列等),便于系统有效管理。
(2) 实施设备分配
  • 冲突解决:当请求使用某种设备的进程数大于实际设备数时,系统需依据特定策略(如先来先服务、优先级等)决定设备分配。
(3) 完成 I/O 操作
  • 驱动执行 :根据用户需求调用相应的设备驱动程序
  • 硬件控制:启动相应设备进行 I/O 操作。
  • 中断处理:处理来自设备的中断信号(如键盘输入完成、磁盘读写完成)。
(4) 缓冲管理与地址转换
  • 缓冲技术:此为解决 CPU(高速)与外设(低速)速度不匹配问题的关键技术。

知识点关联记忆

为便于复习,可将操作系统的"三大控制块"进行关联记忆:

管理模块 核心对象 核心数据结构 英文缩写
进程管理 进程 进程控制块 PCB
文件管理 文件 文件控制块 FCB
设备管理 设备 设备控制块 DCB

本节小结

7.1 节主要引入基本概念。重点在于理解设备管理的必要性 (旨在提供统一接口、提高效率)以及操作系统对设备的视角(分为存储、IO等类别,并通过DCB记录状态)。

相关推荐
香辣牛肉饭2 小时前
【算法】动态规划 最长公共子序列(LCS)
经验分享·笔记·算法·动态规划
迷途呀2 小时前
Python:函数中的参数类型
开发语言·笔记·python·langchain·nlp
依然范特东3 小时前
动手学深度学习笔记--卷积层、微调
人工智能·笔记·深度学习
金伟API10244 小时前
SQL Server基础学习笔记
笔记·学习
暴力求解4 小时前
Linux ---线程控制(二)
linux·运维·服务器·操作系统
砚凝霜5 小时前
软考网络工程师|第 1 章 计算机网络基础 完整备考笔记
网络·笔记·计算机网络
岑梓铭6 小时前
《考研408数据结构》第七章(7.1 查找:顺序查找、折半查找、分块查找)复习笔记
数据结构·笔记·考研·408·ds·查找
金伟API10246 小时前
常见的SQL面试题:经典50例
数据库·人工智能·笔记·sql·学习
DES 仿真实践家6 小时前
Plant Simulation SimTalk基础教程(3)SimTalk 变量与数据类型
开发语言·笔记·学习
逸模7 小时前
多业态连锁,如何同步铺开各类门店
大数据·人工智能·笔记·工程·公装·连锁店