Please explain this output of ps -ef command?

137,664

Solution 1

You can check the manpage using man ps to find out what the columns mean. The Linux ps manpage, for example, gives:

c              C           integer value of the processor utilisation percentage.
                           (see %cpu)
tname          TTY         controlling tty (terminal). (alias tt, tty).
args           COMMAND     command with all its arguments as a string. May chop as
                           desired. Modifications to the arguments are not shown.
                           The output in this column may contain spaces.
                           (alias cmd, command)
cmd            CMD         see args. (alias args, command)

If the TTY is ? that means that the process is not associated with any user terminal.

Solution 2

Since these are all kernel processes, they are not attached to a TTY (hence the ? value in the TTY field).

Solution 3

UID PID PPID C STIME TTY TIME CMD

root 1 0 0 2012 ? 00:00:01 init [3]

Understanding the output:-

  1. The name of the user who have started the process.

  2. This column is PID i.e. process id. This act as the identification no of the process running in the memory.

  3. This column is PPID i.e. parent process id. This id is the pid of the process because of which these process has been started. All the Oracle processes don’t have a parent process and are thus adopted by init process, init process having pid as 1 so all the oracle processes will have ppid as 1.

  4. Processor utilization information in %.

  5. This is the start time of the process, for a long running process like in case of Oracle it will show only the date in process was started. If you want to know full year and time of a lone running process, fire the command with this option ps –efo user, pid, ppid, etime, args – etime will tell for last how many days process has been running.

  6. This is the terminal from which the process was started. As in case of grep pmon command was fired in terminal pts/2 thus it is showing that this process is started by terminal pts/2. All the oracle process are not started by any terminal.

  7. Total time for which the process has utilized CPU.

  8. The command and arguments executed.

Share:
137,664

Related videos on Youtube

jshthornton
Author by

jshthornton

Updated on September 18, 2022

Comments

  • jshthornton
    jshthornton over 1 year

    A part of the output from the ps -ef command is given below :

    UID        PID  PPID  C STIME TTY          TIME CMD
    root         1     0  0  2012 ?        00:00:01 init [3]         
    root         2     1  0  2012 ?        00:00:01 [migration/0]
    root         3     1  0  2012 ?        00:00:00 [ksoftirqd/0]
    root         4     1  0  2012 ?        00:00:00 [watchdog/0]
    root         5     1  0  2012 ?        00:00:00 [events/0]
    root         6     1  0  2012 ?        00:00:00 [khelper]
    root         7     1  0  2012 ?        00:00:00 [kthread]
    root         9     7  0  2012 ?        00:00:00 [xenwatch]
    root        10     7  0  2012 ?        00:00:00 [xenbus]
    root        18     7  0  2012 ?        00:00:01 [migration/1]
    root        19     7  0  2012 ?        00:00:00 [ksoftirqd/1]
    

    What does the "?" for all the rows in the TTY column mean? Also what does C and CMD column stand for?

  • derobert
    derobert over 11 years
    man ps should work everywhere, not just Linux. Going to edit your answer to say what I think you must have meant; feel free to revert if I'm in err.
  • Jeff Schaller
    Jeff Schaller over 6 years
    What does the "?" for all the rows in the TTY column mean? See also the existing answer to ensure that you're adding to the existing knowledge.
  • Stephen Kitt
    Stephen Kitt over 6 years
    Does the licence on this material allow you to copy and paste it on Stack Exchange?
  • Haddad
    Haddad about 3 years
    None of the man pages I can find show the column header "C", but that header still appears in my ps -ef output
  • Karlson
    Karlson about 3 years
    @ShadSterling On Ubuntu 20.04 man ps - under STANDARD FORMAT SPECIFIERS