Changes

4 bytes added ,  12:48, 7 April 2016
m
no edit summary
Line 11: Line 11:  
Each process has a separate handle-table, the size of which is stored in the kernel capability descriptor. The handles in a handle-table can't be used in the context of other processes, since those handles don't exist in other handle-tables.
 
Each process has a separate handle-table, the size of which is stored in the kernel capability descriptor. The handles in a handle-table can't be used in the context of other processes, since those handles don't exist in other handle-tables.
   −
0xFFFF8001 is a handle alias for the current KProcess, and 0xFFFF8000 is a handle alias for the current KThread.
+
0xFFFF8001 is a handle alias for the current process.
    
Calling svcBreak on retail will only terminate the process which called this SVC.
 
Calling svcBreak on retail will only terminate the process which called this SVC.
Line 101: Line 101:     
The thread scheduler is cooperative, therefore if a thread takes up all the CPU time (for example if it enters an endless loop), all the other threads that run on the same CPU core won't get a chance to run. The main way of yielding another thread is using an address arbiter.
 
The thread scheduler is cooperative, therefore if a thread takes up all the CPU time (for example if it enters an endless loop), all the other threads that run on the same CPU core won't get a chance to run. The main way of yielding another thread is using an address arbiter.
 +
 +
0xFFFF8000 is a handle alias for the currently active thread.
    
== Usage ==
 
== Usage ==
549

edits