mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 07:17:35 +00:00
Kernel: Implement OffsetDiskDevice to prepare for partition support
This implements a passthrough disk driver that translates the read/write block addresses by a fixed offset. This could form the basis of MBR partition support if we were to parse the MBR table at boot and create that OffsetDiskDevice dynamically, rather than seeking to a fixed offset. This also introduces a dependency in the form of grub. You'll need to have 32-bit grub binaries installed to build the project now. As a bonus, divorcing Serenity from qemu's kernel loading means we can now *technically* boot on real hardware. It just... doesn't get very far yet. If you write the `_disk_image` file to an IDE hard drive and boot it in a machine that supports all the basic PC hardware, it *will* start loading the kernel.
This commit is contained in:
parent
5e1c7cb32c
commit
6f43f81fb4
8 changed files with 220 additions and 66 deletions
6
Kernel/grub.cfg
Normal file
6
Kernel/grub.cfg
Normal file
|
@ -0,0 +1,6 @@
|
|||
timeout=1
|
||||
|
||||
menuentry 'SerenityOS' {
|
||||
root=hd0,1
|
||||
multiboot /boot/kernel Hello from grub!
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue