Enter a Linux command to search for:
View our main Linux page


TOP(1)                     Linux User's Manual                     TOP(1)



NAME
       top - display Linux tasks



SYNOPSIS
       top -hv | -bcHisS -d delay -n iterations -p pid [, pid ...]

       The traditional switches '-' and whitespace are optional.



DESCRIPTION
       The  top  program  provides  a dynamic real-time view of a running
       system.  It can display system summary information as  well  as  a
       list  of  tasks  currently being managed by the Linux kernel.  The
       types of system summary information shown and the types, order and
       size  of information displayed for tasks are all user configurable
       and that configuration can be made persistent across restarts.

       The program provides a limited interactive interface  for  process
       manipulation  as  well as a much more extensive interface for per-
       sonal configuration  --  encompassing every aspect of  its  opera-
       tion.   And while top is referred to throughout this document, you
       are free to name the program anything you wish.   That  new  name,
       possibly  an  alias,  will  then be reflected on top's display and
       used when reading and writing a configuration file.



OVERVIEW
   Documentation
       The remaining Table of Contents
           1. COMMAND-LINE Options
           2. FIELDS / Columns
              a. DESCRIPTIONS of Fields
              b. SELECTING and ORDERING Columns
           3. INTERACTIVE Commands
              a. GLOBAL Commands
              b. SUMMARY Area Commands
              c. TASK Area Commands
              d. COLOR Mapping
           4. ALTERNATE-DISPLAY Mode
              a. WINDOWS Overview
              b. COMMANDS for Windows
           5. FILES
              a. SYSTEM Configuration File
              b. PERSONAL Configuration File
           6. STUPID TRICKS Sampler
              a. Kernel Magic
              b. Bouncing Windows
              c. The Big Bird Window
           7. BUGS, 8. HISTORY Former top, 9. AUTHOR, 10. SEE ALSO


   Operation
       When operating top, the two most important keys are help  ('h'  or
       '?')  and quit ('q') key.  Alternatively, you could simply use the
       traditional interrupt key ('^C') when you're done.

       When you start top for the first time, you'll  be  presented  with
       the   traditional  screen  elements:  1)  Summary  Area;  2)  Mes-
       sage/Prompt Line; 3) Columns Header; 4) Task  Area.   There  will,
       however, be some differences when compared to the former top.


       Highlighting
          Summary_Area: There is no highlighting for load/uptime and only
          values are highlighted for other elements.

          Task_Area: Tasks running (or ready to run) will be highlighted,
          and bold is only one way of emphasizing such processes.


       Content/Labels
          Summary_Area:  The  program name is shown, perhaps a symlink or
          alias.  The Cpu(s) state label hints  at  other  possibilities.
          The memory stats use a lower case 'k'.

          Columns_Header:  Will show a new field and some changed labels.
          More new fields will be found as you customize your top.


       Note: the width of top's display will be limited to 512 positions.
       Displaying  all  fields requires a minimum of 160 characters.  The
       remaining width could be used for the 'Command' column.


   Startup Defaults
       The following startup defaults assume no configuration file,  thus
       no  user  customizations.   Even  so, items shown with an asterisk
       ('*') could be overridden through the command-line.

           Global_defaults
              'A' - Alt display      Off (full-screen)
            * 'd' - Delay time       3.0 seconds
              'I' - Irix mode        On  (no, 'solaris' smp)
            * 'p' - PID monitoring   Off
            * 's' - Secure mode      Off (unsecured)
              'B' - Bold enable      Off
           Summary_Area_defaults
              'l' - Load Avg/Uptime  On  (thus program name)
              't' - Task/Cpu states  On  (1+1 lines, see '1')
              'm' - Mem/Swap usage   On  (2 lines worth)
              '1' - Single Cpu       On  (thus 1 line if smp)
           Task_Area_defaults
              'b' - Bold hilite      On  (not 'reverse')
            * 'c' - Command line     Off (name, not cmdline)
            * 'H' - Threads          Off (show all threads)
            * 'i' - Idle tasks       On  (show all tasks)
              'R' - Reverse sort     On  (pids high-to-low)
            * 'S' - Cumulative time  Off (no, dead children)
              'x' - Column hilite    Off (no, sort field)
              'y' - Row hilite       On  (yes, running tasks)
              'z' - color/mono       Off (no, colors)



