中断上下文与进程上下文对比

本文深入探讨Linux内核上下文的概念,包括进程上下文与中断上下文的区别,以及中断栈的作用。解释了中断上下文的特点,如不能睡眠及避免使用可能引起阻塞的函数,同时介绍了中断处理程序的编写原则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 进程上下文是指内核所处的一种操作模式,代表内核进程执行系统调用或者运行内核线程。

在进程上下文中,可以通过 current 宏,关联当前进程。

进程上下文可以睡眠,也可以调用调度程序。

2. 当执行一个中断处理程序时,内核处于中断上下文(interrupt context)中.

中断上下文和进程并没有什么关系,中断上下文不可以睡眠,也不可以调用可以睡眠的函数。

中断处理程序必须尽可能的迅速、简洁,尽量把复杂的工作从中断处理程序中分离出来,放在下半部执行,因为下半部可以在更合适的时间运行。

3. 中断栈

早期的linux没有中断栈,后来有了。

每个处理器都拥有一个自己的中断栈,大小为1页。

中断处理程序不必关心中断栈如何设置,或内核栈的大小是多少,尽量节约内核栈空间就对了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值