summaryrefslogtreecommitdiffhomepage
path: root/dev/ZKAKit/src/PEFCodeMgr.cc
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-12-07 16:26:46 +0100
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-12-07 16:26:46 +0100
commit63be0a396d95db7b629ffe64dcc543e251936b36 (patch)
tree41f7be6516dcb67ab8ff922ebcfad3db39f03549 /dev/ZKAKit/src/PEFCodeMgr.cc
parent16872513febbbdee48e493eb92d95fc39ec80484 (diff)
WIP: #8
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/ZKAKit/src/PEFCodeMgr.cc')
-rw-r--r--dev/ZKAKit/src/PEFCodeMgr.cc24
1 files changed, 12 insertions, 12 deletions
diff --git a/dev/ZKAKit/src/PEFCodeMgr.cc b/dev/ZKAKit/src/PEFCodeMgr.cc
index 5bdef56d..43efa00a 100644
--- a/dev/ZKAKit/src/PEFCodeMgr.cc
+++ b/dev/ZKAKit/src/PEFCodeMgr.cc
@@ -253,27 +253,27 @@ namespace Kernel
if (errOrStart.Error() != kErrorSuccess)
return kProcessInvalidID;
- STATIC UserProcess proc;
+ UserProcess* proc = new UserProcess();
- proc.Kind = procKind;
- proc.Image.fCode = errOrStart.Leak().Leak();
- proc.Image.fBlob = exec.GetBlob().Leak().Leak();
- proc.StackSize = *(UIntPtr*)exec.FindSymbol(kPefStackSizeSymbol, kPefData);
- proc.MemoryLimit = *(UIntPtr*)exec.FindSymbol(kPefHeapSizeSymbol, kPefData);
- proc.PTime = 0UL;
+ proc->Kind = procKind;
+ proc->Image.fCode = errOrStart.Leak().Leak();
+ proc->Image.fBlob = exec.GetBlob().Leak().Leak();
+ proc->StackSize = *(UIntPtr*)exec.FindSymbol(kPefStackSizeSymbol, kPefData);
+ proc->MemoryLimit = *(UIntPtr*)exec.FindSymbol(kPefHeapSizeSymbol, kPefData);
+ proc->PTime = 0UL;
- rt_set_memory(proc.Name, 0, kProcessNameLen);
+ rt_set_memory(proc->Name, 0, kProcessNameLen);
if (exec.FindSymbol(kPefNameSymbol, kPefData))
- rt_copy_memory(exec.FindSymbol(kPefNameSymbol, kPefData), proc.Name, rt_string_len((Char*)exec.FindSymbol(kPefNameSymbol, kPefData)));
+ rt_copy_memory(exec.FindSymbol(kPefNameSymbol, kPefData), proc->Name, rt_string_len((Char*)exec.FindSymbol(kPefNameSymbol, kPefData)));
- if (!proc.StackSize)
+ if (!proc->StackSize)
{
const auto kDefaultStackSizeMib = 8;
- proc.StackSize = mib_cast(kDefaultStackSizeMib);
+ proc->StackSize = mib_cast(kDefaultStackSizeMib);
}
- return UserProcessScheduler::The().Spawn(&proc);
+ return UserProcessScheduler::The().Spawn(proc);
}
} // namespace Utils
} // namespace Kernel