aboutsummaryrefslogtreecommitdiff
path: root/docs/pre/arch
diff options
context:
space:
mode:
Diffstat (limited to 'docs/pre/arch')
-rw-r--r--docs/pre/arch/x86_64.rst9
-rw-r--r--docs/pre/arch/x86_64/boot.rst9
-rw-r--r--docs/pre/arch/x86_64/boot/pointers.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching.rst9
-rw-r--r--docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table.rst9
-rw-r--r--docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/gate_descriptor.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/idt_flags.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/interrupt_descriptor_table copy.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/interrupt_descriptor_table_pointer copy.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/ist_offset.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/interrupt_descriptor_table/segment_selector.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/main.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/segment_descriptor_table.rst9
-rw-r--r--docs/pre/arch/x86_64/context_switching/segment_descriptor_table/access_byte.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/segment_descriptor_table/gdt_flags.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/segment_descriptor_table/global_descriptor_table.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/segment_descriptor_table/global_descriptor_table_pointer.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_base.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_extension.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_type.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/segment_descriptor_table/task_state_segment.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/syscall.rst9
-rw-r--r--docs/pre/arch/x86_64/context_switching/syscall/main.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/syscall/syscall_enable.rst5
-rw-r--r--docs/pre/arch/x86_64/context_switching/syscall/syscall_handler.rst5
-rw-r--r--docs/pre/arch/x86_64/exception_handling.rst9
-rw-r--r--docs/pre/arch/x86_64/exception_handling/assert.rst5
-rw-r--r--docs/pre/arch/x86_64/exception_handling/panic.rst5
-rw-r--r--docs/pre/arch/x86_64/interrupt_handling.rst9
-rw-r--r--docs/pre/arch/x86_64/interrupt_handling/generic_interrupt_handler.rst5
-rw-r--r--docs/pre/arch/x86_64/io.rst9
-rw-r--r--docs/pre/arch/x86_64/io/port_io.rst6
-rw-r--r--docs/pre/arch/x86_64/kernel.rst9
-rw-r--r--docs/pre/arch/x86_64/kernel/cpu.rst9
-rw-r--r--docs/pre/arch/x86_64/kernel/cpu/call.rst5
-rw-r--r--docs/pre/arch/x86_64/kernel/cpu/control_register.rst5
-rw-r--r--docs/pre/arch/x86_64/kernel/cpu/gdtr.rst5
-rw-r--r--docs/pre/arch/x86_64/kernel/cpu/idtr.rst5
-rw-r--r--docs/pre/arch/x86_64/kernel/cpu/if.rst5
-rw-r--r--docs/pre/arch/x86_64/kernel/cpu/msr.rst5
-rw-r--r--docs/pre/arch/x86_64/kernel/cpu/segment_register.rst5
-rw-r--r--docs/pre/arch/x86_64/kernel/cpu/tlb.rst5
-rw-r--r--docs/pre/arch/x86_64/kernel/cpu/tr.rst5
-rw-r--r--docs/pre/arch/x86_64/kernel/halt.rst5
-rw-r--r--docs/pre/arch/x86_64/kernel/main.rst5
-rw-r--r--docs/pre/arch/x86_64/memory.rst9
-rw-r--r--docs/pre/arch/x86_64/memory/allocator.rst9
-rw-r--r--docs/pre/arch/x86_64/memory/allocator/area_frame_allocator.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/allocator/concept.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/allocator/physical_frame.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/allocator/tiny_frame_allocator.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/cpu.rst9
-rw-r--r--docs/pre/arch/x86_64/memory/heap.rst9
-rw-r--r--docs/pre/arch/x86_64/memory/heap/bump_allocator.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/heap/global_heap_allocator.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/heap/heap_allocator.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/heap/linked_list_allocator.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/heap/memory_block.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/heap/user_heap_allocator.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/main.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/multiboot.rst9
-rw-r--r--docs/pre/arch/x86_64/memory/multiboot/elf_symbols_section.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/multiboot/info.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/multiboot/memory_map.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/multiboot/reader.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/paging.rst9
-rw-r--r--docs/pre/arch/x86_64/memory/paging/active_page_table.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/paging/inactive_page_table.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/paging/kernel_mapper.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/paging/page_entry.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/paging/page_table.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/paging/temporary_page.rst5
-rw-r--r--docs/pre/arch/x86_64/memory/paging/virtual_page.rst5
-rw-r--r--docs/pre/arch/x86_64/stl.rst9
-rw-r--r--docs/pre/arch/x86_64/stl/container.rst5
-rw-r--r--docs/pre/arch/x86_64/stl/contiguous_pointer_iterator.rst5
-rw-r--r--docs/pre/arch/x86_64/stl/forward_value_iterator.rst5
-rw-r--r--docs/pre/arch/x86_64/stl/mutex.rst5
-rw-r--r--docs/pre/arch/x86_64/stl/shared_pointer.rst5
-rw-r--r--docs/pre/arch/x86_64/stl/stack.rst5
-rw-r--r--docs/pre/arch/x86_64/stl/unique_pointer.rst5
-rw-r--r--docs/pre/arch/x86_64/stl/vector.rst5
-rw-r--r--docs/pre/arch/x86_64/user.rst9
-rw-r--r--docs/pre/arch/x86_64/user/main.rst5
-rw-r--r--docs/pre/arch/x86_64/video.rst9
-rw-r--r--docs/pre/arch/x86_64/video/vga.rst9
-rw-r--r--docs/pre/arch/x86_64/video/vga/io.rst4
-rw-r--r--docs/pre/arch/x86_64/video/vga/text.rst5
88 files changed, 524 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_64/context_switching/segment_descriptor_table/global_descriptor_table_pointer.rst
new file mode 100644
index 0000000..41ceffd
--- /dev/null
+++ b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/global_descriptor_table_pointer.rst
@@ -0,0 +1,5 @@
+Global Descriptor Table Pointer
+=======================
+
+.. doxygenfile:: arch/x86_64/include/arch/context_switching/segment_descriptor_table/global_descriptor_table_pointer.hpp
+
diff --git a/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_base.rst b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_base.rst
new file mode 100644
index 0000000..952ab2a
--- /dev/null
+++ b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_base.rst
@@ -0,0 +1,5 @@
+Segment Descriptor Base (32-bit)
+=======================
+
+.. doxygenfile:: arch/x86_64/include/arch/context_switching/segment_descriptor_table/segment_descriptor_base.hpp
+
diff --git a/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_extension.rst b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_extension.rst
new file mode 100644
index 0000000..874d1cb
--- /dev/null
+++ b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_extension.rst
@@ -0,0 +1,5 @@
+Segment Descriptor Extension (64-bit)
+=======================
+
+.. doxygenfile:: arch/x86_64/include/arch/context_switching/segment_descriptor_table/segment_descriptor_extension.hpp
+
diff --git a/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_type.rst b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_type.rst
new file mode 100644
index 0000000..e45b0a5
--- /dev/null
+++ b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_type.rst
@@ -0,0 +1,5 @@
+Segment Descriptor Type
+=======================
+
+.. doxygenfile:: arch/x86_64/include/arch/context_switching/segment_descriptor_table/segment_descriptor_type.hpp
+
diff --git a/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/task_state_segment.rst b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/task_state_segment.rst
new file mode 100644
index 0000000..731d7bb
--- /dev/null
+++ b/docs/pre/arch/x86_64/context_switching/segment_descriptor_table/task_state_segment.rst
@@ -0,0 +1,5 @@
+Task State Segment
+=======================
+
+.. doxygenfile:: arch/x86_64/include/arch/context_switching/segment_descriptor_table/task_state_segment.hpp
+
diff --git a/docs/pre/arch/x86_64/context_switching/syscall.rst b/docs/pre/arch/x86_64/context_switching/syscall.rst
new file mode 100644
index 0000000..28acf28
--- /dev/null
+++ b/docs/pre/arch/x86_64/context_switching/syscall.rst
@@ -0,0 +1,9 @@
+System Call Subsystem
+===========
+
+.. toctree::
+ :maxdepth: 2
+ :caption: Contents:
+ :glob: