QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1682|回复: 7

摩托罗拉面试题

[复制链接]
发表于 2006-6-16 09:26:37 | 显示全部楼层 |阅读模式
在linux中,如果一个中断占用很长时间,此时又来了一个中断,操作系统将如何工作?
发表于 2006-6-16 12:57:11 | 显示全部楼层
执行新的中断,好像是
linux的硬中断应该是不分级别的。
回复

使用道具 举报

 楼主| 发表于 2006-6-16 13:09:18 | 显示全部楼层
那老的中断怎么办?
回复

使用道具 举报

发表于 2006-6-16 16:34:57 | 显示全部楼层
等新中断返回
回复

使用道具 举报

 楼主| 发表于 2006-6-16 17:10:05 | 显示全部楼层
也就是说新的中断得等老的中断执行完之后才能执行是吗?
回复

使用道具 举报

发表于 2006-6-16 23:19:07 | 显示全部楼层
如果中断服务程序在关中断条件下执行,那么它将丢失掉后到的中断。
如果新中断到来时,老的中断服务程序运行在开中断条件下,那么新中断程序会马上得到处理。
即使在开中断条件下,新中断到来时,如果是同一个中断源发出的中断,那么这两次中断会串行化处理,要等老中断执行完后,再将这个中断程序执行一遍。

中断服务程序的关键部分(上半部)执行时一般关中断(当然也可以把它给开中断了),服务程序中非关键的代码放在开中断条件下的下半部中执行。
回复

使用道具 举报

 楼主| 发表于 2006-6-16 23:23:15 | 显示全部楼层
什么叫开中断,什么叫关中断
回复

使用道具 举报

发表于 2006-6-17 11:29:10 | 显示全部楼层
开关中断就是中断服务程序是否允许新中断
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 14:27 , Processed in 0.038426 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表