.\" to see what information could be imported from that file
.\" into this file.
.\"
-.TH PROC 5 2017-09-15 "Linux" "Linux Programmer's Manual"
+.TH PROC 5 2019-03-06 "Linux" "Linux Programmer's Manual"
.SH NAME
proc \- process information pseudo-filesystem
.SH DESCRIPTION
In the latter case, there is nothing in this file:
that is, a read on this file will return 0 characters.
The command-line arguments appear in this file as a set of
-strings separated by null bytes (\(aq\\0\(aq),
+strings separated by null bytes (\(aq\e0\(aq),
with a further null byte after the last string.
.TP
.IR /proc/[pid]/comm " (since Linux 2.6.33)"
This file contains the initial environment that was set
when the currently executing program was started via
.BR execve (2).
-The entries are separated by null bytes (\(aq\\0\(aq),
+The entries are separated by null bytes (\(aq\e0\(aq),
and there may be a null byte at the end.
Thus, to print out the environment of process 1, you would do:
.IP
.IR [stack]
The initial process's (also known as the main thread's) stack.
.TP
-.IR [stack:<tid>] " (since Linux 3.4)"
-.\" commit b76437579d1344b612cf1851ae610c636cec7db0
+.IR [stack:<tid>] " (from Linux 3.4 to 4.4)"
+.\" commit b76437579d1344b612cf1851ae610c636cec7db0 (added)
+.\" commit 65376df582174ffcec9e6471bf5b0dd79ba05e4a (removed)
A thread's stack (where the
.IR <tid>
is a thread ID).
It corresponds to the
.IR /proc/[pid]/task/[tid]/
path.
+This field was removed in Linux 4.5, since providing this information
+for a process with large numbers of threads is expensive.
.TP
.IR [vdso]
The virtual dynamically linked shared object.
with an octal escape sequence.
As a result, it is not possible to determine whether the original
pathname contained a newline character or the literal
-.I \\\012
+.I \ee012
character sequence.
.IP
If the mapping is file-backed and the file has been deleted, the string
.BR sysctl (2)
system call.
.IP
-String values may be terminated by either \(aq\\0\(aq or \(aq\\n\(aq.
+String values may be terminated by either \(aq\e0\(aq or \(aq\en\(aq.
.IP
Integer and long values may be written either in decimal or in
hexadecimal notation (e.g. 0x3FFF).
When writing multiple integer or long values, these may be separated
by any of the following whitespace characters:
-\(aq\ \(aq, \(aq\\t\(aq, or \(aq\\n\(aq.
+\(aq\ \(aq, \(aq\et\(aq, or \(aq\en\(aq.
Using other separators leads to the error
.BR EINVAL .
.TP
.SH NOTES
Many files contain strings (e.g., the environment and command line)
that are in the internal format,
-with subfields terminated by null bytes (\(aq\\0\(aq).
+with subfields terminated by null bytes (\(aq\e0\(aq).
When inspecting such files, you may find that the results are more readable
if you use a command of the following form to display them:
.PP
.BR dmesg (1),
.BR find (1),
.BR free (1),
+.BR htop (1),
.BR init (1),
.BR ps (1),
+.BR pstree (1),
.BR tr (1),
.BR uptime (1),
.BR chroot (2),
.BR sysctl (8)
.PP
The Linux kernel source files:
-.IR Documentation/filesystems/proc.txt
+.IR Documentation/filesystems/proc.txt ,
.IR Documentation/sysctl/fs.txt ,
.IR Documentation/sysctl/kernel.txt ,
.IR Documentation/sysctl/net.txt ,