" &'# &' Had Designed.: Ô-.+/, and That Has Stuck Ever Since
" &'# &' Had Designed.: Ô-.+/, and That Has Stuck Ever Since
The history of the UNIX System dates back to the late 1960s when MIT, AT&T Bell Labs, and
then-computer manufacturer GE (General Electric) worked on an experimental operating
system called Multics.
Multics (
) was designed to be an
interactive operating system for the GE 645 mainframe computer.
In 1969, !"
one of the Bell Labs researchers involved in the Multics project.
With help from Dennis Ritchie, Thompson rewrote #thatgave him the opportunity to
write a $%
on the PDP-7, using the structure of a file system
"
&'# &' had designed.
Because the new multitasking operating system for the ()(*+ could support two
simultaneous users, it was called ,Ô
r
the first use of this name is attributed to ! . The name was changed slightly to
Ô-.+/, and that has stuck ever since.
UNIX System III, the various research editions, and experimental versions were distributed
by Thompson and Richie to colleagues at universities and other research laboratories.
In the late -.+/, the United States Department of )12#'# (
3#
#,)'( decided that the development of their version of UNIX should be carried
out at Berkeley. So in 1983, BSD (Berkeley Software Distribution) 4.1 was released.
Many computer vendors have used the BSD System as a foundation for the development of
their variants of UNIX. Some of the most important of these variants are the 4
& )567System V.
In -..-"
2, then a student at the 2
%, 8, decided to
build a kernel for a new UNIX -like operating system for PCs.
Torvalds had been working with the operating system built by $"9
to illustrate features of UNIX.
Torvalds wanted a UNIX version for PCs that captured the features of Minix. He considered
his work on this new kernel, which was eventually named 2
c :
22$
;# #$ 9
)
A) The UNIX operating system is made up of several major components. These components
include the ' ï the #, the i ï 2ÔÔÔ ï and the
ã
,
.
a The j is the part of the operating system that interacts directly with the
hardware of a computer, through
that are built into the kernel.
a It provides sets of services that can be used by programs, insulating these programs
from the underlying hardware.
a The major functions of the kernel are
To manage computer memory, to control access to the computer,
To maintain the file system, to handle interrupts (signals to terminate
execution),
To handle errors, to perform input and output services (which allow
computers to interact with terminals, storage devices, and printers), and
To allocate the resources of the computer (such as the CPU or inpu t/output
devices) among users.
"
a The reads your commands and interprets them as requests to execute a
program or programs, which it then arranges to have carried out.
a Because the shell plays this role, it is called a O
v
a Besides being a command interpreter, the shell is also a programming language.
c
!
#%
a In a monolithic kernel, all OS services run along with the main kernel t hread, thus
also residing in the same memory area.
a This approach provides rich and powerful hardware access. Ken Thompson, maintain
that it is "easier to implement a monolithic kernel͟ thanmicrokernels.
a The main disadvantages of monolithic kernels are th e dependencies between system
components Ͷ a bug in a device driver might crash the entire system Ͷ and the fact
that large kernels can become very difficult to maintain.
#
%
c
!
A) The j is the part of the operating system that interacts directly with the hardware of
a computer, through
that are built into the kernel.
It provides sets of services that can be used by programs, insulating these programs from
the underlying hardware.
a to manage computer memory : The kernel has full access to the system's memory
and must allow processes to safely access this memory as they require it.
a to control access to the comput er
a to maintain the file system,
a to handle interrupts (signals to terminate execution),
a to handle errors,
a to perform input and output services, and
a to allocate the resources of the computer among users.
Programs interact with the kernel through v System calls tell the kernel to carry
out various tasks for the program, such as opening a file, writing to a file, obtaining
information about a file, executing a program, terminating a process, changing the priority
of a process.
a The shell sits between you and the operating system, acting as a command
interpreter. It reads your terminal input and translates the commands into actions
taken by the system.
a The original shell was the Bourne shell, . Every UNIX platform will either have the
Bourne shell, or a Bourne compatible shell available.
a The C shell, , was written and is now found on most, but not all, UNIX systems. It
uses C type syntax, the language UNIX is written in, but has a more awkward
input/output implementation.
a The default prompt for the Bourne shell is w(or <, for the root user). The default
prompt for the C shell is=.
a Numerous other shells are available from the network. Almost all of them are based
on either or with extensions.
a Some of the more well known of these may be on your favourite Unix system: the
Korn shell, j , by David Korn and the Bourne Again Shell, , from the Free
Software Foundations GNU project, both based on , the T-C shell, , and the
extended C shell, , both based on .