package mirage-block-combinators
Block signatures and implementations for MirageOS using Lwt
Install
Dune Dependency
Authors
Maintainers
Sources
mirage-block-3.0.2.tbz
sha256=5002d47de2f41b599f4ac2e001bfc7a50e8e575d98b58f8650e606eb2854c002
sha512=5b36b4b8a886f62f87950cae355d14c0ecc8f70f1be1287d5da0b413f7a78020b11e9771cb16ffbbbb5654f6f902c91436cfbbd4a3cc2d9ba9883c0c579d156f
Description
This repo contains generic operations over Mirage BLOCK
devices.
This package is specialised to the Lwt concurrency library for IO.
README
Block implementations for mirage
This repo contains generic operations over Mirage BLOCK
devices.
Please consult the API documentation.
Example usage
In a top-level like utop:
# #require "mirage-block";;
# #require "mirage-block-ramdisk";;
# #require "lwt.syntax";;
# lwt t_or_error = Ramdisk.create ~name:"hello" ~size_sectors:1024L ~sector_size:512;;
val t_or_error : [ `Error of Ramdisk.error | `Ok of Ramdisk.t ] = `Ok <abstr>
# let t = Mirage_block.Error.ok_exn t_or_error;;
val t : Ramdisk.t = <abstr>
# let page = Cstruct.create 4096;;
val page : Cstruct.t =
{Cstruct.buffer = <abstr>; off = 0; len = 4096}
# lwt result_or_error = Ramdisk.read t 0L [ page ];;
val result_or_error : [ `Error of Ramdisk.error | `Ok of unit ] = `Ok ()
# lwt ok_or_error = Mirage_block.sparse_copy (module Ramdisk) t (module Ramdisk) t;;
val ok_or_error :
[ `Error of [> `Different_sizes | `Is_read_only | `Msg of bytes ]
| `Ok of unit ] = `Ok ()
Dependencies (6)
Dev Dependencies
None
Used by (6)
-
chamelon
>= "0.1.1"
-
chamelon-unix
>= "0.1.1"
-
fat-filesystem
>= "0.14.0"
- mirage-block-partition
-
mirage-block-ramdisk
>= "0.5"
-
qcow
>= "0.11.0"
Conflicts
None
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page