In 2014, Amazon was facing a serious internal problem. The container-based function execution environment running on top of EC2 had weak multi-tenancy security isolation, and cold starts stretched into several seconds. Lambda, announced that same year, initially ran on containers (LXC), but this model had fuzzy security boundaries and low density (the number of concurrent executions per unit of hardware). As the solution, AWS unveiled Firecracker at AWS re:Invent 2018. Written in Rust, this MicroVM hypervisor achieves sub-125ms boot times and under 5MB of memory overhead. Lambda has run on top of Firecracker since 2019.