163 Commits (156034c3d15b3baad8386d0321def6124ca6a1a9)
 

Author SHA1 Message Date
WangRunji 156034c3d1 Support timer IRQ from PIC
7 years ago
WangRunji 8af7220d25 Disable PIC
7 years ago
WangRunji cf099ffa99 Make inits 'safe'
7 years ago
WangRunji 2028eadbfe Protect PIC & IOAPIC with Mutex
7 years ago
WangRunji bb51547c12 Improve IOAPIC mod
7 years ago
WangRunji 15b1687ac6 Complete IOAPIC init
7 years ago
WangRunji a76bfbc7f8 Copy PIC mod from Redox
7 years ago
WangRunji 4029e6d2d3 Fix gdt compile error
7 years ago
WangRunji 2f24eefb1d Copy GDT Segments from xv6 x86_64. Split IRQ mod.
7 years ago
WangRunji ab37e359ac Temporarily map pages and run pass APIC init.
7 years ago
WangRunji 5d03035f9e Add page fault handler
7 years ago
WangRunji 96258c6a0b Rewrite build.rs again
7 years ago
WangRunji 21d97418d6 Impl lapic linking C code. Fix build.rs in macOS.
7 years ago
WangRunji b549d08724 Add debug_asm in Makefile
7 years ago
WangRunji 5c80d903ad Finish ACPI init
7 years ago
WangRunji 8f3d7432d6 Add mid presentation
7 years ago
WangRunji 2ffa236414 Add mid report
7 years ago
WangRunji 06d85a5ce9 Rewrite build.rs
7 years ago
WangRunji 8c7ca612e7 Add example of binding C
7 years ago
WangRunji 7f872901ce Serial stdio
7 years ago
WangRunji fc910d4b9d Change test pass error code, to avoid conflict with QEMU's
7 years ago
WangRunji c446d2bb5e Add test for travis
7 years ago
WangRunji 2e405a0393 Auto exit in qemu
7 years ago
WangRunji 9bf95a5443 Try to fix travis
7 years ago
WangRunji 9adbc16327 Try to add qemu for travis
7 years ago
WangRunji 1de0087d49 Port part of MADT
7 years ago
WangRunji e9d89576a3 Port acpiinit()
7 years ago
WangRunji 83684cbfd7 Add debug! macro. Modify VGA & Writer
7 years ago
WangRunji 936c485ab9 Port MP & RSDP detecting
7 years ago
WangRunji eb9a5e9241 Impl Debug for page table
7 years ago
WangRunji b954aef696 Add cursor for VGA
7 years ago
WangRunji 5bf407de7c Split vga_buffer.rs to VGA driver and VGA writer
7 years ago
WangRunji c436b9afbe Move asm to boot dir. Continue to refactor...
7 years ago
WangRunji 53bb54330c Update crate to fix compile error
7 years ago
WangRunji 9ee8d3a428 Add homebrew files for macOS
7 years ago
WangRunji 771839f0d7 Make it compile on macOS
7 years ago
WangRunji 4ce1ba8f6d Rewrite README. Add docker.
7 years ago
Philipp Oppermann 7f6576c9dc Set the stack index of the double fault IDT entry
7 years ago
Philipp Oppermann aa8028cf6c Reload cs register and load TSS
7 years ago
Philipp Oppermann 165054d12a Create and load a static TSS and GDT
7 years ago
Philipp Oppermann 58e90d497e Add a Gdt::load method
7 years ago
Philipp Oppermann 238cc575c3 Add a Gdt::add_entry method
7 years ago
Philipp Oppermann d2060e76f8 Create a GDT descriptor struct
7 years ago
Philipp Oppermann f651987666 Add a dependency on bit_field
7 years ago
Philipp Oppermann eea8c10a97 Create a interrupts::gdt submodule
7 years ago
Philipp Oppermann e1d2af5ea7 Rename interrupts.rs to interrupts/mod.rs
7 years ago
Philipp Oppermann a05db759d7 Create a TSS and save the double fault stack pointer it its IST
7 years ago
Philipp Oppermann 00bbd6fbc6 Pass the memory controller to interrupts::init and use it to create a double fault stack
7 years ago
Philipp Oppermann f1459a552c Return a memory controller from memory::init
7 years ago
Philipp Oppermann 73d4390f27 Create a memory manager for convenience
7 years ago