# What is Firecracker? Firecracker is an open-source virtual machine monitor from AWS. It uses Linux KVM to run lightweight microVMs, and each microVM has its own kernel. **Runtime runs every sandbox in its own Firecracker microVM**, on dedicated servers that Runtime operates. ## How does Firecracker work? Firecracker runs as one process per microVM. It asks the Linux kernel's KVM to create a virtual machine. Then it boots a guest Linux kernel inside that machine. The guest sees a short, deliberate list of devices. The project's site counts "only 5 emulated devices": virtio-net, virtio-block, virtio-vsock, a serial console, and a minimal keyboard controller. The keyboard controller is used only to stop the microVM. Two more layers surround the monitor. Seccomp filters "limit the host system calls Firecracker can use" to "the bare minimum". A jailer process sets up cgroups and namespaces and drops privileges before Firecracker starts. The project calls the jailer "a second line of defense in case the virtualization barrier is ever compromised." Its design document treats every guest vCPU as "running malicious code as soon as they have been started." ## Facts | Property | Firecracker, as the project states it | | -------------------- | ------------------------------------------------------------ | | What it is | A virtual machine monitor (VMM) on Linux KVM | | Language and license | Rust, Apache 2.0 | | Start time | Up to 125 ms from the start call to the guest's `/sbin/init` | | Memory overhead | Up to 5 MiB for the VMM threads, on a 1 vCPU, 128 MiB guest | | Creation rate | Up to 150 microVMs per second per host | | CPU performance | Over 95% of bare metal for compute-only work | | Built for | AWS Lambda and AWS Fargate | | Integrated in | Kata Containers, firecracker-containerd | The creation rate comes from the project's site. The other values come from its specification. They were measured on AWS M5D.metal and M6G.metal hosts, with a minimal guest kernel and root filesystem. These values measure the monitor alone. They do not measure a sandbox with a full operating system and network. ## Is Firecracker a container runtime? No. Firecracker runs virtual machines. Container tools can use it underneath. For example, Kata Containers can boot each pod in a Firecracker microVM. See [Kata Containers vs Firecracker](/compare/kata-containers-vs-firecracker). ## How Runtime uses Firecracker Each Runtime sandbox is a Firecracker microVM with its own Linux kernel and disk. It runs Ubuntu 24.04 with Python, Node.js, Bun, git and a compiler. `sudo` works inside the sandbox. Root in the guest still cannot change the network rules, CPU, memory or cost. The host enforces these ([security](/docs/security)). Custom image builds run in their own Firecracker guest too ([images](/docs/images)). ```bash no-run npx withruntime sandboxes run -- uname -a ``` Related: [microVM](/glossary/microvm), [gVisor](/glossary/gvisor), [Firecracker vs gVisor](/compare/firecracker-vs-gvisor), [Firecracker vs Docker](/compare/firecracker-vs-docker). ## Sources Checked 25 October 2026. - [Firecracker](https://firecracker-microvm.github.io/) - [Firecracker README](https://github.com/firecracker-microvm/firecracker) - [Firecracker specification](https://github.com/firecracker-microvm/firecracker/blob/main/SPECIFICATION.md) - [Firecracker design](https://github.com/firecracker-microvm/firecracker/blob/main/docs/design.md) Facts on this page were checked on 25 October 2026.