当前位置: 技术问答>linux和unix
中断的问题???
来源: 互联网 发布时间:2016-03-13
本文导语: 中断处理程序运行时如果有高优先级中断发生,则运行高优先级中断的中断处理程序,运行完之后再去执行原来低优先级中断的中断处理程序.如果有低优先级中断发生,则屏蔽中断并保存中断,等目前运行的中断处理程序...
中断处理程序运行时如果有高优先级中断发生,则运行高优先级中断的中断处理程序,运行完之后再去执行原来低优先级中断的中断处理程序.如果有低优先级中断发生,则屏蔽中断并保存中断,等目前运行的中断处理程序执行完后再执行保存的中断.在软中断中可以响应中断,但如果用到锁就要屏蔽中断,屏蔽中断之后如果有中断发生也保存中断,等锁释放之后再开中断,之后一个时间(什么时间?)运行保存的中断.这是我的理解,请大家看一下哪些说的不对
|
1. 中断处理程序运行时如果有高优先级中断发生,则运行高优先级中断的中断处理程序,运行完之后再去执行原来低优先级中断的中断处理程序.
正确
2. 如果有低优先级中断发生,则屏蔽中断并保存中断,
是否这样说有待考证,据我所知在某些CPU中是不用屏蔽低优先级的中断的,我这里说的“屏蔽”是指“禁止”。
硬件会自动完成这些:高优先级的中断在处理时,如果低优先级的中断发生了,硬件会记录下来,等高优先级的服务完后,低优先级的才“触发CPU”
3. 等目前运行的中断处理程序执行完后再执行保存的中断.
正确
4. 在软中断中可以响应中断,但如果用到锁就要屏蔽中断,屏蔽中断之后如果有中断发生也保存中断,等锁释放之后再开中断,
正确
5. 之后一个时间(什么时间?)运行保存的中断.
我没什么建议
正确
2. 如果有低优先级中断发生,则屏蔽中断并保存中断,
是否这样说有待考证,据我所知在某些CPU中是不用屏蔽低优先级的中断的,我这里说的“屏蔽”是指“禁止”。
硬件会自动完成这些:高优先级的中断在处理时,如果低优先级的中断发生了,硬件会记录下来,等高优先级的服务完后,低优先级的才“触发CPU”
3. 等目前运行的中断处理程序执行完后再执行保存的中断.
正确
4. 在软中断中可以响应中断,但如果用到锁就要屏蔽中断,屏蔽中断之后如果有中断发生也保存中断,等锁释放之后再开中断,
正确
5. 之后一个时间(什么时间?)运行保存的中断.
我没什么建议
|
处在进程上下文中的内核代码,代表调用进程执行操作,能够访问该进程的地址空间的所有数据。
处理中断的内核代码和进程是异步的,与任何一个特定进程无关,因此不能访问访问用户空间。
处理中断的内核代码和进程是异步的,与任何一个特定进程无关,因此不能访问访问用户空间。