LXPROC(7FS)LXPROC(7FS)NAMElxproc - a loosely Linux-compatible /proc
SYNOPSIS
mount ("lxproc", directory, MS_DATA, "lxproc", NULL, 0);
DESCRIPTIONlxproc is an implementation of the /proc filesystem that loosely
matches the Linux semantics of providing human-readable text files that
correspond to elements of the system. As with both proc(4) and Linux
/proc, lxproc makes available a directory for every process, with each
directory containing a number of files; like Linux /proc but unlike
proc(4), lxproc also makes available a number of files related to sys‐
tem-wide information. To ascertain the meaning and structure of the
files provided via lxproc, users should consult the Linux documenta‐
tion.
The lxproc compatibility layer is provided only as a best-effort for
simple Linux /proc readers; it is not intended to exactly mimic Linux
semantics and nor does it attempt to somehow fool a consumer into
believing that it is operating within a Linux environment. As such,
lxproc should only be used by Linux-specific programs that are willing
to trade precision in understanding the system in return for Linux com‐
patibility. To programmatically understand the system precisely and in
terms of its native constructs, one should not use lxproc, but rather
proc(4) or kstat(3KSTAT). To understand a process or group of pro‐
cesses from either a shell script or the command line, one should not
use lxproc, but rather proc(4)-based tools like prstat(1M), pfiles(1),
pargs(1), pmap(1), ptree(1), plimit(1), pflags(1), pcred(1), pstack(1),
pldd(1), psig(1), or pwdx(1). To understand system-wide constructs
from either a shell script or the command line, one should not use
lxproc, but rather kstat(3KSTAT)-based tools like kstat(1M),
mpstat(1M), iostat(1M), netstat(1M) or psrinfo(1M).
Like /proc, lxproc can be mounted on any mount point, but the preferred
mount point is /system/lxproc; if a zone brand elects to mount it by
default, this will (or should) generally be the mount point.
lxproc can be mounted with the command:
mount -Flxproc lxproc directory
SEE ALSOdf(1M), iostat(1M), kstat(1M), mpstat(1M), mount(1M), netstat(1M),
pargs(1), pcred(1), pfiles(1), pflags(1), pldd(1), plimit(1), pmap(1),
prstat(1M), psig(1), psrinfo(1M), pstack(1), ptree(1), pwdx(1),
mount(2), umount(2), kstat(3KSTAT), proc(4), kstat(9S)NOTES
When choosing between offering Linux compatibility and telling the
truth, lxproc emphatically picks the truth. A particular glaring exam‐
ple of this is the Linux notion of "tasks" (that is, threads), which --
due to historical misadventures on Linux -- allocate their identifiers
from the process identifier space. (That is, each thread has in effect
a pid.) Some Linux /proc readers have come to depend on this
attribute, and become confused when threads appear with proper identi‐
fiers, so lxproc simply opts for the pre-2.6 behavior, and does not
present the tasks directory at all.
April 25, 2012 LXPROC(7FS)