1. COMMAND-LINE Options
       The command-line syntax for top consists of:

            -hv | -bcHisS -d delay -n iterations -p pid [,pid...]

       The typically mandatory switches ('-')  and  even  whitespace  are
       completely optional.


       -b : Batch mode operation
            Starts top in 'Batch mode', which could be useful for sending
            output from top to other programs or  to  a  file.   In  this
            mode, top will not accept input and runs until the iterations
            limit you've set with the '-n' command-line option  or  until
            killed.


       -c : Command line/Program name toggle
            Starts  top  with  the  last  remembered  'c' state reversed.
            Thus, if top was displaying command  lines,  now  that  field
            will  show program names, and visa versa.  See the 'c' inter-
            active command for additional information.


       -d : Delay time interval as:  -d ss.tt (seconds.tenths)
            Specifies the delay between screen updates, and overrides the
            corresponding  value  in one's personal configuration file or
            the startup default.  Later this can be changed with the  'd'
            or 's' interactive commands.

            Fractional  seconds are honored, but a negative number is not
            allowed.  In all cases, however, such changes are  prohibited
            if  top  is running in 'Secure mode', except for root (unless
            the 's' command-line option was used).  For additional infor-
            mation  on  'Secure  mode' see topic 5a. SYSTEM Configuration
            File.



       -h : Help
            Show library version and the usage prompt, then quit.


       -H : Threads toggle
            Starts top with the last remembered 'H' state reversed.  When
            this  toggle is On, all individual threads will be displayed.
            Otherwise, top displays a  summation  of  all  threads  in  a
            process.


       -i : Idle Processes toggle
            Starts top with the last remembered 'i' state reversed.  When
            this toggle is Off, tasks that are idled or zombied will  not
            be displayed.


       -n : Number of iterations limit as:  -n number
            Specifies  the  maximum  number of iterations, or frames, top
            should produce before ending.


       -u : Monitor by user as:  -u somebody
            Monitor only processes with an effective  UID  or  user  name
            matching that given.


       -U : Monitor by user as:  -U somebody
            Monitor  only processes with a UID or user name matching that
            given.  This matches real, effective, saved,  and  filesystem
            UIDs.


       -p : Monitor PIDs as:  -pN1 -pN2 ...  or  -pN1, N2 [,...]
            Monitor  only  processes  with  specified  process IDs.  This
            option can be given up to 20 times,  or  you  can  provide  a
            comma  delimited  list  with up to 20 pids.  Co-mingling both
            approaches is permitted.

            This is a command-line option only.  And should you  wish  to
            return  to  normal operation, it is not necessary to quit and
            and restart top  --  just issue the '=' interactive command.


       -s : Secure mode operation
            Starts top with secure mode forced, even for root.  This mode
            is  far  better  controlled  through the system configuration
            file (see topic 5. FILES).


       -S : Cumulative time mode toggle
            Starts top with the last remembered 'S' state reversed.  When
            'Cumulative  mode' is On, each process is listed with the cpu
            time that it and its dead children have used.   See  the  'S'
            interactive command for additional information regarding this
            mode.


       -v : Version
            Show library version and the usage prompt, then quit.



