Please explain this output of ps -ef command?

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.


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


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 coulmn is PID i.e. process id .This act as the identification no of the process running in the memory.

  3. This coulmn 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 lon 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.