2016-05-19 6 views
1

In Linux können wir die Speicherauslastung nach Prozess mit/proc/[ID]/stat,/proc/[ID]/Status abrufen. Aber in FreeBSD haben wir nicht stat, und in Datei/proc/[id]/status haben wir kein Feld, das uns sagt, wie viel Speicherverbrauch mit spezifischer ID verarbeitet wird. Also, wie kann ich diesen Wert abrufen? Ich möchte diesen Wert in meinem C++ - Programm für die Überwachung abrufen.Retireve Speicherverbrauch durch Prozess in FreeBSD-System

+0

Ich würde vorschlagen, auf der dedizierten Mailingliste http: //www.freebsd zu fragen. org/doc/de_DE.ISO8859-1/books/manual/eresources-mail.html Die meisten FreeBSD-Entwickler sind angemeldet und ihre Antworten sind im Allgemeinen schnell und hilfreich. – Amiramix

Antwort

3

Ich nehme an, Sie suchen nach Procstat (1) Dienstprogramm. Zum Beispiel, die Ressourcennutzung abrufen Sie Befehl verwenden können:

procstat -r $PID 

Um es für ein eigenes Programm zu verwenden, gibt es libprocstat (3) Bibliothek. Der "procstat-rt" verwendet die Funktion "procstat_getprocs", um Informationen über die Ressourcennutzung abzufragen, so dass Sie den folgenden Quellcode verwenden können: https://github.com/freebsd/freebsd/blob/master/usr.bin/procstat/procstat_rusage.c