Jak uzyskać programowo statystyki dysku/procesu w systemie Mac OS X. W aplikacji "Activity Monitor" lub w komendzie "top" możemy uzyskać tylko cały dysk systemowy statystyki i/o.
Dla porównania Similar question asked for PC.Statystyki operacji odczytu/zapisu dysku w systemie Mac OS X
Odpowiedz
Zastosowanie iotop
(jako root), na przykład:
iotop -C 3 10
ale najlepszym sposobem (dla mnie) jest:
sudo fs_usage -f filesys
bardzo przydatne. iotop tylko pokazał mi, że mds i mdworker wbijali mój dysk. fs_usage pokazał ziliony plików w Mail.app, że indeksował, więc wskazał mi właściwy kierunek, co do problemu. –
Zauważ, że w przypadku El Capitan to nie działa, ponieważ 'iotop' polega na' dtrace'. I El Capitan wyłącza 'dtrace' z trybem bezkodowym (SIP). – Brice
To też jest zepsute w Sierra. –
Ponieważ nie jest odpowiedzią tutaj o tym, jak to zrobić programowo, oto kilka dodatkowych informacji. Możesz pobrać trochę informacji z libproc, jeśli możesz użyć C/C++/ObjectiveC++. Funkcja proc_pid_rusage
daje kilka informacji zasobów dla danego procesu, ale te związane z pytaniem jest:
struct rusage_info_v3 {
...
uint64_t ri_diskio_bytesread;
uint64_t ri_diskio_byteswritten;
...
};
Przykładowy kod:
pid_t pid = 10000;
rusage_info_current rusage;
if (proc_pid_rusage(pid, RUSAGE_INFO_CURRENT, (void **)&rusage) == 0)
{
cout << rusage.ri_diskio_bytesread << endl;
cout << rusage.ri_diskio_byteswritten << endl;
}
Zobacz <libproc.h>
i <sys/resource.h>
aby uzyskać więcej informacji.
Znalazłem iStat Menus, który znajduje się na pasku menu. Pokazuje tylko 5 najlepszych użytkowników dysku do odczytu/zapisu (i nie jestem pewien, czy jest to suma, ale nie sortuje).
@Anoop Jest to część narzędzia do monitorowania procesora, nie do hakowania – Raviprakash