Difference between revisions of "KSchedulableInterruptEventLinkedList"

From 3dbrew
Jump to navigation Jump to search
(Created page with "Category:Kernel objects Size : 0x10 bytes There is exactly one instance of this object per core. On interrupt requests, when the interrupt handler of a KSchedulableIn...")
 
m
Line 1: Line 1:
 
[[Category:Kernel objects]]
 
[[Category:Kernel objects]]
 
 
Size : 0x10 bytes
 
Size : 0x10 bytes
  

Revision as of 16:16, 8 December 2016

Size : 0x10 bytes

There is exactly one instance of this object per core.

On interrupt requests, when the interrupt handler of a KSchedulableInterruptEvent returns anything else than NULL or 1, it is added to this list.

After being added to this list, the thread handling this object (which is a thread created by the kernel main function) is scheduled and the context is switched. That thread pops the first interrupt event from the list and execute its second virtual function, then unschedules itself and switches context back.

Offset Type Description
0x0 KSchedulableInterruptEvent * First interrupt event
0x4 KSchedulableInterruptEvent * Last interrupt event
0x8 u32 Unused
0xC KThread * const Kernel thread of priority 0 handling this object