Как вы можете получить топ Linux, как вывод, используя C - PullRequest
2 голосов
/ 08 декабря 2010

Я пытаюсь получить информацию об использовании процессора и сведения обо всех запущенных процессах во встроенном Linux во время выполнения теста C. Есть ли в C top эквивалент, который я мог бы использовать?

Ответы [ 3 ]

3 голосов
/ 08 декабря 2010

Я не уверен, какой аспект top смущает вас, но просто взгляните на исходный код для top .

2 голосов
/ 08 декабря 2010

Я думаю, вам нужно проанализировать файловую систему / proc. Ядро имеет специальную файловую систему, которая обычно монтируется в / proc с уникальным каталогом для каждого процесса (например, / proc / 30 принадлежит процессу с PID = 30). Все файлы в этих каталогах являются текстовыми и содержат много информации о запущенных процессах.

1 голос
/ 08 декабря 2010

Вместо top вам, вероятно, следует использовать ps с правильными аргументами, и вы можете проанализировать вывод.

Вам придется вызывать это с помощью вызова system или popenиз вашего кода CВы не можете получить эту информацию строго в своем коде C (по крайней мере, я не думаю, что вы можете).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...