diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-05-08 12:32:41 +0200 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-05-08 12:32:41 +0200 |
| commit | 09dd11ddf800898c00ecb04a65fb5cd10fb481fa (patch) | |
| tree | eda0b4e23d6a71da7de3a78f0bb76ec3201dd2f9 /Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp | |
| parent | ca83108fd138cc0398f900e6a6c0a53ad51aee31 (diff) | |
MHR-23: :boom: changes, reworked project tree.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp')
| -rw-r--r-- | Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp b/Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp deleted file mode 100644 index 1b926814..00000000 --- a/Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp +++ /dev/null @@ -1,101 +0,0 @@ -/* ------------------------------------------- - - Copyright Mahrouss Logic - -------------------------------------------- */ - -#include <ArchKit/ArchKit.hpp> -#include <KernelKit/ProcessScheduler.hpp> -#include <NewKit/String.hpp> - -/// @brief Handle GPF fault. -/// @param rsp -EXTERN_C void idt_handle_gpf(NewOS::UIntPtr rsp) -{ - MUST_PASS(NewOS::ProcessScheduler::Shared().Leak().GetCurrent()); - - NewOS::kcout << "New OS: Stack Pointer: " - << NewOS::StringBuilder::FromInt("rsp{%}", rsp); - - NewOS::kcout - << "New OS: General Protection Fault, caused by " - << NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().GetName(); - - NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash(); -} - -/// @brief Handle the scheduler interrupt, raised from the HPET timer. -/// @param rsp -EXTERN_C void idt_handle_scheduler(NewOS::UIntPtr rsp) -{ - NewOS::kcout << NewOS::StringBuilder::FromInt("rsp{%}", rsp); - - NewOS::kcout - << "New OS: Will be scheduled back later " - << NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().GetName() - << NewOS::end_line(); - - /// schedule another process. - if (!NewOS::ProcessHelper::StartScheduling()) - { - NewOS::kcout << "New OS: Continue schedule this process...\r"; - } -} - -/// @brief Handle page fault. -/// @param rsp -EXTERN_C void idt_handle_pf(NewOS::UIntPtr rsp) -{ - MUST_PASS(NewOS::ProcessScheduler::Shared().Leak().GetCurrent()); - NewOS::kcout << NewOS::StringBuilder::FromInt("rsp{%}", rsp); - - NewOS::kcout - << "New OS: Segmentation Fault, caused by " - << NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().GetName(); - - NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash(); -} - -/// @brief Handle math fault. -/// @param rsp -EXTERN_C void idt_handle_math(NewOS::UIntPtr rsp) -{ - MUST_PASS(NewOS::ProcessScheduler::Shared().Leak().GetCurrent()); - NewOS::kcout << NewOS::StringBuilder::FromInt("rsp{%}", rsp); - - NewOS::kcout - << "New OS: Math error, caused by " - << NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().GetName(); - - NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash(); -} - -/// @brief Handle any generic fault. -/// @param rsp -EXTERN_C void idt_handle_generic(NewOS::UIntPtr rsp) -{ - MUST_PASS(NewOS::ProcessScheduler::Shared().Leak().GetCurrent()); - NewOS::kcout << NewOS::StringBuilder::FromInt("sp{%}", rsp); - - NewOS::kcout - << "New OS: Execution error, caused by " - << NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().GetName(); - - NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash(); -} - -/// @brief Handle #UD fault. -/// @param rsp -EXTERN_C void idt_handle_ud(NewOS::UIntPtr rsp) -{ - MUST_PASS(NewOS::ProcessScheduler::Shared().Leak().GetCurrent()); - - NewOS::kcout << "New OS: Stack Pointer: " - << NewOS::StringBuilder::FromInt("rsp{%}", rsp); - - NewOS::kcout - << "New OS: Invalid interrupt, caused by " - << NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().GetName(); - - NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash(); -} |
