Difference between revisions of "KSemaphore"
Jump to navigation
Jump to search
(8 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | [[Category:Kernel objects]] | + | [[Category:Kernel synchronization objects]] |
− | class [[KSemaphore]] extends [[KSynchronizationObject]]; | + | [[Category:Kernel interrupt events]] |
+ | class [[KSemaphore]] extends [[KSynchronizationObject]] and [[KUserBindableInterruptEvent]]; | ||
Size : 0x2C bytes | Size : 0x2C bytes | ||
Line 20: | Line 21: | ||
| 0x8 | | 0x8 | ||
| u32 | | u32 | ||
− | | | + | | Count of KThreads that sync with this object - number of nodes in the linked list below |
|- | |- | ||
| 0xC | | 0xC | ||
− | | | + | | KLinkedListNode* |
− | | Pointer to semaphore | + | | Pointer to first KLinkedListNode in list of KThreads that sync with this semaphore |
|- | |- | ||
| 0x10 | | 0x10 | ||
− | | | + | | KLinkedListNode* |
− | | Pointer | + | | Pointer to last KLinkedListNode in list of KThreads that sync with this semaphore |
|- | |- | ||
| 0x14 | | 0x14 | ||
− | | | + | | [[KUserBindableInterruptEvent]] |
− | | | + | | Interrupt event (*this) |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| 0x20 | | 0x20 | ||
| u32 | | u32 | ||
− | | | + | | Count |
|- | |- | ||
| 0x24 | | 0x24 | ||
| u32 | | u32 | ||
− | | | + | | Max count |
|- | |- | ||
| 0x28 | | 0x28 |
Latest revision as of 14:35, 10 December 2016
class KSemaphore extends KSynchronizationObject and KUserBindableInterruptEvent;
Size : 0x2C bytes
Offset | Type | Description |
---|---|---|
0x0 | u32 | Pointer to vtable |
0x4 | u32 | Reference count |
0x8 | u32 | Count of KThreads that sync with this object - number of nodes in the linked list below |
0xC | KLinkedListNode* | Pointer to first KLinkedListNode in list of KThreads that sync with this semaphore |
0x10 | KLinkedListNode* | Pointer to last KLinkedListNode in list of KThreads that sync with this semaphore |
0x14 | KUserBindableInterruptEvent | Interrupt event (*this) |
0x20 | u32 | Count |
0x24 | u32 | Max count |
0x28 | KProcess* | Owner |