Commit Graph

11 Commits (820d81b9a5392951c18daa5a47d6c0ffd28baa9b)

Author SHA1 Message Date
Zach Hilman 820d81b9a5 scheduler: Add explanations for YieldWith and WithoutLoadBalancing 7 years ago
Zach Hilman 409dcf0e0a svc: Implement yield types 0 and -1 7 years ago
Lioncash 6594853eb1 svc: Implement svcGetInfo command 0xF0000002
This retrieves:

if (curr_thread == handle_thread) {
   result = total_thread_ticks + (hardware_tick_count - last_context_switch_ticks);
} else if (curr_thread == handle_thread && sub_id == current_core_index) {
   result = hardware_tick_count - last_context_switch_ticks;
}
7 years ago
Lioncash a58eefa7e4 kernel/scheduler: Take ARM_Interface instance by reference in the constructor
It doesn't make sense to allow a scheduler to be constructed around a
null pointer.
7 years ago
Lioncash 43e0d865fa core: Namespace all code in the arm subdirectory under the Core namespace
Gets all of these types and interfaces out of the global namespace.
7 years ago
Lioncash e850ff63bc scheduler: Make HaveReadyThreads() a const member function
This function doesn't modify instance state, so the const qualifier can
be added to it.
7 years ago
Lioncash bf45092c61 kernel: Move object class to its own source files
General moving to keep kernel object types separate from the direct
kernel code. Also essentially a preliminary cleanup before eliminating
global kernel state in the kernel code.
7 years ago
Lioncash a2304fad16 kernel: Remove unnecessary includes
Removes unnecessary direct dependencies in some headers and also gets
rid of indirect dependencies that were being relied on to be included.
7 years ago
bunnei 91af2f94e8 scheduler: Protect scheduling functions with a global mutex. 8 years ago
bunnei 8db80d8389 scheduler: Cleanup based on PR feedback. 8 years ago
bunnei c78d495161 kernel: Add Scheduler, which encapsulates the scheduling loading from Thread module. 8 years ago