mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 01:37:36 +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
|
@ -65,6 +65,7 @@ VFS_OBJS = \
|
|||
Devices/ZeroDevice.o \
|
||||
Devices/RandomDevice.o \
|
||||
Devices/DebugLogDevice.o \
|
||||
Devices/OffsetDiskDevice.o \
|
||||
FileSystem/FileSystem.o \
|
||||
FileSystem/DiskBackedFileSystem.o \
|
||||
FileSystem/Ext2FileSystem.o \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue