其中断处理(完)的次序应当是1342。因为正处理1级的中断处理程序时,现行程序状态字中的中断级屏蔽位为0000,在其执行期间,任何新的同级和低级的中断请求都不可能进入中断响应排队器进行排队,所以,1级中断处理程序一定会先处理完。当执行3级中断服务程序时,由于现行程序状态字中的中断级屏蔽位为1000,即对1级中断请求是“开放”的,而对其他各级中断请求则处于“屏蔽”状态。所以,只要此时发生1级中断请求,它就能进入中断响应排队器去排队。从而在中断请求排队的微操作发出时,就可打断3级中断服务程序的执行,交换程序状态字,转去执行1级中断处理程序,使之被优先处理完。而在执行3级中断服务程序时,由于现行程序状态字对2、3、4级的中断请求处于被“屏蔽”的状态,所以,它们都不能打断正在执行的3级中断处理程序。其他的情况可以依此类推得到。
3.3.若机器共有5级中断,中断响应优先次序为1→2→3→4→5,现要求其实际的中断处理次求序1→4→5→2→3。
(1)设计各级中断处理程序的中断级屏蔽位(令“1”对应于开放,“0”对应于屏蔽); 略
(2)若在运行用户程序时,同时出现第4,2级中断请求,而在处理第2级中断未完成时,又同时出现第1,3,5级中断请求,请画出此程序运行过程示意
图。
答:( 选自老版主的答案)
1)五个级别的中断屏蔽位分别为(1开放;0屏蔽): 1:00000 2:10011 3:11011 4:10000 5:10010 2)中断过程示意图:如图
a. 2、4中断同时出现,进行排队器; b. 按中断响应优先次序,2响应; c. 此时屏蔽字为10011,所以; d. 响应4,中断4运行结束,回2;
e. 1、3、5进入排队器,此时屏蔽字为10011,且1优先级最高,所以; f. 响应1,1运行结束,回2,根据屏蔽字,所以; g. 5响应,5运行结束,回2;
h. 根据屏蔽字,不响应3,所以2运行结束;回用户程序; i. 3还在排队器,响应3,运行直到结束,回用户程序
3.4.简述字节多路,数组多路和选择通道的数据传送方式。
答:字节多路通道适用于连接大量的字符类低速设备。它以字节交叉方式轮流为多台设备服务,它可有多个子通道,它们分时进入通道。
数组多路通道适合于连接多台高速设备,每传送一个定长块就选择一次设备,多台设备以成组交叉方式工作。它可有多个子通道。它们分时进入通道。
选择通道方式适合于优先级高的高速设备,让它独占通道,数据传送以不定长方式进行,在数据传送期只选择一次设备。
3.5 如果通道在数据传送期中,选择设备需9.8μs,传送一个字节数据需0.2μs。某低速设备每隔500μs发出一个字节数据传送请求,问至多可接几台这种低速设备?对于如下A~F6种高速设备,一次通讯传送的字节数不少于1024个字节,问哪些设备可以挂在此通道上?哪些则不能?其中A—F设备每发出一个字节数据传送请求的时间间隔分别为(单位为μs): 设备 A B C D E F
发申请间隔 0.2 0.25 0.5 0.19 0.4 0.21 答:
(1)∵选择设备需9.8μs,传送一个字节需0.2μs ∴该通道完成一个字节的传送需9.8+0.2=1μs
∵某低速设备每隔500μs发出一字节数据请求,为使数据不丢失,该通道可连设备数至多为500μs/1μs=500台。
(2)对于高速设备,由于一次传送字节数不少于1024byte ∴该通道一次传送数据的时间为9.8μs+1024×0.2μs=214.6μs 由表中可得出每台设备发送1024字节的时间间隔分别为 A B C D E F
单位μs 204.8 256 512 194.56 409.6 215.04
∴为使数据不丢失,B、C、E、F可挂在该通道上。A、D不能。 3.6 某字节多路通道连接6台外设,某数据传送速率分别如表中所列。 设备 1 2 3 4 5 6
传送速率(KB/s) 50 15 100 25 40 20
(1)计算所有设备都工作时的通道实际最大流量: 答:实际最大流量=50+15+l00+25+40+20=250KB/S。
(2)如果设计的通道工作周期使通道极限流量恰好与通道最大流量相等,以满足流量设计的基本要求,同时让速率越高的设备被响应的优先级越高。当6台设备同时发出请求开始,画出此通道在数据传送期内响应和处理各外设请求的时间示意图。由此你发现了什么问题?
答:由表可解各设备连续发送两个字节的时间间隔分别为: 1 2 3 4 5 6
20μs 67μs 10μs 40μs 25μs 50μs
KB=1024B,s=10^6μs ,设备1的时间间隔为10^6/(50*1024)≈20μs ,其他如同1。
为简化计算,可视1024为1000
由此发现由于高速设备的响应优先级高,使低速设备6和设备2造成数据丢失。
(3)在(2)的基础上,在哪台设备内设置多少个字节的缓冲器就可以避免设备信息丢失?那么,这是否说书中关于流量设计的基本要求是没有必要的了呢?为什么?
答:在设备6和2中各设两个字节的缓冲区即可。
这并不说明流量设计的基本条件是不必要的,因为若基本条件不满足,无论设备优先级如何确定总有设备的信息会丢失。
阿利:这是我画的通道处理设备请求的示意图。(请点击看全图)
由图中可看出,6号设备有丢失信息现象,解决的办法是在6号设备内设置2个字节的缓冲器。
3.7 通道型I/O系统由一个字节多路通道A(其中包括两个子通道Al和A2),两个数组多路通道B1和B2及一个选择通道C构成,各通道所接设备和设备的数据传送速率如表所示。 (见课本)
(1)分别求出各通道应具有多大设计流量才不会丢失信息;
答:子通道Al的最大实际流量=50+35+20+20+50+35+20+20=250KB/S=O.25MB/S
∴子通道A1至少应有0.25MB/S的流量才不丢失信息。
同理子通道A2的流量必须≥0.25MB/S 子通道B1的实际最大流量=0.5MB/S ∴B1流量至少为0.5MB/S。
同理子通道B2流量至少设计成0.5MB/S。 选择通道C的流量至少设计成0.5MB/S。