]> granicus.if.org Git - procps-ng/commitdiff
nls: Update the man po files
authorCraig Small <csmall@dropbear.xyz>
Mon, 15 Feb 2021 10:46:53 +0000 (21:46 +1100)
committerCraig Small <csmall@dropbear.xyz>
Mon, 15 Feb 2021 10:46:53 +0000 (21:46 +1100)
Takes into account the procps*.3 manpages and updates them to the
corrected latest versions.

man-po/de.po
man-po/fr.po
man-po/pl.po
man-po/po4a.cfg
man-po/pt_BR.po
man-po/sv.po
man-po/uk.po
man-po/zh_CN.po

index 722bc2cb270da31f9fa5f8812d805b45b753c5c1..426fd108f3c1b59e8a743d8fa4a4432f25a33140 100644 (file)
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: procps-ng-man-3.3.17rc1\n"
 "Report-Msgid-Bugs-To: Procps list <procps@freelists.org>\n"
-"POT-Creation-Date: 2021-02-15 21:26+1100\n"
+"POT-Creation-Date: 2021-02-15 21:41+1100\n"
 "PO-Revision-Date: 2021-01-22 12:13+0100\n"
 "Last-Translator: Mario Blättermann <mario.blaettermann@gmail.com>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
@@ -49,12 +49,12 @@ msgstr "procps-ng"
 msgid "User Commands"
 msgstr "Dienstprogramme für Benutzer"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:6 ../kill.1:9 ../pgrep.1:11 ../pidof.1:19 ../pmap.1:9 ../pwdx.1:7
 #: ../skill.1:10 ../slabtop.1:6 ../sysctl.8:10 ../sysctl.conf.5:10 ../tload.1:5
 #: ../uptime.1:4 ../vmstat.8:4 ../w.1:4 ../watch.1:2 ../ps/ps.1:27
-#: ../top/top.1:70
+#: ../top/top.1:70 ../doc/procps.3:23 ../doc/procps_misc.3:24
+#: ../doc/procps_pids.3:23
 #, no-wrap
 msgid "NAME"
 msgstr "BEZEICHNUNG"
@@ -64,12 +64,12 @@ msgstr "BEZEICHNUNG"
 msgid "free - Display amount of free and used memory in the system"
 msgstr "free - Anzeige des freien und belegten Speichers"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:8 ../kill.1:11 ../pgrep.1:13 ../pidof.1:21 ../pmap.1:11
 #: ../pwdx.1:9 ../skill.1:12 ../slabtop.1:8 ../sysctl.8:12 ../tload.1:7
 #: ../uptime.1:6 ../vmstat.8:6 ../w.1:6 ../watch.1:4 ../ps/ps.1:29
-#: ../top/top.1:75
+#: ../top/top.1:75 ../doc/procps.3:26 ../doc/procps_misc.3:26
+#: ../doc/procps_pids.3:26
 #, no-wrap
 msgid "SYNOPSIS"
 msgstr "ÜBERSICHT"
@@ -79,12 +79,12 @@ msgstr "ÜBERSICHT"
 msgid "B<free> [I<options>]"
 msgstr "B<free> [I<Optionen>]"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:11 ../kill.1:14 ../pgrep.1:22 ../pidof.1:34 ../pmap.1:14
 #: ../skill.1:22 ../slabtop.1:11 ../sysctl.8:18 ../sysctl.conf.5:12
 #: ../tload.1:10 ../uptime.1:9 ../vmstat.8:10 ../w.1:9 ../watch.1:7
-#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82
+#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82 ../doc/procps.3:75
+#: ../doc/procps_misc.3:58 ../doc/procps_pids.3:70
 #, no-wrap
 msgid "DESCRIPTION"
 msgstr "BESCHREIBUNG"
@@ -494,6 +494,7 @@ msgstr "Versionsinformationen anzeigen."
 #. type: SH
 #: ../free.1:133 ../slabtop.1:77 ../sysctl.8:154 ../sysctl.conf.5:57
 #: ../tload.1:34 ../uptime.1:39 ../vmstat.8:201 ../w.1:74
+#: ../doc/procps_misc.3:143
 #, no-wrap
 msgid "FILES"
 msgstr "DATEIEN"
@@ -540,7 +541,8 @@ msgstr "E<.UR procps@freelists.org> E<.UE>"
 #: ../free.1:145 ../kill.1:84 ../pgrep.1:277 ../pidof.1:78 ../pmap.1:79
 #: ../pwdx.1:19 ../skill.1:102 ../slabtop.1:81 ../sysctl.8:168
 #: ../sysctl.conf.5:76 ../tload.1:37 ../uptime.1:56 ../vmstat.8:208 ../w.1:81
-#: ../ps/ps.1:1958
+#: ../ps/ps.1:1958 ../doc/procps.3:172 ../doc/procps_misc.3:160
+#: ../doc/procps_pids.3:183
 #, no-wrap
 msgid "SEE ALSO"
 msgstr "SIEHE AUCH"
@@ -15483,6 +15485,778 @@ msgstr ""
 "B<free>(1), B<ps>(1), B<uptime>(1), B<atop>(1), B<slabtop>(1), B<vmstat>(8), "
 "B<w>(1)"
 
