32 v / s 64-bit architecture - virtual address space

I attend an OS course in which the instructor mentions 64-bit architectures with 64-bit architecture.

My understanding of this difference from my architecture class is that the 32-bit version of a 64-bit 64-bit file indicates the processor word size, register size, and the size by which the ALU can perform calculations.

The instructor said: "Today, 64-bit architectures are used, so the virtual address space of the process is 64 bits."

I want to ask, 32 bit 64 bit / s also indicates whether the process size is 32 bit v / s 64 bit virtual address space? If not, is there a dependency on the size of the virtual address space on the type of architecture (32 bit / 64 bit).

+4
source share
2 answers

No. Even if you have a 64-bit architecture, the virtual address space must be smaller than the shared virtual address space in order to make the operating system work.

, . 64- , 32- . , . 64- Windows 8 ( 64- 2 ^ 24 ), 32- - 2 (4 ). 32- ( , 64- ).

32- Windows ( Linux - , ) 2 - 3 , .

, 64- 64- . 64- 32- 64- . , 64- , 32- 32- ; Intel Itanium.

32- (PAE), 4 , Windows PAE 64 - 128 .

, 32- "" 4 PAE, . , - 2 ^ 64 , PAE 64- .


, :

, , . Virtual Machine Monitor (VMM). VMM . Linux Windows ( , , ).

/ 64- 32- , 4 / . 32- 4 / / PAE, 64- , PAE, , 2 ^ 32 = 4 * 1024 * 1024 * 1024 = 4 . 32- 1 .

+4

- 32- 64- , 32 cpu . , , , (push, mov, pop, store), . 64- 2 ^ 64 - (16 exbibytes), 32 2 ^ 32 = 4 .

0

Source: https://habr.com/ru/post/1536271/


All Articles