diff --git a/src/dragonball/README.md b/src/dragonball/README.md index dcc066424f..0e3bcb45a0 100644 --- a/src/dragonball/README.md +++ b/src/dragonball/README.md @@ -1,28 +1,37 @@ -# Dragonball - -## Introduction -Dragonball Sandbox is a light-weight virtual machine manager(VMM) based on Linux Kernel-based Virtual Machine(KVM), +# Introduction +`Dragonball Sandbox` is a light-weight virtual machine manager (VMM) based on Linux Kernel-based Virtual Machine (KVM), which is optimized for container workloads with: - container image management and acceleration service - flexible and high-performance virtual device drivers -- low cpu & memory overhead -- industry-leading startup time -- high concurrent startup throughput +- low CPU and memory overhead +- minimal startup time +- optimized concurrent startup speed -Dragonball Sandbox aims to provide a turnkey solution for the Kata Containers community. It is integrated into Kata 3.0 +`Dragonball Sandbox` aims to provide a simple solution for the Kata Containers community. It is integrated into Kata 3.0 runtime as a built-in VMM and gives users an out-of-the-box Kata Containers experience without complex environment setup and configuration process. -## Getting Start -[TODO] +# Getting Started +[TODO](https://github.com/kata-containers/kata-containers/issues/4302) -## Supported Architectures +# Documentation + +Device: [Device Document](docs/device.md) + +You could see the [official documentation](docs/) page for more details. + +# Supported Architectures - x86-64 -- AArch64 +- aarch64 -## Supported Kernel -[TODO] +# Supported Kernel +[TODO](https://github.com/kata-containers/kata-containers/issues/4303) -## License +# Acknowledgement +Part of the code is based on the [Cloud Hypervisor](https://github.com/cloud-hypervisor/cloud-hypervisor) project, [`crosvm`](https://github.com/google/crosvm) project and [Firecracker](https://github.com/firecracker-microvm/firecracker) project. They are all rust written virtual machine managers with advantages on safety and security. -Dragonball is licensed under [Apache License](http://www.apache.org/licenses/LICENSE-2.0), Version 2.0. \ No newline at end of file +`Dragonball sandbox` is designed to be a VMM that is customized for Kata Containers and we will focus on optimizing container workloads for Kata ecosystem. The focus on the Kata community is what differentiates us from other rust written virtual machines. + +# License + +`Dragonball` is licensed under [Apache License](http://www.apache.org/licenses/LICENSE-2.0), Version 2.0. \ No newline at end of file diff --git a/src/dragonball/docs/device.md b/src/dragonball/docs/device.md new file mode 100644 index 0000000000..8f3fdbe6ed --- /dev/null +++ b/src/dragonball/docs/device.md @@ -0,0 +1,17 @@ +# Device + +## Device Manager + +Currently we have following device manager: +| Name | Description | +| --- | --- | +| [address space manager](../src/address_space_manager.rs) | abstracts virtual machine's physical management and provide mapping for guest virtual memory and MMIO ranges of emulated virtual devices, pass-through devices and vCPU | +| [config manager](../src/config_manager.rs) | provides abstractions for configuration information | +| [console manager](../src/device_manager/console_manager.rs) | provides management for all console devices | +| [resource manager](../src/resource_manager.rs) |provides resource management for `legacy_irq_pool`, `msi_irq_pool`, `pio_pool`, `mmio_pool`, `mem_pool`, `kvm_mem_slot_pool` with builder `ResourceManagerBuilder` | +| [VSOCK device manager](../src/device_manager/vsock_dev_mgr.rs) | provides configuration info for `VIRTIO-VSOCK` and management for all VSOCK devices | + + +## Device supported +`VIRTIO-VSOCK` +