Line 20: |
Line 20: |
| ! Offset || Type || Description | | ! Offset || Type || Description |
| |- | | |- |
− | | 0 || [[#KAutoObject]] || | + | | 0 || [[#KAutoObject]] || Inheritance |
| |- | | |- |
| | 0x10 || u64 || ThreadSyncNum | | | 0x10 || u64 || ThreadSyncNum |
| |- | | |- |
| | 0x18 || [[#KLinkedListNode]] || ThreadSyncList | | | 0x18 || [[#KLinkedListNode]] || ThreadSyncList |
| + | |} |
| + | |
| + | = KRecursiveLock = |
| + | Size: 0x8 |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset || Type || Description |
| + | |- |
| + | | 0 || u64 || OwnerTag |
| + | |} |
| + | |
| + | = KSpinLock = |
| + | Size: 0x1 |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset || Type || Description |
| + | |- |
| + | | 0 || u8 || IsBusy |
| + | |} |
| + | |
| + | = KLockedList = |
| + | Size: 0x28 |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset || Type || Description |
| + | |- |
| + | | 0 || u64 || Count |
| + | |- |
| + | | 8 || [[#KLinkedListNode]] || List |
| + | |- |
| + | | 0x18 || [[#KRecursiveLock]] || Mutex |
| + | |- |
| + | | 0x20 || u64 || MaxCount |
| |} | | |} |
| | | |
Line 50: |
Line 86: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KSynchronizationObject]] || Inheritance |
− | | [[#KSynchronizationObject]] | |
− | | | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || || |
− | | | |
− | | | |
| |- | | |- |
− | | 0x38 | + | | 0x38 || [[#KMemoryManager]] || MemoryManager |
− | | [[#KProcessMm]] | |
− | | MemoryManager | |
| |- | | |- |
− | | 0xF0 | + | | 0xF0 || u64 || TotalMemUsage |
− | | u64 | |
− | | TotalMemUsage | |
| |- | | |- |
− | | 0xF8 | + | | 0xF8 || u64 || TlsPagesListCount |
− | | u64 | |
− | | TlsPagesListCount | |
| |- | | |- |
− | | 0x100 | + | | 0x100 || [[#KLinkedListNode]] || TlsPagesList |
− | | [[#KLinkedListNode]] | |
− | | TlsPagesList | |
| |- | | |- |
− | | 0x110 | + | | 0x110 || s32 || DefaultCpuCore |
− | | s32 | |
− | | DefaultCpuCore | |
| |- | | |- |
− | | 0x118 | + | | 0x118 || KDebug* || Debug |
− | | KDebug* | |
− | | Debug | |
| |- | | |- |
− | | 0x120 | + | | 0x120 || [[#KResourceLimit]]* || ResourceLimit |
− | | [[#KResourceLimit]]* | |
− | | ResourceLimit | |
| |- | | |- |
− | | 0x128 | + | | 0x128 || u32 || State |
− | | u32 | |
− | | State | |
| |- | | |- |
− | | 0x130 | + | | 0x130 || [[#KRecursiveLock]] || ProcessMutex |
− | | KRecursiveLock | |
− | | ProcessMutex | |
| |- | | |- |
− | | 0x138 | + | | 0x138 || [[#KRecursiveLock]] || ThreadingMutex |
− | | KRecursiveLock | |
− | | ThreadingMutex | |
| |- | | |- |
− | | 0x140 | + | | 0x140 || [[#KLinkedListNode]]<[[#KThread]]> || ThreadArbiterList |
− | | KLinkedListNode<KThread> | |
− | | ThreadArbiterList | |
| |- | | |- |
− | | 0x150 | + | | 0x150 || KLinkedListNode || |
− | | KLinkedListNode | |
− | | | |
| |- | | |- |
− | | 0x160 | + | | 0x160 || u64[4] || RandomEntropy |
− | | u64[4] | |
− | | RandomEntropy | |
| |- | | |- |
− | | 0x180 | + | | 0x180 || u8 || HasStateChanged |
− | | u8 | |
− | | HasStateChanged | |
| |- | | |- |
− | | 0x181 | + | | 0x181 || u8 || HasInitialized |
− | | u8 | |
− | | HasInitialized | |
| |- | | |- |
− | | 0x182 | + | | 0x182 || u8 || IsSystem |
− | | u8 | |
− | | From_CreateProcessInfo_0x24_Bit6 | |
| |- | | |- |
− | | 0x183 | + | | 0x183 || u8[12] || From_CreateProcessInfo_0 |
− | | u8[12] | |
− | | From_CreateProcessInfo_0 | |
| |- | | |- |
− | | 0x18F | + | | 0x18F || u8 || InitiallyZero |
− | | u8 | |
− | | InitiallyZero | |
| |- | | |- |
− | | 0x190 | + | | 0x190 || u16 || NumberOfCreatedThreads |
− | | u16 | |
− | | NumberOfCreatedThreads | |
| |- | | |- |
− | | 0x192 | + | | 0x192 || u16 || ThreadingRelatedInitiallyZero |
− | | u16 | |
− | | ThreadingRelatedInitiallyZero | |
| |- | | |- |
− | | 0x194 | + | | 0x194 || u32 || ProcessFlags |
− | | u32 | |
− | | ProcessFlags | |
| |- | | |- |
− | | 0x198 | + | | 0x198 || [[#KProcessCapabilities]] || Capabilities |
− | | [[#KProcessCapabilities]] | |
− | | Capabilities | |
| |- | | |- |
− | | 0x248 | + | | 0x248 || u64 || TitleId |
− | | u64 | |
− | | TitleId | |
| |- | | |- |
− | | 0x250 | + | | 0x250 || u64 || ProcessId |
− | | u64 | |
− | | ProcessId | |
| |- | | |- |
− | | 0x258 | + | | 0x258 || u64 || CreatedTickstamp |
− | | u64 | |
− | | CreatedTickstamp | |
| |- | | |- |
− | | 0x260 | + | | 0x260 || u64 || Entrypoint |
− | | u64 | |
− | | From_CreateProcessInfo_0x18 | |
| |- | | |- |
− | | 0x268 | + | | 0x268 || u64 || CodeMemUsage |
− | | u64 | |
− | | CodeMemUsage | |
| |- | | |- |
− | | 0x270 | + | | 0x270 || u64 || DynamicMemUsage |
− | | u64 | |
− | | DynamicMemUsage | |
| |- | | |- |
− | | 0x278 | + | | 0x278 || u64 || MaxTotalMemUsage |
− | | u64 | |
− | | MaxTotalMemUsage | |
| |- | | |- |
− | | 0x280 | + | | 0x280 || u64 || From_CreateProcessInfo_0xC |
− | | u64 | |
− | | From_CreateProcessInfo_0xC | |
| |- | | |- |
− | | 0x288 | + | | 0x288 || [[#KProcessHandleTable]] || HandleTable |
− | | [[#KProcessHandleTable]] | |
− | | HandleTable | |
| |- | | |- |
− | | 0x528 | + | | 0x528 || void* || UsermodeExceptionTlsArea |
− | | void* | |
− | | UsermodeExceptionTlsArea | |
| |- | | |- |
− | | 0x530 | + | | 0x530 || [[#KLinkedListNode]]<[[#KThread]]> || ExceptionThreadList |
− | | KLinkedListNode<KThread> | |
− | | ExceptionThreadList | |
| |- | | |- |
− | | 0x540 | + | | 0x540 || [[#KThread]]* || ExceptionThread |
− | | KThread* | |
− | | ExceptionThread | |
| |- | | |- |
− | | 0x548 | + | | 0x548 || [[#KLinkedListNode]]<[[#KThread]]> || ThreadList |
− | | KLinkedListNode<KThread> | |
− | | ThreadList | |
| |- | | |- |
− | | 0x558 | + | | 0x558 || u32 || |
− | | u32 | |
− | | | |
| |- | | |- |
− | | 0x55C | + | | 0x55C || u32 || HasStarted |
− | | u32 | |
− | | HasStarted | |
| |- | | |- |
− | | 0x560 | + | | 0x560 || u64[8] || |
− | | u64[8] | |
− | | | |
| |- | | |- |
− | | 0x5A0 | + | | 0x5A0 || u64 || |
− | | u64 | |
− | | | |
| |- | | |- |
− | | 0x5A8 | + | | 0x5A8 || u64 || |
− | | u64 | |
− | | | |
| |} | | |} |
| | | |
− | == KProcessMm == | + | == KProcessCapabilities == |
| + | Size: 0xB0 |
| + | |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
| |- | | |- |
Line 226: |
Line 180: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || u8[16] || SvcAccessMask |
− | | * | |
− | | Vtable | |
| |- | | |- |
− | | 8 | + | | 0x10 || u8[128] || IrqAccessMask |
− | | u64 | |
− | | AddrSpaceMinAddr | |
| |- | | |- |
− | | 0x10 | + | | 0x90 || u64 || AllowedCpuIdBitmask |
− | | u64 | |
− | | AddrSpaceMaxAddr | |
| |- | | |- |
− | | 0x18 | + | | 0x98 || u64 || AllowedThreadPrioBitmask |
− | | u64 | |
− | | HeapRegionBaseAddr | |
| |- | | |- |
− | | 0x20 | + | | 0xA0 || u32 || DebuggingFlags (bit0: can be debugged, bit1: can debug others) |
− | | u64 | |
− | | HeapRegionEndAddr | |
| |- | | |- |
− | | 0x28 | + | | 0xA4 || u32 || HandleTableSize |
− | | u64 | |
− | | HeapCurAddr | |
| |- | | |- |
− | | 0x30 | + | | 0xA8 || u32 || |
− | | u64 | |
− | | MapRegionBaseAddr | |
| |- | | |- |
− | | 0x38 | + | | 0xAC || u32 || |
− | | u64 | + | |} |
− | | MapRegionEnd | + | |
| + | == KProcessHandleTable == |
| + | Size: 0x2A0 |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset |
| + | ! Type |
| + | ! Description |
| + | |- |
| + | | 0 || [[#KHandleEntry]]* || TablePtr |
| |- | | |- |
− | | 0x40 | + | | 8 || [[#KHandleEntry]]* || NextFreeEntry |
− | | u64 | |
− | | HeapMaxAllocation | |
| |- | | |- |
− | | 0x48 | + | | 0x10 || [[#KHandleEntry]][40] || InternalTable |
− | | KRecursiveLock | |
− | | Mutex | |
| |- | | |- |
− | | 0x50 | + | | 0x290 || u16 || Size |
− | | | |
− | | | |
| |- | | |- |
− | | 0x60 | + | | 0x292 || u16 || |
− | | [[#KMemoryBlock]]* | |
− | | MemoryBlockList | |
| |- | | |- |
− | | .. | + | | 0x294 || u16 || IdCounter |
− | | .. | + | |- |
− | | .. | + | | 0x296 || u16 || NumActiveSlots |
| + | |- |
| + | | 0x298 || [[#KSpinLock]] || Lock |
| |} | | |} |
| | | |
− | == KProcessCapabilities == | + | === KHandleEntry === |
− | Size: 0xB0 | + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset |
| + | ! Type |
| + | ! Description |
| + | |- |
| + | | 0 || u16 || HandleId |
| + | |- |
| + | | 2 || u8 || ObjectType |
| + | |- |
| + | | 8 || [[#KAutoObject]]* || Object |
| + | |} |
| + | |
| + | = KMemoryManager = |
| + | Size: 0xB8 |
| | | |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
Line 288: |
Line 246: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || * || Vtable |
− | | u8[16] | |
− | | SvcAccessMask | |
| |- | | |- |
− | | 0x10 | + | | 8 || u64 || AddrSpaceMinAddr |
− | | u8[128] | |
− | | IrqAccessMask | |
| |- | | |- |
− | | 0x90 | + | | 0x10 || u64 || AddrSpaceMaxAddr |
− | | u64 | |
− | | AllowedCpuIdBitmask | |
| |- | | |- |
− | | 0x98 | + | | 0x18 || u64 || HeapRegionBaseAddr |
− | | u64 | |
− | | AllowedThreadPrioBitmask | |
| |- | | |- |
− | | 0xA0 | + | | 0x20 || u64 || HeapRegionEndAddr |
− | | u32 | |
− | | DebuggingFlags (bit0: can be debugged, bit1: can debug others) | |
| |- | | |- |
− | | 0xA4 | + | | 0x28 || u64 || HeapCurAddr |
− | | u32 | |
− | | HandleTableSize | |
| |- | | |- |
− | | 0xA8 | + | | 0x30 || u64 || MapRegionBaseAddr |
− | | u32 | |
− | | | |
| |- | | |- |
− | | 0xAC | + | | 0x38 || u64 || MapRegionEnd |
− | | u32 | + | |- |
− | | | + | | 0x40 || u64 || HeapMaxAllocation |
| + | |- |
| + | | 0x48 || [[#KRecursiveLock]] || Mutex |
| + | |- |
| + | | 0x50 || [[#KPageTable]] || PageTable |
| + | |- |
| + | | 0x60 || [[#KMemoryBlockManager]] || MemoryBlockManager |
| + | |- |
| + | | 0x78 || bool || IsKernel |
| + | |- |
| + | | 0x79 || bool || IsSystem |
| + | |- |
| + | | 0x7A || bool || IsAddrSpace36Bit |
| + | |- |
| + | | 0x7B || bool || HasAslr |
| + | |- |
| + | | 0x7C || u32 || Is_0x59_If_Cfg12_Bit0_ElseZero |
| + | |- |
| + | | 0x80 || u32 || Is_0x5A_If_Cfg12_Bit0_ElseZero |
| + | |- |
| + | | 0x84 || u32 || Is_0x58_If_Cfg12_Bit0_ElseZero |
| + | |- |
| + | | 0x88 || || |
| + | |- |
| + | | 0x90 || || |
| + | |- |
| + | | 0x98 || || |
| + | |- |
| + | | 0xA0 || u64 || TranslationTableBaseRegister0 |
| + | |- |
| + | | 0xA8 || u64 || TranslationControlRegister |
| + | |- |
| + | | 0xB0 || u8 || AsidTagValue |
| |} | | |} |
| | | |
− | == KProcessHandleTable == | + | == KPageTable == |
− | Size: 0x2A0 | + | Size: 0x10 |
| | | |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
Line 330: |
Line 306: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || void* || RawPageTablePtr |
− | | [[#KHandleEntry]]* | |
− | | TablePtr | |
− | |-
| |
− | | 8
| |
− | | [[#KHandleEntry]]*
| |
− | | NextFreeEntry
| |
− | |-
| |
− | | 0x10
| |
− | | [[#KHandleEntry]][40]
| |
− | | InternalTable
| |
− | |-
| |
− | | 0x290
| |
− | | u16
| |
− | | Size
| |
− | |-
| |
− | | 0x292
| |
− | | u16
| |
− | |
| |
− | |-
| |
− | | 0x294
| |
− | | u16 | |
− | | IdCounter | |
| |- | | |- |
− | | 0x296 | + | | 8 || bool || |
− | | u16 | |
− | | NumActiveSlots | |
| |- | | |- |
− | | 0x298 | + | | 0xC || u32 || AddrSpaceSizeInGb |
− | | KSpinLock | |
− | | Lock | |
| |} | | |} |
| | | |
− | === KHandleEntry === | + | == KMemoryBlockManager == |
| + | Size: 0x18 |
| + | |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
| |- | | |- |
Line 370: |
Line 322: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KMemoryBlock]]* || MemoryBlockList |
− | | u16 | |
− | | HandleId | |
| |- | | |- |
− | | 2 | + | | 8 || u64 || MaxAddr |
− | | u8 | |
− | | ObjectType | |
| |- | | |- |
− | | 8 | + | | 0x10 || u64 || MinAddr |
− | | [[#KAutoObject]]* | |
− | | Object | |
| |} | | |} |
| | | |
Line 392: |
Line 338: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KLinkedListNode]]<[[#KMemoryBlock]]> || NodeFor__MemoryBlockList |
− | | [[#KMemoryBlock]]* | |
− | | Next | |
| |- | | |- |
− | | 8 | + | | 0x10 || || |
− | | [[#KMemoryBlock]]* | |
− | | Prev | |
| |- | | |- |
− | | 0x10 | + | | 0x18 || || |
− | | | |
− | | | |
| |- | | |- |
− | | 0x18 | + | | 0x20 || u64 || BaseAddress |
− | | | |
− | | | |
| |- | | |- |
− | | 0x20 | + | | 0x28 || u64 || NumOfPages |
− | | u64 | |
− | | BaseAddress | |
| |- | | |- |
− | | 0x28 | + | | 0x30 || u32 || State |
− | | u64 | |
− | | NumOfPages | |
| |- | | |- |
− | | 0x30 | + | | 0x34 || u16 || IpcRefCount [?] |
− | | u32 | |
− | | State | |
| |- | | |- |
− | | 0x34 | + | | 0x36 || u16 || DeviceMapRefCount |
− | | u16 | |
− | | IpcRefCount [?] | |
| |- | | |- |
− | | 0x36 | + | | 0x38 || u8 || Permission |
− | | u16 | |
− | | DeviceMapRefCount | |
| |- | | |- |
− | | 0x38 | + | | 0x39 || u8 || UnkAttribute |
− | | u8 | |
− | | Permission | |
| |- | | |- |
− | | 0x39 | + | | 0x3A || u8 || Attribute |
− | | u8 | |
− | | UnkAttribute
| |
− | |- | |
− | | 0x3A
| |
− | | u8
| |
− | | Attribute | |
| |} | | |} |
| | | |
Line 450: |
Line 370: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || u64 || BaseAddress |
− | | u64 | |
− | | BaseAddress | |
− | |-
| |
− | | 8
| |
− | | u64
| |
− | | Size
| |
| |- | | |- |
− | | 0x10 | + | | 8 || u64 || Size |
− | | u32 | |
− | | State | |
| |- | | |- |
− | | 0x14 | + | | 0x10 || u32 || State |
− | | u8 | |
− | | Permission | |
| |- | | |- |
− | | 0x15 | + | | 0x14 || u8 || Permission |
− | | u8 | |
− | | Attribute | |
| |- | | |- |
− | | 0x16 | + | | 0x15 || u8 || Attribute |
− | | u8 | |
− | | UnkAttribute | |
| |- | | |- |
− | | | + | | 0x16 || u8 || UnkAttribute |
− | | | |
− | | Pad | |
| |- | | |- |
− | | 0x18 | + | | 0x18 || u16 || IpcRefCount [?] |
− | | u16 | |
− | | IpcRefCount [?] | |
| |- | | |- |
− | | 0x1A | + | | 0x1A || u16 || DeviceMapRefCount |
− | | u16 | |
− | | DeviceMapRefCount | |
| |} | | |} |
| | | |
Line 498: |
Line 398: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || KMemoryBlockList || Blocks |
− | | KMemoryBlockList | |
− | | Blocks | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || [[#KProcess]]* || OwnerProcess |
− | | [[#KProcess]]* | |
− | | OwnerProcess | |
| |- | | |- |
− | | 0x30 | + | | 0x30 || u64 || BaseAddress |
− | | u64 | |
− | | BaseAddress | |
| |- | | |- |
− | | 0x38 | + | | 0x38 || KRecursiveLock || Mutex |
− | | KRecursiveLock | |
− | | Mutex | |
| |- | | |- |
− | | 0x40 | + | | 0x40 || int || Permission |
− | | int | |
− | | Permission | |
| |- | | |- |
− | | 0x44 | + | | 0x44 || bool || HasInited |
− | | bool | |
− | | HasInited | |
| |- | | |- |
− | | 0x45 | + | | 0x45 || bool || IsMapped |
− | | bool | |
− | | IsMapped | |
| |} | | |} |
| | | |
Line 542: |
Line 426: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || KMemoryBlockList || Blocks |
− | | KMemoryBlockList | |
− | | Blocks | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || [[#KProcess]]* || OwnerProcess |
− | | [[#KProcess]]* | |
− | | OwnerProcess | |
| |- | | |- |
− | | 0x30 | + | | 0x30 || int || LocalPermission |
− | | int | |
− | | LocalPerm | |
| |- | | |- |
− | | 0x34 | + | | 0x34 || int || RemotePermission |
− | | int | |
− | | RemotePerm | |
| |- | | |- |
− | | 0x38 | + | | 0x38 || bool || HasInited |
− | | bool | |
− | | HasInited | |
| |} | | |} |
| | | |
Line 578: |
Line 450: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || [[#KServerPort]] || ServerSide |
− | | [[#KServerPort]] | |
− | | ServerSide | |
| |- | | |- |
− | | 0x60 | + | | 0x60 || [[#KClientPort]] || ClientSide |
− | | [[#KClientPort]] | |
− | | ClientSide | |
| |- | | |- |
− | | 0x98 | + | | 0x98 || u64 || |
− | | u64 | |
− | | | |
| |- | | |- |
− | | 0xA0 | + | | 0xA0 || bool || HasInited |
− | | bool | |
− | | HasInited | |
| |- | | |- |
− | | 0xA1 | + | | 0xA1 || bool || IsLight |
− | | bool | |
− | | IsLight | |
| |} | | |} |
| | | |
Line 614: |
Line 474: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KSynchronizationObject]] || Inheritance |
− | | [[#KSynchronizationObject]] | |
− | | | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || [[#KLinkedListNode]] || IncomingConnections |
− | | [[#KLinkedListNode]] | |
− | | IncomingConnections | |
| |- | | |- |
− | | 0x38 | + | | 0x38 || [[#KLinkedListNode]] || IncomingLightConnections |
− | | [[#KLinkedListNode]] | |
− | | IncomingLightConnections | |
| |- | | |- |
− | | 0x48 | + | | 0x48 || [[#KPort]]* || Parent |
− | | [[#KPort]]* | |
− | | Parent | |
| |} | | |} |
| | | |
Line 642: |
Line 494: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KSynchronizationObject]] || Inheritance |
− | | [[#KSynchronizationObject]] | |
− | | | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || u32 || NumSessions |
− | | u32 | |
− | | NumSessions | |
| |- | | |- |
− | | 0x2C | + | | 0x2C || u32 || MaxSessions |
− | | u32 | |
− | | MaxSessions | |
| |- | | |- |
− | | 0x30 | + | | 0x30 || [[#KPort]]* || Parent |
− | | [[#KPort]]* | |
− | | Parent | |
| |} | | |} |
| | | |
Line 670: |
Line 514: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || [[#KServerSession]] || ServerSide |
− | | [[#KServerSession]] | |
− | | ServerSide | |
| |- | | |- |
− | | 0x70 | + | | 0x70 || [[#KClientSession]] || ClientSide |
− | | [[#KClientSession]] | |
− | | ClientSide | |
| |- | | |- |
− | | 0xA8 | + | | 0xA8 || bool || HasInited |
− | | bool | |
− | | HasInited | |
| |} | | |} |
| | | |
Line 698: |
Line 534: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KSynchronizationObject]] || Inheritance |
− | | [[#KSynchronizationObject]] | |
− | | | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || KLinkedListNode || NodeFor__IncomingConnections |
− | | KLinkedListNode | |
− | | NodeFor__IncomingConnections | |
| |- | | |- |
− | | 0x38 | + | | 0x38 || || |
− | | | |
− | | | |
| |- | | |- |
− | | 0x40 | + | | 0x40 || KLinkedListNode || |
− | | KLinkedListNode | |
− | | | |
| |- | | |- |
− | | 0x50 | + | | 0x50 || || |
− | | | |
− | | | |
| |- | | |- |
− | | 0x58 | + | | 0x58 || || |
− | | | |
− | | | |
| |} | | |} |
| | | |
Line 734: |
Line 558: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || [[#KSession]]* || Parent |
− | | [[#KSession]]* | |
− | | Parent | |
| |- | | |- |
− | | 0x18 | + | | 0x18 || bool || HasInited |
− | | bool | |
− | | HasInited | |
| |- | | |- |
− | | 0x20 | + | | 0x20 || [[#KClientPort]]* || ParentPort |
− | | [[#KClientPort]]* | |
− | | ParentPort | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || || |
− | | | |
− | | | |
| |- | | |- |
− | | 0x30 | + | | 0x30 || [[#KProcess]]* || CreatorProcess |
− | | [[#KProcess]]* | |
− | | CreatorProcess | |
| |} | | |} |
| | | |
Line 770: |
Line 582: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || [[#KLightSessionServer]] || ServerSide |
− | | [[#KLightSessionServer]] | |
− | | ServerSide | |
| |- | | |- |
− | | 0x68 | + | | 0x68 || [[#KLightSessionClient]] || ClientSide |
− | | [[#KLightSessionClient]] | |
− | | ClientSide | |
| |- | | |- |
− | | 0xA0 | + | | 0xA0 || bool || HasInited |
− | | bool | |
− | | HasInited | |
| |} | | |} |
| | | |
Line 798: |
Line 602: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || KLinkedListNode || NodeFor__IncomingLightConnections |
− | | KLinkedListNode | |
− | | NodeFor__IncomingLightConnections | |
| |- | | |- |
− | | 0x20 | + | | 0x20 || [[#KLightSession]] || Parent |
− | | [[#KLightSession]] | |
− | | Parent | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || u64[6] || |
− | | u64[6] | |
− | | | |
| |} | | |} |
| | | |
Line 826: |
Line 622: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || [[#KLightSession]]* || Parent |
− | | [[#KLightSession]]* | |
− | | Parent | |
| |- | | |- |
− | | 0x18 | + | | 0x18 || bool || HasInited |
− | | bool | |
− | | HasInited | |
| |- | | |- |
− | | 0x20 | + | | 0x20 || [[#KClientPort]]* || Port |
− | | [[#KClientPort]]* | |
− | | Port | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || || |
− | | | |
− | | | |
| |- | | |- |
− | | 0x30 | + | | 0x30 || [[#KProcess]]* || CreatorProcess |
− | | [[#KProcess]]* | |
− | | CreatorProcess | |
| |} | | |} |
| | | |
Line 862: |
Line 646: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || [[#KReadableEvent]] || ReadableEvent |
− | | [[#KReadableEvent]] | |
− | | ReadableEvent | |
| |- | | |- |
− | | 0x48 | + | | 0x48 || [[#KWritableEvent]] || WritableEvent |
− | | [[#KWritableEvent]] | |
− | | WritableEvent | |
| |- | | |- |
− | | 0x60 | + | | 0x60 || [[#KProcess]]* || Creator |
− | | [[#KProcess]]* | |
− | | Creator | |
| |- | | |- |
− | | 0x68 | + | | 0x68 || bool || HasInited |
− | | bool | |
− | | HasInited | |
| |} | | |} |
| | | |
Line 894: |
Line 668: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KSynchronizationObject]] || Inheritance |
− | | [[#KSynchronizationObject]] | |
− | | | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || bool || |
− | | bool | |
− | | | |
| |- | | |- |
− | | 0x30 | + | | 0x30 || [[#KEvent]]* || Parent |
− | | [[#KEvent]]* | |
− | | Parent | |
| |} | | |} |
| | | |
Line 918: |
Line 686: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || [[#KEvent]]* || Parent |
− | | [[#KEvent]]* | |
− | | Parent | |
| |} | | |} |
| | | |
Line 938: |
Line 702: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KReadableEvent]] || Inheritance |
− | | [[#KReadableEvent]] | |
− | | | |
| |- | | |- |
− | | 0x38 | + | | 0x38 || || |
− | | | |
− | | | |
| |- | | |- |
− | | 0x48 | + | | 0x48 || u32 || IrqId (or -1) |
− | | u32 | |
− | | IrqId (or -1) | |
| |} | | |} |
| | | |
Line 962: |
Line 720: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || [[#KAutoObject]] || Inheritance |
− | | [[#KAutoObject]] | |
− | | | |
| |- | | |- |
− | | 0x10 | + | | 0x10 || [[#KRecursiveLock]] || Mutex |
− | | KRecursiveLock | |
− | | Mutex | |
| |- | | |- |
− | | 0x18 | + | | 0x18 || [[#KSmmuManager]] || Manager |
− | | [[#KSmmuManager]] | |
− | | Manager | |
| |- | | |- |
− | | 0x58 | + | | 0x58 || u64 || BaseAddress |
− | | u64 | |
− | | BaseAddress | |
| |- | | |- |
− | | 0x60 | + | | 0x60 || u64 || Size |
− | | u64 | |
− | | Size | |
| |- | | |- |
− | | 0x68 | + | | 0x68 || bool || HasInited |
− | | bool | |
− | | HasInited | |
| |} | | |} |
| | | |
Line 996: |
Line 742: |
| ! Description | | ! Description |
| |- | | |- |
− | | 0 | + | | 0 || u8[4] || PageTableAsids |
− | | u8[4] | |
− | | PageTableAsids | |
| |- | | |- |
− | | 8 | + | | 8 || void*[4] || PageDirectories |
− | | void*[4] | |
− | | PageDirectories | |
| |- | | |- |
− | | 0x28 | + | | 0x28 || u64 || AttachedDevicesMask |
− | | u64 | |
− | | AttachedDevicesMask | |
| |- | | |- |
− | | 0x30 | + | | 0x30 || u32 || RegVal32Bit |
− | | u32 | |
− | | RegVal32Bit | |
| |- | | |- |
− | | 0x34 | + | | 0x34 || u32 || RegVal32BitEmpty |
− | | u32 | |
− | | RegVal32BitEmpty | |
| |- | | |- |
− | | 0x38 | + | | 0x38 || u32 || RegVal36Bit |
− | | u32 | |
− | | RegVal36Bit | |
| |- | | |- |
− | | 0x3C | + | | 0x3C || u32 || RegVal36BitEmpty |
− | | u32 | |
− | | RegVal36BitEmpty | |
| |} | | |} |