diff options
| author | Amlal EL Mahrouss <amlalelmahrouss@icloud.com> | 2024-10-08 10:18:53 +0200 |
|---|---|---|
| committer | Amlal EL Mahrouss <amlalelmahrouss@icloud.com> | 2024-10-08 10:18:53 +0200 |
| commit | 61eb25f10c521860692a56286b4c40c445c617cb (patch) | |
| tree | 07f0e86865f563d1559685dfb6d085f05726f126 | |
| parent | 1c67d9655979b48a71fd3a9ba087142ed1bb28ea (diff) | |
IMP: Rename newoskrnl.exe to minkrnl.exe, which stands for minimal kernel (it's final name)
| -rw-r--r-- | .vscode/c_cpp_properties.json | 15 | ||||
| -rw-r--r-- | dev/sci/sci_base.hxx | 26 | ||||
| -rw-r--r-- | dev/zba/amd64-efi.make | 4 | ||||
| -rw-r--r-- | dev/zba/src/HEL/AMD64/BootFileReader.cxx | 2 | ||||
| -rw-r--r-- | dev/zba/src/HEL/AMD64/BootMain.cxx | 12 | ||||
| -rw-r--r-- | dev/zka/KernelKit/ThreadLocalStorage.hxx | 2 | ||||
| -rw-r--r-- | dev/zka/KernelRsrc.rsrc | 8 | ||||
| -rw-r--r-- | dev/zka/NewKit/Defines.hxx | 2 | ||||
| -rw-r--r-- | dev/zka/NewKit/String.hxx | 20 | ||||
| -rw-r--r-- | dev/zka/amd64-efi.make | 4 | ||||
| -rw-r--r-- | dev/zka/arm64-efi.make | 2 | ||||
| -rw-r--r-- | dev/zka/doc/TODO-LIST.md | 2 | ||||
| -rw-r--r-- | dev/zka/src/IDLLObject.cxx | 2 | ||||
| -rw-r--r-- | dev/zka/src/IPEFDLLObject.cxx | 2 | ||||
| -rw-r--r-- | dev/zka/src/PEFCodeMgr.cxx | 5 | ||||
| -rw-r--r-- | dev/zka/src/Semaphore.cxx | 2 | ||||
| -rw-r--r-- | dev/zka/src/Stop.cxx | 6 | ||||
| -rw-r--r-- | dev/zka/src/ThreadLocalStorage.cxx | 3 | ||||
| -rw-r--r-- | meta/setup.ico | bin | 24427 -> 0 bytes | |||
| -rw-r--r-- | meta/zka_background.bmp (renamed from meta/background.bmp) | bin | 8294538 -> 8294538 bytes | |||
| -rw-r--r-- | meta/zka_setup.iss (renamed from meta/sdk_install.iss) | 9 |
21 files changed, 73 insertions, 55 deletions
diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json new file mode 100644 index 00000000..52e611ff --- /dev/null +++ b/.vscode/c_cpp_properties.json @@ -0,0 +1,15 @@ +{ + "configurations": [ + { + "name": "MinKrnl and ZKA OS", + "includePath": [ + "${workspaceFolder}/**" + ], + "compilerPath": "x86_64-pc-cygwin-g++.exe", + "cStandard": "c17", + "cppStandard": "c++20", + "intelliSenseMode": "gcc-x64" + } + ], + "version": 4 +}
\ No newline at end of file diff --git a/dev/sci/sci_base.hxx b/dev/sci/sci_base.hxx index 9f627f19..e73da45b 100644 --- a/dev/sci/sci_base.hxx +++ b/dev/sci/sci_base.hxx @@ -19,9 +19,7 @@ Purpose: sci/M core header file (C++) #define IMPORT_C extern "C"
typedef bool Bool;
-typedef void UInt0;
-
-typedef UInt0 Void;
+typedef void Void;
typedef __UINT64_TYPE__ UInt64;
typedef __UINT32_TYPE__ UInt32;
@@ -112,7 +110,7 @@ IMPORT_C Object LdrOpenDLL(_Input const Char* path, _Input const Char* drive_let /// @brief Close DLL handle
/// @param dll_handle
/// @return
-IMPORT_C UInt0 LdrCloseDLL(_Input Object dll_handle);
+IMPORT_C Void LdrCloseDLL(_Input Object dll_handle);
// ------------------------------------------------------------------------------------------ //
// File API.
@@ -127,7 +125,7 @@ IMPORT_C Object IoOpenFile(const Char* fs_path, const Char* drive_letter); /// @brief Closes a file and flushes its content.
/// @param file_desc the file descriptor.
/// @return void.
-IMPORT_C UInt0 IoCloseFile(_Input Object file_desc);
+IMPORT_C Void IoCloseFile(_Input Object file_desc);
IMPORT_C UInt32 IoWriteFile(_Input Object file_desc, _Output VoidPtr out_data, SizeT sz_data);
@@ -176,7 +174,7 @@ IMPORT_C SInt32 XPCOMCreateInstance(_Input UInt32 flags, _Output Object* handle_ /// @brief Destroys an XPCOM instance of the process.
/// @param handle_instance the XPCOM handle.
-IMPORT_C UInt0 XPCOMDestroyInstance(_Input Object handle_instance);
+IMPORT_C Void XPCOMDestroyInstance(_Input Object handle_instance);
#endif // !__SCI_IMPL__
@@ -193,7 +191,7 @@ IMPORT_C VoidPtr MmCreateHeap(_Input SizeT len, _Input UInt32 flags); /// @brief Destroys the pointer
/// @param heap the heap itself.
/// @return void.
-IMPORT_C UInt0 MmDestroyHeap(_Input VoidPtr heap);
+IMPORT_C Void MmDestroyHeap(_Input VoidPtr heap);
/// @brief Change protection flags of memory region.
IMPORT_C UInt32 MmChangeHeapFlags(_Input VoidPtr heap, _Input UInt32 flags);
@@ -205,25 +203,25 @@ IMPORT_C UInt32 MmFillCRC32Heap(_Input VoidPtr heap); // Error handling API.
// ------------------------------------------------------------------------
-IMPORT_C SInt32 ErrGetLastError(UInt0);
+IMPORT_C SInt32 ErrGetLastError(Void);
// ------------------------------------------------------------------------
// Threading API.
// ------------------------------------------------------------------------
-IMPORT_C UInt0 ThrExitCurrentThread(_Input SInt32 exit_code);
-IMPORT_C UInt0 ThrExitMainThread(_Input SInt32 exit_code);
+IMPORT_C Void ThrExitCurrentThread(_Input SInt32 exit_code);
+IMPORT_C Void ThrExitMainThread(_Input SInt32 exit_code);
-IMPORT_C UInt0 ThrExitThread(_Input ThreadObject thread, _Input SInt32 exit_code);
+IMPORT_C Void ThrExitThread(_Input ThreadObject thread, _Input SInt32 exit_code);
typedef Void(*GenericThreadFn)(Void);
IMPORT_C ThreadObject ThrCreateThread(GenericThreadFn proc);
-IMPORT_C UInt0 ThrExitYieldThread(UInt0);
+IMPORT_C Void ThrExitYieldThread(Void);
-IMPORT_C UInt0 ThrExitJoinThread(UInt0);
-IMPORT_C UInt0 ThrExitDetachThread(UInt0);
+IMPORT_C Void ThrExitJoinThread(Void);
+IMPORT_C Void ThrExitDetachThread(Void);
// ------------------------------------------------------------------------
// Drive Management API.
diff --git a/dev/zba/amd64-efi.make b/dev/zba/amd64-efi.make index 69d5ea8a..ed902eef 100644 --- a/dev/zba/amd64-efi.make +++ b/dev/zba/amd64-efi.make @@ -52,7 +52,7 @@ FLAG_GNU=-fshort-wchar -D__EFI_x86_64__ -mno-red-zone -D__NEWOSKRNL__ -D__NEWOSL -std=c++20 -D__HAVE_ZKA_APIS__ -D__ZKA_AMD64__ -D__ZKA__ BOOT_LOADER=newosldr.exe -KERNEL=newoskrnl.exe +KERNEL=minkrnl.exe DDK=ddk.dll SCI=zka-sci-cxx.dll CRT=zka-crt-cxx.dll @@ -105,7 +105,7 @@ download-edk: $(HTTP_GET) https://retrage.github.io/edk2-nightly/bin/DEBUGX64_OVMF.fd -O OVMF.fd BINS=*.bin -EXECUTABLES=newosldr.exe newoskrnl.dll OVMF.fd +EXECUTABLES=newosldr.exe minkrnl.dll OVMF.fd TARGETS=$(REM_FLAG) $(OBJ) $(BIN) $(IMG) $(IMG_2) $(EXECUTABLES) diff --git a/dev/zba/src/HEL/AMD64/BootFileReader.cxx b/dev/zba/src/HEL/AMD64/BootFileReader.cxx index 864e96ac..e81ba3fb 100644 --- a/dev/zba/src/HEL/AMD64/BootFileReader.cxx +++ b/dev/zba/src/HEL/AMD64/BootFileReader.cxx @@ -86,7 +86,7 @@ Boot::BFileReader::BFileReader(const CharacterTypeUTF16* path, .Write(L"\r"); this->mErrorCode = kNotSupported; - CGDrawString("NEWOSLDR: PLEASE RECOVER YOUR NEWOSKRNL INSTALL.", 40, 10, RGB(0xFF, 0xFF, 0xFF)); + CGDrawString("NEWOSLDR: PLEASE RECOVER YOUR MINKRNL INSTALL.", 40, 10, RGB(0xFF, 0xFF, 0xFF)); mRootFs->Close(mRootFs); diff --git a/dev/zba/src/HEL/AMD64/BootMain.cxx b/dev/zba/src/HEL/AMD64/BootMain.cxx index 7f9c55cf..de069162 100644 --- a/dev/zba/src/HEL/AMD64/BootMain.cxx +++ b/dev/zba/src/HEL/AMD64/BootMain.cxx @@ -255,11 +255,11 @@ EFI_EXTERN_C EFI_API Int Main(EfiHandlePtr ImageHandle, // Assign to global 'kHandoverHeader'. - Boot::BFileReader readerKernel(L"newoskrnl.exe", ImageHandle); + Boot::BFileReader readerKernel(L"minkrnl.exe", ImageHandle); readerKernel.ReadAll(0); - Boot::BThread* loader = nullptr; + Boot::BThread* kernel_loader = nullptr; // ------------------------------------------ // // If we succeed in reading the blob, then execute it. @@ -267,14 +267,14 @@ EFI_EXTERN_C EFI_API Int Main(EfiHandlePtr ImageHandle, if (readerKernel.Blob()) { - loader = new Boot::BThread(readerKernel.Blob()); - loader->SetName("64-Bit Kernel executable."); + kernel_loader = new Boot::BThread(readerKernel.Blob()); + kernel_loader->SetName("Minimal Kernel."); handover_hdr->f_KernelImage = readerKernel.Blob(); } else { - CGDrawString("NEWOSLDR: PLEASE RECOVER YOUR NEWOSKRNL KERNEL IMAGE.", 30, 10, RGB(0xFF, 0xFF, 0xFF)); + CGDrawString("NEWOSLDR: PLEASE RECOVER YOUR MINKRNL IMAGE.", 30, 10, RGB(0xFF, 0xFF, 0xFF)); } Boot::BFileReader chimeWav(L"zka\\startup.wav", ImageHandle); @@ -312,7 +312,7 @@ EFI_EXTERN_C EFI_API Int Main(EfiHandlePtr ImageHandle, // Finally load Kernel, and the cr3 to it. // ---------------------------------------------------- // - loader->Start(handover_hdr); + kernel_loader->Start(handover_hdr); EFI::Stop(); diff --git a/dev/zka/KernelKit/ThreadLocalStorage.hxx b/dev/zka/KernelKit/ThreadLocalStorage.hxx index a25d8926..65b03d9e 100644 --- a/dev/zka/KernelKit/ThreadLocalStorage.hxx +++ b/dev/zka/KernelKit/ThreadLocalStorage.hxx @@ -9,7 +9,7 @@ #include <NewKit/Defines.hxx> -///! @brief Thread Local Storage for newoskrnl. +///! @brief Thread Local Storage for minkrnl. #define kCookieMag0 'Z' #define kCookieMag1 'K' diff --git a/dev/zka/KernelRsrc.rsrc b/dev/zka/KernelRsrc.rsrc index dd476da2..98c3e3ec 100644 --- a/dev/zka/KernelRsrc.rsrc +++ b/dev/zka/KernelRsrc.rsrc @@ -9,12 +9,12 @@ BEGIN BLOCK "080904E4" BEGIN VALUE "CompanyName", "ZKA Technologies." - VALUE "FileDescription", "ZKA Kernel and System." + VALUE "FileDescription", "ZKA Minimal Kernel." VALUE "FileVersion", KERNEL_VERSION - VALUE "InternalName", "newoskrnl" + VALUE "InternalName", "minkrnl" VALUE "LegalCopyright", "(c) ZKA Technologies, all rights reserved." - VALUE "OriginalFilename", "newoskrnl.exe" - VALUE "ProductName", "ZKA Operating System" + VALUE "OriginalFilename", "minkrnl.exe" + VALUE "ProductName", "ZKA Operating System Kernel." VALUE "ProductVersion", KERNEL_VERSION END END diff --git a/dev/zka/NewKit/Defines.hxx b/dev/zka/NewKit/Defines.hxx index 22065b99..712b1f63 100644 --- a/dev/zka/NewKit/Defines.hxx +++ b/dev/zka/NewKit/Defines.hxx @@ -23,7 +23,7 @@ #endif #endif -/// @brief The **newoskrnl** namespace where it's API resides. +/// @brief The **Kernel** namespace where it's API resides. namespace Kernel { using voidPtr = void*; diff --git a/dev/zka/NewKit/String.hxx b/dev/zka/NewKit/String.hxx index 762efc44..184ccc42 100644 --- a/dev/zka/NewKit/String.hxx +++ b/dev/zka/NewKit/String.hxx @@ -6,30 +6,35 @@ #pragma once +#include <CompilerKit/CompilerKit.hxx> #include <NewKit/Defines.hxx> #include <NewKit/ErrorOr.hxx> #include <NewKit/Utils.hxx> #include <NewKit/Stop.hxx> +#define cMinimumStringSize 8196 + namespace Kernel { + /// @brief StringView class, using dynamic or static memory. class StringView final { public: explicit StringView() { - fSz = 4096; + fDataSz = cMinimumStringSize; - fData = new Char[fSz]; + fData = new Char[fDataSz]; MUST_PASS(fData); - rt_set_memory(fData, 0, fSz); + rt_set_memory(fData, 0, fDataSz); } - explicit StringView(Size Sz) - : fSz(Sz) + explicit StringView(const SizeT& Sz) + : fDataSz(Sz) { MUST_PASS(Sz > 1); + fData = new Char[Sz]; MUST_PASS(fData); @@ -42,8 +47,7 @@ namespace Kernel delete[] fData; } - StringView& operator=(const StringView&) = default; - StringView(const StringView&) = default; + ZKA_COPY_DEFAULT(StringView); Char* Data(); const Char* CData() const; @@ -70,7 +74,7 @@ namespace Kernel private: Char* fData{nullptr}; - Size fSz{0}; + Size fDataSz{0}; Size fCur{0}; friend class StringBuilder; diff --git a/dev/zka/amd64-efi.make b/dev/zka/amd64-efi.make index 5225caba..335eb52c 100644 --- a/dev/zka/amd64-efi.make +++ b/dev/zka/amd64-efi.make @@ -1,6 +1,6 @@ ################################################## # (C) ZKA Technologies, all rights reserved. -# This is the newoskrnl's makefile. +# This is the minkrnl's makefile. ################################################## CC = x86_64-w64-mingw32-g++.exe @@ -39,7 +39,7 @@ LDFLAGS = -e hal_init_platform --subsystem=17 --image-base 0x4000000 LDOBJ = obj/*.obj # This file is the Kernel, responsible of task, memory, driver, sci, disk and device management. -KERNEL_IMG = newoskrnl.exe +KERNEL_IMG = minkrnl.exe .PHONY: error error: diff --git a/dev/zka/arm64-efi.make b/dev/zka/arm64-efi.make index be3f9960..261087bf 100644 --- a/dev/zka/arm64-efi.make +++ b/dev/zka/arm64-efi.make @@ -23,7 +23,7 @@ LDFLAGS = -subsystem:efi_application -entry:hal_init_platform /nodefaultlib LDOBJ = obj/*.obj # This file is the Kernel, responsible of task management and memory. -KERNEL = newoskrnl.so +KERNEL = minkrnl.so .PHONY: error error: diff --git a/dev/zka/doc/TODO-LIST.md b/dev/zka/doc/TODO-LIST.md index 2b4ea96c..dfaa8123 100644 --- a/dev/zka/doc/TODO-LIST.md +++ b/dev/zka/doc/TODO-LIST.md @@ -20,6 +20,6 @@ Status: NEWOSLDR: Need to boot from EPM partition. [ X ] <br> -newoskrnl: New Filesystem is done. [ X ] +minkrnl: New Filesystem is done. [ X ] **Refer to Jira please!** diff --git a/dev/zka/src/IDLLObject.cxx b/dev/zka/src/IDLLObject.cxx index b6b6a348..5220f928 100644 --- a/dev/zka/src/IDLLObject.cxx +++ b/dev/zka/src/IDLLObject.cxx @@ -1,7 +1,7 @@ /* * ======================================================== * - * newoskrnl + * minkrnl * Copyright ZKA Technologies., all rights reserved. * * ======================================================== diff --git a/dev/zka/src/IPEFDLLObject.cxx b/dev/zka/src/IPEFDLLObject.cxx index 22645dde..e5f91d9a 100644 --- a/dev/zka/src/IPEFDLLObject.cxx +++ b/dev/zka/src/IPEFDLLObject.cxx @@ -1,7 +1,7 @@ /* * ======================================================== * - * newoskrnl + * minkrnl * Copyright ZKA Technologies., all rights reserved. * * ======================================================== diff --git a/dev/zka/src/PEFCodeMgr.cxx b/dev/zka/src/PEFCodeMgr.cxx index 47643078..dcc0d4db 100644 --- a/dev/zka/src/PEFCodeMgr.cxx +++ b/dev/zka/src/PEFCodeMgr.cxx @@ -89,7 +89,8 @@ namespace Kernel if (fCachedBlob) mm_delete_heap(fCachedBlob); - kcout << "CodeMgrPEF: Warning: Executable format error!\r"; + kcout << "PEFLoader: Warning: Executable format error!\r"; + fCachedBlob = nullptr; } @@ -169,6 +170,8 @@ namespace Kernel rt_copy_memory((VoidPtr)((Char*)blob + sizeof(PEFCommandHeader)), blobRet, container_header->Size); mm_delete_heap(blob); + kcout << "PEFLoader: INFO: Load stub: " << container_header->Name << "!\r"; + return blobRet; } } diff --git a/dev/zka/src/Semaphore.cxx b/dev/zka/src/Semaphore.cxx index 9160228b..88e3b16b 100644 --- a/dev/zka/src/Semaphore.cxx +++ b/dev/zka/src/Semaphore.cxx @@ -47,7 +47,7 @@ namespace Kernel return this->Lock(process); } - /// @brief Wait with process, either wait for process being invalid, or not being run. + /// @brief Wait with process, either wait for it to be being invalid, or not being run. Void Semaphore::WaitForProcess() noexcept { while (fLockingProcess) diff --git a/dev/zka/src/Stop.cxx b/dev/zka/src/Stop.cxx index 6c252206..dd464659 100644 --- a/dev/zka/src/Stop.cxx +++ b/dev/zka/src/Stop.cxx @@ -16,7 +16,7 @@ #include <modules/FB/FB.hxx> #include <modules/FB/Text.hxx> -#define cWebsiteMacro "https://help.el-mahrouss-logic.com/" +#define cWebsiteMacro "https://help.zka-software.com/" /* Each error code is attributed with an ID, which will prompt a string onto the * screen. Wait for debugger... */ @@ -32,7 +32,7 @@ namespace Kernel auto start_y = 10; auto x = 10; - CGDrawString("newoskrnl.exe Stopped working properly so it had to stop.", start_y, x, panicTxt); + CGDrawString("minkrnl.exe stopped working properly so it had to stop.", start_y, x, panicTxt); start_y += 10; // simply offset from previous string and then write the website. @@ -48,7 +48,7 @@ namespace Kernel switch (id) { case RUNTIME_CHECK_PROCESS: { - CGDrawString("0x00000008 No more processes to run, this is because that ZKA ran out of processes.", start_y, x, panicTxt); + CGDrawString("0x00000008 Scheduler error.", start_y, x, panicTxt); RecoveryFactory::Recover(); break; } diff --git a/dev/zka/src/ThreadLocalStorage.cxx b/dev/zka/src/ThreadLocalStorage.cxx index d3514c8d..be773eab 100644 --- a/dev/zka/src/ThreadLocalStorage.cxx +++ b/dev/zka/src/ThreadLocalStorage.cxx @@ -1,7 +1,7 @@ /* * ======================================================== * - * newoskrnl + * minkrnl * Copyright ZKA Technologies., all rights reserved. * * ======================================================== @@ -12,7 +12,6 @@ #include <KernelKit/UserProcessScheduler.hxx> #include <KernelKit/ThreadLocalStorage.hxx> - /***********************************************************************************/ /// @bugs: 0 /// @file ThreadLocalStorage.cxx diff --git a/meta/setup.ico b/meta/setup.ico Binary files differdeleted file mode 100644 index a9313d64..00000000 --- a/meta/setup.ico +++ /dev/null diff --git a/meta/background.bmp b/meta/zka_background.bmp Binary files differindex 5480cf23..5480cf23 100644 --- a/meta/background.bmp +++ b/meta/zka_background.bmp diff --git a/meta/sdk_install.iss b/meta/zka_setup.iss index 9d25ce01..50c33de2 100644 --- a/meta/sdk_install.iss +++ b/meta/zka_setup.iss @@ -3,7 +3,7 @@ #define ZkaAppName "ZKA SDK"
#define ZkaAppVersion "1.00"
-#define ZkaAppPublisher "ZKA Software B.V"
+#define ZkaAppPublisher "ZKA Software B.V."
#define ZkaAppURL "https://www.zka-software.com/"
[Setup]
@@ -27,7 +27,6 @@ OutputBaseFilename=zka-sdk Compression=lzma
SolidCompression=yes
WizardStyle=classic
-SetupIconFile=.\setup.ico
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
@@ -55,7 +54,7 @@ Name: "{userdesktop}\ZKA C++ Compiler (CLI)"; Filename: "{app}\bin\cl.exe"; \ Name: "{userdesktop}\ZKA Assembler (CLI)"; Filename: "{app}\bin\asm.exe"; \
IconFilename: "shell32.dll"; IconIndex: 12
[Files]
-Source: ".\background.bmp"; Flags: dontcopy
+Source: ".\zka_background.bmp"; Flags: dontcopy
[Setup]
WindowVisible=yes
@@ -70,6 +69,6 @@ begin BackgroundImage.Parent := MainForm;
BackgroundImage.SetBounds(0, 0, MainForm.ClientWidth, MainForm.ClientHeight);
BackgroundImage.Stretch := True;
- ExtractTemporaryFile('background.bmp');
- BackgroundImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\background.bmp'));
+ ExtractTemporaryFile('zka_background.bmp');
+ BackgroundImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\zka_background.bmp'));
end;
|
