summaryrefslogtreecommitdiff
path: root/src/core/core.cpp
diff options
context:
space:
mode:
authorDavid <25727384+ogniK5377@users.noreply.github.com>2019-10-28 10:53:27 +1100
committerGitHub <noreply@github.com>2019-10-28 10:53:27 +1100
commit4c5731c34f0915457a31c60c9f70a2f169ea575d (patch)
tree7f03a7f892370b59e56ae06c6c74514f1cc44998 /src/core/core.cpp
parent6909b2f0f9bd5d34782075cf867ec4839a1eb27c (diff)
parent64e652d8cbcc4cc67442879ab7e379d62b72703c (diff)
Merge pull request #2971 from FernandoS27/new-scheduler-v2
Kernel: Implement a New Thread Scheduler V2
Diffstat (limited to 'src/core/core.cpp')
-rw-r--r--src/core/core.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp
index b7b9259ec..eba17218a 100644
--- a/src/core/core.cpp
+++ b/src/core/core.cpp
@@ -409,6 +409,12 @@ void System::PrepareReschedule() {
CurrentCpuCore().PrepareReschedule();
}
+void System::PrepareReschedule(const u32 core_index) {
+ if (core_index < GlobalScheduler().CpuCoresCount()) {
+ CpuCore(core_index).PrepareReschedule();
+ }
+}
+
PerfStatsResults System::GetAndResetPerfStats() {
return impl->GetAndResetPerfStats();
}
@@ -449,6 +455,16 @@ const Kernel::Scheduler& System::Scheduler(std::size_t core_index) const {
return CpuCore(core_index).Scheduler();
}
+/// Gets the global scheduler
+Kernel::GlobalScheduler& System::GlobalScheduler() {
+ return impl->kernel.GlobalScheduler();
+}
+
+/// Gets the global scheduler
+const Kernel::GlobalScheduler& System::GlobalScheduler() const {
+ return impl->kernel.GlobalScheduler();
+}
+
Kernel::Process* System::CurrentProcess() {
return impl->kernel.CurrentProcess();
}