电子商务专业网站设计,wordpress登录开发文档,高端小程序建设公司,页面跳转的方式【操作系统学习笔记】文件管理1.3
参考书籍: 王道考研 视频地址: Bilibili
I/O 控制方式
程序直接控制方式中断驱动方式DMA 方式通道控制方式
程序直接控制方式
关键词: 轮询
完成一次读/写操作的流程 CPU 向控制器发出读指令。于是设备启动#xff0c;并且状态寄存器设…【操作系统学习笔记】文件管理1.3
参考书籍: 王道考研 视频地址: Bilibili
I/O 控制方式
程序直接控制方式中断驱动方式DMA 方式通道控制方式
程序直接控制方式
关键词: 轮询
完成一次读/写操作的流程 CPU 向控制器发出读指令。于是设备启动并且状态寄存器设为1轮询检查控制器的状态输入设备准备好数据后将数据传给控制器并报告自身状态控制器将输入的数据放到数据寄存器中并将状态改为0CPU 发现设备已就绪即可将数据寄存器中的内容读入 CPU 的寄存器中再把 CPU 寄存器中的内容放入内存若还要继续读入数据则 CPU 继续发出读指令 CPU 干预的频率: 很频繁I/O 操作开始之前、完成之后需要 CPU 介入并且在等待 I/O 完成的过程中 CPU 需要不断的轮询检查数据传送的单位: 每次读/写一个字数据的流向 读操作: I/O 设备 - CPU - 内存写操作: 内存 - CPU - I/O 设备每个读/写都需要 CPU 的帮助 主要优缺点 实现简单。在读/写指令之后加上实现循环检查的一系列指令即可CPU 和 I/O 设备只能串行工作CPU 需要一直轮询检查长期处于忙停状态利用率低
中断驱动方式
关键词: 中断
引入中断机制。由于 I/O 设备速度很慢因此在 CPU 发出读/写命令后可将等待 I/O 的进程阻塞先切换到别的进程执行。当 I/O 完成后控制器会向 CPU 发出一个中断信号CPU 检测到中断信号后会保存当前进程的运行环境信息转去执行中断处理程序处理该中断。处理中断的过程中CPU 从 I/O 控制器读一个字的数据传送到 CPU 寄存器再写入主存。接着CPU 恢复等待 I/O 的进程的运行环境然后继续执行
CPU 会在每个指令周期的末尾检查中断中断处理过程中需要保存、恢复进程的运行环境这个过程是需要一定时间开销的。可见如果中断发生的频率太高也会降低系统性能
完成一次读/写操作的流程CPU 干预的频率: 每次 I/O 操作开始之前、完成之后需要 CPU 介入。等待 I/O 完成的过程中 CPU 可以切换到别的进程执行数据传送的单位: 每次读/写一个字数据的流向 读操作: I/O 设备 - CPU - 内存写操作: 内存 - CPU - I/O 设备 主要优缺点 与程序直接控制方式相比再中断驱动方式中I/O 控制器会通过中断信号主动报告 I/O 已完成CPU 不再需要不停的轮询CPU 和 I/O 设备可以并行工作CPU 利用率得到明显提升每个字在 I/O 设备与内存之间的传输都需要经过 CPU。而频繁的中断处理会消耗较多的 CPU 时间
DMA 方式
与中断驱动方式相比DMA方式直接进行存储器存取。主要用于块设备的 I/O 控制
数据的传送单位是块。不再是一个字的传送数据的流向是从设备直接放入内存或者从内存直接到数据不再需要 CPU 作为中介仅在传送一个或多个数据块的开始和结束时才需要 CPU 干预
DMA 控制器是一种特殊的 I/O 控制器。也由主机-控制器接口、I/O 控制逻辑、块设备-控制器接口。在主机-控制器接口中由DR数据寄存器暂存从设备到内存、或从内存到设备的数据、MAR内存地址寄存器在输入时MAR 表示数据应放到内存中的什么位置输出时 MAR 表示要输出的数据放在内存中的什么位置、DC数据计数器表示剩余要读/写的字节数、CR命令/状态寄存器用于存放 CPU 发来的 I/O 命令或设备的状态信息等。DMA 控制器不是每次直接读一整块也是一个字一个字来读取写入 DR
完成一次读/写操作的流程CPU 干预的频率: 仅在传送一个或多个数据块的开始和结束时才需要 CPU 干预数据传送的单位: 每次读/写一个或多个块每次读写的只能是连续的多个块且这些块读入内存后在内存中也必须是连续的数据的流向 读操作: I/O 设备 - 内存写操作: 内存 - I/O 设备 主要优缺点 数据传输以块为单位CPU 介入频率进一步降低。数据的传输不再需要先经过 CPU 再写入内存数据传输效率进一步增加。CPU 和 I/O 设备的并行性得到提升CPU 每发出一条 I/O 指令只能读/写一个或多个连续的数据块
通道控制方式
通道: 一种硬件可以理解为弱化版 CPU 。通道可以识别并执行一系列通道指令
完成一次读/写的流程 CPU 向通道发出 I/O 指令。指明通道程序在内存中的位置并指明要操作的是哪个 I/O 设备。之后 CPU 就切换到其他进程执行了通道执行内存中的通道程序其中指明了要读入/写出多少数据读/写的数据应放在内存的什么位置等信息通道执行完规定的任务后向 CPU 发出中断信号之后 CPU 对中断进行处理 CPU 干预的频率: 极低通道会根据 CPU 的指示执行相应的通道程序只有完成一组数据块的读/写后才需要发出中断信号请求 CPU 干预数据传送的单位是一组块数据的流向 读操作: I/O - CPU写操作: CPU - I/O 主要优缺点 CPU、通道、I/O 设备可并行工作资源利用率高实现复杂需要专门的通道硬件支持