Programming with Intel Extended Memory 64 Technology: Migrating Software for Optimal 64-bit Performance

System. (prefix) An indication that the following object or property is beyond the pale of the average user, as system memory, system performance, [etc.].
Stan Kelly-Bootle, "The Computer Contradictionary"
Large-scale changes in processor architecture invariably have important ramifications on the operations of the larger ecosystem. This chapter moves beyond the features of the processor instructions and capabilities per se and examines how Intel EM64T affects the processor's interactions with the rest of the system, especially as concerns memory management. Like Chapter 5, it is designed for readers who need a deeper understanding of what is happening at lower levels of program execution. Readers who are not interested in this information can skip reading this chapter, although much of the contents gives greater context and clarity to topics in subsequent chapters.
Computer systems rely on two mechanisms to manage memory: paging and segmentation. On Intel processors, segmentation is mandatory, while paging is optional on all IA-32 models except Intel EM64T processors in IA-32e mode. As you can see in the following sections, the importance of segmentation is clearly on the wane. Intel EM64T makes sparse use of segments, even though for historical reasons and purposes of backwards compatibility, it could not do without segments entirely.
To understand how segments operate in 64-bit mode, it behooves us to look at how they work in 32-bit modes, and from there, trace the changes as Intel EM64T is added to the mix.
The total memory space that a processor is...