操作系统-笔记-第五章-输入输出管理

章节汇总 

一、第一章——操作系统的概念

二、第二章——【进程】

二、第二章——【线程】​编辑

二、第二章——【进程调度】

二、第二章——【进程同步与互斥】

二、第二章——【锁】

三、第三章——内存管理

四、第四章——文件管理

五、第五章——输入输出管理

 学习心得

目录

五、第五章——输入输出管理

1、IO设备的概念和分类

(1)IO设备分类——使用特性

(2)IO设备分类——传输速率

(3)IO设备分类——信息交换(块、字符)

2、IO控制器

(1)寄存器编址——(内存映射、寄存器独立编址)

(2)总结

3、IO控制方式

(1)程序直接控制方式(轮询)

(2)中断驱动方式

(3)DMA方式

(4)通道(弱鸡版CPU-硬件)

(5)总结

4、IO软件层次结构

(1)用户层软件

(2)设备独立性软件

(2)为什么一般连接硬件-需要下载(安装)驱动程序?

(3)中断处理程序

(5)总结

5、输入输出应用程序接口

(1)两个主机-通过操作系统-相互通信

(2)阻塞IO & 非阻塞IO

(3)驱动程序

6、IO核心子系统(独立性、驱动、中断)

(1)IO调度

(2)设备保护

7、假脱机技术

(1)脱机技术——诞生

(2)假脱机技术

(3)假脱机技术——应用(共享打印机的实现)

(4)总结

8、设备的分配和回收

(1)设备分配

(2)分配管理——数据结构

(3)设备分配步骤

(4)总结

8、缓冲区管理

(1)缓冲区的作用

(2)单缓冲

(3)双缓冲

(4)双缓冲——用于通信

(5)循环缓冲区——更多的缓冲区

(6)缓冲池

(7)总结


五、第五章——输入输出管理

1、IO设备的概念和分类

操作系统-笔记-第五章-输入输出管理_第1张图片

(1)IO设备分类——使用特性

操作系统-笔记-第五章-输入输出管理_第2张图片

(2)IO设备分类——传输速率

操作系统-笔记-第五章-输入输出管理_第3张图片

(3)IO设备分类——信息交换(块、字符)

操作系统-笔记-第五章-输入输出管理_第4张图片

2、IO控制器

操作系统-笔记-第五章-输入输出管理_第5张图片

操作系统-笔记-第五章-输入输出管理_第6张图片

(1)寄存器编址——(内存映射、寄存器独立编址)

编址方式有很多(这里只是介绍了两种!!!)

下面有这两者的优缺点!!!

操作系统-笔记-第五章-输入输出管理_第7张图片

(2)总结

操作系统-笔记-第五章-输入输出管理_第8张图片

3、IO控制方式

操作系统-笔记-第五章-输入输出管理_第9张图片

(1)程序直接控制方式(轮询)

轮询——占用CPU(CPU利用率低)

操作系统-笔记-第五章-输入输出管理_第10张图片

(2)中断驱动方式

解决了CPU占用问题,但是太多(太频繁)的中断,也会消费CPU大量时间来处理!

操作系统-笔记-第五章-输入输出管理_第11张图片

(3)DMA方式

针对【中断方式】,那么就单独加一层,让一个单独的设备来处理中断

目的:给CPU减少负担~(给他加了一个DMA小弟)

单独的设备——【DMA控制器】

DMA也是一个字一个字读取的,只不过他封装好了一个数据包,CPU来读取就完事了!

如果CPU要读取连续的数据(那么DMA也是一个一个的读取出来~)

操作系统-笔记-第五章-输入输出管理_第12张图片

操作系统-笔记-第五章-输入输出管理_第13张图片

(4)通道(弱鸡版CPU-硬件)

加强版DMA【工作方式-类似CPU】

操作系统-笔记-第五章-输入输出管理_第14张图片

(5)总结

这是一个不断发展迭代的过程

轮询—中断—DMA—通道

操作系统-笔记-第五章-输入输出管理_第15张图片

4、IO软件层次结构

(1)用户层软件

提供用户方便操作的接口(比如:Windows API)

操作系统-笔记-第五章-输入输出管理_第16张图片

(2)设备独立性软件

类似——文件目录(实现多用户)

操作系统-笔记-第五章-输入输出管理_第17张图片

(2)为什么一般连接硬件-需要下载(安装)驱动程序?

打印机、鼠标、键盘等等(都可能有自身的特性,需要安装自身提供的程序,供CPU使用)

操作系统-笔记-第五章-输入输出管理_第18张图片

(3)中断处理程序

操作系统-笔记-第五章-输入输出管理_第19张图片

(5)总结

用户-独立性-驱动-中断-硬件

操作系统-笔记-第五章-输入输出管理_第20张图片

5、输入输出应用程序接口

操作系统-笔记-第五章-输入输出管理_第21张图片

操作系统-笔记-第五章-输入输出管理_第22张图片

(1)两个主机-通过操作系统-相互通信

操作系统-笔记-第五章-输入输出管理_第23张图片

操作系统-笔记-第五章-输入输出管理_第24张图片

(2)阻塞IO & 非阻塞IO

操作系统-笔记-第五章-输入输出管理_第25张图片

(3)驱动程序

为了方便各自厂商开发自己的硬件,并且能够支持操作系统使用

【操作系统】就会【制定统一的标准】,厂商就会根据这个标准再进行封装一层(驱动程序)

让【操作系统】正常使用【硬件设备】

操作系统-笔记-第五章-输入输出管理_第26张图片

操作系统-笔记-第五章-输入输出管理_第27张图片

6、IO核心子系统(独立性、驱动、中断)

操作系统-笔记-第五章-输入输出管理_第28张图片

(1)IO调度

操作系统-笔记-第五章-输入输出管理_第29张图片

(2)设备保护

操作系统-笔记-第五章-输入输出管理_第30张图片

7、假脱机技术

操作系统-笔记-第五章-输入输出管理_第31张图片

(1)脱机技术——诞生

脱机技术——脱离主机的控制(进行输入,输出的操作)

因为输入和输出的速度不匹配(有矛盾)

先用磁带——预先输入,这样机器就可以畅通无阻的读取啦~ 

操作系统-笔记-第五章-输入输出管理_第32张图片

操作系统-笔记-第五章-输入输出管理_第33张图片

(2)假脱机技术

操作系统-笔记-第五章-输入输出管理_第34张图片

(3)假脱机技术——应用(共享打印机的实现)

比较low的打印机:只能让一个人用,当打印机在工作时,无法响应其他的请求

高级的(共享版本):加入一个缓冲队列,可以响应多个请求

(不过只是表面上答应,你的需求只是加入打印机的任务队列,还是要排队滴~)

操作系统-笔记-第五章-输入输出管理_第35张图片

(4)总结

操作系统-笔记-第五章-输入输出管理_第36张图片

8、设备的分配和回收

(1)设备分配

操作系统-笔记-第五章-输入输出管理_第37张图片

(2)分配管理——数据结构

(设备控制表、控制器控制表、通道控制表、系统设备表)

操作系统-笔记-第五章-输入输出管理_第38张图片

操作系统-笔记-第五章-输入输出管理_第39张图片

操作系统-笔记-第五章-输入输出管理_第40张图片

(3)设备分配步骤

操作系统-笔记-第五章-输入输出管理_第41张图片

逻辑设备名——操作系统来找到【具体设备】

逻辑设备名——方便用户编程!!!

表的单张和多张(文件系统那章,也有说过)

单张——用于单用户

多种——用于多用户

(4)总结

操作系统-笔记-第五章-输入输出管理_第42张图片

8、缓冲区管理

硬件实现的缓冲区——成本高,容量小(速度快!!!)【例:快表】

软件实现的缓冲区——成本低,速度较慢

IO设备和CPU的速度不匹配(需要缓冲区)

操作系统-笔记-第五章-输入输出管理_第43张图片

(1)缓冲区的作用

操作系统-笔记-第五章-输入输出管理_第44张图片

(2)单缓冲

缓冲区不为空时——不可加入数据

缓冲区满了——才可以拿取数据

两者速度不匹配的情况(如下图)

操作系统-笔记-第五章-输入输出管理_第45张图片

操作系统-笔记-第五章-输入输出管理_第46张图片

(3)双缓冲

操作系统-笔记-第五章-输入输出管理_第47张图片

(4)双缓冲——用于通信

操作系统-笔记-第五章-输入输出管理_第48张图片

(5)循环缓冲区——更多的缓冲区

操作系统-笔记-第五章-输入输出管理_第49张图片

(6)缓冲池

操作系统-笔记-第五章-输入输出管理_第50张图片

(7)总结

操作系统-笔记-第五章-输入输出管理_第51张图片

到这里,操作系统就全部学完啦~

这只是一点的结束,也是另外一个新的开始,为了自己的梦想,冲啊!!!

终身学习,丰富自己,满足自身的求知欲,加油!!!相信你一定可以!

时间:2023年8月23日12:48:55 

你可能感兴趣的:(其他,笔记)