我对中断的理解

来源:互联网 发布:淘宝上可爱文具店 编辑:程序博客网 时间:2024/05/16 08:46
  对于单线程的系统来说,系统无法同时去思考两件事情,中断interrupt的地位就非常重要了,就好像我们一个人按照时间作息,到了时间就要作相应的事情,而不能到了吃饭的时候了还继续工作,到了睡觉的时候还在吃饭,从人一出生就进入了一个while(1)循环,直到生命的结束,线程也就终止,控制人的是一个定时器time1和时间标志位n1,n1的每一个值都对应一个中断interruput,n1控制着人的大的生命进程,n1=1时候要说话了,n1=5的时候要上小学了,n1=25,那就是该结婚了,但是除公认的time1外我们还有自己的时钟time2也有自己的时间标志位n2,正是这个time2才有的多样的人生,你n1=1说话,我偏n1=2说话,n1=25结婚,我偏n1=30结婚,那是因为自己的时钟time2控制着 ,两个时钟时时在赛跑,有的人time2远远快于time1,也有的慢,但是如果中断仅有这些的话,那么中断就没有那么神奇了,我感觉中断神奇的智能的地方在所有这些事件的优先级上,没有优先级的话,一个switch()也可以解决到这些事情,我们把人生的每一个事件设置一个优先级,所以关系生命的优先级最高,例如当n2=13岁2月8号下午2点,去上学的路上发生了撞车,那么威胁生命的事件发生了,这个事件的优先级最高,应停止现在的一切工作,来处理这个中断,处理这个中断的时候设置一个标签flag=0,来判断这个事件的处理进度,一旦处理结束,flag=1,跳回到主程序继续上学。