From 96711d45ad7fb5b96cfd2b4fffda8756fe68fcd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matteo=20Gm=C3=BCr?= Date: Wed, 26 Mar 2025 09:33:44 +0000 Subject: Fixing pointer values and adding basic idt value --- .../interrupt_descriptor_table/gate_descriptor.hpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'arch/x86_64/include') diff --git a/arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/gate_descriptor.hpp b/arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/gate_descriptor.hpp index 196430f..a652e0c 100644 --- a/arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/gate_descriptor.hpp +++ b/arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/gate_descriptor.hpp @@ -57,11 +57,13 @@ namespace teachos::arch::context_switching::interrupt_descriptor_table private: // The order in private variables starts for the first variable being the rightmost bit. - uint16_t _offset_1 = {}; ///< First part of the offset field (0 - 15) + uint16_t _offset_1 = {}; ///< First part of the offset field. Represents the address of the entry point of the + ///< Interrupt Service Routine. (0 - 15) segment_selector _selector = {}; ///< Segment selector (16 - 31) ist_offset _ist = {}; ///< Interrupt Stack Table offset (32 - 39) idt_flags _flags = {}; ///< Gate Type and Flags (40 - 47) - uint64_t _offset_2 : 48 = {}; ///< Second part of the offset field (48 - 95) + uint64_t _offset_2 : 48 = {}; ///< Second part of the offset field. Represents the address of the entry point of + ///< the Interrupt Service Routine. (48 - 95) uint32_t : 32; ///< Reserved field used to ensure this struct is 128 bits big (96 - 127) }; } // namespace teachos::arch::context_switching::interrupt_descriptor_table -- cgit v1.2.3