资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2021-01-08,*,#,IO通道,(通道的引入),硬件连接结构,IO通道硬件连接结构,1,返 回,IO通道,(通道的引入),引入通道的主要目的:,是使一些原来由 CPU处理的,I/O,任务转由通道来承担,从而把CPU从繁杂的,I/O,任务中解脱出来,以保证CPU有更多的时间去进行数据的处理。,I/O通道的特点:I/O,通道是一种,特殊的,处理机,与一般的处理机的区别主要表现在:,(1)它的指令类型单一。即:通道硬件简单,所执行的指令主要局限于与,I/O,操作有关的指令。,(2)它没有自己的内存,通道所执行的通道程序是存放在内存中的。即:通道与CPU共享内存。,返 回IO通道引入通道的主要目的:是使一些原来由,2,主机IO系统,由于主机所配置的,I/O,设备较多,为减轻CPU和总线的负担,采用的是,具有通道的I,/O系统结构,。如图所示,计算机,I/O通道1,控制器4,控制器3,控制器2,控制器1,I/O通道2,设备,设备,设备,设备,图,具有通道的I,/O系统结构,返 回,主机IO系统 由于主机所配置的I/O设备较多,3,IO通道控制方式,返 回,1.引入,I/O,通道方式是DMA方式的发展,它可进一步减少CPU的干预。即把对一个数据块的读(写)为单位的干预,减少为对一组数据块的读(写)及有关的控制和管理为单位的干预,同时又可实现CPU、通道和,I/O,设备三者的并行工作,从而更有效地提高了整个系统的资源利用率。,通道:,执行通道程序,向控制器发出命令,并具有向CPU发中断信号的功能。一旦CPU发出指令,启动通道,则通道独立于CPU工作。由前面知,一个通道可连接多个控制器,一个控制器可连接多个设备,形成树形交叉连接,。,IO通道控制方式返 回1.引入 通道,4,2.,通道程序,通道是通过执行,通道程序,,并与设备控制器一起共同实现对,IO,设备的控制。,1)通道运算控制部件,通道地址字,CAW,:记录通道程序在内存中的地址,通道命令字,CCW,:保存正在执行的通道指令,通道状态字,CSW,:存放通道执行后的返回结果,通道数据字,CDW,:,存放传输数据,通道和CPU共用内存,通过周期窃取方式取得,IO通道控制方式,2.通道程序IO通道控制方式,5,IO通道控制方式,返 回,2)通道命令及格式,通道程序,是由一系列的通道指令(或称为通道命令)所构成。,每条通道指令中应包含下列诸信息:,(1)命令码:它规定了外围设备所执行的操作。,(2)数据主存地址:标明数据送入内存(读)和从内存取出(写)时的内存首址。或是控制信息;或是转移地址,(3)传送字节个数:表示本条指令所要读(或写)数据的字节数。,(5)标志码R:,R=1表示本通道程序尚未结束,R=0表示通道程序的最后,一条指令,通道程序结束,IO通道控制方式返 回 2)通道命令及格式,6,CPU:,执行用户程序,当遇到I/O请求时,可根据该请求生成通道程序放入内存(也可事先编好放入内存),并将该通道程序的首地址放入CAW中;之后执行“启动I/O”指令,启动通道工作,通道:,接收到“启动I/O”指令后,从CAW中取出通道程序的首地址,并根据首地址取出第一条指令放入CCW中,同时向CPU发回答信号,使CPU可继续执行其他程序,而通道则开始执行通道程序,完成传输工作。,通道程序完成实际I/O,启动I/O设备,执行完毕后,如果还有下一条指令,则继续执行,否则表示传输完成,向CPU发I/O中断,并且通道停止工作。CPU接收中断信号,从CSW中取得有关信息,决定下一步做什么。,IO通道控制方式,3)工作原理,CPU:执行用户程序,当遇到I/O请求时,7,5.6 缓 冲 技术,1 缓冲的引入,所以,为了提高I/O速度和设备利用率,许多计算机系统通过设置缓冲区采用了缓冲技术来实现。,缓冲管理的,主要功能,是:,组织好缓冲区,并提供获得和释放缓冲区的手段。,缓和CPU与I/O设备间速度不匹配的矛盾,减少对CPU的中断频率,放宽对中断响应时间的限制,(见下页图),提高CPU和I/O设备之间的并行性,在OS中,引入缓冲技术的主要原因有:,缓冲区设置分为,硬缓冲:,在设备中设置缓冲区,由硬件实现,软缓冲:,在内存中开辟一个空间,用作缓冲区,5.6 缓 冲 技术 1 缓冲的引入 所,8,2 单缓冲和双缓冲,1.单缓冲(Single Buffer),是OS提供的最简单的一种缓冲形式。,用户区,用户进程,缓冲区,操作系统,I/O设备,输入,传送,下面通过数学方式说明单缓冲的作用。,对于块设备输入(出),设从磁盘把一块数据输入到缓冲区(或从缓冲区把一块数据输出到磁盘)所需的时间为T,将缓冲区的数据传送到用户区的时间为M,CPU计算数据的时间为C,则系统对每整块数据的处理时间为:,max(C,T)+M,(MT or C),如果没有缓冲区,则系统对每整块数据的处理时间为:,T+C,输出,传送,2 单缓冲和双缓冲 1.单缓冲(Single Buffer,9,第五章设备管理通道缓冲技术课件,10,对于字符设备输入(出),缓冲区是暂存用户输入(出)的一行数据。,例:,把一叠卡片读入并打印出来。设读卡机和打印机的速度分别是600张/m、600行/m,则每读入并打印出一张卡片上的记录需时为200ms。,说明:,由于只有一个缓冲区,读卡机和打印机是串行工作的。即读卡机将数据读入缓冲区时,打印机空闲,打印机工作时,读卡机空闲。,为了能让两者更好地工作,引入了双缓冲区。,用户区,用户进程,缓冲区,操作系统,I/O设备,输入,传送,输出,传送,对于字符设备输入(出),缓冲区是暂存用户输入,11,2.双缓冲(Double Buffer),用户区,用户进程,操作系统,I/O设备,缓冲区1,缓冲区2,输入,传送,用户区,用户进程,缓冲区1,操作系统,I/O设备,缓冲区2,传送,输出,用户区,用户进程,缓冲区1,操作系统,I/O设备1,缓冲区2,I/O设备2,输出,传送,输入,传送,单机缓冲系统,2.双缓冲(Double Buffer)用户区用户进程操,12,5.3.4 缓冲池(Buffer Pool),目前广泛流行的公用缓冲池,由于可供多个进程共享,可提高缓冲区的利用率。,一、缓冲池(Buffer Pool)的组成,对于可用于I/O的缓冲池,包含的缓冲区类型有:,空(闲)缓冲区;,装满输入数据的缓冲区;,装满输出数据的缓冲区。,对应的有以下三个缓冲队列:,空缓冲队列,emq,。,由空缓冲区所链成的队列,输入队列,inq,。,由装满输入数据的缓冲区所链成的队列,输出队列,outq,。,由装满输出数据的缓冲区所链成的队列,5.3.4 缓冲池(Buffer Pool)目前广泛流行,13,除了上述外,缓冲池还具有如下的工作缓冲区:,用于收容输入数据的工作缓冲区;,用于提取输入数据的工作缓冲区;,用于收容输出数据的工作缓冲区;,用于提取输出数据的工作缓冲区;,除了上述外,缓冲池还具有如下的工作缓冲区:,14,三、缓冲区的工作方式,hin,sout,sin,hout,用户程序,提取输入,收容输出,收容输入,提取输出,收容输入工作方式,提取输入工作方式,收容输出工作方式,提取输出工作方式,输入数据时,调用Getbuf(emq),装满数据后,调用Putbuf(inq,hin),输入数据时,调用Getbuf(inq),提完数据后,调用Putbuf(emq,sin),输出数据时,调用Getbuf(emq),装满数据后,调用Putbuf(outq,hout),输出数据时,调用Getbuf(outq),提完数据后,调用Putbuf(emq,sout,三、缓冲区的工作方式 hinsoutsinhout,15,5.7 SPOOLing技术,问:,能否通过某种技术将一台独占设备改造成由多个用户共享的设备?,答:,能。SPOOLing技术就是用于将一台独占设备改造成共享设备的行之有效的技术。,一、什么是SPOOLing,为了缓和CPU的高速性与I/O设备低速性间的矛盾而引入了脱机输入、脱机输出技术。该技术是利用专门的外围控制机,将低速I/O设备上的数据传送到高速磁盘上;或者相反。事实上,当系统中引入了多道程序技术后,完全可以利用其中的一道程序,来模拟脱机输入时的外围控制机功能,把低速I/O设备上的数据传送到高速磁盘上;再用另一道程序来模拟脱机输出时外围控制机的功能,把数据从磁盘传送到低速输出设备上。这样,便可在主机的直接控制下,实现脱机输入、输出功能。此时的外围操作与CPU对数据的处理同时进行,我们把这种在联机情况下实现的同时外围操作称为,称为,假脱机操作,,,或称为,SPOOLing,(Simultaneaus Periphernal Operating On-Line),,5.7 SPOOLing技术 问:能否通过某,16,二、SPOOLing系统的组成,输入进程SP,1,输出进程SP,0,输入井,输出井,磁盘,输出,设备,输入,设备,输入缓冲区B,1,输出缓冲区B,0,二、SPOOLing系统的组成输入进程SP1输出进程SP0输,17,共享打印机,假定某系统的全部行式打印机采用了虚拟设备技术(即使用了SPOOLing,技术),当某进程要求打印输出时,,SPOOLing系统同意为它打印输出,但并不真正立即把打印机分配给该用户进程,而只为它做两件事:,由输出进程在输出井中为之申请一个空闲磁盘块区,并将要打印的数据送入其中;,输出进程再为用户进程申请一张空白的用户请求打印表,,为其分配一块存储空间,同时为该进程的输出数据建立一个文件(文件名可缺省),,并将用户的打印要求填入其中,再将该表挂到请求打印队列上。,该进程的输出数据实际上并未从打印机上输出,而只是以文件形式输出,并暂存放在输出SPOOLing存储区中。这个输出文件实际上相当于虚拟的行式打印机。各进程的输出都以文件形式暂时存放在输出SPOOLing存储区中并形成了一个输出队列,由输出SPOOLing控制打印机进程,依次将输出队列中的各进程的输出文件最后实际地打印输出。,共享打印机,18,提高了I/O的速度。,(2)将独占设备改造为共享设备。,(3)实现了虚拟设备功能。,SPOOL,系统的特点:,提高了I/O的速度。SPOOL系统的特点:,19,请多指导 谢谢,请多指导 谢谢,20,抓安全细节着眼,防隐患消除着手。,11月-24,11月-24,Saturday,November 16,2024,产品的质量是拓展的翅膀,航程无限,辉煌有期。,23:47:04,23:47:04,23:47,11/16/2024 11:47:04 PM,防微杜渐,警钟长鸣。,11月-24,23:47:04,23:47,Nov-24,16-Nov-24,坚持一流管理,生产一流产品。,23:47:04,23:47:04,23:47,Saturday,November 16,2024,生产是可喜的收获,安全是金色的种子。,11月-24,11月-24,23:47:04,23:47:04,November 16,2024,产品批次能鉴别,问题产生以解决。,2024年11月16日,11:47 下午,11月-24,11月-24,态度决定一切,细节决定成败。,16 十一月 2024,11:47:04 下午,23:47:04,11月-24,安全是幸福的源泉安全是效益的保障。,十一月 24,11:47 下午,11月-24,23:47,November 16,2024,十起事故九起违章,三令五申常抓常讲。,2024/11/16 23:47:04,23:47:04,16 November 2024,合理搬运周转,爱惜劳动成果。,11:47:04 下午,11:47 下午,23:47:04,11月-24,危险源点挂上牌,安全操作记心怀。,11月-24,11月-24,23:47,23:47:04,23:47:04,Nov-24,贯标认证,人人参与,从我做起。,20
展开阅读全文