{"id":367,"date":"2019-10-21T19:59:26","date_gmt":"2019-10-21T17:59:26","guid":{"rendered":"http:\/\/linuxboxen2.dk\/?p=367"},"modified":"2019-10-21T19:59:26","modified_gmt":"2019-10-21T17:59:26","slug":"top","status":"publish","type":"post","link":"https:\/\/www.linuxboxen.dk\/?p=367","title":{"rendered":"TOP"},"content":{"rendered":"<p>TOP(1)\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 User Commands\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 TOP(1)<\/p>\n<p>NAME\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>top &#8211; display Linux processes<\/p>\n<p>SYNOPSIS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>top -hv|-bcHiOSs -d secs -n max -u|U user -p pid -o fld -w [cols]<\/p>\n<p>The traditional switches `-&#8216; and whitespace are optional.<\/p>\n<p>DESCRIPTION\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>The top program provides a dynamic real-time view of a running<br \/>\nsystem.\u00a0 It can display system summary information as well as a list<br \/>\nof processes or threads currently being managed by the Linux kernel.<br \/>\nThe types of system summary information shown and the types, order<br \/>\nand size of information displayed for processes are all user<br \/>\nconfigurable and that configuration can be made persistent across<br \/>\nrestarts.<\/p>\n<p>The program provides a limited interactive interface for process<br \/>\nmanipulation as well as a much more extensive interface for personal<br \/>\nconfiguration\u00a0 &#8212;\u00a0 encompassing every aspect of its operation.\u00a0 And<br \/>\nwhile top is referred to throughout this document, you are free to<br \/>\nname the program anything you wish.\u00a0 That new name, possibly an<br \/>\nalias, will then be reflected on top&#8217;s display and used when reading<br \/>\nand writing a configuration file.<\/p>\n<p>OVERVIEW\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>Documentation<br \/>\nThe remaining Table of Contents<\/p>\n<p>1. COMMAND-LINE Options<br \/>\n2. SUMMARY Display<br \/>\na. UPTIME and LOAD Averages<br \/>\nb. TASK and CPU States<br \/>\nc. MEMORY Usage<br \/>\n3. FIELDS \/ Columns Display<br \/>\na. DESCRIPTIONS of Fields<br \/>\nb. MANAGING Fields<br \/>\n4. INTERACTIVE Commands<br \/>\na. GLOBAL Commands<br \/>\nb. SUMMARY AREA Commands<br \/>\nc. TASK AREA Commands<br \/>\n1. Appearance<br \/>\n2. Content<br \/>\n3. Size<br \/>\n4. Sorting<br \/>\nd. COLOR Mapping<br \/>\n5. ALTERNATE-DISPLAY Provisions<br \/>\na. WINDOWS Overview<br \/>\nb. COMMANDS for Windows<br \/>\nc. SCROLLING a Window<br \/>\nd. SEARCHING in a Window<br \/>\ne. FILTERING in a Window<br \/>\n6. FILES<br \/>\na. SYSTEM Configuration File<br \/>\nb. PERSONAL Configuration File<br \/>\nc. ADDING INSPECT Entries<br \/>\n7. STUPID TRICKS Sampler<br \/>\na. Kernel Magic<br \/>\nb. Bouncing Windows<br \/>\nc. The Big Bird Window<br \/>\nd. The Ol&#8217; Switcheroo<br \/>\n8. BUGS, 9. HISTORY Former top, 10. AUTHOR, 11. SEE Also<\/p>\n<p>Operation<br \/>\nWhen operating top, the two most important keys are the help (h or ?)<br \/>\nkey and quit (&#8216;q&#8217;) key.\u00a0 Alternatively, you could simply use the<br \/>\ntraditional interrupt key (^C) when you&#8217;re done.<\/p>\n<p>When started for the first time, you&#8217;ll be presented with these<br \/>\ntraditional elements on the main top screen: 1) Summary Area; 2)<br \/>\nFields\/Columns Header; 3) Task Area.\u00a0 Each of these will be explored<br \/>\nin the sections that follow.\u00a0 There is also an Input\/Message line<br \/>\nbetween the Summary Area and Columns Header which needs no further<br \/>\nexplanation.<\/p>\n<p>The main top screen is generally quite adaptive to changes in<br \/>\nterminal dimensions under X-Windows.\u00a0 Other top screens may be less<br \/>\nso, especially those with static text.\u00a0 It ultimately depends,<br \/>\nhowever, on your particular window manager and terminal emulator.<br \/>\nThere may be occasions when their view of terminal size and current<br \/>\ncontents differs from top&#8217;s view, which is always based on operating<br \/>\nsystem calls.<\/p>\n<p>Following any re-size operation, if a top screen is corrupted,<br \/>\nappears incomplete or disordered, simply typing something innocuous<br \/>\nlike a punctuation character or cursor motion key will usually<br \/>\nrestore it.\u00a0 In extreme cases, the following sequence almost<br \/>\ncertainly will:<br \/>\nkey\/cmd\u00a0 objective<br \/>\n^Z\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 suspend top<br \/>\nfg\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 resume top<br \/>\n&lt;Left&gt;\u00a0\u00a0 force a screen redraw (if necessary)<\/p>\n<p>But if the display is still corrupted, there is one more step you<br \/>\ncould try.\u00a0 Insert this command after top has been suspended but<br \/>\nbefore resuming it.<br \/>\nkey\/cmd\u00a0 objective<br \/>\nreset\u00a0\u00a0\u00a0 restore your terminal settings<\/p>\n<p>Note: the width of top&#8217;s display will be limited to 512 positions.<br \/>\nDisplaying all fields requires approximately 250 characters.<br \/>\nRemaining screen width is usually allocated to any variable width<br \/>\ncolumns currently visible.\u00a0 The variable width columns, such as<br \/>\nCOMMAND, are noted in topic 3a. DESCRIPTIONS of Fields.\u00a0 Actual<br \/>\noutput width may also be influenced by the -w switch, which is<br \/>\ndiscussed in topic 1. COMMAND-LINE Options.<\/p>\n<p>Lastly, some of top&#8217;s screens or functions require the use of cursor<br \/>\nmotion keys like the standard arrow keys plus the Home, End, PgUp and<br \/>\nPgDn keys.\u00a0 If your terminal or emulator does not provide those keys,<br \/>\nthe following combinations are accepted as alternatives:<br \/>\nkey\u00a0\u00a0\u00a0\u00a0\u00a0 equivalent-key-combinations<br \/>\nUp\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 alt + \\\u00a0\u00a0\u00a0\u00a0\u00a0 or\u00a0 alt + k<br \/>\nDown\u00a0\u00a0\u00a0\u00a0 alt + \/\u00a0\u00a0\u00a0\u00a0\u00a0 or\u00a0 alt + j<br \/>\nLeft\u00a0\u00a0\u00a0\u00a0 alt + &lt;\u00a0\u00a0\u00a0\u00a0\u00a0 or\u00a0 alt + h<br \/>\nRight\u00a0\u00a0\u00a0 alt + &gt;\u00a0\u00a0\u00a0\u00a0\u00a0 or\u00a0 alt + l (lower case L)<br \/>\nPgUp\u00a0\u00a0\u00a0\u00a0 alt + Up\u00a0\u00a0\u00a0\u00a0 or\u00a0 alt + ctrl + k<br \/>\nPgDn\u00a0\u00a0\u00a0\u00a0 alt + Down\u00a0\u00a0 or\u00a0 alt + ctrl + j<br \/>\nHome\u00a0\u00a0\u00a0\u00a0 alt + Left\u00a0\u00a0 or\u00a0 alt + ctrl + h<br \/>\nEnd\u00a0\u00a0\u00a0\u00a0\u00a0 alt + Right\u00a0 or\u00a0 alt + ctrl + l<\/p>\n<p>The Up and Down arrow keys have special significance when prompted<br \/>\nfor line input terminated with the &lt;Enter&gt; key.\u00a0 Those keys, or their<br \/>\naliases, can be used to retrieve previous input lines which can then<br \/>\nbe edited and re-input.\u00a0 And there are four additional keys available<br \/>\nwith line oriented input.<br \/>\nkey\u00a0\u00a0\u00a0\u00a0\u00a0 special-significance<br \/>\nUp\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 recall older strings for re-editing<br \/>\nDown\u00a0\u00a0\u00a0\u00a0 recall newer strings or erase entire line<br \/>\nInsert\u00a0\u00a0 toggle between insert and overtype modes<br \/>\nDelete\u00a0\u00a0 character removed at cursor, moving others left<br \/>\nHome\u00a0\u00a0\u00a0\u00a0 jump to beginning of input line<br \/>\nEnd\u00a0\u00a0\u00a0\u00a0\u00a0 jump to end of input line<\/p>\n<p>Startup Defaults<br \/>\nThe following startup defaults assume no configuration file, thus no<br \/>\nuser customizations.\u00a0 Even so, items shown with an asterisk (`*&#8217;)<br \/>\ncould be overridden through the command-line.\u00a0 All are explained in<br \/>\ndetail in the sections that follow.<\/p>\n<p>Global-defaults<br \/>\nA &#8211; Alt display\u00a0\u00a0\u00a0\u00a0\u00a0 Off (full-screen)<br \/>\n* d &#8211; Delay time\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1.5 seconds<br \/>\n* H &#8211; Threads mode\u00a0\u00a0\u00a0\u00a0 Off (summarize as tasks)<br \/>\nI &#8211; Irix mode\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 On\u00a0 (no, `solaris&#8217; smp)<br \/>\n* p &#8211; PID monitoring\u00a0\u00a0 Off (show all processes)<br \/>\n* s &#8211; Secure mode\u00a0\u00a0\u00a0\u00a0\u00a0 Off (unsecured)<br \/>\nB &#8211; Bold enable\u00a0\u00a0\u00a0\u00a0\u00a0 On\u00a0 (yes, bold globally)<br \/>\nSummary-Area-defaults<br \/>\nl &#8211; Load Avg\/Uptime\u00a0 On\u00a0 (thus program name)<br \/>\nt &#8211; Task\/Cpu states\u00a0 On\u00a0 (1+1 lines, see `1&#8242;)<br \/>\nm &#8211; Mem\/Swap usage\u00a0\u00a0 On\u00a0 (2 lines worth)<br \/>\n1 &#8211; Single Cpu\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Off (thus multiple cpus)<br \/>\nTask-Area-defaults<br \/>\nb &#8211; Bold hilite\u00a0\u00a0\u00a0\u00a0\u00a0 Off (use `reverse&#8217;)<br \/>\n* c &#8211; Command line\u00a0\u00a0\u00a0\u00a0 Off (name, not cmdline)<br \/>\n* i &#8211; Idle tasks\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 On\u00a0 (show all tasks)<br \/>\nJ &#8211; Num align right\u00a0 On\u00a0 (not left justify)<br \/>\nj &#8211; Str align right\u00a0 Off (not right justify)<br \/>\nR &#8211; Reverse sort\u00a0\u00a0\u00a0\u00a0 On\u00a0 (pids high-to-low)<br \/>\n* S &#8211; Cumulative time\u00a0 Off (no, dead children)<br \/>\n* u &#8211; User filter\u00a0\u00a0\u00a0\u00a0\u00a0 Off (show euid only)<br \/>\n* U &#8211; User filter\u00a0\u00a0\u00a0\u00a0\u00a0 Off (show any uid)<br \/>\nV &#8211; Forest view\u00a0\u00a0\u00a0\u00a0\u00a0 On\u00a0 (show as branches)<br \/>\nx &#8211; Column hilite\u00a0\u00a0\u00a0 Off (no, sort field)<br \/>\ny &#8211; Row hilite\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 On\u00a0 (yes, running tasks)<br \/>\nz &#8211; color\/mono\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 On\u00a0 (show colors)<\/p>\n<p>1. COMMAND-LINE Options\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>The command-line syntax for top consists of:<\/p>\n<p>-hv|-bcHiOSs -d secs -n max -u|U user -p pid -o fld -w [cols]<\/p>\n<p>The typically mandatory switch (&#8216;-&#8216;) and even whitespace are<br \/>\ncompletely optional.<\/p>\n<p>-h | -v\u00a0 :Help\/Version<br \/>\nShow library version and the usage prompt, then quit.<\/p>\n<p>-b\u00a0 :Batch-mode operation<br \/>\nStarts top in Batch mode, which could be useful for sending<br \/>\noutput from top to other programs or to a file.\u00a0 In this mode,<br \/>\ntop will not accept input and runs until the iterations limit<br \/>\nyou&#8217;ve set with the `-n&#8217; command-line option or until killed.<\/p>\n<p>-c\u00a0 :Command-line\/Program-name toggle<br \/>\nStarts top with the last remembered `c&#8217; state reversed.\u00a0 Thus,<br \/>\nif top was displaying command lines, now that field will show<br \/>\nprogram names, and visa versa.\u00a0 See the `c&#8217; interactive command<br \/>\nfor additional information.<\/p>\n<p>-d\u00a0 :Delay-time interval as:\u00a0 -d ss.t (secs.tenths)<br \/>\nSpecifies the delay between screen updates, and overrides the<br \/>\ncorresponding value in one&#8217;s personal configuration file or the<br \/>\nstartup default.\u00a0 Later this can be changed with the `d&#8217; or `s&#8217;<br \/>\ninteractive commands.<\/p>\n<p>Fractional seconds are honored, but a negative number is not<br \/>\nallowed.\u00a0 In all cases, however, such changes are prohibited if<br \/>\ntop is running in Secure mode, except for root (unless the `s&#8217;<br \/>\ncommand-line option was used).\u00a0 For additional information on<br \/>\nSecure mode see topic 6a. SYSTEM Configuration File.<\/p>\n<p>-H\u00a0 :Threads-mode operation<br \/>\nInstructs top to display individual threads.\u00a0 Without this<br \/>\ncommand-line option a summation of all threads in each process<br \/>\nis shown.\u00a0 Later this can be changed with the `H&#8217; interactive<br \/>\ncommand.<\/p>\n<p>-i\u00a0 :Idle-process toggle<br \/>\nStarts top with the last remembered `i&#8217; state reversed.\u00a0 When<br \/>\nthis toggle is Off, tasks that have not used any CPU since the<br \/>\nlast update will not be displayed.\u00a0 For additional information<br \/>\nregarding this toggle see topic 4c. TASK AREA Commands, SIZE.<\/p>\n<p>-n\u00a0 :Number-of-iterations limit as:\u00a0 -n number<br \/>\nSpecifies the maximum number of iterations, or frames, top<br \/>\nshould produce before ending.<\/p>\n<p>-o\u00a0 :Override-sort-field as:\u00a0 -o fieldname<br \/>\nSpecifies the name of the field on which tasks will be sorted,<br \/>\nindependent of what is reflected in the configuration file.\u00a0 You<br \/>\ncan prepend a `+&#8217; or `-&#8216; to the field name to also override the<br \/>\nsort direction.\u00a0 A leading `+&#8217; will force sorting high to low,<br \/>\nwhereas a `-&#8216; will ensure a low to high ordering.<\/p>\n<p>This option exists primarily to support automated\/scripted batch<br \/>\nmode operation.<\/p>\n<p>-O\u00a0 :Output-field-names<br \/>\nThis option acts as a form of help for the above -o option.\u00a0 It<br \/>\nwill cause top to print each of the available field names on a<br \/>\nseparate line, then quit.\u00a0 Such names are subject to nls<br \/>\ntranslation.<\/p>\n<p>-p\u00a0 :Monitor-PIDs mode as:\u00a0 -pN1 -pN2 &#8230;\u00a0 or\u00a0 -pN1,N2,N3 &#8230;<br \/>\nMonitor only processes with specified process IDs.\u00a0 This option<br \/>\ncan be given up to 20 times, or you can provide a comma<br \/>\ndelimited list with up to 20 pids.\u00a0 Co-mingling both approaches<br \/>\nis permitted.<\/p>\n<p>A pid value of zero will be treated as the process id of the top<br \/>\nprogram itself once it is running.<\/p>\n<p>This is a command-line option only and should you wish to return<br \/>\nto normal operation, it is not necessary to quit and restart top<br \/>\n&#8212;\u00a0 just issue any of these interactive commands: `=&#8217;, `u&#8217; or<br \/>\n`U&#8217;.<\/p>\n<p>The `p&#8217;, `u&#8217; and `U&#8217; command-line options are mutually<br \/>\nexclusive.<\/p>\n<p>-s\u00a0 :Secure-mode operation<br \/>\nStarts top with secure mode forced, even for root.\u00a0 This mode is<br \/>\nfar better controlled through the system configuration file (see<br \/>\ntopic 6. FILES).<\/p>\n<p>-S\u00a0 :Cumulative-time toggle<br \/>\nStarts top with the last remembered `S&#8217; state reversed.\u00a0 When<br \/>\nCumulative time mode is On, each process is listed with the cpu<br \/>\ntime that it and its dead children have used.\u00a0 See the `S&#8217;<br \/>\ninteractive command for additional information regarding this<br \/>\nmode.<\/p>\n<p>-u | -U\u00a0 :User-filter-mode as:\u00a0 -u | -U number or name<br \/>\nDisplay only processes with a user id or user name matching that<br \/>\ngiven.\u00a0 The `-u&#8217; option matches on\u00a0 effective user whereas the<br \/>\n`-U&#8217; option matches on any user (real, effective, saved, or<br \/>\nfilesystem).<\/p>\n<p>Prepending an exclamation point (&#8216;!&#8217;) to the user id or name<br \/>\ninstructs top to display only processes with users not matching<br \/>\nthe one provided.<\/p>\n<p>The `p&#8217;, `u&#8217; and `U&#8217; command-line options are mutually<br \/>\nexclusive.<\/p>\n<p>-w\u00a0 :Output-width-override as:\u00a0 -w [ number ]<br \/>\nIn Batch mode, when used without an argument top will format<br \/>\noutput using the COLUMNS= and LINES= environment variables, if<br \/>\nset.\u00a0 Otherwise, width will be fixed at the maximum 512 columns.<br \/>\nWith an argument, output width can be decreased or increased (up<br \/>\nto 512) but the number of rows is considered unlimited.<\/p>\n<p>In normal display mode, when used without an argument top will<br \/>\nattempt to format output using the COLUMNS= and LINES=<br \/>\nenvironment variables, if set.\u00a0 With an argument, output width<br \/>\ncan only be decreased, not increased.\u00a0 Whether using environment<br \/>\nvariables or an argument with -w, when not in Batch mode actual<br \/>\nterminal dimensions can never be exceeded.<\/p>\n<p>Note: Without the use of this command-line option, output width<br \/>\nis always based on the terminal at which top was invoked whether<br \/>\nor not in Batch mode.<\/p>\n<p>2. SUMMARY Display\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>Each of the following three areas are individually controlled through<br \/>\none or more interactive commands.\u00a0 See topic 4b. SUMMARY AREA<br \/>\nCommands for additional information regarding these provisions.<\/p>\n<p>2a. UPTIME and LOAD Averages<br \/>\nThis portion consists of a single line containing:<br \/>\nprogram or window name, depending on display mode<br \/>\ncurrent time and length of time since last boot<br \/>\ntotal number of users<br \/>\nsystem load avg over the last 1, 5 and 15 minutes<\/p>\n<p>2b. TASK and CPU States<br \/>\nThis portion consists of a minimum of two lines.\u00a0 In an SMP<br \/>\nenvironment, additional lines can reflect individual CPU state<br \/>\npercentages.<\/p>\n<p>Line 1 shows total tasks or threads, depending on the state of the<br \/>\nThreads-mode toggle.\u00a0 That total is further classified as:<br \/>\nrunning; sleeping; stopped; zombie<\/p>\n<p>Line 2 shows CPU state percentages based on the interval since the<br \/>\nlast refresh.<\/p>\n<p>As a default, percentages for these individual categories are<br \/>\ndisplayed.\u00a0 Where two labels are shown below, those for more recent<br \/>\nkernel versions are shown first.<br \/>\nus, user\u00a0\u00a0\u00a0 : time running un-niced user processes<br \/>\nsy, system\u00a0 : time running kernel processes<br \/>\nni, nice\u00a0\u00a0\u00a0 : time running niced user processes<br \/>\nid, idle\u00a0\u00a0\u00a0 : time spent in the kernel idle handler<br \/>\nwa, IO-wait : time waiting for I\/O completion<br \/>\nhi : time spent servicing hardware interrupts<br \/>\nsi : time spent servicing software interrupts<br \/>\nst : time stolen from this vm by the hypervisor<\/p>\n<p>In the alternate cpu states display modes, beyond the first<br \/>\ntasks\/threads line, an abbreviated summary is shown consisting of<br \/>\nthese elements:<br \/>\na\u00a0\u00a0\u00a0 b\u00a0\u00a0\u00a0\u00a0 c\u00a0\u00a0\u00a0 d<br \/>\n%Cpu(s):\u00a0 75.0\/25.0\u00a0 100[ &#8230;<\/p>\n<p>Where: a) is the combined us and ni percentage; b) is the sy<br \/>\npercentage; c) is the total; and d) is one of two visual graphs of<br \/>\nthose representations.\u00a0 See topic 4b. SUMMARY AREA Commands and the<br \/>\n`t&#8217; command for additional information on that special 4-way toggle.<\/p>\n<p>2c. MEMORY Usage<br \/>\nThis portion consists of two lines which may express values in<br \/>\nkibibytes (KiB) through exbibytes (EiB) depending on the scaling<br \/>\nfactor enforced with the `E&#8217; interactive command.<\/p>\n<p>As a default, Line 1 reflects physical memory, classified as:<br \/>\ntotal, free, used and buff\/cache<\/p>\n<p>Line 2 reflects mostly virtual memory, classified as:<br \/>\ntotal, free, used and avail (which is physical memory)<\/p>\n<p>The avail number on line 2 is an estimation of physical memory<br \/>\navailable for starting new applications, without swapping.\u00a0 Unlike<br \/>\nthe free field, it attempts to account for readily reclaimable page<br \/>\ncache and memory slabs.\u00a0 It is available on kernels 3.14, emulated on<br \/>\nkernels 2.6.27+, otherwise the same as free.<\/p>\n<p>In the alternate memory display modes, two abbreviated summary lines<br \/>\nare shown consisting of these elements:<br \/>\na\u00a0\u00a0\u00a0 b\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 c<br \/>\nGiB Mem : 18.7\/15.738\u00a0\u00a0 [ &#8230;<br \/>\nGiB Swap:\u00a0 0.0\/7.999\u00a0\u00a0\u00a0 [ &#8230;<\/p>\n<p>Where: a) is the percentage used; b) is the total available; and c)<br \/>\nis one of two visual graphs of those representations.<\/p>\n<p>In the case of physical memory, the percentage represents the total<br \/>\nminus the estimated avail noted above.\u00a0 The `Mem&#8217; graph itself is<br \/>\ndivided between used and any remaining memory not otherwise accounted<br \/>\nfor by avail.\u00a0 See topic 4b. SUMMARY AREA Commands and the `m&#8217;<br \/>\ncommand for additional information on that special 4-way toggle.<\/p>\n<p>This table may help in interpreting the scaled values displayed:<br \/>\nKiB = kibibyte = 1024 bytes<br \/>\nMiB = mebibyte = 1024 KiB = 1,048,576 bytes<br \/>\nGiB = gibibyte = 1024 MiB = 1,073,741,824 bytes<br \/>\nTiB = tebibyte = 1024 GiB = 1,099,511,627,776 bytes<br \/>\nPiB = pebibyte = 1024 TiB = 1,125,899,906,842,624 bytes<br \/>\nEiB = exbibyte = 1024 PiB = 1,152,921,504,606,846,976 bytes<\/p>\n<p>3. FIELDS \/ Columns\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>3a. DESCRIPTIONS of Fields<br \/>\nListed below are top&#8217;s available process fields (columns).\u00a0 They are<br \/>\nshown in strict ascii alphabetical order.\u00a0 You may customize their<br \/>\nposition and whether or not they are displayable with the `f&#8217; or `F&#8217;<br \/>\n(Fields Management) interactive commands.<\/p>\n<p>Any field is selectable as the sort field, and you control whether<br \/>\nthey are sorted high-to-low or low-to-high.\u00a0 For additional<br \/>\ninformation on sort provisions see topic 4c. TASK AREA Commands,<br \/>\nSORTING.<\/p>\n<p>The fields related to physical memory or virtual memory reference<br \/>\n`(KiB)&#8217; which is the unsuffixed display mode.\u00a0 Such fields may,<br \/>\nhowever, be scaled from KiB through PiB.\u00a0 That scaling is influenced<br \/>\nvia the `e&#8217; interactive command or established for startup through a<br \/>\nbuild option.<\/p>\n<p>1. %CPU\u00a0 &#8212;\u00a0 CPU Usage<br \/>\nThe task&#8217;s share of the elapsed CPU time since the last screen<br \/>\nupdate, expressed as a percentage of total CPU time.<\/p>\n<p>In a true SMP environment, if a process is multi-threaded and top<br \/>\nis not operating in Threads mode, amounts greater than 100% may<br \/>\nbe reported.\u00a0 You toggle Threads mode with the `H&#8217; interactive<br \/>\ncommand.<\/p>\n<p>Also for multi-processor environments, if Irix mode is Off, top<br \/>\nwill operate in Solaris mode where a task&#8217;s cpu usage will be<br \/>\ndivided by the total number of CPUs.\u00a0 You toggle Irix\/Solaris<br \/>\nmodes with the `I&#8217; interactive command.<\/p>\n<p>2. %MEM\u00a0 &#8212;\u00a0 Memory Usage (RES)<br \/>\nA task&#8217;s currently used share of available physical memory.<\/p>\n<p>3. CGROUPS\u00a0 &#8212;\u00a0 Control Groups<br \/>\nThe names of the control group(s) to which a process belongs, or<br \/>\n`-&#8216; if not applicable for that process.<\/p>\n<p>Control Groups provide for allocating resources (cpu, memory,<br \/>\nnetwork bandwidth, etc.) among installation-defined groups of<br \/>\nprocesses.\u00a0 They enable fine-grained control over allocating,<br \/>\ndenying, prioritizing, managing and monitoring those resources.<\/p>\n<p>Many different hierarchies of cgroups can exist simultaneously on<br \/>\na system and each hierarchy is attached to one or more<br \/>\nsubsystems.\u00a0 A subsystem represents a single resource.<\/p>\n<p>Note: The CGROUPS field, unlike most columns, is not fixed-width.<br \/>\nWhen displayed, it plus any other variable width columns will be<br \/>\nallocated all remaining screen width (up to the maximum 512<br \/>\ncharacters).\u00a0 Even so, such variable width fields could still<br \/>\nsuffer truncation.\u00a0 See topic 5c. SCROLLING a Window for<br \/>\nadditional information on accessing any truncated data.<\/p>\n<p>4. CODE\u00a0 &#8212;\u00a0 Code Size (KiB)<br \/>\nThe amount of physical memory devoted to executable code, also<br \/>\nknown as the Text Resident Set size or TRS.<\/p>\n<p>5. COMMAND\u00a0 &#8212;\u00a0 Command Name or Command Line<br \/>\nDisplay the command line used to start a task or the name of the<br \/>\nassociated program.\u00a0 You toggle between command line and name<br \/>\nwith `c&#8217;, which is both a command-line option and an interactive<br \/>\ncommand.<\/p>\n<p>When you&#8217;ve chosen to display command lines, processes without a<br \/>\ncommand line (like kernel threads) will be shown with only the<br \/>\nprogram name in brackets, as in this example:<br \/>\n[kthreadd]<\/p>\n<p>This field may also be impacted by the forest view display mode.<br \/>\nSee the `V&#8217; interactive command for additional information<br \/>\nregarding that mode.<\/p>\n<p>Note: The COMMAND field, unlike most columns, is not fixed-width.<br \/>\nWhen displayed, it plus any other variable width columns will be<br \/>\nallocated all remaining screen width (up to the maximum 512<br \/>\ncharacters).\u00a0 Even so, such variable width fields could still<br \/>\nsuffer truncation.\u00a0 This is especially true for this field when<br \/>\ncommand lines are being displayed (the `c&#8217; interactive command.)<br \/>\nSee topic 5c. SCROLLING a Window for additional information on<br \/>\naccessing any truncated data.<\/p>\n<p>6. DATA\u00a0 &#8212;\u00a0 Data + Stack Size (KiB)<br \/>\nThe amount of physical memory devoted to other than executable<br \/>\ncode, also known as the Data Resident Set size or DRS.<\/p>\n<p>7. ENVIRON\u00a0 &#8212;\u00a0 Environment variables<br \/>\nDisplay all of the environment variables, if any, as seen by the<br \/>\nrespective processes.\u00a0 These variables will be displayed in their<br \/>\nraw native order, not the sorted order you are accustomed to<br \/>\nseeing with an unqualified `set&#8217;.<\/p>\n<p>Note: The ENVIRON field, unlike most columns, is not fixed-width.<br \/>\nWhen displayed, it plus any other variable width columns will be<br \/>\nallocated all remaining screen width (up to the maximum 512<br \/>\ncharacters).\u00a0 Even so, such variable width fields could still<br \/>\nsuffer truncation.\u00a0 This is especially true for this field.\u00a0 See<br \/>\ntopic 5c. SCROLLING a Window for additional information on<br \/>\naccessing any truncated data.<\/p>\n<p>8. Flags\u00a0 &#8212;\u00a0 Task Flags<br \/>\nThis column represents the task&#8217;s current scheduling flags which<br \/>\nare expressed in hexadecimal notation and with zeros suppressed.<br \/>\nThese flags are officially documented in &lt;linux\/sched.h&gt;.<\/p>\n<p>9. GID\u00a0 &#8212;\u00a0 Group Id<br \/>\nThe effective group ID.<\/p>\n<p>10. GROUP\u00a0 &#8212;\u00a0 Group Name<br \/>\nThe effective group name.<\/p>\n<p>11. NI\u00a0 &#8212;\u00a0 Nice Value<br \/>\nThe nice value of the task.\u00a0 A negative nice value means higher<br \/>\npriority, whereas a positive nice value means lower priority.<br \/>\nZero in this field simply means priority will not be adjusted in<br \/>\ndetermining a task&#8217;s dispatch-ability.<\/p>\n<p>12. P\u00a0 &#8212;\u00a0 Last used CPU (SMP)<br \/>\nA number representing the last used processor.\u00a0 In a true SMP<br \/>\nenvironment this will likely change frequently since the kernel<br \/>\nintentionally uses weak affinity.\u00a0 Also, the very act of running<br \/>\ntop may break this weak affinity and cause more processes to<br \/>\nchange CPUs more often (because of the extra demand for cpu<br \/>\ntime).<\/p>\n<p>13. PGRP\u00a0 &#8212;\u00a0 Process Group Id<br \/>\nEvery process is member of a unique process group which is used<br \/>\nfor distribution of signals and by terminals to arbitrate<br \/>\nrequests for their input and output.\u00a0 When a process is created<br \/>\n(forked), it becomes a member of the process group of its parent.<br \/>\nBy convention, this value equals the process ID (see PID) of the<br \/>\nfirst member of a process group, called the process group leader.<\/p>\n<p>14. PID\u00a0 &#8212;\u00a0 Process Id<br \/>\nThe task&#8217;s unique process ID, which periodically wraps, though<br \/>\nnever restarting at zero.\u00a0 In kernel terms, it is a dispatchable<br \/>\nentity defined by a task_struct.<\/p>\n<p>This value may also be used as: a process group ID (see PGRP); a<br \/>\nsession ID for the session leader (see SID); a thread group ID<br \/>\nfor the thread group leader (see TGID); and a TTY process group<br \/>\nID for the process group leader (see TPGID).<\/p>\n<p>15. PPID\u00a0 &#8212;\u00a0 Parent Process Id<br \/>\nThe process ID (pid) of a task&#8217;s parent.<\/p>\n<p>16. PR\u00a0 &#8212;\u00a0 Priority<br \/>\nThe scheduling priority of the task.\u00a0 If you see `rt&#8217; in this<br \/>\nfield, it means the task is running under real time scheduling<br \/>\npriority.<\/p>\n<p>Under linux, real time priority is somewhat misleading since<br \/>\ntraditionally the operating itself was not preemptible.\u00a0 And<br \/>\nwhile the 2.6 kernel can be made mostly preemptible, it is not<br \/>\nalways so.<\/p>\n<p>17. RES\u00a0 &#8212;\u00a0 Resident Memory Size (KiB)<br \/>\nThe non-swapped physical memory a task is using.<\/p>\n<p>18. RUID\u00a0 &#8212;\u00a0 Real User Id<br \/>\nThe real user ID.<\/p>\n<p>19. RUSER\u00a0 &#8212;\u00a0 Real User Name<br \/>\nThe real user name.<\/p>\n<p>20. S\u00a0 &#8212;\u00a0 Process Status<br \/>\nThe status of the task which can be one of:<br \/>\nD = uninterruptible sleep<br \/>\nR = running<br \/>\nS = sleeping<br \/>\nT = stopped by job control signal<br \/>\nt = stopped by debugger during trace<br \/>\nZ = zombie<\/p>\n<p>Tasks shown as running should be more properly thought of as<br \/>\nready to run\u00a0 &#8212;\u00a0 their task_struct is simply represented on the<br \/>\nLinux run-queue.\u00a0 Even without a true SMP machine, you may see<br \/>\nnumerous tasks in this state depending on top&#8217;s delay interval<br \/>\nand nice value.<\/p>\n<p>21. SHR\u00a0 &#8212;\u00a0 Shared Memory Size (KiB)<br \/>\nThe amount of shared memory available to a task, not all of which<br \/>\nis typically resident.\u00a0 It simply reflects memory that could be<br \/>\npotentially shared with other processes.<\/p>\n<p>22. SID\u00a0 &#8212;\u00a0 Session Id<br \/>\nA session is a collection of process groups (see PGRP), usually<br \/>\nestablished by the login shell.\u00a0 A newly forked process joins the<br \/>\nsession of its creator.\u00a0 By convention, this value equals the<br \/>\nprocess ID (see PID) of the first member of the session, called<br \/>\nthe session leader, which is usually the login shell.<\/p>\n<p>23. SUID\u00a0 &#8212;\u00a0 Saved User Id<br \/>\nThe saved user ID.<\/p>\n<p>24. SUPGIDS\u00a0 &#8212;\u00a0 Supplementary Group IDs<br \/>\nThe IDs of any supplementary group(s) established at login or<br \/>\ninherited from a task&#8217;s parent.\u00a0 They are displayed in a comma<br \/>\ndelimited list.<\/p>\n<p>Note: The SUPGIDS field, unlike most columns, is not fixed-width.<br \/>\nWhen displayed, it plus any other variable width columns will be<br \/>\nallocated all remaining screen width (up to the maximum 512<br \/>\ncharacters).\u00a0 Even so, such variable width fields could still<br \/>\nsuffer truncation.\u00a0 See topic 5c. SCROLLING a Window for<br \/>\nadditional information on accessing any truncated data.<\/p>\n<p>25. SUPGRPS\u00a0 &#8212;\u00a0 Supplementary Group Names<br \/>\nThe names of any supplementary group(s) established at login or<br \/>\ninherited from a task&#8217;s parent.\u00a0 They are displayed in a comma<br \/>\ndelimited list.<\/p>\n<p>Note: The SUPGRPS field, unlike most columns, is not fixed-width.<br \/>\nWhen displayed, it plus any other variable width columns will be<br \/>\nallocated all remaining screen width (up to the maximum 512<br \/>\ncharacters).\u00a0 Even so, such variable width fields could still<br \/>\nsuffer truncation.\u00a0 See topic 5c. SCROLLING a Window for<br \/>\nadditional information on accessing any truncated data.<\/p>\n<p>26. SUSER\u00a0 &#8212;\u00a0 Saved User Name<br \/>\nThe saved user name.<\/p>\n<p>27. SWAP\u00a0 &#8212;\u00a0 Swapped Size (KiB)<br \/>\nThe non-resident portion of a task&#8217;s address space.<\/p>\n<p>28. TGID\u00a0 &#8212;\u00a0 Thread Group Id<br \/>\nThe ID of the thread group to which a task belongs.\u00a0 It is the<br \/>\nPID of the thread group leader.\u00a0 In kernel terms, it represents<br \/>\nthose tasks that share an mm_struct.<\/p>\n<p>29. TIME\u00a0 &#8212;\u00a0 CPU Time<br \/>\nTotal CPU time the task has used since it started.\u00a0 When<br \/>\nCumulative mode is On, each process is listed with the cpu time<br \/>\nthat it and its dead children have used.\u00a0 You toggle Cumulative<br \/>\nmode with `S&#8217;, which is both a command-line option and an<br \/>\ninteractive command.\u00a0 See the `S&#8217; interactive command for<br \/>\nadditional information regarding this mode.<\/p>\n<p>30. TIME+\u00a0 &#8212;\u00a0 CPU Time, hundredths<br \/>\nThe same as TIME, but reflecting more granularity through<br \/>\nhundredths of a second.<\/p>\n<p>31. TPGID\u00a0 &#8212;\u00a0 Tty Process Group Id<br \/>\nThe process group ID of the foreground process for the connected<br \/>\ntty, or -1 if a process is not connected to a terminal.\u00a0 By<br \/>\nconvention, this value equals the process ID (see PID) of the<br \/>\nprocess group leader (see PGRP).<\/p>\n<p>32. TTY\u00a0 &#8212;\u00a0 Controlling Tty<br \/>\nThe name of the controlling terminal.\u00a0 This is usually the device<br \/>\n(serial port, pty, etc.) from which the process was started, and<br \/>\nwhich it uses for input or output.\u00a0 However, a task need not be<br \/>\nassociated with a terminal, in which case you&#8217;ll see `?&#8217;<br \/>\ndisplayed.<\/p>\n<p>33. UID\u00a0 &#8212;\u00a0 User Id<br \/>\nThe effective user ID of the task&#8217;s owner.<\/p>\n<p>34. USED\u00a0 &#8212;\u00a0 Memory in Use (KiB)<br \/>\nThis field represents the non-swapped physical memory a task has<br \/>\nused (RES) plus the non-resident portion of its address space<br \/>\n(SWAP).<\/p>\n<p>35. USER\u00a0 &#8212;\u00a0 User Name<br \/>\nThe effective user name of the task&#8217;s owner.<\/p>\n<p>36. VIRT\u00a0 &#8212;\u00a0 Virtual Memory Size (KiB)<br \/>\nThe total amount of virtual memory used by the task.\u00a0 It includes<br \/>\nall code, data and shared libraries plus pages that have been<br \/>\nswapped out and pages that have been mapped but not used.<\/p>\n<p>37. WCHAN\u00a0 &#8212;\u00a0 Sleeping in Function<br \/>\nDepending on the availability of the kernel link map<br \/>\n(System.map), this field will show the name or the address of the<br \/>\nkernel function in which the task is currently sleeping.\u00a0 Running<br \/>\ntasks will display a dash (&#8216;-&#8216;) in this column.<\/p>\n<p>By displaying this field, top&#8217;s own working set could be<br \/>\nincreased by over 700Kb, depending on the kernel version.\u00a0 Should<br \/>\nthat occur, your only means of reducing that overhead will be to<br \/>\nstop and restart top.<\/p>\n<p>38. nDRT\u00a0 &#8212;\u00a0 Dirty Pages Count<br \/>\nThe number of pages that have been modified since they were last<br \/>\nwritten to auxiliary storage.\u00a0 Dirty pages must be written to<br \/>\nauxiliary storage before the corresponding physical memory<br \/>\nlocation can be used for some other virtual page.<\/p>\n<p>39. nMaj\u00a0 &#8212;\u00a0 Major Page Fault Count<br \/>\nThe number of major page faults that have occurred for a task.\u00a0 A<br \/>\npage fault occurs when a process attempts to read from or write<br \/>\nto a virtual page that is not currently present in its address<br \/>\nspace.\u00a0 A major page fault is when auxiliary storage access is<br \/>\ninvolved in making that page available.<\/p>\n<p>40. nMin\u00a0 &#8212;\u00a0 Minor Page Fault count<br \/>\nThe number of minor page faults that have occurred for a task.\u00a0 A<br \/>\npage fault occurs when a process attempts to read from or write<br \/>\nto a virtual page that is not currently present in its address<br \/>\nspace.\u00a0 A minor page fault does not involve auxiliary storage<br \/>\naccess in making that page available.<\/p>\n<p>41. nTH\u00a0 &#8212;\u00a0 Number of Threads<br \/>\nThe number of threads associated with a process.<\/p>\n<p>42. nsIPC\u00a0 &#8212;\u00a0 IPC namespace<br \/>\nThe Inode of the namespace used to isolate interprocess<br \/>\ncommunication (IPC) resources such as System V IPC objects and<br \/>\nPOSIX message queues.<\/p>\n<p>43. nsMNT\u00a0 &#8212;\u00a0 MNT namespace<br \/>\nThe Inode of the namespace used to isolate filesystem mount<br \/>\npoints thus offering different views of the filesystem hierarchy.<\/p>\n<p>44. nsNET\u00a0 &#8212;\u00a0 NET namespace<br \/>\nThe Inode of the namespace used to isolate resources such as<br \/>\nnetwork devices, IP addresses, IP routing, port numbers, etc.<\/p>\n<p>45. nsPID\u00a0 &#8212;\u00a0 PID namespace<br \/>\nThe Inode of the namespace used to isolate process ID numbers<br \/>\nmeaning they need not remain unique.\u00a0 Thus, each such namespace<br \/>\ncould have its own `init&#8217; (PID #1) to manage various<br \/>\ninitialization tasks and reap orphaned child processes.<\/p>\n<p>46. nsUSER\u00a0 &#8212;\u00a0 USER namespace<br \/>\nThe Inode of the namespace used to isolate the user and group ID<br \/>\nnumbers.\u00a0 Thus, a process could have a normal unprivileged user<br \/>\nID outside a user namespace while having a user ID of 0, with<br \/>\nfull root privileges, inside that namespace.<\/p>\n<p>47. nsUTS\u00a0 &#8212;\u00a0 UTS namespace<br \/>\nThe Inode of the namespace used to isolate hostname and NIS<br \/>\ndomain name.\u00a0 UTS simply means &#8220;UNIX Time-sharing System&#8221;.<\/p>\n<p>48. vMj\u00a0 &#8212;\u00a0 Major Page Fault Count Delta<br \/>\nThe number of major page faults that have occurred since the last<br \/>\nupdate (see nMaj).<\/p>\n<p>49. vMn\u00a0 &#8212;\u00a0 Minor Page Fault Count Delta<br \/>\nThe number of minor page faults that have occurred since the last<br \/>\nupdate (see nMin).<\/p>\n<p>3b. MANAGING Fields<br \/>\nAfter pressing the interactive command `f&#8217; or `F&#8217; (Fields Management)<br \/>\nyou will be presented with a screen showing: 1) the `current&#8217; window<br \/>\nname; 2) the designated sort field; 3) all fields in their current<br \/>\norder along with descriptions.\u00a0 Entries marked with an asterisk are<br \/>\nthe currently displayed fields, screen width permitting.<\/p>\n<p>\u00b7\u00a0 As the on screen instructions indicate, you navigate among the<br \/>\nfields with the Up and Down arrow keys.\u00a0 The PgUp, PgDn, Home<br \/>\nand End keys can also be used to quickly reach the first or<br \/>\nlast available field.<\/p>\n<p>\u00b7\u00a0 The Right arrow key selects a field for repositioning and the<br \/>\nLeft arrow key or the &lt;Enter&gt; key commits that field&#8217;s<br \/>\nplacement.<\/p>\n<p>\u00b7\u00a0 The `d&#8217; key or the &lt;Space&gt; bar toggles a field&#8217;s display<br \/>\nstatus, and thus the presence or absence of the asterisk.<\/p>\n<p>\u00b7\u00a0 The `s&#8217; key designates a field as the sort field.\u00a0 See topic<br \/>\n4c. TASK AREA Commands, SORTING for additional information<br \/>\nregarding your selection of a sort field.<\/p>\n<p>\u00b7\u00a0 The `a&#8217; and `w&#8217; keys can be used to cycle through all<br \/>\navailable windows and the `q&#8217; or &lt;Esc&gt; keys exit Fields<br \/>\nManagement.<\/p>\n<p>The Fields Management screen can also be used to change the `current&#8217;<br \/>\nwindow\/field group in either full-screen mode or alternate-display<br \/>\nmode.\u00a0 Whatever was targeted when `q&#8217; or &lt;Esc&gt; was pressed will be<br \/>\nmade current as you return to the top display.\u00a0 See topic 5.<br \/>\nALTERNATE-DISPLAY Provisions and the `g&#8217; interactive command for<br \/>\ninsight into `current&#8217; windows and field groups.<\/p>\n<p>Note: Any window that has been scrolled horizontally will be reset if<br \/>\nany field changes are made via the Fields Management screen.\u00a0 Any<br \/>\nvertical scrolled position, however, will not be affected.\u00a0 See topic<br \/>\n5c. SCROLLING a Window for additional information regarding vertical<br \/>\nand horizontal scrolling.<\/p>\n<p>4. INTERACTIVE Commands\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>Listed below is a brief index of commands within categories.\u00a0 Some<br \/>\ncommands appear more than once\u00a0 &#8212;\u00a0 their meaning or scope may vary<br \/>\ndepending on the context in which they are issued.<\/p>\n<p>4a. Global-Commands<br \/>\n&lt;Ent\/Sp&gt; ?, =, 0,<br \/>\nA, B, d, E, e, g, h, H, I, k, q, r, s, W, X, Y, Z<br \/>\n4b. Summary-Area-Commands<br \/>\nC, l, t, m, 1, 2, 3<br \/>\n4c. Task-Area-Commands<br \/>\nAppearance:\u00a0 b, J, j, x, y, z<br \/>\nContent:\u00a0\u00a0\u00a0\u00a0 c, f, F, o, O, S, u, U, V<br \/>\nSize:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 #, i, n<br \/>\nSorting:\u00a0\u00a0\u00a0\u00a0 &lt;, &gt;, f, F, R<br \/>\n4d. Color-Mapping<br \/>\n&lt;Ret&gt;, a, B, b, H, M, q, S, T, w, z, 0 &#8211; 7<br \/>\n5b. Commands-for-Windows<br \/>\n-, _, =, +, A, a, g, G, w<br \/>\n5c. Scrolling-a-Window<br \/>\nC, Up, Dn, Left, Right, PgUp, PgDn, Home, End<br \/>\n5d. Searching-in-a-Window<br \/>\nL, &amp;<\/p>\n<p>4a. GLOBAL Commands<br \/>\nThe global interactive commands are always available in both<br \/>\nfull-screen mode and alternate-display mode.\u00a0 However, some of these<br \/>\ninteractive commands are not available when running in Secure mode.<\/p>\n<p>If you wish to know in advance whether or not your top has been<br \/>\nsecured, simply ask for help and view the system summary on the<br \/>\nsecond line.<\/p>\n<p>&lt;Enter&gt; or &lt;Space&gt;\u00a0 :Refresh-Display<br \/>\nThese commands awaken top and following receipt of any input<br \/>\nthe entire display will be repainted.\u00a0 They also force an<br \/>\nupdate of any hotplugged cpu or physical memory changes.<\/p>\n<p>Use either of these keys if you have a large delay interval<br \/>\nand wish to see current status,<\/p>\n<p>? | h\u00a0 :Help<br \/>\nThere are two help levels available.\u00a0 The first will provide a<br \/>\nreminder of all the basic interactive commands.\u00a0 If top is<br \/>\nsecured, that screen will be abbreviated.<\/p>\n<p>Typing `h&#8217; or `?&#8217; on that help screen will take you to help<br \/>\nfor those interactive commands applicable to alternate-display<br \/>\nmode.<\/p>\n<p>=\u00a0 :Exit-Task-Limits<br \/>\nRemoves restrictions on which tasks are shown.\u00a0 This command<br \/>\nwill reverse any `i&#8217; (idle tasks) and `n&#8217; (max tasks) commands<br \/>\nthat might be active.\u00a0 It also provides for an exit from PID<br \/>\nmonitoring, User filtering and Other filtering.\u00a0 See the `-p&#8217;<br \/>\ncommand-line option for a discussion of PID monitoring, the<br \/>\n`U&#8217; or `u&#8217; interactive commands for User filtering and the `O&#8217;<br \/>\nor `o&#8217; interactive commands for Other filtering.<\/p>\n<p>Additionally, any window that has been scrolled will be reset<br \/>\nwith this command.\u00a0 See topic 5c. SCROLLING a Window for<br \/>\nadditional information regarding vertical and horizontal<br \/>\nscrolling.<\/p>\n<p>When operating in alternate-display mode this command has a<br \/>\nbroader meaning.<\/p>\n<p>0\u00a0 :Zero-Suppress toggle<br \/>\nThis command determines whether zeros are shown or suppressed<br \/>\nfor many of the fields in a task window.\u00a0 Fields like UID,<br \/>\nGID, NI, PR or P are not affected by this toggle.<\/p>\n<p>A\u00a0 :Alternate-Display-Mode toggle<br \/>\nThis command will switch between full-screen mode and<br \/>\nalternate-display mode.\u00a0 See topic 5. ALTERNATE-DISPLAY<br \/>\nProvisions and the `g&#8217; interactive command for insight into<br \/>\n`current&#8217; windows and field groups.<\/p>\n<p>B\u00a0 :Bold-Disable\/Enable toggle<br \/>\nThis command will influence use of the bold terminfo<br \/>\ncapability and alters both the summary area and task area for<br \/>\nthe `current&#8217; window.\u00a0 While it is intended primarily for use<br \/>\nwith dumb terminals, it can be applied anytime.<\/p>\n<p>Note: When this toggle is On and top is operating in<br \/>\nmonochrome mode, the entire display will appear as normal<br \/>\ntext.\u00a0 Thus, unless the `x&#8217; and\/or `y&#8217; toggles are using<br \/>\nreverse for emphasis, there will be no visual confirmation<br \/>\nthat they are even on.<\/p>\n<p>*\u00a0 d | s\u00a0 :Change-Delay-Time-interval<br \/>\nYou will be prompted to enter the delay time, in seconds,<br \/>\nbetween display updates.<\/p>\n<p>Fractional seconds are honored, but a negative number is not<br \/>\nallowed.\u00a0 Entering 0 causes (nearly) continuous updates, with<br \/>\nan unsatisfactory display as the system and tty driver try to<br \/>\nkeep up with top&#8217;s demands.\u00a0 The delay value is inversely<br \/>\nproportional to system loading, so set it with care.<\/p>\n<p>If at any time you wish to know the current delay time, simply<br \/>\nask for help and view the system summary on the second line.<\/p>\n<p>E\u00a0 :Extend-Memory-Scale in Summary Area<br \/>\nWith this command you can cycle through the available summary<br \/>\narea memory scaling which ranges from KiB (kibibytes or 1,024<br \/>\nbytes) through EiB (exbibytes or 1,152,921,504,606,846,976<br \/>\nbytes).<\/p>\n<p>If you see a `+&#8217; between a displayed number and the following<br \/>\nlabel, it means that top was forced to truncate some portion<br \/>\nof that number.\u00a0 By raising the scaling factor, such<br \/>\ntruncation can be avoided.<\/p>\n<p>e\u00a0 :Extend-Memory-Scale in Task Windows<br \/>\nWith this command you can cycle through the available task<br \/>\nwindow memory scaling which ranges from KiB (kibibytes or<br \/>\n1,024 bytes) through PiB (pebibytes or 1,125,899,906,842,624<br \/>\nbytes).<\/p>\n<p>While top will try to honor the selected target range,<br \/>\nadditional scaling might still be necessary in order to<br \/>\naccommodate current values.\u00a0 If you wish to see a more<br \/>\nhomogeneous result in the memory columns, raising the scaling<br \/>\nrange will usually accomplish that goal.\u00a0 Raising it too high,<br \/>\nhowever, is likely to produce an all zero result which cannot<br \/>\nbe suppressed with the `0&#8242; interactive command.<\/p>\n<p>g\u00a0 :Choose-Another-Window\/Field-Group<br \/>\nYou will be prompted to enter a number between 1 and 4<br \/>\ndesignating the field group which should be made the `current&#8217;<br \/>\nwindow.\u00a0 You will soon grow comfortable with these 4 windows,<br \/>\nespecially after experimenting with alternate-display mode.<\/p>\n<p>H\u00a0 :Threads-mode toggle<br \/>\nWhen this toggle is On, individual threads will be displayed<br \/>\nfor all processes in all visible task windows.\u00a0 Otherwise, top<br \/>\ndisplays a summation of all threads in each process.<\/p>\n<p>I\u00a0 :Irix\/Solaris-Mode toggle<br \/>\nWhen operating in Solaris mode (`I&#8217; toggled Off), a task&#8217;s cpu<br \/>\nusage will be divided by the total number of CPUs.\u00a0 After<br \/>\nissuing this command, you&#8217;ll be told the new state of this<br \/>\ntoggle.<\/p>\n<p>*\u00a0 k\u00a0 :Kill-a-task<br \/>\nYou will be prompted for a PID and then the signal to send.<\/p>\n<p>Entering no PID or a negative number will be interpreted as<br \/>\nthe default shown in the prompt (the first task displayed).\u00a0 A<br \/>\nPID value of zero means the top program itself.<\/p>\n<p>The default signal, as reflected in the prompt, is SIGTERM.<br \/>\nHowever, you can send any signal, via number or name.<\/p>\n<p>If you wish to abort the kill process, do one of the following<br \/>\ndepending on your progress:<br \/>\n1) at the pid prompt, type an invalid number<br \/>\n2) at the signal prompt, type 0 (or any invalid signal)<br \/>\n3) at any prompt, type &lt;Esc&gt;<\/p>\n<p>q\u00a0 :Quit<\/p>\n<p>*\u00a0 r\u00a0 :Renice-a-Task<br \/>\nYou will be prompted for a PID and then the value to nice it<br \/>\nto.<\/p>\n<p>Entering no PID or a negative number will be interpreted as<br \/>\nthe default shown in the prompt (the first task displayed).\u00a0 A<br \/>\nPID value of zero means the top program itself.<\/p>\n<p>A positive nice value will cause a process to lose priority.<br \/>\nConversely, a negative nice value will cause a process to be<br \/>\nviewed more favorably by the kernel.\u00a0 As a general rule,<br \/>\nordinary users can only increase the nice value and are<br \/>\nprevented from lowering it.<\/p>\n<p>If you wish to abort the renice process, do one of the<br \/>\nfollowing depending on your progress:<br \/>\n1) at the pid prompt, type an invalid number<br \/>\n2) at the nice prompt, type &lt;Enter&gt; with no input<br \/>\n3) at any prompt, type &lt;Esc&gt;<\/p>\n<p>W\u00a0 :Write-the-Configuration-File<br \/>\nThis will save all of your options and toggles plus the<br \/>\ncurrent display mode and delay time.\u00a0 By issuing this command<br \/>\njust before quitting top, you will be able restart later in<br \/>\nexactly that same state.<\/p>\n<p>X\u00a0 :Extra-Fixed-Width<br \/>\nSome fields are fixed width and not scalable.\u00a0 As such, they<br \/>\nare subject to truncation which would be indicated by a `+&#8217; in<br \/>\nthe last position.<\/p>\n<p>This interactive command can be used to alter the widths of<br \/>\nthe following fields:<\/p>\n<p>field\u00a0 default\u00a0\u00a0\u00a0 field\u00a0 default\u00a0\u00a0\u00a0 field\u00a0 default<br \/>\nGID\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 5\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 GROUP\u00a0\u00a0\u00a0\u00a0 8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 WCHAN\u00a0\u00a0\u00a0 10<br \/>\nRUID\u00a0\u00a0\u00a0\u00a0\u00a0 5\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 RUSER\u00a0\u00a0\u00a0\u00a0 8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 nsIPC\u00a0\u00a0\u00a0 10<br \/>\nSUID\u00a0\u00a0\u00a0\u00a0\u00a0 5\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 SUSER\u00a0\u00a0\u00a0\u00a0 8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 nsMNT\u00a0\u00a0\u00a0 10<br \/>\nUID\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 5\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 USER\u00a0\u00a0\u00a0\u00a0\u00a0 8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 nsNET\u00a0\u00a0\u00a0 10<br \/>\nTTY\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 nsPID\u00a0\u00a0\u00a0 10<br \/>\nnsUSER\u00a0\u00a0 10<br \/>\nnsUTS\u00a0\u00a0\u00a0 10<\/p>\n<p>You will be prompted for the amount to be added to the default<br \/>\nwidths shown above.\u00a0 Entering zero forces a return to those<br \/>\ndefaults.<\/p>\n<p>If you enter a negative number, top will automatically<br \/>\nincrease the column size as needed until there is no more<br \/>\ntruncated data.\u00a0 You can accelerate this process by reducing<br \/>\nthe delay interval or holding down the &lt;Space&gt; bar.<\/p>\n<p>Note: Whether explicitly or automatically increased, the<br \/>\nwidths for these fields are never decreased by top.\u00a0 To narrow<br \/>\nthem you must specify a smaller number or restore the<br \/>\ndefaults.<\/p>\n<p>Y\u00a0 :Inspect-Other-Output<br \/>\nAfter issuing the `Y&#8217; interactive command, you will be<br \/>\nprompted for a target PID.\u00a0 Typing a value or accepting the<br \/>\ndefault results in a separate screen.\u00a0 That screen can be used<br \/>\nto view a variety of files or piped command output while the<br \/>\nnormal top iterative display is paused.<\/p>\n<p>Note: This interactive command is only fully realized when<br \/>\nsupporting entries have been manually added to the end of the<br \/>\ntop configuration file.\u00a0 For details on creating those<br \/>\nentries, see topic 6c. ADDING INSPECT Entries.<\/p>\n<p>Most of the keys used to navigate the Inspect feature are<br \/>\nreflected in its header prologue.\u00a0 There are, however,<br \/>\nadditional keys available once you have selected a particular<br \/>\nfile or command.\u00a0 They are familiar to anyone who has used the<br \/>\npager `less&#8217; and are summarized here for future reference.<\/p>\n<p>key\u00a0\u00a0\u00a0\u00a0\u00a0 function<br \/>\n=\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 alternate status-line, file or pipeline<br \/>\n\/\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 find, equivalent to `L&#8217; locate<br \/>\nn\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 find next, equivalent to `&amp;&#8217; locate next<br \/>\n&lt;Space&gt;\u00a0 scroll down, equivalent to &lt;PgDn&gt;<br \/>\nb\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 scroll up, equivalent to &lt;PgUp&gt;<br \/>\ng\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 first line, equivalent to &lt;Home&gt;<br \/>\nG\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 last line, equivalent to &lt;End&gt;<\/p>\n<p>Z\u00a0 :Change-Color-Mapping<br \/>\nThis key will take you to a separate screen where you can<br \/>\nchange the colors for the `current&#8217; window, or for all<br \/>\nwindows.\u00a0 For details regarding this interactive command see<br \/>\ntopic 4d. COLOR Mapping.<\/p>\n<p>*\u00a0 The commands shown with an asterisk (`*&#8217;) are not available in<br \/>\nSecure mode, nor will they be shown on the level-1 help screen.<\/p>\n<p>4b. SUMMARY AREA Commands<br \/>\nThe summary area interactive commands are always available in both<br \/>\nfull-screen mode and alternate-display mode.\u00a0 They affect the<br \/>\nbeginning lines of your display and will determine the position of<br \/>\nmessages and prompts.<\/p>\n<p>These commands always impact just the `current&#8217; window\/field group.<br \/>\nSee topic 5. ALTERNATE-DISPLAY Provisions and the `g&#8217; interactive<br \/>\ncommand for insight into `current&#8217; windows and field groups.<\/p>\n<p>C\u00a0 :Show-scroll-coordinates toggle<br \/>\nToggle an informational message which is displayed whenever<br \/>\nthe message line is not otherwise being used.\u00a0 For additional<br \/>\ninformation see topic 5c. SCROLLING a Window.<\/p>\n<p>l\u00a0 :Load-Average\/Uptime toggle<br \/>\nThis is also the line containing the program name (possibly an<br \/>\nalias) when operating in full-screen mode or the `current&#8217;<br \/>\nwindow name when operating in alternate-display mode.<\/p>\n<p>t\u00a0 :Task\/Cpu-States toggle<br \/>\nThis command affects from 2 to many summary area lines,<br \/>\ndepending on the state of the `1&#8242;, `2&#8242; or `3&#8242; command toggles<br \/>\nand whether or not top is running under true SMP.<\/p>\n<p>This portion of the summary area is also influenced by the `H&#8217;<br \/>\ninteractive command toggle, as reflected in the total label<br \/>\nwhich shows either Tasks or Threads.<\/p>\n<p>This command serves as a 4-way toggle, cycling through these<br \/>\nmodes:<br \/>\n1. detailed percentages by category (default)<br \/>\n2. abbreviated user\/system and total % + bar graph<br \/>\n3. abbreviated user\/system and total % + block graph<br \/>\n4. turn off task and cpu states display<\/p>\n<p>When operating in either of the graphic modes, the display<br \/>\nbecomes much more meaningful when individual CPUs or NUMA<br \/>\nnodes are also displayed.\u00a0 See the the `1&#8242;, `2&#8242; and `3&#8242;<br \/>\ncommands below for additional information.<\/p>\n<p>m\u00a0 :Memory\/Swap-Usage toggle<br \/>\nThis command affects the two summary area lines dealing with<br \/>\nphysical and virtual memory.<\/p>\n<p>This command serves as a 4-way toggle, cycling through these<br \/>\nmodes:<br \/>\n1. detailed percentages by memory type (default)<br \/>\n2. abbreviated % used\/total available + bar graph<br \/>\n3. abbreviated % used\/total available + block graph<br \/>\n4. turn off memory display<\/p>\n<p>1\u00a0 :Single\/Separate-Cpu-States toggle<br \/>\nThis command affects how the `t&#8217; command&#8217;s Cpu States portion<br \/>\nis shown.\u00a0 Although this toggle exists primarily to serve<br \/>\nmassively-parallel SMP machines, it is not restricted to<br \/>\nsolely SMP environments.<\/p>\n<p>When you see `%Cpu(s):&#8217; in the summary area, the `1&#8242; toggle is<br \/>\nOn and all cpu information is gathered in a single line.<br \/>\nOtherwise, each cpu is displayed separately as: `%Cpu0, %Cpu1,<br \/>\n&#8230;&#8217;\u00a0 up to available screen height.<\/p>\n<p>2\u00a0 :NUMA-Nodes\/Cpu-Summary toggle<br \/>\nThis command toggles between the `1&#8242; command cpu summary<br \/>\ndisplay (only) or a summary display plus the cpu usage<br \/>\nstatistics for each NUMA Node.\u00a0 It is only available if a<br \/>\nsystem has the requisite NUMA support.<\/p>\n<p>3\u00a0 :Expand-NUMA-Node<br \/>\nYou will be invited to enter a number representing a NUMA<br \/>\nNode.\u00a0 Thereafter, a node summary plus the statistics for each<br \/>\ncpu in that node will be shown until either the `1&#8242; or `2&#8242;<br \/>\ncommand toggle is pressed.\u00a0 This interactive command is only<br \/>\navailable if a system has the requisite NUMA support.<\/p>\n<p>Note: If the entire summary area has been toggled Off for any window,<br \/>\nyou would be left with just the message line.\u00a0 In that way, you will<br \/>\nhave maximized available task rows but (temporarily) sacrificed the<br \/>\nprogram name in full-screen mode or the `current&#8217; window name when in<br \/>\nalternate-display mode.<\/p>\n<p>4c. TASK AREA Commands<br \/>\nThe task area interactive commands are always available in<br \/>\nfull-screen mode.<\/p>\n<p>The task area interactive commands are never available in<br \/>\nalternate-display mode if the `current&#8217; window&#8217;s task display has<br \/>\nbeen toggled Off (see topic 5. ALTERNATE-DISPLAY Provisions).<\/p>\n<p>APPEARANCE of task window<\/p>\n<p>J\u00a0 :Justify-Numeric-Columns toggle<br \/>\nAlternates between right-justified (the default) and left-<br \/>\njustified numeric data.\u00a0 If the numeric data completely fills<br \/>\nthe available column, this command toggle may impact the<br \/>\ncolumn header only.<\/p>\n<p>j\u00a0 :Justify-Character-Columns toggle<br \/>\nAlternates between left-justified (the default) and right-<br \/>\njustified character data.\u00a0 If the character data completely<br \/>\nfills the available column, this command toggle may impact the<br \/>\ncolumn header only.<\/p>\n<p>The following commands will also be influenced by the state of the<br \/>\nglobal `B&#8217; (bold enable) toggle.<\/p>\n<p>b\u00a0 :Bold\/Reverse toggle<br \/>\nThis command will impact how the `x&#8217; and `y&#8217; toggles are<br \/>\ndisplayed.\u00a0 It may also impact the summary area when a bar<br \/>\ngraph has been selected for cpu states or memory usage via the<br \/>\n&#8216;t&#8217; or &#8216;m&#8217; toggles.<\/p>\n<p>x\u00a0 :Column-Highlight toggle<br \/>\nChanges highlighting for the current sort field.\u00a0 If you<br \/>\nforget which field is being sorted this command can serve as a<br \/>\nquick visual reminder, providing the sort field is being<br \/>\ndisplayed.\u00a0 The sort field might not be visible because:<br \/>\n1) there is insufficient Screen Width<br \/>\n2) the `f&#8217; interactive command turned it Off<\/p>\n<p>Note: Whenever Searching and\/or Other Filtering is active in a<br \/>\nwindow, column highlighting is temporarily disabled.\u00a0 See the<br \/>\nnotes at the end of topics 5d. SEARCHING and 5e. FILTERING for<br \/>\nan explanation why.<\/p>\n<p>y\u00a0 :Row-Highlight toggle<br \/>\nChanges highlighting for &#8220;running&#8221; tasks.\u00a0 For additional<br \/>\ninsight into this task state, see topic 3a. DESCRIPTIONS of<br \/>\nFields, the `S&#8217; field (Process Status).<\/p>\n<p>Use of this provision provides important insight into your<br \/>\nsystem&#8217;s health.\u00a0 The only costs will be a few additional tty<br \/>\nescape sequences.<\/p>\n<p>z\u00a0 :Color\/Monochrome toggle<br \/>\nSwitches the `current&#8217; window between your last used color<br \/>\nscheme and the older form of black-on-white or white-on-black.<br \/>\nThis command will alter both the summary area and task area<br \/>\nbut does not affect the state of the `x&#8217;, `y&#8217; or `b&#8217; toggles.<\/p>\n<p>CONTENT of task window<\/p>\n<p>c\u00a0 :Command-Line\/Program-Name toggle<br \/>\nThis command will be honored whether or not the COMMAND column<br \/>\nis currently visible.\u00a0 Later, should that field come into<br \/>\nview, the change you applied will be seen.<\/p>\n<p>f | F\u00a0 :Fields-Management<br \/>\nThese keys display a separate screen where you can change<br \/>\nwhich fields are displayed, their order and also designate the<br \/>\nsort field.\u00a0 For additional information on these interactive<br \/>\ncommands see topic 3b. MANAGING Fields.<\/p>\n<p>o | O\u00a0 :Other-Filtering<br \/>\nYou will be prompted for the selection criteria which then<br \/>\ndetermines which tasks will be shown in the `current&#8217; window.<br \/>\nYour criteria can be made case sensitive or case can be<br \/>\nignored.\u00a0 And you determine if top should include or exclude<br \/>\nmatching tasks.<\/p>\n<p>See topic 5e. FILTERING in a window for details on these and<br \/>\nadditional related interactive commands.<\/p>\n<p>S\u00a0 :Cumulative-Time-Mode toggle<br \/>\nWhen Cumulative mode is On, each process is listed with the<br \/>\ncpu time that it and its dead children have used.<\/p>\n<p>When Off, programs that fork into many separate tasks will<br \/>\nappear less demanding.\u00a0 For programs like `init&#8217; or a shell<br \/>\nthis is appropriate but for others, like compilers, perhaps<br \/>\nnot.\u00a0 Experiment with two task windows sharing the same sort<br \/>\nfield but with different `S&#8217; states and see which<br \/>\nrepresentation you prefer.<\/p>\n<p>After issuing this command, you&#8217;ll be informed of the new<br \/>\nstate of this toggle.\u00a0 If you wish to know in advance whether<br \/>\nor not Cumulative mode is in effect, simply ask for help and<br \/>\nview the window summary on the second line.<\/p>\n<p>u | U\u00a0 :Show-Specific-User-Only<br \/>\nYou will be prompted for the uid or name of the user to<br \/>\ndisplay.\u00a0 The -u option matches on\u00a0 effective user whereas the<br \/>\n-U option matches on any user (real, effective, saved, or<br \/>\nfilesystem).<\/p>\n<p>Thereafter, in that task window only matching users will be<br \/>\nshown, or possibly no processes will be shown.\u00a0 Prepending an<br \/>\nexclamation point (&#8216;!&#8217;) to the user id or name instructs top<br \/>\nto display only processes with users not matching the one<br \/>\nprovided.<\/p>\n<p>Different task windows can be used to filter different users.<br \/>\nLater, if you wish to monitor all users again in the `current&#8217;<br \/>\nwindow, re-issue this command but just press &lt;Enter&gt; at the<br \/>\nprompt.<\/p>\n<p>V\u00a0 :Forest-View-Mode toggle<br \/>\nIn this mode, processes are reordered according to their<br \/>\nparents and the layout of the COMMAND column resembles that of<br \/>\na tree.\u00a0 In forest view mode it is still possible to toggle<br \/>\nbetween program name and command line (see the `c&#8217; interactive<br \/>\ncommand) or between processes and threads (see the `H&#8217;<br \/>\ninteractive command).<\/p>\n<p>Note: Typing any key affecting the sort order will exit forest<br \/>\nview mode in the `current&#8217; window.\u00a0 See topic 4c. TASK AREA<br \/>\nCommands, SORTING for information on those keys.<\/p>\n<p>SIZE of task window<\/p>\n<p>i\u00a0 :Idle-Process toggle<br \/>\nDisplays all tasks or just active tasks.\u00a0 When this toggle is<br \/>\nOff, tasks that have not used any CPU since the last update<br \/>\nwill not be displayed.\u00a0 However, due to the granularity of the<br \/>\n%CPU and TIME+ fields, some processes may still be displayed<br \/>\nthat appear to have used no CPU.<\/p>\n<p>If this command is applied to the last task display when in<br \/>\nalternate-display mode, then it will not affect the window&#8217;s<br \/>\nsize, as all prior task displays will have already been<br \/>\npainted.<\/p>\n<p>n | #\u00a0 :Set-Maximum-Tasks<br \/>\nYou will be prompted to enter the number of tasks to display.<br \/>\nThe lessor of your number and available screen rows will be<br \/>\nused.<\/p>\n<p>When used in alternate-display mode, this is the command that<br \/>\ngives you precise control over the size of each currently<br \/>\nvisible task display, except for the very last.\u00a0 It will not<br \/>\naffect the last window&#8217;s size, as all prior task displays will<br \/>\nhave already been painted.<\/p>\n<p>Note: If you wish to increase the size of the last visible<br \/>\ntask display when in alternate-display mode, simply decrease<br \/>\nthe size of the task display(s) above it.<\/p>\n<p>SORTING of task window<\/p>\n<p>For compatibility, this top supports most of the former top sort<br \/>\nkeys.\u00a0 Since this is primarily a service to former top users,<br \/>\nthese commands do not appear on any help screen.<br \/>\ncommand\u00a0\u00a0 sorted-field\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 supported<br \/>\nA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 start time (non-display)\u00a0\u00a0\u00a0\u00a0\u00a0 No<br \/>\nM\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 %MEM\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Yes<br \/>\nN\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PID\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Yes<br \/>\nP\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 %CPU\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Yes<br \/>\nT\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 TIME+\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Yes<\/p>\n<p>Before using any of the following sort provisions, top suggests<br \/>\nthat you temporarily turn on column highlighting using the `x&#8217;<br \/>\ninteractive command.\u00a0 That will help ensure that the actual sort<br \/>\nenvironment matches your intent.<\/p>\n<p>The following interactive commands will only be honored when the<br \/>\ncurrent sort field is visible.\u00a0 The sort field might not be<br \/>\nvisible because:<br \/>\n1) there is insufficient Screen Width<br \/>\n2) the `f&#8217; interactive command turned it Off<\/p>\n<p>&lt;\u00a0 :Move-Sort-Field-Left<br \/>\nMoves the sort column to the left unless the current sort<br \/>\nfield is the first field being displayed.<\/p>\n<p>&gt;\u00a0 :Move-Sort-Field-Right<br \/>\nMoves the sort column to the right unless the current sort<br \/>\nfield is the last field being displayed.<\/p>\n<p>The following interactive commands will always be honored whether<br \/>\nor not the current sort field is visible.<\/p>\n<p>f | F\u00a0 :Fields-Management<br \/>\nThese keys display a separate screen where you can change<br \/>\nwhich field is used as the sort column, among other<br \/>\nfunctions.\u00a0 This can be a convenient way to simply verify<br \/>\nthe current sort field, when running top with column<br \/>\nhighlighting turned Off.<\/p>\n<p>R\u00a0 :Reverse\/Normal-Sort-Field toggle<br \/>\nUsing this interactive command you can alternate between<br \/>\nhigh-to-low and low-to-high sorts.<\/p>\n<p>Note: Field sorting uses internal values, not those in column<br \/>\ndisplay.\u00a0 Thus, the TTY and WCHAN fields will violate strict ASCII<br \/>\ncollating sequence.<\/p>\n<p>4d. COLOR Mapping<br \/>\nWhen you issue the `Z&#8217; interactive command, you will be presented<br \/>\nwith a separate screen.\u00a0 That screen can be used to change the colors<br \/>\nin just the `current&#8217; window or in all four windows before returning<br \/>\nto the top display.<\/p>\n<p>The following interactive commands are available.<br \/>\n4 upper case letters to select a target<br \/>\n8 numbers to select a color<br \/>\nnormal toggles available<br \/>\nB\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 :bold disable\/enable<br \/>\nb\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 :running tasks &#8220;bold&#8221;\/reverse<br \/>\nz\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 :color\/mono<br \/>\nother commands available<br \/>\na\/w\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 :apply, then go to next\/prior<br \/>\n&lt;Enter&gt;\u00a0\u00a0 :apply and exit<br \/>\nq\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 :abandon current changes and exit<\/p>\n<p>If you use `a&#8217; or `w&#8217; to cycle the targeted window, you will have<br \/>\napplied the color scheme that was displayed when you left that<br \/>\nwindow.\u00a0 You can, of course, easily return to any window and reapply<br \/>\ndifferent colors or turn colors Off completely with the `z&#8217; toggle.<\/p>\n<p>The Color Mapping screen can also be used to change the `current&#8217;<br \/>\nwindow\/field group in either full-screen mode or alternate-display<br \/>\nmode.\u00a0 Whatever was targeted when `q&#8217; or &lt;Enter&gt; was pressed will be<br \/>\nmade current as you return to the top display.<\/p>\n<p>5. ALTERNATE-DISPLAY Provisions\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>5a. WINDOWS Overview<br \/>\nField Groups\/Windows:<br \/>\nIn full-screen mode there is a single window represented by the<br \/>\nentire screen.\u00a0 That single window can still be changed to display<br \/>\n1 of 4 different field groups (see the `g&#8217; interactive command,<br \/>\nrepeated below).\u00a0 Each of the 4 field groups has a unique<br \/>\nseparately configurable summary area and its own configurable task<br \/>\narea.<\/p>\n<p>In alternate-display mode, those 4 underlying field groups can now<br \/>\nbe made visible simultaneously, or can be turned Off individually<br \/>\nat your command.<\/p>\n<p>The summary area will always exist, even if it&#8217;s only the message<br \/>\nline.\u00a0 At any given time only one summary area can be displayed.<br \/>\nHowever, depending on your commands, there could be from zero to<br \/>\nfour separate task displays currently showing on the screen.<\/p>\n<p>Current Window:<br \/>\nThe `current&#8217; window is the window associated with the summary<br \/>\narea and the window to which task related commands are always<br \/>\ndirected.\u00a0 Since in alternate-display mode you can toggle the task<br \/>\ndisplay Off, some commands might be restricted for the `current&#8217;<br \/>\nwindow.<\/p>\n<p>A further complication arises when you have toggled the first<br \/>\nsummary area line Off.\u00a0 With the loss of the window name (the `l&#8217;<br \/>\ntoggled line), you&#8217;ll not easily know what window is the `current&#8217;<br \/>\nwindow.<\/p>\n<p>5b. COMMANDS for Windows<br \/>\n&#8211; | _\u00a0 :Show\/Hide-Window(s) toggles<br \/>\nThe `-&#8216; key turns the `current&#8217; window&#8217;s task display On and<br \/>\nOff.\u00a0 When On, that task area will show a minimum of the<br \/>\ncolumns header you&#8217;ve established with the `f&#8217; interactive<br \/>\ncommand.\u00a0 It will also reflect any other task area<br \/>\noptions\/toggles you&#8217;ve applied yielding zero or more tasks.<\/p>\n<p>The `_&#8217; key does the same for all task displays.\u00a0 In other<br \/>\nwords, it switches between the currently visible task<br \/>\ndisplay(s) and any task display(s) you had toggled Off.\u00a0 If<br \/>\nall 4 task displays are currently visible, this interactive<br \/>\ncommand will leave the summary area as the only display<br \/>\nelement.<\/p>\n<p>*\u00a0 = | +\u00a0 :Equalize-(reinitialize)-Window(s)<br \/>\nThe `=&#8217; key forces the `current&#8217; window&#8217;s task display to be<br \/>\nvisible.\u00a0 It also reverses any `i&#8217; (idle tasks), `n&#8217; (max<br \/>\ntasks), `u\/U&#8217; (user filter) and `o\/O&#8217; (other filter) commands<br \/>\nthat might be active.\u00a0 Also, if the window had been scrolled,<br \/>\nit will be reset with this command.\u00a0 See topic 5c. SCROLLING a<br \/>\nWindow for additional information regarding vertical and<br \/>\nhorizontal scrolling.<\/p>\n<p>The `+&#8217; key does the same for all windows.\u00a0 The four task<br \/>\ndisplays will reappear, evenly balanced.\u00a0 They will also have<br \/>\nretained any customizations you had previously applied, except<br \/>\nfor the `i&#8217; (idle tasks), `n&#8217; (max tasks), `u\/U&#8217; (user<br \/>\nfilter), `o\/O&#8217; (other filter) and scrolling interactive<br \/>\ncommands.<\/p>\n<p>*\u00a0 A\u00a0 :Alternate-Display-Mode toggle<br \/>\nThis command will switch between full-screen mode and<br \/>\nalternate-display mode.<\/p>\n<p>The first time you issue this command, all four task displays<br \/>\nwill be shown.\u00a0 Thereafter when you switch modes, you will see<br \/>\nonly the task display(s) you&#8217;ve chosen to make visible.<\/p>\n<p>*\u00a0 a | w\u00a0 :Next-Window-Forward\/Backward<br \/>\nThis will change the `current&#8217; window, which in turn changes<br \/>\nthe window to which commands are directed.\u00a0 These keys act in<br \/>\na circular fashion so you can reach any desired window using<br \/>\neither key.<\/p>\n<p>Assuming the window name is visible (you have not toggled `l&#8217;<br \/>\nOff), whenever the `current&#8217; window name loses its<br \/>\nemphasis\/color, that&#8217;s a reminder the task display is Off and<br \/>\nmany commands will be restricted.<\/p>\n<p>*\u00a0 g\u00a0 :Choose-Another-Window\/Field-Group<br \/>\nYou will be prompted to enter a number between 1 and 4<br \/>\ndesignating the field group which should be made the `current&#8217;<br \/>\nwindow.<\/p>\n<p>In full-screen mode, this command is necessary to alter the<br \/>\n`current&#8217; window.\u00a0 In alternate-display mode, it is simply a<br \/>\nless convenient alternative to the `a&#8217; and `w&#8217; commands.<\/p>\n<p>G\u00a0 :Change-Window\/Field-Group-Name<br \/>\nYou will be prompted for a new name to be applied to the<br \/>\n`current&#8217; window.\u00a0 It does not require that the window name be<br \/>\nvisible (the `l&#8217; toggle to be On).<\/p>\n<p>*\u00a0 The interactive commands shown with an asterisk (`*&#8217;) have use<br \/>\nbeyond alternate-display mode.<br \/>\n=, A, g\u00a0\u00a0\u00a0 are always available<br \/>\na, w\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 act the same with color mapping<br \/>\nand fields management<\/p>\n<p>5c. SCROLLING a Window<br \/>\nTypically a task window is a partial view into a systems&#8217;s total<br \/>\ntasks\/threads which shows only some of the available fields\/columns.<br \/>\nWith these scrolling keys, you can move that view vertically or<br \/>\nhorizontally to reveal any desired task or column.<\/p>\n<p>Up,PgUp\u00a0 :Scroll-Tasks<br \/>\nMove the view up toward the first task row, until the first task<br \/>\nis displayed at the top of the `current&#8217; window.\u00a0 The Up arrow<br \/>\nkey moves a single line while PgUp scrolls the entire window.<\/p>\n<p>Down,PgDn\u00a0 :Scroll-Tasks<br \/>\nMove the view down toward the last task row, until the last task<br \/>\nis the only task displayed at the top of the `current&#8217; window.<br \/>\nThe Down arrow key moves a single line while PgDn scrolls the<br \/>\nentire window.<\/p>\n<p>Left,Right\u00a0 :Scroll-Columns<br \/>\nMove the view of displayable fields horizontally one column at a<br \/>\ntime.<\/p>\n<p>Note: As a reminder, some fields\/columns are not fixed-width but<br \/>\nallocated all remaining screen width when visible.\u00a0 When<br \/>\nscrolling right or left, that feature may produce some unexpected<br \/>\nresults initially.<\/p>\n<p>Additionally, there are special provisions for any variable width<br \/>\nfield when positioned as the last displayed field.\u00a0 Once that<br \/>\nfield is reached via the right arrow key, and is thus the only<br \/>\ncolumn shown, you can continue scrolling horizontally within such<br \/>\na field.\u00a0 See the `C&#8217; interactive command below for additional<br \/>\ninformation.<\/p>\n<p>Home\u00a0 :Jump-to-Home-Position<br \/>\nReposition the display to the un-scrolled coordinates.<\/p>\n<p>End\u00a0 :Jump-to-End-Position<br \/>\nReposition the display so that the rightmost column reflects the<br \/>\nlast displayable field and the bottom task row represents the<br \/>\nlast task.<\/p>\n<p>Note: From this position it is still possible to scroll down and<br \/>\nright using the arrow keys.\u00a0 This is true until a single column<br \/>\nand a single task is left as the only display element.<\/p>\n<p>C\u00a0 :Show-scroll-coordinates toggle<br \/>\nToggle an informational message which is displayed whenever the<br \/>\nmessage line is not otherwise being used.\u00a0 That message will take<br \/>\none of two forms depending on whether or not a variable width<br \/>\ncolumn has also been scrolled.<\/p>\n<p>scroll coordinates: y = n\/n (tasks), x = n\/n (fields)<br \/>\nscroll coordinates: y = n\/n (tasks), x = n\/n (fields) + nn<\/p>\n<p>The coordinates shown as n\/n are relative to the upper left<br \/>\ncorner of the `current&#8217; window.\u00a0 The additional `+ nn&#8217; represents<br \/>\nthe displacement into a variable width column when it has been<br \/>\nscrolled horizontally.\u00a0 Such displacement occurs in normal 8<br \/>\ncharacter tab stop amounts via the right and left arrow keys.<\/p>\n<p>y = n\/n (tasks)<br \/>\nThe first n represents the topmost visible task and is<br \/>\ncontrolled by scrolling keys.\u00a0 The second n is updated<br \/>\nautomatically to reflect total tasks.<\/p>\n<p>x = n\/n (fields)<br \/>\nThe first n represents the leftmost displayed column and is<br \/>\ncontrolled by scrolling keys.\u00a0 The second n is the total<br \/>\nnumber of displayable fields and is established with the `f&#8217;<br \/>\ninteractive command.<\/p>\n<p>The above interactive commands are always available in full-screen<br \/>\nmode but never available in alternate-display mode if the `current&#8217;<br \/>\nwindow&#8217;s task display has been toggled Off.<\/p>\n<p>Note: When any form of filtering is active, you can expect some<br \/>\nslight aberrations when scrolling since not all tasks will be<br \/>\nvisible.\u00a0 This is particularly apparent when using the Up\/Down arrow<br \/>\nkeys.<\/p>\n<p>5d. SEARCHING in a Window<br \/>\nYou can use these interactive commands to locate a task row<br \/>\ncontaining a particular value.<\/p>\n<p>L\u00a0 :Locate-a-string<br \/>\nYou will be prompted for the case-sensitive string to locate<br \/>\nstarting from the current window coordinates.\u00a0 There are no<br \/>\nrestrictions on search string content.<\/p>\n<p>Searches are not limited to values from a single field or column.<br \/>\nAll of the values displayed in a task row are allowed in a search<br \/>\nstring.\u00a0 You may include spaces, numbers, symbols and even forest<br \/>\nview artwork.<\/p>\n<p>Keying &lt;Enter&gt; with no input will effectively disable the `&amp;&#8217; key<br \/>\nuntil a new search string is entered.<\/p>\n<p>&amp;\u00a0 :Locate-next<br \/>\nAssuming a search string has been established, top will attempt<br \/>\nto locate the next occurrence.<\/p>\n<p>When a match is found, the current window is repositioned vertically<br \/>\nso the task row containing that string is first.\u00a0 The scroll<br \/>\ncoordinates message can provide confirmation of such vertical<br \/>\nrepositioning (see the `C&#8217; interactive command).\u00a0 Horizontal<br \/>\nscrolling, however, is never altered via searching.<\/p>\n<p>The availability of a matching string will be influenced by the<br \/>\nfollowing factors.<\/p>\n<p>a. Which fields are displayable from the total available,<br \/>\nsee topic 3b. MANAGING Fields.<\/p>\n<p>b. Scrolling a window vertically and\/or horizontally,<br \/>\nsee topic 5c. SCROLLING a Window.<\/p>\n<p>c. The state of the command\/command-line toggle,<br \/>\nsee the `c&#8217; interactive command.<\/p>\n<p>d. The stability of the chosen sort column,<br \/>\nfor example PID is good but %CPU bad.<\/p>\n<p>If a search fails, restoring the `current&#8217; window home (unscrolled)<br \/>\nposition, scrolling horizontally, displaying command-lines or<br \/>\nchoosing a more stable sort field could yet produce a successful `&amp;&#8217;<br \/>\nsearch.<\/p>\n<p>The above interactive commands are always available in full-screen<br \/>\nmode but never available in alternate-display mode if the `current&#8217;<br \/>\nwindow&#8217;s task display has been toggled Off.<\/p>\n<p>Note: Whenever a Search is active in a window, top will turn column<br \/>\nhighlighting Off to prevent false matches on internal non-display<br \/>\nescape sequences.\u00a0 Such highlighting will be restored when a window&#8217;s<br \/>\nsearch string is empty.\u00a0 See the `x&#8217; interactive command for<br \/>\nadditional information on sort column highlighting.<\/p>\n<p>5e. FILTERING in a Window<br \/>\nYou can use this Other Filter feature to establish selection criteria<br \/>\nwhich will then determine which tasks are shown in the `current&#8217;<br \/>\nwindow.<\/p>\n<p>Establishing a filter requires: 1) a field name; 2) an operator; and<br \/>\n3) a selection value, as a minimum.\u00a0 This is the most complex of<br \/>\ntop&#8217;s user input requirements so, when you make a mistake, command<br \/>\nrecall will be your friend.\u00a0 Remember the Up\/Down arrow keys or their<br \/>\naliases when prompted for input.<\/p>\n<p>Filter Basics<\/p>\n<p>1. field names are case sensitive and spelled as in the header<\/p>\n<p>2. selection values need not comprise the full displayed field<\/p>\n<p>3. a selection is either case insensitive or sensitive to case<\/p>\n<p>4. the default is inclusion, prepending `!&#8217; denotes exclusions<\/p>\n<p>5. multiple selection criteria can be applied to a task window<\/p>\n<p>6. inclusion and exclusion criteria can be used simultaneously<\/p>\n<p>7. the 1 equality and 2 relational filters can be freely mixed<\/p>\n<p>8. separate unique filters are maintained for each task window<\/p>\n<p>If a field is not turned on or is not currently in view, then your<br \/>\nselection criteria will not affect the display.\u00a0 Later, should a<br \/>\nfiltered field become visible, the selection criteria will then be<br \/>\napplied.<\/p>\n<p>Keyboard Summary<\/p>\n<p>o\u00a0 :Other-Filter (lower case)<br \/>\nYou will be prompted to establish a filter that ignores case<br \/>\nwhen matching.<\/p>\n<p>O\u00a0 :Other-Filter (upper case)<br \/>\nYou will be prompted to establish a case sensitive filter.<\/p>\n<p>^O\u00a0 :Show-Active-Filters (Ctrl key + `o&#8217;)<br \/>\nThis can serve as a reminder of which filters are active in the<br \/>\n`current&#8217; window.\u00a0 A summary will be shown on the message line<br \/>\nuntil you press the &lt;Enter&gt; key.<\/p>\n<p>=\u00a0 :Reset-Filtering in current window<br \/>\nThis clears all of your selection criteria in the `current&#8217;<br \/>\nwindow.\u00a0 It also has additional impact so please see topic 4a.<br \/>\nGLOBAL Commands.<\/p>\n<p>+\u00a0 :Reset-Filtering in all windows<br \/>\nThis clears the selection criteria in all windows, assuming you<br \/>\nare in alternate-display mode.\u00a0 As with the `=&#8217; interactive<br \/>\ncommand, it too has additional consequences so you might wish<br \/>\nto see topic 5b. COMMANDS for Windows.<\/p>\n<p>Input Requirements<\/p>\n<p>When prompted for selection criteria, the data you provide must<br \/>\ntake one of two forms.\u00a0 There are 3 required pieces of<br \/>\ninformation, with a 4th as optional.\u00a0 These examples use spaces<br \/>\nfor clarity but your input generally would not.<br \/>\n#1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 #2\u00a0 #3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ( required )<br \/>\nField-Name\u00a0\u00a0 ?\u00a0\u00a0 include-if-value<br \/>\n!\u00a0 Field-Name\u00a0\u00a0 ?\u00a0\u00a0 exclude-if-value<br \/>\n#4\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ( optional )<\/p>\n<p>Items #1, #3 and #4 should be self-explanatory.\u00a0 Item #2<br \/>\nrepresents both a required delimiter and the operator which must<br \/>\nbe one of either equality (`=&#8217;) or relation (`&lt;&#8216; or `&gt;&#8217;).<\/p>\n<p>The `=&#8217; equality operator requires only a partial match and that<br \/>\ncan reduce your `if-value&#8217; input requirements.\u00a0 The `&gt;&#8217; or `&lt;&#8216;<br \/>\nrelational operators always employ string comparisons, even with<br \/>\nnumeric fields.\u00a0 They are designed to work with a field&#8217;s default<br \/>\njustification and with homogeneous data.\u00a0 When some field&#8217;s<br \/>\nnumeric amounts have been subjected to scaling while others have<br \/>\nnot, that data is no longer homogeneous.<\/p>\n<p>If you establish a relational filter and you have changed the<br \/>\ndefault Numeric or Character justification, that filter is likely<br \/>\nto fail.\u00a0 When a relational filter is applied to a memory field<br \/>\nand you have not changed the scaling, it may produce misleading<br \/>\nresults.\u00a0 This happens, for example, because `100.0m&#8217; (MiB) would<br \/>\nappear greater than `1.000g&#8217; (GiB) when compared as strings.<\/p>\n<p>If your filtered results appear suspect, simply altering<br \/>\njustification or scaling may yet achieve the desired objective.<br \/>\nSee the `j&#8217;, `J&#8217; and `e&#8217; interactive commands for additional<br \/>\ninformation.<\/p>\n<p>Potential Problems<\/p>\n<p>These GROUP filters could produce the exact same results or the<br \/>\nsecond one might not display anything at all, just a blank task<br \/>\nwindow.<br \/>\nGROUP=root\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ( only the same results when )<br \/>\nGROUP=ROOT\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ( invoked via lower case `o&#8217; )<\/p>\n<p>Either of these RES filters might yield inconsistent and\/or<br \/>\nmisleading results, depending on the current memory scaling<br \/>\nfactor.\u00a0 Or both filters could produce the exact same results.<br \/>\nRES&gt;9999\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ( only the same results when )<br \/>\n!RES&lt;10000\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ( memory scaling is at `KiB&#8217; )<\/p>\n<p>This nMin filter illustrates a problem unique to scalable fields.<br \/>\nThis particular field can display a maximum of 4 digits, beyond<br \/>\nwhich values are automatically scaled to KiB or above.\u00a0 So while<br \/>\namounts greater than 9999 exist, they will appear as 2.6m, 197k,<br \/>\netc.<br \/>\nnMin&gt;9999\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ( always a blank task window )<\/p>\n<p>Potential Solutions<\/p>\n<p>These examples illustrate how Other Filtering can be creatively<br \/>\napplied to achieve almost any desired result.\u00a0 Single quotes are<br \/>\nsometimes shown to delimit the spaces which are part of a filter<br \/>\nor to represent a request for status (^O) accurately.\u00a0 But if you<br \/>\nused them with if-values in real life, no matches would be found.<\/p>\n<p>Assuming field nTH is displayed, the first filter will result in<br \/>\nonly multi-threaded processes being shown.\u00a0 It also reminds us<br \/>\nthat a trailing space is part of every displayed field.\u00a0 The<br \/>\nsecond filter achieves the exact same results with less typing.<br \/>\n!nTH=` 1 &#8216;\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ( &#8216; for clarity only )<br \/>\nnTH&gt;1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ( same with less i\/p )<\/p>\n<p>With Forest View mode active and the COMMAND column in view, this<br \/>\nfilter effectively collapses child processes so that just 3 levels<br \/>\nare shown.<br \/>\n!COMMAND=`\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 `- &#8216;\u00a0\u00a0\u00a0\u00a0 ( &#8216; for clarity only )<\/p>\n<p>The final two filters appear as in response to the status request<br \/>\nkey (^O).\u00a0 In reality, each filter would have required separate<br \/>\ninput.\u00a0 The PR example shows the two concurrent filters necessary<br \/>\nto display tasks with priorities of 20 or more, since some might<br \/>\nbe negative.\u00a0 Then by exploiting trailing spaces, the nMin series<br \/>\nof filters could achieve the failed `9999&#8242; objective discussed<br \/>\nabove.<br \/>\n`PR&gt;20&#8217; + `!PR=-&#8216;\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ( 2 for right result )<br \/>\n`!nMin=0 &#8216; + `!nMin=1 &#8216; + `!nMin=2 &#8216; + `!nMin=3 &#8216; &#8230;<\/p>\n<p>Note: Whenever Other Filtering is active in a window, top will turn<br \/>\ncolumn highlighting Off to prevent false matches on internal non-<br \/>\ndisplay escape sequences.\u00a0 Such highlighting will be restored when a<br \/>\nwindow is no longer subject to filtering.\u00a0 See the `x&#8217; interactive<br \/>\ncommand for additional information on sort column highlighting.<\/p>\n<p>6. FILES\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>6a. SYSTEM Configuration File<br \/>\nThe presence of this file will influence which version of the help<br \/>\nscreen is shown to an ordinary user.\u00a0 More importantly, it will limit<br \/>\nwhat ordinary users are allowed to do when top is running.\u00a0 They will<br \/>\nnot be able to issue the following commands.<br \/>\nk\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Kill a task<br \/>\nr\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Renice a task<br \/>\nd or s\u00a0\u00a0 Change delay\/sleep interval<\/p>\n<p>The system configuration file is not created by top.\u00a0 Rather, you<br \/>\ncreate this file manually and place it in the \/etc directory.\u00a0 Its<br \/>\nname must be `toprc&#8217; and must have no leading `.&#8217; (period).\u00a0 It must<br \/>\nhave only two lines.<\/p>\n<p>Here is an example of the contents of \/etc\/toprc:<br \/>\ns\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # line 1: secure mode switch<br \/>\n5.0\u00a0\u00a0\u00a0\u00a0\u00a0 # line 2: delay interval in seconds<\/p>\n<p>6b. PERSONAL Configuration File<br \/>\nThis file is written as `$HOME\/.your-name-4-top&#8217; + `rc&#8217;.\u00a0 Use the `W&#8217;<br \/>\ninteractive command to create it or update it.<\/p>\n<p>Here is the general layout:<br \/>\nglobal\u00a0\u00a0 # line\u00a0 1: the program name\/alias notation<br \/>\n&#8221;\u00a0\u00a0\u00a0\u00a0\u00a0 # line\u00a0 2: id,altscr,irixps,delay,curwin<br \/>\nper ea\u00a0\u00a0 # line\u00a0 a: winname,fieldscur<br \/>\nwindow\u00a0\u00a0 # line\u00a0 b: winflags,sortindx,maxtasks,graph modes<br \/>\n&#8221;\u00a0\u00a0\u00a0\u00a0\u00a0 # line\u00a0 c: summclr,msgsclr,headclr,taskclr<br \/>\nglobal\u00a0\u00a0 # line 15: additional miscellaneous settings<br \/>\n&#8221;\u00a0\u00a0\u00a0\u00a0\u00a0 # any remaining lines are devoted to the<br \/>\n&#8221;\u00a0\u00a0\u00a0\u00a0\u00a0 # generalized inspect provisions<br \/>\n&#8221;\u00a0\u00a0\u00a0\u00a0\u00a0 # discussed below<\/p>\n<p>If the $HOME variable is not present, top will try to write the<br \/>\npersonal configuration file to the current directory, subject to<br \/>\npermissions.<\/p>\n<p>6c. ADDING INSPECT Entries<br \/>\nTo exploit the `Y&#8217; interactive command, you must add entries at the<br \/>\nend of the top personal configuration file.\u00a0 Such entries simply<br \/>\nreflect a file to be read or command\/pipeline to be executed whose<br \/>\nresults will then be displayed in a separate scrollable, searchable<br \/>\nwindow.<\/p>\n<p>If you don&#8217;t know the location or name of your top rcfile, use the<br \/>\n`W&#8217; interactive command to rewrite it and note those details.<\/p>\n<p>Inspect entries can be added with a redirected echo or by editing the<br \/>\nconfiguration file.\u00a0 Redirecting an echo risks overwriting the rcfile<br \/>\nshould it replace (&gt;) rather than append (&gt;&gt;) to that file.<br \/>\nConversely, when using an editor care must be taken not to corrupt<br \/>\nexisting lines, some of which will contain unprintable data or<br \/>\nunusual characters.<\/p>\n<p>Those Inspect entries beginning with a `#&#8217; character are ignored,<br \/>\nregardless of content.\u00a0 Otherwise they consist of the following 3<br \/>\nelements, each of which must be separated by a tab character (thus 2<br \/>\n`\\t&#8217; total):<\/p>\n<p>.type:\u00a0 literal `file&#8217; or `pipe&#8217;<br \/>\n.name:\u00a0 selection shown on the Inspect screen<br \/>\n.fmts:\u00a0 string representing a path or command<\/p>\n<p>The two types of Inspect entries are not interchangeable.\u00a0 Those<br \/>\ndesignated `file&#8217; will be accessed using fopen and must reference a<br \/>\nsingle file in the `.fmts&#8217; element.\u00a0 Entries specifying `pipe&#8217; will<br \/>\nemploy popen, their `.fmts&#8217; element could contain many pipelined<br \/>\ncommands and, none can be interactive.<\/p>\n<p>If the file or pipeline represented in your `.fmts&#8217; deals with the<br \/>\nspecific PID input or accepted when prompted, then the format string<br \/>\nmust also contain the `%d&#8217; specifier, as these examples illustrate.<\/p>\n<p>.fmts=\u00a0 \/proc\/%d\/numa_maps<br \/>\n.fmts=\u00a0 lsof -P -p %d<\/p>\n<p>For `pipe&#8217; type entries only, you may also wish to redirect stderr to<br \/>\nstdout for a more comprehensive result.\u00a0 Thus the format string<br \/>\nbecomes:<\/p>\n<p>.fmts=\u00a0 pmap -x %d 2&gt;&amp;1<\/p>\n<p>Here are examples of both types of Inspect entries as they might<br \/>\nappear in the rcfile.\u00a0 The first entry will be ignored due to the<br \/>\ninitial `#&#8217; character.\u00a0 For clarity, the pseudo tab depictions (^I)<br \/>\nare surrounded by an extra space but the actual tabs would not be.<\/p>\n<p># pipe ^I Sockets ^I lsof -n -P -i 2&gt;&amp;1<br \/>\npipe ^I Open Files ^I lsof -P -p %d 2&gt;&amp;1<br \/>\nfile ^I NUMA Info ^I \/proc\/%d\/numa_maps<br \/>\npipe ^I Log ^I tail -n100 \/var\/log\/syslog | sort -Mr<\/p>\n<p>Except for the commented entry above, these next examples show what<br \/>\ncould be echoed to achieve similar results, assuming the rcfile name<br \/>\nwas `.toprc&#8217;.\u00a0 However, due to the embedded tab characters, each of<br \/>\nthese lines should be preceded by `\/bin\/echo -e&#8217;, not just a simple<br \/>\nan `echo&#8217;, to enable backslash interpretation regardless of which<br \/>\nshell you use.<\/p>\n<p>&#8220;pipe\\tOpen Files\\tlsof -P -p %d 2&gt;&amp;1&#8221; &gt;&gt; ~\/.toprc<br \/>\n&#8220;file\\tNUMA Info\\t\/proc\/%d\/numa_maps&#8221; &gt;&gt; ~\/.toprc<br \/>\n&#8220;pipe\\tLog\\ttail -n200 \/var\/log\/syslog | sort -Mr&#8221; &gt;&gt; ~\/.toprc<\/p>\n<p>Caution: If any inspect entry you create produces output with<br \/>\nunprintable characters they will be displayed in either the ^C<br \/>\nnotation or hexadecimal &lt;FF&gt; form, depending on their value.\u00a0 This<br \/>\napplies to tab characters as well, which will show as `^I&#8217;.\u00a0 If you<br \/>\nwant a truer representation, any embedded tabs should be expanded.<\/p>\n<p># next would have contained `\\t&#8217; &#8230;<br \/>\n# file ^I &lt;your_name&gt; ^I \/proc\/%d\/status<br \/>\n# but this will eliminate embedded `\\t&#8217; &#8230;<br \/>\npipe ^I &lt;your_name&gt; ^I cat \/proc\/%d\/status | expand &#8211;<\/p>\n<p>The above example takes what could have been a `file&#8217; entry but<br \/>\nemploys a `pipe&#8217; instead so as to expand the embedded tabs.<\/p>\n<p>Note: While `pipe&#8217; type entries have been discussed in terms of<br \/>\npipelines and commands, there is nothing to prevent you from<br \/>\nincluding\u00a0 shell scripts as well.\u00a0 Perhaps even newly created scripts<br \/>\ndesigned specifically for the `Y&#8217; interactive command.<\/p>\n<p>Lastly, as the number of your Inspect entries grows over time, the<br \/>\n`Options:&#8217; row will be truncated when screen width is exceeded.\u00a0 That<br \/>\ndoes not affect operation other than to make some selections<br \/>\ninvisible.<\/p>\n<p>However, if some choices are lost to truncation but you want to see<br \/>\nmore options, there is an easy solution hinted at below.<\/p>\n<p>Inspection Pause at pid &#8230;<br \/>\nUse:\u00a0 left\/right then &lt;Enter&gt; &#8230;<br \/>\nOptions:\u00a0 help\u00a0 1\u00a0 2\u00a0 3\u00a0 4\u00a0 5\u00a0 6\u00a0 7\u00a0 8\u00a0 9\u00a0 10\u00a0 11 &#8230;<\/p>\n<p>The entries in the top rcfile would have a number for the `.name&#8217;<br \/>\nelement and the `help&#8217; entry would identify a shell script you&#8217;ve<br \/>\nwritten explaining what those numbered selections actually mean.\u00a0 In<br \/>\nthat way, many more choices can be made visible.<\/p>\n<p>7. STUPID TRICKS Sampler\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>Many of these tricks work best when you give top a scheduling boost.<br \/>\nSo plan on starting him with a nice value of -10, assuming you&#8217;ve got<br \/>\nthe authority.<\/p>\n<p>7a. Kernel Magic<br \/>\nFor these stupid tricks, top needs full-screen mode.<\/p>\n<p>\u00b7\u00a0 The user interface, through prompts and help, intentionally<br \/>\nimplies that the delay interval is limited to tenths of a second.<br \/>\nHowever, you&#8217;re free to set any desired delay.\u00a0 If you want to see<br \/>\nLinux at his scheduling best, try a delay of .09 seconds or less.<\/p>\n<p>For this experiment, under x-windows open an xterm and maximize<br \/>\nit.\u00a0 Then do the following:<br \/>\n. provide a scheduling boost and tiny delay via:<br \/>\nnice -n -10 top -d.09<br \/>\n. keep sorted column highlighting Off so as to<br \/>\nminimize path length<br \/>\n. turn On reverse row highlighting for emphasis<br \/>\n. try various sort columns (TIME\/MEM work well),<br \/>\nand normal or reverse sorts to bring the most<br \/>\nactive processes into view<\/p>\n<p>What you&#8217;ll see is a very busy Linux doing what he&#8217;s always done<br \/>\nfor you, but there was no program available to illustrate this.<\/p>\n<p>\u00b7\u00a0 Under an xterm using `white-on-black&#8217; colors, on top&#8217;s Color<br \/>\nMapping screen set the task color to black and be sure that task<br \/>\nhighlighting is set to bold, not reverse.\u00a0 Then set the delay<br \/>\ninterval to around .3 seconds.<\/p>\n<p>After bringing the most active processes into view, what you&#8217;ll<br \/>\nsee are the ghostly images of just the currently running tasks.<\/p>\n<p>\u00b7\u00a0 Delete the existing rcfile, or create a new symlink.\u00a0 Start this<br \/>\nnew version then type `T&#8217; (a secret key, see topic 4c. Task Area<br \/>\nCommands, SORTING) followed by `W&#8217; and `q&#8217;.\u00a0 Finally, restart the<br \/>\nprogram with -d0 (zero delay).<\/p>\n<p>Your display will be refreshed at three times the rate of the<br \/>\nformer top, a 300% speed advantage.\u00a0 As top climbs the TIME<br \/>\nladder, be as patient as you can while speculating on whether or<br \/>\nnot top will ever reach the top.<\/p>\n<p>7b. Bouncing Windows<br \/>\nFor these stupid tricks, top needs alternate-display mode.<\/p>\n<p>\u00b7\u00a0 With 3 or 4 task displays visible, pick any window other than the<br \/>\nlast and turn idle processes Off using the `i&#8217; command toggle.<br \/>\nDepending on where you applied `i&#8217;, sometimes several task<br \/>\ndisplays are bouncing and sometimes it&#8217;s like an accordion, as top<br \/>\ntries his best to allocate space.<\/p>\n<p>\u00b7\u00a0 Set each window&#8217;s summary lines differently: one with no memory<br \/>\n(&#8216;m&#8217;); another with no states (&#8216;t&#8217;); maybe one with nothing at<br \/>\nall, just the message line.\u00a0 Then hold down `a&#8217; or `w&#8217; and watch a<br \/>\nvariation on bouncing windows\u00a0 &#8212;\u00a0 hopping windows.<\/p>\n<p>\u00b7\u00a0 Display all 4 windows and for each, in turn, set idle processes to<br \/>\nOff using the `i&#8217; command toggle.\u00a0 You&#8217;ve just entered the<br \/>\n&#8220;extreme bounce&#8221; zone.<\/p>\n<p>7c. The Big Bird Window<br \/>\nThis stupid trick also requires alternate-display mode.<\/p>\n<p>\u00b7\u00a0 Display all 4 windows and make sure that 1:Def is the `current&#8217;<br \/>\nwindow.\u00a0 Then, keep increasing window size with the `n&#8217;<br \/>\ninteractive command until all the other task displays are &#8220;pushed<br \/>\nout of the nest&#8221;.<\/p>\n<p>When they&#8217;ve all been displaced, toggle between all<br \/>\nvisible\/invisible windows using the `_&#8217; command toggle.\u00a0 Then<br \/>\nponder this:<br \/>\nis top fibbing or telling honestly your imposed truth?<\/p>\n<p>7d. The Ol&#8217; Switcheroo<br \/>\nThis stupid trick works best without alternate-display mode, since<br \/>\njustification is active on a per window basis.<\/p>\n<p>\u00b7\u00a0 Start top and make COMMAND the last (rightmost) column displayed.<br \/>\nIf necessary, use the `c&#8217; command toggle to display command lines<br \/>\nand ensure that forest view mode is active with the `V&#8217; command<br \/>\ntoggle.<\/p>\n<p>Then use the up\/down arrow keys to position the display so that<br \/>\nsome truncated command lines are shown (`+&#8217; in last position).<br \/>\nYou may have to resize your xterm to produce truncation.<\/p>\n<p>Lastly, use the `j&#8217; command toggle to make the COMMAND column<br \/>\nright justified.<\/p>\n<p>Now use the right arrow key to reach the COMMAND column.<br \/>\nContinuing with the right arrow key, watch closely the direction<br \/>\nof travel for the command lines being shown.<\/p>\n<p>some lines travel left, while others travel right<\/p>\n<p>eventually all lines will Switcheroo, and move right<\/p>\n<p>8. BUGS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>To report bugs, follow the instructions at:<br \/>\nhttp:\/\/www.debian.org\/Bugs\/Reporting<\/p>\n<p>9. HISTORY Former top\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>The original top was written by Roger Binns, based on Branko<br \/>\nLankester&#8217;s &lt;lankeste@fwi.uva.nl&gt; ps program.<\/p>\n<p>Robert Nation &lt;nation@rocket.sanders.lockheed.com&gt; adapted it for the<br \/>\nproc file system.<\/p>\n<p>Helmut Geyer &lt;Helmut.Geyer@iwr.uni-heidelberg.de&gt; added support for<br \/>\nconfigurable fields.<\/p>\n<p>Plus many other individuals contributed over the years.<\/p>\n<p>10. AUTHOR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>This entirely new and enhanced replacement was written by:<br \/>\nJim Warner, &lt;james.warner@comcast.net&gt;<\/p>\n<p>With invaluable help from:<br \/>\nCraig Small, &lt;csmall@enc.com.au&gt;<br \/>\nAlbert Cahalan, &lt;albert@users.sf.net&gt;<\/p>\n<p>11. SEE Also\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>free(1), ps(1), uptime(1), atop(1), slabtop(1), vmstat(8), w(1).<\/p>\n<p>COLOPHON\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top<\/p>\n<p>This page is part of the procps-ng (\/proc filesystem utilities)<br \/>\nproject.\u00a0 Information about the project can be found at<br \/>\n\u27e8http:\/\/sourceforge.net\/projects\/procps-ng\/\u27e9.\u00a0 If you have a bug<br \/>\nreport for this manual page, see<br \/>\n\u27e8http:\/\/sourceforge.net\/p\/procps-ng\/tickets\/\u27e9.\u00a0 This page was obtained<br \/>\nfrom the project&#8217;s upstream Git repository<br \/>\n(https:\/\/gitorious.org\/procps) on 2014-12-30.\u00a0 If you discover any<br \/>\nrendering problems in this HTML version of the page, or you believe<br \/>\nthere is a better or more up-to-date source for the page, or you have<br \/>\ncorrections or improvements to the information in this COLOPHON<br \/>\n(which is not part of the original manual page), send a mail to<br \/>\nman-pages@man7.org<\/p>\n<p>procps-ng\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 July 2014\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 TOP(1)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>TOP(1)\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 User Commands\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 TOP(1) NAME\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top top &#8211; display Linux processes SYNOPSIS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top top -hv|-bcHiOSs -d secs -n max -u|U user -p pid -o fld -w [cols] The traditional switches `-&#8216; and whitespace are optional. DESCRIPTION\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 top The top program provides a dynamic real-time view of a running system.\u00a0 It can display system summary information [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":"","footnotes":""},"categories":[8],"tags":[],"class_list":["post-367","post","type-post","status-publish","format-standard","hentry","category-shell"],"a3_pvc":{"activated":false,"total_views":0,"today_views":0},"_links":{"self":[{"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/posts\/367","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=367"}],"version-history":[{"count":0,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/posts\/367\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=367"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=367"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=367"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}