table of contents
PROCPS_MISC(3) | Library Functions Manual | PROCPS_MISC(3) |
NAZWA¶
procps_misc - API do różnych informacji w systemie plików /proc
SKŁADNIA¶
#include <libproc2/misc.h>
Szczegóły platformy
long procps_cpu_count (void); long procps_hertz_get (void); unsigned int procps_pid_length (void); int procps_linux_version (void);
Szczegóły czasu działania
int procps_loadavg (double *av1, double *av5, double *av15); int procps_uptime (double *uptime_secs, double *idle_secs); char *procps_uptime_sprint (void); char *procps_uptime_sprint_short (void);
Szczegóły przestrzeni nazw
int procps_ns_get_id (const char *name); const char *procps_ns_get_name (int id); int procps_ns_read_pid (int pid, struct procps_ns *nsp);
Konsolidować z -lproc2.
OPIS¶
procps_cpu_count() zwraca liczbę CPU obecnie włączonych, jak w sysconf(_SC_NPROCESSORS_ONLY) lub przyjęte 1.
procps_hertz_get() zwraca liczbę tyknięć zegara na sekundę, jak w sysconf(_SC_CLK_TCK) lub przyjęte 100. Podzielenie tyknięć przez tę wartość daje sekundy.
procps_pid_length() zwraca maksymalną długość łańcucha dla PIDu w systemie. Na przykład, jeśli największa możliwa wartość PID to 123, długość wynosi 3. Jeśli plik /proc/sys/kernel/pid_max jest nieczytelny, przyjmowana jest wartość 5.
procps_linux_version() zwraca bieżącą wersję Linuksa zakodowaną w liczbie całkowitej. Na systemach innych niż Linux, mających emulację systemu plików proc, ta funkcja zwraca wersję emulacji Linuksa. Wersja składa się z trzech dodatnich liczb całkowitych, oznaczających poziomy główny, poboczny i poprawek. Do kodowania danej wersji Linuksa lub podziału wersji na składniki służą poniższe makra:
LINUX_VERSION( major , minor , patch )
LINUX_VERSION_MAJOR( ver )
LINUX_VERSION_MINOR( ver )
LINUX_VERSION_PATCH( ver )
procps_loadavg() pobiera średnie obciążenie systemu i wpisuje średnie 1-, 5- i 15-minutowe w miejsce określone wskaźnikiem różnym niż NULL.
procps_uptime() zwraca czas działania systemu i/lub liczbę sekund bezczynności w miejsce określone wskaźnikiem innym niż NULL. Odmiana sprint zwraca łańcuch czytelny dla użytkownika w jednej z dwóch postaci.
HH:MM:SS up HH:MM, # users, load average: średnie 1, 5, 15 minutowe
up HH, MM
procps_ns_get_id() zwraca całkowite id (enum namespace_type) przestrzeni nazw dla podanej przestrzeni nazw name.
procps_ns_get_name() zwraca nazwę przestrzeni nazw dla podanego id (enum namespace_type).
procps_ns_read_pid() zwraca i-węzły przestrzeni nazw podanego procesu w strukturze procps_ns wskazanej przez nsp. I-węzły będą w kolejności określonej przez enum namespace_type.
enum namespace_type {
PROCPS_NS_CGROUP,
PROCPS_NS_IPC,
PROCPS_NS_MNT,
PROCPS_NS_NET,
PROCPS_NS_PID,
PROCPS_NS_TIME,
PROCPS_NS_USER,
PROCPS_NS_UTS };
WARTOŚĆ ZWRACANA¶
Funkcje zwracające `int' lub `long'¶
Błąd jest oznaczany poprzez liczbę ujemną, będącą liczbą przeciwną do znanej wartości errno.h.
Funkcje zwracające adres¶
Błąd jest oznaczany zwracanym wskaźnikiem NULL, a powód można znaleźć w wartości errno.
PLIKI¶
- /proc/loadavg
- Surowe wartości średniego obciążenia.
- /proc/sys/kernel/osrelease
- Wersja wydania jądra Linuksa lub systemu plików proc.
- /proc/sys/kernel/pid_max
- Wartość, przy której licznik PIDów się przekręca - o jeden większa, niż maksymalna wartość PID.
- /proc/uptime
- Surowe wartości czasu włączenia systemu i bezczynności.
- /proc/<PID>/ns
- zbiór przestrzeni nazw dla określonegu PIDu.
ZOBACZ TAKŻE¶
Sierpień 2022 | libproc2 |