diff options
| author | Amlal El Mahrouss <amlal@el-mahrouss-logic.com> | 2024-03-11 20:59:22 +0100 |
|---|---|---|
| committer | amlal <amlal@el-mahrouss-logic.com> | 2024-03-11 21:05:13 +0100 |
| commit | ba8ddb24e0ac6c7b1a617519a4bde9970610fbcc (patch) | |
| tree | c741ec82a267e44e2a362399ed20439184504ace /Private/NewKit | |
| parent | 5468ca71a59c9e24c1d392554e8f97f0c1705394 (diff) | |
Kernel: Important changes, needs to be merged to master.
- Add Logon executive.
- Adding HCore System Call Interface (inside System.Core.dll)
- Add _InOut and _StrictInOut inside HintKit.
Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
Signed-off-by: amlal <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Private/NewKit')
| -rw-r--r-- | Private/NewKit/ErrorID.hpp | 15 | ||||
| -rw-r--r-- | Private/NewKit/KernelCheck.hpp | 2 | ||||
| -rw-r--r-- | Private/NewKit/UserHeap.hpp | 19 |
3 files changed, 20 insertions, 16 deletions
diff --git a/Private/NewKit/ErrorID.hpp b/Private/NewKit/ErrorID.hpp index d0572e7e..b2cc65d1 100644 --- a/Private/NewKit/ErrorID.hpp +++ b/Private/NewKit/ErrorID.hpp @@ -6,15 +6,14 @@ #pragma once -/// @brief kernel errors. +/// @brief Internal kernel errors. #include <NewKit/ErrorOr.hpp> #include <NewKit/Defines.hpp> -#define H_EXEC_ERROR -30 -#define H_FILE_NOT_FOUND -31 -#define H_DIR_NOT_FOUND -32 -#define H_FILE_EXISTS -33 -#define H_TOO_LONG -34 -#define H_INVALID_DATA -35 -#define H_UNIMPLEMENTED -36 +#define H_EXEC_ERROR 33 +#define H_FILE_NOT_FOUND 35 +#define H_DIR_NOT_FOUND 36 +#define H_FILE_EXISTS 46 +#define H_UNIMPLEMENTED 0 +#define H_INVALID_DATA 1 diff --git a/Private/NewKit/KernelCheck.hpp b/Private/NewKit/KernelCheck.hpp index 7fd6dc2d..5eb81761 100644 --- a/Private/NewKit/KernelCheck.hpp +++ b/Private/NewKit/KernelCheck.hpp @@ -32,8 +32,8 @@ enum RUNTIME_CHECK { RUNTIME_CHECK_INVALID_PRIVILEGE, RUNTIME_CHECK_PROCESS, RUNTIME_CHECK_BAD_BEHAVIOR, - RUNTIME_CHECK_COUNT, RUNTIME_CHECK_BOOTSTRAP, + RUNTIME_CHECK_COUNT, }; namespace HCore { diff --git a/Private/NewKit/UserHeap.hpp b/Private/NewKit/UserHeap.hpp index 1bf1997f..d33ea612 100644 --- a/Private/NewKit/UserHeap.hpp +++ b/Private/NewKit/UserHeap.hpp @@ -14,20 +14,25 @@ #include <NewKit/Ref.hpp> // last-rev 5/11/23 -// file: pool.hpp -// description: memory pool for user programs. +// file: UserHeap.hpp +// description: memory heap for user programs. -#define kPoolMaxSz 4096 +#define kPoolMaxSz (4096) #define kPoolMag 0x5500A1 namespace HCore { -enum { +typedef enum { kPoolHypervisor = 0x2, kPoolShared = 0x4, kPoolUser = 0x6, kPoolRw = 0x8, -}; +} kPoolFlags; -VoidPtr ke_new_heap(Int32 flags); -Int32 ke_free_heap(voidPtr pointer); +/// @brief Allocate a process heap, no zero out is done here. +/// @param flags +/// @return The process's heap. +VoidPtr rt_new_heap(Int32 flags); + + +Int32 rt_free_heap(voidPtr pointer); } // namespace HCore |
