package mbr-format
A simple library for manipulating Master Boot Records
Install
Dune Dependency
Authors
Maintainers
Sources
mbr-format-2.0.0.tbz
sha256=af317bbdba9e7a3c10c36216a711937e02fb44b4f107cf68372315e7544bbf50
sha512=881cc5a77882e21006d4c25f0375a97e08c8f13faadc434c88020ac705245ed114dbc33945530553a416a051e31066ad009b115e002489dadda7b05e68a7c7c8
README.md.html
ocaml-mbr
A simple library for manipulating Master Boot Records. The primary purposes of this library are:
to create bootable disk images creating mirage kernels
for mirage kernels to read the partition tables on attached disks
Usage
Define a single partition as follows:
let disk_length_bytes = Int32.(mul (mul 16l 1024l) 1024l) in
let disk_length_sectors = Int32.(div disk_length_bytes 512l) in
let start_sector = 2048l in
let length_sectors = Int32.sub disk_length_sectors start_sector in
let partition = Mbr.Partition.make ~active:true ~ty:6 start_sector length_sectors in
let mbr = Mbr.make [ partition ] in
You can write the MBR to sector zero of a block device B
as follows:
B.connect id >>= fun device ->
let sector = Cstruct.create 512 in
Mbr.marshal sector mbr;
B.write device 0L [ sector ] >>= fun () ->
...
To do items
Implement tools to manipulate MBR-formatted disk images to construct, inspect or fill partitions that can later be used in Mirage unikernels.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>