一、IO设备的基本概念和分类

1、什么是IO设备?

UNIX系统将外部设备抽象为一种特殊的文件,用户可以使用与文件操作相同的方式对外部设备进行操作。

Write操作:向外部设备写数据。

Read操作:从外部设备读入数据。

2、IO设备的分类——按使用特性

3、IO设备的分类——按传输速率分类

4、IO设备的分类——按信息交换的单位分类

5、总结

二、I/O控制器

设备控制器又名I/O接口,我上学期在计算机组成原理系列博客中介绍过,详细内容查看

https://www.cnblogs.com/wkfvawl/p/10954376.html

1、I/O设备的机械部分

 2、I/O设备的电子部件(I/O控制器)

 3、I/O控制器的组成

 

4、内存映像I/O(寄存器统一编址)和寄存器独立编址

5、总结

三、I/O控制方式

I/O控制方式的具体内容在计算机组成原理的博客中一个给出了,这个给出链接。

https://www.cnblogs.com/wkfvawl/p/10954376.html#_label5

 

四、假脱机SPOOLing技术

 

1、什么是脱机技术

 2、假脱机技术——输入井和输出井

 

 3、假脱机技术——输入进程和输出进程

 

 4、假脱机技术——输入/输出缓冲器

5、共享打印机原理分析

SPOOLing技术可以把一台物理设备虚拟成逻辑上的多台设备,可将独占式设备改造成共享设备。

 

 6、总结

 五、设备的分配与回收

 

 

 1、设备分配时应考虑的因素

 

 设备的固有属性:

 

 设备的分配算法:

 

 设备分配时应考虑的因素

 

 2、静态分配和动态分配

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

设备控制表(DCT)

控制器控制表(COCT)

通道控制表

系统设备表

4、设备分配的步骤

 

 

 

 5、设备分配步骤的改进

这里引出一个概念:设备独立性

设备独立性是指用户程序所用设备与物理设备无关的特性,也称设备无关性。为此要求用户程序对I/O设备的请求不指定特定的设备,而采用逻辑设备名,程序执行时由系统完成逻辑设备到物理设备的映射,这很象程序对逻辑地址的使用。

 

设备独立性带来的好处:

1)便于用户使用物理外围设备

2)便于系统增减或变更外围设备

3)便于实现I/O重定向;易于对付外设故障

4)提高了设备分配的灵活性和利用率

 

设备独立性的实现:

系统为每个进程设置一张“逻辑设备表LUT”,记录该进程所用逻辑设备对应的物理设备名和驱动程序入口地址。这是设备分配的一种结果记录,另外,设备分配还要修改全局性的“系统设备表”和“设备控制表”等数据结构。

 

6、总结

六、缓冲区管理

缓冲技术的基本实现思想:
在CPU和外设之间设立缓冲区,用以暂存CPU与外设之间交换的数据,从而缓和CPU与外设速度不匹配所产生的矛盾。
其实,凡是数据到达和离去速度不匹配的地方均可采用缓冲技术。例如,CPU与内存之间也需要设置缓冲,只不过设在cache里。

1、什么是缓冲区

 

 支持CPU与外设之间并行工作的技术:中断、通道、缓冲。

2、缓冲区的作用

3、单缓冲

 

4、双缓冲

 

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

 6、循环缓冲区

 

7、缓冲池

 

 8、总结

 

 

 

 

 

版权声明:本文为wkfvawl原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/wkfvawl/p/11898024.html