KSemaphore: Difference between revisions
		
		
		
		Jump to navigation
		Jump to search
		
 Update semaphore internal linked list  | 
				No edit summary  | 
				||
| (7 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*    | | KLinkedListNode*    | ||
| Pointer to first KLinkedListNode in list of KThreads that   | | Pointer to first KLinkedListNode in list of KThreads that sync with this semaphore  | ||
|-  | |-  | ||
| 0x10  | | 0x10  | ||
| KLinkedListNode*  | | KLinkedListNode*  | ||
| Pointer to last KLinkedListNode in list of KThreads that   | | 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 |