Kernel: Difference between revisions
No edit summary |
No edit summary |
||
Line 773: | Line 773: | ||
|- | |- | ||
| 0x60 || [[#KRecursiveLock]] || Mutex | | 0x60 || [[#KRecursiveLock]] || Mutex | ||
|} | |||
= KPoolManager = | |||
Size: 0x380 | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Type || Description | |||
|- | |||
| 0 || [[#KPoolAllocator]][3] || Allocator | |||
|- | |||
| 0x348 || [[#KPoolRefManager]] || RefManager | |||
|- | |||
| 0x368 || u64 || AllocationCounter | |||
|- | |||
| 0x370 || u64 || | |||
|- | |||
| 0x378 || [[#KRecursiveLock]] || Mutex | |||
|} | |||
== KPoolAllocator == | |||
Size: 0x118 | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Type || Description | |||
|- | |||
| 0 || void* || MemoryBase | |||
|- | |||
| 8 || u64 || MemorySize | |||
|- | |||
| 0x10 || s32 || NumPools | |||
|- | |||
| 0x18 || [[#KPool]][8] || Pools | |||
|} | |||
=== KPool === | |||
Size: 0x20 | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Type || Description | |||
|- | |||
| 0 || KPoolHeader* || FirstFreeChunk | |||
|- | |||
| 8 || u64 || | |||
|- | |||
| 0x10 || u64 || | |||
|- | |||
| 0x18 || void* || SingletonTableEntryPtr | |||
|} | |||
== KPoolRefManager == | |||
Size: 0x20 | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Type || Description | |||
|- | |||
| 0 || [[#KPoolManager]]* || Parent | |||
|- | |||
| 8 || void* || PoolBase | |||
|- | |||
| 0x10 || u64 || MaxPage | |||
|- | |||
| 0x18 || s16* || RefCountTable | |||
|} | |} |