Difference between revisions of "KScheduler"

From 3dbrew
Jump to navigation Jump to search
Line 2: Line 2:
  
 
Size : 0x228 bytes  
 
Size : 0x228 bytes  
 +
  
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
Line 15: Line 16:
 
| 0x4
 
| 0x4
 
| u32
 
| u32
| Unused
+
| Unused, may have been for reference count
 
|-
 
|-
 
| 0x8
 
| 0x8
Line 36: Line 37:
 
| bool
 
| bool
 
| Post-interrupt rescheduling needed
 
| Post-interrupt rescheduling needed
 +
|-
 +
| 0x10
 +
| s16
 +
| Scheduler core number
 +
|-
 +
| 0x12
 +
| s16
 +
| Count of threads currently being managed by this scheduler object
 
|}
 
|}
 +
 +
 +
There is 1 KScheduler object per core.

Revision as of 18:46, 18 March 2015


Size : 0x228 bytes


Offset Type Description
0x0 u32 Pointer to vtable
0x4 u32 Unused, may have been for reference count
0x8 u32 Count for thread switches - this is only added to if a context switch function runs but exits because the scheduler is locked by another thread.
0xC bool Context switch needed
0xD bool Context switch started during interrupt
0xE bool Trigger CPU cross-core interrupt (interrupt 8)
0xF bool Post-interrupt rescheduling needed
0x10 s16 Scheduler core number
0x12 s16 Count of threads currently being managed by this scheduler object


There is 1 KScheduler object per core.