diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2025-01-07 08:33:01 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2025-01-07 08:33:01 +0100 |
| commit | 3ce4b68fc3f1ad9ead503bb3f69bff11b4a3183a (patch) | |
| tree | 9d679d2092e71a35305ae6c6c9554bfc6528b6ca /dev/Kernel/KernelKit | |
| parent | ecf2a09a48ef029d09075af744c04e643661ec27 (diff) | |
FIX: KAN-12 (EPM GPF)
ADD: Dylib object instead of DLL objects.
ADD: Introduce CoreGfx instead of GfxMgr.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Kernel/KernelKit')
| -rw-r--r-- | dev/Kernel/KernelKit/CodeMgr.h | 2 | ||||
| -rw-r--r-- | dev/Kernel/KernelKit/DriveMgr.h | 5 | ||||
| -rw-r--r-- | dev/Kernel/KernelKit/IDylibObject.h (renamed from dev/Kernel/KernelKit/IDLLObject.h) | 10 | ||||
| -rw-r--r-- | dev/Kernel/KernelKit/IPEFDylibObject.h (renamed from dev/Kernel/KernelKit/IPEFDLLObject.h) | 16 | ||||
| -rw-r--r-- | dev/Kernel/KernelKit/UserProcessScheduler.h | 4 |
5 files changed, 21 insertions, 16 deletions
diff --git a/dev/Kernel/KernelKit/CodeMgr.h b/dev/Kernel/KernelKit/CodeMgr.h index d3b9f39a..12a63dc0 100644 --- a/dev/Kernel/KernelKit/CodeMgr.h +++ b/dev/Kernel/KernelKit/CodeMgr.h @@ -16,7 +16,7 @@ #include <KernelKit/PECodeMgr.h> #include <KernelKit/PEFCodeMgr.h> -#include <KernelKit/IPEFDLLObject.h> +#include <KernelKit/IPEFDylibObject.h> namespace Kernel { diff --git a/dev/Kernel/KernelKit/DriveMgr.h b/dev/Kernel/KernelKit/DriveMgr.h index e907acf8..4c879ab5 100644 --- a/dev/Kernel/KernelKit/DriveMgr.h +++ b/dev/Kernel/KernelKit/DriveMgr.h @@ -164,6 +164,11 @@ namespace Kernel /// @brief Fetches the main drive. /// @return the new drive as a trait. DriveTrait io_construct_main_drive(Void) noexcept; + + namespace Detect + { + Void io_detect_drive(DriveTrait& trait); + } } // namespace Kernel #endif /* ifndef INC_DRIVE_MANAGER_H */ diff --git a/dev/Kernel/KernelKit/IDLLObject.h b/dev/Kernel/KernelKit/IDylibObject.h index 035f0013..d4c93034 100644 --- a/dev/Kernel/KernelKit/IDLLObject.h +++ b/dev/Kernel/KernelKit/IDylibObject.h @@ -12,16 +12,16 @@ #include <NewKit/Defines.h> #include <CompilerKit/CompilerKit.h> -#define ZKA_DLL_OBJECT : public IDLLObject +#define ZKA_DLL_OBJECT : public IDylibObject namespace Kernel { /// @brief DLL class object. A handle to a shared library. - class IDLLObject + class IDylibObject { public: - explicit IDLLObject() = default; - virtual ~IDLLObject() = default; + explicit IDylibObject() = default; + virtual ~IDylibObject() = default; struct DLL_TRAITS final { @@ -34,7 +34,7 @@ namespace Kernel } }; - ZKA_COPY_DEFAULT(IDLLObject); + ZKA_COPY_DEFAULT(IDylibObject); virtual DLL_TRAITS** GetAddressOf() = 0; virtual DLL_TRAITS* Get() = 0; diff --git a/dev/Kernel/KernelKit/IPEFDLLObject.h b/dev/Kernel/KernelKit/IPEFDylibObject.h index 1781c589..c8a69690 100644 --- a/dev/Kernel/KernelKit/IPEFDLLObject.h +++ b/dev/Kernel/KernelKit/IPEFDylibObject.h @@ -14,7 +14,7 @@ #include <NewKit/Defines.h> #include <KernelKit/PEFCodeMgr.h> #include <KernelKit/UserProcessScheduler.h> -#include <KernelKit/IDLLObject.h> +#include <KernelKit/IDylibObject.h> namespace Kernel { @@ -22,14 +22,14 @@ namespace Kernel * @brief Shared Library class * Load library from this class */ - class IPEFDLLObject final ZKA_DLL_OBJECT + class IPEFDylibObject final ZKA_DLL_OBJECT { public: - explicit IPEFDLLObject() = default; - ~IPEFDLLObject() = default; + explicit IPEFDylibObject() = default; + ~IPEFDylibObject() = default; public: - ZKA_COPY_DEFAULT(IPEFDLLObject); + ZKA_COPY_DEFAULT(IPEFDylibObject); private: DLL_TRAITS* fMounted{nullptr}; @@ -97,10 +97,10 @@ namespace Kernel PEFLoader* fLoader{nullptr}; }; - typedef IPEFDLLObject* IDLL; + typedef IPEFDylibObject* IDylib; - EXTERN_C IDLL rtl_init_dylib(UserThread& header); - EXTERN_C Void rtl_fini_dylib(UserThread& header, IDLL lib, Bool* successful); + EXTERN_C IDylib rtl_init_dylib(UserThread& header); + EXTERN_C Void rtl_fini_dylib(UserThread& header, IDylib lib, Bool* successful); } // namespace Kernel #endif /* ifndef __KERNELKIT_SHARED_OBJECT_H__ */ diff --git a/dev/Kernel/KernelKit/UserProcessScheduler.h b/dev/Kernel/KernelKit/UserProcessScheduler.h index a08a5dc1..8212fdc2 100644 --- a/dev/Kernel/KernelKit/UserProcessScheduler.h +++ b/dev/Kernel/KernelKit/UserProcessScheduler.h @@ -30,7 +30,7 @@ namespace Kernel { //! @note Forward class declarations. - class IDLLObject; + class IDylibObject; class UserThread; class UserProcessTeam; class UserProcessScheduler; @@ -163,7 +163,7 @@ namespace Kernel UInt8* StackReserve{nullptr}; UserProcessImage Image{}; SizeT StackSize{kSchedMaxStackSz}; - IDLLObject* DylibDelegate{nullptr}; + IDylibObject* DylibDelegate{nullptr}; SizeT MemoryCursor{0UL}; SizeT MemoryLimit{kSchedMaxMemoryLimit}; SizeT UsedMemory{0UL}; |
