Kernel: Introduce skeleton Process class to hold process data
This commit is contained in:
parent
8809d02db3
commit
6d60acf0f1
13 changed files with 191 additions and 48 deletions
|
@ -10,9 +10,9 @@
|
|||
#include "common/logging/log.h"
|
||||
#include "common/symbols.h"
|
||||
|
||||
#include "core/mem_map.h"
|
||||
#include "core/loader/elf.h"
|
||||
#include "core/hle/kernel/kernel.h"
|
||||
#include "core/loader/elf.h"
|
||||
#include "core/mem_map.h"
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// ELF Header Constants
|
||||
|
@ -350,9 +350,14 @@ ResultStatus AppLoader_ELF::Load() {
|
|||
if (file->ReadBytes(&buffer[0], size) != size)
|
||||
return ResultStatus::Error;
|
||||
|
||||
Kernel::g_current_process = Kernel::Process::Create(filename, 0);
|
||||
Kernel::g_current_process->static_address_mappings = default_address_mappings;
|
||||
|
||||
ElfReader elf_reader(&buffer[0]);
|
||||
elf_reader.LoadInto(0x00100000);
|
||||
Kernel::LoadExec(elf_reader.GetEntryPoint());
|
||||
elf_reader.LoadInto(Memory::EXEFS_CODE_VADDR);
|
||||
// TODO: Fill application title
|
||||
|
||||
Kernel::g_current_process->Run(elf_reader.GetEntryPoint(), 48, Kernel::DEFAULT_STACK_SIZE);
|
||||
|
||||
is_loaded = true;
|
||||
return ResultStatus::Success;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue