Я делаю программу, которая может видеть, возникают ли ошибки страниц в некоторых процессах, и мой метод сделать это - получить PID всех процессов и увидеть rss
, maj_flt
и т. д., ища в каждом отдельном /proc/[PID]
, проверяя, есть ли общее изменение maj_flt
.
Но чтобы получить PID всех запущенных процессов, мне нужно получить их непосредственно из моей программы на C, без использования существующих команд оболочки, таких как ps
, top
и т. д.
Кто-нибудь знает, где находятся текущие данные PID в /proc
или где-то еще? Или, если есть другой способ сделать это, например, получить его с помощью функции системного вызова в моей программе C?