theseus-os / Theseus

Theseus is a modern OS written from scratch in Rust that explores 𝐢𝐧𝐭𝐫𝐚𝐥𝐢𝐧𝐠𝐮𝐚𝐥 𝐝𝐞𝐬𝐢𝐠𝐧: closing the semantic gap between compiler and hardware by maximally leveraging the power of language safety and affine types. Theseus aims to shift OS responsibilities like resource management into the compiler.
https://www.theseus-os.com/
MIT License
2.92k stars 172 forks source link

Huge pages support for x86 #1016

Open NIMogen opened 1 year ago

NIMogen commented 1 year ago

PR as requested. Higher level page table entries (such as p2) are always marked as used for some reason. Just a draft as this is a WIP and not actually ready yet.

kevinaboos commented 1 year ago

As discussed on discord, I can reproduce the error, which is caused by not using a range of pages and frames that are properly aligned to a 2MiB boundary.