2009-07-22 10 views
6

Мне нужно получить информацию о процессе в программе на C/C++. Мне нужны, по крайней мере, такие основные вещи, как процессор и использование памяти, но дополнительные данные также будут полезны.портативная система/библиотека информации о процессе

Проблема в том, что мне нужно использовать эту информацию в переносной программе, которая будет работать на нескольких платформах: windows, linux, MAC и, возможно, Solaris.

Есть ли библиотека, которую я могу использовать или мне нужно написать свой собственный HAL для разных платформ? Я попытался посмотреть на google, но я не видел ничего очевидного.

ответ

0

Эта информация должна быть получена из ОС.
По определению это не переносимо, но есть пара уровней абстракции OS. Тот, который приходит на ум, - ACE.

+0

ACE, кажется, не содержат то, что ОП просили. Qt, btw, тоже нет. Кажется, это нетривиально ... –

+0

Проблема тривиальна. Просто каждая система отличается. –

1

Я не могу помочь вам с полным решением, но вот ссылка на мой класс CPULoadMeter, который вы можете использовать для опроса информации об использовании ЦП с течением времени. Он работает под MacOS/X, Windows и Linux (и, возможно, с другими Unix-OS, у которых есть/proc/stat, я не знаю). Возможно, вы можете использовать его в качестве отправной точки.

https://public.msli.com/lcs/muscle/muscle/util/CPULoadMeter.h https://public.msli.com/lcs/muscle/muscle/util/CPULoadMeter.cpp

 Смежные вопросы

  • Нет связанных вопросов^_^