u_int intr_mask[ICU_LEN] “sets of intrs masked during handling of 1”這是英文注解,對(duì)應(yīng)某一中斷的中斷屏蔽集,這個(gè)變量我是花了不少時(shí)間但是還是看不懂,希望有朋友給說說,我只是猜測(cè)一個(gè)我認(rèn)為合理的解釋.每個(gè)硬件中斷都應(yīng)該在ipl中把比它優(yōu)先級(jí)低的中斷屏蔽,這樣的目的是為了高優(yōu)先級(jí)中斷能在適當(dāng)?shù)臅r(shí)候注意到有低優(yōu)先級(jí)的中斷發(fā)生了,從而能把低優(yōu)先級(jí)中斷掛在ipending中而不至于被低優(yōu)先級(jí)中斷,等到高優(yōu)先級(jí)中斷結(jié)束時(shí)低優(yōu)先級(jí)中斷得到處理.cpl中從0-31位優(yōu)先級(jí)遞增,最高是0,最低是31位對(duì)應(yīng)的中斷,硬中斷比軟中斷優(yōu)先級(jí)高,比如中斷7的是intr_mask[7]
=0xffffff80,0到6位的優(yōu)先級(jí)比7要高所以是不能屏蔽的,8到31位對(duì)應(yīng)的中斷優(yōu)先級(jí)比7低所以會(huì)屏蔽.中斷7本身也屏蔽,由于中斷并不是用完所有的32位,所以為了減少無(wú)用的處理,沒有和中斷聯(lián)系的位將不會(huì)是’1’而是’0’.