博客
关于我
5.1I/O管理概述
阅读量:799 次
发布时间:2023-04-16

本文共 1425 字,大约阅读时间需要 4 分钟。

#脑图与设备管理概念整理

##设备管理基础知识

共享设备必须是可寻址且可随机访问的设备

共享设备是指一段时间内允许多个进程同时访问的设备

虚拟设备是指将一个物理设备变换成多个对应的逻辑设备

为了便于上层软件编制,设备控制器通常需要提供控制寄存器、状态寄存器和控制命令
字节多路通道用作连接大量的低速或中速I/O设备
将系统中的每台设备按某种原则统一进行编号,这些编号作为区分硬件和识别设备的代号,称为设备的绝对号
通道控制设备管理器、设备管理器控制设备工作
通道是处理输入/输出的硬件

##DMA与中断控制方式对比

DMA方式与中断控制方式的主要区别在于数据传送的方式:

中断控制方式在每个数据传送完成后中断CPU,而DMA控制方式则在所要求传送的一批数据全部传送结束时中断CPU
中断控制方式的数据传送在中断处理时由CPU控制完成,而DMA控制方式则在DMA控制器的控制下完成。尽管如此,在DMA控制方式中,数据传送的方向、存放数据的内存始址及传送数据的长度等仍然由CPU控制
DMA方式以存储器为核心,中断控制方式以CPU为核心。因此,DMA方式能与CPU并行工作
DMA方式传输批量的数据,中断控制方式的传输则以字节为单位

##DMA与通道控制方式对比

DMA控制方式与通道控制方式的主要区别体现在以下几个方面:

在DMA控制方式中,在DMA控制器控制下设备和主存之间可以成批地进行数据交换而不用CPU干预,这样既减轻了CPU的负担,又大大提高了I/O数据传送的速度。通道控制方式与DMA控制方式类似,也是一种以内存为中心实现设备与内存直接交换数据的控制方式
不过在通道控制方式中,CPU只需发出启动指令,指出通道相应的操作和I/O设备,该指令就可以启动通道并使通道从内存中调出相应的通道程序执行
与DMA控制方式相比,通道控制方式所需的CPU干预更少,并且一个通道控制多台设备,进一步减轻了CPU的负担。此外,对通道来说,可以使用一些指令灵活改变通道程序,这点DMA控制方式无法做到

##技术问题解答

###1. DMA方式与中断控制方式的主要区别是什么?

中断控制方式在每个数据传送完成后中断CPU,而DMA控制方式则在所要求传送的一批数据全部传送结束时中断CPU

中断控制方式的数据传送在中断处理时由CPU控制完成,而DMA控制方式则在DMA控制器的控制下完成。尽管如此,在DMA控制方式中,数据传送的方向、存放数据的内存始址及传送数据的长度等仍然由CPU控制
DMA方式以存储器为核心,中断控制方式以CPU为核心。因此,DMA方式能与CPU并行工作
DMA方式传输批量的数据,中断控制方式的传输则以字节为单位

###2. DMA方式与通道控制方式的主要区别是什么?

在DMA控制方式中,在DMA控制器控制下设备和主存之间可以成批地进行数据交换而不用CPU干预,这样既减轻了CPU的负担,又大大提高了I/O数据传送的速度。通道控制方式与DMA控制方式类似,也是一种以内存为中心实现设备与内存直接交换数据的控制方式

不过在通道控制方式中,CPU只需发出启动指令,指出通道相应的操作和I/O设备,该指令就可以启动通道并使通道从内存中调出相应的通道程序执行
与DMA控制方式相比,通道控制方式所需的CPU干预更少,并且一个通道控制多台设备,进一步减轻了CPU的负担。此外,对通道来说,可以使用一些指令灵活改变通道程序,这点DMA控制方式无法做到

转载地址:http://tsgfk.baihongyu.com/

你可能感兴趣的文章
mysql 更新子表_mysql 在update中实现子查询的方式
查看>>
MySQL 有什么优点?
查看>>
mysql 权限整理记录
查看>>
mysql 权限登录问题:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
查看>>
MYSQL 查看最大连接数和修改最大连接数
查看>>
MySQL 查看有哪些表
查看>>
mysql 查看锁_阿里/美团/字节面试官必问的Mysql锁机制,你真的明白吗
查看>>
MySql 查询以逗号分隔的字符串的方法(正则)
查看>>
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT 、分页查询的优化、合理使用连接、子查询的优化)(上)
查看>>
mysql 查询,正数降序排序,负数升序排序
查看>>
MySQL 树形结构 根据指定节点 获取其下属的所有子节点(包含路径上的枝干节点和叶子节点)...
查看>>
mysql 死锁 Deadlock found when trying to get lock; try restarting transaction
查看>>
mysql 死锁(先delete 后insert)日志分析
查看>>
MySQL 死锁了,怎么办?
查看>>
MySQL 深度分页性能急剧下降,该如何优化?
查看>>
MySQL 深度分页性能急剧下降,该如何优化?
查看>>
MySQL 添加列,修改列,删除列
查看>>
mysql 添加索引
查看>>
MySQL 添加索引,删除索引及其用法
查看>>
MySQL 用 limit 为什么会影响性能?
查看>>