原子上下文(Atomic Context)
- 定义:原子本意是“不能被进一步分割的最小粒子”,而原子操作指的是“不可被中断的一个或一系列操作”。在操作系统中,原子上下文通常与原子操作相关,这些操作在执行过程中不会被其他操作或中断打断,从而保证其完整性。
- 特点:
- 不可分割性:原子操作在执行过程中不会被其他操作打断,保证了操作的完整性。
- 原子性保证:通过硬件和软件的机制,确保原子操作在执行过程中的原子性。
- 上下文环境:虽然原子操作涉及到上下文环境,但通常不会显式地提及“原子上下文”这一概念,因为它更多地关注于操作的原子性,而不是上下文环境本身。
中断上下文(Interrupt Context)
- 定义:中断上下文是指当CPU接收到硬件设备的中断请求时,为了处理该中断而创建的上下文环境。在这个过程中,操作系统需要保存和恢复一些关键的现场信息,以便在中断处理完成后能够恢复先前的运行状态。
- 特点:
- 触发条件:中断上下文是由硬件设备的中断请求触发的。
- 数据结构:中断上下文包含了一些与进程或线程不同的特殊数据结构和寄存器值,如中断号、上下文标志位、用户空间堆栈指针和内核空间堆栈指针、线程状态以及CPU寄存器状态等。
- 上下文切换:当CPU处理中断时,会暂停当前运行的进程或线程,并切换到中断上下文。处理完中断后,再恢复先前的运行状态。