Actual Window Manager ^new^ Here
Your text editor draws to a hidden buffer. Your browser draws to another. The compositor steals both, layers them, and presents a photograph of windows to the display. When you drag a window, you are not moving the window—you are moving the photograph of a window, then asking the application to redraw its hidden canvas, then taking a new photograph.
This is why "actual window manager" is a slippery phrase. The manager of pixels is the compositor. The actual manager of input is the event router. The actual manager of window state (minimized, maximized, tiled) is a policy engine. Most systems glue these into one process, but they remain conceptually distinct. Part III: A Brief Taxonomy of Actualities If we take "actual" to mean "the software component(s) that physically control window positioning, stacking, and input routing on a modern graphical system," we find not one answer but a family of them. actual window manager
The answer is stranger, more fragile, and more philosophical than you think. There is no such thing as an "actual window manager"—only a series of elaborate deceptions that, when woven together, become the single most intimate piece of software you never think about. Let us begin with a technical truth: your screen has no windows. Your text editor draws to a hidden buffer
You move your mouse over a terminal window. You click. A cursor appears. When you drag a window, you are not
On Linux (Wayland), the kernel's DRM (Direct Rendering Manager) and KMS (Kernel Mode Setting) control the actual display hardware. The compositor talks to DRM via libdrm to flip buffers. On Windows, the DWM talks to the DXGI kernel driver. On macOS, WindowServer talks to the IOKit framebuffer.
| System | What You Call It | What It Actually Is | |--------|------------------|----------------------| | Windows 11 | Desktop Window Manager (DWM) | A compositor + policy engine + input router, tightly coupled to the graphics kernel | | macOS | Quartz Compositor (part of WindowServer) | A userspace compositor + event manager + window database | | Linux (GNOME) | Mutter | A Wayland compositor + window manager + input manager | | Linux (KDE) | KWin | The same, but with pluggable window decoration and tiling scripts | | Linux (i3/sway) | i3 or Sway | A tiling window manager that is also a compositor (Sway) or relies on X11 (i3) |