Auch wenn ich einen super schnellen Computer habe, war ich ständig frustriert, weil meine gesamte Maschine unresponsive wirkte, mit ruckelnder Maus und Tastatur, da bestimmte Aufgaben eine Menge intensiver Prozesse gleichzeitig starteten und jede CPU fast auf 100 % Auslastung brachte. Zum Beispiel habe ich oft 10 Projekte in Cursor im WSL-Modus unter Windows 11 geöffnet. Wenn Cursor aktualisiert und neu gestartet wurde, überwältigten all diese Prozesse, die gleichzeitig starteten, meine Maschine. Oder ich arbeite an verschiedenen Projekten gleichzeitig, und plötzlich versucht einer der Agenten, eine große Rust-Codebasis zu kompilieren, und im nächsten Moment ruckelt meine Maus, was mich verrückt macht. Ich hatte schließlich genug davon und beschloss, etwas dagegen zu unternehmen. Es gibt einige bestehende Pakete, die viel von dem, was ich wollte, bereits erledigten, insbesondere ananicy, aber ich wollte etwas, das einfach die gesamte Konfiguration automatisch für mich erledigte, um die spezifischen Probleme zu lösen, mit denen ich konfrontiert war. Im Grunde funktioniert das so, dass es einen Prozess erkennt, der viel zu viel CPU verwendet, und dann die Prioritätsstufe (wie "nett" es im Unix-Jargon ist) ändert, um sie zu senken und die Reaktionsfähigkeit meiner Maschine wiederherzustellen. Es kann auch dasselbe für Prozesse tun, die meine I/O mit einer Million offenen Dateihandles und tonnenweise I/O-Nutzung mit "ionice" killen. Ich wollte wirklich etwas, das alles in Bezug auf Installation, Konfiguration, Persistenz usw. mit einer Einzeiler-Installation erledigte, die "einfach funktionierte". Dies wird im ersten Screenshot unten dargestellt. Während ich das tat, beschloss ich, einen Systemmonitor in Golang namens sysmon zu erstellen, der eine wirklich schicke Terminaloberfläche hat (siehe den zweiten und dritten Screenshot unten). Ironischerweise wurde dies zu einem viel größeren Projekt für sich, aber ich behalte es trotzdem als Teil dieses kombinierten Systems. Es ist eine Art wie htop oder btop, aber ausschließlich darauf fokussiert, Fehlverhalten von Programmen/Prozessen zu identifizieren, die die Systemleistung beeinträchtigen. Es zeigt dir die schlimmsten Übeltäter und berücksichtigt auch die I/O. Es gibt einige spezielle Mini-Befehle für Cursor und Cargo, da diese mir die meisten Probleme bereitet haben. Schau dir das Ganze an und lass mich wissen, was du denkst. Das gesamte Projekt ist vollständig Open Source und MIT-lizenziert und kann hier gefunden werden: