For further information about PowerPC 64 bit processor, see PowerPC 64-bit Kernel Internals by David Engebretson, Mike Corrigan & Peter Bergner at http://lwn.net/2001/features/OLS/pdf/pdf/ppc64.pdf. You can find further in formation about System p hardware at http://www-1.ibm.com/servers/eserver/pseries/linux/.

The following describes the four address types used in System p systems. They are effective, virtual, physical, and block:

Effective address: The effective address, also called the logical address, is a 64-bit address included in the machine language instruction of a program to fetch an instruction, or to fetch and store data. It consists of an effective segment ID (bits 0-35), a page offset within the segment (bits 36-51), and a byte offset within the page (bits 52-63).

Figure 5-39: Effective address

Virtual address: The virtual address, which is equivalent to the linear address of System x, is a 64-bit address used as an intermediate address while converting an effective address to a physical address. It consists of a virtual segment ID (bits 0-35), a page offset within the segment (bits 36-51), and a byte offset within the page (bits 52-63). All processes are given a unique set of virtual addresses. This allows a single hardware page table to be used for all processes. Unique virtual addresses for processes are computed by concatenating the effective segment ID (ESID) of the effective address with a 23-bit field, which is the context number of a process. All processes are defined to have a unique context number. The result is multiplied by a large constant and masked to produce a 36-bit virtual segment ID (VSID). In case of kernel addresses, the high order nibble is used in place of the context number of the process.

Figure 5-40: Virtual address

Physical address: The physical address is a 64-bit address of a memory cell in a physical memory chip.

Block address: A block is a collection of contiguous effective addresses that map to contiguous physical addresses. Block sizes vary from 128 KB to 256 MB. The block address is the effective address of a block.

99

Page 111
Image 111
IBM 10 SP1 EAL4 manual Effective address