summaryrefslogtreecommitdiffhomepage
path: root/Kernel/ArchKit/ArchKit.hpp
diff options
context:
space:
mode:
authorAmlal EL Mahrouss <amlal@softwarelabs.com>2024-06-13 17:41:19 +0200
committerAmlal EL Mahrouss <amlal@softwarelabs.com>2024-06-13 17:41:19 +0200
commit349fe48baf941b2d1b571d3a5d0d796823bae312 (patch)
tree6258abfbede227d0a7806530ccbf3cdf3ca3699c /Kernel/ArchKit/ArchKit.hpp
parent70ae21935c7c68ed8a380611481b553b94cee657 (diff)
MHR-31: New systemcall/kernelcall architecture.
Signed-off-by: Amlal EL Mahrouss <amlal@softwarelabs.com>
Diffstat (limited to 'Kernel/ArchKit/ArchKit.hpp')
-rw-r--r--Kernel/ArchKit/ArchKit.hpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/Kernel/ArchKit/ArchKit.hpp b/Kernel/ArchKit/ArchKit.hpp
index 419f2c7a..c2e5a967 100644
--- a/Kernel/ArchKit/ArchKit.hpp
+++ b/Kernel/ArchKit/ArchKit.hpp
@@ -81,10 +81,21 @@ namespace NewOS
typedef NewOS::Void (*rt_syscall_proc)(NewOS::HAL::StackFramePtr);
-extern NewOS::Array<rt_syscall_proc,
+struct RTSyscallInfoHdr final
+{
+ NewOS::Int64 fHash;
+ NewOS::Bool fHooked;
+ rt_syscall_proc fProc;
+};
+
+inline NewOS::Array<RTSyscallInfoHdr,
kKernelMaxSystemCalls>
kSyscalls;
+inline NewOS::Array<RTSyscallInfoHdr,
+ kKernelMaxSystemCalls>
+ kKerncalls;
+
EXTERN_C NewOS::HAL::StackFramePtr rt_get_current_context();
EXTERN_C NewOS::Void rt_do_context_switch(NewOS::HAL::StackFramePtr stackFrame);