レジスタ(eax、ebx、ecx、edx、esp、ebpなど)はプロセッサ内で物理的に利用可能ですか、それともプログラミングの観点から仮想メモリの場所ですか?
5 に答える
指定したレジスタはすべて、仮想メモリではなく、Intel プロセッサで物理的に利用できます。ここでは、仮想メモリの概念は実際には適用されません。
これらは、Intel CPU 内に物理的に存在します。Linux はそれらの CPU 上で実行されます。
レジスタは物理的なものであり、OS やその他のソフトウェアではなく、マシンのアーキテクチャの一部です。レジスタの名前変更により、チップ上に対応するシリコンが 1 つも存在しない場合がありますが、ソフトウェア (OS を含む) の観点からは、これらはハードウェアの一部であり、メモリ アドレスとは異なります。
これらはプロセッサで使用できます。プロセッサによっては、追加のレジスタがある場合や、指定したレジスタよりも少ない場合があります。
コンピュータ アーキテクチャでは、プロセッサ レジスタは、CPU またはその他のデジタル プロセッサの一部として使用できる少量のストレージです。このようなレジスタは (通常) メインメモリ以外のメカニズムによってアドレス指定され、より迅速にアクセスできます。ほとんどすべてのコンピューターは、ロード/ストア アーキテクチャであろうとなかろうと、より大きなメモリからレジスタにデータをロードし、そこで何らかの機械命令によって算術演算、操作、またはテストに使用されます。
レジスタはハードウェア プラットフォームで指定されます。Eax、ebx、または rax、rbx のようなものは x86 レジスタです これらはコンピュータに実際に存在し、物理的に利用可能 x86 ではレジスタはメモリにマップされません