6 IO设备

6.1 什么是I/O设备

I/O就是输入输出

将数据输入计算机,或者接受计算机的输出数据

打印机、显示器、鼠标、键盘

6.1.1 分类

image-20230312221016344

image-20230312221054425

image-20230312221122525

6.1.2 小结

image-20230312221146898

6.2 IO控制器

6.2.1概念

image-20230312221256992

image-20230312221423428

6.2.2 I/O控制器的组成

image-20230312221717167

image-20230312221746416

6.2.3 内存映像I/O 与 寄存器独立编址

image-20230312221923060

6.2.4 小结

image-20230312221938449

6.3 I/O控制方式

6.3.1 程序直接控制方式

image-20230312224243212

image-20230312225453580

image-20230312232830175

6.3.2 中断驱动方式

image-20230312233024824

image-20230312233139205

6.3.3 DMA方式

image-20230312233303093

image-20230312233519498

image-20230312233642857

6.3.4 通道控制方式

image-20230312233758031

image-20230312233854456

6.3.5 小结

image-20230312233907485

6.4 I/O软件层次结构

6.4.1 用户层软件

image-20230312235001010

6.4.2 设备独立性软件

  1. 向上层提供统一的调用接口(比如read/write 系统调用)
  2. 设备的保护(设备被看作一种特殊的文件 linux中的/boot/sda 就代表着一块硬盘)
  3. 差错处理
  4. 设备的分配与回收
  5. 数据缓冲区管理
  6. 建立逻辑设备名到物理设备名的映射关系;根据设备类型选择调用相应的驱动程序

image-20230312235300963

6.4.3 设备驱动程序

image-20230312235615406

6.4.4 中断处理程序

image-20230312235742417

6.4.5 小结

image-20230312235832560

6.5 I/O核心子系统

image-20230313000158178

image-20230313000309793

6.6 假脱机技术(SPOOLing)

image-20230313001509872

6.6.1 输入井和输出井

image-20230313001545301

6.6.2输入进程和输出进程

image-20230313001618085

6.6.3 共享打印机原理分析

image-20230313001954123

6.6.4 小结

image-20230313002026172

6.7 设备的分配与回收

6.7.1 设备分配时应考虑的因素

image-20230313150331945

6.7.2 静态分配和动态分配

静态:进程运行前为其分配全部所需资源,运行结束后归还资源 —— 破坏了请求和保持条件,不会发生死锁

动态:进程运行过程中动态申请设备资源

6.7.3 设备分配管理中的数据结构

6.7.3.1 设备控制表 DCT

image-20230313150754507

6.7.3.2 控制器控制表 COCT

image-20230313150820840

6.7.3.3 通道控制表 CHCT

image-20230313150850907

6.7.3.4 系统设备表

image-20230313150914554

6.7.4 设备分配的步骤

image-20230313151039098

改进方法:建立逻辑设备名

image-20230313151440759

image-20230313151545350

6.7.5 小结

image-20230313151703768

6.8 缓冲区管理

6.8.1 概念

image-20230313151754915

6.8.2 作用

image-20230313153311509

6.8.3 单缓冲

image-20230313191639112

6.8.4 双缓冲

image-20230313192244305

6.8.5 使用单/双缓冲在通信时的区别

image-20230313192436517

image-20230313192418173

6.8.6 循环缓冲区

image-20230313192528971

6.8.7 缓冲池

image-20230313192659124

6.8.8 小结

image-20230313192717261

 posted on 2023-03-12 21:00    阅读(159)  评论(0编辑  收藏  举报