A group of programs and functions that provide basic functionality on a computer; The
software that manages access to a system's hardware and other resources.
Operating system is a manager. It manages all the available resources on a computer.
These resources can be the hard disk, a printer, or the monitor screen. Even memory is a resource
that needs to be managed. Within an operating system are the management functions that
determine who gets to read data from the hard disk, what file is going to be printed next, what
characters appear on the screen, and how much memory a certain program gets.
One basic concept of an operating system is the process. If we think of the program as
the file stored on the hard disk or floppy and the process as that program in memory, we can
better understand the difference between a program and a process. Although these two terms are
often interchanged or even misused in "casual" conversation, the difference is very important for
issues that we talk about later. Often one refers to an instance of that command or program.
A process is more than just a program. Especially in a multi-user, multi-tasking
operating system such as UNIX, there is much more to consider. Each program has a set of data
that it uses to do what it needs. Often, this data is not part of the program. For example,
to access the system at once.
The process by which a computer system is able to maintain multiple programs
(tasks) in memory and to switch fast enough to appear as if all programs are being run
An operating system originally developed at Bell Laboratories.
Virtual Memory Basics:
One interesting aspect about modern operating systems is the fact that they can run
programs that require more memory than the system actually has.
At the extreme end, this means that if your CPU is 32-bit (meaning that it has
registers that are 32-bits), you can access up to 232 bytes (that 4,294,967,296 or 4 billion). That
means you would need 4 Gb of main memory (RAM) in order to to completely take advantage of
this. Although many systems are currently available (2003) with 256 MB or even 512 MB, more
RAM than that is rare; and 4 Gb is extremely rare for a home PC.
Files and Directories:
Another key aspect of any operating system is the concept of a file. A file is
nothing more than a related set of bytes on disk or other media. These bytes are labeled with a
name, which is then used as a means of referring to that set of bytes
There are three kinds of files with which most people are familiar: programs,
text files, and data files. However, on a UNIX system, there are other kinds of files. One of the most
common is a device file
The directories have information that points to where the real files are. one
kind of file is a directory. What this kind of file can contain are files and more directories
When referring to directories under UNIX, there is often either a leading or
trailing slash ("/"), The top of the directory tree is referred to with a single "/" and is called the
"root" directory. Subdirectories are referred to by this slash followed by their name, such as /bin or
Operating System Layers:
It consists of many layers, one on top of the other. At the very core is the
interface with the hardware. The operating system must know how to communicate with the
hardware or nothing can get done. This is the most privileged aspect of the operating system.
With many UNIX systems that are around, the user is unaware that the operating
system is a UNIX system. Many companies have point-of-sales systems hooked up to a UNIX host
Any computer. Normally used When the Computer is on Network, is called Host.
Linux is available from many companies and in many versions. Often, a company will
produce its own version with specific enhancements or changes. These are then released
commercially and called distributions. Although Linux is technically only the kernel, it is commonly
considered to be all of the associated programs and utilities. Combined with the kernel, the utilities
and often some applications comprise a commercial distribution.
The primary part of the operating system. This manages all system functions such as
memory, task scheduling, how devices are accessed, etc.
Working with the System:
Whether you login using the GUI or a characteDirectory Pathsr console, the way you
interact with a Linux system is essentially the same. You must first be able to identify yourself to
the system by providing the appropriate information. This information is your user name or login
name and a password.
Backing-up and Restoring Files:
Linux provides a number of different useful tools to help you backup your system.
Perhaps the most commonly used tool is tar, probably because of its simplicity. For example let's
say you wanted to make a backup copy of the entire directory /data, the command might look like
tar cvf data.backup /data
Therefore instead of using a filename you could use the name of a device file, like this:
tar cvf /dev/tape /data
The tar (tape archive) command bundles a bunch of files together and creates an archive
(commonly called a tar file or tarball) on a tape, disk drive, or floppy disk. The original files are not
deleted after being copied to the tar file.
To create an archive using tar, use a command like this, which bundles all the files in the
current directory that end with .doc into the alldocs.tar file,the c, v, and f flags mean create a new
archive, be verbose Archive:depository containing historical records and documents
To mount a filesystem/disk you use the mount command. Assuming that your CD-ROM is
the master device on the second controller you might mount it like this:
mount DEVICE DIRECTORY
mount /dev/hdc /media/cdrom
Sometimes /media/cdrom does not exist, so you might want to try this.
mount /dev/hdc /mnt
Sometimes the system already know about the CD-ROM device, so you can leave off either
You can then cd into /media/cdrom and you are on the CD.
Shells and Utilities:
Most UNIX users are familiar with "the shell"; it is where you input commands and get
output on your screen. Often, the only contact users have with the shell is logging in and
immediately starting some . Some administrators, however, have modified the system to the point
where users never even see the shell, or in extreme cases, have eliminated the shell completely for
The program that controls the user interaction with the operating system.
cp file1 file2 -> Copy File1 To File2
mkdir -> Make Directory
for Example : mkdir -p one/two/three/four
The place on your screen, usually indicated by a prompt, where a user input commands.
May also refer to the string of characters that form the command.
man <command_name> -> Macros to format man pages
ls [OPTION] ... [FILE] ... -> List Directory contents
directories are separated from files and other directories by a /, a file in the current
directory could be referenced as ./file_name and a file in the parent directory would be referenced
as ../file_name. You can reference the parent of the parent by just tacking on another ../, and then
continue on to the root directory if you want. So the file ../../file_name is in a directory two levels
up from your current directory. This slash (/) is referred to as a forward slash, as compared to a
Current directory Target directory Relative path Absolute path
/data/home/jimmo/letter /data/home/jimmo/letter/dave ./dave or dave
/data/home/jimmo/letter/dave /data/home/jimmo/letter /data/home/jimmo ../
/data/home/jimmo /data/home/jimmo/letter /data/home/ ../.. /data/home
/data/home/jimmo/letter /tmp ../../../../tmp /tmp
H The fully-qualified hostname
w Current working directory
t the current time in 24-hour HH:MM:SS format
T the current time in 12-hour HH:MM:SS format
@ the current time in 12-hour am/pm format
A the current time in 24-hour HH:MM format
l the basename of the shell's terminal device
e Escape character
r carriage return
The settings associated with each file or directory that determine who can access the file
and directory and what types of access are permitted. Also called properties or attributes.
- regular file
c - character device
b - block device
d - directory
p - named pipe
l - symbolic link
An object known to a proces that stores a particular value. Shell variables are known to a
particular shell process and enviroment variables (generally) known to all of a particular user's