cgroups: Resource Limiting and Isolation in the Linux Kernel

ArticleWikipedia contributorsResource

Control groups (cgroups) are a Linux kernel feature that limits, accounts for, and isolates the resource usage—such as CPU, memory, and disk I/O—of process collections.

Key points

  1. Initiated by Google engineers in 2006 as 'process containers', renamed to 'control groups' in 2007, and merged into Linux kernel mainline 2.6.24 in January 2008.
  2. Core features include resource limiting (memory, CPU quota, I/O bandwidth), prioritization, accounting, and process control (freezing and restarting).
  3. cgroup v2, introduced in Linux 4.5 (2016), enforces a single unified hierarchy and manages resources at process granularity rather than thread level.
  4. Interfacing occurs via a pseudo-filesystem (typically /sys/fs/cgroup), user-space tools (such as libcgroup), or higher-level tools like Docker, LXC, and systemd.
  5. Often used alongside Linux namespaces (e.g., PID, network, mount) to achieve process and resource isolation.

Why it matters

Alongside namespaces, cgroups serve as the foundational infrastructure for containerization technologies and system-level resource governance across modern Linux environments.

Analysis

The redesign from cgroup v1 to v2 addressed significant interface and architectural issues, eliminating multiple disparate controller hierarchies and thread discrimination. While v1 and v2 share the same codebase and can technically coexist, modern systems predominantly allocate all active controllers to the v2 hierarchy, tightly managed by init systems like systemd.

Summary generated by AI (Gemini 3.8 Flash, 27 September 2026). It may contain errors – the original source is authoritative.

Similar in content, found by the AI search.

  • Article:Wikipedia-Autoren

    Linux Containers (LXC): Architecture, Security, and Ecosystem

    LXC provides operating system-level virtualisation on Linux by running multiple isolated systems on a single shared kernel. It combines kernel cgroups and namespaces to isolate processes and enforce resource limits.

    Security· Resource

  • Article:Docker Documentation

    Docker Fundamentals and Platform Architecture

    The official Docker documentation outlines the core concepts of the container platform, explaining its client-server architecture, image layers, containers, and the role of Linux namespaces.

    Web development· Resource

  • Article:Wikipedia-Autoren

    Mechanics and Limitations of chroot in Unix Environments

    The Wikipedia overview outlines the Unix system call and shell command chroot, which modifies the apparent root directory for processes. It details its history, common use cases such as package building and rescue operations, and significant security constraints.

    Security· Resource

  • Article:kubernetes.io

    Architectural Overview and Concepts of Kubernetes

    The official Kubernetes documentation outlines the origin, core features, and architectural scope of the open-source platform for container management. It places containers in historical context against physical hardware and VMs, detailing Kubernetes' declarative management model.

    DevOps· Resource

Let's talk about your project

Locations

  • Mattersburg
    Johann Nepomuk Bergerstraße 7/2/14
    7210 Mattersburg, Austria
  • Vienna
    Ungargasse 64-66/3/404
    1030 Wien, Austria

Parts of this content were created with the assistance of AI.