2. FIELDS / Columns
   2a. DESCRIPTIONS of Fields
       Listed below are top's available fields.  They are always  associ-
       ated  with  the  letter  shown, regardless of the position you may
       have established for them with the 'o' (Order fields)  interactive
       command.

       Any field is selectable as the sort field, and you control whether
       they are sorted high-to-low or low-to-high.  For additional infor-
       mation on sort provisions see topic 3c. TASK Area Commands.


       a: PID  --  Process Id
          The  task's unique process ID, which periodically wraps, though
          never restarting at zero.


       b: PPID  --  Parent Process Pid
          The process ID of a task's parent.


       c: RUSER  --  Real User Name
          The real user name of the task's owner.


       d: UID  --  User Id
          The effective user ID of the task's owner.


       e: USER  --  User Name
          The effective user name of the task's owner.


       f: GROUP  --  Group Name
          The effective group name of the task's owner.


       g: TTY  --  Controlling Tty
          The name of the controlling  terminal.   This  is  usually  the
          device  (serial  port,  pty,  etc.)  from which the process was
          started, and which it uses for input  or  output.   However,  a
          task  need  not  be  associated  with a terminal, in which case
          you'll see '?' displayed.


       h: PR  --  Priority
          The priority of the task.


       i: NI  --  Nice value
          The nice value of the task.  A negative nice value means higher
          priority,  whereas  a positive nice value means lower priority.
          Zero in this field simply means priority will not  be  adjusted
          in determining a task's dispatchability.


       j: P  --  Last used CPU (SMP)
          A  number  representing the last used processor.  In a true SMP
          environment this will likely change frequently since the kernel
          intentionally  uses  weak affinity.  Also, the very act of run-
          ning top may break this weak affinity and cause more  processes
          to  change CPUs more often (because of the extra demand for cpu
          time).


       k: %CPU  --  CPU usage
          The task's share of the elapsed CPU time since the last  screen
          update, expressed as a percentage of total CPU time.  In a true
          SMP environment, if 'Irix mode' is Off,  top  will  operate  in
          'Solaris  mode' where a task's cpu usage will be divided by the
          total number of CPUs.  You toggle 'Irix/Solaris' modes with the
          'I' interactive command.


       l: TIME  --  CPU Time
          Total CPU time the task has used since it started.  When 'Cumu-
          lative mode' is On, each process is listed with  the  cpu  time
          that it and its dead children has used.  You toggle 'Cumulative
          mode' with 'S', which is a command-line option and an  interac-
          tive  command.   See the 'S' interactive command for additional
          information regarding this mode.


       m: TIME+  --  CPU Time, hundredths
          The same as 'TIME', but  reflecting  more  granularity  through
          hundredths of a second.


       n: %MEM  --  Memory usage (RES)
          A task's currently used share of available physical memory.


       o: VIRT  --  Virtual Image (kb)
          The  total  amount  of  virtual  memory  used  by the task.  It
          includes all code, data and shared libraries  plus  pages  that
          have  been  swapped out and pages that have been mapped but not
          used.


       p: SWAP  --  Swapped size (kb)
          Memory that is not resident but is present in a task.  This  is
          memory  that  has been swapped out but could include additional
          non-resident memory.  This column is calculated by  subtracting
          physical memory from virtual memory.


       q: RES  --  Resident size (kb)
          The non-swapped physical memory a task has used.


       r: CODE  --  Code size (kb)
          The  amount  of virtual memory devoted to executable code, also
          known as the 'text resident set' size or TRS.


       s: DATA  --  Data+Stack size (kb)
          The amount of virtual memory devoted to other  than  executable
          code, also known as the 'data resident set' size or DRS.


       t: SHR  --  Shared Mem size (kb)
          The amount of shared memory used by a task.  It simply reflects
          memory that could be potentially shared with other processes.


       u: nFLT  --  Page Fault count
          The number of major page faults that have occurred for a  task.
          A  page  fault  occurs  when a process attempts to read from or
          write to a virtual page that is not currently  present  in  its
          address  space.   A  major  page  fault is when backing storage
          access (such as a disk) is involved in making that page  avail-
          able.


       v: nDRT  --  Dirty Pages count
          The  number  of  pages  that have been modified since they were
          last written to disk.  Dirty pages  must  be  written  to  disk
          before  the  corresponding physical memory location can be used
          for some other virtual page.


       w: S  --  Process Status
          The status of the task which can be one of:
             'D' = uninterruptible sleep
             'R' = running
             'S' = sleeping
             'T' = traced or stopped
             'Z' = zombie

          Tasks shown as running should be more properly  thought  of  as
          'ready  to run'  --  their task_struct is simply represented on
          the Linux run-queue.  Even without a true SMP machine, you  may
          see  numerous  tasks  in  this  state  depending on top's delay
          interval and nice value.


       x: Command  --  Command line or Program name
          Display the command line used to start a task or  the  name  of
          the  associated  program.   You toggle between command line and
          name with 'c', which is  both  a  command-line  option  and  an
          interactive command.

          When  you've chosen to display command lines, processes without
          a command line (like kernel threads) will be  shown  with  only
          the program name in parentheses, as in this example:
                ( mdrecoveryd )

          Either  form  of  display is subject to potential truncation if
          it's too long to fit in this field's current width.  That width
          depends upon other fields selected, their order and the current
          screen width.

          Note: The 'Command' field/column is unique, in that it  is  not
          fixed-width.  When displayed, this column will be allocated all
          remaining screen width (up to the maximum  512  characters)  to
          provide  for the potential growth of program names into command
          lines.


       y: WCHAN  --  Sleeping in Function
          Depending on the availability of the  kernel  link  map  ('Sys-
          tem.map'),  this field will show the name or the address of the
          kernel function in which the task is currently sleeping.   Run-
          ning tasks will display a dash ('-') in this column.

          Note:  By  displaying this field, top's own working set will be
          increased by over 700Kb.  Your  only  means  of  reducing  that
          overhead will be to stop and restart top.


       z: Flags  --  Task Flags
          This  column  represents  the  task's  current scheduling flags
          which are expressed in hexadecimal notation and with zeros sup-
          pressed.     These   flags   are   officially   documented   in
          .  Less formal documentation can also  be  found
          on the 'Fields select' and 'Order fields' screens.


   2b. SELECTING and ORDERING Columns
       After pressing the interactive commands 'f' (Fields select) or 'o'
       (Order fields) you will be shown a screen containing  the  current
       fields string followed by names and descriptions for all fields.

       Here  is  a  sample  fields  string  from  one  of top's four win-
       dows/field groups and an explanation of the conventions used:

       -  Sample fields string:
             ANOPQRSTUVXbcdefgjlmyzWHIK

       -  The order of displayed fields corresponds to the order  of  the
          letters in that string.

       -  If the letter is upper case the corresponding field itself will
          then be shown as part of the task display (screen width permit-
          ting).   This  will  also  be  indicated  by a leading asterisk
          ('*'), as in this excerpt:
              ...
              * K: %CPU       = CPU usage
                l: TIME       = CPU Time
                m: TIME+      = CPU Time, hundredths
              * N: %MEM       = Memory usage (RES)
              * O: VIRT       = Virtual Image (kb)
              ...


       Fields select screen  --  the 'f' interactive command
          You toggle the display of a field by simply pressing the corre-
          sponding letter.


       Order fields screen  --  the 'o' interactive command
          You  move  a  field  to  the left by pressing the corresponding
          upper case letter and to the right with the lower case letter.


   2c. CPU States
       The CPU states are shown in the  Summary  Area.  They  are  always
       shown  as  a  percentage  and are for the time between now and the
       last refresh.


        us  --  User CPU time
          The time the CPU has spent running users'  processes  that  are
          not niced.


        sy  --  System CPU time
          The  time  the  CPU  has  spent running the kernel and its pro-
          cesses.


        ni  --  Nice CPU time
          The time the CPU has spent running users'  proccess  that  have
          been niced.


        wa  --  iowait
          Amount of time the CPU has been waiting for I/O to complete.


        hi  --  Hardware IRQ
          The  amount  of time the CPU has been servicing hardware inter-
          rupts.


        si  --  Software Interrupts
          The amount of time the CPU has been servicing  software  inter-
          rupts.


        st  --  Steal Time
          The  amount  of  CPU  'stolen' from this virtual machine by the
          hypervisor for other tasks (such  as  running  another  virtual
          machine).


3. INTERACTIVE Commands
       Listed below is a brief index of commands within categories.  Some
       commands appear more than once  --  their  meaning  or  scope  may
       vary depending on the context in which they are issued.

         3a. GLOBAL_Commands
                ?, =, A, B, d, G, h, I, k, q, r, s, W, Z
         3b. SUMMARY_Area_Commands
               l, m, t, 1
         3c. TASK_Area_Commands
               Appearance:  b, x, y, z
               Content:     c, f, H, o, S, u
               Size:        #, i, n
               Sorting:     <, >, F, O, R
         3d. COLOR_Mapping
               , a, B, b, H, M, q, S, T, w, z, 0 - 7
         4b. COMMANDS_for_Windows
               -, _, =, +, A, a, G, g, w


   3a. GLOBAL Commands
       The  global  interactive  commands  are  always  available in both
       full-screen mode and alternate-display  mode.   However,  some  of
       these  interactive  commands  are  not  available  when running in
       'Secure mode'.

       If you wish to know in advance whether or not your  top  has  been
       secured,  simply  ask  for help and view the system summary on the
       second line.


          or  :Refresh_Display
              These commands do nothing, they are simply  ignored.   How-
              ever,  they  will  awaken  top and following receipt of any
              input the entire display will be repainted.

              Use either of these keys if you have a large delay interval
              and wish to see current status,


          or  :Help
              There  are  two help levels available.  The first will pro-
              vide a reminder of all the basic interactive commands.   If
              top is secured, that screen will be abbreviated.

              Typing 'h' or '?' on that help screen will take you to help
              for those interactive commands applicable to alternate-dis-
              play mode.


         <=> :Exit_Task_Limits
              Removes  restrictions  on which tasks are shown.  This com-
              mand will reverse any 'i' (idle tasks) and 'n' (max  tasks)
              commands  that  might  be  active.  It also provides for an
              'exit' from PID  monitoring.   See  the  '-p'  command-line
              option for a discussion of PID monitoring.

              When operating in alternate-display mode this command has a
              slightly broader meaning.


          :Alternate_Display_Mode_toggle
              This command  will  switch  between  full-screen  mode  and
              alternate-display  mode.   See  topic  4. ALTERNATE-DISPLAY
              Mode and the 'G' interactive command for insight into 'cur-
              rent' windows and field groups.


          :Bold_Disable/Enable_toggle
              This  command  will  influence  use  of the 'bold' terminfo
              capability and alters both the summary area and  task  area
              for  the  'current' window.  While it is intended primarily
              for use with dumb terminals, it can be applied anytime.

              Note: When this toggle is On and top is operating in  mono-
              chrome mode, the entire display will appear as normal text.
              Thus, unless the 'x' and/or 'y' toggles are  using  reverse
              for  emphasis,  there  will  be no visual confirmation that
              they are even on.


       *  or  :Change_Delay_Time_interval
              You will be prompted to enter the delay time,  in  seconds,
              between display updates.

              Fractional  seconds  are  honored, but a negative number is
              not  allowed.   Entering  0  causes   (nearly)   continuous
              updates,  with  an unsatisfactory display as the system and
              tty driver try to keep up with top's  demands.   The  delay
              value  is  inversely proportional to system loading, so set
              it with care.

              If at any time you wish to know  the  current  delay  time,
              simply ask for help and view the system summary on the sec-
              ond line.


          :Choose_Another_Window/Field_Group
              You will be prompted to enter a number between 1 and 4 des-
              ignating  the  window/field  group which should be made the
              'current' window.  You  will  soon  grow  comfortable  with
              these 4 windows, especially after experimenting with alter-
              nate-display mode.


          :Irix/Solaris_Mode_toggle
              When operating in  'Solaris  mode'  ('I'  toggled  Off),  a
              task's  cpu  usage  will  be divided by the total number of
              CPUs.  After issuing this command, you'll  be  informed  of
              the new state of this toggle.


          :select a user
              You  will be prompted for a UID or username. Only processes
              belonging to the selected  user  will  be  displayed.  This
              option matches on the effective UID.


          :select a user
              You  will be prompted for a UID or username. Only processes
              belonging to the selected  user  will  be  displayed.  This
              option  matches on the real, effective, saved, and filesys-
              tem UID.


       *  :Kill_a_task
              You will be prompted for a PID and then the signal to send.
              The default signal, as reflected in the prompt, is SIGTERM.
              However, you can send any signal, via number or name.

              If you wish to abort the kill process, do one of  the  fol-
              lowing depending on your progress:
                 1) at the pid prompt, just press 
                 2) at the signal prompt, type 0


          :Quit


       *  :Renice_a_Task
              You  will  be prompted for a PID and then the value to nice
              it to.  Entering a positive value will cause a  process  to
              lose  priority.   Conversely, a negative value will cause a
              process to be viewed more favorably by the kernel.


          :Write_the_Configuration_File
              This will save all of your options  and  toggles  plus  the
              current  display mode and delay time.  By issuing this com-
              mand just before quitting top, you  will  be  able  restart
              later in exactly that same state.


          :Change_Color_Mapping
              This  key  will take you to a separate screen where you can
              change the colors for the 'current' window, or for all win-
              dows.   For  details regarding this interactive command see
              topic 3d. COLOR Mapping.


       *  The commands shown with an asterisk ('*') are not available  in
          'Secure  mode',  nor  will  they  be  shown on the level-1 help
          screen.


   3b. SUMMARY Area Commands
       The summary area interactive commands are always available in both
       full-screen  mode  and  alternate-display  mode.   They affect the
       beginning lines of your display and will determine the position of
       messages and prompts.

       These  commands  always  impact  just  the  'current' window/field
       group.  See topic 4. ALTERNATE-DISPLAY Mode and the  'G'  interac-
       tive command for insight into 'current' windows and field groups.


          :Toggle_Load_Average/Uptime  --  On/Off
              This is also the line containing the program name (possibly
              an alias) when operating in full-screen mode or  the  'cur-
              rent' window name when operating in alternate-display mode.


          :Toggle_Memory/Swap_Usage  --  On/Off
              This command affects two summary area lines.


          :Toggle_Task/Cpu_States  --  On/Off
              This  command  affects  from  2 to many summary area lines,
              depending on the state of the '1' toggle and whether or not
              top is running under true SMP.


         <1> :Toggle_Single/Separate_Cpu_States  --  On/Off
              This  command affects how the 't' command's Cpu States por-
              tion is shown.  Although this toggle  exists  primarily  to
              serve massively-parallel SMP machines, it is not restricted
              to solely SMP environments.

              When you see 'Cpu(s):' in the summary area, the '1'  toggle
              is On and all cpu information is gathered in a single line.
              Otherwise, each cpu  is  displayed  separately  as:  'Cpu0,
              Cpu1, ...'


       Note: If the entire summary area has been toggled Off for any win-
       dow, you would be left with just the message line.  In  that  way,
       you will have maximized available task rows but (temporarily) sac-
       rificed the program name in full-screen mode or the 'current' win-
       dow name when in alternate-display mode.


   3c. TASK Area Commands
       The  task  area  interactive  commands  are  always  available  in
       full-screen mode.

       The task area interactive commands are never available  in  alter-
       nate-display  mode if the 'current' window's task display has been
       toggled Off (see topic 4. ALTERNATE-DISPLAY Mode).


       APPEARANCE of task window
         The following commands will also be influenced by the  state  of
         the global 'B' (bold disable) toggle.


          :Bold/Reverse_toggle
              This  command  will  impact how the 'x' and 'y' toggles are
              displayed.  Further, it will  only  be  available  when  at
              least one of those toggles is On.


          :Column_Highlight_toggle
              Changes highlighting for the current sort field.  You prob-
              ably don't need a constant  visual  reminder  of  the  sort
              field  and top hopes that you always run with 'column high-
              light' Off, due to the cost in path-length.

              If you forget which field is being sorted this command  can
              serve as a quick visual reminder.


          :Row_Highlight_toggle
              Changes  highlighting  for "running" tasks.  For additional
              insight into this task state, see topic 2a. DESCRIPTIONS of
              Fields, Process Status.

              Use  of this provision provides important insight into your
              system's health.  The only costs will be a  few  additional
              tty escape sequences.


          :Color/Monochrome_toggle
              Switches  the 'current' window between your last used color
              scheme and the older form of  black-on-white  or  white-on-
              black.   This  command will alter both the summary area and
              task area but does not affect the state of the 'x', 'y'  or
              'b' toggles.


       CONTENT of task window
          :Command_Line/Program_Name_toggle
              This  command  will be honored whether or not the 'Command'
              column is currently visible.  Later, should that field come
              into view, the change you applied will be seen.

          and  :Fields_select or Order_fields
              These  keys  display  separate screens where you can change
              which fields are displayed and their order.  For additional
              information  on  these  interactive  commands see topic 2b.
              SELECTING and ORDERING Columns.

          :Cumulative_Time_Mode_toggle
              When this toggle is On, all individual threads will be dis-
              played.  Otherwise, top displays a summation of all threads
              in a process.

         'S' :Cumulative_Time_Mode_toggle
              When 'Cumulative mode' is On, each process is  listed  with
              the cpu time that it and its dead children have used.

              When  Off, programs that fork into many separate tasks will
              appear less demanding.  For programs like 'init' or a shell
              this is appropriate but for others, like compilers, perhaps
              not.  Experiment with two task  windows  sharing  the  same
              sort field but with different 'S' states and see which rep-
              resentation you prefer.

              After issuing this command, you'll be informed of  the  new
              state  of  this  toggle.   If  you  wish to know in advance
              whether or not 'Cumulative mode' is in effect,  simply  ask
              for help and view the window summary on the second line.

          :Show_Specific_User_Only
              You  will be prompted to enter the name of the user to dis-
              play.  Thereafter, in that task window only  matching  User
              ID's will be shown, or possibly no tasks will be shown.

              Later,  if  you  wish  to monitor all tasks again, re-issue
              this command but just press  at the prompt,  without
              providing a name.

       SIZE of task window
          :Idle_Processes_toggle
              Displays  all tasks or just active tasks.  When this toggle
              is Off, idled or zombied processes will not be displayed.

              If this command is applied to the last task display when in
              alternate-display  mode,  then  it will not affect the win-
              dow's size, as all prior task displays  will  have  already
              been painted.

          or <#> :Set_Maximum_Tasks
              You  will  be prompted to enter the number of tasks to dis-
              play.  The lessor of your number and available screen  rows
              will be used.

              When  used  in  alternate-display mode, this is the command
              that gives you precise control over the size of  each  cur-
              rently  visible task display, except for the very last.  It
              will not affect the last window's size, as all  prior  task
              displays will have already been painted.

              Note:  If you wish to increase the size of the last visible
              task  display  when  in  alternate-display   mode,   simply
              decrease the size of the task display(s) above it.

       SORTING of task window
         For compatibility, this top supports most of the former top sort
         keys.  Since this is primarily a service to  former  top  users,
         these commands do not appear on any help screen.
            command   sorted field                  supported
              A         start time (non-display)      No
              M         %MEM                          Yes
              N         PID                           Yes
              P         %CPU                          Yes
              T         TIME+                         Yes

         Before  using any of the following sort provisions, top suggests
         that you temporarily turn on column highlighting using  the  'x'
         interactive command.  That will help ensure that the actual sort
         environment matches your intent.

         The following interactive commands will only be honored when the
         current sort field is visible.  The sort field might not be vis-
         ible because:
              1) there is insufficient Screen Width
              2) the 'f' interactive command turned it Off

         <<> :Move_Sort_Field_Left
              Moves the sort column to the left unless the  current  sort
              field is the first field being displayed.

         <>> :Move_Sort_Field_Right
              Moves  the sort column to the right unless the current sort
              field is the last field being displayed.

         The  following  interactive  commands  will  always  be  honored
         whether or not the current sort field is visible.

          or  :Select_Sort_Field
              These  keys  display a separate screen where you can change
              which field is used as the sort column.

              If a field is selected which was not previously being  dis-
              played,  it  will  be  forced On when you return to the top
              display.  However, depending upon your screen width and the
              order  of  your  fields,  this  sort  field may not be dis-
              playable.

              This interactive command can be a convenient way to  simply
              verify the current sort field, when running top with column
              highlighting turned Off.

          :Reverse/Normal_Sort_Field_toggle
              Using this interactive command you  can  alternate  between
              high-to-low and low-to-high sorts.

         Note:  Field  sorting  uses internal values, not those in column
         display.  Thus, the TTY and WCHAN  fields  will  violate  strict
         ASCII collating sequence.

   3d. COLOR Mapping
       When  you issue the 'Z' interactive command, you will be presented
       with a separate screen.  That screen can be  used  to  change  the
       colors  in just the 'current' window or in all four windows before
       returning to the top display.

       Available interactive commands
           4 upper case letters to select a target
           8 numbers to select a color
           normal toggles available
               'B'       :bold disable/enable
               'b'       :running tasks "bold"/reverse
               'z'       :color/mono
           other commands available
               'a'/'w'   :apply, then go to next/prior
                  :apply and exit
               'q'       :abandon current changes and exit

       If your use 'a' or 'w' to cycle the targeted window, you will have
       applied  the  color  scheme  that was displayed when you left that
       window.  You can, of course, easily return to any window and reap-
       ply  different  colors  or turn colors Off completely with the 'z'
       toggle.

       The Color Mapping screen can also be used to change the  'current'
       window/field group in either full-screen mode or alternate-display
       mode.  Whatever was targeted when 'q' or  was pressed  will
       be made current as you return to the top display.


