package mirage-block
Utilities and module definitions for dealing with block devices.
Install
Dune Dependency
Authors
Maintainers
Sources
mirage-block-1.0.0.tbz
sha256=193b9b5a3dfa4d619d9b12f48da8feaeb20b3ecfe64942ff9096f94241096f9c
md5=0a2aa26b9ca280c795b3b13f3a36788a
Description
This library is primarily useful in the context of a Mirage project.
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 "io-page.unix";;
# #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 = Io_page.(to_cstruct (get 1));;
val page : Ramdisk.page_aligned_buffer =
{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)
- result
-
mirage-device
>= "1.0.0" & < "2.0.0"
-
topkg
build
-
ocamlfind
build
-
ocamlbuild
build
-
ocaml
>= "4.02.0"
Dev Dependencies
None
Used by (8)
-
docteur-unix
< "0.0.3"
- mirage-block-lwt
-
mirage-types
>= "3.0.0" & < "3.4.0"
-
nbd-tool
< "6.0.1"
-
qcow
>= "0.8.1" & < "0.11.0"
-
qcow-tool
< "0.11.0"
-
tar-mirage
>= "1.1.0" & < "2.0.1"
-
vhd-format-lwt
< "0.12.1"
Conflicts
None
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page