进程上下文概念 --- context

聊天时经常听别人说到上下文切换,一直不知道什么是上下文,怎么个切换法。

今天百度了下才知道,上下文切换,一般都是指进程的上下文切换。

当一个进程在执行时,CPU中所有寄存器的值、进程的状态以及堆栈中的内容被称为该进程的上下文。

也就是关于当前进程的寄存器内容以及内存页表的详细信息等等内容,一句话概括也就是关于描述进程的信息。即TTS和CR3等中的内容。

当内核需要切换到另一个进程时,它需要保存当前进程的所有状态,即保存当前进程的上下文,以便在再次执行该进程时,能够得到切换之前的状态,进而继续执行下去。

在LINUX中,当前进程上下文均保存在进程的任务数据结构中。

在发生中断时,内核就保存被中断进程的上下文,转而去执行中断服务进程,以便中断服务程序结束时,能恢复被中断进程的执行。


补充一点,当一个进程运行时 ,产生了一个中断, CPU转而执行中断处理程序 , 虽然CPU当时保存了被中断进程的上下文, 但这和中断处理丝毫没有关系 , 也就是 说, 中断处理程序没有用到被中断进程的上下文。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值