linux等操作系统,关中断的行为是否会影响系统的正常运行?

2019-10-16 05:40发布

如题

据我了解到,像原子操作,为了不被中断打断,就在操作前把总中断关闭。
这样的话就出现一个问题了,就是如果我这时候其他地方来了个中断,要处理的,那我这个中断不就是等于丢失了吗?
那我的整个系统不就不能正常运行了!!?   


关于这个关中断的行为,我想知道 是指把所有的中断都丢失 还是 指把这个中断标志挂起不执行  等原子解锁后,再执行?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
操作系统
1楼-- · 2019-10-16 08:19
当然是中断挂起,原子操作完毕。再执行中断服务程序了。丢失了中断信息 那怎么能行。
2楼-- · 2019-10-16 10:01
操作系统 发表于 2016-12-2 12:46
当然是中断挂起,原子操作完毕。再执行中断服务程序了。丢失了中断信息 那怎么能行。

但是也有这样 也是有可能会丢失数据!  就像串口,必须尽快读取,这种情况要怎么办呢?
东北小辉辉
3楼-- · 2019-10-16 12:25
 精彩回答 2  元偷偷看……
憨厚诚实大叔
4楼-- · 2019-10-16 12:30
这个要你自己考虑了,关中断的时间大约多长,串口2个数据时间间隔如何
zc123
5楼-- · 2019-10-16 12:43
LINUX不清楚,但单片机中关闭中断不会丢失中断信息。
中断实现的原理是,外部信息到来,置状态位,如果此时相应中断打开,则触发中断。
即使你关闭了中断,状态位也是会置起来的(直到硬件或者软件清除), 当你打开中断后,立即触发了。
除非你关闭中断中,一个中断触发了两次,后一个就会覆盖掉前一个的数据(所以开关中断的时间要尽可能短)
xyl210xyl
6楼-- · 2019-10-16 18:18
除了rtx不关中断,其他操作系统都关,但临界区代码要短

一周热门 更多>