sos-os / kernel

The Stupid Operating System
Apache License 2.0
264 stars 17 forks source link

feat(x86_64::paging): Implement paging & kernel remap #103

Closed hawkw closed 7 years ago

hawkw commented 7 years ago

This PR adds a working implementation of paging and remapping the kernel into the high address space on x86_64! 🍾

Note that interrupts had to be re-disabled temporarily because of issues from #78 that I'm still looking into.

This PR also includes a number of changes to the elf and alloc crates that were necessary to get paging working correctly. It doesn't finish the whole "allocator rewrite" project, but it brings us further along.

Paging issues:

Allocator issues:

Also makes some progress on issues #31, #73, #76, and #84.

screen shot 2017-05-28 at 12 41 04 pm

hawkw commented 7 years ago

This should probably increment the version numbers on alloc, paging, memory, elf, and the main kernel. Possibly also cpu -- I should see if any API changes in there are permanent.

hawkw commented 7 years ago

Note that this PR adds the paging and params crates, which will add more crates to the task lists on #86 and #102