summaryrefslogtreecommitdiffhomepage
path: root/Kernel/Sources
diff options
context:
space:
mode:
authorAmlal EL Mahrouss <amlal@softwarelabs.com>2024-06-16 00:25:47 +0200
committerAmlal EL Mahrouss <amlal@softwarelabs.com>2024-06-16 00:25:47 +0200
commit84aea90cff9952dbafcf147b7741c1985622a8d2 (patch)
tree9912202bf155bf28b1428f6805ea1e538e68c23a /Kernel/Sources
parentf05b598a1c1a8ca4f1bf0acca078f9c9e3c07991 (diff)
MHR-31: Add cHartIpi enum, improve ReadMe and fix FilesystemWizard.
Signed-off-by: Amlal EL Mahrouss <amlal@softwarelabs.com>
Diffstat (limited to 'Kernel/Sources')
-rw-r--r--Kernel/Sources/KeMain.cxx42
1 files changed, 21 insertions, 21 deletions
diff --git a/Kernel/Sources/KeMain.cxx b/Kernel/Sources/KeMain.cxx
index e1b347b8..83702d77 100644
--- a/Kernel/Sources/KeMain.cxx
+++ b/Kernel/Sources/KeMain.cxx
@@ -33,6 +33,7 @@ namespace NewOS::Detail
NewOS::NewFilesystemManager* fNewFS{nullptr};
public:
+ /// @brief wizard constructor.
explicit FilesystemWizard()
{
if (NewOS::FilesystemManagerInterface::GetMounted())
@@ -54,7 +55,7 @@ namespace NewOS::Detail
constexpr auto cFolderInfo = "META-INF";
const auto cDirCount = 8;
const char* cDirStr[cDirCount] = {
- "\\Boot\\", "\\System\\", "\\Support\\", "\\Applications\\",
+ "\\Boot\\", "\\System\\", "\\Support\\", "\\Packages\\",
"\\Users\\", "\\Library\\", "\\Mount\\", "\\DCIM\\"};
for (NewOS::SizeT dirIndx = 0UL; dirIndx < cDirCount; ++dirIndx)
@@ -92,9 +93,9 @@ namespace NewOS::Detail
metadataFolder +=
"<p>Kind: folder</p>\r<p>Created by: system</p>\r<p>Edited by: "
- "system</p>\r<p>Volume Type: New OS Standard</p>\r";
+ "system</p>\r<p>Volume Type: s10 Filesystem</p>\r";
- metadataFolder += "<p>File name: ";
+ metadataFolder += "<p>Path: ";
metadataFolder += cDirStr[dirIndx];
metadataFolder += "</p>\r";
@@ -113,7 +114,7 @@ namespace NewOS::Detail
}
NewCatalog* catalogDisk =
- this->fNewFS->GetParser()->GetCatalog("\\Mount\\This Disk");
+ this->fNewFS->GetParser()->GetCatalog("\\Mount\\C:\\");
const NewOS::Char* cSrcName = "DISK-INF";
@@ -128,16 +129,16 @@ namespace NewOS::Detail
else
{
catalogDisk =
- (NewCatalog*)this->Leak()->CreateAlias("\\Mount\\This Disk");
+ (NewCatalog*)this->Leak()->CreateAlias("\\Mount\\C:\\");
NewOS::StringView diskFolder(kNewFSSectorSz);
diskFolder +=
- "<p>Kind: alias to disk</p>\r<p>Created by: newoskrnl</p>\r<p>Edited "
+ "<p>Kind: alias to disk</p>\r<p>Created by: system</p>\r<p>Edited "
"by: "
- "N/A</p>\r<p>Volume Type: New OS Standard</p>\r";
+ "system</p>\r<p>Volume Type: s10 Filesystem</p>\r";
- diskFolder += "<p>Original Path: ";
+ diskFolder += "<p>Root: ";
diskFolder += NewOS::NewFilesystemHelper::Root();
diskFolder += "</p>\r";
@@ -165,43 +166,41 @@ namespace NewOS::Detail
}
}
- ~FilesystemWizard()
- {
- delete fNewFS;
- }
+ ~FilesystemWizard() = default;
NEWOS_COPY_DEFAULT(FilesystemWizard);
- /// Grab the disk's NewFS reference.
+ /// @brief Grab the disk's NewFS reference.
+ /// @return NewFilesystemManager the filesystem interface
NewOS::NewFilesystemManager* Leak()
{
return fNewFS;
}
};
- /// @brief System loader entrypoint.
+ /// @brief Loads necessary servers for the OS to work.
/// @param void no parameters.
/// @return void no return value.
STATIC NewOS::Void ke_launch_srv(NewOS::Void)
{
- NewOS::PEFLoader lockScreen("\\System\\securesrv.exe");
+ NewOS::PEFLoader secureSrv("\\System\\securesrv.exe");
- if (!lockScreen.IsLoaded())
+ if (!secureSrv.IsLoaded())
{
NewOS::ke_stop(RUNTIME_CHECK_FAILED);
}
- NewOS::Utils::execute_from_image(lockScreen,
+ NewOS::Utils::execute_from_image(secureSrv,
NewOS::ProcessHeader::kAppKind);
- NewOS::PEFLoader stageBoard("\\System\\uisrv.exe");
+ NewOS::PEFLoader uiSrv("\\System\\uisrv.exe");
- if (!stageBoard.IsLoaded())
+ if (!uiSrv.IsLoaded())
{
NewOS::ke_stop(RUNTIME_CHECK_FAILED);
}
- NewOS::Utils::execute_from_image(stageBoard,
+ NewOS::Utils::execute_from_image(uiSrv,
NewOS::ProcessHeader::kAppKind);
}
} // namespace NewOS::Detail
@@ -219,7 +218,8 @@ EXTERN_C NewOS::Void KeMain(NewOS::Void)
// fetch system cores.
NewOS::HAL::hal_system_get_cores(kHandoverHeader->f_HardwareTables.f_RsdPtr);
- while (true)
+ // spin forever.
+ while (Yes)
{
// start scheduling.
NewOS::ProcessHelper::StartScheduling();