toku-sa-n / ramen

A toy OS written in Rust supporting xHCI.
GNU General Public License v3.0
39 stars 4 forks source link

refactor: create the `boot_info` crate #1021

Closed toku-sa-n closed 2 years ago

toku-sa-n commented 2 years ago

This commit moves the kernelboot module to the newly created boot_info crate. There are two purposes to do this. Firstly, to remove the common crate, which is now a garbage can where codes have nowhere to go. Secondly, to solve a problem caused by the workspace's property. Currently, the boot_info crate depends on the uefi crate, so does the bootx64 crate. Also, the bootx64 crate enables its allocation feature. Furthermore, the kernel depends on the crate so that the compiler will build the kernel with the duplicated global allocator. See https://stackoverflow.com/questions/68955652/how-to-avoid-global-allocator-conflicts/68977928#68977928 for the detail. On another PR, I will remove the uefi dependency from the crate.