From e05aa2145b8d0000110b93fb371ba858cb2a02bc Mon Sep 17 00:00:00 2001 From: Amlal Date: Sat, 14 Sep 2024 20:11:35 +0200 Subject: IMP: Fixes and improvements on PEF Loader, User scheduler and BMP manager. - This covers the Memory Manager, User Scheduler Manager and Loader Manager. - These are mostly fixes and added features. - Such as a new symbol to get heap reserve. META: Run format command. Signed-off-by: Amlal --- dev/ZKA/Sources/PEFCodeMgr.cxx | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'dev/ZKA/Sources/PEFCodeMgr.cxx') diff --git a/dev/ZKA/Sources/PEFCodeMgr.cxx b/dev/ZKA/Sources/PEFCodeMgr.cxx index c635dd69..fa9b0d93 100644 --- a/dev/ZKA/Sources/PEFCodeMgr.cxx +++ b/dev/ZKA/Sources/PEFCodeMgr.cxx @@ -15,6 +15,7 @@ /// @brief PEF stack size symbol. #define cPefStackSizeSymbol "SizeOfReserveStack" +#define cPefHeapSizeSymbol "SizeOfReserveHeap" #define cPefNameSymbol "ProgramName" namespace Kernel @@ -206,8 +207,9 @@ namespace Kernel UserProcess proc; proc.SetImageStart(errOrStart.Leak().Leak()); - proc.Kind = procKind; - proc.StackSize = *(UIntPtr*)exec.FindSymbol(cPefStackSizeSymbol, kPefData); + proc.Kind = procKind; + proc.StackSize = *(UIntPtr*)exec.FindSymbol(cPefStackSizeSymbol, kPefData); + proc.MemoryLimit = *(UIntPtr*)exec.FindSymbol(cPefHeapSizeSymbol, kPefData); rt_set_memory(proc.Name, 0, kProcessLen); @@ -235,15 +237,17 @@ namespace Kernel const Char* PEFLoader::AsString() { #ifdef __32x0__ - return "32x0 PEF format."; + return "32x0 PEF executable."; #elif defined(__64x0__) - return "64x0 PEF format."; + return "64x0 PEF executable."; #elif defined(__x86_64__) - return "x86_64 PEF format."; + return "x86_64 PEF executable."; +#elif defined(__aarch64__) + return "aarch64 PEF executable."; #elif defined(__powerpc64__) - return "POWER PEF format."; + return "POWER64 PEF executable."; #else - return "Unknown PEF format."; + return "???? PEF executable."; #endif // __32x0__ || __64x0__ || __x86_64__ || __powerpc64__ } -- cgit v1.2.3