Windows 如果只有一组寄存器,多个进程如何能同时运行?

Windows 如果只有一组寄存器,多个进程如何能同时运行?,windows,assembly,operating-system,x86,Windows,Assembly,Operating System,X86,我目前正在学习x86汇编。系统上的每个进程都可以使用可用内存的一部分,因此每个进程不能相互重写内存。但是一个系统上只有一组寄存器,那么多个进程如何能够同时运行,我的意思是,如果进程a使用eax寄存器,而进程B也使用寄存器,那么它们不会相互覆盖数据吗?或者操作系统是否为每个进程创建某种类型的“虚拟寄存器”?寄存器内容保存在线程上下文更改中,并为新线程还原。寄存器块保存在中断线程的堆栈上,或作为“线程控制块”内核结构的一部分。寄存器内容保存在线程上下文更改中,并为新线程还原。寄存器块保存在中断线程的

我目前正在学习x86汇编。系统上的每个进程都可以使用可用内存的一部分,因此每个进程不能相互重写内存。但是一个系统上只有一组寄存器,那么多个进程如何能够同时运行,我的意思是,如果
进程a
使用
eax
寄存器,而
进程B
也使用
寄存器,那么它们不会相互覆盖数据吗?或者操作系统是否为每个进程创建某种类型的“虚拟寄存器”?

寄存器内容保存在线程上下文更改中,并为新线程还原。寄存器块保存在中断线程的堆栈上,或作为“线程控制块”内核结构的一部分。

寄存器内容保存在线程上下文更改中,并为新线程还原。寄存器块保存在中断线程的堆栈上,或作为“线程控制块”内核结构的一部分。

寄存器内容保存在线程上下文更改中,并为新线程还原。寄存器块保存在中断线程的堆栈上,或作为“线程控制块”内核结构的一部分。

寄存器内容保存在线程上下文更改中,并为新线程还原。寄存器块要么保存在中断线程的堆栈上,要么作为“线程控制块”内核结构的一部分。

大多数处理器都有将进程上下文加载和保存到此类内存块的指令。

大多数处理器都有将进程上下文加载和保存到此类内存块的指令处理器有将进程上下文加载和保存到这样一个内存块的指令

大多数处理器都有将进程上下文加载和保存到这样一个内存块的指令

没有任何东西真正同时运行。:)它在一个具有多个CPU核心的系统上运行。没有任何东西可以同时运行。:)它在一个具有多个CPU核心的系统上运行。没有任何东西可以同时运行。:)它在一个具有多个CPU核心的系统上运行。没有任何东西可以同时运行。:)它在具有多个CPU核心的系统上运行。