summaryrefslogtreecommitdiffhomepage
path: root/Public/Kits/SystemKit/ThreadAPI.hxx
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-31 09:42:54 +0100
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-31 09:42:54 +0100
commitfc55f0d69d24fb4908cbd811681f2c3fac53614d (patch)
treeba09a2cdbb225df7ba1a9ec5a12bcbb90b673ead /Public/Kits/SystemKit/ThreadAPI.hxx
parent7bed9287589293bd9d712d152539591dee0b28c0 (diff)
kernel: add GKit, improve AMD64 HAL.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Public/Kits/SystemKit/ThreadAPI.hxx')
-rw-r--r--Public/Kits/SystemKit/ThreadAPI.hxx39
1 files changed, 39 insertions, 0 deletions
diff --git a/Public/Kits/SystemKit/ThreadAPI.hxx b/Public/Kits/SystemKit/ThreadAPI.hxx
new file mode 100644
index 00000000..a9490033
--- /dev/null
+++ b/Public/Kits/SystemKit/ThreadAPI.hxx
@@ -0,0 +1,39 @@
+/*
+ * ========================================================
+ *
+ * h-core
+ * Copyright Mahrouss Logic, all rights reserved.
+ *
+ * ========================================================
+ */
+
+//
+// Created by Amlal on 1/27/24.
+//
+
+#ifndef __THREAD_API__
+#define __THREAD_API__
+
+#include <NewKit/Defines.hpp>
+
+namespace HCore {
+/// @brief Thread Information Block for Local Storage.
+/// Located in GS on AMD64, Virtual Address 0x10000 (64x0, 32x0, ARM64)
+struct ThreadInformationBlock final {
+ const Char NAME[255]; // Module Name
+ const UIntPtr START_ADDRESS; // Start Address
+ const UIntPtr START_ALLOC; // Allocation Heap
+ const UIntPtr START_STACK; // Stack Pointer.
+ const Int32 ARCH; // Architecture and/or platform.
+};
+
+enum {
+ kPC_IA64,
+ kPC_AMD64 = kPC_IA64,
+ kPC_ARM,
+ kMACS_64x0,
+ kMACS_32x0,
+};
+} // namespace HCore
+
+#endif // __THREAD_API__