diff options
| author | Felix Morgner <felix.morgner@ost.ch> | 2025-12-15 17:13:12 +0100 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@ost.ch> | 2025-12-15 17:13:12 +0100 |
| commit | 7b9482ae637126ac9337876e60f519b493437711 (patch) | |
| tree | 6fc71a253c8b0325d303bd34c95b564ba536ed14 /docs/pre | |
| parent | 116f9332a206767c45095950f09f7c7447b561cf (diff) | |
| parent | a9eeec745e29d89afd48ee43d09432eb6fc35be7 (diff) | |
| download | teachos-7b9482ae637126ac9337876e60f519b493437711.tar.xz teachos-7b9482ae637126ac9337876e60f519b493437711.zip | |
os: rework kernel architecture
Rework the code structure and architecture of the kernel by separating
platform-dependent and platform-independent code more cleanly. As of
this patchset, full feature parity has not been achieved. Nonetheless, a
sufficient subset of functionality has been ported to the new
architecture to demonstrate the feasibility of the new structure.
Diffstat (limited to 'docs/pre')
90 files changed, 545 insertions, 0 deletions
diff --git a/docs/pre/arch/x86_64.rst b/docs/pre/arch/x86_64.rst new file mode 100644 index 0000000..dc432f1 --- /dev/null +++ b/docs/pre/arch/x86_64.rst @@ -0,0 +1,9 @@ +x86_64 +====== + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + :glob: + + x86_64/*
\ No newline at end of file diff --git a/docs/pre/arch/x86_64/boot.rst b/docs/pre/arch/x86_64/boot.rst new file mode 100644 index 0000000..8be2a57 --- /dev/null +++ b/docs/pre/arch/x86_64/boot.rst @@ -0,0 +1,9 @@ +Boot Information Subsystem +====================== + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + :glob: + + boot/*
\ No newline at end of file diff --git a/docs/pre/arch/x86_64/boot/pointers.rst b/docs/pre/arch/x86_64/boot/pointers.rst new file mode 100644 index 0000000..3ec626a --- /dev/null +++ b/docs/pre/arch/x86_64/boot/pointers.rst @@ -0,0 +1,5 @@ +Boot Information Structure +======================= + +.. doxygenfile:: arch/x86_64/include/arch/boot/pointers.hpp + diff --git a/docs/pre/arch/x86_64/context_switching.rst b/docs/pre/arch/x86_64/context_switching.rst new file mode 100644 index 0000000..c3b3b03 --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching.rst @@ -0,0 +1,9 @@ +Context Switching Subsystem +====================== + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + :glob: + + context_switching/*
\ No newline at end of file diff --git a/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table.rst b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table.rst new file mode 100644 index 0000000..dd6e478 --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table.rst @@ -0,0 +1,9 @@ +Interrupt Descriptor Subsystem +=========== + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + :glob: + + interrupt_descriptor_table/* diff --git a/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/gate_descriptor.rst b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/gate_descriptor.rst new file mode 100644 index 0000000..29e7586 --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/gate_descriptor.rst @@ -0,0 +1,5 @@ +Interrupt Gate Descriptor +======================= + +.. doxygenfile:: arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/gate_descriptor.hpp + diff --git a/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/idt_flags.rst b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/idt_flags.rst new file mode 100644 index 0000000..60e8c37 --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/idt_flags.rst @@ -0,0 +1,5 @@ +Interrupt Descriptor Flags +======================= + +.. doxygenfile:: arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/idt_flags.hpp + diff --git a/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/interrupt_descriptor_table copy.rst b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/interrupt_descriptor_table copy.rst new file mode 100644 index 0000000..a2b8997 --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/interrupt_descriptor_table copy.rst @@ -0,0 +1,5 @@ +Interrupt Descriptor Table +======================= + +.. doxygenfile:: arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/interrupt_descriptor_table.hpp + diff --git a/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/interrupt_descriptor_table_pointer copy.rst b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/interrupt_descriptor_table_pointer copy.rst new file mode 100644 index 0000000..3a8c259 --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/interrupt_descriptor_table_pointer copy.rst @@ -0,0 +1,5 @@ +Interrupt Descriptor Table Pointer +======================= + +.. doxygenfile:: arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/interrupt_descriptor_table_pointer.hpp + diff --git a/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/ist_offset.rst b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/ist_offset.rst new file mode 100644 index 0000000..ddba6ee --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/ist_offset.rst @@ -0,0 +1,5 @@ +Interrupt Stack Table Offset +======================= + +.. doxygenfile:: arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/ist_offset.hpp + diff --git a/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/segment_selector.rst b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/segment_selector.rst new file mode 100644 index 0000000..2da142e --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/segment_selector.rst @@ -0,0 +1,5 @@ +Segment Selector +======================= + +.. doxygenfile:: arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/segment_selector.hpp + diff --git a/docs/pre/arch/x86_64/context_switching/main.rst b/docs/pre/arch/x86_64/context_switching/main.rst new file mode 100644 index 0000000..e9e8a35 --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/main.rst @@ -0,0 +1,5 @@ +Context Switching Main +======================= + +.. doxygenfile:: arch/x86_64/include/arch/context_switching/main.hpp + diff --git a/docs/pre/arch/x86_64/context_switching/segment_descriptor_table.rst b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table.rst new file mode 100644 index 0000000..449622d --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table.rst @@ -0,0 +1,9 @@ +Segment Descriptor Subsystem +=========== + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + :glob: + + segment_descriptor_table/* diff --git a/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/access_byte.rst b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/access_byte.rst new file mode 100644 index 0000000..f2e7d67 --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/access_byte.rst @@ -0,0 +1,5 @@ +Access Byte +======================= + +.. doxygenfile:: arch/x86_64/include/arch/context_switching/segment_descriptor_table/access_byte.hpp + diff --git a/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/gdt_flags.rst b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/gdt_flags.rst new file mode 100644 index 0000000..faa2ffc --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/gdt_flags.rst @@ -0,0 +1,5 @@ +Global Descriptor Table Flags +======================= + +.. doxygenfile:: arch/x86_64/include/arch/context_switching/segment_descriptor_table/gdt_flags.hpp + diff --git a/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/global_descriptor_table.rst b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/global_descriptor_table.rst new file mode 100644 index 0000000..35403db --- /dev/null +++ b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/global_descriptor_table.rst @@ -0,0 +1,5 @@ +Global Descriptor Table +======================= + +.. doxygenfile:: arch/x86_64/include/arch/context_switching/segment_descriptor_table/global_descriptor_table.hpp + diff --git a/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/global_descriptor_table_pointer.rst b/docs/pre/arch/x86_6 |
