"Taking a LiveFire Labs' course is an excellent way to learn
Linux/Unix. The lessons are well thought out, the material is
explained thoroughly, and you get to perform exercises on a real
Linux/Unix box. It was money well spent."
Ray S.
Pembrook Pines, Florida
LiveFire Labs' UNIX and Linux Operating System Fundamentals
course was very enjoyable. Although I regularly used UNIX systems
for 16 years, I haven't done so since 2000. This course was a
great refresher. The exercises were fun and helped me gain a real
feel for working with UNIX/Linux OS. Thanks very much!"
Ming Sabourin
Senior Technical Writer
Nuance Communications, Inc.
Montréal, Canada
Read more student testimonials...
Receive UNIX Tips, Tricks, and Shell Scripts by Email
LiveFire Labs' UNIX Tip,
Trick, or Shell Script of the Week
UNIX Process Management - Part I
Since the UNIX and Linux operating systems are multiuser and
multitasking operating systems, there are a large number of system
activities for the operating system to continuously track and manage.
Processes are used by the operating system to effectively and
efficiently handle this seemingly complicated task.
Because of the multitasking capabilities of these operating systems,
each user also needs a method for tracking and managing the
simultaneous tasks he or she is working on. Jobs and job control
provide this method for the user.
What is a UNIX Process?
A process in UNIX or Linux is an executing command or program. The
process is what actually performs the work of the command or program.
A process is created every time you run a UNIX command or program from
the command line. For example, when you execute a simple command like
ls, a single process is created to list the contents of the working
directory. A command line containing multiple UNIX commands separated
by pipes will execute one process per pipe section.
Another example of a process is the shell managing your login session.
This process is created after your username and password has been
validated by the system during login. Most of the time a process will
live, execute, and die without any intervention from the process
owner.
Key Attributes of a UNIX Process
Each UNIX process has many attributes associated with it. The
following list contains some of the key attributes of a process:
Process ID (PID) - a unique number assigned to the process
when it is created. The system and the process's owner use this number
to manage the process.
Parent Process ID (PPID) - the process ID of the process's
parent.
User ID (UID) - the user ID number of the user who started
the process.
Group ID (GID) - the group ID number of the user who started
the process.
TTY - the terminal device associated with the process.
Need a simple script to monitor and restart your system processes automatically?
See ProcMonUX - a Simple Lightweight Process Monitor Script with Alerts, Restart and Logging for more info. It works with both UNIX and Linux...and it's FREE!
Read the
NEXT article in this series -
UNIX
Process Management - Part II (Parent-Child, Fork-and-Exec,
Daemons)