/xNVMe

xNVMe: cross-platform libraries and tools for NVMe devices

Primary LanguageCApache License 2.0Apache-2.0

xNVMe Logo

xNVMe: cross-platform libraries and tools for NVMe devices

CI CI CI CI Coverity

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 CLI xnvme
  • libxnvme_nvm, The NVM Commands Set
  • libxnvme_znd, The Zoned Command Set available as a library and via CLI zoned
  • 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.