1
0
mirror of https://github.com/Didnelpsun/CS408.git synced 2026-11-06 15:20:04 +08:00
This commit is contained in:
Didnelpsun
2022-09-04 23:07:24 +08:00
parent 6bb5461ac4
commit 38e6f10b5d
2 changed files with 10 additions and 8 deletions

View File

@@ -226,7 +226,7 @@
## I/O接口
是主机和外设之间的交接界面,通过接口可以实现主机和外设之间的信息交换。
即$I/O$控制器,是主机和外设之间的交接界面,通过接口可以实现主机和外设之间的信息交换。
### 接口基本概念
@@ -425,7 +425,7 @@ $I/O$端口要想能够被$CPU$访间,必须要有端口地址,每一个端
 |保存断点(PC)|保存断点(PC)|
 |送中断向量|送中断向量
中断服务程序|保护现场|保护现场和屏蔽字
 ||开中断
 ||开中断,中断嵌套
 |执行中断服务程序|执行中断服务程序
 ||关中断
 |恢复现场|恢复现场和屏蔽字
@@ -436,7 +436,7 @@ $I/O$端口要想能够被$CPU$访间,必须要有端口地址,每一个端
+ 在中断服务程序中提前设置开中断指令。
+ 优先级别高的中断源有权中断优先级别低的中断源。
+ 所有屏蔽触发器组合在一起,便构成一个屏蔽字寄存器,屏蔽字寄存器的内容称为屏蔽字。
+ 中断屏蔽标志可以改变多个中断服务程序执行完的次序。但是不能改变开始执行的次序,因为中断请求响应顺序由排队器控制。
+ 中断屏蔽标志可以改变多个中断服务程序**执行完**的次序。但是不能改变开始执行的次序,因为中断请求响应顺序由排队器控制。
+ 屏蔽字设置规律:
+ $1$表示屏蔽该中断源的请求,$0$表示可以正常申请。
+ 每个中断源对应一个屏蔽字(在处理该中断源的中断服务程序时,屏蔽寄存器中的内容为该中断源对应的屏蔽字)。
@@ -458,11 +458,11 @@ $DMA$方式优先级高于中断方式,这样处理速度更快。
+ 因为每一个数据都要中断一次,当有大量数据时$CPU$需要大量中断服务。
+ 所以使用硬件——$DMA$控制器控制大量数据传输。
+ 在$DMA$方式中,当$I/O$设备需要进行数据传送时,通过$DMA$控制器($DMA$接口)向$CPU$提出$DMA$传送请求,$CPU$响应之后将让出系统总线,由$DMA$控制器接管总线进行数据传送。其主要功能有:
1. 接受外设发出的$DMA$请求,并向$CPU$发出总线请求。
2. $CPU$响应此总线请求,发出总线响应倍号,接管总线控制权,进入$DMA$操作周期。
1. 接受外设发出的$DMA$请求,并向$CPU$发出**总线**请求。
2. 在每个**存储周期**(机器周期)后$CPU$检查是否存在$DMA$请求,若有则响应此总线请求,发出总线响应倍号,接管总线控制权,进入$DMA$操作周期。
3. 确定传送数据的主存单元地址及长度,并能自动修改主存地址计数和传送长度计数。
4. 规定数据在主存和外设间的传送方向,发出读写等控制信号,执行数据传送操作。
5. 向$CPU$报告$DMA$操作的结束。
5. 向$CPU$报告$DMA$操作的结束,发出中断。
![DMA控制器][DMAcontroller]
@@ -477,6 +477,8 @@ $DMA$控制时,$CPU$对主存没有控制权,而$DMA$有。
#### DMA传送过程
$CPU$只在开始和结尾参与控制,$DMA$控制整个传输过程:内存→数据总线→$DMAC$($DMA$控制器)→外设。
+ 预处理:
+ 主存起始地址$\rightarrow AR$。
+ $I/O$设备地址$\rightarrow DAR$。

View File

@@ -31,7 +31,7 @@
+ $I/O$设备的电子部件通常是一块插入主板扩充槽的印刷电路板。
+ $CPU$无法直接控制$I/O$设备的机械部件,因此$I/O$设备还要有一个电子部件作为$CPU$和$I/O$设备机械部件之间的“中介”,用于实现$CPU$对设备的控制。
#### I/O$控制器功能
#### I/O控制器功能
+ 接受和识别$CPU$发出的命令:如$CPU$发来的$Read/Write$命令,$I/O$控制器中会有相应的**控制寄存器**来存放命令和参数。
+ 向$CPU$报告设备的状态:$I/O$控制器中会有相应的**状态寄存器**,用于记录$I/O$设备的当前状态。如$1$表示空闲,$0$表示忙碌。
@@ -452,7 +452,7 @@ $I/O$软件结构层次:
1. 根据“柱面号”移动磁臂,让磁头指向指定柱面。
2. 激活指定盘面对应的磁头。
3. 磁盘旋转的过程中,指定的扇区会从磁头下面划过,这样就完成了对指定扇区的读/写。
+ 许多操作系统位改善磁盘访问时间,不以扇区为单位,而是以簇为单位近空间分配。
+ 许多操作系统位改善磁盘访问时间,不以扇区为单位,而是以**簇**为单位近空间分配。
#### 磁盘类别