Kernel: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 217: | Line 217: | ||
| bool | | bool | ||
| HasInited | | HasInited | ||
|} | |||
= KPort = | |||
Size: 0xA8 | |||
Inherits from: [[#KAutoObject]] | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset | |||
! Type | |||
! Description | |||
|- | |||
| 0 | |||
| [[#KAutoObject]] | |||
| | |||
|- | |||
| 0x10 | |||
| [[#KServerPort]] | |||
| ServerPort | |||
|- | |||
| 0x60 | |||
| [[#KClientPort]] | |||
| ClientPort | |||
|- | |||
| 0x98 | |||
| u64 | |||
| | |||
|- | |||
| 0xA0 | |||
| bool | |||
| HasInited | |||
|- | |||
| 0xA1 | |||
| bool | |||
| IsLight [?] | |||
|} | |||
== KServerPort == | |||
Size: 0x50 | |||
Inherits from: [[#KSynchronizationObject]] | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset | |||
! Type | |||
! Description | |||
|- | |||
| 0 | |||
| [[#KSynchronizationObject]] | |||
| | |||
|- | |||
| 0x28 | |||
| [[#KLinkedListNode]] | |||
| | |||
|- | |||
| 0x38 | |||
| [[#KLinkedListNode]] | |||
| | |||
|- | |||
| 0x48 | |||
| [[#KPort]]* | |||
| Parent | |||
|} | |||
== KClientPort == | |||
Inherits from: [[#KSynchronizationObject]] | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset | |||
! Type | |||
! Description | |||
|- | |||
| 0 | |||
| [[#KSynchronizationObject]] | |||
| | |||
|- | |||
| 0x28 | |||
| ? | |||
| | |||
|- | |||
| 0x2C | |||
| u32 | |||
| MaxSessions [?] | |||
|- | |||
| 0x30 | |||
| [[#KPort]]* | |||
| Parent | |||
|} | |} | ||
Revision as of 00:14, 17 July 2017
KAutoObject
Size: 0x10
| Offset | Type | Description |
|---|---|---|
| 0 | * | Vtable |
| 8 | u64 | ReferenceCount |
KSynchronizationObject
Size: 0x20
Inherits from: #KAutoObject
| Offset | Type | Description |
|---|---|---|
| 0 | #KAutoObject | |
| 0x10 | u64 | ThreadSyncNum |
| 0x18 | #KLinkedListNode* | ThreadSyncList |
KLinkedListNode
Size: 0x10
| Offset | Type | Description |
|---|---|---|
| 0 | #KLinkedListNode* | Prev |
| 8 | #KLinkedListNode* | Next |
KProcess
Size: 0x5B0
Inherits from: #KSynchronizationObject
| Offset | Type | Description |
|---|---|---|
| 0 | #KSynchronizationObject | |
| 0x28 | ||
| 0x38 | #KProcessMm | MemoryManager |
| 0xF0 | u64 | TotalMemUsage |
| 0xF8 | u64 | |
| .. | .. | .. |
| 0x100 | #KLinkedListNode* | TlsPagesList |
| .. | .. | .. |
| 0x130 | ProcessMutex | |
| .. | .. | .. |
| 0x288 | KProcessHandleTable | HandleTable |
KProcessMm
| Offset | Type | Description |
|---|---|---|
| 0 | * | Vtable |
| 8 | u64 | AddrSpaceMinAddr |
| 0x10 | u64 | AddrSpaceMaxAddr |
| 0x18 | u64 | HeapBaseAddr |
| 0x20 | u64 | HeapEndAddr |
| 0x28 | u64 | HeapCurAddr |
| 0x30 | u64 | MapRegionBaseAddr |
| 0x38 | u64 | MapRegionEnd |
| 0x40 | u64 | HeapMaxAllocation |
| 0x48 | KRecursiveLock | Mutex |
| .. | .. | .. |
KTransferMemory
Size: 0x48
Inherits from: #KAutoObject
| Offset | Type | Description |
|---|---|---|
| 0 | #KAutoObject | |
| 0x10 | KMemoryBlockList | Blocks |
| 0x28 | #KProcess* | OwnerProcess |
| 0x30 | u64 | BaseAddress |
| 0x40 | int | Permission |
| 0x44 | bool | HasInited |
Size: 0x40
Inherits from: #KAutoObject
| Offset | Type | Description |
|---|---|---|
| 0 | #KAutoObject | |
| 0x10 | KMemoryBlockList | Blocks |
| 0x28 | #KProcess* | OwnerProcess |
| 0x30 | int | LocalPerm |
| 0x34 | int | RemotePerm |
| 0x38 | bool | HasInited |
KPort
Size: 0xA8
Inherits from: #KAutoObject
| Offset | Type | Description |
|---|---|---|
| 0 | #KAutoObject | |
| 0x10 | #KServerPort | ServerPort |
| 0x60 | #KClientPort | ClientPort |
| 0x98 | u64 | |
| 0xA0 | bool | HasInited |
| 0xA1 | bool | IsLight [?] |
KServerPort
Size: 0x50
Inherits from: #KSynchronizationObject
| Offset | Type | Description |
|---|---|---|
| 0 | #KSynchronizationObject | |
| 0x28 | #KLinkedListNode | |
| 0x38 | #KLinkedListNode | |
| 0x48 | #KPort* | Parent |
KClientPort
Inherits from: #KSynchronizationObject
| Offset | Type | Description |
|---|---|---|
| 0 | #KSynchronizationObject | |
| 0x28 | ? | |
| 0x2C | u32 | MaxSessions [?] |
| 0x30 | #KPort* | Parent |