KSemaphore: Difference between revisions

Bond697 (talk | contribs)
No edit summary
No edit summary
 
(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
| KLinkedListNode count for object  
| Count of KThreads that sync with this object - number of nodes in the linked list below
|-
|-
| 0xC
| 0xC
| u32
| KLinkedListNode*
| Pointer to semaphore data node
| Pointer to first KLinkedListNode in list of KThreads that sync with this semaphore
|-
|-
| 0x10
| 0x10
| u32
| KLinkedListNode*
| Pointer identical to the one above
| Pointer to last KLinkedListNode in list of KThreads that sync with this semaphore
|-
|-
| 0x14
| 0x14
| u32
| [[KUserBindableInterruptEvent]]
| Pointer to smaller vtable
| Interrupt event (*this)
|-
| 0x18
| u32
| Unknown
|-
| 0x1C
| u32
| Unknown
|-
|-
| 0x20
| 0x20
| u32
| u32
| Unknown
| Count
|-
|-
| 0x24
| 0x24
| u32
| u32
| Count
| Max count
|-
|-
| 0x28
| 0x28