3moon
|
3bb62e4dc4
|
memory::paging::Page: impl useful functions
|
8 years ago |
3moon
|
24032a9edd
|
memory::paging: add a struct to own the P4 table, make Page Clone+Copy
|
8 years ago |
3moon
|
e01d08162c
|
memory::paging: Add note that we use recursive P4 paging
|
8 years ago |
3moon
|
d471b2ca67
|
memory::paging::entry::Entry.set(): nicer misalignment panic message
|
8 years ago |
3moon
|
ec45a5e981
|
memory: private "cloning" of Frames
|
8 years ago |
3moon
|
2813cce2a7
|
memory::paging::Table: next_table, next_table_create
|
8 years ago |
3moon
|
27b6e55b42
|
memory::paging::Table: type-system based table level safety
|
8 years ago |
3moon
|
7d7bf0daaf
|
boot.asm: recursively map p4[511] -> p4
|
8 years ago |
3moon
|
d889ff14b2
|
Makefile: add debug rule making qemu wait for gcc connection
|
8 years ago |
3moon
|
8e2ee50f66
|
Preliminary data structures required for a page table manager
|
8 years ago |
3moon
|
791ddb5f50
|
Test the frame allocator
|
8 years ago |
3moon
|
7de3dcf599
|
Implement a basic physical frame allocator
|
8 years ago |
3moon
|
e94f7413e3
|
lib.rs: Wire Multiboot section parsing up
|
8 years ago |
3moon
|
4c6c6d4307
|
Add bitflags, multiboot2 to Cargo.toml
|
8 years ago |
3moon
|
1d4eb87486
|
linker.ld: merge small sections
|
8 years ago |
3moon
|
1b68cf6258
|
Pull in the `x86` crate in lib.rs
|
8 years ago |
3moon
|
600ffccf1a
|
add a hlt-loop in _Unwind_Resume()
|
8 years ago |
3moon
|
65761dc384
|
Make panic!s nicer
|
8 years ago |
3moon
|
48ca218dd0
|
Implement a `log` backend which writes to the VGA console
|
8 years ago |
3moon
|
ea581fceec
|
Nicer startup message
|
8 years ago |
3moon
|
c250c57fd6
|
vga_console: add Writer.move_cursor(), make write_str move the cursor
|
8 years ago |
3moon
|
d5fcb9d8f9
|
Make vga_console::Color::new() pub
|
8 years ago |
3moon
|
3b21392383
|
documentation!
|
8 years ago |
3moon
|
5c8c19a890
|
Add empty Xargo.toml
|
8 years ago |
3moon
|
2147553379
|
lib.rs: reindent, wire up console printing
|
8 years ago |
3moon
|
8aa1f15b4e
|
Add VGA text-mode console driver
|
8 years ago |
3moon
|
323e72bcd7
|
boot.asm: Expand the stack to be four pages long
|
8 years ago |
3moon
|
ec431fd9e2
|
boot.asm: indentation
|
8 years ago |
3moon
|
ce9fb7c20b
|
boot.asm: Clean up start
|
8 years ago |
3moon
|
84d7ef1d2c
|
long.asm: ensure hlt state, print EXIT instead of OKAY
|
8 years ago |
3moon
|
c04b4cbb63
|
Add an editorconfig
|
8 years ago |
3moon
|
127ad882cc
|
Make sure Xargo is always run by make
|
8 years ago |
3moon
|
6a4f6c7870
|
Makefile to tie everything together
|
8 years ago |
3moon
|
7393da2f4a
|
Add Rust stuff (unwind stubs, kernel_main() stub)
|
8 years ago |
3moon
|
8285981871
|
'''small''' asm multiboot2 stub (switches to long mode)
|
8 years ago |
3moon
|
1fa5e0dd39
|
Initial commit
|
8 years ago |