Kernel: Difference between revisions

Roblabla (talk | contribs)
KPort on 7.0.0
m Hexkyz moved page Kernel objects to Kernel: Use this page for general kernel documentation
 
(4 intermediate revisions by 2 users not shown)
Line 36: Line 36:
| 8 || u32 || ReferenceCount
| 8 || u32 || ReferenceCount
|-
|-
| 0x10 || u64 || ?
| 0x10 || [[#KRedBlackTreeNode]] || Intrusive red-black tree node, replaces the Intrusive list node from previous versions.
|-
| 0x18 || ptr || ?
|-
| 0x20 || u64 || ?
|-
| 0x28 || u64 || ?
|}
|}


Line 151: Line 145:
|-
|-
| 8 || [[#KLinkedListNode]] || Bounds (first, last)
| 8 || [[#KLinkedListNode]] || Bounds (first, last)
|}
= KRedBlackTreeNode =
Size: 0x20
Note: This is BSD sys/tree.h's RB_ENTRY(...).
{| class="wikitable" border="1"
|-
! Offset || Type || Description
|-
| 0 || KRedBlackTreeNode* || Left Child
|-
| 8 || KRedBlackTreeNode* || Right Child
|-
| 0x10 || KRedBlackTreeNode* || Parent
|-
| 0x18 || int || Color
|}
= KRedBlackTree =
Size: 0x8
Note: This is BSD sys/tree.h's RB_HEAD(..., KRedBlackTreeNode);
{| class="wikitable" border="1"
|-
! Offset || Type || Description
|-
| 0 || KRedBlackTreeNode* || Root
|-
|}
|}


Line 578: Line 603:
[2.0.0] Size: 8
[2.0.0] Size: 8


[6.0.0]? Size: 0x10
[5.0.0] Size: 0x10


<div style="display: inline-block">
<div style="display: inline-block">
Line 609: Line 634:
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
! 6.0.0 Offset || Type || Description
! 5.0.0 Offset || Type || Description
|-
|-
| 0 || u16 || HandleId
| 0 || u16 || HandleId
|-
|-
| 2 || u8 || ObjectType
| 2 || u16 || ObjectType
|-
| 4 || u32 || ObjectCompressedPtr
|-
|-
| 8 || ptr || ?
| 8 || [[#KAutoObject]]* || object
|}
|}
</div>
</div>
Line 1,175: Line 1,198:
| 0x50 || [[#KSessionRequest]]* || ActiveRequest
| 0x50 || [[#KSessionRequest]]* || ActiveRequest
|-
|-
| 0x58 || ||
| 0x58 || [[#KMutex]] || lock
|}
|}