+#. type: TH
+#: ../doc/procps.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS"
+msgstr "PROCPS_USERLEN"
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, no-wrap
+msgid "January 2021"
+msgstr ""
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, no-wrap
+msgid "libproc-2"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:25
+msgid "procps - API to access system level information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:30
+msgid ""
+"Five distinct interfaces are represented in this synopsis and named after "
+"the files they access in the /proc pseudo filesystem: B<diskstats>, "
+"B<meminfo>, B<slabinfo>, B<stat> and B<vmstat>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:34
+#, no-wrap
+msgid "#include E<lt>procps/B<named_interface>.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:38
+#, no-wrap
+msgid ""
+"B<int procps_new   (struct info **>I<info>B<);>\n"
+"B<int procps_ref   (struct info  *>I<info>B<);>\n"
+"B<int procps_unref (struct info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:43
+#, no-wrap
+msgid ""
+"B<struct result *procps_get (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item >I<item>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:49
+#, no-wrap
+msgid ""
+"B<struct stack *procps_select (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:55
+#, no-wrap
+msgid ""
+"B<struct reaped *procps_reap (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   enum reap_type I<what>,   ]   B<stat> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:62
+#, no-wrap
+msgid ""
+"B<struct stack **procps_sort (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"B<    struct stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum item >I<sortitem>B<,>\n"
+"B<    enum sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:69
+msgid ""
+"The above functions and structures are generic but the specific "
+"B<named_interface> would also be part of any identifiers.  For example, "
+"`procps_new' would actually be `procps_B<meminfo>_new' and `info' would "
+"really be `B<diskstats>_info', etc."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:72
+msgid ""
+"The same B<named_interface> is used in each header file name with an "
+"appended `.h' suffix."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:74 ../doc/procps_pids.3:69
+msgid "Link with I<-lprocps>."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:76 ../doc/procps_pids.3:71
+#, no-wrap
+msgid "Overview"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:82
+msgid ""
+"Central to these interfaces is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:88 ../doc/procps_pids.3:83
+msgid ""
+"By specifying an array of `items', these structures can be organized as a "
+"`stack', potentially yielding many results with a single function call.  "
+"Thus, a `stack' can be viewed as a variable length record whose content and "
+"order is determined solely by the user."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:93 ../doc/procps_pids.3:88
+msgid ""
+"As part of each interface there are two unique items.  The `noop' and "
+"`extra' items exist to hold user values.  They are never set by the library, "
+"but the `extra' result will be zeroed with each library interaction."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:99
+msgid ""
+"The B<named_interface> header file will be an essential document during user "
+"program development.  There you will find available items, their return type "
+"(the `result' struct member name) and the source for such values.  "
+"Additional enumerators and structures are also documented there."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:100 ../doc/procps_pids.3:95
+#, no-wrap
+msgid "Usage"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:103
+msgid "The following would be a typical sequence of calls to these interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:108
+#, no-wrap
+msgid ""
+"1. B<procps_new()>\n"
+"2. B<procps_get()>, B<procps_select()> or B<procps_reap()>\n"
+"3. B<procps_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:114
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> "
+"function call.  The B<sort> function parameters I<stacks> and I<numstacked> "
+"would normally be those returned in the `reaped' structure."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:115 ../doc/procps_pids.3:111
+#, no-wrap
+msgid "Caveats"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:118
+msgid ""
+"The B<new>, B<ref>, B<unref>, B<get> and B<select> functions are available "
+"in all five interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:123 ../doc/procps_pids.3:123
+msgid ""
+"For the B<new> and B<unref> functions, the address of an I<info> struct "
+"pointer must be supplied.  With B<new> it must have been initialized to "
+"NULL.  With B<unref> it will be reset to NULL if the reference count reaches "
+"zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:127
+msgid ""
+"In the case of the B<diskstats> interface, a I<name> parameter on the B<get> "
+"and B<select> functions identifies a disk or partition name"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:133
+msgid ""
+"The B<diskstats>, B<slabinfo> and B<stat> interfaces support unpredictable "
+"variable outcomes.  As such, they export a B<reap> function to retrieve "
+"multiple `stacks' with a single invocation.  These same interfaces also "
+"provide a B<sort> function."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:134 ../doc/procps_misc.3:134 ../doc/procps_pids.3:143
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:135 ../doc/procps_pids.3:144
+#, no-wrap
+msgid "Functions Returning an `int'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:138 ../doc/procps_misc.3:138 ../doc/procps_pids.3:147
+msgid ""
+"An error will be indicated by a negative number that is always the inverse "
+"of some well known errno.h value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:142 ../doc/procps_pids.3:151
+msgid ""
+"Success is indicated by a zero return value.  However, the B<ref> and "
+"B<unref> functions return the current I<info> structure reference count."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:143 ../doc/procps_misc.3:139 ../doc/procps_pids.3:152
+#, no-wrap
+msgid "Functions Returning an `address'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:146 ../doc/procps_misc.3:142 ../doc/procps_pids.3:155
+msgid ""
+"An error will be indicated by a NULL return pointer with the reason found in "
+"the formal errno value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:148
+msgid "Success is indicated by a pointer to the named structure."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:149 ../doc/procps_pids.3:160
+#, no-wrap
+msgid "DEBUGGING"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:155 ../doc/procps_pids.3:166
+msgid ""
+"To aid in program development, there is a provision that can help ensure "
+"`result' member references agree with library expectations.  It assumes that "
+"a supplied macro in the header file is used to access the `result' value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:158 ../doc/procps_pids.3:169
+msgid ""
+"This feature can be activated through either of the following methods and "
+"any discrepancies will be wrtten to B<stderr>."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:159 ../doc/procps_pids.3:170
+#, fuzzy, no-wrap
+#| msgid "1"
+msgid "1)"
+msgstr "1"
+
+#. type: Plain text
+#: ../doc/procps.3:162 ../doc/procps_pids.3:173
+msgid ""
+"Add CFLAGS='-DXTRA_PROCPS_DEBUG' to any other ./configure options employed."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:163 ../doc/procps_pids.3:174
+#, fuzzy, no-wrap
+#| msgid "2"
+msgid "2)"
+msgstr "2"
+
+#. type: Plain text
+#: ../doc/procps.3:166
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the named interface includes."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:171 ../doc/procps_pids.3:182
+msgid ""
+"This verification feature incurs substantial overhead.  Therefore, it is "
+"important that it I<not> be activated for a production/release build."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:175
+#, fuzzy
+#| msgid "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+msgid "B<procps_misc>(3)  B<procps_pids>(3)  B<proc>(5)."
+msgstr "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+
+#. type: TH
+#: ../doc/procps_misc.3:20
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_MISC"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:26
+msgid "procps_misc - API for miscellaneous information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:29
+#, no-wrap
+msgid "B<#include E<lt>procps/misc.hE<gt>>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:31
+#, no-wrap
+msgid "Platform Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:37
+#, no-wrap
+msgid ""
+"B<long         procps_cpu_count (void);>\n"
+"B<long         procps_hertz_get (void);>\n"
+"B<unsigned int procps_pid_length (void);>\n"
+"B<int          procps_linux_version (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:40
+#, no-wrap
+msgid "Runtime Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:46
+#, no-wrap
+msgid ""
+"B<int    procps_loadavg (double * >I<av1>B<, double * >I<av5>B<, double * >I<av15>B<);>\n"
+"B<int    procps_uptime (double * >I<uptime_secs>B<, double * >I<idle_secs>B<);>\n"
+"B<char * procps_uptime_sprint (void);>\n"
+"B<char * procps_uptime_sprint_short (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:49
+#, no-wrap
+msgid "Namespace Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:54
+#, no-wrap
+msgid ""
+"B<int          procps_ns_get_id (const char * >I<name>B<);>\n"
+"B<const char * procps_ns_get_name (int >I<id>B<);>\n"
+"B<int          procps_ns_read_pid (int >I<pid>B<, struct procps_ns * >I<nsp>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:57
+#, no-wrap
+msgid "Link with I<-lprocps>.\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:63
+msgid ""
+"B<procps_cpu_count>()  returns the number of CPUs that are currently online "
+"as B<sysconf(>I<_SC_NPROCESSORS_ONLY>B<)> or an assumed I<1>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:69
+msgid ""
+"B<procps_hertz_get>()  returns the number of clock ticks per second as "
+"B<sysconf(>I<_SC_CLK_TCK>B<)> or an assumed I<100>.  Dividing tics by this "
+"value yields seconds."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:74
+msgid ""
+"B<procps_pid_length>()  returns the maximum string length for a PID on the "
+"system. For example, if the largest possible PID value on was 123, then the "
+"length would be 3. If the file I</proc/sys/kernel/pid_max> is unreadable, "
+"the value is assumed to be I<5>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:83
+msgid ""
+"B<procps_linux_version>()  returns the current Linux version as an encoded "
+"integer. On non-Linux systems that have an emulated proc filesystem this "
+"function returns the version of the Linux emulation instead.  The version "
+"consists of three positive integers representing the major, minor and patch "
+"levels.  The following macros are provided for encoding a given Linux "
+"version or separating out the components of the current version."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:86
+msgid "LINUX_VERSION(\\ major\\ ,\\ minor\\ ,\\ patch\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:88
+msgid "LINUX_VERSION_MAJOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:90
+msgid "LINUX_VERSION_MINOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:92
+msgid "LINUX_VERSION_PATCH(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:97
+msgid ""
+"B<procps_loadavg>()  fetches the system load average and puts the 1, 5 and "
+"15 minute averages into location(s) specified by any pointer which is not "
+"I<NULL>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:102
+msgid ""
+"B<procps_uptime>()  returns uptime and/or idle seconds into location(s) "
+"specified by any pointer which is not I<NULL>.  The B<sprint> varieties "
+"return a human-readable string in one of two forms."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:105
+msgid "HH:MM:SS up HH:MM, # users, load average: 1, 5, 15 MM averages"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:107
+msgid "up HH, MM"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:111
+msgid ""
+"B<procps_ns_get_id>()  returns the integer id (enum namespace_type) of the "
+"namespace for the given namespace I<name>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:114
+msgid ""
+"B<procps_ns_get_name>()  returns the name of the namespace for the given "
+"I<id> (enum namespace_type)."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:119
+msgid ""
+"B<procps_ns_read_pid>()  returns the inodes for the namespaces of the given "
+"process in the procps_ns structure pointed to by I<nsp>.  Those inodes will "
+"appear in the order proscribed by enum namespace_type."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:130
+#, no-wrap
+msgid ""
+"enum namespace_type {\n"
+"    PROCPS_NS_IPC,\n"
+"    PROCPS_NS_MNT,\n"
+"    PROCPS_NS_NET,\n"
+"    PROCPS_NS_PID,\n"
+"    PROCPS_NS_USER,\n"
+"    PROCPS_NS_UTS\n"
+"};\n"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps_misc.3:135
+#, no-wrap
+msgid "Functions Returning an `int' or `long'"
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:144
+#, fuzzy, no-wrap
+#| msgid "I</proc/slabinfo>"
+msgid "I</proc/loadavg>"
+msgstr "I</proc/slabinfo>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:147
+msgid "The raw values for load average."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:147
+#, no-wrap
+msgid "I</proc/sys/kernel/osrelease>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:150
+msgid "Contains the release version of the Linux kernel or proc filesystem."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:150
+#, fuzzy, no-wrap
+#| msgid "I</proc/sys>"
+msgid "I</proc/sys/kernel/pid_max>"
+msgstr "I</proc/sys>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:153
+msgid ""
+"Contains the value at which PIDs wrap around, one greater than the maximum "
+"PID value."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:153
+#, fuzzy, no-wrap
+#| msgid "I</proc>"
+msgid "I</proc/uptime>"
+msgstr "I</proc>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:156
+msgid "The raw values for uptime and idle time."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:156
+#, no-wrap
+msgid "I</proc/E<lt>PIDE<gt>/ns>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:159
+msgid "contains the set of namespaces for a particular B<PID>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:163
+#, fuzzy
+#| msgid "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+msgid "B<procps>(3).  B<procps_pids>(3).  B<proc>(5)."
+msgstr "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+
+#. type: TH
+#: ../doc/procps_pids.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_PIDS"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_pids.3:25
+msgid "procps_pids - API to access process information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:29
+#, no-wrap
+msgid "#include E<lt>procps/pids.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:33
+#, no-wrap
+msgid ""
+"B<int procps_pids_new   (struct pids_info **>I<info>B<, enum pids_item *>I<items>B<, int >I<numitems>B<);>\n"
+"B<int procps_pids_ref   (struct pids_info  *>I<info>B<);>\n"
+"B<int procps_pids_unref (struct pids_info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:38
+#, no-wrap
+msgid ""
+"B<struct pids_stack *procps_pids_get (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:42
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_reap (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:48
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_select (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    unsigned *>I<these>B<,>\n"
+"B<    int >I<numthese>B<,>\n"
+"B<    enum pids_select_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:55
+#, no-wrap
+msgid ""
+"B<struct pids_stack **procps_pids_sort (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    struct pids_stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum pids_item >I<sortitem>B<,>\n"
+"B<    enum pids_sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:61
+#, no-wrap
+msgid ""
+"B<int procps_pids_reset (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_item *>I<newitems>B<,>\n"
+"B<    int >I<newnumitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:65
+#, no-wrap
+msgid ""
+"B<struct pids_stack *fatal_proc_unmounted (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    int >I<return_self>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:77
+msgid ""
+"Central to this interface is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:94
+msgid ""
+"The pids.h file will be an essential document during user program "
+"development.  There you will find available items, their return type (the "
+"`result' struct member name) and the source for such values.  Additional "
+"enumerators and structures are also documented there."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:98
+msgid "The following would be a typical sequence of calls to this interface."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:104
+#, no-wrap
+msgid ""
+"1. B<fatal_proc_unmounted()>\n"
+"2. B<procps_pids_new()>\n"
+"3. B<procps_pids_get()>, B<procps_pids_reap()> or B<procps_pids_select()>\n"
+"4. B<procps_pids_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:110
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> or "
+"B<select> function call.  The B<sort> function parameters I<stacks> and "
+"I<numstacked> would normally be those returned in the `pids_fetch' structure."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:118
+msgid ""
+"The E<lt>pidsE<gt> API differs from others in that those items of interest "
+"must be provided at B<new> or B<reset> time, the latter being unique to this "
+"API.  If either the I<items> or I<numitems> parameter is zero at B<new> "
+"time, then B<reset> becomes mandatory before issuing any other call."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:127
+msgid ""
+"The B<get> function is an iterator, for successive PIDs/TIDs, returning "
+"those items previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:134
+msgid ""
+"The B<select> function requires an array of PIDs or UIDs as I<these> along "
+"with I<numthese> to identify which processes are to be fetched.  This "
+"function then operates as a subset of B<reap> while returning those items "
+"previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:142
+msgid ""
+"Lastly, a B<fatal_proc_unmounted> function may be called before any other "
+"function to ensure that the /proc/ directory is mounted.  As such, the "
+"I<info> parameter would be NULL and the I<return_self> parameter zero.  If, "
+"however, some items are desired for the issuing program (a I<return_self> "
+"other than zero) then the B<new> call must precede it to obtain the required "
+"I<info> pointer."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:159
+msgid ""
+"Success is indicated by a pointer to the named structure.  However, if one "
+"survives the B<fatal_proc_unmounted> call, NULL is always returned when "
+"I<return_self> is zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:177
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the #include E<lt>procps/pids.hE<gt>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:186
+#, fuzzy
+#| msgid "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+msgid "B<procps>(3)  B<procps_misc>(3)  B<proc>(5)."
+msgstr "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+
 #~ msgid "Please send bug reports to E<.MT procps@freelists.org> E<.ME>"
 #~ msgstr ""
 #~ "Bitte schicken Sie Fehlermeldungen (auf Englisch) an E<.MT "
index b3178b991a89d6453b77b1419edb111b42beeb62..50fb29bc8c91fedfedf4330dd7fbd8ac1ba2f41e 100644 (file)
@@ -21,7 +21,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: procps-ng-man 3.3.17rc1\n"
 "Report-Msgid-Bugs-To: Procps list <procps@freelists.org>\n"
-"POT-Creation-Date: 2021-02-15 21:26+1100\n"
+"POT-Creation-Date: 2021-02-15 21:41+1100\n"
 "PO-Revision-Date: 2021-01-22 20:14+0100\n"
 "Last-Translator: Stéphane Aulery <lkppo@free.fr>\n"
 "Language-Team: French <traduc@traduc.org>\n"
@@ -61,12 +61,12 @@ msgstr "procps-ng"
 msgid "User Commands"
 msgstr "Commandes de l'utilisateur"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:6 ../kill.1:9 ../pgrep.1:11 ../pidof.1:19 ../pmap.1:9 ../pwdx.1:7
 #: ../skill.1:10 ../slabtop.1:6 ../sysctl.8:10 ../sysctl.conf.5:10 ../tload.1:5
 #: ../uptime.1:4 ../vmstat.8:4 ../w.1:4 ../watch.1:2 ../ps/ps.1:27
-#: ../top/top.1:70
+#: ../top/top.1:70 ../doc/procps.3:23 ../doc/procps_misc.3:24
+#: ../doc/procps_pids.3:23
 #, no-wrap
 msgid "NAME"
 msgstr "NOM"
@@ -76,12 +76,12 @@ msgstr "NOM"
 msgid "free - Display amount of free and used memory in the system"
 msgstr "free - Afficher la quantité de mémoire libre et utilisée du système"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:8 ../kill.1:11 ../pgrep.1:13 ../pidof.1:21 ../pmap.1:11
 #: ../pwdx.1:9 ../skill.1:12 ../slabtop.1:8 ../sysctl.8:12 ../tload.1:7
 #: ../uptime.1:6 ../vmstat.8:6 ../w.1:6 ../watch.1:4 ../ps/ps.1:29
-#: ../top/top.1:75
+#: ../top/top.1:75 ../doc/procps.3:26 ../doc/procps_misc.3:26
+#: ../doc/procps_pids.3:26
 #, no-wrap
 msgid "SYNOPSIS"
 msgstr "SYNOPSIS"
@@ -91,12 +91,12 @@ msgstr "SYNOPSIS"
 msgid "B<free> [I<options>]"
 msgstr "B<free> [I<options>]"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:11 ../kill.1:14 ../pgrep.1:22 ../pidof.1:34 ../pmap.1:14
 #: ../skill.1:22 ../slabtop.1:11 ../sysctl.8:18 ../sysctl.conf.5:12
 #: ../tload.1:10 ../uptime.1:9 ../vmstat.8:10 ../w.1:9 ../watch.1:7
-#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82
+#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82 ../doc/procps.3:75
+#: ../doc/procps_misc.3:58 ../doc/procps_pids.3:70
 #, no-wrap
 msgid "DESCRIPTION"
 msgstr "DESCRIPTION"
@@ -508,6 +508,7 @@ msgstr "Afficher les informations de version."
 #. type: SH
 #: ../free.1:133 ../slabtop.1:77 ../sysctl.8:154 ../sysctl.conf.5:57
 #: ../tload.1:34 ../uptime.1:39 ../vmstat.8:201 ../w.1:74
+#: ../doc/procps_misc.3:143
 #, no-wrap
 msgid "FILES"
 msgstr "FICHIERS"
@@ -554,7 +555,8 @@ msgstr "E<.UR procps@freelists.org> E<.UE>"
 #: ../free.1:145 ../kill.1:84 ../pgrep.1:277 ../pidof.1:78 ../pmap.1:79
 #: ../pwdx.1:19 ../skill.1:102 ../slabtop.1:81 ../sysctl.8:168
 #: ../sysctl.conf.5:76 ../tload.1:37 ../uptime.1:56 ../vmstat.8:208 ../w.1:81
-#: ../ps/ps.1:1958
+#: ../ps/ps.1:1958 ../doc/procps.3:172 ../doc/procps_misc.3:160
+#: ../doc/procps_pids.3:183
 #, no-wrap
 msgid "SEE ALSO"
 msgstr "VOIR AUSSI"
@@ -17075,6 +17077,779 @@ msgstr ""
 "B<free>(1), B<ps>(1), B<uptime>(1), B<atop>(1), B<slabtop>(1), B<vmstat>(8), "
 "B<w>(1)"
 
+#. type: TH
+#: ../doc/procps.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS"
+msgstr "PROCPS_USERLEN"
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, fuzzy, no-wrap
+#| msgid "May 2018"
+msgid "January 2021"
+msgstr "Mai 2018"
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, no-wrap
+msgid "libproc-2"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:25
+msgid "procps - API to access system level information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:30
+msgid ""
+"Five distinct interfaces are represented in this synopsis and named after "
+"the files they access in the /proc pseudo filesystem: B<diskstats>, "
+"B<meminfo>, B<slabinfo>, B<stat> and B<vmstat>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:34
+#, no-wrap
+msgid "#include E<lt>procps/B<named_interface>.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:38
+#, no-wrap
+msgid ""
+"B<int procps_new   (struct info **>I<info>B<);>\n"
+"B<int procps_ref   (struct info  *>I<info>B<);>\n"
+"B<int procps_unref (struct info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:43
+#, no-wrap
+msgid ""
+"B<struct result *procps_get (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item >I<item>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:49
+#, no-wrap
+msgid ""
+"B<struct stack *procps_select (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:55
+#, no-wrap
+msgid ""
+"B<struct reaped *procps_reap (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   enum reap_type I<what>,   ]   B<stat> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:62
+#, no-wrap
+msgid ""
+"B<struct stack **procps_sort (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"B<    struct stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum item >I<sortitem>B<,>\n"
+"B<    enum sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:69
+msgid ""
+"The above functions and structures are generic but the specific "
+"B<named_interface> would also be part of any identifiers.  For example, "
+"`procps_new' would actually be `procps_B<meminfo>_new' and `info' would "
+"really be `B<diskstats>_info', etc."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:72
+msgid ""
+"The same B<named_interface> is used in each header file name with an "
+"appended `.h' suffix."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:74 ../doc/procps_pids.3:69
+msgid "Link with I<-lprocps>."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:76 ../doc/procps_pids.3:71
+#, no-wrap
+msgid "Overview"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:82
+msgid ""
+"Central to these interfaces is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:88 ../doc/procps_pids.3:83
+msgid ""
+"By specifying an array of `items', these structures can be organized as a "
+"`stack', potentially yielding many results with a single function call.  "
+"Thus, a `stack' can be viewed as a variable length record whose content and "
+"order is determined solely by the user."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:93 ../doc/procps_pids.3:88
+msgid ""
+"As part of each interface there are two unique items.  The `noop' and "
+"`extra' items exist to hold user values.  They are never set by the library, "
+"but the `extra' result will be zeroed with each library interaction."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:99
+msgid ""
+"The B<named_interface> header file will be an essential document during user "
+"program development.  There you will find available items, their return type "
+"(the `result' struct member name) and the source for such values.  "
+"Additional enumerators and structures are also documented there."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:100 ../doc/procps_pids.3:95
+#, no-wrap
+msgid "Usage"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:103
+msgid "The following would be a typical sequence of calls to these interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:108
+#, no-wrap
+msgid ""
+"1. B<procps_new()>\n"
+"2. B<procps_get()>, B<procps_select()> or B<procps_reap()>\n"
+"3. B<procps_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:114
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> "
+"function call.  The B<sort> function parameters I<stacks> and I<numstacked> "
+"would normally be those returned in the `reaped' structure."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:115 ../doc/procps_pids.3:111
+#, no-wrap
+msgid "Caveats"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:118
+msgid ""
+"The B<new>, B<ref>, B<unref>, B<get> and B<select> functions are available "
+"in all five interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:123 ../doc/procps_pids.3:123
+msgid ""
+"For the B<new> and B<unref> functions, the address of an I<info> struct "
+"pointer must be supplied.  With B<new> it must have been initialized to "
+"NULL.  With B<unref> it will be reset to NULL if the reference count reaches "
+"zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:127
+msgid ""
+"In the case of the B<diskstats> interface, a I<name> parameter on the B<get> "
+"and B<select> functions identifies a disk or partition name"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:133
+msgid ""
+"The B<diskstats>, B<slabinfo> and B<stat> interfaces support unpredictable "
+"variable outcomes.  As such, they export a B<reap> function to retrieve "
+"multiple `stacks' with a single invocation.  These same interfaces also "
+"provide a B<sort> function."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:134 ../doc/procps_misc.3:134 ../doc/procps_pids.3:143
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:135 ../doc/procps_pids.3:144
+#, no-wrap
+msgid "Functions Returning an `int'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:138 ../doc/procps_misc.3:138 ../doc/procps_pids.3:147
+msgid ""
+"An error will be indicated by a negative number that is always the inverse "
+"of some well known errno.h value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:142 ../doc/procps_pids.3:151
+msgid ""
+"Success is indicated by a zero return value.  However, the B<ref> and "
+"B<unref> functions return the current I<info> structure reference count."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:143 ../doc/procps_misc.3:139 ../doc/procps_pids.3:152
+#, no-wrap
+msgid "Functions Returning an `address'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:146 ../doc/procps_misc.3:142 ../doc/procps_pids.3:155
+msgid ""
+"An error will be indicated by a NULL return pointer with the reason found in "
+"the formal errno value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:148
+msgid "Success is indicated by a pointer to the named structure."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:149 ../doc/procps_pids.3:160
+#, no-wrap
+msgid "DEBUGGING"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:155 ../doc/procps_pids.3:166
+msgid ""
+"To aid in program development, there is a provision that can help ensure "
+"`result' member references agree with library expectations.  It assumes that "
+"a supplied macro in the header file is used to access the `result' value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:158 ../doc/procps_pids.3:169
+msgid ""
+"This feature can be activated through either of the following methods and "
+"any discrepancies will be wrtten to B<stderr>."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:159 ../doc/procps_pids.3:170
+#, fuzzy, no-wrap
+#| msgid "1"
+msgid "1)"
+msgstr "1"
+
+#. type: Plain text
+#: ../doc/procps.3:162 ../doc/procps_pids.3:173
+msgid ""
+"Add CFLAGS='-DXTRA_PROCPS_DEBUG' to any other ./configure options employed."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:163 ../doc/procps_pids.3:174
+#, fuzzy, no-wrap
+#| msgid "2"
+msgid "2)"
+msgstr "2"
+
+#. type: Plain text
+#: ../doc/procps.3:166
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the named interface includes."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:171 ../doc/procps_pids.3:182
+msgid ""
+"This verification feature incurs substantial overhead.  Therefore, it is "
+"important that it I<not> be activated for a production/release build."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:175
+#, fuzzy
+#| msgid "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+msgid "B<procps_misc>(3)  B<procps_pids>(3)  B<proc>(5)."
+msgstr "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)"
+
+#. type: TH
+#: ../doc/procps_misc.3:20
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_MISC"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:26
+msgid "procps_misc - API for miscellaneous information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:29
+#, no-wrap
+msgid "B<#include E<lt>procps/misc.hE<gt>>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:31
+#, no-wrap
+msgid "Platform Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:37
+#, no-wrap
+msgid ""
+"B<long         procps_cpu_count (void);>\n"
+"B<long         procps_hertz_get (void);>\n"
+"B<unsigned int procps_pid_length (void);>\n"
+"B<int          procps_linux_version (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:40
+#, no-wrap
+msgid "Runtime Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:46
+#, no-wrap
+msgid ""
+"B<int    procps_loadavg (double * >I<av1>B<, double * >I<av5>B<, double * >I<av15>B<);>\n"
+"B<int    procps_uptime (double * >I<uptime_secs>B<, double * >I<idle_secs>B<);>\n"
+"B<char * procps_uptime_sprint (void);>\n"
+"B<char * procps_uptime_sprint_short (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:49
+#, no-wrap
+msgid "Namespace Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:54
+#, no-wrap
+msgid ""
+"B<int          procps_ns_get_id (const char * >I<name>B<);>\n"
+"B<const char * procps_ns_get_name (int >I<id>B<);>\n"
+"B<int          procps_ns_read_pid (int >I<pid>B<, struct procps_ns * >I<nsp>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:57
+#, no-wrap
+msgid "Link with I<-lprocps>.\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:63
+msgid ""
+"B<procps_cpu_count>()  returns the number of CPUs that are currently online "
+"as B<sysconf(>I<_SC_NPROCESSORS_ONLY>B<)> or an assumed I<1>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:69
+msgid ""
+"B<procps_hertz_get>()  returns the number of clock ticks per second as "
+"B<sysconf(>I<_SC_CLK_TCK>B<)> or an assumed I<100>.  Dividing tics by this "
+"value yields seconds."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:74
+msgid ""
+"B<procps_pid_length>()  returns the maximum string length for a PID on the "
+"system. For example, if the largest possible PID value on was 123, then the "
+"length would be 3. If the file I</proc/sys/kernel/pid_max> is unreadable, "
+"the value is assumed to be I<5>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:83
+msgid ""
+"B<procps_linux_version>()  returns the current Linux version as an encoded "
+"integer. On non-Linux systems that have an emulated proc filesystem this "
+"function returns the version of the Linux emulation instead.  The version "
+"consists of three positive integers representing the major, minor and patch "
+"levels.  The following macros are provided for encoding a given Linux "
+"version or separating out the components of the current version."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:86
+msgid "LINUX_VERSION(\\ major\\ ,\\ minor\\ ,\\ patch\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:88
+msgid "LINUX_VERSION_MAJOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:90
+msgid "LINUX_VERSION_MINOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:92
+msgid "LINUX_VERSION_PATCH(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:97
+msgid ""
+"B<procps_loadavg>()  fetches the system load average and puts the 1, 5 and "
+"15 minute averages into location(s) specified by any pointer which is not "
+"I<NULL>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:102
+msgid ""
+"B<procps_uptime>()  returns uptime and/or idle seconds into location(s) "
+"specified by any pointer which is not I<NULL>.  The B<sprint> varieties "
+"return a human-readable string in one of two forms."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:105
+msgid "HH:MM:SS up HH:MM, # users, load average: 1, 5, 15 MM averages"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:107
+msgid "up HH, MM"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:111
+msgid ""
+"B<procps_ns_get_id>()  returns the integer id (enum namespace_type) of the "
+"namespace for the given namespace I<name>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:114
+msgid ""
+"B<procps_ns_get_name>()  returns the name of the namespace for the given "
+"I<id> (enum namespace_type)."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:119
+msgid ""
+"B<procps_ns_read_pid>()  returns the inodes for the namespaces of the given "
+"process in the procps_ns structure pointed to by I<nsp>.  Those inodes will "
+"appear in the order proscribed by enum namespace_type."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:130
+#, no-wrap
+msgid ""
+"enum namespace_type {\n"
+"    PROCPS_NS_IPC,\n"
+"    PROCPS_NS_MNT,\n"
+"    PROCPS_NS_NET,\n"
+"    PROCPS_NS_PID,\n"
+"    PROCPS_NS_USER,\n"
+"    PROCPS_NS_UTS\n"
+"};\n"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps_misc.3:135
+#, no-wrap
+msgid "Functions Returning an `int' or `long'"
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:144
+#, fuzzy, no-wrap
+#| msgid "I</proc/slabinfo>"
+msgid "I</proc/loadavg>"
+msgstr "I</proc/slabinfo>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:147
+msgid "The raw values for load average."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:147
+#, no-wrap
+msgid "I</proc/sys/kernel/osrelease>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:150
+msgid "Contains the release version of the Linux kernel or proc filesystem."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:150
+#, fuzzy, no-wrap
+#| msgid "I</proc/sys>"
+msgid "I</proc/sys/kernel/pid_max>"
+msgstr "I</proc/sys>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:153
+msgid ""
+"Contains the value at which PIDs wrap around, one greater than the maximum "
+"PID value."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:153
+#, fuzzy, no-wrap
+#| msgid "I</proc>"
+msgid "I</proc/uptime>"
+msgstr "I</proc>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:156
+msgid "The raw values for uptime and idle time."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:156
+#, no-wrap
+msgid "I</proc/E<lt>PIDE<gt>/ns>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:159
+msgid "contains the set of namespaces for a particular B<PID>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:163
+#, fuzzy
+#| msgid "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+msgid "B<procps>(3).  B<procps_pids>(3).  B<proc>(5)."
+msgstr "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)"
+
+#. type: TH
+#: ../doc/procps_pids.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_PIDS"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_pids.3:25
+msgid "procps_pids - API to access process information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:29
+#, no-wrap
+msgid "#include E<lt>procps/pids.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:33
+#, no-wrap
+msgid ""
+"B<int procps_pids_new   (struct pids_info **>I<info>B<, enum pids_item *>I<items>B<, int >I<numitems>B<);>\n"
+"B<int procps_pids_ref   (struct pids_info  *>I<info>B<);>\n"
+"B<int procps_pids_unref (struct pids_info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:38
+#, no-wrap
+msgid ""
+"B<struct pids_stack *procps_pids_get (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:42
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_reap (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:48
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_select (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    unsigned *>I<these>B<,>\n"
+"B<    int >I<numthese>B<,>\n"
+"B<    enum pids_select_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:55
+#, no-wrap
+msgid ""
+"B<struct pids_stack **procps_pids_sort (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    struct pids_stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum pids_item >I<sortitem>B<,>\n"
+"B<    enum pids_sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:61
+#, no-wrap
+msgid ""
+"B<int procps_pids_reset (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_item *>I<newitems>B<,>\n"
+"B<    int >I<newnumitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:65
+#, no-wrap
+msgid ""
+"B<struct pids_stack *fatal_proc_unmounted (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    int >I<return_self>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:77
+msgid ""
+"Central to this interface is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:94
+msgid ""
+"The pids.h file will be an essential document during user program "
+"development.  There you will find available items, their return type (the "
+"`result' struct member name) and the source for such values.  Additional "
+"enumerators and structures are also documented there."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:98
+msgid "The following would be a typical sequence of calls to this interface."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:104
+#, no-wrap
+msgid ""
+"1. B<fatal_proc_unmounted()>\n"
+"2. B<procps_pids_new()>\n"
+"3. B<procps_pids_get()>, B<procps_pids_reap()> or B<procps_pids_select()>\n"
+"4. B<procps_pids_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:110
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> or "
+"B<select> function call.  The B<sort> function parameters I<stacks> and "
+"I<numstacked> would normally be those returned in the `pids_fetch' structure."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:118
+msgid ""
+"The E<lt>pidsE<gt> API differs from others in that those items of interest "
+"must be provided at B<new> or B<reset> time, the latter being unique to this "
+"API.  If either the I<items> or I<numitems> parameter is zero at B<new> "
+"time, then B<reset> becomes mandatory before issuing any other call."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:127
+msgid ""
+"The B<get> function is an iterator, for successive PIDs/TIDs, returning "
+"those items previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:134
+msgid ""
+"The B<select> function requires an array of PIDs or UIDs as I<these> along "
+"with I<numthese> to identify which processes are to be fetched.  This "
+"function then operates as a subset of B<reap> while returning those items "
+"previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:142
+msgid ""
+"Lastly, a B<fatal_proc_unmounted> function may be called before any other "
+"function to ensure that the /proc/ directory is mounted.  As such, the "
+"I<info> parameter would be NULL and the I<return_self> parameter zero.  If, "
+"however, some items are desired for the issuing program (a I<return_self> "
+"other than zero) then the B<new> call must precede it to obtain the required "
+"I<info> pointer."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:159
+msgid ""
+"Success is indicated by a pointer to the named structure.  However, if one "
+"survives the B<fatal_proc_unmounted> call, NULL is always returned when "
+"I<return_self> is zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:177
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the #include E<lt>procps/pids.hE<gt>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:186
+#, fuzzy
+#| msgid "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+msgid "B<procps>(3)  B<procps_misc>(3)  B<proc>(5)."
+msgstr "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)"
+
 #~ msgid "Please send bug reports to E<.MT procps@freelists.org> E<.ME>"
 #~ msgstr "Signalez les bogues à E<.MT procps@freelists.org> E<.ME>"
 
@@ -18158,9 +18933,6 @@ msgstr ""
 #~ "     \"       # d'« inspection » présentées dans la section B<6b>\n"
 #~ "     \"       # ci-dessous\n"
 
-#~ msgid "May 2018"
-#~ msgstr "Mai 2018"
-
 #~ msgid ""
 #~ "      I< key      equivalent-key-combinations >\n"
 #~ "       Up       alt +B< \\e>      or  alt +B< k >\n"
index 6b3280dd5ad6598b6cc01160f796831bada7da3c..47d99950f1ff813a3145547e98fc813e676906d1 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: procps-ng-man 3.3.16-pre2\n"
 "Report-Msgid-Bugs-To: Procps list <procps@freelists.org>\n"
-"POT-Creation-Date: 2021-02-15 21:26+1100\n"
+"POT-Creation-Date: 2021-02-15 21:41+1100\n"
 "PO-Revision-Date: 2019-10-30 17:52+0100\n"
 "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
 "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
@@ -45,12 +45,12 @@ msgstr "procps-ng"
 msgid "User Commands"
 msgstr "Polecenia użytkownika"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:6 ../kill.1:9 ../pgrep.1:11 ../pidof.1:19 ../pmap.1:9 ../pwdx.1:7
 #: ../skill.1:10 ../slabtop.1:6 ../sysctl.8:10 ../sysctl.conf.5:10 ../tload.1:5
 #: ../uptime.1:4 ../vmstat.8:4 ../w.1:4 ../watch.1:2 ../ps/ps.1:27
-#: ../top/top.1:70
+#: ../top/top.1:70 ../doc/procps.3:23 ../doc/procps_misc.3:24
+#: ../doc/procps_pids.3:23
 #, no-wrap
 msgid "NAME"
 msgstr "NAZWA"
@@ -60,12 +60,12 @@ msgstr "NAZWA"
 msgid "free - Display amount of free and used memory in the system"
 msgstr "free - wyświetlanie ilości wolnej i użytej pamięci w systemie"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:8 ../kill.1:11 ../pgrep.1:13 ../pidof.1:21 ../pmap.1:11
 #: ../pwdx.1:9 ../skill.1:12 ../slabtop.1:8 ../sysctl.8:12 ../tload.1:7
 #: ../uptime.1:6 ../vmstat.8:6 ../w.1:6 ../watch.1:4 ../ps/ps.1:29
-#: ../top/top.1:75
+#: ../top/top.1:75 ../doc/procps.3:26 ../doc/procps_misc.3:26
+#: ../doc/procps_pids.3:26
 #, no-wrap
 msgid "SYNOPSIS"
 msgstr "SKŁADNIA"
@@ -75,12 +75,12 @@ msgstr "SKŁADNIA"
 msgid "B<free> [I<options>]"
 msgstr "B<free> [I<opcje>]"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:11 ../kill.1:14 ../pgrep.1:22 ../pidof.1:34 ../pmap.1:14
 #: ../skill.1:22 ../slabtop.1:11 ../sysctl.8:18 ../sysctl.conf.5:12
 #: ../tload.1:10 ../uptime.1:9 ../vmstat.8:10 ../w.1:9 ../watch.1:7
-#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82
+#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82 ../doc/procps.3:75
+#: ../doc/procps_misc.3:58 ../doc/procps_pids.3:70
 #, no-wrap
 msgid "DESCRIPTION"
 msgstr "OPIS"
@@ -483,6 +483,7 @@ msgstr "Wyświetlenie informacji o wersji."
 #. type: SH
 #: ../free.1:133 ../slabtop.1:77 ../sysctl.8:154 ../sysctl.conf.5:57
 #: ../tload.1:34 ../uptime.1:39 ../vmstat.8:201 ../w.1:74
+#: ../doc/procps_misc.3:143
 #, no-wrap
 msgid "FILES"
 msgstr "PLIKI"
@@ -529,7 +530,8 @@ msgstr "E<.UR procps@freelists.org> E<.UE>"
 #: ../free.1:145 ../kill.1:84 ../pgrep.1:277 ../pidof.1:78 ../pmap.1:79
 #: ../pwdx.1:19 ../skill.1:102 ../slabtop.1:81 ../sysctl.8:168
 #: ../sysctl.conf.5:76 ../tload.1:37 ../uptime.1:56 ../vmstat.8:208 ../w.1:81
-#: ../ps/ps.1:1958
+#: ../ps/ps.1:1958 ../doc/procps.3:172 ../doc/procps_misc.3:160
+#: ../doc/procps_pids.3:183
 #, no-wrap
 msgid "SEE ALSO"
 msgstr "ZOBACZ TAKŻE"
@@ -14967,6 +14969,779 @@ msgid ""
 "B<w>(1)"
 msgstr "B<free>(1), B<ps>(1), B<top>(1), B<uptime>(1), B<utmp>(5), B<who>(1)"
 
+#. type: TH
+#: ../doc/procps.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS"
+msgstr "PROCPS_USERLEN"
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, fuzzy, no-wrap
+#| msgid "May 2012"
+msgid "January 2021"
+msgstr "maj 2012"
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, no-wrap
+msgid "libproc-2"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:25
+msgid "procps - API to access system level information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:30
+msgid ""
+"Five distinct interfaces are represented in this synopsis and named after "
+"the files they access in the /proc pseudo filesystem: B<diskstats>, "
+"B<meminfo>, B<slabinfo>, B<stat> and B<vmstat>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:34
+#, no-wrap
+msgid "#include E<lt>procps/B<named_interface>.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:38
+#, no-wrap
+msgid ""
+"B<int procps_new   (struct info **>I<info>B<);>\n"
+"B<int procps_ref   (struct info  *>I<info>B<);>\n"
+"B<int procps_unref (struct info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:43
+#, no-wrap
+msgid ""
+"B<struct result *procps_get (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item >I<item>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:49
+#, no-wrap
+msgid ""
+"B<struct stack *procps_select (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:55
+#, no-wrap
+msgid ""
+"B<struct reaped *procps_reap (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   enum reap_type I<what>,   ]   B<stat> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:62
+#, no-wrap
+msgid ""
+"B<struct stack **procps_sort (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"B<    struct stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum item >I<sortitem>B<,>\n"
+"B<    enum sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:69
+msgid ""
+"The above functions and structures are generic but the specific "
+"B<named_interface> would also be part of any identifiers.  For example, "
+"`procps_new' would actually be `procps_B<meminfo>_new' and `info' would "
+"really be `B<diskstats>_info', etc."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:72
+msgid ""
+"The same B<named_interface> is used in each header file name with an "
+"appended `.h' suffix."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:74 ../doc/procps_pids.3:69
+msgid "Link with I<-lprocps>."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:76 ../doc/procps_pids.3:71
+#, no-wrap
+msgid "Overview"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:82
+msgid ""
+"Central to these interfaces is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:88 ../doc/procps_pids.3:83
+msgid ""
+"By specifying an array of `items', these structures can be organized as a "
+"`stack', potentially yielding many results with a single function call.  "
+"Thus, a `stack' can be viewed as a variable length record whose content and "
+"order is determined solely by the user."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:93 ../doc/procps_pids.3:88
+msgid ""
+"As part of each interface there are two unique items.  The `noop' and "
+"`extra' items exist to hold user values.  They are never set by the library, "
+"but the `extra' result will be zeroed with each library interaction."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:99
+msgid ""
+"The B<named_interface> header file will be an essential document during user "
+"program development.  There you will find available items, their return type "
+"(the `result' struct member name) and the source for such values.  "
+"Additional enumerators and structures are also documented there."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:100 ../doc/procps_pids.3:95
+#, no-wrap
+msgid "Usage"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:103
+msgid "The following would be a typical sequence of calls to these interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:108
+#, no-wrap
+msgid ""
+"1. B<procps_new()>\n"
+"2. B<procps_get()>, B<procps_select()> or B<procps_reap()>\n"
+"3. B<procps_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:114
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> "
+"function call.  The B<sort> function parameters I<stacks> and I<numstacked> "
+"would normally be those returned in the `reaped' structure."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:115 ../doc/procps_pids.3:111
+#, no-wrap
+msgid "Caveats"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:118
+msgid ""
+"The B<new>, B<ref>, B<unref>, B<get> and B<select> functions are available "
+"in all five interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:123 ../doc/procps_pids.3:123
+msgid ""
+"For the B<new> and B<unref> functions, the address of an I<info> struct "
+"pointer must be supplied.  With B<new> it must have been initialized to "
+"NULL.  With B<unref> it will be reset to NULL if the reference count reaches "
+"zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:127
+msgid ""
+"In the case of the B<diskstats> interface, a I<name> parameter on the B<get> "
+"and B<select> functions identifies a disk or partition name"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:133
+msgid ""
+"The B<diskstats>, B<slabinfo> and B<stat> interfaces support unpredictable "
+"variable outcomes.  As such, they export a B<reap> function to retrieve "
+"multiple `stacks' with a single invocation.  These same interfaces also "
+"provide a B<sort> function."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:134 ../doc/procps_misc.3:134 ../doc/procps_pids.3:143
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:135 ../doc/procps_pids.3:144
+#, no-wrap
+msgid "Functions Returning an `int'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:138 ../doc/procps_misc.3:138 ../doc/procps_pids.3:147
+msgid ""
+"An error will be indicated by a negative number that is always the inverse "
+"of some well known errno.h value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:142 ../doc/procps_pids.3:151
+msgid ""
+"Success is indicated by a zero return value.  However, the B<ref> and "
+"B<unref> functions return the current I<info> structure reference count."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:143 ../doc/procps_misc.3:139 ../doc/procps_pids.3:152
+#, no-wrap
+msgid "Functions Returning an `address'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:146 ../doc/procps_misc.3:142 ../doc/procps_pids.3:155
+msgid ""
+"An error will be indicated by a NULL return pointer with the reason found in "
+"the formal errno value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:148
+msgid "Success is indicated by a pointer to the named structure."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:149 ../doc/procps_pids.3:160
+#, no-wrap
+msgid "DEBUGGING"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:155 ../doc/procps_pids.3:166
+msgid ""
+"To aid in program development, there is a provision that can help ensure "
+"`result' member references agree with library expectations.  It assumes that "
+"a supplied macro in the header file is used to access the `result' value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:158 ../doc/procps_pids.3:169
+msgid ""
+"This feature can be activated through either of the following methods and "
+"any discrepancies will be wrtten to B<stderr>."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:159 ../doc/procps_pids.3:170
+#, fuzzy, no-wrap
+#| msgid "1"
+msgid "1)"
+msgstr "1"
+
+#. type: Plain text
+#: ../doc/procps.3:162 ../doc/procps_pids.3:173
+msgid ""
+"Add CFLAGS='-DXTRA_PROCPS_DEBUG' to any other ./configure options employed."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:163 ../doc/procps_pids.3:174
+#, fuzzy, no-wrap
+#| msgid "2"
+msgid "2)"
+msgstr "2"
+
+#. type: Plain text
+#: ../doc/procps.3:166
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the named interface includes."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:171 ../doc/procps_pids.3:182
+msgid ""
+"This verification feature incurs substantial overhead.  Therefore, it is "
+"important that it I<not> be activated for a production/release build."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:175
+#, fuzzy
+#| msgid "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+msgid "B<procps_misc>(3)  B<procps_pids>(3)  B<proc>(5)."
+msgstr "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+
+#. type: TH
+#: ../doc/procps_misc.3:20
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_MISC"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:26
+msgid "procps_misc - API for miscellaneous information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:29
+#, no-wrap
+msgid "B<#include E<lt>procps/misc.hE<gt>>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:31
+#, no-wrap
+msgid "Platform Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:37
+#, no-wrap
+msgid ""
+"B<long         procps_cpu_count (void);>\n"
+"B<long         procps_hertz_get (void);>\n"
+"B<unsigned int procps_pid_length (void);>\n"
+"B<int          procps_linux_version (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:40
+#, no-wrap
+msgid "Runtime Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:46
+#, no-wrap
+msgid ""
+"B<int    procps_loadavg (double * >I<av1>B<, double * >I<av5>B<, double * >I<av15>B<);>\n"
+"B<int    procps_uptime (double * >I<uptime_secs>B<, double * >I<idle_secs>B<);>\n"
+"B<char * procps_uptime_sprint (void);>\n"
+"B<char * procps_uptime_sprint_short (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:49
+#, no-wrap
+msgid "Namespace Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:54
+#, no-wrap
+msgid ""
+"B<int          procps_ns_get_id (const char * >I<name>B<);>\n"
+"B<const char * procps_ns_get_name (int >I<id>B<);>\n"
+"B<int          procps_ns_read_pid (int >I<pid>B<, struct procps_ns * >I<nsp>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:57
+#, no-wrap
+msgid "Link with I<-lprocps>.\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:63
+msgid ""
+"B<procps_cpu_count>()  returns the number of CPUs that are currently online "
+"as B<sysconf(>I<_SC_NPROCESSORS_ONLY>B<)> or an assumed I<1>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:69
+msgid ""
+"B<procps_hertz_get>()  returns the number of clock ticks per second as "
+"B<sysconf(>I<_SC_CLK_TCK>B<)> or an assumed I<100>.  Dividing tics by this "
+"value yields seconds."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:74
+msgid ""
+"B<procps_pid_length>()  returns the maximum string length for a PID on the "
+"system. For example, if the largest possible PID value on was 123, then the "
+"length would be 3. If the file I</proc/sys/kernel/pid_max> is unreadable, "
+"the value is assumed to be I<5>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:83
+msgid ""
+"B<procps_linux_version>()  returns the current Linux version as an encoded "
+"integer. On non-Linux systems that have an emulated proc filesystem this "
+"function returns the version of the Linux emulation instead.  The version "
+"consists of three positive integers representing the major, minor and patch "
+"levels.  The following macros are provided for encoding a given Linux "
+"version or separating out the components of the current version."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:86
+msgid "LINUX_VERSION(\\ major\\ ,\\ minor\\ ,\\ patch\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:88
+msgid "LINUX_VERSION_MAJOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:90
+msgid "LINUX_VERSION_MINOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:92
+msgid "LINUX_VERSION_PATCH(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:97
+msgid ""
+"B<procps_loadavg>()  fetches the system load average and puts the 1, 5 and "
+"15 minute averages into location(s) specified by any pointer which is not "
+"I<NULL>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:102
+msgid ""
+"B<procps_uptime>()  returns uptime and/or idle seconds into location(s) "
+"specified by any pointer which is not I<NULL>.  The B<sprint> varieties "
+"return a human-readable string in one of two forms."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:105
+msgid "HH:MM:SS up HH:MM, # users, load average: 1, 5, 15 MM averages"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:107
+msgid "up HH, MM"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:111
+msgid ""
+"B<procps_ns_get_id>()  returns the integer id (enum namespace_type) of the "
+"namespace for the given namespace I<name>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:114
+msgid ""
+"B<procps_ns_get_name>()  returns the name of the namespace for the given "
+"I<id> (enum namespace_type)."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:119
+msgid ""
+"B<procps_ns_read_pid>()  returns the inodes for the namespaces of the given "
+"process in the procps_ns structure pointed to by I<nsp>.  Those inodes will "
+"appear in the order proscribed by enum namespace_type."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:130
+#, no-wrap
+msgid ""
+"enum namespace_type {\n"
+"    PROCPS_NS_IPC,\n"
+"    PROCPS_NS_MNT,\n"
+"    PROCPS_NS_NET,\n"
+"    PROCPS_NS_PID,\n"
+"    PROCPS_NS_USER,\n"
+"    PROCPS_NS_UTS\n"
+"};\n"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps_misc.3:135
+#, no-wrap
+msgid "Functions Returning an `int' or `long'"
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:144
+#, fuzzy, no-wrap
+#| msgid "I</proc/slabinfo>"
+msgid "I</proc/loadavg>"
+msgstr "I</proc/slabinfo>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:147
+msgid "The raw values for load average."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:147
+#, no-wrap
+msgid "I</proc/sys/kernel/osrelease>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:150
+msgid "Contains the release version of the Linux kernel or proc filesystem."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:150
+#, fuzzy, no-wrap
+#| msgid "I</proc/sys>"
+msgid "I</proc/sys/kernel/pid_max>"
+msgstr "I</proc/sys>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:153
+msgid ""
+"Contains the value at which PIDs wrap around, one greater than the maximum "
+"PID value."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:153
+#, fuzzy, no-wrap
+#| msgid "I</proc>"
+msgid "I</proc/uptime>"
+msgstr "I</proc>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:156
+msgid "The raw values for uptime and idle time."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:156
+#, no-wrap
+msgid "I</proc/E<lt>PIDE<gt>/ns>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:159
+msgid "contains the set of namespaces for a particular B<PID>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:163
+#, fuzzy
+#| msgid "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+msgid "B<procps>(3).  B<procps_pids>(3).  B<proc>(5)."
+msgstr "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+
+#. type: TH
+#: ../doc/procps_pids.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_PIDS"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_pids.3:25
+msgid "procps_pids - API to access process information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:29
+#, no-wrap
+msgid "#include E<lt>procps/pids.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:33
+#, no-wrap
+msgid ""
+"B<int procps_pids_new   (struct pids_info **>I<info>B<, enum pids_item *>I<items>B<, int >I<numitems>B<);>\n"
+"B<int procps_pids_ref   (struct pids_info  *>I<info>B<);>\n"
+"B<int procps_pids_unref (struct pids_info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:38
+#, no-wrap
+msgid ""
+"B<struct pids_stack *procps_pids_get (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:42
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_reap (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:48
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_select (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    unsigned *>I<these>B<,>\n"
+"B<    int >I<numthese>B<,>\n"
+"B<    enum pids_select_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:55
+#, no-wrap
+msgid ""
+"B<struct pids_stack **procps_pids_sort (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    struct pids_stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum pids_item >I<sortitem>B<,>\n"
+"B<    enum pids_sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:61
+#, no-wrap
+msgid ""
+"B<int procps_pids_reset (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_item *>I<newitems>B<,>\n"
+"B<    int >I<newnumitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:65
+#, no-wrap
+msgid ""
+"B<struct pids_stack *fatal_proc_unmounted (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    int >I<return_self>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:77
+msgid ""
+"Central to this interface is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:94
+msgid ""
+"The pids.h file will be an essential document during user program "
+"development.  There you will find available items, their return type (the "
+"`result' struct member name) and the source for such values.  Additional "
+"enumerators and structures are also documented there."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:98
+msgid "The following would be a typical sequence of calls to this interface."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:104
+#, no-wrap
+msgid ""
+"1. B<fatal_proc_unmounted()>\n"
+"2. B<procps_pids_new()>\n"
+"3. B<procps_pids_get()>, B<procps_pids_reap()> or B<procps_pids_select()>\n"
+"4. B<procps_pids_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:110
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> or "
+"B<select> function call.  The B<sort> function parameters I<stacks> and "
+"I<numstacked> would normally be those returned in the `pids_fetch' structure."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:118
+msgid ""
+"The E<lt>pidsE<gt> API differs from others in that those items of interest "
+"must be provided at B<new> or B<reset> time, the latter being unique to this "
+"API.  If either the I<items> or I<numitems> parameter is zero at B<new> "
+"time, then B<reset> becomes mandatory before issuing any other call."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:127
+msgid ""
+"The B<get> function is an iterator, for successive PIDs/TIDs, returning "
+"those items previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:134
+msgid ""
+"The B<select> function requires an array of PIDs or UIDs as I<these> along "
+"with I<numthese> to identify which processes are to be fetched.  This "
+"function then operates as a subset of B<reap> while returning those items "
+"previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:142
+msgid ""
+"Lastly, a B<fatal_proc_unmounted> function may be called before any other "
+"function to ensure that the /proc/ directory is mounted.  As such, the "
+"I<info> parameter would be NULL and the I<return_self> parameter zero.  If, "
+"however, some items are desired for the issuing program (a I<return_self> "
+"other than zero) then the B<new> call must precede it to obtain the required "
+"I<info> pointer."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:159
+msgid ""
+"Success is indicated by a pointer to the named structure.  However, if one "
+"survives the B<fatal_proc_unmounted> call, NULL is always returned when "
+"I<return_self> is zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:177
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the #include E<lt>procps/pids.hE<gt>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:186
+#, fuzzy
+#| msgid "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+msgid "B<procps>(3)  B<procps_misc>(3)  B<proc>(5)."
+msgstr "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+
 #~ msgid "Please send bug reports to E<.MT procps@freelists.org> E<.ME>"
 #~ msgstr ""
 #~ "Zgłoszenia błędów prosimy wysyłać na adres E<.MT procps@freelists.org> E<."
@@ -14988,10 +15763,6 @@ msgstr "B<free>(1), B<ps>(1), B<top>(1), B<uptime>(1), B<utmp>(5), B<who>(1)"
 #~ msgid "B<--nslist >I<ns\\/>,\\,I<...\\/>"
 #~ msgstr "B<--nslist >I<ns\\/>,\\,I<...\\/>"
 
-#, no-wrap
-#~ msgid "May 2012"
-#~ msgstr "maj 2012"
-
 #, no-wrap
 #~ msgid "2018-03-03"
 #~ msgstr "2018-03-03"
index 9297c1a5970f0d9c4adc2d336e35ef073f193369..15b36ea230beb6c54263378a9bd4ae6d878bc5fe 100644 (file)
 
 [type: man] ../top/top.1 $lang:$lang/top.1 \
             add_$lang:?add_$lang/$lang.add opt:"-k 80"
-#../watch.1
+
+[type: man] ../doc/procps.3 $lang:$lang/procps.3 \
+            add_$lang:?add_$lang/$lang.add opt:"-k 80"
+
+[type: man] ../doc/procps_misc.3 $lang:$lang/procps_misc.3 \
+            add_$lang:?add_$lang/$lang.add opt:"-k 80"
+
+[type: man] ../doc/procps_pids.3 $lang:$lang/procps_pids.3 \
+            add_$lang:?add_$lang/$lang.add opt:"-k 80"
index 7378f722181be1ffc38d75cf57aeab8c391470f3..6b5c58cf107c810ac3f58cff47c6d09f38d136ef 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: procps-ng-man 3.3.17rc1\n"
 "Report-Msgid-Bugs-To: Procps list <procps@freelists.org>\n"
-"POT-Creation-Date: 2021-02-15 21:26+1100\n"
+"POT-Creation-Date: 2021-02-15 21:41+1100\n"
 "PO-Revision-Date: 2021-02-03 07:20-0300\n"
 "Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
 "Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
@@ -48,12 +48,12 @@ msgstr "procps-ng"
 msgid "User Commands"
 msgstr "Comandos de usuário"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:6 ../kill.1:9 ../pgrep.1:11 ../pidof.1:19 ../pmap.1:9 ../pwdx.1:7
 #: ../skill.1:10 ../slabtop.1:6 ../sysctl.8:10 ../sysctl.conf.5:10 ../tload.1:5
 #: ../uptime.1:4 ../vmstat.8:4 ../w.1:4 ../watch.1:2 ../ps/ps.1:27
-#: ../top/top.1:70
+#: ../top/top.1:70 ../doc/procps.3:23 ../doc/procps_misc.3:24
+#: ../doc/procps_pids.3:23
 #, no-wrap
 msgid "NAME"
 msgstr "NOME"
@@ -63,12 +63,12 @@ msgstr "NOME"
 msgid "free - Display amount of free and used memory in the system"
 msgstr "free - Exibe quantidade de memória livre e usada no sistema"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:8 ../kill.1:11 ../pgrep.1:13 ../pidof.1:21 ../pmap.1:11
 #: ../pwdx.1:9 ../skill.1:12 ../slabtop.1:8 ../sysctl.8:12 ../tload.1:7
 #: ../uptime.1:6 ../vmstat.8:6 ../w.1:6 ../watch.1:4 ../ps/ps.1:29
-#: ../top/top.1:75
+#: ../top/top.1:75 ../doc/procps.3:26 ../doc/procps_misc.3:26
+#: ../doc/procps_pids.3:26
 #, no-wrap
 msgid "SYNOPSIS"
 msgstr "SINOPSE"
@@ -78,12 +78,12 @@ msgstr "SINOPSE"
 msgid "B<free> [I<options>]"
 msgstr "B<free> [I<opções>]"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:11 ../kill.1:14 ../pgrep.1:22 ../pidof.1:34 ../pmap.1:14
 #: ../skill.1:22 ../slabtop.1:11 ../sysctl.8:18 ../sysctl.conf.5:12
 #: ../tload.1:10 ../uptime.1:9 ../vmstat.8:10 ../w.1:9 ../watch.1:7
-#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82
+#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82 ../doc/procps.3:75
+#: ../doc/procps_misc.3:58 ../doc/procps_pids.3:70
 #, no-wrap
 msgid "DESCRIPTION"
 msgstr "DESCRIÇÃO"
@@ -489,6 +489,7 @@ msgstr "Exibe informação da versão."
 #. type: SH
 #: ../free.1:133 ../slabtop.1:77 ../sysctl.8:154 ../sysctl.conf.5:57
 #: ../tload.1:34 ../uptime.1:39 ../vmstat.8:201 ../w.1:74
+#: ../doc/procps_misc.3:143
 #, no-wrap
 msgid "FILES"
 msgstr "ARQUIVOS"
@@ -535,7 +536,8 @@ msgstr "E<.UR procps@freelists.org> E<.UE>"
 #: ../free.1:145 ../kill.1:84 ../pgrep.1:277 ../pidof.1:78 ../pmap.1:79
 #: ../pwdx.1:19 ../skill.1:102 ../slabtop.1:81 ../sysctl.8:168
 #: ../sysctl.conf.5:76 ../tload.1:37 ../uptime.1:56 ../vmstat.8:208 ../w.1:81
-#: ../ps/ps.1:1958
+#: ../ps/ps.1:1958 ../doc/procps.3:172 ../doc/procps_misc.3:160
+#: ../doc/procps_pids.3:183
 #, no-wrap
 msgid "SEE ALSO"
 msgstr "VEJA TAMBÉM"
@@ -14981,6 +14983,776 @@ msgstr ""
 "B<free>(1), B<ps>(1), B<uptime>(1), B<atop>(1), B<slabtop>(1), B<vmstat>(8), "
 "B<w>(1)"
 
+#. type: TH
+#: ../doc/procps.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS"
+msgstr "PROCPS_USERLEN"
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, fuzzy, no-wrap
+#| msgid "January 2012"
+msgid "January 2021"
+msgstr "Janeiro de 2012"
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, no-wrap
+msgid "libproc-2"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:25
+msgid "procps - API to access system level information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:30
+msgid ""
+"Five distinct interfaces are represented in this synopsis and named after "
+"the files they access in the /proc pseudo filesystem: B<diskstats>, "
+"B<meminfo>, B<slabinfo>, B<stat> and B<vmstat>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:34
+#, no-wrap
+msgid "#include E<lt>procps/B<named_interface>.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:38
+#, no-wrap
+msgid ""
+"B<int procps_new   (struct info **>I<info>B<);>\n"
+"B<int procps_ref   (struct info  *>I<info>B<);>\n"
+"B<int procps_unref (struct info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:43
+#, no-wrap
+msgid ""
+"B<struct result *procps_get (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item >I<item>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:49
+#, no-wrap
+msgid ""
+"B<struct stack *procps_select (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:55
+#, no-wrap
+msgid ""
+"B<struct reaped *procps_reap (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   enum reap_type I<what>,   ]   B<stat> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:62
+#, no-wrap
+msgid ""
+"B<struct stack **procps_sort (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"B<    struct stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum item >I<sortitem>B<,>\n"
+"B<    enum sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:69
+msgid ""
+"The above functions and structures are generic but the specific "
+"B<named_interface> would also be part of any identifiers.  For example, "
+"`procps_new' would actually be `procps_B<meminfo>_new' and `info' would "
+"really be `B<diskstats>_info', etc."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:72
+msgid ""
+"The same B<named_interface> is used in each header file name with an "
+"appended `.h' suffix."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:74 ../doc/procps_pids.3:69
+msgid "Link with I<-lprocps>."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:76 ../doc/procps_pids.3:71
+#, no-wrap
+msgid "Overview"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:82
+msgid ""
+"Central to these interfaces is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:88 ../doc/procps_pids.3:83
+msgid ""
+"By specifying an array of `items', these structures can be organized as a "
+"`stack', potentially yielding many results with a single function call.  "
+"Thus, a `stack' can be viewed as a variable length record whose content and "
+"order is determined solely by the user."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:93 ../doc/procps_pids.3:88
+msgid ""
+"As part of each interface there are two unique items.  The `noop' and "
+"`extra' items exist to hold user values.  They are never set by the library, "
+"but the `extra' result will be zeroed with each library interaction."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:99
+msgid ""
+"The B<named_interface> header file will be an essential document during user "
+"program development.  There you will find available items, their return type "
+"(the `result' struct member name) and the source for such values.  "
+"Additional enumerators and structures are also documented there."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:100 ../doc/procps_pids.3:95
+#, no-wrap
+msgid "Usage"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:103
+msgid "The following would be a typical sequence of calls to these interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:108
+#, no-wrap
+msgid ""
+"1. B<procps_new()>\n"
+"2. B<procps_get()>, B<procps_select()> or B<procps_reap()>\n"
+"3. B<procps_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:114
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> "
+"function call.  The B<sort> function parameters I<stacks> and I<numstacked> "
+"would normally be those returned in the `reaped' structure."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:115 ../doc/procps_pids.3:111
+#, no-wrap
+msgid "Caveats"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:118
+msgid ""
+"The B<new>, B<ref>, B<unref>, B<get> and B<select> functions are available "
+"in all five interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:123 ../doc/procps_pids.3:123
+msgid ""
+"For the B<new> and B<unref> functions, the address of an I<info> struct "
+"pointer must be supplied.  With B<new> it must have been initialized to "
+"NULL.  With B<unref> it will be reset to NULL if the reference count reaches "
+"zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:127
+msgid ""
+"In the case of the B<diskstats> interface, a I<name> parameter on the B<get> "
+"and B<select> functions identifies a disk or partition name"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:133
+msgid ""
+"The B<diskstats>, B<slabinfo> and B<stat> interfaces support unpredictable "
+"variable outcomes.  As such, they export a B<reap> function to retrieve "
+"multiple `stacks' with a single invocation.  These same interfaces also "
+"provide a B<sort> function."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:134 ../doc/procps_misc.3:134 ../doc/procps_pids.3:143
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:135 ../doc/procps_pids.3:144
+#, no-wrap
+msgid "Functions Returning an `int'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:138 ../doc/procps_misc.3:138 ../doc/procps_pids.3:147
+msgid ""
+"An error will be indicated by a negative number that is always the inverse "
+"of some well known errno.h value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:142 ../doc/procps_pids.3:151
+msgid ""
+"Success is indicated by a zero return value.  However, the B<ref> and "
+"B<unref> functions return the current I<info> structure reference count."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:143 ../doc/procps_misc.3:139 ../doc/procps_pids.3:152
+#, no-wrap
+msgid "Functions Returning an `address'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:146 ../doc/procps_misc.3:142 ../doc/procps_pids.3:155
+msgid ""
+"An error will be indicated by a NULL return pointer with the reason found in "
+"the formal errno value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:148
+msgid "Success is indicated by a pointer to the named structure."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:149 ../doc/procps_pids.3:160
+#, no-wrap
+msgid "DEBUGGING"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:155 ../doc/procps_pids.3:166
+msgid ""
+"To aid in program development, there is a provision that can help ensure "
+"`result' member references agree with library expectations.  It assumes that "
+"a supplied macro in the header file is used to access the `result' value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:158 ../doc/procps_pids.3:169
+msgid ""
+"This feature can be activated through either of the following methods and "
+"any discrepancies will be wrtten to B<stderr>."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:159 ../doc/procps_pids.3:170
+#, fuzzy, no-wrap
+#| msgid "1"
+msgid "1)"
+msgstr "1"
+
+#. type: Plain text
+#: ../doc/procps.3:162 ../doc/procps_pids.3:173
+msgid ""
+"Add CFLAGS='-DXTRA_PROCPS_DEBUG' to any other ./configure options employed."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:163 ../doc/procps_pids.3:174
+#, fuzzy, no-wrap
+#| msgid "2"
+msgid "2)"
+msgstr "2"
+
+#. type: Plain text
+#: ../doc/procps.3:166
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the named interface includes."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:171 ../doc/procps_pids.3:182
+msgid ""
+"This verification feature incurs substantial overhead.  Therefore, it is "
+"important that it I<not> be activated for a production/release build."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:175
+#, fuzzy
+msgid "B<procps_misc>(3)  B<procps_pids>(3)  B<proc>(5)."
+msgstr "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+
+#. type: TH
+#: ../doc/procps_misc.3:20
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_MISC"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:26
+msgid "procps_misc - API for miscellaneous information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:29
+#, no-wrap
+msgid "B<#include E<lt>procps/misc.hE<gt>>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:31
+#, no-wrap
+msgid "Platform Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:37
+#, no-wrap
+msgid ""
+"B<long         procps_cpu_count (void);>\n"
+"B<long         procps_hertz_get (void);>\n"
+"B<unsigned int procps_pid_length (void);>\n"
+"B<int          procps_linux_version (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:40
+#, no-wrap
+msgid "Runtime Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:46
+#, no-wrap
+msgid ""
+"B<int    procps_loadavg (double * >I<av1>B<, double * >I<av5>B<, double * >I<av15>B<);>\n"
+"B<int    procps_uptime (double * >I<uptime_secs>B<, double * >I<idle_secs>B<);>\n"
+"B<char * procps_uptime_sprint (void);>\n"
+"B<char * procps_uptime_sprint_short (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:49
+#, no-wrap
+msgid "Namespace Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:54
+#, no-wrap
+msgid ""
+"B<int          procps_ns_get_id (const char * >I<name>B<);>\n"
+"B<const char * procps_ns_get_name (int >I<id>B<);>\n"
+"B<int          procps_ns_read_pid (int >I<pid>B<, struct procps_ns * >I<nsp>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:57
+#, no-wrap
+msgid "Link with I<-lprocps>.\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:63
+msgid ""
+"B<procps_cpu_count>()  returns the number of CPUs that are currently online "
+"as B<sysconf(>I<_SC_NPROCESSORS_ONLY>B<)> or an assumed I<1>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:69
+msgid ""
+"B<procps_hertz_get>()  returns the number of clock ticks per second as "
+"B<sysconf(>I<_SC_CLK_TCK>B<)> or an assumed I<100>.  Dividing tics by this "
+"value yields seconds."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:74
+msgid ""
+"B<procps_pid_length>()  returns the maximum string length for a PID on the "
+"system. For example, if the largest possible PID value on was 123, then the "
+"length would be 3. If the file I</proc/sys/kernel/pid_max> is unreadable, "
+"the value is assumed to be I<5>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:83
+msgid ""
+"B<procps_linux_version>()  returns the current Linux version as an encoded "
+"integer. On non-Linux systems that have an emulated proc filesystem this "
+"function returns the version of the Linux emulation instead.  The version "
+"consists of three positive integers representing the major, minor and patch "
+"levels.  The following macros are provided for encoding a given Linux "
+"version or separating out the components of the current version."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:86
+msgid "LINUX_VERSION(\\ major\\ ,\\ minor\\ ,\\ patch\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:88
+msgid "LINUX_VERSION_MAJOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:90
+msgid "LINUX_VERSION_MINOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:92
+msgid "LINUX_VERSION_PATCH(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:97
+msgid ""
+"B<procps_loadavg>()  fetches the system load average and puts the 1, 5 and "
+"15 minute averages into location(s) specified by any pointer which is not "
+"I<NULL>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:102
+msgid ""
+"B<procps_uptime>()  returns uptime and/or idle seconds into location(s) "
+"specified by any pointer which is not I<NULL>.  The B<sprint> varieties "
+"return a human-readable string in one of two forms."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:105
+msgid "HH:MM:SS up HH:MM, # users, load average: 1, 5, 15 MM averages"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:107
+msgid "up HH, MM"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:111
+msgid ""
+"B<procps_ns_get_id>()  returns the integer id (enum namespace_type) of the "
+"namespace for the given namespace I<name>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:114
+msgid ""
+"B<procps_ns_get_name>()  returns the name of the namespace for the given "
+"I<id> (enum namespace_type)."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:119
+msgid ""
+"B<procps_ns_read_pid>()  returns the inodes for the namespaces of the given "
+"process in the procps_ns structure pointed to by I<nsp>.  Those inodes will "
+"appear in the order proscribed by enum namespace_type."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:130
+#, no-wrap
+msgid ""
+"enum namespace_type {\n"
+"    PROCPS_NS_IPC,\n"
+"    PROCPS_NS_MNT,\n"
+"    PROCPS_NS_NET,\n"
+"    PROCPS_NS_PID,\n"
+"    PROCPS_NS_USER,\n"
+"    PROCPS_NS_UTS\n"
+"};\n"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps_misc.3:135
+#, no-wrap
+msgid "Functions Returning an `int' or `long'"
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:144
+#, fuzzy, no-wrap
+#| msgid "I</proc/slabinfo>"
+msgid "I</proc/loadavg>"
+msgstr "I</proc/slabinfo>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:147
+msgid "The raw values for load average."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:147
+#, no-wrap
+msgid "I</proc/sys/kernel/osrelease>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:150
+msgid "Contains the release version of the Linux kernel or proc filesystem."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:150
+#, fuzzy, no-wrap
+#| msgid "I</proc/sys>"
+msgid "I</proc/sys/kernel/pid_max>"
+msgstr "I</proc/sys>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:153
+msgid ""
+"Contains the value at which PIDs wrap around, one greater than the maximum "
+"PID value."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:153
+#, fuzzy, no-wrap
+#| msgid "I</proc>"
+msgid "I</proc/uptime>"
+msgstr "I</proc>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:156
+msgid "The raw values for uptime and idle time."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:156
+#, no-wrap
+msgid "I</proc/E<lt>PIDE<gt>/ns>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:159
+msgid "contains the set of namespaces for a particular B<PID>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:163
+#, fuzzy
+msgid "B<procps>(3).  B<procps_pids>(3).  B<proc>(5)."
+msgstr "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+
+#. type: TH
+#: ../doc/procps_pids.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_PIDS"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_pids.3:25
+msgid "procps_pids - API to access process information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:29
+#, no-wrap
+msgid "#include E<lt>procps/pids.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:33
+#, no-wrap
+msgid ""
+"B<int procps_pids_new   (struct pids_info **>I<info>B<, enum pids_item *>I<items>B<, int >I<numitems>B<);>\n"
+"B<int procps_pids_ref   (struct pids_info  *>I<info>B<);>\n"
+"B<int procps_pids_unref (struct pids_info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:38
+#, no-wrap
+msgid ""
+"B<struct pids_stack *procps_pids_get (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:42
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_reap (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:48
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_select (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    unsigned *>I<these>B<,>\n"
+"B<    int >I<numthese>B<,>\n"
+"B<    enum pids_select_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:55
+#, no-wrap
+msgid ""
+"B<struct pids_stack **procps_pids_sort (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    struct pids_stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum pids_item >I<sortitem>B<,>\n"
+"B<    enum pids_sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:61
+#, no-wrap
+msgid ""
+"B<int procps_pids_reset (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_item *>I<newitems>B<,>\n"
+"B<    int >I<newnumitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:65
+#, no-wrap
+msgid ""
+"B<struct pids_stack *fatal_proc_unmounted (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    int >I<return_self>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:77
+msgid ""
+"Central to this interface is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:94
+msgid ""
+"The pids.h file will be an essential document during user program "
+"development.  There you will find available items, their return type (the "
+"`result' struct member name) and the source for such values.  Additional "
+"enumerators and structures are also documented there."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:98
+msgid "The following would be a typical sequence of calls to this interface."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:104
+#, no-wrap
+msgid ""
+"1. B<fatal_proc_unmounted()>\n"
+"2. B<procps_pids_new()>\n"
+"3. B<procps_pids_get()>, B<procps_pids_reap()> or B<procps_pids_select()>\n"
+"4. B<procps_pids_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:110
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> or "
+"B<select> function call.  The B<sort> function parameters I<stacks> and "
+"I<numstacked> would normally be those returned in the `pids_fetch' structure."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:118
+msgid ""
+"The E<lt>pidsE<gt> API differs from others in that those items of interest "
+"must be provided at B<new> or B<reset> time, the latter being unique to this "
+"API.  If either the I<items> or I<numitems> parameter is zero at B<new> "
+"time, then B<reset> becomes mandatory before issuing any other call."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:127
+msgid ""
+"The B<get> function is an iterator, for successive PIDs/TIDs, returning "
+"those items previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:134
+msgid ""
+"The B<select> function requires an array of PIDs or UIDs as I<these> along "
+"with I<numthese> to identify which processes are to be fetched.  This "
+"function then operates as a subset of B<reap> while returning those items "
+"previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:142
+msgid ""
+"Lastly, a B<fatal_proc_unmounted> function may be called before any other "
+"function to ensure that the /proc/ directory is mounted.  As such, the "
+"I<info> parameter would be NULL and the I<return_self> parameter zero.  If, "
+"however, some items are desired for the issuing program (a I<return_self> "
+"other than zero) then the B<new> call must precede it to obtain the required "
+"I<info> pointer."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:159
+msgid ""
+"Success is indicated by a pointer to the named structure.  However, if one "
+"survives the B<fatal_proc_unmounted> call, NULL is always returned when "
+"I<return_self> is zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:177
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the #include E<lt>procps/pids.hE<gt>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:186
+#, fuzzy
+msgid "B<procps>(3)  B<procps_misc>(3)  B<proc>(5)."
+msgstr "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+
 #~ msgid "Please send bug reports to E<.MT procps@freelists.org> E<.ME>"
 #~ msgstr ""
 #~ "Por favor, envie relatórios de erros para E<.MT procps@freelists.org> E<."
index 66f181ad2fb4855e80c7928f272779ba004c9b5e..bd1a1962fa2954107d55a1e4ab9f7e9bf0f6488a 100644 (file)
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: procps-ng-man 3.3.17rc1\n"
 "Report-Msgid-Bugs-To: Procps list <procps@freelists.org>\n"
-"POT-Creation-Date: 2021-02-15 21:26+1100\n"
+"POT-Creation-Date: 2021-02-15 21:41+1100\n"
 "PO-Revision-Date: 2021-01-28 22:55+0100\n"
 "Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
@@ -48,12 +48,12 @@ msgstr "procps-ng"
 msgid "User Commands"
 msgstr "Användarkommandon"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:6 ../kill.1:9 ../pgrep.1:11 ../pidof.1:19 ../pmap.1:9 ../pwdx.1:7
 #: ../skill.1:10 ../slabtop.1:6 ../sysctl.8:10 ../sysctl.conf.5:10 ../tload.1:5
 #: ../uptime.1:4 ../vmstat.8:4 ../w.1:4 ../watch.1:2 ../ps/ps.1:27
-#: ../top/top.1:70
+#: ../top/top.1:70 ../doc/procps.3:23 ../doc/procps_misc.3:24
+#: ../doc/procps_pids.3:23
 #, no-wrap
 msgid "NAME"
 msgstr "NAMN"
@@ -63,12 +63,12 @@ msgstr "NAMN"
 msgid "free - Display amount of free and used memory in the system"
 msgstr "free — Visa mängden fritt och använt minne i systemet"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:8 ../kill.1:11 ../pgrep.1:13 ../pidof.1:21 ../pmap.1:11
 #: ../pwdx.1:9 ../skill.1:12 ../slabtop.1:8 ../sysctl.8:12 ../tload.1:7
 #: ../uptime.1:6 ../vmstat.8:6 ../w.1:6 ../watch.1:4 ../ps/ps.1:29
-#: ../top/top.1:75
+#: ../top/top.1:75 ../doc/procps.3:26 ../doc/procps_misc.3:26
+#: ../doc/procps_pids.3:26
 #, no-wrap
 msgid "SYNOPSIS"
 msgstr "SYNOPSIS"
@@ -78,12 +78,12 @@ msgstr "SYNOPSIS"
 msgid "B<free> [I<options>]"
 msgstr "B<free> [I<flaggor>]"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:11 ../kill.1:14 ../pgrep.1:22 ../pidof.1:34 ../pmap.1:14
 #: ../skill.1:22 ../slabtop.1:11 ../sysctl.8:18 ../sysctl.conf.5:12
 #: ../tload.1:10 ../uptime.1:9 ../vmstat.8:10 ../w.1:9 ../watch.1:7
-#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82
+#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82 ../doc/procps.3:75
+#: ../doc/procps_misc.3:58 ../doc/procps_pids.3:70
 #, no-wrap
 msgid "DESCRIPTION"
 msgstr "BESKRIVNING"
@@ -486,6 +486,7 @@ msgstr "Visa versionsinformation."
 #. type: SH
 #: ../free.1:133 ../slabtop.1:77 ../sysctl.8:154 ../sysctl.conf.5:57
 #: ../tload.1:34 ../uptime.1:39 ../vmstat.8:201 ../w.1:74
+#: ../doc/procps_misc.3:143
 #, no-wrap
 msgid "FILES"
 msgstr "FILER"
@@ -534,7 +535,8 @@ msgstr "E<.UR procps@freelists.org> E<.UE>"
 #: ../free.1:145 ../kill.1:84 ../pgrep.1:277 ../pidof.1:78 ../pmap.1:79
 #: ../pwdx.1:19 ../skill.1:102 ../slabtop.1:81 ../sysctl.8:168
 #: ../sysctl.conf.5:76 ../tload.1:37 ../uptime.1:56 ../vmstat.8:208 ../w.1:81
-#: ../ps/ps.1:1958
+#: ../ps/ps.1:1958 ../doc/procps.3:172 ../doc/procps_misc.3:160
+#: ../doc/procps_pids.3:183
 #, no-wrap
 msgid "SEE ALSO"
 msgstr "SE ÄVEN"
@@ -14986,6 +14988,778 @@ msgid ""
 "B<w>(1)"
 msgstr "B<free>(1), B<ps>(1), B<top>(1), B<uptime>(1), B<utmp>(5), B<who>(1)"
 
+#. type: TH
+#: ../doc/procps.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS"
+msgstr "PROCPS_USERLEN"
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, no-wrap
+msgid "January 2021"
+msgstr ""
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, no-wrap
+msgid "libproc-2"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:25
+msgid "procps - API to access system level information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:30
+msgid ""
+"Five distinct interfaces are represented in this synopsis and named after "
+"the files they access in the /proc pseudo filesystem: B<diskstats>, "
+"B<meminfo>, B<slabinfo>, B<stat> and B<vmstat>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:34
+#, no-wrap
+msgid "#include E<lt>procps/B<named_interface>.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:38
+#, no-wrap
+msgid ""
+"B<int procps_new   (struct info **>I<info>B<);>\n"
+"B<int procps_ref   (struct info  *>I<info>B<);>\n"
+"B<int procps_unref (struct info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:43
+#, no-wrap
+msgid ""
+"B<struct result *procps_get (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item >I<item>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:49
+#, no-wrap
+msgid ""
+"B<struct stack *procps_select (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:55
+#, no-wrap
+msgid ""
+"B<struct reaped *procps_reap (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   enum reap_type I<what>,   ]   B<stat> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:62
+#, no-wrap
+msgid ""
+"B<struct stack **procps_sort (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"B<    struct stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum item >I<sortitem>B<,>\n"
+"B<    enum sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:69
+msgid ""
+"The above functions and structures are generic but the specific "
+"B<named_interface> would also be part of any identifiers.  For example, "
+"`procps_new' would actually be `procps_B<meminfo>_new' and `info' would "
+"really be `B<diskstats>_info', etc."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:72
+msgid ""
+"The same B<named_interface> is used in each header file name with an "
+"appended `.h' suffix."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:74 ../doc/procps_pids.3:69
+msgid "Link with I<-lprocps>."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:76 ../doc/procps_pids.3:71
+#, no-wrap
+msgid "Overview"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:82
+msgid ""
+"Central to these interfaces is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:88 ../doc/procps_pids.3:83
+msgid ""
+"By specifying an array of `items', these structures can be organized as a "
+"`stack', potentially yielding many results with a single function call.  "
+"Thus, a `stack' can be viewed as a variable length record whose content and "
+"order is determined solely by the user."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:93 ../doc/procps_pids.3:88
+msgid ""
+"As part of each interface there are two unique items.  The `noop' and "
+"`extra' items exist to hold user values.  They are never set by the library, "
+"but the `extra' result will be zeroed with each library interaction."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:99
+msgid ""
+"The B<named_interface> header file will be an essential document during user "
+"program development.  There you will find available items, their return type "
+"(the `result' struct member name) and the source for such values.  "
+"Additional enumerators and structures are also documented there."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:100 ../doc/procps_pids.3:95
+#, no-wrap
+msgid "Usage"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:103
+msgid "The following would be a typical sequence of calls to these interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:108
+#, no-wrap
+msgid ""
+"1. B<procps_new()>\n"
+"2. B<procps_get()>, B<procps_select()> or B<procps_reap()>\n"
+"3. B<procps_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:114
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> "
+"function call.  The B<sort> function parameters I<stacks> and I<numstacked> "
+"would normally be those returned in the `reaped' structure."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:115 ../doc/procps_pids.3:111
+#, no-wrap
+msgid "Caveats"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:118
+msgid ""
+"The B<new>, B<ref>, B<unref>, B<get> and B<select> functions are available "
+"in all five interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:123 ../doc/procps_pids.3:123
+msgid ""
+"For the B<new> and B<unref> functions, the address of an I<info> struct "
+"pointer must be supplied.  With B<new> it must have been initialized to "
+"NULL.  With B<unref> it will be reset to NULL if the reference count reaches "
+"zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:127
+msgid ""
+"In the case of the B<diskstats> interface, a I<name> parameter on the B<get> "
+"and B<select> functions identifies a disk or partition name"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:133
+msgid ""
+"The B<diskstats>, B<slabinfo> and B<stat> interfaces support unpredictable "
+"variable outcomes.  As such, they export a B<reap> function to retrieve "
+"multiple `stacks' with a single invocation.  These same interfaces also "
+"provide a B<sort> function."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:134 ../doc/procps_misc.3:134 ../doc/procps_pids.3:143
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:135 ../doc/procps_pids.3:144
+#, no-wrap
+msgid "Functions Returning an `int'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:138 ../doc/procps_misc.3:138 ../doc/procps_pids.3:147
+msgid ""
+"An error will be indicated by a negative number that is always the inverse "
+"of some well known errno.h value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:142 ../doc/procps_pids.3:151
+msgid ""
+"Success is indicated by a zero return value.  However, the B<ref> and "
+"B<unref> functions return the current I<info> structure reference count."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:143 ../doc/procps_misc.3:139 ../doc/procps_pids.3:152
+#, no-wrap
+msgid "Functions Returning an `address'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:146 ../doc/procps_misc.3:142 ../doc/procps_pids.3:155
+msgid ""
+"An error will be indicated by a NULL return pointer with the reason found in "
+"the formal errno value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:148
+msgid "Success is indicated by a pointer to the named structure."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:149 ../doc/procps_pids.3:160
+#, no-wrap
+msgid "DEBUGGING"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:155 ../doc/procps_pids.3:166
+msgid ""
+"To aid in program development, there is a provision that can help ensure "
+"`result' member references agree with library expectations.  It assumes that "
+"a supplied macro in the header file is used to access the `result' value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:158 ../doc/procps_pids.3:169
+msgid ""
+"This feature can be activated through either of the following methods and "
+"any discrepancies will be wrtten to B<stderr>."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:159 ../doc/procps_pids.3:170
+#, fuzzy, no-wrap
+#| msgid "1"
+msgid "1)"
+msgstr "1"
+
+#. type: Plain text
+#: ../doc/procps.3:162 ../doc/procps_pids.3:173
+msgid ""
+"Add CFLAGS='-DXTRA_PROCPS_DEBUG' to any other ./configure options employed."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:163 ../doc/procps_pids.3:174
+#, fuzzy, no-wrap
+#| msgid "2"
+msgid "2)"
+msgstr "2"
+
+#. type: Plain text
+#: ../doc/procps.3:166
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the named interface includes."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:171 ../doc/procps_pids.3:182
+msgid ""
+"This verification feature incurs substantial overhead.  Therefore, it is "
+"important that it I<not> be activated for a production/release build."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:175
+#, fuzzy
+#| msgid "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+msgid "B<procps_misc>(3)  B<procps_pids>(3)  B<proc>(5)."
+msgstr "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+
+#. type: TH
+#: ../doc/procps_misc.3:20
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_MISC"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:26
+msgid "procps_misc - API for miscellaneous information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:29
+#, no-wrap
+msgid "B<#include E<lt>procps/misc.hE<gt>>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:31
+#, no-wrap
+msgid "Platform Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:37
+#, no-wrap
+msgid ""
+"B<long         procps_cpu_count (void);>\n"
+"B<long         procps_hertz_get (void);>\n"
+"B<unsigned int procps_pid_length (void);>\n"
+"B<int          procps_linux_version (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:40
+#, no-wrap
+msgid "Runtime Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:46
+#, no-wrap
+msgid ""
+"B<int    procps_loadavg (double * >I<av1>B<, double * >I<av5>B<, double * >I<av15>B<);>\n"
+"B<int    procps_uptime (double * >I<uptime_secs>B<, double * >I<idle_secs>B<);>\n"
+"B<char * procps_uptime_sprint (void);>\n"
+"B<char * procps_uptime_sprint_short (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:49
+#, no-wrap
+msgid "Namespace Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:54
+#, no-wrap
+msgid ""
+"B<int          procps_ns_get_id (const char * >I<name>B<);>\n"
+"B<const char * procps_ns_get_name (int >I<id>B<);>\n"
+"B<int          procps_ns_read_pid (int >I<pid>B<, struct procps_ns * >I<nsp>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:57
+#, no-wrap
+msgid "Link with I<-lprocps>.\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:63
+msgid ""
+"B<procps_cpu_count>()  returns the number of CPUs that are currently online "
+"as B<sysconf(>I<_SC_NPROCESSORS_ONLY>B<)> or an assumed I<1>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:69
+msgid ""
+"B<procps_hertz_get>()  returns the number of clock ticks per second as "
+"B<sysconf(>I<_SC_CLK_TCK>B<)> or an assumed I<100>.  Dividing tics by this "
+"value yields seconds."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:74
+msgid ""
+"B<procps_pid_length>()  returns the maximum string length for a PID on the "
+"system. For example, if the largest possible PID value on was 123, then the "
+"length would be 3. If the file I</proc/sys/kernel/pid_max> is unreadable, "
+"the value is assumed to be I<5>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:83
+msgid ""
+"B<procps_linux_version>()  returns the current Linux version as an encoded "
+"integer. On non-Linux systems that have an emulated proc filesystem this "
+"function returns the version of the Linux emulation instead.  The version "
+"consists of three positive integers representing the major, minor and patch "
+"levels.  The following macros are provided for encoding a given Linux "
+"version or separating out the components of the current version."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:86
+msgid "LINUX_VERSION(\\ major\\ ,\\ minor\\ ,\\ patch\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:88
+msgid "LINUX_VERSION_MAJOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:90
+msgid "LINUX_VERSION_MINOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:92
+msgid "LINUX_VERSION_PATCH(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:97
+msgid ""
+"B<procps_loadavg>()  fetches the system load average and puts the 1, 5 and "
+"15 minute averages into location(s) specified by any pointer which is not "
+"I<NULL>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:102
+msgid ""
+"B<procps_uptime>()  returns uptime and/or idle seconds into location(s) "
+"specified by any pointer which is not I<NULL>.  The B<sprint> varieties "
+"return a human-readable string in one of two forms."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:105
+msgid "HH:MM:SS up HH:MM, # users, load average: 1, 5, 15 MM averages"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:107
+msgid "up HH, MM"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:111
+msgid ""
+"B<procps_ns_get_id>()  returns the integer id (enum namespace_type) of the "
+"namespace for the given namespace I<name>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:114
+msgid ""
+"B<procps_ns_get_name>()  returns the name of the namespace for the given "
+"I<id> (enum namespace_type)."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:119
+msgid ""
+"B<procps_ns_read_pid>()  returns the inodes for the namespaces of the given "
+"process in the procps_ns structure pointed to by I<nsp>.  Those inodes will "
+"appear in the order proscribed by enum namespace_type."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:130
+#, no-wrap
+msgid ""
+"enum namespace_type {\n"
+"    PROCPS_NS_IPC,\n"
+"    PROCPS_NS_MNT,\n"
+"    PROCPS_NS_NET,\n"
+"    PROCPS_NS_PID,\n"
+"    PROCPS_NS_USER,\n"
+"    PROCPS_NS_UTS\n"
+"};\n"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps_misc.3:135
+#, no-wrap
+msgid "Functions Returning an `int' or `long'"
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:144
+#, fuzzy, no-wrap
+#| msgid "I</proc/slabinfo>"
+msgid "I</proc/loadavg>"
+msgstr "I</proc/slabinfo>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:147
+msgid "The raw values for load average."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:147
+#, no-wrap
+msgid "I</proc/sys/kernel/osrelease>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:150
+msgid "Contains the release version of the Linux kernel or proc filesystem."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:150
+#, fuzzy, no-wrap
+#| msgid "I</proc/sys>"
+msgid "I</proc/sys/kernel/pid_max>"
+msgstr "I</proc/sys>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:153
+msgid ""
+"Contains the value at which PIDs wrap around, one greater than the maximum "
+"PID value."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:153
+#, fuzzy, no-wrap
+#| msgid "I</proc>"
+msgid "I</proc/uptime>"
+msgstr "I</proc>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:156
+msgid "The raw values for uptime and idle time."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:156
+#, no-wrap
+msgid "I</proc/E<lt>PIDE<gt>/ns>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:159
+msgid "contains the set of namespaces for a particular B<PID>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:163
+#, fuzzy
+#| msgid "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+msgid "B<procps>(3).  B<procps_pids>(3).  B<proc>(5)."
+msgstr "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+
+#. type: TH
+#: ../doc/procps_pids.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_PIDS"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_pids.3:25
+msgid "procps_pids - API to access process information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:29
+#, no-wrap
+msgid "#include E<lt>procps/pids.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:33
+#, no-wrap
+msgid ""
+"B<int procps_pids_new   (struct pids_info **>I<info>B<, enum pids_item *>I<items>B<, int >I<numitems>B<);>\n"
+"B<int procps_pids_ref   (struct pids_info  *>I<info>B<);>\n"
+"B<int procps_pids_unref (struct pids_info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:38
+#, no-wrap
+msgid ""
+"B<struct pids_stack *procps_pids_get (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:42
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_reap (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:48
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_select (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    unsigned *>I<these>B<,>\n"
+"B<    int >I<numthese>B<,>\n"
+"B<    enum pids_select_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:55
+#, no-wrap
+msgid ""
+"B<struct pids_stack **procps_pids_sort (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    struct pids_stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum pids_item >I<sortitem>B<,>\n"
+"B<    enum pids_sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:61
+#, no-wrap
+msgid ""
+"B<int procps_pids_reset (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_item *>I<newitems>B<,>\n"
+"B<    int >I<newnumitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:65
+#, no-wrap
+msgid ""
+"B<struct pids_stack *fatal_proc_unmounted (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    int >I<return_self>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:77
+msgid ""
+"Central to this interface is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:94
+msgid ""
+"The pids.h file will be an essential document during user program "
+"development.  There you will find available items, their return type (the "
+"`result' struct member name) and the source for such values.  Additional "
+"enumerators and structures are also documented there."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:98
+msgid "The following would be a typical sequence of calls to this interface."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:104
+#, no-wrap
+msgid ""
+"1. B<fatal_proc_unmounted()>\n"
+"2. B<procps_pids_new()>\n"
+"3. B<procps_pids_get()>, B<procps_pids_reap()> or B<procps_pids_select()>\n"
+"4. B<procps_pids_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:110
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> or "
+"B<select> function call.  The B<sort> function parameters I<stacks> and "
+"I<numstacked> would normally be those returned in the `pids_fetch' structure."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:118
+msgid ""
+"The E<lt>pidsE<gt> API differs from others in that those items of interest "
+"must be provided at B<new> or B<reset> time, the latter being unique to this "
+"API.  If either the I<items> or I<numitems> parameter is zero at B<new> "
+"time, then B<reset> becomes mandatory before issuing any other call."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:127
+msgid ""
+"The B<get> function is an iterator, for successive PIDs/TIDs, returning "
+"those items previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:134
+msgid ""
+"The B<select> function requires an array of PIDs or UIDs as I<these> along "
+"with I<numthese> to identify which processes are to be fetched.  This "
+"function then operates as a subset of B<reap> while returning those items "
+"previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:142
+msgid ""
+"Lastly, a B<fatal_proc_unmounted> function may be called before any other "
+"function to ensure that the /proc/ directory is mounted.  As such, the "
+"I<info> parameter would be NULL and the I<return_self> parameter zero.  If, "
+"however, some items are desired for the issuing program (a I<return_self> "
+"other than zero) then the B<new> call must precede it to obtain the required "
+"I<info> pointer."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:159
+msgid ""
+"Success is indicated by a pointer to the named structure.  However, if one "
+"survives the B<fatal_proc_unmounted> call, NULL is always returned when "
+"I<return_self> is zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:177
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the #include E<lt>procps/pids.hE<gt>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:186
+#, fuzzy
+#| msgid "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+msgid "B<procps>(3)  B<procps_misc>(3)  B<proc>(5)."
+msgstr "B<free>(1), B<ps>(1), B<top>(1), B<vmstat>(8)"
+
 #~ msgid "Please send bug reports to E<.MT procps@freelists.org> E<.ME>"
 #~ msgstr ""
 #~ "Skicka felrapporter till E<.MT procps@freelists.org> E<.ME>\n"
index 21991f0daff26316c14a1f3133d312750aefc386..a955c754ffdb0f9ce704ee12a3ee8dd8ba126330 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: procps-ng-man-3.3.17rc1\n"
 "Report-Msgid-Bugs-To: Procps list <procps@freelists.org>\n"
-"POT-Creation-Date: 2021-02-15 21:26+1100\n"
+"POT-Creation-Date: 2021-02-15 21:41+1100\n"
 "PO-Revision-Date: 2021-01-22 19:14+0200\n"
 "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
 "Language-Team: Ukrainian <trans-uk@lists.fedoraproject.org>\n"
@@ -48,12 +48,12 @@ msgstr "procps-ng"
 msgid "User Commands"
 msgstr "Команди користувача"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:6 ../kill.1:9 ../pgrep.1:11 ../pidof.1:19 ../pmap.1:9 ../pwdx.1:7
 #: ../skill.1:10 ../slabtop.1:6 ../sysctl.8:10 ../sysctl.conf.5:10 ../tload.1:5
 #: ../uptime.1:4 ../vmstat.8:4 ../w.1:4 ../watch.1:2 ../ps/ps.1:27
-#: ../top/top.1:70
+#: ../top/top.1:70 ../doc/procps.3:23 ../doc/procps_misc.3:24
+#: ../doc/procps_pids.3:23
 #, no-wrap
 msgid "NAME"
 msgstr "НАЗВА"
@@ -65,12 +65,12 @@ msgstr ""
 "free — показ даних щодо об’єму вільної та використаної оперативної пам’яті у "
 "системі"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:8 ../kill.1:11 ../pgrep.1:13 ../pidof.1:21 ../pmap.1:11
 #: ../pwdx.1:9 ../skill.1:12 ../slabtop.1:8 ../sysctl.8:12 ../tload.1:7
 #: ../uptime.1:6 ../vmstat.8:6 ../w.1:6 ../watch.1:4 ../ps/ps.1:29
-#: ../top/top.1:75
+#: ../top/top.1:75 ../doc/procps.3:26 ../doc/procps_misc.3:26
+#: ../doc/procps_pids.3:26
 #, no-wrap
 msgid "SYNOPSIS"
 msgstr "КОРОТКИЙ ОПИС"
@@ -80,12 +80,12 @@ msgstr "КОРОТКИЙ ОПИС"
 msgid "B<free> [I<options>]"
 msgstr "B<free> [I<параметри>]"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:11 ../kill.1:14 ../pgrep.1:22 ../pidof.1:34 ../pmap.1:14
 #: ../skill.1:22 ../slabtop.1:11 ../sysctl.8:18 ../sysctl.conf.5:12
 #: ../tload.1:10 ../uptime.1:9 ../vmstat.8:10 ../w.1:9 ../watch.1:7
-#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82
+#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82 ../doc/procps.3:75
+#: ../doc/procps_misc.3:58 ../doc/procps_pids.3:70
 #, no-wrap
 msgid "DESCRIPTION"
 msgstr "ОПИС"
@@ -497,6 +497,7 @@ msgstr "Показати інформацію щодо версії."
 #. type: SH
 #: ../free.1:133 ../slabtop.1:77 ../sysctl.8:154 ../sysctl.conf.5:57
 #: ../tload.1:34 ../uptime.1:39 ../vmstat.8:201 ../w.1:74
+#: ../doc/procps_misc.3:143
 #, no-wrap
 msgid "FILES"
 msgstr "ФАЙЛИ"
@@ -543,7 +544,8 @@ msgstr "E<.UR procps@freelists.org> E<.UE>"
 #: ../free.1:145 ../kill.1:84 ../pgrep.1:277 ../pidof.1:78 ../pmap.1:79
 #: ../pwdx.1:19 ../skill.1:102 ../slabtop.1:81 ../sysctl.8:168
 #: ../sysctl.conf.5:76 ../tload.1:37 ../uptime.1:56 ../vmstat.8:208 ../w.1:81
-#: ../ps/ps.1:1958
+#: ../ps/ps.1:1958 ../doc/procps.3:172 ../doc/procps_misc.3:160
+#: ../doc/procps_pids.3:183
 #, no-wrap
 msgid "SEE ALSO"
 msgstr "ТАКОЖ ПЕРЕГЛЯНЬТЕ"
@@ -14889,6 +14891,779 @@ msgstr ""
 "B<free>(1), B<ps>(1), B<uptime>(1), B<atop>(1), B<slabtop>(1), B<vmstat>(8), "
 "B<w>(1)"
 
+#. type: TH
+#: ../doc/procps.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS"
+msgstr "PROCPS_USERLEN"
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, fuzzy, no-wrap
+#| msgid "May 2012"
+msgid "January 2021"
+msgstr "травень 2012 року"
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, no-wrap
+msgid "libproc-2"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:25
+msgid "procps - API to access system level information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:30
+msgid ""
+"Five distinct interfaces are represented in this synopsis and named after "
+"the files they access in the /proc pseudo filesystem: B<diskstats>, "
+"B<meminfo>, B<slabinfo>, B<stat> and B<vmstat>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:34
+#, no-wrap
+msgid "#include E<lt>procps/B<named_interface>.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:38
+#, no-wrap
+msgid ""
+"B<int procps_new   (struct info **>I<info>B<);>\n"
+"B<int procps_ref   (struct info  *>I<info>B<);>\n"
+"B<int procps_unref (struct info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:43
+#, no-wrap
+msgid ""
+"B<struct result *procps_get (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item >I<item>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:49
+#, no-wrap
+msgid ""
+"B<struct stack *procps_select (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:55
+#, no-wrap
+msgid ""
+"B<struct reaped *procps_reap (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   enum reap_type I<what>,   ]   B<stat> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:62
+#, no-wrap
+msgid ""
+"B<struct stack **procps_sort (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"B<    struct stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum item >I<sortitem>B<,>\n"
+"B<    enum sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:69
+msgid ""
+"The above functions and structures are generic but the specific "
+"B<named_interface> would also be part of any identifiers.  For example, "
+"`procps_new' would actually be `procps_B<meminfo>_new' and `info' would "
+"really be `B<diskstats>_info', etc."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:72
+msgid ""
+"The same B<named_interface> is used in each header file name with an "
+"appended `.h' suffix."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:74 ../doc/procps_pids.3:69
+msgid "Link with I<-lprocps>."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:76 ../doc/procps_pids.3:71
+#, no-wrap
+msgid "Overview"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:82
+msgid ""
+"Central to these interfaces is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:88 ../doc/procps_pids.3:83
+msgid ""
+"By specifying an array of `items', these structures can be organized as a "
+"`stack', potentially yielding many results with a single function call.  "
+"Thus, a `stack' can be viewed as a variable length record whose content and "
+"order is determined solely by the user."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:93 ../doc/procps_pids.3:88
+msgid ""
+"As part of each interface there are two unique items.  The `noop' and "
+"`extra' items exist to hold user values.  They are never set by the library, "
+"but the `extra' result will be zeroed with each library interaction."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:99
+msgid ""
+"The B<named_interface> header file will be an essential document during user "
+"program development.  There you will find available items, their return type "
+"(the `result' struct member name) and the source for such values.  "
+"Additional enumerators and structures are also documented there."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:100 ../doc/procps_pids.3:95
+#, no-wrap
+msgid "Usage"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:103
+msgid "The following would be a typical sequence of calls to these interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:108
+#, no-wrap
+msgid ""
+"1. B<procps_new()>\n"
+"2. B<procps_get()>, B<procps_select()> or B<procps_reap()>\n"
+"3. B<procps_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:114
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> "
+"function call.  The B<sort> function parameters I<stacks> and I<numstacked> "
+"would normally be those returned in the `reaped' structure."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:115 ../doc/procps_pids.3:111
+#, no-wrap
+msgid "Caveats"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:118
+msgid ""
+"The B<new>, B<ref>, B<unref>, B<get> and B<select> functions are available "
+"in all five interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:123 ../doc/procps_pids.3:123
+msgid ""
+"For the B<new> and B<unref> functions, the address of an I<info> struct "
+"pointer must be supplied.  With B<new> it must have been initialized to "
+"NULL.  With B<unref> it will be reset to NULL if the reference count reaches "
+"zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:127
+msgid ""
+"In the case of the B<diskstats> interface, a I<name> parameter on the B<get> "
+"and B<select> functions identifies a disk or partition name"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:133
+msgid ""
+"The B<diskstats>, B<slabinfo> and B<stat> interfaces support unpredictable "
+"variable outcomes.  As such, they export a B<reap> function to retrieve "
+"multiple `stacks' with a single invocation.  These same interfaces also "
+"provide a B<sort> function."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:134 ../doc/procps_misc.3:134 ../doc/procps_pids.3:143
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:135 ../doc/procps_pids.3:144
+#, no-wrap
+msgid "Functions Returning an `int'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:138 ../doc/procps_misc.3:138 ../doc/procps_pids.3:147
+msgid ""
+"An error will be indicated by a negative number that is always the inverse "
+"of some well known errno.h value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:142 ../doc/procps_pids.3:151
+msgid ""
+"Success is indicated by a zero return value.  However, the B<ref> and "
+"B<unref> functions return the current I<info> structure reference count."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:143 ../doc/procps_misc.3:139 ../doc/procps_pids.3:152
+#, no-wrap
+msgid "Functions Returning an `address'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:146 ../doc/procps_misc.3:142 ../doc/procps_pids.3:155
+msgid ""
+"An error will be indicated by a NULL return pointer with the reason found in "
+"the formal errno value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:148
+msgid "Success is indicated by a pointer to the named structure."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:149 ../doc/procps_pids.3:160
+#, no-wrap
+msgid "DEBUGGING"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:155 ../doc/procps_pids.3:166
+msgid ""
+"To aid in program development, there is a provision that can help ensure "
+"`result' member references agree with library expectations.  It assumes that "
+"a supplied macro in the header file is used to access the `result' value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:158 ../doc/procps_pids.3:169
+msgid ""
+"This feature can be activated through either of the following methods and "
+"any discrepancies will be wrtten to B<stderr>."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:159 ../doc/procps_pids.3:170
+#, fuzzy, no-wrap
+#| msgid "1"
+msgid "1)"
+msgstr "1"
+
+#. type: Plain text
+#: ../doc/procps.3:162 ../doc/procps_pids.3:173
+msgid ""
+"Add CFLAGS='-DXTRA_PROCPS_DEBUG' to any other ./configure options employed."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:163 ../doc/procps_pids.3:174
+#, fuzzy, no-wrap
+#| msgid "2"
+msgid "2)"
+msgstr "2"
+
+#. type: Plain text
+#: ../doc/procps.3:166
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the named interface includes."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:171 ../doc/procps_pids.3:182
+msgid ""
+"This verification feature incurs substantial overhead.  Therefore, it is "
+"important that it I<not> be activated for a production/release build."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:175
+#, fuzzy
+#| msgid "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+msgid "B<procps_misc>(3)  B<procps_pids>(3)  B<proc>(5)."
+msgstr "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+
+#. type: TH
+#: ../doc/procps_misc.3:20
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_MISC"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:26
+msgid "procps_misc - API for miscellaneous information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:29
+#, no-wrap
+msgid "B<#include E<lt>procps/misc.hE<gt>>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:31
+#, no-wrap
+msgid "Platform Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:37
+#, no-wrap
+msgid ""
+"B<long         procps_cpu_count (void);>\n"
+"B<long         procps_hertz_get (void);>\n"
+"B<unsigned int procps_pid_length (void);>\n"
+"B<int          procps_linux_version (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:40
+#, no-wrap
+msgid "Runtime Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:46
+#, no-wrap
+msgid ""
+"B<int    procps_loadavg (double * >I<av1>B<, double * >I<av5>B<, double * >I<av15>B<);>\n"
+"B<int    procps_uptime (double * >I<uptime_secs>B<, double * >I<idle_secs>B<);>\n"
+"B<char * procps_uptime_sprint (void);>\n"
+"B<char * procps_uptime_sprint_short (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:49
+#, no-wrap
+msgid "Namespace Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:54
+#, no-wrap
+msgid ""
+"B<int          procps_ns_get_id (const char * >I<name>B<);>\n"
+"B<const char * procps_ns_get_name (int >I<id>B<);>\n"
+"B<int          procps_ns_read_pid (int >I<pid>B<, struct procps_ns * >I<nsp>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:57
+#, no-wrap
+msgid "Link with I<-lprocps>.\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:63
+msgid ""
+"B<procps_cpu_count>()  returns the number of CPUs that are currently online "
+"as B<sysconf(>I<_SC_NPROCESSORS_ONLY>B<)> or an assumed I<1>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:69
+msgid ""
+"B<procps_hertz_get>()  returns the number of clock ticks per second as "
+"B<sysconf(>I<_SC_CLK_TCK>B<)> or an assumed I<100>.  Dividing tics by this "
+"value yields seconds."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:74
+msgid ""
+"B<procps_pid_length>()  returns the maximum string length for a PID on the "
+"system. For example, if the largest possible PID value on was 123, then the "
+"length would be 3. If the file I</proc/sys/kernel/pid_max> is unreadable, "
+"the value is assumed to be I<5>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:83
+msgid ""
+"B<procps_linux_version>()  returns the current Linux version as an encoded "
+"integer. On non-Linux systems that have an emulated proc filesystem this "
+"function returns the version of the Linux emulation instead.  The version "
+"consists of three positive integers representing the major, minor and patch "
+"levels.  The following macros are provided for encoding a given Linux "
+"version or separating out the components of the current version."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:86
+msgid "LINUX_VERSION(\\ major\\ ,\\ minor\\ ,\\ patch\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:88
+msgid "LINUX_VERSION_MAJOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:90
+msgid "LINUX_VERSION_MINOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:92
+msgid "LINUX_VERSION_PATCH(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:97
+msgid ""
+"B<procps_loadavg>()  fetches the system load average and puts the 1, 5 and "
+"15 minute averages into location(s) specified by any pointer which is not "
+"I<NULL>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:102
+msgid ""
+"B<procps_uptime>()  returns uptime and/or idle seconds into location(s) "
+"specified by any pointer which is not I<NULL>.  The B<sprint> varieties "
+"return a human-readable string in one of two forms."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:105
+msgid "HH:MM:SS up HH:MM, # users, load average: 1, 5, 15 MM averages"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:107
+msgid "up HH, MM"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:111
+msgid ""
+"B<procps_ns_get_id>()  returns the integer id (enum namespace_type) of the "
+"namespace for the given namespace I<name>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:114
+msgid ""
+"B<procps_ns_get_name>()  returns the name of the namespace for the given "
+"I<id> (enum namespace_type)."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:119
+msgid ""
+"B<procps_ns_read_pid>()  returns the inodes for the namespaces of the given "
+"process in the procps_ns structure pointed to by I<nsp>.  Those inodes will "
+"appear in the order proscribed by enum namespace_type."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:130
+#, no-wrap
+msgid ""
+"enum namespace_type {\n"
+"    PROCPS_NS_IPC,\n"
+"    PROCPS_NS_MNT,\n"
+"    PROCPS_NS_NET,\n"
+"    PROCPS_NS_PID,\n"
+"    PROCPS_NS_USER,\n"
+"    PROCPS_NS_UTS\n"
+"};\n"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps_misc.3:135
+#, no-wrap
+msgid "Functions Returning an `int' or `long'"
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:144
+#, fuzzy, no-wrap
+#| msgid "I</proc/slabinfo>"
+msgid "I</proc/loadavg>"
+msgstr "I</proc/slabinfo>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:147
+msgid "The raw values for load average."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:147
+#, no-wrap
+msgid "I</proc/sys/kernel/osrelease>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:150
+msgid "Contains the release version of the Linux kernel or proc filesystem."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:150
+#, fuzzy, no-wrap
+#| msgid "I</proc/sys>"
+msgid "I</proc/sys/kernel/pid_max>"
+msgstr "I</proc/sys>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:153
+msgid ""
+"Contains the value at which PIDs wrap around, one greater than the maximum "
+"PID value."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:153
+#, fuzzy, no-wrap
+#| msgid "I</proc>"
+msgid "I</proc/uptime>"
+msgstr "I</proc>"
+
+#. type: Plain text
+#: ../doc/procps_misc.3:156
+msgid "The raw values for uptime and idle time."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:156
+#, no-wrap
+msgid "I</proc/E<lt>PIDE<gt>/ns>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:159
+msgid "contains the set of namespaces for a particular B<PID>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:163
+#, fuzzy
+#| msgid "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+msgid "B<procps>(3).  B<procps_pids>(3).  B<proc>(5)."
+msgstr "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+
+#. type: TH
+#: ../doc/procps_pids.3:19
+#, fuzzy, no-wrap
+#| msgid "PROCPS_USERLEN"
+msgid "PROCPS_PIDS"
+msgstr "PROCPS_USERLEN"
+
+#. type: Plain text
+#: ../doc/procps_pids.3:25
+msgid "procps_pids - API to access process information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:29
+#, no-wrap
+msgid "#include E<lt>procps/pids.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:33
+#, no-wrap
+msgid ""
+"B<int procps_pids_new   (struct pids_info **>I<info>B<, enum pids_item *>I<items>B<, int >I<numitems>B<);>\n"
+"B<int procps_pids_ref   (struct pids_info  *>I<info>B<);>\n"
+"B<int procps_pids_unref (struct pids_info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:38
+#, no-wrap
+msgid ""
+"B<struct pids_stack *procps_pids_get (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:42
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_reap (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:48
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_select (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    unsigned *>I<these>B<,>\n"
+"B<    int >I<numthese>B<,>\n"
+"B<    enum pids_select_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:55
+#, no-wrap
+msgid ""
+"B<struct pids_stack **procps_pids_sort (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    struct pids_stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum pids_item >I<sortitem>B<,>\n"
+"B<    enum pids_sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:61
+#, no-wrap
+msgid ""
+"B<int procps_pids_reset (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_item *>I<newitems>B<,>\n"
+"B<    int >I<newnumitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:65
+#, no-wrap
+msgid ""
+"B<struct pids_stack *fatal_proc_unmounted (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    int >I<return_self>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:77
+msgid ""
+"Central to this interface is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:94
+msgid ""
+"The pids.h file will be an essential document during user program "
+"development.  There you will find available items, their return type (the "
+"`result' struct member name) and the source for such values.  Additional "
+"enumerators and structures are also documented there."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:98
+msgid "The following would be a typical sequence of calls to this interface."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:104
+#, no-wrap
+msgid ""
+"1. B<fatal_proc_unmounted()>\n"
+"2. B<procps_pids_new()>\n"
+"3. B<procps_pids_get()>, B<procps_pids_reap()> or B<procps_pids_select()>\n"
+"4. B<procps_pids_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:110
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> or "
+"B<select> function call.  The B<sort> function parameters I<stacks> and "
+"I<numstacked> would normally be those returned in the `pids_fetch' structure."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:118
+msgid ""
+"The E<lt>pidsE<gt> API differs from others in that those items of interest "
+"must be provided at B<new> or B<reset> time, the latter being unique to this "
+"API.  If either the I<items> or I<numitems> parameter is zero at B<new> "
+"time, then B<reset> becomes mandatory before issuing any other call."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:127
+msgid ""
+"The B<get> function is an iterator, for successive PIDs/TIDs, returning "
+"those items previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:134
+msgid ""
+"The B<select> function requires an array of PIDs or UIDs as I<these> along "
+"with I<numthese> to identify which processes are to be fetched.  This "
+"function then operates as a subset of B<reap> while returning those items "
+"previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:142
+msgid ""
+"Lastly, a B<fatal_proc_unmounted> function may be called before any other "
+"function to ensure that the /proc/ directory is mounted.  As such, the "
+"I<info> parameter would be NULL and the I<return_self> parameter zero.  If, "
+"however, some items are desired for the issuing program (a I<return_self> "
+"other than zero) then the B<new> call must precede it to obtain the required "
+"I<info> pointer."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:159
+msgid ""
+"Success is indicated by a pointer to the named structure.  However, if one "
+"survives the B<fatal_proc_unmounted> call, NULL is always returned when "
+"I<return_self> is zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:177
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the #include E<lt>procps/pids.hE<gt>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:186
+#, fuzzy
+#| msgid "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+msgid "B<procps>(3)  B<procps_misc>(3)  B<proc>(5)."
+msgstr "B<pgrep>(1), B<pstree>(1), B<top>(1), B<proc>(5)."
+
 #~ msgid "Please send bug reports to E<.MT procps@freelists.org> E<.ME>"
 #~ msgstr ""
 #~ "Про вади, будь ласка, повідомляйте на адресу E<.MT procps@freelists.org> "
@@ -14920,8 +15695,5 @@ msgstr ""
 #~ msgid "2019-09-21"
 #~ msgstr "21 вересня 2019 року"
 
-#~ msgid "May 2012"
-#~ msgstr "травень 2012 року"
-
 #~ msgid "2018-03-03"
 #~ msgstr "3 березня 2018 року"
index 5ef856af3b75fa329d255f69e4021bf8f5034a9b..50f2a70e7aa9fb312b4ac8978ea091a65c4847b2 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: procps-ng-man 3.3.10-rc3\n"
 "Report-Msgid-Bugs-To: Procps list <procps@freelists.org>\n"
-"POT-Creation-Date: 2021-02-15 21:26+1100\n"
+"POT-Creation-Date: 2021-02-15 21:41+1100\n"
 "PO-Revision-Date: 2015-10-30 09:26-0400\n"
 "Last-Translator: Mingye Wang (Arthur2e5) <arthur200126@gmail.com>\n"
 "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
@@ -47,12 +47,12 @@ msgstr "procps-ng"
 msgid "User Commands"
 msgstr "用户命令"
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:6 ../kill.1:9 ../pgrep.1:11 ../pidof.1:19 ../pmap.1:9 ../pwdx.1:7
 #: ../skill.1:10 ../slabtop.1:6 ../sysctl.8:10 ../sysctl.conf.5:10 ../tload.1:5
 #: ../uptime.1:4 ../vmstat.8:4 ../w.1:4 ../watch.1:2 ../ps/ps.1:27
-#: ../top/top.1:70
+#: ../top/top.1:70 ../doc/procps.3:23 ../doc/procps_misc.3:24
+#: ../doc/procps_pids.3:23
 #, no-wrap
 msgid "NAME"
 msgstr "名称"
@@ -62,12 +62,12 @@ msgstr "名称"
 msgid "free - Display amount of free and used memory in the system"
 msgstr ""
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:8 ../kill.1:11 ../pgrep.1:13 ../pidof.1:21 ../pmap.1:11
 #: ../pwdx.1:9 ../skill.1:12 ../slabtop.1:8 ../sysctl.8:12 ../tload.1:7
 #: ../uptime.1:6 ../vmstat.8:6 ../w.1:6 ../watch.1:4 ../ps/ps.1:29
-#: ../top/top.1:75
+#: ../top/top.1:75 ../doc/procps.3:26 ../doc/procps_misc.3:26
+#: ../doc/procps_pids.3:26
 #, no-wrap
 msgid "SYNOPSIS"
 msgstr "摘要"
@@ -77,12 +77,12 @@ msgstr "摘要"
 msgid "B<free> [I<options>]"
 msgstr ""
 
-#.  ----------------------------------------------------------------------
 #. type: SH
 #: ../free.1:11 ../kill.1:14 ../pgrep.1:22 ../pidof.1:34 ../pmap.1:14
 #: ../skill.1:22 ../slabtop.1:11 ../sysctl.8:18 ../sysctl.conf.5:12
 #: ../tload.1:10 ../uptime.1:9 ../vmstat.8:10 ../w.1:9 ../watch.1:7
-#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82
+#: ../ps/ps.1:33 ../ps/ps.1:1007 ../top/top.1:82 ../doc/procps.3:75
+#: ../doc/procps_misc.3:58 ../doc/procps_pids.3:70
 #, no-wrap
 msgid "DESCRIPTION"
 msgstr "描述"
@@ -453,6 +453,7 @@ msgstr ""
 #. type: SH
 #: ../free.1:133 ../slabtop.1:77 ../sysctl.8:154 ../sysctl.conf.5:57
 #: ../tload.1:34 ../uptime.1:39 ../vmstat.8:201 ../w.1:74
+#: ../doc/procps_misc.3:143
 #, no-wrap
 msgid "FILES"
 msgstr "文件"
@@ -497,7 +498,8 @@ msgstr ""
 #: ../free.1:145 ../kill.1:84 ../pgrep.1:277 ../pidof.1:78 ../pmap.1:79
 #: ../pwdx.1:19 ../skill.1:102 ../slabtop.1:81 ../sysctl.8:168
 #: ../sysctl.conf.5:76 ../tload.1:37 ../uptime.1:56 ../vmstat.8:208 ../w.1:81
-#: ../ps/ps.1:1958
+#: ../ps/ps.1:1958 ../doc/procps.3:172 ../doc/procps_misc.3:160
+#: ../doc/procps_pids.3:183
 #, no-wrap
 msgid "SEE ALSO"
 msgstr "参见"
@@ -14169,3 +14171,763 @@ msgid ""
 "B<free>(1), B<ps>(1), B<uptime>(1), B<atop>(1), B<slabtop>(1), B<vmstat>(8), "
 "B<w>(1)"
 msgstr ""
+
+#. type: TH
+#: ../doc/procps.3:19
+#, no-wrap
+msgid "PROCPS"
+msgstr ""
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, no-wrap
+msgid "January 2021"
+msgstr ""
+
+#. type: TH
+#: ../doc/procps.3:19 ../doc/procps_misc.3:20 ../doc/procps_pids.3:19
+#, no-wrap
+msgid "libproc-2"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:25
+msgid "procps - API to access system level information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:30
+msgid ""
+"Five distinct interfaces are represented in this synopsis and named after "
+"the files they access in the /proc pseudo filesystem: B<diskstats>, "
+"B<meminfo>, B<slabinfo>, B<stat> and B<vmstat>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:34
+#, no-wrap
+msgid "#include E<lt>procps/B<named_interface>.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:38
+#, no-wrap
+msgid ""
+"B<int procps_new   (struct info **>I<info>B<);>\n"
+"B<int procps_ref   (struct info  *>I<info>B<);>\n"
+"B<int procps_unref (struct info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:43
+#, no-wrap
+msgid ""
+"B<struct result *procps_get (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item >I<item>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:49
+#, no-wrap
+msgid ""
+"B<struct stack *procps_select (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   const char *I<name>,      ]   B<diskstats> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:55
+#, no-wrap
+msgid ""
+"B<struct reaped *procps_reap (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"[   enum reap_type I<what>,   ]   B<stat> api only\n"
+"B<    enum item *>I<items>B<,>\n"
+"B<    int >I<numitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:62
+#, no-wrap
+msgid ""
+"B<struct stack **procps_sort (>\n"
+"B<    struct info *>I<info>B<,>\n"
+"B<    struct stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum item >I<sortitem>B<,>\n"
+"B<    enum sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:69
+msgid ""
+"The above functions and structures are generic but the specific "
+"B<named_interface> would also be part of any identifiers.  For example, "
+"`procps_new' would actually be `procps_B<meminfo>_new' and `info' would "
+"really be `B<diskstats>_info', etc."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:72
+msgid ""
+"The same B<named_interface> is used in each header file name with an "
+"appended `.h' suffix."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:74 ../doc/procps_pids.3:69
+msgid "Link with I<-lprocps>."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:76 ../doc/procps_pids.3:71
+#, no-wrap
+msgid "Overview"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:82
+msgid ""
+"Central to these interfaces is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:88 ../doc/procps_pids.3:83
+msgid ""
+"By specifying an array of `items', these structures can be organized as a "
+"`stack', potentially yielding many results with a single function call.  "
+"Thus, a `stack' can be viewed as a variable length record whose content and "
+"order is determined solely by the user."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:93 ../doc/procps_pids.3:88
+msgid ""
+"As part of each interface there are two unique items.  The `noop' and "
+"`extra' items exist to hold user values.  They are never set by the library, "
+"but the `extra' result will be zeroed with each library interaction."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:99
+msgid ""
+"The B<named_interface> header file will be an essential document during user "
+"program development.  There you will find available items, their return type "
+"(the `result' struct member name) and the source for such values.  "
+"Additional enumerators and structures are also documented there."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:100 ../doc/procps_pids.3:95
+#, no-wrap
+msgid "Usage"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:103
+msgid "The following would be a typical sequence of calls to these interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:108
+#, no-wrap
+msgid ""
+"1. B<procps_new()>\n"
+"2. B<procps_get()>, B<procps_select()> or B<procps_reap()>\n"
+"3. B<procps_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:114
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> "
+"function call.  The B<sort> function parameters I<stacks> and I<numstacked> "
+"would normally be those returned in the `reaped' structure."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:115 ../doc/procps_pids.3:111
+#, no-wrap
+msgid "Caveats"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:118
+msgid ""
+"The B<new>, B<ref>, B<unref>, B<get> and B<select> functions are available "
+"in all five interfaces."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:123 ../doc/procps_pids.3:123
+msgid ""
+"For the B<new> and B<unref> functions, the address of an I<info> struct "
+"pointer must be supplied.  With B<new> it must have been initialized to "
+"NULL.  With B<unref> it will be reset to NULL if the reference count reaches "
+"zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:127
+msgid ""
+"In the case of the B<diskstats> interface, a I<name> parameter on the B<get> "
+"and B<select> functions identifies a disk or partition name"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:133
+msgid ""
+"The B<diskstats>, B<slabinfo> and B<stat> interfaces support unpredictable "
+"variable outcomes.  As such, they export a B<reap> function to retrieve "
+"multiple `stacks' with a single invocation.  These same interfaces also "
+"provide a B<sort> function."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:134 ../doc/procps_misc.3:134 ../doc/procps_pids.3:143
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:135 ../doc/procps_pids.3:144
+#, no-wrap
+msgid "Functions Returning an `int'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:138 ../doc/procps_misc.3:138 ../doc/procps_pids.3:147
+msgid ""
+"An error will be indicated by a negative number that is always the inverse "
+"of some well known errno.h value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:142 ../doc/procps_pids.3:151
+msgid ""
+"Success is indicated by a zero return value.  However, the B<ref> and "
+"B<unref> functions return the current I<info> structure reference count."
+msgstr ""
+
+#. type: SS
+#: ../doc/procps.3:143 ../doc/procps_misc.3:139 ../doc/procps_pids.3:152
+#, no-wrap
+msgid "Functions Returning an `address'"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:146 ../doc/procps_misc.3:142 ../doc/procps_pids.3:155
+msgid ""
+"An error will be indicated by a NULL return pointer with the reason found in "
+"the formal errno value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:148
+msgid "Success is indicated by a pointer to the named structure."
+msgstr ""
+
+#. type: SH
+#: ../doc/procps.3:149 ../doc/procps_pids.3:160
+#, no-wrap
+msgid "DEBUGGING"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:155 ../doc/procps_pids.3:166
+msgid ""
+"To aid in program development, there is a provision that can help ensure "
+"`result' member references agree with library expectations.  It assumes that "
+"a supplied macro in the header file is used to access the `result' value."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:158 ../doc/procps_pids.3:169
+msgid ""
+"This feature can be activated through either of the following methods and "
+"any discrepancies will be wrtten to B<stderr>."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:159 ../doc/procps_pids.3:170
+#, fuzzy, no-wrap
+#| msgid "1"
+msgid "1)"
+msgstr "1"
+
+#. type: Plain text
+#: ../doc/procps.3:162 ../doc/procps_pids.3:173
+msgid ""
+"Add CFLAGS='-DXTRA_PROCPS_DEBUG' to any other ./configure options employed."
+msgstr ""
+
+#. type: IP
+#: ../doc/procps.3:163 ../doc/procps_pids.3:174
+#, fuzzy, no-wrap
+#| msgid "2"
+msgid "2)"
+msgstr "2"
+
+#. type: Plain text
+#: ../doc/procps.3:166
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the named interface includes."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:171 ../doc/procps_pids.3:182
+msgid ""
+"This verification feature incurs substantial overhead.  Therefore, it is "
+"important that it I<not> be activated for a production/release build."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps.3:175
+msgid "B<procps_misc>(3)  B<procps_pids>(3)  B<proc>(5)."
+msgstr ""
+
+#. type: TH
+#: ../doc/procps_misc.3:20
+#, no-wrap
+msgid "PROCPS_MISC"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:26
+msgid "procps_misc - API for miscellaneous information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:29
+#, no-wrap
+msgid "B<#include E<lt>procps/misc.hE<gt>>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:31
+#, no-wrap
+msgid "Platform Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:37
+#, no-wrap
+msgid ""
+"B<long         procps_cpu_count (void);>\n"
+"B<long         procps_hertz_get (void);>\n"
+"B<unsigned int procps_pid_length (void);>\n"
+"B<int          procps_linux_version (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:40
+#, no-wrap
+msgid "Runtime Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:46
+#, no-wrap
+msgid ""
+"B<int    procps_loadavg (double * >I<av1>B<, double * >I<av5>B<, double * >I<av15>B<);>\n"
+"B<int    procps_uptime (double * >I<uptime_secs>B<, double * >I<idle_secs>B<);>\n"
+"B<char * procps_uptime_sprint (void);>\n"
+"B<char * procps_uptime_sprint_short (void);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:49
+#, no-wrap
+msgid "Namespace Particulars\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:54
+#, no-wrap
+msgid ""
+"B<int          procps_ns_get_id (const char * >I<name>B<);>\n"
+"B<const char * procps_ns_get_name (int >I<id>B<);>\n"
+"B<int          procps_ns_read_pid (int >I<pid>B<, struct procps_ns * >I<nsp>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:57
+#, no-wrap
+msgid "Link with I<-lprocps>.\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:63
+msgid ""
+"B<procps_cpu_count>()  returns the number of CPUs that are currently online "
+"as B<sysconf(>I<_SC_NPROCESSORS_ONLY>B<)> or an assumed I<1>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:69
+msgid ""
+"B<procps_hertz_get>()  returns the number of clock ticks per second as "
+"B<sysconf(>I<_SC_CLK_TCK>B<)> or an assumed I<100>.  Dividing tics by this "
+"value yields seconds."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:74
+msgid ""
+"B<procps_pid_length>()  returns the maximum string length for a PID on the "
+"system. For example, if the largest possible PID value on was 123, then the "
+"length would be 3. If the file I</proc/sys/kernel/pid_max> is unreadable, "
+"the value is assumed to be I<5>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:83
+msgid ""
+"B<procps_linux_version>()  returns the current Linux version as an encoded "
+"integer. On non-Linux systems that have an emulated proc filesystem this "
+"function returns the version of the Linux emulation instead.  The version "
+"consists of three positive integers representing the major, minor and patch "
+"levels.  The following macros are provided for encoding a given Linux "
+"version or separating out the components of the current version."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:86
+msgid "LINUX_VERSION(\\ major\\ ,\\ minor\\ ,\\ patch\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:88
+msgid "LINUX_VERSION_MAJOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:90
+msgid "LINUX_VERSION_MINOR(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:92
+msgid "LINUX_VERSION_PATCH(\\ ver\\ )"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:97
+msgid ""
+"B<procps_loadavg>()  fetches the system load average and puts the 1, 5 and "
+"15 minute averages into location(s) specified by any pointer which is not "
+"I<NULL>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:102
+msgid ""
+"B<procps_uptime>()  returns uptime and/or idle seconds into location(s) "
+"specified by any pointer which is not I<NULL>.  The B<sprint> varieties "
+"return a human-readable string in one of two forms."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:105
+msgid "HH:MM:SS up HH:MM, # users, load average: 1, 5, 15 MM averages"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:107
+msgid "up HH, MM"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:111
+msgid ""
+"B<procps_ns_get_id>()  returns the integer id (enum namespace_type) of the "
+"namespace for the given namespace I<name>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:114
+msgid ""
+"B<procps_ns_get_name>()  returns the name of the namespace for the given "
+"I<id> (enum namespace_type)."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:119
+msgid ""
+"B<procps_ns_read_pid>()  returns the inodes for the namespaces of the given "
+"process in the procps_ns structure pointed to by I<nsp>.  Those inodes will "
+"appear in the order proscribed by enum namespace_type."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:130
+#, no-wrap
+msgid ""
+"enum namespace_type {\n"
+"    PROCPS_NS_IPC,\n"
+"    PROCPS_NS_MNT,\n"
+"    PROCPS_NS_NET,\n"
+"    PROCPS_NS_PID,\n"
+"    PROCPS_NS_USER,\n"
+"    PROCPS_NS_UTS\n"
+"};\n"
+msgstr ""
+
+#. type: SS
+#: ../doc/procps_misc.3:135
+#, no-wrap
+msgid "Functions Returning an `int' or `long'"
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:144
+#, no-wrap
+msgid "I</proc/loadavg>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:147
+msgid "The raw values for load average."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:147
+#, no-wrap
+msgid "I</proc/sys/kernel/osrelease>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:150
+msgid "Contains the release version of the Linux kernel or proc filesystem."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:150
+#, no-wrap
+msgid "I</proc/sys/kernel/pid_max>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:153
+msgid ""
+"Contains the value at which PIDs wrap around, one greater than the maximum "
+"PID value."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:153
+#, no-wrap
+msgid "I</proc/uptime>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:156
+msgid "The raw values for uptime and idle time."
+msgstr ""
+
+#. type: TP
+#: ../doc/procps_misc.3:156
+#, no-wrap
+msgid "I</proc/E<lt>PIDE<gt>/ns>"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:159
+msgid "contains the set of namespaces for a particular B<PID>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_misc.3:163
+msgid "B<procps>(3).  B<procps_pids>(3).  B<proc>(5)."
+msgstr ""
+
+#. type: TH
+#: ../doc/procps_pids.3:19
+#, no-wrap
+msgid "PROCPS_PIDS"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:25
+msgid "procps_pids - API to access process information in the /proc filesystem"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:29
+#, no-wrap
+msgid "#include E<lt>procps/pids.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:33
+#, no-wrap
+msgid ""
+"B<int procps_pids_new   (struct pids_info **>I<info>B<, enum pids_item *>I<items>B<, int >I<numitems>B<);>\n"
+"B<int procps_pids_ref   (struct pids_info  *>I<info>B<);>\n"
+"B<int procps_pids_unref (struct pids_info **>I<info>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:38
+#, no-wrap
+msgid ""
+"B<struct pids_stack *procps_pids_get (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:42
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_reap (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_fetch_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:48
+#, no-wrap
+msgid ""
+"B<struct pids_fetch *procps_pids_select (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    unsigned *>I<these>B<,>\n"
+"B<    int >I<numthese>B<,>\n"
+"B<    enum pids_select_type >I<which>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:55
+#, no-wrap
+msgid ""
+"B<struct pids_stack **procps_pids_sort (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    struct pids_stack *>I<stacks[]>B<,>\n"
+"B<    int >I<numstacked>B<,>\n"
+"B<    enum pids_item >I<sortitem>B<,>\n"
+"B<    enum pids_sort_order >I<order>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:61
+#, no-wrap
+msgid ""
+"B<int procps_pids_reset (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    enum pids_item *>I<newitems>B<,>\n"
+"B<    int >I<newnumitems>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:65
+#, no-wrap
+msgid ""
+"B<struct pids_stack *fatal_proc_unmounted (>\n"
+"B<    struct pids_info *>I<info>B<,>\n"
+"B<    int >I<return_self>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:77
+msgid ""
+"Central to this interface is a simple `result' structure reflecting an "
+"`item' plus its value (in a union with standard C language types as "
+"members).  All `result' structures are automatically allocated and provided "
+"by the library."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:94
+msgid ""
+"The pids.h file will be an essential document during user program "
+"development.  There you will find available items, their return type (the "
+"`result' struct member name) and the source for such values.  Additional "
+"enumerators and structures are also documented there."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:98
+msgid "The following would be a typical sequence of calls to this interface."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:104
+#, no-wrap
+msgid ""
+"1. B<fatal_proc_unmounted()>\n"
+"2. B<procps_pids_new()>\n"
+"3. B<procps_pids_get()>, B<procps_pids_reap()> or B<procps_pids_select()>\n"
+"4. B<procps_pids_unref()>\n"
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:110
+msgid ""
+"Optionally, a user may choose to sort results returned from a B<reap> or "
+"B<select> function call.  The B<sort> function parameters I<stacks> and "
+"I<numstacked> would normally be those returned in the `pids_fetch' structure."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:118
+msgid ""
+"The E<lt>pidsE<gt> API differs from others in that those items of interest "
+"must be provided at B<new> or B<reset> time, the latter being unique to this "
+"API.  If either the I<items> or I<numitems> parameter is zero at B<new> "
+"time, then B<reset> becomes mandatory before issuing any other call."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:127
+msgid ""
+"The B<get> function is an iterator, for successive PIDs/TIDs, returning "
+"those items previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:134
+msgid ""
+"The B<select> function requires an array of PIDs or UIDs as I<these> along "
+"with I<numthese> to identify which processes are to be fetched.  This "
+"function then operates as a subset of B<reap> while returning those items "
+"previously identified via B<new> or B<reset>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:142
+msgid ""
+"Lastly, a B<fatal_proc_unmounted> function may be called before any other "
+"function to ensure that the /proc/ directory is mounted.  As such, the "
+"I<info> parameter would be NULL and the I<return_self> parameter zero.  If, "
+"however, some items are desired for the issuing program (a I<return_self> "
+"other than zero) then the B<new> call must precede it to obtain the required "
+"I<info> pointer."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:159
+msgid ""
+"Success is indicated by a pointer to the named structure.  However, if one "
+"survives the B<fatal_proc_unmounted> call, NULL is always returned when "
+"I<return_self> is zero."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:177
+msgid ""
+"Add #include E<lt>procps/xtra-procps-debug.hE<gt> to any program I<after> "
+"the #include E<lt>procps/pids.hE<gt>."
+msgstr ""
+
+#. type: Plain text
+#: ../doc/procps_pids.3:186
+msgid "B<procps>(3)  B<procps_misc>(3)  B<proc>(5)."
+msgstr ""