Skip to content
daniel@cosenza:~/blog
Haiku OSHow-To July 14, 2026 3 min read

How to Monitor System Activity with ProcessController on Haiku

A complete walkthrough using Haiku's ProcessController Deskbar replicant to watch CPU load and memory usage at a glance, and dig into individual running teams when something is misbehaving.

ProcessController is Haiku’s built-in system monitor, living as a small Deskbar replicant rather than a separate application window you have to remember to open — a lightweight, always-visible way to watch what the system is actually doing.

Step 1: confirm ProcessController is showing in the Deskbar

Right-click the Deskbar (top-right corner) →
  look for the small CPU/activity icon among the replicants

ProcessController ships enabled by default on a standard Haiku installation, appearing as a compact bar-graph-style icon in the Deskbar’s replicant tray.

Step 2: read the at-a-glance CPU display

Hover over the ProcessController icon →
  per-core CPU usage shown as small colored bars

On multi-core systems, each core gets its own small indicator — a quick way to spot whether load is spread evenly or concentrated on a single core, which often points at a specific single-threaded process being the bottleneck.

Step 3: open the full team (process) list

Click the ProcessController icon →
  Show Teams (or similar, depending on version)

This opens a fuller view listing every running team (Haiku’s term for a process) with its memory usage and current CPU activity, sortable by clicking each column header.

Step 4: inspect a specific team’s threads

Double-click a team in the list →
  view its individual threads and their states

Since Haiku’s kernel is pervasively multithreaded by design, a single misbehaving team is often really one specific thread within it stuck or consuming excess CPU — the thread-level view narrows down which part of an application is actually the problem.

Step 5: quit or kill an unresponsive team directly

Right-click a team in the list → Quit
  (or Kill, for a team that doesn't respond to Quit)

This gives you the same practical outcome as opening a dedicated task manager on other operating systems, without leaving the lightweight Deskbar-integrated tool.

ProcessController's team list → Memory column →
  observe whether a specific team's usage climbs
  continuously without ever stabilizing

A team whose memory usage climbs steadily over a long session without ever plateauing is a practical, early sign of a memory leak in that specific application — useful to notice before it becomes a system-wide slowdown.

Step 7: configure what ProcessController shows

Right-click the ProcessController icon → Settings →
  toggle which indicators (CPU, memory) are visible
  in the compact Deskbar view

Trimming the compact view down to just what you actually check regularly keeps the Deskbar itself uncluttered while still surfacing the information you care about.

Why a Deskbar replicant, rather than a separate app, is the right design here

Because ProcessController lives directly in the Deskbar rather than requiring you to open and keep track of a separate monitoring window, system activity stays visible continuously during normal use — you notice a CPU spike or memory climb as it happens, rather than only when you think to go check, which is a meaningfully different (and generally more useful) habit than opening a task manager reactively after something already feels slow.