Domanda

As mentioned here, can anyone explain what is meant by a 'flat' 32 bit space?

Text for the lazy:

Another interesting feature of the architecture is a virtual address system which maps all addresses into a 52-bit space. In this way applications can share memory in a "flat" 32-bit space, and all of the programs can have different blocks of 32 bits each.

È stato utile?

Soluzione

A "flat" address space means that the virtualized 32-bit space used for each program is independently and directly accessible in consecutive offsets starting at byte 0 all the way through xFFFFFFFF.

Contrast this with what are typically termed "segmented" address spaces where an address is composed of a segment number or descriptor, and then a smaller number of bits as an offset into that segment/descriptor.

The memory management system performs the sleight of hand to translate a 32-bit address reference into a specific location within the actual 52-bit address space provided by the underlying architecture.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top