1.\"- 2.\" Copyright (c) 1980, 1990, 1991, 1993, 1994 3.\" The Regents of the University of California. All rights reserved. 4.\" 5.\" Redistribution and use in source and binary forms, with or without 6.\" modification, are permitted provided that the following conditions 7.\" are met: 8.\" 1. Redistributions of source code must retain the above copyright 9.\" notice, this list of conditions and the following disclaimer. 10.\" 2. Redistributions in binary form must reproduce the above copyright 11.\" notice, this list of conditions and the following disclaimer in the 12.\" documentation and/or other materials provided with the distribution. 13.\" 3. Neither the name of the University nor the names of its contributors 14.\" may be used to endorse or promote products derived from this software 15.\" without specific prior written permission. 16.\" 17.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27.\" SUCH DAMAGE. 28.\" 29.\" @(#)ps.1 8.3 (Berkeley) 4/18/94 30.\" 31.Dd April 25, 2023 32.Dt PS 1 33.Os 34.Sh NAME 35.Nm ps 36.Nd process status 37.Sh SYNOPSIS 38.Nm 39.Op Fl -libxo 40.Op Fl aCcdefHhjlmrSTuvwXxZ 41.Op Fl O Ar fmt | Fl o Ar fmt 42.Op Fl G Ar gid Ns Op , Ns Ar gid Ns Ar ... 43.Op Fl J Ar jid Ns Op , Ns Ar jid Ns Ar ... 44.Op Fl M Ar core 45.Op Fl N Ar system 46.Op Fl p Ar pid Ns Op , Ns Ar pid Ns Ar ... 47.Op Fl t Ar tty Ns Op , Ns Ar tty Ns Ar ... 48.Op Fl U Ar user Ns Op , Ns Ar user Ns Ar ... 49.Nm 50.Op Fl -libxo 51.Fl L 52.Sh DESCRIPTION 53The 54.Nm 55utility 56displays a header line, followed by lines containing information about 57all of your 58processes that have controlling terminals. 59If the 60.Fl x 61options is specified, 62.Nm 63will also display processes that do not have controlling terminals. 64.Pp 65A different set of processes can be selected for display by using any 66combination of the 67.Fl a , G , J , p , T , t , 68and 69.Fl U 70options. 71If more than one of these options are given, then 72.Nm 73will select all processes which are matched by at least one of the 74given options. 75.Pp 76For the processes which have been selected for display, 77.Nm 78will usually display one line per process. 79The 80.Fl H 81option may result in multiple output lines (one line per thread) for 82some processes. 83By default all of these output lines are sorted first by controlling 84terminal, then by process ID. 85The 86.Fl m , r , u , 87and 88.Fl v 89options will change the sort order. 90If more than one sorting option was given, then the selected processes 91will be sorted by the last sorting option which was specified. 92.Pp 93For the processes which have been selected for display, the information 94to display is selected based on a set of keywords (see the 95.Fl L , O , 96and 97.Fl o 98options). 99The default output format includes, for each process, the process' ID, 100controlling terminal, state, CPU time (including both user and system time) 101and associated command. 102.Pp 103If the 104.Nm 105process is associated with a terminal, the default output width is that of the 106terminal; otherwise the output width is unlimited. 107See also the 108.Fl w 109option. 110.Pp 111The options are as follows: 112.Bl -tag -width indent 113.It Fl -libxo 114Generate output via 115.Xr libxo 3 116in a selection of different human and machine readable formats. 117See 118.Xr xo_parse_args 3 119for details on command line arguments. 120.It Fl a 121Display information about other users' processes as well as your own. 122If the 123.Va security.bsd.see_other_uids 124sysctl is set to zero, this option is honored only if the UID of the user is 0. 125.It Fl c 126Change the 127.Dq command 128column output to just contain the executable name, 129rather than the full command line. 130.It Fl C 131Change the way the CPU percentage is calculated by using a 132.Dq raw 133CPU calculation that ignores 134.Dq resident 135time (this normally has 136no effect). 137.It Fl d 138Arrange processes into descendancy order and prefix each command with 139indentation text showing sibling and parent/child relationships as a tree. 140If either of the 141.Fl m 142and 143.Fl r 144options are also used, they control how sibling processes are sorted 145relative to each other. 146Note that this option has no effect if the 147.Dq command 148column is not the last column displayed. 149.It Fl e 150Display the environment as well. 151.It Fl f 152Show command-line and environment information about swapped out processes. 153This option is honored only if the UID of the user is 0. 154.It Fl G 155Display information about processes which are running with the specified 156real group IDs. 157.It Fl H 158Show all of the threads associated with each process. 159.It Fl h 160Repeat the information header as often as necessary to guarantee one 161header per page of information. 162.It Fl j 163Print information associated with the following keywords: 164.Cm user , pid , ppid , pgid , sid , jobc , state , tt , time , 165and 166.Cm command . 167.It Fl J 168Display information about processes which match the specified jail IDs. 169This may be either the 170.Cm jid 171or 172.Cm name 173of the jail. 174Use 175.Fl J 176.Sy 0 177to display only host processes. 178This flag implies 179.Fl x 180by default. 181.It Fl L 182List the set of keywords available for the 183.Fl O 184and 185.Fl o 186options. 187.It Fl l 188Display information associated with the following keywords: 189.Cm uid , pid , ppid , cpu , pri , nice , vsz , rss , mwchan , state , 190.Cm tt , time , 191and 192.Cm command . 193.It Fl M 194Extract values associated with the name list from the specified core 195instead of the currently running system. 196.It Fl m 197Sort by memory usage, instead of the combination of controlling 198terminal and process ID. 199.It Fl N 200Extract the name list from the specified system instead of the default, 201which is the kernel image the system has booted from. 202.It Fl O 203Add the information associated with the space or comma separated list 204of keywords specified, after the process ID, 205in the default information 206display. 207Keywords may be appended with an equals 208.Pq Ql = 209sign and a string. 210This causes the printed header to use the specified string instead of 211the standard header. 212.It Fl o 213Display information associated with the space or comma separated 214list of keywords specified. 215The last keyword in the list may be appended with an equals 216.Pq Ql = 217sign and a string that spans the rest of the argument, and can contain 218space and comma characters. 219This causes the printed header to use the specified string instead of 220the standard header. 221Multiple keywords may also be given in the form of more than one 222.Fl o 223option. 224So the header texts for multiple keywords can be changed. 225If all keywords have empty header texts, no header line is written. 226.It Fl p 227Display information about processes which match the specified process IDs. 228.It Fl r 229Sort by current CPU usage, instead of the combination of controlling 230terminal and process ID. 231.It Fl S 232Change the way the process times, namely cputime, systime, and usertime, 233are calculated by summing all exited children to their parent process. 234.It Fl T 235Display information about processes attached to the device associated 236with the standard input. 237.It Fl t 238Display information about processes attached to the specified terminal 239devices. 240Full pathnames, as well as abbreviations (see explanation of the 241.Cm tt 242keyword) can be specified. 243.It Fl U 244Display the processes belonging to the specified usernames. 245.It Fl u 246Display information associated with the following keywords: 247.Cm user , pid , %cpu , %mem , vsz , rss , tt , state , start , time , 248and 249.Cm command . 250The 251.Fl u 252option implies the 253.Fl r 254option. 255.It Fl v 256Display information associated with the following keywords: 257.Cm pid , state , time , sl , re , pagein , vsz , rss , lim , tsiz , 258.Cm %cpu , %mem , 259and 260.Cm command . 261The 262.Fl v 263option implies the 264.Fl m 265option. 266.It Fl w 267Use at least 132 columns to display information, instead of the default which 268is the window size if 269.Nm 270is associated with a terminal. 271If the 272.Fl w 273option is specified more than once, 274.Nm 275will use as many columns as necessary without regard for the window size. 276Note that this option has no effect if the 277.Dq command 278column is not the last column displayed. 279.It Fl X 280When displaying processes matched by other options, skip any processes 281which do not have a controlling terminal. 282This is the default behaviour. 283.It Fl x 284When displaying processes matched by other options, include processes 285which do not have a controlling terminal. 286This is the opposite of the 287.Fl X 288option. 289If both 290.Fl X 291and 292.Fl x 293are specified in the same command, then 294.Nm 295will use the one which was specified last. 296.It Fl Z 297Add 298.Xr mac 4 299label to the list of keywords for which 300.Nm 301will display information. 302.El 303.Pp 304A complete list of the available keywords are listed below. 305Some of these keywords are further specified as follows: 306.Bl -tag -width lockname 307.It Cm %cpu 308The CPU utilization of the process; this is a decaying average over up to 309a minute of previous (real) time. 310Since the time base over which this is computed varies (since processes may 311be very young) it is possible for the sum of all 312.Cm %cpu 313fields to exceed 100%. 314.It Cm %mem 315The percentage of real memory used by this process. 316.It Cm class 317Login class associated with the process. 318.It Cm flags 319The flags associated with the process as in 320the include file 321.In sys/proc.h : 322.Bl -column P_SINGLE_BOUNDARY 0x40000000 323.It Dv "P_ADVLOCK" Ta No "0x00001" Ta "Process may hold a POSIX advisory lock" 324.It Dv "P_CONTROLT" Ta No "0x00002" Ta "Has a controlling terminal" 325.It Dv "P_KPROC" Ta No "0x00004" Ta "Kernel process" 326.It Dv "P_PPWAIT" Ta No "0x00010" Ta "Parent is waiting for child to exec/exit" 327.It Dv "P_PROFIL" Ta No "0x00020" Ta "Has started profiling" 328.It Dv "P_STOPPROF" Ta No "0x00040" Ta "Has thread in requesting to stop prof" 329.It Dv "P_HADTHREADS" Ta No "0x00080" Ta "Has had threads (no cleanup shortcuts)" 330.It Dv "P_SUGID" Ta No "0x00100" Ta "Had set id privileges since last exec" 331.It Dv "P_SYSTEM" Ta No "0x00200" Ta "System proc: no sigs, stats or swapping" 332.It Dv "P_SINGLE_EXIT" Ta No "0x00400" Ta "Threads suspending should exit, not wait" 333.It Dv "P_TRACED" Ta No "0x00800" Ta "Debugged process being traced" 334.It Dv "P_WAITED" Ta No "0x01000" Ta "Someone is waiting for us" 335.It Dv "P_WEXIT" Ta No "0x02000" Ta "Working on exiting" 336.It Dv "P_EXEC" Ta No "0x04000" Ta "Process called exec" 337.It Dv "P_WKILLED" Ta No "0x08000" Ta "Killed, shall go to kernel/user boundary ASAP" 338.It Dv "P_CONTINUED" Ta No "0x10000" Ta "Proc has continued from a stopped state" 339.It Dv "P_STOPPED_SIG" Ta No "0x20000" Ta "Stopped due to SIGSTOP/SIGTSTP" 340.It Dv "P_STOPPED_TRACE" Ta No "0x40000" Ta "Stopped because of tracing" 341.It Dv "P_STOPPED_SINGLE" Ta No "0x80000" Ta "Only one thread can continue" 342.It Dv "P_PROTECTED" Ta No "0x100000" Ta "Do not kill on memory overcommit" 343.It Dv "P_SIGEVENT" Ta No "0x200000" Ta "Process pending signals changed" 344.It Dv "P_SINGLE_BOUNDARY" Ta No "0x400000" Ta "Threads should suspend at user boundary" 345.It Dv "P_HWPMC" Ta No "0x800000" Ta "Process is using HWPMCs" 346.It Dv "P_JAILED" Ta No "0x1000000" Ta "Process is in jail" 347.It Dv "P_TOTAL_STOP" Ta No "0x2000000" Ta "Stopped for system suspend" 348.It Dv "P_INEXEC" Ta No "0x4000000" Ta Process is in Xr execve 2 349.It Dv "P_STATCHILD" Ta No "0x8000000" Ta "Child process stopped or exited" 350.It Dv "P_INMEM" Ta No "0x10000000" Ta "Loaded into memory" 351.It Dv "P_SWAPPINGOUT" Ta No "0x20000000" Ta "Process is being swapped out" 352.It Dv "P_SWAPPINGIN" Ta No "0x40000000" Ta "Process is being swapped in" 353.It Dv "P_PPTRACE" Ta No "0x80000000" Ta "Vforked child issued ptrace(PT_TRACEME)" 354.El 355.It Cm flags2 356The flags kept in 357.Va p_flag2 358associated with the process as in 359the include file 360.In sys/proc.h : 361.Bl -column P2_INHERIT_PROTECTED 0x00000001 362.It Dv "P2_INHERIT_PROTECTED" Ta No "0x00000001" Ta "New children get P_PROTECTED" 363.It Dv "P2_NOTRACE" Ta No "0x00000002" Ta "No" Xr ptrace 2 attach or coredumps 364.It Dv "P2_NOTRACE_EXEC" Ta No "0x00000004" Ta Keep P2_NOPTRACE on Xr execve 2 365.It Dv "P2_AST_SU" Ta No "0x00000008" Ta "Handles SU ast for kthreads" 366.It Dv "P2_PTRACE_FSTP" Ta No "0x00000010" Ta "SIGSTOP from PT_ATTACH not yet handled" 367.El 368.It Cm label 369The MAC label of the process. 370.It Cm lim 371The soft limit on memory used, specified via a call to 372.Xr setrlimit 2 . 373.It Cm lstart 374The exact time the command started, using the 375.Ql %c 376format described in 377.Xr strftime 3 . 378.It Cm lockname 379The name of the lock that the process is currently blocked on. 380If the name is invalid or unknown, then 381.Dq ???\& 382is displayed. 383.It Cm logname 384The login name associated with the session the process is in (see 385.Xr getlogin 2 ) . 386.It Cm mwchan 387The event name if the process is blocked normally, or the lock name if 388the process is blocked on a lock. 389See the wchan and lockname keywords 390for details. 391.It Cm nice 392The process scheduling increment (see 393.Xr setpriority 2 ) . 394.It Cm rss 395the real memory (resident set) size of the process (in 1024 byte units). 396.It Cm start 397The time the command started. 398If the command started less than 24 hours ago, the start time is 399displayed using the 400.Dq Li %H:%M 401format described in 402.Xr strftime 3 . 403If the command started less than 7 days ago, the start time is 404displayed using the 405.Dq Li %a%H 406format. 407Otherwise, the start time is displayed using the 408.Dq Li %e%b%y 409format. 410.It Cm state 411The state is given by a sequence of characters, for example, 412.Dq Li RWNA . 413The first character indicates the run state of the process: 414.Pp 415.Bl -tag -width indent -compact 416.It Li D 417Marks a process in disk (or other short term, uninterruptible) wait. 418.It Li I 419Marks a process that is idle (sleeping for longer than about 20 seconds). 420.It Li L 421Marks a process that is waiting to acquire a lock. 422.It Li R 423Marks a runnable process. 424.It Li S 425Marks a process that is sleeping for less than about 20 seconds. 426.It Li T 427Marks a stopped process. 428.It Li W 429Marks an idle interrupt thread. 430.It Li Z 431Marks a dead process (a 432.Dq zombie ) . 433.El 434.Pp 435Additional characters after these, if any, indicate additional state 436information: 437.Pp 438.Bl -tag -width indent -compact 439.It Li + 440The process is in the foreground process group of its control terminal. 441.It Li < 442The process has raised CPU scheduling priority. 443.It Li C 444The process is in 445.Xr capsicum 4 446capability mode. 447.It Li E 448The process is trying to exit. 449.It Li J 450Marks a process which is in 451.Xr jail 2 . 452The hostname of the prison can be found in 453.Pa /proc/ Ns Ao Ar pid Ac Ns Pa /status . 454.It Li L 455The process has pages locked in core (for example, for raw I/O). 456.It Li N 457The process has reduced CPU scheduling priority (see 458.Xr setpriority 2 ) . 459.It Li s 460The process is a session leader. 461.It Li V 462The process' parent is suspended during a 463.Xr vfork 2 , 464waiting for the process to exec or exit. 465.It Li W 466The process is swapped out. 467.It Li X 468The process is being traced or debugged. 469.El 470.It Cm tt 471An abbreviation for the pathname of the controlling terminal, if any. 472The abbreviation consists of the three letters following 473.Pa /dev/tty , 474or, for pseudo-terminals, the corresponding entry in 475.Pa /dev/pts . 476This is followed by a 477.Ql - 478if the process can no longer reach that 479controlling terminal (i.e., it has been revoked). 480A 481.Ql - 482without a preceding two letter abbreviation or pseudo-terminal device number 483indicates a process which never had a controlling terminal. 484The full pathname of the controlling terminal is available via the 485.Cm tty 486keyword. 487.It Cm wchan 488The event (an address in the system) on which a process waits. 489When printed numerically, the initial part of the address is 490trimmed off and the result is printed in hex, for example, 0x80324000 prints 491as 324000. 492.El 493.Pp 494When printing using the command keyword, a process that has exited and 495has a parent that has not yet waited for the process (in other words, a zombie) 496is listed as 497.Dq Li <defunct> , 498and a process which is blocked while trying 499to exit is listed as 500.Dq Li <exiting> . 501If the arguments cannot be located (usually because it has not been set, as is 502the case of system processes and/or kernel threads) the command name is printed 503within square brackets. 504The 505.Nm 506utility first tries to obtain the arguments cached by the kernel (if they were 507shorter than the value of the 508.Va kern.ps_arg_cache_limit 509sysctl). 510The process can change the arguments shown with 511.Xr setproctitle 3 . 512Otherwise, 513.Nm 514makes an educated guess as to the file name and arguments given when the 515process was created by examining memory or the swap area. 516The method is inherently somewhat unreliable and in any event a process 517is entitled to destroy this information. 518The ucomm (accounting) keyword can, however, be depended on. 519If the arguments are unavailable or do not agree with the ucomm keyword, 520the value for the ucomm keyword is appended to the arguments in parentheses. 521.Sh KEYWORDS 522The following is a complete list of the available keywords and their 523meanings. 524Several of them have aliases (keywords which are synonyms). 525.Pp 526.Bl -tag -width ".Cm sigignore" -compact 527.It Cm %cpu 528percentage CPU usage (alias 529.Cm pcpu ) 530.It Cm %mem 531percentage memory usage (alias 532.Cm pmem ) 533.It Cm acflag 534accounting flag (alias 535.Cm acflg ) 536.It Cm args 537command and arguments 538.It Cm class 539login class 540.It Cm comm 541command 542.It Cm command 543command and arguments 544.It Cm cow 545number of copy-on-write faults 546.It Cm cpu 547The processor number on which the process is executing (visible only on SMP 548systems). 549.It Cm dsiz 550data size (in Kbytes) 551.It Cm emul 552system-call emulation environment (ABI) 553.It Cm etime 554elapsed running time, format 555.Do 556.Op days- Ns 557.Op hours\&: Ns 558minutes:seconds 559.Dc 560.It Cm etimes 561elapsed running time, in decimal integer seconds 562.It Cm fib 563default FIB number, see 564.Xr setfib 1 565.It Cm flags 566the process flags, in hexadecimal (alias 567.Cm f ) 568.It Cm flags2 569the additional set of process flags, in hexadecimal (alias 570.Cm f2 ) 571.It Cm gid 572effective group ID (alias 573.Cm egid ) 574.It Cm group 575group name (from egid) (alias 576.Cm egroup ) 577.It Cm inblk 578total blocks read (alias 579.Cm inblock ) 580.It Cm jail 581jail name 582.It Cm jid 583jail ID 584.It Cm jobc 585job control count 586.It Cm ktrace 587tracing flags 588.It Cm label 589MAC label 590.It Cm lim 591memoryuse limit 592.It Cm lockname 593lock currently blocked on (as a symbolic name) 594.It Cm logname 595login name of user who started the session 596.It Cm lstart 597time started 598.It Cm lwp 599thread (light-weight process) ID (alias 600.Cm tid ) 601.It Cm majflt 602total page faults 603.It Cm minflt 604total page reclaims 605.It Cm msgrcv 606total messages received (reads from pipes/sockets) 607.It Cm msgsnd 608total messages sent (writes on pipes/sockets) 609.It Cm mwchan 610wait channel or lock currently blocked on 611.It Cm nice 612nice value (alias 613.Cm ni ) 614.It Cm nivcsw 615total involuntary context switches 616.It Cm nlwp 617number of threads (light-weight processes) tied to a process 618.It Cm nsigs 619total signals taken (alias 620.Cm nsignals ) 621.It Cm nswap 622total swaps in/out 623.It Cm nvcsw 624total voluntary context switches 625.It Cm nwchan 626wait channel (as an address) 627.It Cm oublk 628total blocks written (alias 629.Cm oublock ) 630.It Cm paddr 631process pointer 632.It Cm pagein 633pageins (same as majflt) 634.It Cm pgid 635process group number 636.It Cm pid 637process ID 638.It Cm ppid 639parent process ID 640.It Cm pri 641scheduling priority 642.It Cm re 643core residency time (in seconds; 127 = infinity) 644.It Cm rgid 645real group ID 646.It Cm rgroup 647group name (from rgid) 648.It Cm rss 649resident set size 650.It Cm rtprio 651realtime priority (see 652.Xr rtprio 1) 653.It Cm ruid 654real user ID 655.It Cm ruser 656user name (from ruid) 657.It Cm sid 658session ID 659.It Cm sig 660pending signals (alias 661.Cm pending ) 662.It Cm sigcatch 663caught signals (alias 664.Cm caught ) 665.It Cm sigignore 666ignored signals (alias 667.Cm ignored ) 668.It Cm sigmask 669blocked signals (alias 670.Cm blocked ) 671.It Cm sl 672sleep time (in seconds; 127 = infinity) 673.It Cm ssiz 674stack size (in Kbytes) 675.It Cm start 676time started 677.It Cm state 678symbolic process state (alias 679.Cm stat ) 680.It Cm svgid 681saved gid from a setgid executable 682.It Cm svuid 683saved UID from a setuid executable 684.It Cm systime 685accumulated system CPU time 686.It Cm tdaddr 687thread address 688.It Cm tdname 689thread name 690.It Cm tdev 691control terminal device number 692.It Cm time 693accumulated CPU time, user + system (alias 694.Cm cputime ) 695.It Cm tpgid 696control terminal process group ID 697.It Cm tracer 698tracer process ID 699.\".It Cm trss 700.\"text resident set size (in Kbytes) 701.It Cm tsid 702control terminal session ID 703.It Cm tsiz 704text size (in Kbytes) 705.It Cm tt 706control terminal name (two letter abbreviation) 707.It Cm tty 708full name of control terminal 709.It Cm ucomm 710name to be used for accounting 711.It Cm uid 712effective user ID (alias 713.Cm euid ) 714.It Cm upr 715scheduling priority on return from system call (alias 716.Cm usrpri ) 717.It Cm uprocp 718process pointer 719.It Cm user 720user name (from UID) 721.It Cm usertime 722accumulated user CPU time 723.It Cm vmaddr 724vmspace pointer 725.It Cm vsz 726virtual size in Kbytes (alias 727.Cm vsize ) 728.It Cm wchan 729wait channel (as a symbolic name) 730.It Cm xstat 731exit or stop status (valid only for stopped or zombie process) 732.El 733.Pp 734Note that the 735.Cm pending 736column displays bitmask of signals pending in the process queue when 737.Fl H 738option is not specified, otherwise the per-thread queue of pending signals 739is shown. 740.Sh ENVIRONMENT 741The following environment variables affect the execution of 742.Nm : 743.Bl -tag -width ".Ev COLUMNS" 744.It Ev COLUMNS 745If set, specifies the user's preferred output width in column positions. 746By default, 747.Nm 748attempts to automatically determine the terminal width. 749.El 750.Sh FILES 751.Bl -tag -width ".Pa /boot/kernel/kernel" -compact 752.It Pa /boot/kernel/kernel 753default system namelist 754.El 755.Sh EXIT STATUS 756.Ex -std 757.Sh EXAMPLES 758Display information on all system processes: 759.Pp 760.Dl $ ps -auxw 761.Sh SEE ALSO 762.Xr kill 1 , 763.Xr pgrep 1 , 764.Xr pkill 1 , 765.Xr procstat 1 , 766.Xr w 1 , 767.Xr kvm 3 , 768.Xr libxo 3 , 769.Xr strftime 3 , 770.Xr xo_parse_args 3 , 771.Xr mac 4 , 772.Xr procfs 5 , 773.Xr pstat 8 , 774.Xr sysctl 8 , 775.Xr mutex 9 776.Sh STANDARDS 777For historical reasons, the 778.Nm 779utility under 780.Fx 781supports a different set of options from what is described by 782.St -p1003.2 , 783and what is supported on 784.No non- Ns Bx 785operating systems. 786.Sh HISTORY 787The 788.Nm 789command appeared in 790.At v3 791in section 8 of the manual. 792.Sh BUGS 793Since 794.Nm 795cannot run faster than the system and is run as any other scheduled 796process, the information it displays can never be exact. 797.Pp 798The 799.Nm 800utility does not correctly display argument lists containing multibyte 801characters. 802