kern: implement KProcess::Run

This commit is contained in:
Michael Scire 2020-02-19 19:38:20 -08:00
parent 28ea0b12a8
commit c568788609
25 changed files with 516 additions and 33 deletions

View file

@ -34,6 +34,7 @@ namespace ams::kern {
class KPageTableManager;
class KMemoryBlockSlabManager;
class KBlockInfoManager;
class KSynchronization;
@ -70,6 +71,7 @@ namespace ams::kern {
static KMemoryBlockSlabManager s_sys_memory_block_manager;
static KBlockInfoManager s_block_info_manager;
static KSupervisorPageTable s_supervisor_page_table;
static KSynchronization s_synchronization;
static KWorkerTaskManager s_worker_task_managers[KWorkerTaskManager::WorkerType_Count];
private:
static ALWAYS_INLINE KCoreLocalContext &GetCoreLocalContext() {
@ -138,6 +140,10 @@ namespace ams::kern {
return s_supervisor_page_table;
}
static ALWAYS_INLINE KSynchronization &GetSynchronization() {
return s_synchronization;
}
static ALWAYS_INLINE KWorkerTaskManager &GetWorkerTaskManager(KWorkerTaskManager::WorkerType type) {
MESOSPHERE_ASSERT(type <= KWorkerTaskManager::WorkerType_Count);
return s_worker_task_managers[type];