summaryrefslogtreecommitdiffhomepage
path: root/Private/NewKit
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-03-11 20:59:22 +0100
committeramlal <amlal@el-mahrouss-logic.com>2024-03-11 21:05:13 +0100
commitba8ddb24e0ac6c7b1a617519a4bde9970610fbcc (patch)
treec741ec82a267e44e2a362399ed20439184504ace /Private/NewKit
parent5468ca71a59c9e24c1d392554e8f97f0c1705394 (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.hpp15
-rw-r--r--Private/NewKit/KernelCheck.hpp2
-rw-r--r--Private/NewKit/UserHeap.hpp19
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