4. ALTERNATE-DISPLAY Mode
   4a. WINDOWS Overview
       Field Groups/Windows:
              In full-screen mode there is a single window represented by
              the entire screen.  That single window can still be changed
              to  display  1  of  4  different  field groups (see the 'G'
              interactive command, repeated below).  Each of the 4  field
              groups  has  a  unique separately configurable summary area
              and its own configurable task area.

              In alternate-display mode, those 4 underlying field  groups
              can  now  be  made visible simultaneously, or can be turned
              Off individually at your command.

              The summary area will always exist, even if it's  only  the
              message  line.  At any given time only one summary area can
              be displayed.  However, depending on your  commands,  there
              could be from zero to four separate task displays currently
              showing on the screen.

       Current Window:
              The 'current' window is the window associated with the sum-
              mary area and the window to which task related commands are
              always directed.  Since in alternate-display mode  you  can
              toggle  the  task  display  Off,  some  commands  might  be
              restricted for the 'current' window.

              A further complication arises when  you  have  toggled  the
              first  summary  area line Off.  With the loss of the window
              name (the 'l' toggled line), you'll not  easily  know  what
              window is the 'current' window.

   4b. COMMANDS for Windows
         <-> and <_> :Show/Hide_Window(s)_toggles
              The  '-'  key  turns the 'current' window's task display On
              and Off.  When On, that task area will show  a  minimum  of
              the  columns header you've established with the 'f' and 'o'
              commands.   It  will  also  reflect  any  other  task  area
              options/toggles you've applied yielding zero or more tasks.

              The  '_' key does the same for all task displays.  In other
              words, it switches between the currently visible task  dis-
              play(s)  and  any  task display(s) you had toggled Off.  If
              all 4 task displays are currently visible, this interactive
              command  will  leave  the  summary area as the only display
              element.

       * <=> and <+> :Equalize_(re-balance)_Window(s)
              The '=' key forces the 'current' window's task  display  to
              be  visible.  It also reverses any 'i' (idle tasks) and 'n'
              (max tasks) commands that might be active.

              The '+' key does the same for all windows.  The  four  task
              displays  will  reappear,  evenly balanced.  They will also
              have  retained  any  customizations  you   had   previously
              applied,  except  for  the  'i'  (idle  tasks) and 'n' (max
              tasks) commands.

       *  :Alternate_Display_Mode_toggle
              This command  will  switch  between  full-screen  mode  and
              alternate-display mode.

              The  first  time you issue this command, all four task dis-
              plays will be shown.  Thereafter when you switch modes, you
              will  see  only  the  task display(s) you've chosen to make
              visible.

       *  and  :Next_Window_Forward/Backward
              This will  change  the  'current'  window,  which  in  turn
              changes  the  window to which commands are directed.  These
              keys act in a circular fashion so you can reach any desired
              'current' window using either key.

              Assuming  the  window name is visible (you have not toggled
              'l' Off), whenever the  'current'  window  name  loses  its
              emphasis/color,  that's  a reminder the task display is Off
              and many commands will be restricted.

       *  :Choose_Another_Window/Field_Group
              You will be prompted to enter a number between 1 and 4 des-
              ignating  the  window/field  group which should be made the
              'current' window.

              In full-screen mode, this command is necessary to alter the
              'current'  window.  In alternate-display mode, it is simply
              a less convenient alternative to the 'a' and 'w' commands.

          :Change_Window/Field_Group_Name
              You will be prompted for a new name to be  applied  to  the
              'current' window.  It does not require that the window name
              be visible (the 'l' toggle to be On).

       *  The interactive commands shown with an asterisk ('*') have  use
          beyond alternate-display mode.
              '=', 'A', 'G'  are always available
              'a', 'w'       act the same when color mapping


