PROCPS_MISC(3) Library Functions Manual PROCPS_MISC(3)

procps_misc — API för diverse information i filsystemet /proc

#include <libproc2/misc.h>
Plattformsegenskaper
long         procps_cpu_count (void);
long         procps_hertz_get (void);
unsigned int procps_pid_length (void);
int          procps_linux_version (void);
Körtidsegenskaper
int   procps_loadavg (double *gs1, double *gs5, double *gs15);
int   procps_uptime (double *uppetid_s, double *inaktiv_s);
char *procps_uptime_sprint (void);
char *procps_uptime_sprint_short (void);
Namnrymdsegenskaper
int         procps_ns_get_id (const char *namn);
const char *procps_ns_get_name (int id);
int         procps_ns_read_pid (int pid, struct procps_ns *nrd);
Länka med -lproc2.

procps_cpu_count() returnerar antalet CPU:er som för närvarande är inkopplade liksom sysconf(_SC_NPROCESSORS_ONLY) eller ett antaget 1.

procps_hertz_get() returnerar antalet klocktick per sekund liksom sysconf(_SC_CLK_TCK) eller ett antaget 100. Att dividera tick med detta värder ger sekunder.

procps_pid_length() returnerar den maximala stränglängden för en PID på systemet. Till exempel, om det största möjliga värdet på en PID var 123, då skulle längden vara 3. Om filen /proc/sys/kernel/pid_max är oläsbar antas värdet vara 5.

procps_linux_version() returnerar den aktuella Linuxversionen som ett kodat heltal. På ett icke-Linuxsystem som har ett emulerat proc-filsystem returnerar denna funktionen versionen på Linuxemuleringen istället. Versionen består av tre positiva heltal som representerar nivåerna större, mindre och fix. Följande makron finns för att koda en given Linuxversion eller att separera ut komponenterna av den aktuella versionen.

LINUX_VERSION( större , mindre , fix )

LINUX_VERSION_MAJOR( ver )

LINUX_VERSION_MINOR( ver )

LINUX_VERSION_PATCH( ver )

procps_loadavg() hämtar genomsnittlig systemlast och lägger genomsnitten över 1, 5 och 15 minuter i platserna som anges av de pekare som inte är NULL.

procps_uptime() returnerar uppetiden och eller inaktiva sekunder i platserna som anges av de pekare som inte är NULL. Varianterna sprint returnerar en mänskligt läsbar sträng på en av två former.

HH:MM:SS up HH:MM, # users, load average: 1, 5, 15 MM averages

up HH, MM

procps_ns_get_id() returnerar heltals-id:t (enum namespace_type) för namnrymden för den angivna namnrymden namn.

procps_ns_get_name() returnerar namnet på namnrymden för det angivna id:t (enum namespace_type).

procps_ns_read_pid() returnerar inoderna för namnrymderna för den angivna processen procps_ns-posten som pekas ut av nrp. Dessa inoder kommer komma i den ordning som föreskrivs av 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 };

Funktioner som returnerar en ”int” eller ”long”

Ett fel kommer indikera ett negativt tal som alltid är inversen av något känt värde från errno.h.

Funktioner som returnerar en ”adress”

Ett fel kommer indikeras av en NULL-returpekare och orsaken går att hitta i dett formella errno-värdet.

/proc/loadavg
De råa värdena för lastgenomsnitt.
/proc/sys/kernel/osrelease
Innehåller utgåveversionen för Linuxkärnan eller proc-filsystemet.
/proc/sys/kernel/pid_max
Innehåller värdet vid vilket PID:ar slår runt, ett större än det maximala PID-värdet.
/proc/uptime
De råa värdena för uppetid och inaktiv tid.
/proc/<PID>/ns
innehåller uppsättningen av namnrymder för en viss PID.

procps(3), procps_pids(3), proc(5).

Augusti 2022 libproc2