KProcessHwInfo: Difference between revisions
Jump to navigation
Jump to search
Created page with "Category:Kernel objects Struct inside the KProcess object. Starts at KProcess+0x1C. Size : 0x4C bytes {| class="wikitable" border="1" |- ! Offset ! Type ! Description ..." |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
[[Category:Kernel objects]] | [[Category:Kernel objects]] | ||
Struct inside the [[KProcess]] object. Starts at KProcess+0x1C. | |||
Size : 0x4C bytes (on N3DS) | |||
Offsets above 0x8 are only for N3DS. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 12: | Line 13: | ||
|- | |- | ||
| 0x0 | | 0x0 | ||
| | | [[KObjectMutex]] | ||
| | | Mutex | ||
|- | |- | ||
| 0x8 | | 0x8 | ||
| | | u32[number of cores] | ||
| | | TLB entries for process need invalidating on core(i) | ||
|- | |- | ||
| 0x18 | | 0x18 | ||
Line 40: | Line 25: | ||
|- | |- | ||
| 0x1C | | 0x1C | ||
| KLinkedListNode* | | [[KLinkedListNode]]* | ||
| First KLinkedListNode in list of KMemoryBlocks | | First KLinkedListNode in list of KMemoryBlocks | ||
|- | |- | ||
| 0x20 | | 0x20 | ||
| KLinkedListNode* | | [[KLinkedListNode]]* | ||
| Last KLinkedListNode in list of KMemoryBlocks | | Last KLinkedListNode in list of KMemoryBlocks | ||
|- | |- | ||
| 0x24 | | 0x24 | ||
| | | u32 | ||
| | | Unknown | ||
|- | |- | ||
| 0x28 | | 0x28 | ||
| | | u32 | ||
| | | Unknown | ||
|- | |- | ||
| 0x2C | | 0x2C | ||
| | | void* | ||
| Translation table base | | Translation table base | ||
|- | |- | ||
Line 62: | Line 47: | ||
| u8 | | u8 | ||
| Context ID | | Context ID | ||
|- | |||
| 0x31 | |||
| bool | |||
| Indicates that a global TLB flush is needed | |||
|- | |- | ||
| 0x32 | | 0x32 | ||
Line 68: | Line 57: | ||
|- | |- | ||
| 0x34 | | 0x34 | ||
| | | u32 | ||
| | | Unknown | ||
|- | |- | ||
| 0x38 | | 0x38 | ||
| | | void* | ||
| End of userland memory for process | | End of userland memory for process | ||
|- | |- | ||
| 0x3C | | 0x3C | ||
| | | void* | ||
| Linear memory start for process | | Linear memory start for process (since [[8.0.0-18]]) | ||
|- | |- | ||
| 0x40 | | 0x40 | ||
| | | u32 | ||
| | | Unknown (since [[8.0.0-18]]) | ||
|- | |- | ||
| 0x44 | | 0x44 | ||
Line 88: | Line 77: | ||
|- | |- | ||
| 0x48 | | 0x48 | ||
| u32 | | u32* | ||
| MMU table | | Pointer to the MMU table in kernel FCRAM vmem | ||
|} | |} |
Latest revision as of 04:44, 4 December 2016
Struct inside the KProcess object. Starts at KProcess+0x1C.
Size : 0x4C bytes (on N3DS)
Offsets above 0x8 are only for N3DS.
Offset | Type | Description |
---|---|---|
0x0 | KObjectMutex | Mutex |
0x8 | u32[number of cores] | TLB entries for process need invalidating on core(i) |
0x18 | u32 | KMemoryBlock count for KProcess |
0x1C | KLinkedListNode* | First KLinkedListNode in list of KMemoryBlocks |
0x20 | KLinkedListNode* | Last KLinkedListNode in list of KMemoryBlocks |
0x24 | u32 | Unknown |
0x28 | u32 | Unknown |
0x2C | void* | Translation table base |
0x30 | u8 | Context ID |
0x31 | bool | Indicates that a global TLB flush is needed |
0x32 | bool | Process is the current running game/app |
0x34 | u32 | Unknown |
0x38 | void* | End of userland memory for process |
0x3C | void* | Linear memory start for process (since 8.0.0-18) |
0x40 | u32 | Unknown (since 8.0.0-18) |
0x44 | u32 | MMU table size |
0x48 | u32* | Pointer to the MMU table in kernel FCRAM vmem |