diff options
author | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2015-08-22 23:01:57 +0200 |
---|---|---|
committer | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2015-08-22 23:01:57 +0200 |
commit | 3efb205a68d38fe377b2c27349d91ec4c6a2d390 (patch) | |
tree | 4326d8394e66fec3831ce6b9851da689e5aa78e8 /src/core/hle/kernel/kernel.cpp | |
parent | Merge pull request #1056 from lioncash/emitter (diff) | |
parent | Kernel: Remove unused legacy heap MapBlock_* functions (diff) | |
download | yuzu-3efb205a68d38fe377b2c27349d91ec4c6a2d390.tar yuzu-3efb205a68d38fe377b2c27349d91ec4c6a2d390.tar.gz yuzu-3efb205a68d38fe377b2c27349d91ec4c6a2d390.tar.bz2 yuzu-3efb205a68d38fe377b2c27349d91ec4c6a2d390.tar.lz yuzu-3efb205a68d38fe377b2c27349d91ec4c6a2d390.tar.xz yuzu-3efb205a68d38fe377b2c27349d91ec4c6a2d390.tar.zst yuzu-3efb205a68d38fe377b2c27349d91ec4c6a2d390.zip |
Diffstat (limited to 'src/core/hle/kernel/kernel.cpp')
-rw-r--r-- | src/core/hle/kernel/kernel.cpp | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp index 5711c0405..7a401a965 100644 --- a/src/core/hle/kernel/kernel.cpp +++ b/src/core/hle/kernel/kernel.cpp @@ -7,11 +7,14 @@ #include "common/assert.h" #include "common/logging/log.h" +#include "core/hle/config_mem.h" #include "core/hle/kernel/kernel.h" -#include "core/hle/kernel/resource_limit.h" +#include "core/hle/kernel/memory.h" #include "core/hle/kernel/process.h" +#include "core/hle/kernel/resource_limit.h" #include "core/hle/kernel/thread.h" #include "core/hle/kernel/timer.h" +#include "core/hle/shared_page.h" namespace Kernel { @@ -119,6 +122,13 @@ void HandleTable::Clear() { /// Initialize the kernel void Init() { + ConfigMem::Init(); + SharedPage::Init(); + + // TODO(yuriks): The memory type parameter needs to be determined by the ExHeader field instead + // For now it defaults to the one with a largest allocation to the app + Kernel::MemoryInit(2); // Allocates 96MB to the application + Kernel::ResourceLimitsInit(); Kernel::ThreadingInit(); Kernel::TimersInit(); @@ -131,11 +141,14 @@ void Init() { /// Shutdown the kernel void Shutdown() { + g_handle_table.Clear(); // Free all kernel objects + Kernel::ThreadingShutdown(); + g_current_process = nullptr; + Kernel::TimersShutdown(); Kernel::ResourceLimitsShutdown(); - g_handle_table.Clear(); // Free all kernel objects - g_current_process = nullptr; + Kernel::MemoryShutdown(); } } // namespace |