Module Spoc_core.Host_async

val blit : src:nativeint -> dst:nativeint -> byte_size:int -> unit

Copy byte_size bytes from address src to address dst (memmove semantics: Bigarray blit tolerates overlap). Both ranges must be valid; the caller keeps them alive across the call.

val check_range : what:string -> total:int -> off:int -> byte_size:int -> unit

Check a byte range against a buffer of total bytes; raise Invalid_argument naming what when it does not fit.

val pinned : (nativeint, (char, Stdlib.Bigarray.int8_unsigned_elt, Stdlib.Bigarray.c_layout) Stdlib.Bigarray.Array1.t) Stdlib.Hashtbl.t
val pinned_lock : Stdlib.Mutex.t
val alloc_pinned : byte_size:int -> nativeint

Ordinary host memory standing in for page-locked memory.

val free_pinned : nativeint -> unit