Managing Processes in Linux/Unix :
top, ps, kill, df, free, nice 
| 
What
  is a process? 
An instance of a program is called
  a Process. In simple terms, any command that you give to your Linux machine
  starts a new process. | 
It’s possible to have multiple processes
for the same program.
Types of Processes:
- Foreground Processes: They run on the screen and need input from the user. For example : Office Programs
- Background Processes: They run in the background and usually do not need user input. For example Antivirus.
Running
a foreground Process
To start a foreground process you
can either run it from the dash board or you can run it from the terminal.
When using the Terminal, you will
have to wait, until the foreground process runs.
Running
a Background process
If you start a foreground
program/process from the terminal, then you cannot work on the terminal, till
the program is up and running.
Certain, data intensive tasks take
lots of processing power and may even take hours to complete. You do not want your
terminal to be held up for such a long time.
To avoid such a situation, you can
run the program and send it to the background so that terminal remains
available to you.  Let’s learn how to do this -
Fg
You can use the command “fg” to
continue a program which was stopped and bring it to the foreground. 
The simple syntax for this utility
is:
fg 
Example
- Launch ‘banshee’ music player
- Stop it with the ‘ctrl +z’ command
- Continue it with the ‘fg’ utility.
Let’s look at other important
commands to manage processes -
Top
This utility tells the user about
all the running processes on the Linux machine.
Press ‘q’ on the keyboard to move
out of the process display.
The terminology follows:
| 
Field | 
Description | 
Example
  1 | 
Example
  2 | 
| 
PID | 
The
  process ID of each task | 
1525 | 
961 | 
| 
User | 
The
  username of task owner | 
Home | 
Root | 
| 
PR | 
Priority 
Can
  be 20(highest) or -20(lowest) | 
20 | 
20 | 
| 
NI | 
The
  nice value of a task | 
0 | 
0 | 
| 
VIRT | 
Virtual
  memory used (kb) | 
1775 | 
75972 | 
| 
RES | 
Physical
  memory used (kb) | 
100 | 
51 | 
| 
SHR | 
Shared
  memory used (kb) | 
28 | 
7952 | 
| 
S | 
Status 
There are five types: 
         
  'D' = uninterruptible sleep 
         
  'R' = running 
         
  'S' = sleeping 
         
  'T' = traced or stopped 
         
  'Z' = zombie | 
S | 
R | 
| 
%CPU | 
%
  of CPU time | 
1.7 | 
1.0 | 
| 
%MEM | 
Physical
  memory used | 
10 | 
5.1 | 
| 
TIME+ | 
Total
  CPU time | 
5:05.34 | 
2:23.42 | 
| 
Command | 
Command
  name | 
Photoshop.exe | 
Xorg | 
PS
This command stands for ‘Process
Status’.  It is similar to the “Task Manager” that pop-ups in a Windows
Machine when we use Cntrl+Alt+Del . This command is similar to ‘top’ command
but the information displayed is different.
To check all the processes running
under a user, use the command -
ps ux
You can also check the process
status of a single process , use the syntax -
ps PID 
Kill
This command terminates a running
processes on a Linux machine.
In order to use  this utility
you need to know the PID (process id) of the process you want to kill
Syntax –
kill PID
To find the PID of a process simply
type
pidof  Processname
Let us try it with an example
NICE
Linux can run  a lot of
processes at a time ,which can slow down the speed of some high priority
processes and result in poor performance.
To avoid this, you can tell your
machine to prioritize processes as per your requirements
This priority is called Niceness
in Linux and it has a value between -20 to 19. The lower the
Niceness index the higher would be priority given to that task.
The default value of all the
processes is 0.
To start a process with a niceness
value other  than the default value use the following syntax
nice –n ‘Nice value’ process name
If there is some process already
running on the system then you can ‘Renice’ its value using syntax.
renice ‘nice value’ –p ‘PID’
To change Niceness you can use the
‘top’ command to determine the PID (process id) and its Nice value.  Later
use the renice command to change the value.
Let us understand this by an
example.
DF
This utility reports the free disk
space(Hard Disk) on all the file systems.
If you want the above information in
a readable format , then use the command
‘df –h’  
Free
This command shows the free and used
memory (RAM) on the Linux system.
You can use the arguments
free -m  to display output in
MB
free -g  to display output in
GB
Summary:
- Any running program or a command given to a Linux system is called a process
- A process could run in foreground or background
- The priority index of a process is called Nice in Linux. Its default value is 0 and it can vary between 20 to -19
- The lower the Niceness index the higher would be priority given to that task
| 
Command | 
Description | 
| 
bg | 
To
  send a process to background | 
| 
fg | 
To
  run a stopped process in foreground | 
| 
top | 
Details
  on all Active Processes | 
| 
ps | 
Give
  the status of processes running for a user | 
| 
ps
  PID | 
Gives
  the status of a particular process | 
| 
pidof
   | 
Gives
  the Process ID (PID) of a process | 
| 
kill
  PID | 
Kills
  a process | 
| 
nice | 
Starts
  a process with a given priority | 
| 
renice | 
Changes
  priority of an already running process | 
| 
df | 
Gives
  free  hard disk space on your system | 
| 
free | 
Gives
  free RAM on your system | 
 
0 comments:
Post a Comment