Sandboxes de VM com sub-milissegundos usando fork de memória CoW

Eu queria ver como rápido um sandbox de código isolado poderia iniciar se eu nunca precisasse iniciar uma VM nova. Então, em vez de lançar um novo microVM por execução, eu iniciei o Firecracker uma vez com Python e numpy já carregados, e então fiz um snapshot do estado completo da VM. Cada execução depois disso cria um novo KVM VM baseado em um mapeamento `MAP_PRIVATE` da memória do snapshot, então Linux me fornece páginas copy-on-write automaticamente. Isso significa que cada sandbox começa de um processo Python já rodando dentro de uma VM real, executa o código e sai. Esses são KVM VMs real, não containers: kernel do guest separado, memória do guest separada, tabelas de página separadas. Quando uma VM escreve na memória, ela recebe uma cópia privada dessa página. A parte difícil não foi o CoW em si. A parte difícil foi retomar a VM snapshotada corretamente. Rust, Apache 2.0.

  • Aplicação Web
  • Código Aberto
  • Nativo em Nuvem
Mar 17, 2026Visitar site

Resumo de IA

ZeroBoot é um sistema que cria sandboxes de VM em submilissegundos ao capturar um snapshot de um microVM Firecracker pré-inicializado com Python e bibliotecas carregadas. Cada nova execução bifurca esse snapshot usando mapeamentos de memória copy-on-write, fornecendo isolamento KVM completo sem a sobrecarga de uma inicialização de VM do zero.

Melhor para

Plataformas Serverless/FaaS que exigem inicializações rápidas a frio, Sandboxing de código de alto desempenho para código de usuário não confiável, Cargas de trabalho de ciência de dados ou ML que precisam de ambientes Python rápidos e isolados

Por que importa

Ele oferece inicialização quase instantânea de VM com isolamento completo em nível de hardware, eliminando o processo de inicialização por meio de bifurcação de memória de um snapshot pré-inicializado.

Principais recursos

  • Inicia sandboxes de VM em menos de um milissegundo usando bifurcação de memória copy-on-write
  • Inicializa o Firecracker uma vez com Python e numpy pré-carregados, depois captura o estado completo da VM
  • Cria novas VMs KVM apoiadas por mapeamentos MAP_PRIVATE da memória de snapshot para páginas CoW automáticas
  • Oferece isolamento real de VM KVM com kernels convidados, memória e tabelas de páginas separados

Casos de uso

  • Uma plataforma de ciência de dados usa isso para executar milhares de transformações de dados Python isoladas para diferentes clientes. O script de cada usuário é executado em uma nova VM que inicia em menos de um milissegundo, garantindo isolamento completo entre os trabalhos enquanto mantém o desempenho de um ambiente pré-aquecido com bibliotecas como numpy já carregadas.
  • Um provedor de computação serverless adota essa tecnologia para criar ambientes de execução de funções. Quando uma função é invocada, um novo microVM é bifurcado a partir de um snapshot contendo o runtime, reduzindo drasticamente a latência de inicialização de centenas de milissegundos para tempos submilissegundos, melhorando a experiência do usuário para aplicações sensíveis à latência.
  • Uma empresa de pesquisa de segurança emprega essas sandboxes para executar com segurança amostras de código não confiáveis para análise de malware. Cada amostra é executada em uma VM totalmente isolada que inicia quase instantaneamente, permitindo que os pesquisadores testem milhares de variantes rapidamente enquanto contêm qualquer atividade maliciosa dentro do ambiente bifurcado.