summaryrefslogtreecommitdiffhomepage
path: root/dev/Kernel
diff options
context:
space:
mode:
Diffstat (limited to 'dev/Kernel')
-rw-r--r--dev/Kernel/FirmwareKit/EFI/API.h2
-rw-r--r--dev/Kernel/HALKit/AMD64/HalApplicationProcessor.cc2
-rw-r--r--dev/Kernel/HALKit/AMD64/HalKernelMain.cc2
-rw-r--r--dev/Kernel/HALKit/AMD64/HalKernelPanic.cc4
-rw-r--r--dev/Kernel/HALKit/ARM64/HalKernelMain.cc2
-rw-r--r--dev/Kernel/HALKit/ARM64/HalKernelPanic.cc4
-rw-r--r--dev/Kernel/KernelKit/CodeMgr.h2
-rw-r--r--dev/Kernel/KernelKit/DriveMgr.h5
-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.h4
-rw-r--r--dev/Kernel/src/DriveMgr.cc44
-rw-r--r--dev/Kernel/src/FS/NeFS.cc5
-rw-r--r--dev/Kernel/src/IDylibObject.cc (renamed from dev/Kernel/src/IDLLObject.cc)2
-rw-r--r--dev/Kernel/src/IPEFDylibObject.cc (renamed from dev/Kernel/src/IPEFDLLObject.cc)24
-rw-r--r--dev/Kernel/src/UserProcessScheduler.cc4
16 files changed, 67 insertions, 65 deletions
diff --git a/dev/Kernel/FirmwareKit/EFI/API.h b/dev/Kernel/FirmwareKit/EFI/API.h
index ee4fcebb..4cf60df4 100644
--- a/dev/Kernel/FirmwareKit/EFI/API.h
+++ b/dev/Kernel/FirmwareKit/EFI/API.h
@@ -21,7 +21,7 @@ class BTextWriter;
#define __BOOTKIT_NO_INCLUDE__ 1
#include <BootKit/BootKit.h>
-#include <Mod/GfxMgr/FBMgr.h>
+#include <Mod/CoreGfx/FBMgr.h>
#endif // ifdef __ZBAOSLDR__
inline EfiSystemTable* ST = nullptr;
diff --git a/dev/Kernel/HALKit/AMD64/HalApplicationProcessor.cc b/dev/Kernel/HALKit/AMD64/HalApplicationProcessor.cc
index 408826d0..6563f23c 100644
--- a/dev/Kernel/HALKit/AMD64/HalApplicationProcessor.cc
+++ b/dev/Kernel/HALKit/AMD64/HalApplicationProcessor.cc
@@ -11,7 +11,7 @@
#include <KernelKit/Semaphore.h>
#include <KernelKit/UserProcessScheduler.h>
#include <KernelKit/Timer.h>
-#include <Mod/GfxMgr/TextMgr.h>
+#include <Mod/CoreGfx/TextMgr.h>
#include <NewKit/KernelPanic.h>
#include <KernelKit/HardwareThreadScheduler.h>
diff --git a/dev/Kernel/HALKit/AMD64/HalKernelMain.cc b/dev/Kernel/HALKit/AMD64/HalKernelMain.cc
index 7b3e2345..e27e2efb 100644
--- a/dev/Kernel/HALKit/AMD64/HalKernelMain.cc
+++ b/dev/Kernel/HALKit/AMD64/HalKernelMain.cc
@@ -11,7 +11,7 @@
#include <Mod/ACPI/ACPIFactoryInterface.h>
#include <NetworkKit/IPC.h>
#include <CFKit/Property.h>
-#include <Mod/GfxMgr/TextMgr.h>
+#include <Mod/CoreGfx/TextMgr.h>
EXTERN_C Kernel::VoidPtr kInterruptVectorTable[];
EXTERN_C Kernel::VoidPtr mp_user_switch_proc;
diff --git a/dev/Kernel/HALKit/AMD64/HalKernelPanic.cc b/dev/Kernel/HALKit/AMD64/HalKernelPanic.cc
index 6f8b292a..18296d22 100644
--- a/dev/Kernel/HALKit/AMD64/HalKernelPanic.cc
+++ b/dev/Kernel/HALKit/AMD64/HalKernelPanic.cc
@@ -11,8 +11,8 @@
#include <NewKit/KString.h>
#include <FirmwareKit/Handover.h>
#include <KernelKit/FileMgr.h>
-#include <Mod/GfxMgr/FBMgr.h>
-#include <Mod/GfxMgr/TextMgr.h>
+#include <Mod/CoreGfx/FBMgr.h>
+#include <Mod/CoreGfx/TextMgr.h>
#include <NewKit/Utils.h>
/* Each error code is attributed with an ID, which will prompt a string onto the
diff --git a/dev/Kernel/HALKit/ARM64/HalKernelMain.cc b/dev/Kernel/HALKit/ARM64/HalKernelMain.cc
index 1869d97b..1a520994 100644
--- a/dev/Kernel/HALKit/ARM64/HalKernelMain.cc
+++ b/dev/Kernel/HALKit/ARM64/HalKernelMain.cc
@@ -6,7 +6,7 @@
#include "HALKit/ARM64/ApplicationProcessor.h"
#include <ArchKit/ArchKit.h>
-#include <Mod/GfxMgr/FBMgr.h>
+#include <Mod/CoreGfx/FBMgr.h>
#include <FirmwareKit/Handover.h>
#include <KernelKit/FileMgr.h>
#include <KernelKit/Heap.h>
diff --git a/dev/Kernel/HALKit/ARM64/HalKernelPanic.cc b/dev/Kernel/HALKit/ARM64/HalKernelPanic.cc
index 4cd61aff..cca564f8 100644
--- a/dev/Kernel/HALKit/ARM64/HalKernelPanic.cc
+++ b/dev/Kernel/HALKit/ARM64/HalKernelPanic.cc
@@ -11,8 +11,8 @@
#include <NewKit/KString.h>
#include <FirmwareKit/Handover.h>
#include <KernelKit/FileMgr.h>
-#include <Mod/GfxMgr/FBMgr.h>
-#include <Mod/GfxMgr/TextMgr.h>
+#include <Mod/CoreGfx/FBMgr.h>
+#include <Mod/CoreGfx/TextMgr.h>
#include <NewKit/Utils.h>
/* Each error code is attributed with an ID, which will prompt a string onto the
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};
diff --git a/dev/Kernel/src/DriveMgr.cc b/dev/Kernel/src/DriveMgr.cc
index 8e8d5ab2..8ac5bdff 100644
--- a/dev/Kernel/src/DriveMgr.cc
+++ b/dev/Kernel/src/DriveMgr.cc
@@ -154,34 +154,34 @@ namespace Kernel
return trait;
}
- namespace Detail
+ namespace Detect
{
- Void ioi_detect_drive(DriveTrait* trait)
+ Void io_detect_drive(DriveTrait& trait)
{
- static EPM_BOOT_BLOCK block_struct;
+ EPM_BOOT_BLOCK block_struct;
- trait->fPacket.fPacketLba = kEPMBootBlockLba;
- trait->fPacket.fPacketSize = sizeof(EPM_BOOT_BLOCK);
- trait->fPacket.fPacketContent = &block_struct;
+ trait.fPacket.fPacketLba = kEPMBootBlockLba;
+ trait.fPacket.fPacketSize = sizeof(EPM_BOOT_BLOCK);
+ trait.fPacket.fPacketContent = &block_struct;
- rt_copy_memory((VoidPtr) "fs/detect-packet", trait->fPacket.fPacketMime,
+ rt_copy_memory((VoidPtr) "fs/detect-packet", trait.fPacket.fPacketMime,
rt_string_len("fs/detect-packet"));
- trait->fInit(&trait->fPacket);
+ trait.fInit(&trait.fPacket);
- trait->fInput(&trait->fPacket);
+ trait.fInput(&trait.fPacket);
- if (rt_string_cmp(((BOOT_BLOCK_STRUCT*)trait->fPacket.fPacketContent)->Magic, kEPMMagic, kEPMMagicLength) == 0)
+ if (rt_string_cmp(((BOOT_BLOCK_STRUCT*)trait.fPacket.fPacketContent)->Magic, kEPMMagic, kEPMMagicLength) == 0)
{
- trait->fPacket.fPacketReadOnly = NO;
- trait->fKind = kMassStorageDisc | kEPMDrive;
+ trait.fPacket.fPacketReadOnly = NO;
+ trait.fKind = kMassStorageDisc | kEPMDrive;
kcout << "Formatted Disk is EPM (Mass Storage)\r";
}
else
{
- trait->fPacket.fPacketReadOnly = YES;
- trait->fKind = kMassStorageDisc | kUnformattedDrive | kReadOnlyDrive;
+ trait.fPacket.fPacketReadOnly = YES;
+ trait.fKind = kMassStorageDisc | kUnformattedDrive | kReadOnlyDrive;
kcout << "Scheme Found: " << block_struct.Name << endl;
@@ -189,12 +189,12 @@ namespace Kernel
kcout << "Disk partition is unknown (Read Only)\r";
}
- rt_copy_memory((VoidPtr) "*/*", trait->fPacket.fPacketMime,
+ rt_copy_memory((VoidPtr) "*/*", trait.fPacket.fPacketMime,
rt_string_len("*/*"));
- trait->fPacket.fPacketLba = 0;
- trait->fPacket.fPacketSize = 0UL;
- trait->fPacket.fPacketContent = nullptr;
+ trait.fPacket.fPacketLba = 0;
+ trait.fPacket.fPacketSize = 0UL;
+ trait.fPacket.fPacketContent = nullptr;
}
} // namespace Detail
@@ -202,9 +202,9 @@ namespace Kernel
/// @return the new drive. (returns kEPMDrive if EPM formatted)
DriveTrait io_construct_main_drive() noexcept
{
- DriveTrait trait{};
+ DriveTrait trait;
- const auto kMainDrive = "/Mount/OS:";
+ constexpr auto kMainDrive = "/Mount/OS:";
rt_copy_memory((VoidPtr)kMainDrive, trait.fName, rt_string_len(kMainDrive));
@@ -216,9 +216,9 @@ namespace Kernel
trait.fInit = io_drv_init;
trait.fDriveKind = io_drv_kind;
- kcout << "Detecting partition scheme of: " << trait.fName << ".\r";
+ Detect::io_detect_drive(trait);
- Detail::ioi_detect_drive(&trait);
+ kcout << "Detecting partition scheme of: " << trait.fName << ".\r";
return trait;
}
diff --git a/dev/Kernel/src/FS/NeFS.cc b/dev/Kernel/src/FS/NeFS.cc
index b0a7c6c6..902b57a8 100644
--- a/dev/Kernel/src/FS/NeFS.cc
+++ b/dev/Kernel/src/FS/NeFS.cc
@@ -1055,10 +1055,7 @@ namespace Kernel::Detail
kcout << "Creating A:\r";
kDiskMountpoint.A() = io_construct_main_drive();
- kDiskMountpoint.B() = io_construct_blank_drive();
- kDiskMountpoint.C() = io_construct_blank_drive();
- kDiskMountpoint.D() = io_construct_blank_drive();
-
+
kcout << "Creating A: [ OK ]\r";
return true;
diff --git a/dev/Kernel/src/IDLLObject.cc b/dev/Kernel/src/IDylibObject.cc
index f0129eca..27e2d14f 100644
--- a/dev/Kernel/src/IDLLObject.cc
+++ b/dev/Kernel/src/IDylibObject.cc
@@ -7,7 +7,7 @@
* ========================================================
*/
-#include <KernelKit/IDLLObject.h>
+#include <KernelKit/IDylibObject.h>
#include <KernelKit/DebugOutput.h>
#include <KernelKit/UserProcessScheduler.h>
diff --git a/dev/Kernel/src/IPEFDLLObject.cc b/dev/Kernel/src/IPEFDylibObject.cc
index 1b8d2451..1e2831ef 100644
--- a/dev/Kernel/src/IPEFDLLObject.cc
+++ b/dev/Kernel/src/IPEFDylibObject.cc
@@ -9,7 +9,7 @@
#include <KernelKit/DebugOutput.h>
#include <KernelKit/PEF.h>
-#include <KernelKit/IPEFDLLObject.h>
+#include <KernelKit/IPEFDylibObject.h>
#include <KernelKit/UserProcessScheduler.h>
#include <KernelKit/ThreadLocalStorage.h>
#include <NewKit/Defines.h>
@@ -31,41 +31,41 @@
using namespace Kernel;
/***********************************************************************************/
-/// @file IPEFDLLObject.cc
-/// @brief PEF's DLL runtime.
+/// @file IPEFDylibObject.cc
+/// @brief PEF's Dylib runtime.
/***********************************************************************************/
/***********************************************************************************/
/** @brief Library initializer. */
/***********************************************************************************/
-EXTERN_C IDLL rtl_init_dylib(UserThread& header)
+EXTERN_C IDylib rtl_init_dylib(UserThread& thread)
{
- IDLL dll_obj = tls_new_class<IPEFDLLObject>();
+ IDylib dll_obj = tls_new_class<IPEFDylibObject>();
if (!dll_obj)
{
- header.Crash();
+ thread.Crash();
return nullptr;
}
- dll_obj->Mount(tls_new_class<IPEFDLLObject::DLL_TRAITS>());
+ dll_obj->Mount(new IPEFDylibObject::DLL_TRAITS());
if (!dll_obj->Get())
{
tls_delete_class(dll_obj);
- header.Crash();
+ thread.Crash();
return nullptr;
}
dll_obj->Get()->ImageObject =
- header.Image.fBlob;
+ thread.Image.fBlob;
if (!dll_obj->Get()->ImageObject)
{
tls_delete_class(dll_obj);
- header.Crash();
+ thread.Crash();
return nullptr;
}
@@ -83,7 +83,7 @@ EXTERN_C IDLL rtl_init_dylib(UserThread& header)
/** @param successful Reports if successful or not. */
/***********************************************************************************/
-EXTERN_C Void rtl_fini_dylib(UserThread& header, IDLL dll_obj, Bool* successful)
+EXTERN_C Void rtl_fini_dylib(UserThread& thread, IDylib dll_obj, Bool* successful)
{
MUST_PASS(successful);
@@ -91,7 +91,7 @@ EXTERN_C Void rtl_fini_dylib(UserThread& header, IDLL dll_obj, Bool* successful)
if (dll_obj == nullptr)
{
*successful = false;
- header.Crash();
+ thread.Crash();
}
delete dll_obj->Get();
diff --git a/dev/Kernel/src/UserProcessScheduler.cc b/dev/Kernel/src/UserProcessScheduler.cc
index 55d3474b..6cd7fb0b 100644
--- a/dev/Kernel/src/UserProcessScheduler.cc
+++ b/dev/Kernel/src/UserProcessScheduler.cc
@@ -14,7 +14,7 @@
#include <KernelKit/UserProcessScheduler.h>
#include <KernelKit/HardwareThreadScheduler.h>
-#include <KernelKit/IPEFDLLObject.h>
+#include <KernelKit/IPEFDylibObject.h>
#include <ArchKit/ArchKit.h>
#include <KernelKit/Heap.h>
#include <NewKit/KString.h>
@@ -252,7 +252,7 @@ namespace Kernel
{
Bool success = false;
- rtl_fini_dylib(*this, reinterpret_cast<IPEFDLLObject*>(this->DylibDelegate), &success);
+ rtl_fini_dylib(*this, reinterpret_cast<IPEFDylibObject*>(this->DylibDelegate), &success);
if (!success)
{