diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-12-07 18:07:22 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-12-07 18:07:22 +0100 |
| commit | 4c7ea58f5d5e495e8da6cfc7e1d52a3dfcf5a893 (patch) | |
| tree | 40c91fce5ac9e622e49515608033f8c98af5a8f1 /dev/ZKAKit/KernelKit | |
| parent | 63be0a396d95db7b629ffe64dcc543e251936b36 (diff) | |
IMPL: New I/O functions from assembly, still working on #8 issue.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/ZKAKit/KernelKit')
| -rw-r--r-- | dev/ZKAKit/KernelKit/LoaderInterface.h | 6 | ||||
| -rw-r--r-- | dev/ZKAKit/KernelKit/UserProcessScheduler.h | 16 | ||||
| -rw-r--r-- | dev/ZKAKit/KernelKit/UserProcessScheduler.inl | 4 |
3 files changed, 14 insertions, 12 deletions
diff --git a/dev/ZKAKit/KernelKit/LoaderInterface.h b/dev/ZKAKit/KernelKit/LoaderInterface.h index 9323aec7..f5a34495 100644 --- a/dev/ZKAKit/KernelKit/LoaderInterface.h +++ b/dev/ZKAKit/KernelKit/LoaderInterface.h @@ -25,9 +25,9 @@ namespace Kernel public: virtual _Output ErrorOr<VoidPtr> GetBlob() = 0; - virtual _Output const Char* AsString() = 0; - virtual _Output const Char* MIME() = 0; - virtual _Output const Char* Path() = 0; + virtual _Output const Char* AsString() = 0; + virtual _Output const Char* MIME() = 0; + virtual _Output const Char* Path() = 0; virtual _Output ErrorOr<VoidPtr> FindStart() = 0; virtual _Output VoidPtr FindSymbol(_Input const Char* name, _Input Int32 kind) = 0; }; diff --git a/dev/ZKAKit/KernelKit/UserProcessScheduler.h b/dev/ZKAKit/KernelKit/UserProcessScheduler.h index c1dd7711..d8e17995 100644 --- a/dev/ZKAKit/KernelKit/UserProcessScheduler.h +++ b/dev/ZKAKit/KernelKit/UserProcessScheduler.h @@ -185,7 +185,8 @@ namespace Kernel }; UserProcessSignal ProcessSignal; - UserProcessHeapList* MemoryHeap{nullptr}; + UserProcessHeapList* ProcessMemoryHeap{nullptr}; + UserProcessTeam* ProcessParentTeam; VoidPtr VMRegister{0UL}; @@ -254,19 +255,20 @@ namespace Kernel class UserProcessTeam final { public: - explicit UserProcessTeam() = default; - ~UserProcessTeam() = default; + explicit UserProcessTeam(); + ~UserProcessTeam() = default; ZKA_COPY_DEFAULT(UserProcessTeam); Array<UserProcess*, kSchedProcessLimitPerTeam>& AsArray(); - Ref<UserProcess>& AsRef(); - ProcessID& Id() noexcept; + Ref<UserProcess>& AsRef(); + ProcessID& Id() noexcept; public: Array<UserProcess*, kSchedProcessLimitPerTeam> mProcessList; - Ref<UserProcess> mCurrentProcess; - ProcessID mTeamId{0}; + Ref<UserProcess> mCurrentProcess; + ProcessID mTeamId{0}; + ProcessID mProcessCount{0}; }; using UserProcessPtr = UserProcess*; diff --git a/dev/ZKAKit/KernelKit/UserProcessScheduler.inl b/dev/ZKAKit/KernelKit/UserProcessScheduler.inl index 8da934ed..2973d6a4 100644 --- a/dev/ZKAKit/KernelKit/UserProcessScheduler.inl +++ b/dev/ZKAKit/KernelKit/UserProcessScheduler.inl @@ -11,7 +11,7 @@ namespace Kernel sz == 0) return No; - UserProcessHeapList* entry = this->MemoryHeap; + UserProcessHeapList* entry = this->ProcessMemoryHeap; while (entry != nullptr) { @@ -37,4 +37,4 @@ namespace Kernel return No; } -} // namespace Kernel
\ No newline at end of file +} // namespace Kernel |
