rainj-me / demikernel

Kernel-Bypass LibOS Architecture

Home Page:https://aka.ms/demikernel

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Demikernel

Join us on Slack! Catnip LibOS Catnap LibOS Catmem LibOS Catpowder LibOS Catcollar LibOS Catloop LibOS Catnapw LibOS

Demikernel is a library operating system (LibOS) architecture designed for use with kernel-bypass I/O devices. This architecture offers a uniform system call API across kernel-bypass technologies (e.g., RDMA, DPDK) and OS functionality (e.g., a user-level networking stack for DPDK).

To read more about the motivation behind the Demikernel, check out this blog post.

To get details about the system, read our paper in SOSP '21.

To read more about Demikernel check out https://aka.ms/demikernel.

Codename for LibOSes

  • catcollar -- I/O Uring LibOS
  • catloop -- TCP Socket Loopback LibOS
  • catmem -- Shared Memory LibOS
  • catnap -- Linux Sockets LibOS
  • catnip -- DPDK LibOS
  • catpowder -- Linux Raw Sockets
  • catnapw -- Windows Sockets LibOS

Documentation

  • For instructions on development environment setup, see doc/setup.md.
  • For instructions on building, see doc/building.md.
  • For instructions on testing and running, doc/testing.md.
  • For instructions for running on CloudLab, see doc/cloudlab.md.
  • For documentation on the API, see documents in man.
  • For instructions on how to contribute to this project, see CONTRIBUTING.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Usage Statement

This project is a prototype. As such, we provide no guarantees that it will work and you are assuming any risks with using the code. We welcome comments and feedback. Please send any questions or comments to one of the following maintainers of the project:

By sending feedback, you are consenting that it may be used in the further development of this project.

About

Kernel-Bypass LibOS Architecture

https://aka.ms/demikernel

License:MIT License


Languages

Language:Rust 94.3%Language:Python 2.3%Language:Makefile 1.6%Language:C 1.5%Language:Shell 0.3%