2016-05-30 12 views
5

Obecnie pracuję nad aplikacją w systemie Linux, która musi sklasyfikować niektóre procesy jako powiązane we/wy sieci lub pamięci powiązane w czasie wykonywania. Zamiast używać jakiegoś narzędzia, takiego jak iotop, muszę określić, czy proces jest związany z wejściem/wyjściem sieciowym w moim kodzie. Próbowałem użyć informacji dostępnych przez /proc, ale nie mogę tam znaleźć statystyk wejścia/wyjścia sieci. Czy są jakieś inne sposoby na uzyskanie statystyk dotyczących operacji we/wy sieci? Każda pomoc będzie bardzo ceniona!W systemie Linux, jak sklasyfikować proces jako związany we/wy lub pamięć powiązana w środowisku wykonawczym?

+0

Brałeś przyjrzeć się, jak iftop jest realizowany? – user2079303

+0

Nie, nie mam. Cóż, warto uczyć się z kodów źródłowych. Dziękuję Ci! – Jenson

+0

Czy można nawet uzyskać IO sieci procesów (na jądrze waniliowym)? – zerkms

Odpowiedz

1

Spróbuj przy pewnej częstości cat /proc/pid/io.

A bajty zapisu/odczytu delta określają, czy pid jest związany we/wy. (Oczywiście według własnego odniesienia.)

link to similar question

+0

Czołgaj się za odpowiedź! Ale według [link] (http://man7.org/linux/man-pages/man5/proc.5.html), plik **/proc/pid/io ** zawiera statystyki dysku I/O dla proces, a nie statystyki sieci we/wy. – Jenson

Powiązane problemy