5. FILES
   5a. SYSTEM Configuration File
       The  presence  of  this  file  will influence which version of the
       'help' screen is shown to an ordinary user.  More importantly,  it
       will  limit what ordinary users are allowed to do when top is run-
       ning.  They will not be able to issue the following commands.
          k         Kill a task
          r         Renice a task
          d or s    Change delay/sleep interval

       The system configuration file is not created by top.  Rather,  you
       create this file manually and place it in the /etc directory.  Its
       name must be 'toprc' and must have no leading  '.'  (period).   It
       must have only two lines.

       Here is an example of the contents of /etc/toprc:
          s         # line 1: 'secure' mode switch
          5.0       # line 2: 'delay'  interval in seconds

   5b. PERSONAL Configuration File
       This  file is written as '$HOME/.your-name-4-top' + 'rc'.  Use the
       'W' interactive command to create it or update it.

       Here is the general layout:
          global    # line 1: the program name/alias notation
            "       # line 2: id,altscr,irixps,delay,curwin
          per ea    # line a: winname,fieldscur
          window    # line b: winflags,sortindx,maxtasks
            "       # line c: summclr,msgsclr,headclr,taskclr

       If the $HOME variable is not present, top will try  to  write  the
       personal  configuration  file to the current directory, subject to
       permissions.


