博客
关于我
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 视图,视图更新删除
查看>>
MySQL 触发器
查看>>
mysql 让所有IP访问数据库
查看>>
mysql 记录的增删改查
查看>>
MySQL 设置数据库的隔离级别
查看>>
MySQL 证明为什么用limit时,offset很大会影响性能
查看>>
Mysql 语句操作索引SQL语句
查看>>
MySQL 误操作后数据恢复(update,delete忘加where条件)
查看>>
MySQL 调优/优化的 101 个建议!
查看>>
mysql 转义字符用法_MySql 转义字符的使用说明
查看>>
mysql 输入密码秒退
查看>>
mysql 递归查找父节点_MySQL递归查询树状表的子节点、父节点具体实现
查看>>
mysql 通过查看mysql 配置参数、状态来优化你的mysql
查看>>
mysql 里对root及普通用户赋权及更改密码的一些命令
查看>>
Mysql 重置自增列的开始序号
查看>>
mysql 锁机制 mvcc_Mysql性能优化-事务、锁和MVCC
查看>>
MySQL 错误
查看>>
mysql 随机数 rand使用
查看>>
MySQL 面试题汇总
查看>>