1:MMU:内存控制单元。
实现虚拟内存。让进程有隔离的地址空间。
2CPU RAM i/o设备 之间的通信是通过总线。
总线从功能上包含以下三大类
(1)数据总线:并行传递数据的一组线
(2)地址总线:并行传送一组地址
(3)控制总线:把控制信息传送到所连接的电路中的一组线
cpu与IO设备之间的连接线 是IO总线。
每个连接到I/O总线上的设备都有自己的I/O地址集:这就是常说的IO端口
有4条专用的汇编指令可以允许CPU对IO端口进行读写:分别为in,ins,out,outs.
在执行一条指令时cpu使用地址总线选择具体的IO端口,使用数据总线在cpu寄存器和IO端口之间进行数据传送。
IO端口还可以被映射到物理地址空间。这样cpu和io设备之间就可以使用mov and or等操作内存汇编指令进行通信。:映射IO(速度快。可以和DMA结合起来使用)DMA(Direct Memory Access,直接内存存取)
CPU通过IO端口与IO设备进行通信的过程。
(1):控制寄存器 :cpu向设备发送命令。
(2)状态寄存器:io设备向cpu传回状态。
(3)输入寄存器:cpu将数据从IO设备中读回。
(4)输出寄存器:cpu将数据写入到IO设备中。
通用的IO接口有:
并口:数据按字节(8位)传输。
串口:数据按位传输。
USB:
PCMCIA
SCSI:
设备控制器:(针对一些复杂的IO设备)
(1):对IO接口收到的高级命令进行解释,并通过向设备发送适当的电信号序列强制设备执行特定的操作
(2):对从设备接收到的电信号进行转换和适当的解释。并修改(IO接口)的状态寄存器。
DMAC(直接内存访问控制器):
RAM与CPU之间传递数据。是异步模型。
(1)CPU发送指令激活DMAC
(2)DMAC自动传输数据。
(3)数据传输完毕。发送一个中断给CPU
DMAC最多的是控制磁盘驱动器以及那些一次要传送大量字节数据的慢速设备。因为DMAC的设置时间较长。因此少量字节的数据由CPU直接同步读取更为快速。
计算机地址分类:
(1)线性地址
(2)逻辑地址
(3)物理地址:CPU从物理上驱动数据总线所用的内存地址
(4)总线地址:除了CPU之外的硬件设备驱动数据总线所用的内存地址