6. STUPID TRICKS Sampler
       Many of these 'tricks' work best when you give  top  a  scheduling
       boost.  So plan on starting him with a nice value of -10, assuming
       you've got the authority.

   6a. Kernel Magic
       For these stupid tricks, top needs full-screen mode.

       -*-  The user interface, through prompts and  help,  intentionally
            implies  that  the  delay  interval is limited to tenths of a
            second.  However, you're free to set any desired  delay.   If
            you  want to see Linux at his scheduling best, try a delay of
            .09 seconds or less.

            For this experiment, under x-windows open an xterm and  maxi-
            mize it.  Then do the following:
              . provide a scheduling boost and tiny delay via:
                  nice -n -10 top -d.09
              . keep sorted column highlighting Off to minimize
                path length
              . turn On reverse row highlighting for emphasis
              . try various sort columns (TIME/MEM work well),
                and normal or reverse sorts to bring the most
                active processes into view

            What  you'll  see is a very busy Linux doing what he's always
            done for you, but there was no program  available  to  illus-
            trate this.

       -*-  Under  an  xterm  using  'white-on-black' colors, try setting
            top's task color to black and be sure that task  highlighting
            is  set to bold, not reverse.  Then set the delay interval to
            around .3 seconds.

            After bringing the most  active  processes  into  view,  what
            you'll  see are the ghostly images of just the currently run-
            ning tasks.

       -*-  Delete the existing rcfile, or create a new  symlink.   Start
            this  new  version then type 'T' (a secret key, see topic 3c.
            TASK  Area  Commands,  Sorting)  followed  by  'W'  and  'q'.
            Finally, restart the program with -d0 (zero delay).

            Your display will be refreshed at three times the rate of the
            former top, a 300% speed advantage.  As top climbs  the  TIME
            ladder, be as patient as you can while speculating on whether
            or not top will ever reach the top.

   6b. Bouncing Windows
       For these stupid tricks, top needs alternate-display mode.

       -*-  With 3 or 4 task displays visible, pick any window other than
            the last and turn idle processes Off.  Depending on where you
            applied 'i', sometimes several task displays are bouncing and
            sometimes  it's  like  an accordion, as top tries his best to
            allocate space.

       -*-  Set each window's summary lines differently: one with no mem-
            ory;  another  with no states; maybe one with nothing at all,
            just the message line.  Then hold down 'a' or 'w' and watch a
            variation on bouncing windows  --  hopping windows.

       -*-  Display  all  4  windows and for each, in turn, set idle pro-
            cesses to Off.  You've  just  entered  the  "extreme  bounce"
            zone.

   6c. The Big Bird Window
       This stupid trick also requires alternate-display mode.

       -*-  Display  all  4 windows and make sure that 1:Def is the 'cur-
            rent' window.  Then, keep increasing window  size  until  the
            all the other task displays are "pushed out of the nest".

            When  they've  all  been  displaced, toggle between all visi-
            ble/invisible windows.  Then ponder this:
               is top fibbing or telling honestly your imposed truth?


7. BUGS
       Send bug reports to:
          Albert D. Cahalan, 


8. HISTORY Former top
       The original top was written  by  Roger  Binns,  based  on  Branko
       Lankester's  ps program.

       Robert  Nation  adapted it for
       the proc file system.

       Helmut Geyer    added  support
       for configurable fields.

       Plus many other individuals contributed over the years.


9. AUTHOR
       This entirely new and enhanced replacement was written by:
          Jim / James C. Warner, 

       With invaluable help from:
          Albert D. Cahalan, 
          Craig Small, 


10. SEE ALSO
       free(1), ps(1), uptime(1), atop(1), slabtop(1), vmstat(8), w(1).






Linux                         September 2002                       TOP(1)



View our main Linux page
Close

Search

Close

Share

Close

Dialog