diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-11-09 11:46:00 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-11-09 11:46:00 +0100 |
| commit | be974217785b99c3f424f1550836e47442d53a11 (patch) | |
| tree | 7ade5ac407edf246c748e2df5a90a26ae0360eed /dev/ZKAKit/src | |
| parent | 3aeff1f8f141f771d5c895e1653dfdc106289ebc (diff) | |
IMP: DriveMgr initializes first before reading first block now.
IMP: AHCI has been improved and is getting fixed.
Diffstat (limited to 'dev/ZKAKit/src')
| -rw-r--r-- | dev/ZKAKit/src/BitMapMgr.cc | 1 | ||||
| -rw-r--r-- | dev/ZKAKit/src/CodeMgr.cc | 6 | ||||
| -rw-r--r-- | dev/ZKAKit/src/DriveMgr.cc | 1 | ||||
| -rw-r--r-- | dev/ZKAKit/src/FS/NeFS.cc | 15 | ||||
| -rw-r--r-- | dev/ZKAKit/src/HardwareThreadScheduler.cc | 3 | ||||
| -rw-r--r-- | dev/ZKAKit/src/PEFCodeMgr.cc | 10 | ||||
| -rw-r--r-- | dev/ZKAKit/src/Property.cc | 2 | ||||
| -rw-r--r-- | dev/ZKAKit/src/Semaphore.cc | 3 |
8 files changed, 19 insertions, 22 deletions
diff --git a/dev/ZKAKit/src/BitMapMgr.cc b/dev/ZKAKit/src/BitMapMgr.cc index 0ce298d8..e2dd7dfa 100644 --- a/dev/ZKAKit/src/BitMapMgr.cc +++ b/dev/ZKAKit/src/BitMapMgr.cc @@ -170,7 +170,6 @@ namespace Kernel if (!page_ptr) return No; - Detail::IBitMapAllocator traits; Bool ret = traits.FreeBitMap(page_ptr); diff --git a/dev/ZKAKit/src/CodeMgr.cc b/dev/ZKAKit/src/CodeMgr.cc index 81020775..5f04865f 100644 --- a/dev/ZKAKit/src/CodeMgr.cc +++ b/dev/ZKAKit/src/CodeMgr.cc @@ -22,11 +22,11 @@ namespace Kernel return No; static UserProcess proc; - + kcout << "Setting-up process data...\r"; - proc.Code = reinterpret_cast<VoidPtr>(main); - proc.Kind = UserProcess::kExectuableKind; + proc.Code = reinterpret_cast<VoidPtr>(main); + proc.Kind = UserProcess::kExectuableKind; proc.StackSize = kib_cast(16); rt_set_memory(proc.Name, 0, kProcessNameLen); diff --git a/dev/ZKAKit/src/DriveMgr.cc b/dev/ZKAKit/src/DriveMgr.cc index d4ffc8d5..38dd1cbb 100644 --- a/dev/ZKAKit/src/DriveMgr.cc +++ b/dev/ZKAKit/src/DriveMgr.cc @@ -151,6 +151,7 @@ namespace Kernel trait.fPacket.fPacketSize = sizeof(_BOOT_BLOCK_STRUCT); trait.fPacket.fPacketContent = &block_struct; + trait.fInit(&trait.fPacket); io_drv_input(&trait.fPacket); trait.fKind = kMassStorage; diff --git a/dev/ZKAKit/src/FS/NeFS.cc b/dev/ZKAKit/src/FS/NeFS.cc index ff8d94f2..239651da 100644 --- a/dev/ZKAKit/src/FS/NeFS.cc +++ b/dev/ZKAKit/src/FS/NeFS.cc @@ -61,7 +61,7 @@ STATIC MountpointInterface kDiskMountpoint; /// @return the fork /***********************************************************************************/ _Output NFS_FORK_STRUCT* NeFSParser::CreateFork(_Input NFS_CATALOG_STRUCT* catalog, - _Input NFS_FORK_STRUCT& the_fork) + _Input NFS_FORK_STRUCT& the_fork) { if (catalog && the_fork.ForkName[0] != 0 && the_fork.DataSize <= kNeFSForkDataSz) @@ -170,8 +170,8 @@ _Output NFS_FORK_STRUCT* NeFSParser::CreateFork(_Input NFS_CATALOG_STRUCT* catal /// @return the fork. /***********************************************************************************/ _Output NFS_FORK_STRUCT* NeFSParser::FindFork(_Input NFS_CATALOG_STRUCT* catalog, - _Input const Char* name, - Boolean isDataFork) + _Input const Char* name, + Boolean isDataFork) { auto drv = kDiskMountpoint.A(); NFS_FORK_STRUCT* the_fork = nullptr; @@ -236,7 +236,7 @@ _Output NFS_CATALOG_STRUCT* NeFSParser::CreateCatalog(_Input const Char* name) /// @param kind the catalog kind. /// @return catalog pointer. /***********************************************************************************/ -_Output NFS_CATALOG_STRUCT* NeFSParser::CreateCatalog(_Input const Char* name, +_Output NFS_CATALOG_STRUCT* NeFSParser::CreateCatalog(_Input const Char* name, _Input const Int32& flags, _Input const Int32& kind) { @@ -936,7 +936,7 @@ Boolean NeFSParser::RemoveCatalog(_Input const Char* catalogName) VoidPtr NeFSParser::ReadCatalog(_Input _Output NFS_CATALOG_STRUCT* catalog, _Input Bool is_rsrc_fork, _Input SizeT dataSz, - _Input const Char* forkName) + _Input const Char* forkName) { if (!catalog) { @@ -1034,16 +1034,13 @@ namespace Kernel::Detail Boolean fs_init_newfs(Void) noexcept { kcout << "Creating drives...\r"; + kcout << "Constructing A:\r"; kDiskMountpoint.A() = io_construct_main_drive(); kDiskMountpoint.B() = io_construct_drive(); kDiskMountpoint.C() = io_construct_drive(); kDiskMountpoint.D() = io_construct_drive(); - kcout << "Constructing A:\r"; - - kDiskMountpoint.A().fInit(&kDiskMountpoint.A().fPacket); - kcout << "Constructing A: [ OK ]\r"; return true; diff --git a/dev/ZKAKit/src/HardwareThreadScheduler.cc b/dev/ZKAKit/src/HardwareThreadScheduler.cc index 5316f53a..7e124c0a 100644 --- a/dev/ZKAKit/src/HardwareThreadScheduler.cc +++ b/dev/ZKAKit/src/HardwareThreadScheduler.cc @@ -112,10 +112,9 @@ namespace Kernel if (!hal_check_stack(frame)) return No; - this->fStack = frame; + this->fStack = frame; this->fSourcePID = pid; - Bool ret = mp_register_process(image, stack_ptr, fStack, this->fSourcePID); if (ret) diff --git a/dev/ZKAKit/src/PEFCodeMgr.cc b/dev/ZKAKit/src/PEFCodeMgr.cc index 7faf728e..33bd659c 100644 --- a/dev/ZKAKit/src/PEFCodeMgr.cc +++ b/dev/ZKAKit/src/PEFCodeMgr.cc @@ -255,12 +255,12 @@ namespace Kernel STATIC UserProcess proc; - proc.Kind = procKind; - proc.ExecImg = errOrStart.Leak().Leak(); - proc.ExecImg = exec.GetBlob().Leak().Leak(); - proc.StackSize = *(UIntPtr*)exec.FindSymbol(kPefStackSizeSymbol, kPefData); + proc.Kind = procKind; + proc.ExecImg = errOrStart.Leak().Leak(); + proc.ExecImg = exec.GetBlob().Leak().Leak(); + proc.StackSize = *(UIntPtr*)exec.FindSymbol(kPefStackSizeSymbol, kPefData); proc.MemoryLimit = *(UIntPtr*)exec.FindSymbol(kPefHeapSizeSymbol, kPefData); - proc.PTime = 0UL; + proc.PTime = 0UL; rt_set_memory(proc.Name, 0, kProcessNameLen); diff --git a/dev/ZKAKit/src/Property.cc b/dev/ZKAKit/src/Property.cc index ae3186bd..6ff430c1 100644 --- a/dev/ZKAKit/src/Property.cc +++ b/dev/ZKAKit/src/Property.cc @@ -19,7 +19,7 @@ namespace CFKit Property::Property() = default; /***********************************************************************************/ - /// @brief Check if property's name equals to name. + /// @brief Check if property's name equals to name. /// @param name string to check. /***********************************************************************************/ Bool Property::StringEquals(KString& name) diff --git a/dev/ZKAKit/src/Semaphore.cc b/dev/ZKAKit/src/Semaphore.cc index baf7776f..4b69912c 100644 --- a/dev/ZKAKit/src/Semaphore.cc +++ b/dev/ZKAKit/src/Semaphore.cc @@ -66,6 +66,7 @@ namespace Kernel /***********************************************************************************/ Void Semaphore::WaitForProcess() noexcept { - while (fLockingProcess); + while (fLockingProcess) + ; } } // namespace Kernel |
