2012-04-12 177 views
0

寄存器(如eax,ebx,ecx,edx,esp,ebp等)在处理器内物理可用,还是从编程的角度来看它们是虚拟内存位置?Linux内核操作系统寄存器

+0

你想用这些寄存器做什么?这些真实不在记忆中。你需要编写一些汇编器来直接访问寄存器 – Cougar 2012-04-12 10:48:11

回答

1

它们在Intel CPU中非常物理存在。 Linux运行在这些CPU之上。

2

您指定的寄存器在Intel处理器上全部物理可用,而不是虚拟内存。虚拟内存的概念在这里并不适用。

1

它们在处理器中可用。根据处理器的不同,您可能会有更多的寄存器或比您指定的更少的寄存器。

Wikipedia "Processor register"

在计算机体系结构中,处理器寄存器可作为一个CPU或其他数字处理器的一部分存储的量小。这些寄存器(通常)通过主存储器以外的机制来寻址,并且可以更快地被访问。几乎所有的计算机,加载 - 存储体系结构或不加载数据都是通过一些机器指令将数据从较大的存储器加载到寄存器中,然后通过计算机指令将数据用于算术,操作或测试。

1

寄存器是指定的硬件平台。 EAX,EBX或其他任何类似RAX,RBX是86在我们的电脑注册 他们真的存在,以及物理avaialble 在86寄存器不会被映射到内存

1

寄存器是物理,它们是机器的体系结构的一部分,而不是操作系统或任何其他软件。由于register renaming,它们在芯片上可能没有相应的硅片,但从任何软件(包括OS)的角度来看,它们都是硬件的一部分,并且与存储器地址不同。