| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Программирование под Unix/Linux > Процессы Linux, BSD |
| Автор: VackuM 6.10.2008, 11:01 |
| Здравствуйте. Я всегда полагал что /proc существует для большей наглядности Происходящего в системе, и ее разумно применять только в скриптовых языках (perl,sh). После беглого осмотра исходников top (procps пакета) под linux, пришел к выводу, что и там все делается через /proc, - что не радовало. Сейчас пишу программку для мониторинга системы (например подсчет процессов httpd в текущий момент) которая должна работать как на linux так и FreeBSD, так что использование /proc не устраивывает - хочется кросс платформенности (как функция getloadavg которая работает как на linux так и FreeBSD) . Кто сталкивался с подобными системными вызовами, дайте линк или подскажите в какой литературе это можно найти. PS: Хотя есть подозрения что в procps пакете специально используется /proc, так как я не нашел ни одного вхождения функции getloadavg вместо этого используется /proc/loadavg. |
| Автор: VackuM 6.10.2008, 13:10 | ||||
Спасибо MAKCim за ответ. Буду копать /usr/include/asm/unistd.h и надо посмотреть top фряхи (как он там устроен).
Не мне судить, но ненравится мне эта идея...
Бегло выполнив ls /proc ничего в нем необнаружил (каталог пуст), возможно и можно как-то прикрутить /proc к фряхе (наверняка можно, включив совместимость linux_enable="YES") но хотя бы тот факт, что этого нет по умолчанию, заставляет меня отказатся от /proc |
| Автор: MAKCim 6.10.2008, 13:12 | ||
тогда #ifdef ... #endif |