Changes

1,619 bytes added ,  21:53, 16 July 2017
Created page with "= KAutoObject = Size: 0x10 {| class="wikitable" border="1" |- ! Offset || Type || Description |- | 0 || * || Vtable |- | 8 || u64 || ReferenceCount |} = KSynchronizationObje..."
= KAutoObject =
Size: 0x10

{| class="wikitable" border="1"
|-
! Offset || Type || Description
|-
| 0 || * || Vtable
|-
| 8 || u64 || ReferenceCount
|}

= KSynchronizationObject =
Size: 0x20

Inherits from: [[#KAutoObject]]

{| class="wikitable" border="1"
|-
! Offset || Type || Description
|-
| 0 || [[#KAutoObject]] ||
|-
| 0x10 || u64 || ThreadSyncNum
|-
| 0x18 || LinkedListNode* || ThreadSyncList
|}

= KProcess =
Size: 0x5B0

Inherits from: [[#KSynchronizationObject]]

{| class="wikitable" border="1"
|-
! Offset
! Type
! Description
|-
| 0
| [[#KSynchronizationObject]]
|
|-
| 0x28
|
|
|-
| 0x38
| [[#KProcessMm]]
| MemoryManager
|-
| 0xF0
| u64
| TotalMemUsage
|-
| 0xF8
| u64
|
|-
| ..
| ..
| ..
|-
| 0x100
| KLinkedListNode*
| TlsPagesList
|-
| ..
| ..
| ..
|-
| 0x130
|
| ProcessMutex
|-
| ..
| ..
| ..
|-
| 0x288
| KProcessHandleTable
| HandleTable
|}

== KProcessMm ==
{| class="wikitable" border="1"
|-
! 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]]

{| class="wikitable" border="1"
|-
! Offset
! Type
! Description
|-
| 0
| [[#KAutoObject]]
|
|-
| 0x10
| KMemoryBlockList*
| Blocks
|-
| 0x28
| [[#KProcess]]*
| OwnerProcess
|-
| 0x30
| u64
| BaseAddress
|-
| 0x40
| int
| Permission
|-
| 0x44
| bool
| HasInited
|}