A multithreaded, real-time system resource monitor for macOS, built from scratch using C++ and Qt 6.
Unlike standard applications that rely on high-level wrappers, this tool directly interfaces with UNIX POSIX APIs and the macOS Mach kernel to extract raw system telemetry with zero UI blocking.
- Kernel Polling: Utilizes
<libproc.h>and Mach subsystem headers to track per-process CPU ticks and memory footprints. - Event-Driven IPC Pipeline: Bypasses restricted Apple private frameworks by establishing an asynchronous
QProcessstream with the nativenettopUNIX utility. - Real-Time Data Parsing: Implements highly optimized C++ Regular Expressions (Regex) to parse live terminal CSV streams and dynamically compute network deltas (KB/s).
- Zero-Allocation UI: Uses Qt Event Filters and custom data-role mapping to ensure the UI sorts and renders hundreds of active processes instantly without memory leaks or state-machine desyncs.
- Live CPU & RAM Tracking: View precise memory footprints and processor loads.
- Network Odometer: Real-time upload and download speeds (KB/s) mapped to specific applications.
- Process Management: Safely terminate rogue or frozen applications directly from the UI via POSIX
SIGKILLsignals. - Dark Mode Native: Custom Qt Stylesheets for a modern, low-glare aesthetic.
To compile this project locally:
- Ensure Qt 6 and a modern C++17 compiler (Apple Clang) are installed.
- Clone the repository:
git clone [https://github.com/yourusername/SystemMonitor.git](https://github.com/yourusername/SystemMonitor.git)
