dbs-fuse

Crates.iodbs-fuse
lib.rsdbs-fuse
version0.2.0
sourcesrc
created_at2022-07-04 03:44:09.036832
updated_at2022-07-11 08:55:02.590525
descriptionUtilities for tokio/tokio-uring based async IO
homepagehttps://github.com/openanolis/dragonball-sandbox
repositoryhttps://github.com/openanolis/dragonball-sandbox
max_upload_size
id618710
size267,708
dragonball (github:openanolis:dragonball)

documentation

README

dbs-fuse

The dbs-fuse is a utility crate to support fuse-backend-rs.

Wrappers for Rust async io

It's challenging to support Rust async io, and it's even more challenging to support Rust async io with Linux io-uring.

The dbs-fuse crate adds a wrapper layer over tokio and tokio-uring to simplify the way to support Rust async io by providing:

  • FileReadWriteVolatile: A trait similar to Read and Write, but uses [FileVolatileSlice] objects as data buffers.
  • FileVolatileSlice: An adapter structure to work around limitations of the vm-memory crate.
  • FileVolatileBuf: An adapter structure to support io-uring based asynchronous IO.
  • File
  • Runtime

License

This project is licensed under Apache License, Version 2.0.

Source code under [src/tokio-uring] is temporarily copied from tokio-uring with modifications, which is licensed under MIT.

Commit count: 375

cargo fmt