xNVMe: cross-platform libraries and tools for NVMe devices
See: https://xnvme.io/docs for documentation
- xNVMe, base NVMe specification (1.4) available as library and CLI
xnvme
- Memory Management
- NVMe command interface | Synchronous commands | Asynchronous commands
- Helpers / convenience functions for common operations
- CLI-library for convenient derivative work
- Multiple backend implementations | Linux SPDK | Linux IOCTL | Linux io_uring | Linux libaio | FreeBSD SPDK | FreeBSD IOCTL
libxnvme
, base NVMe Specification available as library and via CLIxnvme
libxnvme_nvm
, The NVM Commands Setlibxnvme_znd
, The Zoned Command Set available as a library and via CLIzoned
libkvs
, SNIA KV API implemented [TODO]libocssd
, Open-Channel 2.0 support [TODO]libWHATEVERYOUWANT
, Go ahead and implement what you need [TODO]
Contact and Contributions
xNVMe: is in active development and maintained by Simon A. F. Lund simon.lund@samsung.com, pull requests are most welcome.