博客
关于我
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创建数据库指定字符集
查看>>
MySQL创建用户报错:ERROR 1396 (HY000): Operation CREATE USER failed for 'slave'@'%'
查看>>
mysql加强(4)~多表查询:笛卡尔积、消除笛卡尔积操作(等值、非等值连接),内连接(隐式连接、显示连接)、外连接、自连接
查看>>
mysql加强(5)~DML 增删改操作和 DQL 查询操作
查看>>
mysql加强(6)~子查询简单介绍、子查询分类
查看>>
MySQL单实例或多实例启动脚本
查看>>
MySQL压缩包方式安装,傻瓜式教学
查看>>
MySQL原理、设计与应用全面解析
查看>>
MySQL原理简介—1.SQL的执行流程
查看>>
mysql参考触发条件_MySQL 5.0-触发器(参考)_mysql
查看>>
MySQL及navicat for mysql中文乱码
查看>>
MySqL双机热备份(二)--MysqL主-主复制实现
查看>>
mysql启动以后会自动关闭_驾照虽然是C1,一直是开自动挡的车,会不会以后就不会开手动了?...
查看>>
mysql启动和关闭外键约束的方法(FOREIGN_KEY_CHECKS)
查看>>
Mysql启动失败解决过程
查看>>
MySQL启动失败:Can't start server: Bind on TCP/IP port
查看>>
mysql启动报错
查看>>
mysql启动报错The server quit without updating PID file几种解决办法
查看>>