CPU处理IO设备过程

CPU处理IO设备过程,第1张

映射阶段

1、每个IO设备启动时向内存中映射地址,又称IO端口

2、北桥芯片把针对这个地址的数据统统重定向到总线的实际设备上,上图即为CPU

发送阶段(以读取磁盘数据为例)

1、CPU将上步映射的地址放到系统总线上,北桥接到后等待CPU发送指令

2、CPU发送以下3条指令

· 读还是写?是否开缓存?完成时是否通知CPU?

· 指明磁盘读取的位置(LBA)

· 指明读取出来的内容放在内存的什么位置

3、北桥收到指令发送给IO总线上的磁盘控制器来执行

4、读取到内容通过DMA技术,磁盘控制器直接对内存寻址,把数据放到内存

5、CPU直接从内存读取数据

问题

1、DMA什么技术?

作用就是磁盘控制器读取到内容直接扔到内存里,不用经过CPU处理

2、为什么磁盘控制器不能直接把数据传递给cpu,还得经过内存?

CPU不能直接读取磁盘数据,CPU只能读取内存中的数据。CPU由运算器和控制器组成。CPU只能直接访问存储在内存中的数据。外存中的数据只有先调入内存后,才能被中央处理器访问和处理。

3、磁盘控制器怎么驱使磁盘工作的

SCSI或者ATA指令集,这是一种语言,通过这种语言 *** 作磁盘运动

4、CPU如何产生对各种设备的指令?

不同设备有不同的驱动,正是通过驱动程序,CPU才能产生针对不同设备的不同指令。例如你PC安了一个显卡,不装显卡驱动显卡就不能工作。原因就是CPU无法产生让显卡工作的信号,这种信号正是通过显卡驱动产生的。

io系统的组成

    需要用于输入、输出和存储信息的设备;

    需要相应的设备控制器;

    控制器与CPU连接的高速总线;

    有的大中型计算机系统,配置I/O通道

I/O系统的基本功能

    1)主要功能:

        1.隐藏物理设备细节,方便用户

           用户使用抽象的I/O命令即可

        2.实现设备无关性,方便用户

           用户可用抽象的逻辑设备名来使用设备,同时也提高了OS的可移植性和易适应性。

        3.提高处理机和设备的并行性,提高利用率:缓冲区管理

        4.对I/O设备进行控制:控制方式、设备分配、设备处理

        5.确保对设备正确共享:虚拟设备及设备独立性等

        6.错误处理

I/O系统的层析结构和模型

    层次结构:系统中的设备管理模块分为若干层次

    层次间 *** 作:下层为上层提供服务,完成输入输出功能中的某些子功能,并屏蔽功能实现的细节。

I/O软件系统的层次

.中断处理程序:处于IO系统的底层,直接与硬件交互

.设备驱动程序:

     处于底层,是进程和控制器之间的通信程序

     功能:将上层发来的抽象IO请求,转化为IO设备的具体命令和参数,并把它装入寄存器中

.设备独立性软件

I/O系统接口:块设备接口,流设备接口,网络通信接口

设备控制器

设备并不直接与CPU通信

计算机中的一个实体——“设备控制器”负责控制一个或多个I/O设备,以实现I/O设备和计算机之间的数据交换。

控制器是CPU与I/O设备之间的接口,作为中间人接收从CPU发来的命令,并去控制I/O设备工作,以使处理机脱离繁杂的设备控制事务。

常作成接口卡插入计算机

可编址,不同类:控制一个设备时只有一个地址,若连接多个设备则含有多个设备地址;管理的复杂性因设备而异,分为字符设备控制器、块控制器

基本功能

1.接收和识别CPU命令(控制寄存器:存放命令和参数)

2.标识和报告设备的状态(状态寄存器)

3.数据交换(数据寄存器)

4.地址识别(控制器识别设备地址、寄存器地址。地址译码器)

5.数据缓冲(协调I/O与CPU的速度差距)

6.差错控制

I/O逻辑

通过一组控制线与处理机交互

cpu要启动一个设备时,将启动命令发送给控制器;

同时通过地址线把地址发送给控制器

控制器的I/O逻辑对收到的地址和命令进行译码,再根据所译出的命令选择设备进行控制。

实现CPU与设备控制器之间的通信(共有三类信号线)

数据线:数据线通常与寄存器相连(数据寄存器,控制/状态寄存器)

地址线

控制线

I/O通道

当设置通道后,CPU只需要向通道发送一条I/O指令即可不在干预后续 *** 作,通道形成通道程序,执行I/O *** 作,完成后向CPU发中断信号。

主要目的:

建立更独立(数据传送的独立,I/O *** 作的组织、管理及结束也尽量独立)的I/O *** 作,解放CPU。

实际上I/O通道是一种特殊的处理机(指令类型单一,只用于I/O *** 作,通道没有内存,他与CPU共享内存)

通道类型

根据其控制的外围设备的不同类型,信息交换方式也可分为:

字节多路通道。数组选择通道。数组多路通道

瓶颈问题:由于通道价格昂贵,致使数量较少使它成为I/O系统的瓶颈,进而造成系统吞吐量的下降

字节多路通道

一个通道常通过多个子通道连接多个设备控制器

多个设备,通过非分配型子通道以字节为单位交叉轮流使用主通道传输自己的数据。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12115657.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存