# google/novm

Experimental KVM-based VMM for containers, written in Go.

Repository: https://github.com/google/novm
Canonical: https://ross.abutalabs.com/products/novm
Language: Go
License: Apache-2.0
License Family: permissive
Archived: true
Last push: 2020-06-12T17:49:39+00:00

## Health v2 (maintenance only)
Score: 10/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 4396, "days_push": 2273, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, archived
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1676, forks 118 (observed 2026-08-28T04:05:20.696383+00:00)

## What it is
novm is an experimental, legacy-free type 2 hypervisor (VMM) written in Go that leverages the Linux KVM interface to run guest instances. It exposes a filesystem-device as the primary mechanism for running guests, aiming to combine the isolation of hardware virtualization with the lightweight bundling flexibility of containers.

## Use cases
- run cloud workloads in lightweight VMs with hardware-enforced isolation
- run containers with stronger isolation than shared-kernel container runtimes
- run a guest with a kernel decoupled from the host kernel
- bundle software and data as filesystem-based VM images instead of disk images
- run workloads requiring a specific or different guest kernel version
- achieve multi-tenant isolation for untrusted workloads

## When to choose
- you need hardware-enforced isolation stronger than container namespaces for multi-tenant workloads
- you want container-like lightweight VM bundling without managing virtual disk images
- your workloads are modern cloud applications that don't need legacy hardware emulation
- you need to run a guest kernel version independent of the host kernel

## When to avoid
- you need to run legacy applications requiring hardware emulation or legacy device support
- your workloads are extremely I/O intensive and cannot tolerate virtualization overhead
- you need a production-ready, actively maintained VMM with ongoing support
- plain containers meet your isolation and kernel flexibility needs

## Facets
- artifact type: application
- maturity: abandoned
- function: container-runtime, security, cloud
- domain: cloud-computing, security
- platform: go
- tags: hypervisor, vmm, kvm, lightweight-vms, containers, microvm, paravirtualization, cloud-workloads, filesystem-device, type-2-hypervisor, virtualization, infrastructure, linux, x86

## Member repositories
- google/novm (main) score 10

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:20.696383+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:42:26.342576+00:00, confidence not recorded.
  - readme: https://github.com/google/novm (fetched 2026-08-28T04:05:20.696383+00:00, sha 10ac264ab0ab)
- Data as of 2026-08-30T08:39:29.467469+00:00.
