index
:
pub/fmorgner/teachos.git
develop
develop-BA-FS26
main
The TeachOS kernel, a greenfield, pure 64-bit, educational operating system.
fmorgner
about
summary
refs
log
tree
commit
diff
log msg
author
committer
range
diff options
context:
1
2
3
4
5
6
7
8
9
10
15
20
25
30
35
40
space:
include
ignore
mode:
unified
ssdiff
stat only
Diffstat
-rw-r--r--
.vscode/tasks.json
3
-rw-r--r--
CMakeLists.txt
23
-rw-r--r--
arch/x86_64/CMakeLists.txt
58
-rw-r--r--
arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/gate_descriptor.hpp
69
-rw-r--r--
arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/idt_flags.hpp
81
-rw-r--r--
arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/interrupt_descriptor_table.hpp
24
-rw-r--r--
arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/interrupt_descriptor_table_pointer.hpp
40
-rw-r--r--
arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/ist_offset.hpp
45
-rw-r--r--
arch/x86_64/include/arch/context_switching/interrupt_descriptor_table/segment_selector.hpp
105
-rw-r--r--
arch/x86_64/include/arch/context_switching/main.hpp
51
-rw-r--r--
arch/x86_64/include/arch/context_switching/segment_descriptor_table/access_byte.hpp
104
-rw-r--r--
arch/x86_64/include/arch/context_switching/segment_descriptor_table/gdt_flags.hpp
93
-rw-r--r--
arch/x86_64/include/arch/context_switching/segment_descriptor_table/global_descriptor_table.hpp
37
-rw-r--r--
arch/x86_64/include/arch/context_switching/segment_descriptor_table/global_descriptor_table_pointer.hpp
41
-rw-r--r--
arch/x86_64/include/arch/context_switching/segment_descriptor_table/segment_descriptor_base.hpp
73
-rw-r--r--
arch/x86_64/include/arch/context_switching/segment_descriptor_table/segment_descriptor_extension.hpp
74
-rw-r--r--
arch/x86_64/include/arch/context_switching/segment_descriptor_table/segment_descriptor_type.hpp
27
-rw-r--r--
arch/x86_64/include/arch/context_switching/segment_descriptor_table/task_state_segment.hpp
32
-rw-r--r--
arch/x86_64/include/arch/context_switching/syscall/main.hpp
88
-rw-r--r--
arch/x86_64/include/arch/context_switching/syscall/syscall_enable.hpp
18
-rw-r--r--
arch/x86_64/include/arch/context_switching/syscall/syscall_handler.hpp
18
-rw-r--r--
arch/x86_64/include/arch/interrupt_handling/generic_interrupt_handler.hpp
34
-rw-r--r--
arch/x86_64/include/arch/kernel/cpu/call.hpp
30
-rw-r--r--
arch/x86_64/include/arch/kernel/cpu/control_register.hpp
(renamed from arch/x86_64/include/arch/memory/cpu/control_register.hpp)
10
-rw-r--r--
arch/x86_64/include/arch/kernel/cpu/gdtr.hpp
27
-rw-r--r--
arch/x86_64/include/arch/kernel/cpu/idtr.hpp
27
-rw-r--r--
arch/x86_64/include/arch/kernel/cpu/if.hpp
21
-rw-r--r--
arch/x86_64/include/arch/kernel/cpu/msr.hpp
(renamed from arch/x86_64/include/arch/memory/cpu/msr.hpp)
10
-rw-r--r--
arch/x86_64/include/arch/kernel/cpu/segment_register.hpp
97
-rw-r--r--
arch/x86_64/include/arch/kernel/cpu/tlb.hpp
(renamed from arch/x86_64/include/arch/memory/cpu/tlb.hpp)
12
-rw-r--r--
arch/x86_64/include/arch/kernel/cpu/tr.hpp
24
-rw-r--r--
arch/x86_64/include/arch/memory/allocator/area_frame_allocator.hpp
6
-rw-r--r--
arch/x86_64/include/arch/memory/allocator/physical_frame.hpp
8
-rw-r--r--
arch/x86_64/include/arch/memory/heap/global_heap_allocator.hpp
50
-rw-r--r--
arch/x86_64/include/arch/memory/heap/heap_allocator.hpp
6
-rw-r--r--
arch/x86_64/include/arch/memory/heap/linked_list_allocator.hpp
11
-rw-r--r--
arch/x86_64/include/arch/memory/heap/memory_block.hpp
2
-rw-r--r--
arch/x86_64/include/arch/memory/heap/user_heap_allocator.hpp
148
-rw-r--r--
arch/x86_64/include/arch/memory/main.hpp
14
-rw-r--r--
arch/x86_64/include/arch/memory/multiboot/elf_symbols_section.hpp
8
-rw-r--r--
arch/x86_64/include/arch/memory/multiboot/memory_map.hpp
6
-rw-r--r--
arch/x86_64/include/arch/memory/paging/active_page_table.hpp
10
-rw-r--r--
arch/x86_64/include/arch/memory/paging/kernel_mapper.hpp
45
-rw-r--r--
arch/x86_64/include/arch/memory/paging/page_entry.hpp
8
-rw-r--r--
arch/x86_64/include/arch/memory/paging/page_table.hpp
11
-rw-r--r--
arch/x86_64/include/arch/memory/paging/virtual_page.hpp
4
-rw-r--r--
arch/x86_64/include/arch/stl/container.hpp
(renamed from arch/x86_64/include/arch/shared/container.hpp)
34
-rw-r--r--
arch/x86_64/include/arch/stl/contiguous_pointer_iterator.hpp
(renamed from arch/x86_64/include/arch/shared/contiguous_pointer_iterator.hpp)
44
-rw-r--r--
arch/x86_64/include/arch/stl/forward_value_iterator.hpp
(renamed from arch/x86_64/include/arch/shared/forward_value_iterator.hpp)
25
-rw-r--r--
arch/x86_64/include/arch/stl/mutex.hpp
(renamed from arch/x86_64/include/arch/shared/mutex.hpp)
13
-rw-r--r--
arch/x86_64/include/arch/stl/shared_pointer.hpp
191
-rw-r--r--
arch/x86_64/include/arch/stl/stack.hpp
212
-rw-r--r--
arch/x86_64/include/arch/stl/unique_pointer.hpp
158
-rw-r--r--
arch/x86_64/include/arch/stl/vector.hpp
604
-rw-r--r--
arch/x86_64/include/arch/user/main.hpp
16
-rw-r--r--
arch/x86_64/scripts/kernel.ld
18
-rw-r--r--
arch/x86_64/src/boot/boot.s
4
-rw-r--r--
arch/x86_64/src/context_switching/interrupt_descriptor_table/gate_descriptor.cpp
24
-rw-r--r--
arch/x86_64/src/context_switching/interrupt_descriptor_table/idt_flags.cpp
17
-rw-r--r--
arch/x86_64/src/context_switching/interrupt_descriptor_table/interrupt_descriptor_table.cpp
53
-rw-r--r--
arch/x86_64/src/context_switching/interrupt_descriptor_table/interrupt_descriptor_table_pointer.cpp
13
-rw-r--r--
arch/x86_64/src/context_switching/interrupt_descriptor_table/ist_offset.cpp
10
-rw-r--r--
arch/x86_64/src/context_switching/interrupt_descriptor_table/segment_selector.cpp
15
-rw-r--r--
arch/x86_64/src/context_switching/main.cpp
63
-rw-r--r--
arch/x86_64/src/context_switching/segment_descriptor_table/access_byte.cpp
17
-rw-r--r--
arch/x86_64/src/context_switching/segment_descriptor_table/gdt_flags.cpp
20
-rw-r--r--
arch/x86_64/src/context_switching/segment_descriptor_table/global_descriptor_table.cpp
109
-rw-r--r--
arch/x86_64/src/context_switching/segment_descriptor_table/global_descriptor_table_pointer.cpp
11
-rw-r--r--
arch/x86_64/src/context_switching/segment_descriptor_table/segment_descriptor_base.cpp
38
-rw-r--r--
arch/x86_64/src/context_switching/segment_descriptor_table/segment_descriptor_extension.cpp
24
-rw-r--r--
arch/x86_64/src/context_switching/syscall/main.cpp
35
-rw-r--r--
arch/x86_64/src/context_switching/syscall/syscall_enable.cpp
32
-rw-r--r--
arch/x86_64/src/context_switching/syscall/syscall_handler.cpp
118
-rw-r--r--
arch/x86_64/src/interrupt_handling/generic_interrupt_handler.cpp
13
-rw-r--r--
arch/x86_64/src/kernel/cpu/call.cpp
9
-rw-r--r--
arch/x86_64/src/kernel/cpu/control_register.cpp
(renamed from arch/x86_64/src/memory/cpu/control_register.cpp)
12
-rw-r--r--
arch/x86_64/src/kernel/cpu/gdtr.cpp
19
-rw-r--r--
arch/x86_64/src/kernel/cpu/idtr.cpp
18
-rw-r--r--
arch/x86_64/src/kernel/cpu/if.cpp
7
-rw-r--r--
arch/x86_64/src/kernel/cpu/msr.cpp
(renamed from arch/x86_64/src/memory/cpu/msr.cpp)
8
-rw-r--r--
arch/x86_64/src/kernel/cpu/segment_register.cpp
98
-rw-r--r--
arch/x86_64/src/kernel/cpu/tlb.cpp
(renamed from arch/x86_64/src/memory/cpu/tlb.cpp)
10
-rw-r--r--
arch/x86_64/src/kernel/cpu/tr.cpp
16
-rw-r--r--
arch/x86_64/src/kernel/main.cpp
12
-rw-r--r--
arch/x86_64/src/memory/allocator/area_frame_allocator.cpp
2
-rw-r--r--
arch/x86_64/src/memory/heap/bump_allocator.cpp
4
-rw-r--r--
arch/x86_64/src/memory/heap/global_heap_allocator.cpp
95
-rw-r--r--
arch/x86_64/src/memory/heap/linked_list_allocator.cpp
6
-rw-r--r--
arch/x86_64/src/memory/heap/memory_block.cpp
4
-rw-r--r--
arch/x86_64/src/memory/heap/user_heap_allocator.cpp
200
-rw-r--r--
arch/x86_64/src/memory/main.cpp
64
-rw-r--r--
arch/x86_64/src/memory/paging/page_entry.cpp
5
-rw-r--r--
arch/x86_64/src/memory/paging/temporary_page.cpp
8
-rw-r--r--
arch/x86_64/src/stl/mutex.cpp
(renamed from arch/x86_64/src/shared/mutex.cpp)
6
-rw-r--r--
arch/x86_64/src/user/main.cpp
35
-rw-r--r--
docs/arch/x86_64/context_switching.rst
9
-rw-r--r--
docs/arch/x86_64/context_switching/interrupt_descriptor_table.rst
9
-rw-r--r--
docs/arch/x86_64/context_switching/interrupt_descriptor_table/gate_descriptor.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/interrupt_descriptor_table/idt_flags.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/interrupt_descriptor_table/interrupt_descriptor_table copy.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/interrupt_descriptor_table/interrupt_descriptor_table_pointer copy.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/interrupt_descriptor_table/ist_offset.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/interrupt_descriptor_table/segment_selector.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/main.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/segment_descriptor_table.rst
9
-rw-r--r--
docs/arch/x86_64/context_switching/segment_descriptor_table/access_byte.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/segment_descriptor_table/gdt_flags.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/segment_descriptor_table/global_descriptor_table.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/segment_descriptor_table/global_descriptor_table_pointer.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_base.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_extension.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/segment_descriptor_table/segment_descriptor_type.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/segment_descriptor_table/task_state_segment.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/syscall.rst
9
-rw-r--r--
docs/arch/x86_64/context_switching/syscall/main.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/syscall/syscall_enable.rst
5
-rw-r--r--
docs/arch/x86_64/context_switching/syscall/syscall_handler.rst
5
-rw-r--r--
docs/arch/x86_64/interrupt_handling.rst
9
-rw-r--r--
docs/arch/x86_64/interrupt_handling/generic_interrupt_handler.rst
5
-rw-r--r--
docs/arch/x86_64/kernel/cpu.rst
9
-rw-r--r--
docs/arch/x86_64/kernel/cpu/call.rst
5
-rw-r--r--
docs/arch/x86_64/kernel/cpu/c