In memory of Ben “bushing” Byer, who passed away on Monday, February 8th, 2016.

Changes

Jump to navigation Jump to search
494 bytes added ,  18:51, 10 December 2015
no edit summary
Line 185: Line 185:     
==Virtual Memory Map==
 
==Virtual Memory Map==
*0x01000000 - 0x01800000 '''Loader and system libraries'''
+
{| class="wikitable"
*0x0??????? - 0x10000000 '''App executable and libraries''' (start varies, but end is always 0x10000000)
+
|-
*0x10000000 - 0x50000000 '''Application/library data area''' (may be smaller)
+
! Virtual address range
*0xa0000000 - 0xe0000000 '''Overlay of application memory''' (used by loader?)
+
! Physical address range
*0xe0000000 - 0xe4000000 '''Some sort of hardware communication area'''
+
! Size
*0xefe00000 - 0xefe80000 '''Loader data area''' (only mapped when running loader)
+
! Userland memory permissions
*0xf4000000 - 0xf6000000 '''MEM1'''
+
! Kernel-mode memory permissions
*0xf6000000 - 0xf6800000 '''Unknown'''
+
! Description
*0xf8000000 - 0xfb000000 '''Read-only shared data (system fonts mostly)'''
+
|-
*0xfc000000 - 0xfc0c0000 '''{{hw|Processor Interface}}'''
+
| 0x01000000 - 0x01800000
*0xfc200000 - 0xfc280000 '''GX2 TCL registers'''
+
|
*0xfc280000 - 0xfc2a0000 '''DSP registers'''
+
| 0x800000
*0xfc2a0000 - 0xfc2c0000 '''GX2 FIFO space? (Radeon PKT3 sent here)'''
+
|
*0xfc320000 - 0xfd000000 '''Espresso OTP (and other stuff?)'''
+
|
*0xfd000000 - 0xfd?????? '''{{hw|Latte registers}}'''
+
| Loader and system libraries
*0xfd040250 - 0xfd046c00 '''I2C registers'''
+
|-
*0xfd046e00 - 0xfd060520 '''AI registers?'''
+
| 0x0??????? - 0x10000000
*0xff200000 - 0xff280000 '''Kernel heap'''
+
|
*0xffe00000 - 0xfff20000 '''Kernel ancast image'''
+
|
*0xffffffe0(?) - 0xfffffffc(?) '''Per-thread data (e.g. pointer to thread descriptor and thread queue)'''
+
|
 +
|
 +
| App executable and libraries (start varies, but end is always 0x10000000)
 +
|-
 +
| 0x10000000 - 0x50000000
 +
|
 +
| 0x40000000
 +
|
 +
|
 +
| Application/library data area (may be smaller)
 +
|-
 +
| 0xa0000000 - 0xe0000000
 +
|
 +
| 0x40000000
 +
|
 +
|
 +
| Overlay of application memory (used by loader?)
 +
|-
 +
| 0xe0000000 - 0xe4000000
 +
| 0x14000000 - 0x18000000
 +
| 0x04000000
 +
|
 +
|
 +
| Some sort of hardware communication area
 +
|-
 +
| 0xefe00000 - 0xefe80000
 +
|
 +
|
 +
|
 +
|
 +
| Loader data area (only mapped when running loader)
 +
|-
 +
| 0xf4000000 - 0xf6000000
 +
| 0x00000000 - 0x02000000
 +
| 0x02000000
 +
|
 +
|
 +
| MEM1
 +
|-
 +
| 0xf6000000 - 0xf6800000
 +
|
 +
|
 +
|
 +
|
 +
| Unknown
 +
|-
 +
| 0xf8000000 - 0xfb000000
 +
|
 +
|
 +
|
 +
|
 +
| Read-only shared data (system fonts mostly)
 +
|-
 +
| 0xfc000000 - 0xfc0c0000
 +
|
 +
|
 +
|
 +
|
 +
| {{hw|Processor Interface}}
 +
|-
 +
| 0xfc200000 - 0xfc280000
 +
|
 +
|
 +
|
 +
|
 +
| GX2 TCL registers
 +
|-
 +
| 0xfc280000 - 0xfc2a0000
 +
|
 +
|
 +
|
 +
|
 +
| DSP registers
 +
|-
 +
| 0xfc2a0000 - 0xfc2c0000
 +
|
 +
|
 +
|
 +
|
 +
| GX2 FIFO space? (Radeon PKT3 sent here)
 +
|-
 +
| 0xfc320000 - 0xfd000000
 +
|
 +
|
 +
|
 +
|
 +
| Espresso OTP (and other stuff?)
 +
|-
 +
| 0xfd000000 - 0xfd??????
 +
|
 +
|
 +
|
 +
|
 +
| {{hw|Latte registers}}
 +
|-
 +
| 0xfd040250 - 0xfd046c00
 +
|
 +
|
 +
|
 +
|
 +
| I2C registers
 +
|-
 +
| 0xfd046e00 - 0xfd060520
 +
|
 +
|
 +
|
 +
|
 +
| AI registers?
 +
|-
 +
| 0xff200000 - 0xff280000
 +
|
 +
|
 +
|
 +
|
 +
| Kernel heap
 +
|-
 +
| 0xffe00000 - 0xfff20000
 +
|
 +
|
 +
|
 +
|
 +
| Kernel ancast image
 +
|-
 +
| 0xffffffe0(?) - 0xfffffffc(?)
 +
|
 +
|
 +
|
 +
|
 +
| Per-thread data (e.g. pointer to thread descriptor and thread queue)
 +
|}
340

edits

Navigation menu