OpenSolaris
 
 Open Source Software for Solaris
An OpenSolaris Community Site
 Current Software Packages
Open Bug Tracking
   

Solaris 2.6 PPC Memory Map

              Physical memory layout.
availmem     +-----------------------+
             :                       :
             :       page pool       :
             :                       :
             |-----------------------|
             |       Page Table      |
             | (aligned to its size) |
PAGETABLE    |-----------------------|
             |                       |
             |       page pool       |
             |                       |
             |-----------------------|
             :                       :
             |   kadb, unix, etc.    |
             :                       :
             |-----------------------|
             |    Ramdisk (temp)     |       (8-16 M)
0x00100000   |-----------------------|
             |    boot code/data/etc.|       (~1M)
0x00009000   |-----------------------|
             |    boot stack         |       (8 K)
0x00007000   |-----------------------|
             |    msgbuf             |       (8 K)
0x00005000   |-----------------------|
             |    rtt, fast syscall  |       (4 K)
0x00004000   |-----------------------|
             |       Level-0         |       (16 K)
             | Interrupt handlers    |
0x00000000   +-----------------------+

               Virtual memory layout.
             /-----------------------\
             |       INVALID         |
0xFFF00000   |-----------------------|
             |       debugger        |                       (1 M)
0xFFE00000   |-----------------------|- DEBUGSTART
             :                       :
             |       Ramdisk         |                       (15 M)
             |  (debugging only)     |
             :                       :
0xFEF00000  -|-----------------------|- RAMDISK
             :                       :
             |       unused          |
             :                       :
             |-----------------------|
             |    exec args area     |  NCARGS               (1 M)
0xF3800000  -|-----------------------|- ARGSBASE
             :                       :
             |  PCI/ISA I/O SPACE    |                       (8 M)
             :   (non cacheable)     :
0xF3000000  -|-----------------------|- PCIISA_VBASE
             |       segkmap         |  SEGMAPSIZE           (16 M)
0xF2000000  -|-----------------------|
             |                       |
             :       Page Table      :  MAXPTSIZE            (32 M)
             | (may be mapped by BAT)|
0xF0000000  -|-----------------------|- PAGE_TABLE
             :                       :
             |       unused          |
             :                       :
0xEF000000  -|-----------------------|- SYSLIMIT
             :                       :
             |       Sysmap          | SYSPTSIZE             (128 M)
             :                       :
             |                       |
0xE7003000  -|-----------------------|
             |        msgbuf         |                       (8 K)
0xE7001000  -|-----------------------|- V_MSGBUF_ADDR
             |     not used (4k)     |
0xE7000000   |-----------------------|- SYSBASE
             :                       :
             |       unused          |
             :                       :
             |-----------------------|- eecontig
             |        segkp          |
             |-----------------------|- econtig
             |    vm structures      |
             | (page structures      |
             |  page hash            |
             |  memseg structures)   |
             |-----------------------|- e_data
             |       kernel data     |
             | (data sections for    |
             |  genunix, unix, rtld) |
0xE2000000  -|-----------------------|- s_data = (KERNELBASE + 32MB)
             | text sections of      |
             | kernel dynamic        |
             | modules (managed by   |
             | lokmem_alloc())       |
             |-----------------------|- e_text
             |       kernel text     |
             | (text sections for    |
             |  genunix, unix, rtld) |
0xE0001000  -|-----------------------|- s_text
             |  user copy red zone   |                       (4K)
             |       (invalid)       |
0xE0000000  -|-----------------------|- KERNELBASE
             |       user stack      |
             :                       :
             |   dynamic segments    |
             :                       :
             |       user data       |
             |-----------------------|- (user data aligned for 64K)
             |       user text       |
0x02000000   |-----------------------|
             :                       :
             |   dynamic segments    |
             :                       :
0x00010000  -|-----------------------|
             |       not used        |
0x00000000  _|_______________________|


  OpenSolaris and Solaris are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.      UNIX is a registered trademark in the United States and other countries, exclusively licensed through X/Open Company, Ltd.      All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the United States and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc.      All other logos and trademarks are registered through their respective owners.      ©2002-2006 blastwave.org™      See “Terms of Use”      Sun™ Logo and OpenSolaris™ Published with Permission from Sun Microsystems, Inc. Valid HTML 4.01!
Valid CSS