1 - Introduction To Computer Systems

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 85

Introduction to Computer Systems

The Objective of this course is to have an insight on what a computer is, how it works in
collaboration with another computer or various devices that connect to it with or
without wires. The collaboration of various physically and geographically distant
computers serves as the medium for communication, information sharing and
processing. This collaboration of computers forms a computing environment. In
addition, this course explains the basics of system software and the different programs
associated with system software like assemblers, compilers, loaders, linkers and
interpreters.
1.Introduction to Computer Technology Page No.
1.1. hat is a !omputer "
1.". !omponents in a !omputer #ystem $
1.%. !omputer &anguage 1$
2.Computer Organization and Architecture
".1. Organi'ation of a #mall !omputer 1(
".". )us %*
".%. +ddressing ,odes %1
3.Systems Sot!are
%.1. +ssembler %%
%.". +ssembly &anguage %-
%.%. &oaders and &inkers %.
%./. !ompilers /*
%.-. Interpreters /1
".Introduction to Operating System
/.1. )asic 0esources ,anaged by Operating #ystems //
/.". 0esource #haring ,anagement -.
#.Computing $n%ironments
-.1. ,ainframe !omputing 1nvironment $*
-.". 2etworks $/
-.%. Internet 3/
-./. ebsites 3.
Page 1
ASPIRE 2014 ( Introduction to Computer systems )
1.Introduction to Computer Technology
1.1. &hat is a Computer
!omputers have become an indispensable part of our daily life. )e it connecting with our
friends, shopping, gaming, booking tickets, getting the score updates, listening to music,
watching movies as well as live T4 programs and so on 5refer 6igure 1.1, 1.", 1.% and 1./7.
!omputers have made our life not only easy but more interesting as well. It is an advantage for
us, that we are living in the period of such technological revolutions. #o, let us explore what
!omputer Technology actually is and how it works.
Page 2
ASPIRE 2014 ( Introduction to Computer systems )
&hat is a Computer
+ computer is a machine that executes a set of arithmetic or logical instructions. The se8uence of
these instructions can be changed to perform a variety of operations and get various outputs.
6or example, it can perform arithmetic instructions 5instructions used for calculations7 like +dd,
,ultiply, #ubtract or 9ivide. It can calculate and store " : % ; - as result in the memory.
&ogical instructions have some conditions that evaluate to either true or false 5called )oolean
values7. )ased on these conditions they derive a result. 6or example, we want to calculate the
grade of a student based on the total marks as follows< If total marks is greater than 1.* then,
=rade of #tudent should be +. 1lse if total marks is in between 1-* and 1.* then =rade of
#tudent should be ). Otherwise 5that is both the previous conditions evaluated to false7 the
=rade of #tudent will be !. #o, if Tom has his total marks as 13- then, his grade will be ) as the
second logical condition evaluates to true, in this case.
If simply put, we can describe computer as an electronic device which takes some input like your
name and birth date and displays your age. +lso it can remember your name and greet you the
next time you start it. >ence it uses information to calculate results. +lso it stores and remembers
information.
6or example, if you have entered your name as Tom and birth date as 1st ?anuary 1((- and if the
current year is "*1/, the computer will display the result as elcome Tom. @our age is 1( years.
The evolution of !omputer Technology has been an interesting journey and starts with its
pioneer !harles )abbage.
!harles )abbage, the father of computer, designed the first automatic computing engine. It was
to operate on steam and was called the 9ifference 1ngine 5refer 6igure 1.-7.
Page 3
ASPIRE 2014 ( Introduction to Computer systems )
>arvard ,arkAI 5refer 6igure 1.$7 computer was built as a partnership between >arvard and I),
in 1(//. It was the first programmable digital computer made in the B.#.
)ut it was not a purely electronic computer. The ,arkAI computer was constructed out of
switches, clutches, relays and rotating shafts.
The machine weighed - tons, contained -** miles of wire, was -1 feet long and . feet tall, and
had a -* ft rotating shaft, turned by a - horsepower electric motor.
The first completely electronic computer is well known as 12I+! 51lectronic 2umerical
Integrator +nd !alculator A refer 6igure 1.(7 and was developed by the Bniversity of
Cennsylvania in 1(/$. This was followed by many evolutions and then came +pple I computer
5refer 6igure 1.37 in 1(3$, which could be setup as a 9o It @ourself Dit.
Page 4
ASPIRE 2014 ( Introduction to Computer systems )
The computers that we use today is a transformation which was a result of the invention of the
microprocessor. + microprocessor 5uC7 is a computer that is fabricated on an Integrated !ircuit
5I! A refer =lossary and 6igure 1..7.
It is a single integrated circuit that is sufficiently complex enough to perform the processing part
of the information processing cycle 5that is the arithmetic and logical calculations discussed
above in this section A by considering information like marks, we have derived the grade of a
student7. In other words, it must have enough circuitry to process data, perform calculations, and
facilitate interface with memory, input, output and storage devices 5refer section ".1.b for more
details on Input, Output and #torage devices7.
+ microprocessor can perform calculation at a super speed with accuracy. 6or example, the
following calculation is performed really fast producing accurate results.
1/3%$(.-" E -.(%3./" E $(.-%"./3 E $-.(%.$-(.; %((3..""""*33(/1(1%-$.3%.$(-(3(*/
Page 5
ASPIRE 2014 ( Introduction to Computer systems )
!omputers had been around for "* years before the first microprocessor was developed by Intel
5one of the leading companies that manufactures hardware7 in 1(31. The micro in the name
microprocessor refers to the small physical si'e. Intel did not invent the electronic computer. )ut
they were the first to succeed in designing an entire computer on a single chip 5I!7.
Thus Intel /**/, the first microprocessor 5uC7 came into existence. The /**/ consisted of "%**
transistors and was clocked at 1*. k>' 51*.,*** times per second7. !ompare this to the /"
million transistors and the " =>' clock rate 5",***,***,*** times per second7 used in a Centium
/. Cioneer 1* spacecraft, the manAmade object farthest from the earth has IntelFs /**/ chips.
Intel followed the /**/ with the .**. and .*.*.The Intel Centium / used in todayFs C!s is still
compatible with the Intel .*.. used in I),Fs first C!.
In 1((% +pple released its first tablet computer named 2ewton ,essage Cad 1** and then iCad
in "*1* followed by a series of tablets 5refer 6igure 1.(7 and we still have more innovations on
the way.
The evolution of computer has changed it from that of the si'e of a room to the one that fits in
your palm with multiple times more computational ability and speed.
6ew of the latest use of computer technology can be listed as below 5refer =lossary for details7.
9igital #ignature 4erification
2atural &anguage #peech to Text
+ugmented 0eality
!loud !omputing
Chablets
Page
ASPIRE 2014 ( Introduction to Computer systems )
Omnidirectional Imaging
#ocial 2etworking
1.2. Components in a Computer System
+ computer consists of following components<
>ardware
#oftware
6irmware
1.2.1. 'ard!are
>ardware constitutes the tangible parts of computer like its keyboard, mouse, 4isual 9isplay
Bnit 549B or monitor7, circuits etc. It is best described as all the physical parts of a computer,
the parts you can actually see and touch.
>ardware constitutes the following parts of computer<
I. !ase or body of computer
II. Cower supply
III. Input peripherals
i. ,ouse
ii. Deyboard
I4. Output peripherals
i. ,onitor
ii. Crinter
4. ,emory 9evice
4I. ,otherboard
i! !entral Crocessing Bnit
ii. 0+,
iii. Corts
Page "
ASPIRE 2014 ( Introduction to Computer systems )
4II. 1xpansion cards
Out of the components listed above, in this session, we will focus our discussion on the
following parts of hardware only<
I. ,ouse
II. Deyboard
III. ,onitor
I4. ,emory 9evice
4. !entral Crocessing Bnit

1.2.1.1. (ouse
+ ,ouse is an input device and probably has at least two buttons on it. The left button is called
the primary mouse button, the right button is called the secondary mouse button or just the right
mouse button. There can be a small wheel called #croller between the two mouse buttons. The
mouse can be used as follows<
Clic)* Coint to an item, then tap 5press and release7 the left mouse button. &ike you click
links on a website.
+ou,le-clic)* Coint to an item and press the left mouse button twice in rapid succession.
.ight-clic)* Coint to an item, then tap the right mouse button.
Page #
ASPIRE 2014 ( Introduction to Computer systems )
+rag* Coint to an item, then hold down the left mouse button as you move the mouse.
Then release the left mouse button to drop the item.
.ight-drag* Coint to an item, then hold down the right mouse button as you move the
mouse. Then release the right mouse button to drop the item.
1.2.1.2. /ey,oard
+ Deyboard is an input device and is usually used when we need to type some text input or fill a
form. 4arious keys are explained below.
The function keys have some definite function depending on the application or program
that you are using on your computer. There are twelve function keys from 61 to 61". 61
can always be used to display help for your current application, 6" can be used to change
name of any file, 6% can be used to search any text or file on the computer. #imilarly each
function key can be used to perform a specific action.
The direction keys or +rrow keys can be used to move the typing cursor 5the blinking
short vertical line on monitor that indicates the position of text insertion7 at desired
location.
The numeric keys can be used to enter numbers if we have pressed the 2umA&ock key
which can be indicated by the light on &ock Dey indicators. Otherwise, the 2umeric keys
behave as direction keys and allows you to change your cursor location.
!trl and +lt keys are generally used in combination with other keys to perform some
specific task that is, you can press all these combination keys together to produce a single
input.
#hift Dey is also a special key which can be used to change the lower case letter to upper
case and viceAversa while typing. It is also used to display the parenthesis 57, the 8uestion
mark 5G7 , the exclamation point 5H7 and the colon5<7. +lso, it helps in displaying other
special characters like I, J, K that are present on the hori'ontal numeric keypad.
Page $
ASPIRE 2014 ( Introduction to Computer systems )
Tab key allows you to move the cursor by a fixed number of spaces. It is helpful if you
want to write something in a tabulated form. It can also be used to move to the next input
field while filling a form.
!aps &ock Dey sets an input mode in which typed letters are uppercase 5in capital letters7
by default . The keyboard remains in caps lock mode until the key is pressed again. It can
be useful when you are typing a heading or filling a form which re8uires only capital
letters.
1nter Dey causes a form or any other computer operation to perform its default function.
This is typically an alternative to pressing an OD button. It can also be used to move to
the next lineFs starting position while typing.
1sc 51scape7 key can be used to cancel a task or to go back to a previous task.

1.2.1.3. (onitor
,onitor, also called as 49B 54isual 9isplay Bnit7 is the primary output device. It looks like a
Television and has similar purpose of displaying videos or output of programs. ,onitors are built
using technologies like !athode 0ay Tube 5!0T monitors A refer =lossary7 and Thin 6ilm
Transistor &i8uid !rystal 9isplay 5T6T A &!9 monitors A refer =lossary7. e now generally
have these monitors or screens made of T6TA&!9.
Page 10
ASPIRE 2014 ( Introduction to Computer systems )
1.2.1.". (emory +e%ices
These are the devices which store the information.
The term primary memory is used for the information in physical systems which functions at
highAspeed. 6or example, it is capable of performing complex calculations and displaying the
results at the same time.
#econdary memory devices are physical devices for program and data storage which are slow to
access but offer higher memory capacity.
Crimary memory stored on secondary memory is called virtual memory.
0+, 5refer 6igure 1.1/, =lossary7, and !omputer cache 5refer =lossary7 are examples of
Crimary memory storage. ,agnetic tapes, !ompact 9isks 5!9s7, 9igital 4ersatile 9isks 5949s
A refer 6igure 1.1-7 are all examples of #econdary ,emory #torage.
The memory is organi'ed into memory cells each storing one binary bit 5* or 17. The memory
cells are grouped into words of fixed length, for example 1, ", /, ., 1$, %", $/ or 1". bit. 1ach
Page 11
ASPIRE 2014 ( Introduction to Computer systems )
word in the memory can be accessed by a binary address 5refer =lossary7 of 2 bit, making it
possible to store " raised by 2 words.
1.2.1.#. Central Processing 0nit
The !entral Crocessing Bnit 5!CB7 or the computer processor performs calculations, processes
information, stores data in memory and controls the flow of data. The conventional processors
are small in si'e and have all the circuits integrated on a single chip. )ecause of its small si'e,
the processor is also known as microprocessor. It is also called the )rain of computer.
+ minimal hypothetical microprocessor might only include an arithmetic logic unit
5+&B7 and a control logic section.
The +&B performs mathematical operations such as addition of two numbers, and logical
operations such as +29 or O0 5refer =lossary7. 1ach operation of the +&B sets one or
more flags in a status register 5a small memory within the !CB7, which indicates the
result of the last operation.
The control logic section retrieves instruction codes from memory, and initiates the
se8uence of operations that the +&B re8uires to carry out the instruction. It may happen
that a single operation code affects many registers 5refer =lossary7 at the same time. It is
like executing a flow chart 5refer =lossary7 and depending on the condition encountered
in the flow chart an appropriate decision will be taken and the flow will jump to some
other operation to be triggered in the +&B.
=arrett +i0esearchFs !entral +ir 9ata !omputer 5!+9!7 51($.7, Texas Instruments 5TI7
T,# 1*** 51(31 #eptember7 and IntelFs /**/ 51(31 2ovember7 are the three projects
that delivered a microprocessor at about the same time.
e also have multiAcore processors that have a single chip containing more than one
microprocessor. This effectively multiplies the processorFs potential performance by the
number of cores 5the independent actual central processing units7.
Page 12
ASPIRE 2014 ( Introduction to Computer systems )
The first dualAcore processors 5microprocessors having two separate microprocessors on
single Integrated !hip A refer 6igure 1.1$7 for personal computer were announced in
"**-.
+s of "*1%, dualAcore and 8uadAcore processors 5microprocessors having four separate
microprocessors on single Integrated !hip7 are widely used in home C!s and laptops
while six, eight, ten, twelve and sixteenAcore processors are common in the professional
and enterprise markets with workstations and servers 5refer =lossary7.
1.2.2. Sot!are
#oftware is the nonAmaterial part of computer like data, programs, protocols etc. It is a
nonAphysical component that runs on your computer and can be changed by a set of programmed
instructions.
6or example you watch a movie on a 949 using the 949 drive in your computer. >ere the
949 and 949 drive are both hardware, but the program in your computer that you use to watch
this movie is called software. Thus as movie is stored on a 949, similarly there is a program
like ,edia Clayer stored on your computer to watch that movie. The application that you are
currently using to read this text is also a software.
#oftware can be categori'ed into three types as follows<
#ystem #oftware
Btility #oftware
+pplication #oftware
1.2.2.1. System Sot!are
It is the software used to manage and control the hardware components and which allow
interaction between the hardware and the other types of software 5refer 6igure 1.137. The most
obvious type of system software is the computerFs operating system. e will see Operating
#ystem in detail.
Page 13
ASPIRE 2014 ( Introduction to Computer systems )
+ll the programs and software run on computer using the main software L The Operating
#ystem. #ome popular modern operating systems are +ndroid, iO#, Bnix, &inux, ,ac O# M,
,icrosoft indows and I), 'NO# 5refer 6igure 1.1.7.
Operating system has various categories as listed below<
.eal-time* 0ealAtime operating systems often use speciali'ed scheduling algorithms
5refer =lossary7. The main objective of realAtime operating systems is their 8uick and
predictable response to events. Their design is called eventAdriven or timeAsharing design.
+n eventAdriven design system switches between tasks based on their priorities or
external events while timeAsharing operating systems switch tasks based on clock
interrupts.
(ulti-user* + multiAuser operating system allows multiple users to access a computer
system at the same time. TimeAsharing systems or Internet servers are examples of
multiAuser systems as they enable multipleAuser access to a computer through the sharing
of time.
(ulti-tas)ing* + multiAtasking operating system allows more than one program to run at
a given time. ,ultiAtasking can be of two types< preAemptive and coAoperative.

Page 14
ASPIRE 2014 ( Introduction to Computer systems )
o Pre-empti%e multitas)ing is the act of temporarily interrupting a task being
carried out by a computer system, with the intention of resuming the task at a later
time. BnixAlike operating systems such as #olaris and &inux support preAemptive
multitasking. 6or example, you are talking on a land line phone to someone and
the door bell rings. In this case you would keep the phone caller on hold and visit
the person on door and then come back and continue with the telephone call. It
shows here that the ringing of the door bell was a task having higher priority for
which you could suspend the current normal priority phone call.
o Co-operati%e multitas)ing is achieved by relying on each process to give time to
the other processes in a defined manner. 1$Abit versions of ,icrosoft indows
5,icrosoft indows 1.* to %.* and (x versions which still support the older
windows versions. These systems usually hang or stop responding in case one
running program does not cooperate to yield the processor to some other program7
used cooperative multiAtasking. ,ac O# versions before to O# M used to support
cooperative multitasking.
Single-tas)ing* + #ingle Tasking system has only one running program 5refer
=lossary7.The Calm O# for Calm handheld computers is an example of a singleAuser and
singleAtask operating system.
+istri,uted* + distributed operating system manages a group of independent computers
and makes them appear to be a single computer. The networked computers working as a
group in cooperation, make a distributed system.
$m,edded* 1mbedded operating systems are designed to be used in embedded computer
systems. These are designed to operate on machines like C9+s with less autonomy. They
operate with a limited number of resources, are very compact and extremely efficient by
design. ,inix % and indows !1 are examples of embedded operating systems
1.2.2.2. 0tility Sot!are
It is software such as antiAvirus software like 2orton and ,c+fee, or ,icrosoft #ecurity
1ssentials which help to maintain and protect the computer system but may not directly interface
with the hardware. Btilities like in'ip help to combine and compress data files so that they
occupy less memory and can be easily sent in mails.
1.2.2.3. Applications Sot!are
+lso known as apps, these are designed to allow the user of the system complete a specific task
or set of tasks. +pps include programs like web browsers, games and office software. They are
usually the reason you bought the computer system in the first place 5refer 6igure 1.1(7.
Page 15
ASPIRE 2014 ( Introduction to Computer systems )
1.2.3. 1irm!are
It is the combination of persistent memory 5long term or permanent storage which is preserved
even when the power supply is unavailable7, program code and the data stored in it.
It is software stored in hardware.
1xamples include embedded systems like traffic lights and remote control.
&et us understand firmware using remote control. hen you open a remote control you
see a set of circuits which along with the body of the remote control constitutes the
hardware part. 2ow you can move or switch channels using the remote control or you can
put a child lock for the same. +lso you can use the swap button on the remote control to
go back to the previous viewed channel. #o the remote control is able to remember which
is the most recent channel you viewed or your color preferences. This part constitutes the
software and data stored in your remote control.
!hanging the firmware of a device may rarely or never be done during its lifetime. #ome
firmware memory devices are permanently installed and cannot be changed at all.
9evices like printers, scanners, cameras and B#) drives have firmware stored internally.
Page 1
ASPIRE 2014 ( Introduction to Computer systems )
.elated (aterial23ideo 4in)s*
'ard!are* http<NNnptel.ac.inNcoursesN1*$1*$*("N%
Sot!are* http<NNnptel.ac.inNcoursesN1*$1*$*("N"
1irm!are* http<NNnptel.ac.inNcoursesN1*.1*"*/-N
1.3. Computer 4anguage
The term computer language includes a wide variety of languages used to communicate with
computers 5refer 6igure 1."17. Crogramming languages are a subset of computer languages. 6or
example, >T,& is a markup language 5refer =lossary7 and a computer language, but it is not
considered as a programming language.
,achine code is a computer language. It is a se8uence of binary digits 5binary digits contain only
* and 17 which instructs the computer to do the re8uired task. It can technically be used for
programming 5as for +ltair )+#I!7, but a se8uence of binary numbers can not be considered as
a programming language.
Crograming language is a convention based set of instructions that you execute on the machine to
store or manipulate any information or to perform any logical operation.
Crograming languages can be further categori'ed as follows<
4o! 4e%el Programing 4anguages* These languages are very close to the hardware.
They can be directly converted to machine code without any intermediate steps and hence
have faster execution. 6or example, +ssembly language. ! language can be used for low
level programing as it can directly interface with memory, hardware and the !CB. It can
also be used to create Operating #ystems and because of its userAfriendly programing
features, it can be considered as ,iddle &evel &anguage also.
Page 1"
ASPIRE 2014 ( Introduction to Computer systems )
'igh 4e%el Programing 4anguages* They provide a very high level of abstraction from
the detail of memory management and may go through two stages of processing before
they can be understood and executed by the computer. These stages are called
!ompilation and Interpretation 5refer =lossary7. They are easier and have more
userAfriendly programing features. 6or example, ?ava, !::, !K.
Scripting 4anguages* These languages are directly interpreted or executed by other
programs or onAthe fly and have a relatively simple syntax, easy to pick up and program
in. They are called scripting languages because they are used to write scripts or programs
that automate the execution of tasks which could alternatively be executed oneAbyAone by
a human operator. #cripting languages are very useful for webAbased programing. 6or
example, ?avascript, Cerl.
Summary
+ computer is a machine that executes a set of arithmetic or logical instructions and usually
provides a visual output. It has evolved from !harles )abbageFs 9ifference 1ngine design to the
modern day &aptops and Tablets.
The different components of a computer are<
'ard!are L The tangible or physical parts of the computer.
,ouse L The device used for pointing the target or double clicking a folder to open it.
Page 1#
ASPIRE 2014 ( Introduction to Computer systems )
Deyboard L The primary input device with all alphabets and numbers on it.
#creen L The primary output device which is like the T4 screen.
,emory devices store all the information and data.
,icroprocessor or !entral Crocessing Bnit A the electronic brain of computer responsible
for all computation logic
Sot!are L It is the nonAtangible part of a computer like programs and applications.
#ystem #oftware L It is the main software on the computer which enables execution of
other programs and software. 6or example A Operating #ystem.
Btility #oftware L Bsed as an add on or protection of computer from virus attacks. 6or
example A +ntiAvirus software.
+pplication #oftware L +pps help in performing any task on the computer. 6or example A
eb browser for internet use
1irm!are L The embedded systems that store software and data inside the hardware as the
hardwareFs inseparable part.

Page 1$
ASPIRE 2014 ( Introduction to Computer systems )
2.Computer Organization and Architecture
2.1. Organization o a Small Computer
!omputer Technology after its evolution, has made incredible improvements. In early stage of
evolution, the computers were not able to store data, the si'e of the computer was very huge with
very less computational power.
2ow a days, a personal computer has more computational power, more main memory, more disk
storage, is smaller in si'e and is available in affordable prices. The advances in technology
brought a rapid rate of improvement in building computers and innovation in computer design.
The model of a computer consists of four basic units 5refer 6igure ".17. The basic units are <
I. !entral Crocessing Bnit 5!CB7
II. Input 9evices and Output 9evices
III. ,emory Bnit
2.1.1. Central Processing 0nit 5CP06
!entral processing unit is also known as the brain of a computer. It is a hardware in a computer
that carries out the instructions of a computer program by performing the logical, arithmetical
and inputNoutput operations of the system.
!CB consist of three basic blocks 5refer 6igure "."7<
a. +rithmetic &ogical Bnit
b. !ontrol Bnit
Page 20
ASPIRE 2014 ( Introduction to Computer systems )
c. 0egisters
2.1.1.a. Arithmetic 4ogic 0nit 5A406
+&B performs mathematical, logical and decision operations in a computer. +fter the processing
is done by +&B, the result is sent to the computer memory.
In some computer processors, +&B is divided into two distinct parts<
i. +rithmetic Bnit
ii. &ogical Bnit
2.1.1.a.i. Arithmetic 0nit 5A06
+rithmetic Bnit performs arithmetic operations.
The +&B has got two input parameters named as + and ) and one output storage
parameter, named as !.
It performs the operation as< ! ; + op ) 5where op stands for operand which can be
either of the given operations7
I. +ddition 5!;+ : )7
II. #ubtraction 5!;+ A )7
Page 21
ASPIRE 2014 ( Introduction to Computer systems )
III. ,ultiplication 5! ; + E )7
I4. 9ivision 5! ; + N )7
The input data are stored in parameters + and ), and according to the operation specified, the
+&B performs the operation and puts the result in parameter !.
2.1.1.a.ii. 4ogical 0nit 5406
&ogical Bnit performs the logical operations. +&B has three logical operands<
I. +29
II. O0
III. 2OT
I. AN+
The +29 operator is represented by FOF and performs logical conjunction on two )oolean
expressions.
If both expressions are True, then F+29F returns True.
If either or both expressions are 6alse, then F+29F returns 6alse.
+s shown in the given table 56igure ".%7 < ! ; + O )
where * L means false and 1 L means true.
! will be * when either of the value is * which is false.
! will be 1 when both the values are 1 which is true.
II. O.
Page 22
ASPIRE 2014 ( Introduction to Computer systems )
The O0 operator represented by FPF performs logical disjunction on two )oolean expressions.
If either expression is True, FO0F returns True.
If neither expression is True, FO0F returns 6alse.
+s shown in the given table 56igure "./7 < ! ; + P )
where * L means false and 1 L means true.
! will be * when both the values are * which means false.
! will be 1 when either of the value is 1 which means true.
III. NOT
The 2OT operator is represented by FHF and performs the 2OT operation on a single operand.
It checks the status of a current operand and reverses the value in the resultant operand.
If the value of an operand is true then it is reversed to false.
If the value of an operand is false then it is reversed to true.
+s shown in the given table 56igure ".-7 < ) ; H+
where * L represents false and 1 L represents true.
) will be 1 if + is * i.e. true.
) will be * if + is 1 i.e. false.
Page 23
ASPIRE 2014 ( Introduction to Computer systems )

2.1.1.,. Control 0nit 5C06
The !ontrol Bnit extracts instructions from memory, decodes and executes them and then sends
the necessary signals to the +&B to perform the operations re8uired.
It is a circuitry that directs operations within the computerFs processor by directing the input and
output of a computer system. The processor then controls how the rest of the computer operates
5giving directions to the other parts and systems7. It works by gathering input through a series of
commands it receives from instructions in a running programs and then outputs those commands
into control signals that the computer and other hardware attached to the computer carry out. The
control unit basically controls the operations inside the !CB and helps in Qdirecting trafficQ in a
sense.
The control unit fetches instruction from main memory then decodes those instructions into
commands. +&B then executes those commands and it stores the result in main memory 5refer
6igure ".$7.
2.1.1.c. .egisters
0egisters are contained within the central processing unit and holds the data involved in the
computation being performed. The si'e of the register determines the processing capabilities of
the !CB. The amount of information that can be held in a register at a time for processing is
known as 0egister #i'e. The larger the register si'e, the faster is the speed of processing.
0egisters are the fastest and most costliest storage units in a computer. !omputer instructions are
stored in consecutive memory locations and are executed se8uentially one at a time.
Page 24
ASPIRE 2014 ( Introduction to Computer systems )
The control unit reads an instruction from a specific address in memory and executes it. It then
continues by reading the next instruction in se8uence and executes it. In this type of instruction
se8uencing, a counter is needed to calculate the address of the next instruction after execution of
the current instruction.
It is necessary to provide a register in the control unit for storing the instruction code after it is
read from memory. The computer needs processor registers 5refer to =lossary7 for manipulating
data and a register for holding memory address.
0egisters Cerforms following operations<A
1etch A The 6etch operation is used for taking the instructions given by the user.
+ecode A The 9ecode operation is used for interpreting the meaning of the instructions
fetched by registers. 9ecoding instructions mean A the !CB will find out which operation
is to be performed on the instructions.
$7ecute A The 1xecute operation is performed by the !CB and the results produced by
the !CB are then stored into the memory and after that they are displayed on the user
screen.
In the below given table 56igure ".37, registers are listed with a brief description of their function
and the number of bits they contain.
The capacity of memory unit is /*($ words and each word contains 1$ bits.
1" bits instruction word are needed to specify the address of an operand.
This leaves % bits for operation part of the instruction and a bit to specify a direct or
indirect address.
The data register 5907 holds the operand read from memory.
Page 25
ASPIRE 2014 ( Introduction to Computer systems )
The accumulator register 5+!7 is a general purpose processing register.
The instructions read from memory are placed in the instruction register 5I07.
The temporary register 5T07 is used for holding temporary data during the processing.
The input register 5I2C07 receives an .Abit character from an input device.
The output register 5OBT07 holds an .Abit character for an output device.
+ program counter 5C!7 is a register in a computer processor that contains the address of
the instruction being executed at current point of time. +s each instruction is fetched, the
program counter increases its stored value by 1 and points to the next instruction in
se8uence. hen the computer is reset or restarts, the program counter normally reverts to
*.
+n address register 5+07 is a highAspeed circuit that holds the addresses of data to be
processed or of the next instruction to be executed.
2.1.2. Input and Output +e%ices
Input and Output devices can be of three types
2.1.2.a. Input 0nit2+e%ices
+n input device is a hardware device that sends data to the computer.
ithout input device, a computer would only be a display device and would not allow
users to interact with it.
ith the help of input device, data from outside can be supplied to the computer.
Crogram or data is read into main storage using input device or secondary storage under
the control of !CB.
The below figure 5refer 6igure "..7, is an example of input being sent from a keyboard to
the computer.
Page 2
ASPIRE 2014 ( Introduction to Computer systems )
6ollowing are some of input devices<
Deyboard
,ouse, touchpad or any other pointing device
)arcode reader
Deyboard
)iometrics 5e.g. fingerprint scanner7
9igital camera and 9igital camcorder
Touch screen
ebcam
The drives such as !9A0O,, 949 are capable of sending information to computer, but they are
not input devices. These devices are considered as storage devices.
2.1.2.,. Output 0nit2+e%ices
+ny information that has been processed and comes from a computer is considered as an output.

hen someone views the output, theyFre viewing it on an output device such as a
computer monitor or a hard copy print out.
The below figure 5refer 6igure ".(7, is an example of output being sent from the computer
to a printer.
Page 2"
ASPIRE 2014 ( Introduction to Computer systems )
The computer results are provided to the user with the help of output unit, the results can
also be stored in storage device permanently for future use.
Output data from main storage is sent to output device under the control of !CB output
instructions.
1xamples of output devices<
o Crinter
o ,onitor etc
2.1.2.c. Input2Output +e%ices
+lso referred as IO device, it is a hardware device that accepts input information and has the
capability to output information as well. 1xamples of inputNoutput devices are
6loppy diskette drive 5refer 6igure ".1*7
!9A0O, drives 5refer 6igure ".117
,odem 5refer 6igure ".1"7
B#) thumb drives etc. 5refer 6igure ".1%7
Page 2#
ASPIRE 2014 ( Introduction to Computer systems )
2.1.3. (emory
,emory unit is an essential component in any computer, needed to store the data and program.
!CB works with information stored in memory unit. It is also termed as primary memory or
main memory. + very small computer with a limited application may be able to fulfill its
intended task without the need of additional storage capacity. ,ost general purpose computer is
run more efficiently if it is e8uipped with additional storage beyond the capacity of main
memory.
There is just not enough in one memory unit to accommodate all the programs used in typical
computer, users accumulate and continue to accumulate large amounts of data processing
software. There, it is more economical to use low cost storage devices to serve as a backup for
storing the information that !CB is not using currently.
The unit that communicates directly with !CB is called the main memory. The most common
memory device used are magnetic disks and tapes, used for storing large data files, system
programs and other backup information. Only data currently needed by the processor reside in
main memory. 0est of the information is stored in auxiliary memory and transferred to main
memory when re8uired.
6ollowing are types of memories<
a. (ain memory
i. 0+, 50andom +ccess ,emory7
ii. 0O, 50ead Only ,emory7
,. Au7iliary (emory
i. ,agnetic 9isks
ii. ,agnetic tapes etc.
2.1.3.a. (ain (emory
Page 2$
ASPIRE 2014 ( Introduction to Computer systems )
The main memory is the central storage unit in a computer system. It is used to store programs
and data being used during computer operation. 6ollowing comes under ,ain ,emory<
.A( 5.andom Access (emory6* 0+,, also known as volatile memory that loses its
contents when the computer or hardware device loses power.
.O( 5.ead Only (emory6* 0O, is used for storing programs that are permanently in
a computer and for tables of constants that do not change its value once the production of
computer is completed.
2.1.3.,. Au7iliary (emory
+n +uxiliary ,emory, also known as highAspeed memory bank is used in mainframes and
supercomputers 5refer to =lossary7. The major difference between main memory and auxiliary
memory is that !CB directly access the main memory but the auxiliary memory is not accessed
by the !CB directly. 6or this the data is first transferred from auxiliary memory to main memory
and then from main memory the data is transferred to the !CB for further processing.
The most commonly used auxiliary memory devices in the computer systems are magnetic disks
and magnetic tapes. 6ollowing are auxiliary memories<
(agnetic +is)
+ magnetic disk is a circular plate made up of metal or plastic, coated with magneti'ed
material.
)oth the sides of the disk are used and several disks may be stacked on one spindle with
readNwrite heads available on each surface.
)its are stored on magneti'ed surface in spots along concentric circles called tracks.
Tracks are divided into sections called sectors.
9isk that are attached and cannot be removed by occasional user are called >ard disk.
+ disk drive with the removable disks are called floppy disks.
(agnetic Tapes
+ magnetic tape is also known as 0emovable ,edia and consists of electric, mechanical
and electronic components to provide the parts and control mechanism for a magnetic
Page 30
ASPIRE 2014 ( Introduction to Computer systems )
tape unit. The major difference between magnetic disk and magnetic tape is that,
magnetic tapes support se8uential access.
The tape is a plastic coated strip with a magnetic recording medium.
The )its are recorded as magnetic spots on tape along several tracks.
Tracks are divided into sections called sectors.
9isk that are attached and cannot be removed by occasional user are called >ard disk.
+ disk drive with the removable disks are called floppy disks.
2.2. 8us
+ bus enables a computer processor to communicate with the memory or a video card.
The processor, main memory and InputNOutput devices can be interconnected through
common data communication lines termed as common bus 5refer 6igure ".1/7.
The primary function of common bus is to provide a communication path between
devices for transfer of data.
The bus includes control lines needed to support interrupts and arbitration.
)asically, all computers utili'e two types of bus<
I. Internal 8us< also known as local bus, enables communication between internal
components such as a computer video card and memory.
II. $7ternal 8us< also known as expansion bus, communicates with external components such
as a B#) or #!#I device 5refer to =lossary7.
The bus lines which are used to transfer data are grouped into three categories<
I. 9ata )us
II. +ddress )us
Page 31
ASPIRE 2014 ( Introduction to Computer systems )
III. !ontrol )us
+ata 8us
9ata bus is a computer subsystem that allows transferring of data from one component to
another on a motherboard or between two computers.
This includes transferring data to and from the memory or from the central processing
unit 5!CB7 to other components.
Address 8us
+n address bus is used to specify a physical address.
hen a processor or 9irect memory access 59,+7 enabled device needs to read or write
to a memory location, it specifies that memory location on the address bus.
Control 8us
+ control bus is a part of a computer bus, used by !CBs for communicating with other
devices within the computer.
It carries commands from the !CB and returns status signals received from the devices.
2.3. Addressing (odes
+ddressing modes are the ways how the address of an objectNoperand is being accessed.
In other words, FThe strategy to identify >101 the operand is located.F
Page 32
ASPIRE 2014 ( Introduction to Computer systems )
In computer architecture every task user attempts to perform is converted into an
instruction 5i.e ,achine code7 and that instruction consists of some operands to work on
it.
1x< !onsider this machine code +99 + , ) here +99 is opcode and +, ) are operands. This
means add + and ) and store the result in +. >ere + and ) refers to some locations where the
numbers are actually stored. This is a kind of indirect addressing mode.
There are several types of addressing modes present. 1ach addressing mode has a uni8ue
formula to locate the operand. #ome of them are mentioned below <
I. Immediate +ddressing ,ode 5refer =lossary7.
II. 9irect +ddressing ,ode 5refer =lossary7.
III. Indirect +ddressing ,ode 5refer =lossary7.
Summary
In this document, we have presented a brief overview of !omputer organi'ation and architecture.
Computer Architecture A refers to the relationship between different hardware
components of a computer system.
Computer Organization A refers to how operational attributes are linked together to
reali'e the architecture specifications.
e have covered basic units of a computer<
Central Processing 0nit 5CP06 A !ontrols the operation of the computer and performs
its data processing functions.
o Arithmetic 4ogic 0nit 5A406 A It performs computerRs data processing
functions.
o Control 0nit5C06 A It performs computerRs data processing functions.
o .egisters A 0egisters provide internal storage to the !CB.
Input 0nit2+e%ices A They provide input to the !CB.
Output 0nit2+e%ices A They provide output from !CB to the user.
(emory 0nit A ,emory Bnit is needed to store the data and program.
Page 33
ASPIRE 2014 ( Introduction to Computer systems )
8us A It consists of set of wires that allow data to be passed back and forth.
Addressing (ode A +ddressing modes are the ways how the address of an
objectNoperand is being accessed.

Page 34
ASPIRE 2014 ( Introduction to Computer systems )
3.Systems Sot!are
3.1. Assem,ler
Introduction
#ystem software refers to the files and programs that make up the computerFs operating system.
#ystem files consist of libraries of functions, system services, drivers for printers, other
hardware, system preferences and various configuration files.
#ystem #oftware consists of the following programs<
+ssemblers
!ompilers
6ile ,anagement Tools
#ystem Btilities
9ebuggers
The system software is installed on the computer when the operating system is installed. The
software can be updated by running programs such as Qindows BpdateQ for indows or
Q#oftware BpdateQ for ,ac O# M. +pplication programs are used by end user, whereas system
software is not meant to be run by the end user. 6or example, while eb browser like Internet
1xplorer are used by users every day, they donFt have to use an assembler program 5unless the
user is a computer programmer7.
#ystem software runs at the most basic level of the computer and hence it is called QlowAlevelQ
software. Bser interface is generated by the system software and allows the operating system to
interact with the hardware.
#ystem software is the interface between the computer hardware and the application software.
Page 35
ASPIRE 2014 ( Introduction to Computer systems )
Assem,ler
+n assembler is a program that converts basic computer instructions into a pattern of bits. These
bits are used by computerFs processor to perform its basic operations. #ome people call these
instructions as assembler language and others use the term assembly language. This is how it
works<
,ost computers come with a specified set of very basic instructions that corresponds to the basic
machine operations that the computer can perform. 6or example, a Q&oadQ instruction moves a
string of bits from a location in the processorFs memory to a special holding place called a
register. In computer architecture, a processor register is a small amount of storage available on
the !CB and the contents of register can be accessed more 8uickly. ,ost of the modern
computer architectures operate on the principle of shifting data from main memory into registers,
operate on the data and then move the result back into main memory. +ssuming the processor
has at least eight numbered registers, the following instruction would move the value 5string of
bits of a certain length7 at memory location "*** into the holding place called register .<
& .,"***
The programmer can write a program using a se8uence of assembler instructions.
These assembler instructions, which are also known as the source code or source
program, is then specified to the assembler program when it is started.
Page 3
ASPIRE 2014 ( Introduction to Computer systems )
1ach program statement in the source program is taken by the assembler program and a
corresponding bit stream or pattern 5a series of *Fs and 1Fs of a given length7 is generated.
The output of the assembler program is called the object code or object program relative
to the input source program. The object program consisting of a se8uence of *Fs and 1Fs is
also known as machine code.
This object program can be run 5or executed7 whenever re8uired.
3.2. Assem,ly 4anguage
The native language of the computer is assembly language. The processor of the computer
understands machine code 5consisting of 1s and *s7. In order to write the machine code program,
it has to be first written in assembly language and then an assembler is used to convert the
assembly language program into machine code.
+ssembly language program consists of mnemonic codes which are easy to remember as they
are similar to words in 1nglish language. It consists of mnemonic codes for each of the different
machine code instructions that the machine understands. + mnemonic is an abbreviation of the
actual instruction. It is a programming code that is easy to remember because the codes resemble
the original words, for example, +99 for addition and #B) for subtraction. 1xamples of
assembly language program<
,O4 1+M," S set eax register to " 5eax ; "7
#>& 1+M,/ < shift left value in the register
,O4 1!M,1$ S set ecx register to 1$
#B) 1+M,1)M S substracts ecx from eax
+n assembler converts this set of instructions into a series of 1s and *s, also known as a
executable program, that the machine can understand.
Page 3"
ASPIRE 2014 ( Introduction to Computer systems )
Ad%antages o Assem,ly language
+ssembly language can be optimi'ed extremely well as it is an extremely low level
language. Therefore assembly language is used in application which re8uire utmost
performance.
+ssembly language can be used for communication with the machine at the hardware
level and hence it is often used for writing device drivers.
+nother advantage of assembly language is the si'e of the resulting programs. #ince
conversion from a higher level by a compiler is not re8uired, the resulting programs can
be exceedingly small.
3.2.1. Assem,ly 4anguage Programming
The assembler is a program which converts the assembly language source program into a format
that can be run on the processor. The machine code instruction containing binary or hex value is
replaced by a mnemonic.
$7ample
Ad%antages o using mnemonics are*
,nemonics are easy to understand than hex or binary values.
Its less likely to make an error.
,nemonics are easy to remember.

+ssembly language statements are written one on each line. + machine code program consists of
a se8uence of assembly language statements in which each statement contains a mnemonic. +
line of an assembly language program can contain the following four fields<
i. &abel
Page 3#
ASPIRE 2014 ( Introduction to Computer systems )
ii. Opcode
iii. Operand
iv. !omments
The label field is optional. + label is an identifier or a text. &abels are used in programs to reduce
reliance upon programmers remembering where data or code is located.+ label is used to refer to
the following<
,emory location
+ data value
The address of a program or a subAroutine or a portion of code.
The maximum length of a label differs for different types of assemblers. #ome assemblers accept
up to %" characters long, others only four characters. hen a label is declared, it is suffixed by a
colon, and begins with a valid character 5+..T7. !onsider the following example.
&OOC< &9++ K"/>
>ere, the label &OOC is e8ual to the address of the instruction &9++ K"/>. The label can be
used as a reference in a program, as shown below
?,C &OOC
hen the above instruction is executed, the processor will execute the instruction associated
with the label &OOC, i.e.&9++ K"/>. hen a label is referenced later in a program, it is
referenced without the colon suffix.
+n advantage of using labels is that inserting or reAarranging code statements do not re8uire
reAworking actual machine instructions. It only re8uires a simple reAassembly. In handAcoding,
changes can take hours to perform.
The opcode field consists of a mnemonic. Opcode is the operation code, ie, a machine code
instruction. Opcode may also have additional information in the form of operands Operands are
separated from the opcode by using a space.
Operands consists of additional information or data that the opcode re8uires. Operands are used
to specify
Page 3$
ASPIRE 2014 ( Introduction to Computer systems )
!onstants or labels
Immediate data
9ata present in another accumulator or register
+n address
$7amples o operands
&9++ *1**> S two byte operand
&9++ &OOC S label operand
&9++ K1 S immediate operand 5i.e constant value as operand7
The comment field is optional, and is used by the programmer to explain how the coded program
works. The comments are prefixed by a semiAcolon. !omments are ignored by the assembler
when the instructions are generated from the source file.
.elated (aterial23ideo 4in)s*
http<NNwww.onlinevideolecture.comNelectronicsAengineeringNnptelAiitAkharagpurNmicroprocessorsA
andAmicrocontrollersNindex.phpGcourseUid;%.-OlectureUno;.
http<NNwww.onlinevideolecture.comNelectronicsAengineeringNnptelAiitAkharagpurNmicroprocessorsA
andAmicrocontrollersNindex.phpGcourseUid;%.-OlectureUno;(
3.3. 4oaders and 4in)ers
In a computer operating system , a loader is a component that locates a program 5which can be
an application or a part of the operating system itself7 in an offline storage 5for eg. hard disk 7,
loads it into main storage 5also called random access memory7, and gives that program control of
the computer 5i.e. allows it to execute its instructions7.
+ program that is loaded may itself contain components that are not initially loaded into main
storage, but are loaded if and when their logic is re8uired. In a multitasking operating system, a
program that is known as a dispatcher juggles the computer processorFs time among different
tasks and calls the loader when a program associated with a task is not already in the main
storage. 5Crogram here, means a binary file that is the result of a programming language
compilation or linkage editing or some other program preparation process7.
Page 40
ASPIRE 2014 ( Introduction to Computer systems )
+ linker, also known as link editor is a computer program that takes one or more object files
generated by a compiler and combines them into a single executable program.
!omputer programs comprise several parts or modules but all these partsNmodules need not be
contained within a single object file. In such case they refer to each other by means of symbols.
+n object file can have three kinds of symbols<
9efined symbols, which is called by other modules
Bndefined symbols, which call the other modules where the symbols are defined.
&ocal symbols which are used internally within the object file to facilitate relocation.
6or most compilers, each object file is the result of compiling one input source code file. If a
program comprises multiple object files, then the linker combines these files into a unified
executable program by resolving the symbols as it goes along.
&inkers can take objects from a collection called a runtime library. + runtime library is a
collection of object files which will contain machine code for any external function used by the
program file which in turn is used by the linker. This machine code is copied by the linker into
the final executable output. #ome linkers do not include the entire library in the output, they only
include the symbols that are referenced from other object files or libraries. The libraries exist for
diverse purposes. The system libraries are usually linked in by default.
The linker also arranges the objects in a programFs address space. This involves relocating code
that assumes a specific base address to another base address. #ince a compiler seldom knows
where an object will reside, it assumes a fixed base location 5for example, 'ero7. The relocation
of machine code may involve reAtargeting of loads, stores and absolute jumps.
The executable output by the linker may need another relocation pass when it is finally loaded
into memory 5just before the execution7. This relocation pass is usually omitted on hardware
offering virtual memory in which every program is put into its own address space and so there is
no conflict even if all programs load at the same base address. This relocation pass may also be
omitted if the executable is a position independent executable.
Page 41
ASPIRE 2014 ( Introduction to Computer systems )
3.". Compilers
+ compiler is a special program that processes statements written in a particular programming
language and turns them into machine language or code that a computerFs processor uses. +
programmer writes language statements in a language such as Cascal or ! one line at a time
using an editor. The file created contains the source statements or source code. The programmer
then runs the appropriate compiler for the language, specifying the name of the file that contains
the source statements.
hen executing 5running7, the compiler first parses 5or analy'es7 the language statements
syntactically one after the other and then builds the output code in one or more successive stages
or QpassesQ and makes sure that statements that refer to other statements are referred in the final
code correctly. The output of the compilation is called object code or sometimes an object
module. The object code is machine code that the processor can execute, one instruction at a
time.
The 8asic Structure o a Compiler
In the five stages of a compiler, the high level language is translated to a low level language
which is generally closer to that of the target computer. 1ach stage of the compiler fulfills a
single task and has one or more classic techni8ues for implementation. The following are the five
stages of a compiler<
4e7ical Analyzer* +naly'es the source code, removes Qwhite spaceQ and comments,
formats it for easy access by creating tokens, then tags language elements with type
information and begins to fill the information in the #@,)O& T+)&1. The #ymbol
Page 42
ASPIRE 2014 ( Introduction to Computer systems )
Table is a data structure that contains information about symbols and groups of symbols
in the program being translated.
Syntactic Analyzer* +naly'es the tokeni'ed code for structure, groups symbols into
syntactic groups, tags groups with type information.
Semantic Analyzer* +naly'es the parsed code for meaning, fills in assumed or any
missing information and tags the groups with the meaning.
Code 9enerator* &ineari'es the 8ualified code and produces the object code.
Optimizer* !hecks the object code to determine whether there are more efficient means
of execution.
3.#. Interpreters
Interpreter is a program that executes instructions written in a highAlevel language. There are two
methods to run programs written in a highAlevel language. The most common method is to
compile the program and the other method is to pass the program through an interpreter.
+n interpreter translates highAlevel instructions into an intermediate form and then executes it. In
contrast to the above method, a compiler translates highAlevel instructions directly into machine
language. The compiled programs generally run faster than interpreted programs. One of the
Page 43
ASPIRE 2014 ( Introduction to Computer systems )
advantage of using an interpreter is that it does not need to go through the compilation stage
during which machine instructions are generated. This process of compilation can be
timeAconsuming if the program is very long. The interpreter, on the other hand, immediately
execute highAlevel programs. >ence interpreters are sometimes used during the development of a
program in which the programmer wants to add small sections at a time and test them 8uickly. In
addition to this, interpreters are often used in education because they allow students to program
interactively.

Ad%antages o using interpreter
1xecution is done in a single stage.
!ompilation stage is not re8uired.
+lteration of code is possible during runtime.
0eally useful for debugging the codes.
>elps in interactive code development.
Interpreter %s Compiler
The primary difference between a compiler and interpreter is the way in which a program
is executed. The compiler converts the source code to machine code and then saves it as
an object code before creating an executable file for the same. The compiled program is
executed directly using the machine code or the object code. )ut an interpreter does not
convert the source code to an object code before execution.
+n interpreter executes the source code, line by line and conversion to native code is
performed line by line while execution is going on 5at runtime7. >ence the run time
re8uired for an interpreted program will be high compared to a compiled program.
1ven though the run time re8uired for interpreted program is more, the execution using
an interpreter has its own advantages. 6or example interpreted programs can modify
themselves at runtime by adding or changing functions. !ompiled program has to be
recompiled fully even for the small modifications done in the program. )ut in the case of
an interpreter there is no such problem 5only the modified section needs to be recompiled
A refer 6igure %.$7.
Page 44
ASPIRE 2014 ( Introduction to Computer systems )

Page 45
ASPIRE 2014 ( Introduction to Computer systems )
".Introduction to Operating System
".1. 8asic .esources (anaged ,y Operating Systems
Introduction
Operating system is a collection of programs. It is a software that supports computerFs basic
functions. It acts as an interface between applications and computer hardware as shown below in
the figure /.1. 1xamples of operating systems are indows, &inux, ,acO#, etc.
Operating system also does the task of managing computer hardware. Operating system manages
hardware by creating a uniform set of functions or operations that can be performed on various
classes of devices 5for instance read x bytes at address y from hard drive of any type, where x is
the number of bytes read7. These general functions rely on a layer of drivers that provide specific
means to carry out operations on specific hardware. 9rivers usually are provided by the
manufacturers, but the O# must also provide a way to load and use drivers. O# must detect the
device and select an appropriate driver if several of them are available.
In the figure /." below, O# interface is a set of commands or actions that an operating system
can perform and a way for a program or person to activate them.
Operating system is the core software component of a computer. It performs many functions and
acts as an interface between computer and the outside world. + computer consists of several
components including monitor, keyboard, mouse and other parts. Operating system provides an
interface to these parts through FdriversF. This is why, when sometimes we install a new printer or
other piece of hardware, our system will ask us to install more software called driver. + brief on
device drivers is given in section /."./, 9evice ,anagement.
Page 4
ASPIRE 2014 ( Introduction to Computer systems )
Operating system basically manages all internal components of a computer. It was developed to
better use the computer system.

".1. 8asic .esources (anaged 8y Operating System
6ollowing are the basic resources that are managed by operating system<
,emory space 5,emory management7
!CB time 5Crocess management7
9isk space 56ile system management7
InputAoutput device 59evice management7

".1.a. 8asics O (emory (anagement
+ny program needs to be loaded in memory 50+,7 before it can actually execute. 0andom
+ccess ,emory 50+,7 is a type of computer memory that can be accessed randomly, i.e. any
byte of memory can be accessed without touching or traversing through the preceding bytes.
Page 4"
ASPIRE 2014 ( Introduction to Computer systems )
These days, 0+, is available with various storage capabilities 5"-$,), -1",), 1=), "=),
/=), $=) and .=) si'es7.
,emory management deals with managing computerFs primary memory. It decides the amount
of memory to be allocated to a particular program. It also keeps track of free or unallocated as
well as allocated memory. ,emory management applies only to 0+,.
The sole motto of memory management done by operating system is to utili'e the available
memory effectively. In this process we should try to minimi'e fragmentation.
i. 1ragmentation
6ragmentation occurs when there are many free small blocks in memory that are too small to
satisfy any re8uest. In computer storage, fragmentation is a phenomenon in which storage space
is used inefficiently, resulting in reduced capacity as well as performance. 6ragmentation also
leads to wastage of storage space. The term also refers to the wasted space itself.
There are three different types of fragmentation<
1xternal fragmentation
Internal fragmentation
9ata fragmentation
It can be present in isolation or conjunction. hen a computer program is finished with a
partition, it can put the partition back to the computer. The si'e and amount of time for which a
partition is held by a program varies. 9uring its life span, a computer program can re8uest and
free many partitions of memory.
hen a program starts, there are long and contiguous free memory areas. Over the time and with
use, these long contiguous regions become fragmented into smaller contiguous areas. 1ventually,
it may become impossible for the program to re8uest large partitions of memory.
Internal 1ragmentation
Internal fragmentation is the space wasted inside the allocated memory block because of the
restriction on allowed si'es of allocated blocks. +llocated memory can be slightly larger than
re8uested memory. The si'e difference is the memory internal to partition but would not be used.
Internal fragmentation is difficult to reclaim. 9esign change is the best way to remove internal
fragmentation. 6or example, in dynamic memory allocation, memory pools cut internal
fragmentation by spreading the space overhead over a larger number of objects.
Page 4#
ASPIRE 2014 ( Introduction to Computer systems )
$7ternal 1ragmentation
1xternal fragmentation happens when a dynamic memory allocation algorithm allocates some
memory and a small piece is left over which cannot be used effectively. The amount of usable
memory reduces drastically, if too much external fragmentation occurs. The total memory space
available is enough to satisfy a re8uest but is not contiguous and so, is wasted. >ere the jargon
FexternalF is used to depict that the storage that is further unusable is outside the allocated regions.
6or example, consider a situation wherein a program allocates three continuous blocks of
memory and then frees the middle one. The memory allocator can use this free block of memory
for future allocations. >owever, this free block cannot be used for allocation if the memory to be
allocated is larger in si'e than the free block. 1xternal fragmentation also occurs in file systems
as many files of different si'es are created, si'e changed and deleted. The effect is even worse if
a file which is divided into many small pieces is deleted, because this leaves almost e8ual small
regions of free space.
+ata 1ragmentation
9ata fragmentation occurs when a collection of data in memory is broken up into many pieces
that are not close enough. It is typically the result of attempting to insert a large object into
storage that has already suffered external fragmentation.
ii. (emory (anagement Techni:ues
#ingle !ontiguous +llocation
Cartitioned ,emory ,anagement #cheme 5refer =lossary for scheme definition7
Caged ,emory ,anagement
#egmented ,emory ,anagement
Single Contiguous Allocation
#ingle !ontiguous +llocation is the simplest form of memory management. In this type of
memory management, all memory 5with an exception of small portion reserved for running the
operating system7 is available for a single program to run. #o only one program is loaded in all
available memory and so generally the rest of memory is wasted. #implest example of this type
of memory management is ,#A9O#. +dvantage of single contiguous memory allocation is, it
supports fast se8uential and direct access. Crovides good performance and the number of disk
seek re8uired is minimal. 9isadvantage of single contiguous memory allocation is fragmentation.
Page 4$
ASPIRE 2014 ( Introduction to Computer systems )
Partitioned (emory (anagement Scheme
This type of memory management divides primary memory into multiple memory partitions,
usually contiguous areas of memory. ,emory management here consists of allocating a partition
to a job or program when it starts and unallocating it, when job or program ends. + typical
scenario of partitioned memory management is depicted in the figure /./ below. This type of
memory management also needs some hardware support.
The figure /./ below shows multiple memory partitions. 1ach partition runs a process 50efer
=lossary7. Crocess 1, Crocess ", etc. are the processes allocated to a particular partition in
memory. Once the process is completed, partition gets empty. + is the base register address. )ase
register contains the lowest memory address a process may refer to. e can get length of a
partition from )ounds register. )ounds register stores upper and lower bounds on addresses in a
time sharing environment. Time sharing environment refers to concurrent use of computer by
more than one user L users share the computerRs time. Time sharing is the term used
synonymously with multiAuser.
Page 50
ASPIRE 2014 ( Introduction to Computer systems )
Cartitioned memory management is further divided in to " types of partitioning schemes<
6ixed memory partitioning 5#tatic partitioning7
,ain memory is divided into a number of static partitions when a computer system starts. +
process may be loaded into a partition of e8ual or greater si'e. +dvantage of such type of
partitioning is that it is simple to implement and has a little operating system overhead.
9isadvantages are inefficient use of memory due to internal fragmentation. +lso maximum
number of active processes is fixed.
4ariable memory partitioning 59ynamic partitioning7
#uch partitions are created dynamically so that each process is loaded into a partition of exactly
the same si'e as that process. +dvantage of such type of partitioning is that there is no internal
fragmentation. +lso main memory is used more efficiently. 9isadvantage is inefficient use of
processor due to the need for compaction to counter external fragmentation.
Paged (emory (anagement
This type of memory management divides computerFs primary memory into fixedAsi'e units
known as page frames. The programFs address space is divided into pages of the same si'e.
Bsually with this type of memory management, each job runs in its own address space.
+dvantage of paged memory management is that there is no external fragmentation. )ut on the
contrary there is a small amount of internal fragmentation.
)elow is the Illustration representing paged memory management. It depicts how logical pages
address in memory can be mapped to physical address. The operating system uses base address
as a measure to find addresses. )ase address means starting address of a particular memory
block. +ccording to the program written, !CB generates address. In this case, address generated
by !CB is called logical address. This address is added to base address so that it forms physical
address. To translate a logical address into corresponding physical address, we need to divide the
logical address into page number and offset. Offset refers to a value being added to base address
to produce a second address.
6or example, if ) represents address "**, then the expressions, ):1* would signify the address
"1*. 1* in expression is the offset. To specify addresses using an offset is called relative
addressing because the resulting address is relative to some other point. Offset is also known as
displacement. In figure below, p represents page number and d is the offset. e use page number
as index to page table and the entry gives corresponding frame number. FfF in page table
represents frame number. 6rame number is concatenated with the offset to get a corresponding
physical address.
Page 51
ASPIRE 2014 ( Introduction to Computer systems )
Segmented (emory (anagement
#egmented memory means, the division of computerFs primary memory into segments or
sections as shown in figure /.$. In this type of memory management, there is reference to a
memory location that includes a value . This value identifies a segment and an offset within that
segment. e may create different segments for different program modules, or for different types
of memory usage such as code and data segments. !ertain memory segments may even be shared
between programs. #egmented memory does not provide userFs program with a linear and
contiguous 5or continuous7 address space. &inear address space is a memory addressing scheme
used in processors where the whole memory can be accessed using a single address that fits in a
single address or instruction.
#egments are areas of memory that usually correspond to a logical grouping of information such
as code procedure or a data array 50efer =lossary7. #egmentation allows better access protection
than other memory management schemes because memory references are relative to a specific
segment and hardware will not permit the application to reference memory not defined for that
segment. It is possible to implement segmentation with or without paging.
#egmentation ith Caging has the following advantages
1. Caging eliminates external fragmentation. +s a result it provides efficient use of main
memory.
". #egmentation which is visible to the programmer, includes strength of paging. It has the
ability to handle growing data structures, support for sharing, and modularity, and protection.
Page 52
ASPIRE 2014 ( Introduction to Computer systems )
To combine fragmentation and paging, a userFs address space is broken into a number of
segments. 1ach of these segments in turn is broken into fixedAsi'e pages. If si'e of a segment is
less than a page in length, then the segment occupies just one page.
".1.,. Process (anagement
!CB has multiple processes running at a time. !CB always has certain programs scheduled in a
8ueue waiting for their turn to execute. These all programs must be scheduled by operating
system.
Operating system must allocate resources to processes, enable processes to exchange and share
information, enable synchroni'ation among processes, and protect resources of each process
from other processes. #ynchroni'ation means the coordination of events or processes so that a
system operates in unison.
Crocess creation involves four principle events<
#ystem initiali'ation or start up. hen an O# is booted, typically several processes are
created.
+ process is run to execute a process creation system call. ,ost of the times, a running
process will issue system calls to create one or more new processes to help it do its job.
!reation of new processes is useful when the work to be done can be easily formulated as
several related, but otherwise independent interacting processes.
0e8uest to create a new process is issued by user. In interactive systems, users can start a
program by clicking or double clicking the icons or thumbnails or even by typing a
command on command prompt.
Page 53
ASPIRE 2014 ( Introduction to Computer systems )
)atch job initiation. Bsers can submit batch jobs to the system 5most of the times,
remotely7. hen O# knows that it has the resources to run another job, a new process is
created and the next job is run from the input 8ueue.
#everal processes are created when an operating system boots. #ome of them are foreground
processes while others are the background processes. 6oreground processes interact with a user
and perform work for users. In multiprocessing environment, the process that accepts input from
the keyboard or other input device at a particular point in time is at times called the foreground
process. This means that any process that actively interacts with user is a foreground process.
)ackground processes are the processes which are not associated with a particular user, but
instead have some specific function to be performed. 6or example email notification is an
example of background processes. #ystem clock displayed at the bottom right corner of status
bar in windows is another example of background process.
#ome of the common reasons for process termination are<
Bser logs off
+ service re8uest to terminate is executed by process
1rror and fault conditions
2ormal completion
Time limit exceeded
,emory unavailable
INO failure
6atal error, etc.
6igure /.3 below contains great deal of information.
&et us consider a running process FCF that issues an inputAoutput re8uest
o The process blocks.
o Thereafter, at certain point of time later, a disk interrupt occurs and the driver
detects that CFs re8uest is satisfied.
o C is unblocked, i.e. the state of process C is changed from blocked to ready.
Page 54
ASPIRE 2014 ( Introduction to Computer systems )
o &ater, at some point of time, the operating system looks for a ready job to run and
picks the processNjob C from the 8ueue.
+ preemptive scheduler in figure /.3 below has the dotted line FCreemptFS where as a nonA
preemptive scheduler doesnFt.
The number of processes change for two arcs namely, create and terminate.
#uspend and resume are a part of medium term scheduling
o It is done on a bit longer time scale.
o It involves memory management as well.
o It is also known as two level scheduling.
There are " types of scheduling<
1. Preempti%e scheduling*
In a computer, tasks are assigned priorities. +t times it is necessary to run a certain task that has
high priority before another task 5even if the task is in running state7. Therefore, the running task
is interrupted for some time, put to either blocked or suspended state and resumed later, when the
priority task has finished its execution. This process is called preemptive scheduling.
2. Non preempti%e scheduling*
In nonApreemptive scheduling, a running task executes till it completes fully. It cannot be
interrupted. That means when a process enters the running state, it cannot be deleted from the
scheduler until it finishes its service time.
Page 55
ASPIRE 2014 ( Introduction to Computer systems )
The figure /.3 above shows various states of a process. Initially the process is created. Once
created, it goes to the ready state. 0eady state means the process is ready to execute. It has been
loaded into the main memory and is waiting for execution on a !CB. There can be many ready
processes waiting for execution at a given point of time. + 8ueue of processes which are ready to
execute gets created in memory. One of the processes from that 8ueue is picked up for execution
and its state gets changed to running. + running process can be blocked. )locked state means a
process is blocked on some event.
+ process may be blocked due to various reasons such as when a particular process has
exhausted, the !CB time allocated to it, it is waiting for an event to occur. )locked process can
either move to ready state or can move to suspended state. In systems that support virtual
memory, a process may be swapped out, that is, it would be removed from main memory and
would be placed in virtual memory by the midAterm scheduler. This is called suspended state of a
process. 6rom here the process may be swapped back in to the ready state. #uch state is called
ready suspended state. Crocess that are blocked may also be swapped out. #uch a state of process
where a process is both swapped out and blocked is called blocked suspended state. #uspended
processes can be sent back to ready state only once they are released. This cycle continues till a
process finishes its execution i.e. terminated. + process may be terminated from the running state
by completing its execution or can be killed explicitly. In either of these cases, we say that the
process is terminated.
".1.c. 1ile System (anagement
Page 5
ASPIRE 2014 ( Introduction to Computer systems )
!omputer contains numerous files. They need to be organi'ed in a proper way so that we can
keep track of those files. 6ile retrieval should be easier as well as faster. 6ile system management
helps us achieve this.
6ile system manager is used by the operating system to do file system management. 6ile system
manager organi'es and keeps track of all the files and directories on secondary storage media.
6igure /.. above shows a typical hierarchical file system structure. Operating system keeps track
of following tasks for providing efficient file management<
It is able to identify numerous files by giving uni8ue names to them.
It maintains a list to keep track of exact file location.
Crovide fast and simple algorithms to write and read files in coAoperation with device
manager.
=rant and deny access rights on files to programs and users.
+llocate and deAallocate files so that files can be processed in coAoperation with process
manager.
Crovide programs and users with simple commands for handling files.
On storage medium, file gets saved in blocks or sectors. To access these files, file manager and
device manager works together. The device manager knows where to find each sector on disk,
but only file manager has a list telling in what sectors either file is stored. This list is called 6ile
Page 5"
ASPIRE 2014 ( Introduction to Computer systems )
+llocation Table 56+T7. 6+T has been in use under 9O# for a long time. #ome of its alterations
are still used by in(- and in(..
)elow are the different ways of allocating files<
Contiguous ile allocation*
In this type of file allocation, at the time of file creation, a single set of blocks is allocated to a
file. 1ach file is stored contiguously in sectors, one sector after another. The advantage is that the
6ile +llocation Table has a single entry for each file, indicating the start sector, the length, and
the name. ,oreover, it is also easy to get a single block because its address can be easily
calculated. The disadvantage may be that it can be difficult to get a sufficiently large block of
contiguous blocks. !ontiguous file allocation is now a days only used for tapes and recordable
!9s.
Non-contiguous ile allocation*
ith this type of allocation, all blocks of a file can be distributed all over the storage medium.
The 6ile +llocation Table 56+T7 lists not only all files, but also has an entry for each sector the
file occupies. +s all information is stored in the 6+T, and there is no assumption on the
distribution of the file, this method of allocation, at times, is also known as 6+T.
The advantage is that it is very easy to get a single block, because each block has its entry in the
6+T. +lso, it is a very simple allocation method where no overhead is produced and no search
method for free blocks is needed. The disadvantage is that 6+T can grow to an enormous si'e,
which can slow down the system. !ompaction would be needed time to time. This type of file
allocation is used for disk allocation in ,#A9O#.
Chained allocation*
ith chained file allocation only the first block of file gets an entry in the 6+T. + block has
sectors in it. Of these, the first sector has got data as well as a pointer at its end that points to the
next sector to be accessed after it 5or indicates that it was the last7. That means each sector 5if it is
not a last sector7 has got a pointer at its end pointing to the next sector that should be accessed.
The advantage again is that the 6+T has a single entry for each file, indicating position of the
first sector and file name. There is no need to store the files contiguously.
The disadvantage of chained allocation is that it takes much time to retrieve a single block
because that information is neither stored anywhere nor can it be calculated. If we want to access
a particular sector, all preceding sectors have to be read in order one after another. This way, the
information about location of the next block is identified. Bnix iAnode is an example of this type
Page 5#
ASPIRE 2014 ( Introduction to Computer systems )
of allocation. iAnodes are data structures 50efer =lossary7 of a file system used to store all the
important properties of each file< ownerFs group id and user id, access permission on that file,
si'e of the file and more. Bnix iAnode is an operating system which has iAnodes as its data
structure.
Inde7ed allocation*
ith indexed file allocation also only the first block of file gets an entry in the 6+T. In the first
sector, no data is stored. It has only pointers to where the file is on storage medium. That is why
the first block is known as the index block. It just contains the pointers or index to file location
on a storage medium. >ere also the 6+T will only contain a single entry for each file, indicating
file name and position of the first sector. It is easy to retrieve a single block because the
information about its location is stored in the first block.
The disadvantage of indexed allocation is that for each file an additional sector is needed to keep
track of the location of a file. + very small file also always occupies at least two blocks, where as
the data could have easily fit in one block. This results in secondary storage space wastage.
Indexed allocation is implemented in all B2IM systems. It is reliable as well as fast. +lso,
nowAaAdays, the wastage of storage space does not matter much.
The main concern of file system management is to provide a strategy that lets the 6+T not to
grow too large and that makes it possible to retrieve a special sector of file such that the storage
space is not wasted much.
".1.d. +e%ice (anagement
Operating system also deals with device management, specially input and output devices. In a
multiAuser system, there are shared devices like printer, scanner, etc. ,anagement of these
devices by sending them appropriate commands is the major task of operating system.+ software
routine which knows how to deal with each device is called a VdriverW and operating system
re8uires drivers for the peripherals attached to computer. hen a new peripheral is added, device
driver is installed in to the operating system.Operating system also deals with the access time of
these devices. It helps make the device access fast and in the most efficient way possible.,ajor
concern of operating system in device management is to prevent dead lock situation.
+ead 4oc)
Page 5$
ASPIRE 2014 ( Introduction to Computer systems )
+bove diagram depicts a typical dead lock situation, that serially used devices can have. 9ead
lock is a situation where each set of processes is waiting for an event that only other process in
the set can cause.
6or example, in the above diagram, Crocess Task 1 re8uests a mutex or lock on object which is
already held by Crocess Task ". In turn, Crocess Task " needs a resource to complete its process
which is already held by Crocess Task 1. #o neither of the processes are releasing their resources
or mutex and waiting for another process to release a mutex so that they can get it to complete its
pending task. This situation would cause an indefinite wait for processes leading to a situation
known as dead lock.
,utex is the short form for ,utual 1xclusion Object. + mutex is a logical unit. It is a program
object that allows multiple program threads to share the same resource, but not simultaneously.
6ile access is an example of mutex. + mutex with uni8ue name is created when the program
starts. ,utex must be locked by a thread that needs the resource. hen data is no longer needed,
the mutex is set to unlock.
O# helps in dealing with dead lock situation up to a certain extent. )elow are some of the
strategies for dealing with deadlock<
Ostrich algorithm; i.e. ignoring the problem altogether. Ostrich algorithm is a strategy of
ignoring potential problems on the basis that they may be exceedingly rare. Ostrich
algorithm assumes that ignoring the problem would be more costAeffective as compared
to allowing the problem to occur and then attempt for its prevention. It may occur very
infre8uently. This can be followed if cost of detectionNprevention is not worth the time
and cost spent.
9etection and 0ecovery.
+voiding deadlock by careful resource allocation.
Page 0
ASPIRE 2014 ( Introduction to Computer systems )
Crevention of deadlock by structurally negating one of the four necessary conditions.
".2. .esource Sharing (anagement
The primary task of operating system as discussed above is to keep track of resources like
memory, !CB utili'ation, storage device, and input output devices, to grant resource re8uests, to
mediate conflicting re8uests from different programs, etc.

".2.1. (ultiple7ing
,ultiplexing is a method by which multiple analog data signalsNdigital data streams are
combined into one signal over a shared medium. ,ultiplexing is used to share an expensive
resource and thus help reduce the cost.
!ommunication channel is used for transmission of a multiplexed signal. This channel may be a
physical transmission medium. ,ultiplexing basically works on the principle of division of
signals. It divides the capacity of the high level communication channel into several low level
logical channels. 1ach of these low level logical channel maps to each message signal or data
stream to be transferred. + reverse of this process is known as demultiplexing. 9emultiplexing
can extract the original channels or signals on the receiver side.
+ device that performs the task of multiplexing is called a multiplexer 5,BM7, and a device that
performs the task of demultiplexing is known as a demultiple7er 5+$(0<6.
0esource management basically includes multiplexing the resources in two ways<
Time (ultiple7ing
hen a particular resource is time multiplexed, different programs or users get their turn to use
that resource one after another. Turns for resource usage are decided as per the predefined
operating system algorithm. Crinter is one of the best examples of inAtime multiplexing. In a
network printer, different users get their turn to use the printer one after another based on time.
Space (ultiple7ing
hen a particular resource is space multiplexed, the resource is shared e8ually in the available
space. Time period for which a particular resource is used does not matter anymore. That is each
Page 1
ASPIRE 2014 ( Introduction to Computer systems )
one gets a part of the resource. >ard disk, main memory, etc are some of the examples of space
multiplexing. These resources are most of the times divided e8ually between all the users.
To summari'e, operating system is one of major programs, without which it would be almost
impossible for us to access the computer as we are accessing it these days. ithout operating
system, computer would be nothing but a monitor executing binary and machine language data.

Page 2
ASPIRE 2014 ( Introduction to Computer systems )
#.Computing $n%ironments
#.1. (ainrame Computing $n%ironment
!omputing 1nvironment is a collection of computers, software, and networks that support the
processing and exchange of electronic information. It can collaborate across various software
installed on different machines at different physical and geographical locations as well, such an
environment is called 9istributed !omputing 1nvironment. 6igure -. 1 shows how different
computers are connected with each other globally, also they can be connected with different
devices like cell phones.
!ritical applications 5refer glossary7 and bulk data processing re8uire computer environments
which can guarantee high reliability and stability. ,ost such large scale,high end commercial
system architectures 5refer glossary7 are referred as ,ainframes.
(ainrame Computing $n%ironment
It usually refers to one or more very big computer5s7 capable of supporting a large number of
simultaneous users and doing bulk calculations and data processing. It is usually used for
extensive operations like 1nterprise 0esource Clanning 5refer glossary7 or transaction processing.
The ,ainframe environment 50efer 6igure -. "7 is expensive and ensures very high level of
security and reliability supporting massive throughput 5refer glossary7 . 6or example consider
banking applications like calculating balance of multiple customers who are doing their
transaction simultaneously from different locations. +lso generating account statements for all
customers at the end of every month. These are all bulk operations re8uiring speed and accuracy.
,ainframes have come a long way from the 12I+! 51lectronic 2umerical Integrator +nd
!alculator7 developed in 1(/" to todayFs I), ' series of mainframes which are used in
organi'ations like 2ational +eronautics and #pace +dministration 52+#+7.
Page 3
ASPIRE 2014 ( Introduction to Computer systems )
#oftware for mainframes are written in following languages<
!Ommon )usinessAOriented &anguage 5!O)O&7
?ob !ontrol &anguage 5?!&7
#.1.1. Storing +ata on a (ainrame
On computers data is stored in the form of binary bits that is, *s and 1s . !haracters like +..T are
formed with . bits called as )ytes. hen we press a key on the keyboard eight bits get emitted
from the cable. +ll the keys are represented with an uni8ue combination of binary numbers that
is *s and 1s. +s we use . bits to store a single character, "X. ; "-$ different type of patterns can
be stored. On ,ainframes, we use a uni8ue .Abit pattern to store each character. This
representation of characters and data in mainframe is referred as 1xtended )inary !oded
9ecimal Interchange !ode 5that is 1)!9I!7. >ere, every character uses storage of one byte in
memory.
6or example, in 1)!9I!,
The number 1 is represented as 1111 ***1.
The number " is represented as 1111 **1*.
#.1.2. (ainrame +atasets
On a mainframe the information is stored in datasets 5files Arefer glossary 7. 1ach dataset should
have an uni8ue name of maximum // characters long in this format<
MMMMMMMM.MMMMMMMM.MMMMMMMM 56or example, +=@*"%".!B#TO,10.9+T+7
Page 4
ASPIRE 2014 ( Introduction to Computer systems )
6ollowing points should be considered while creating mainframe datasets.
+ dataset name consists of segments or 8ualifiers.
1ach 8ualifier has maximum eight characters and are separated by a period5.7.
The 8ualifier or segment should start with a capital letter 5alphabet7.
The operating system looks into the segments to keep a track of groups of datasets. The
first segment of the dataset name is its >ighAlevel Yualifier 5>&Y7.
9atasets should have meaningful names. 6or example, !ustomers data should be stored
in a file named !B#TO,10.9+T+. >ere customer and data are the two segments or
8ualifiers of your dataset name.
To access or logAin to ,ainframes, we need a T#O 5refer glossary7 B#10AI9, which is similar to
userAid that we use to login to a windows machine.
#uppose your T#OAid is +=@*"%". #o give the >ighAlevel 8ualifier +=@*"%" to all your
datasets. This way you can identify the datasets belonging to you.
6or example, name your !ustomer dataset as +=@*"%".!B#TO,10.9+T+.
,ainframes have #ecurity software products like 0+!65 0esource +ccess !ontrol 6acility7
which control access to datasets. 6or example, you may want to grant readAonly access to the file
+=@*"%".!B#TO,10.9+T+ to other users. This will prevent other users from making any
changes to your dataset.
#.1.3. (ainrame Programing
>igh level language like !O)O& is used for ,ainframe programing. There are online
mainframe compilers available as well as software like >ercules can be installed on any
Operating #ystem to simulate a mainframe environment.
I),Fs ,4# Operating system5,ultiple 4irtual #torage 5refer glossary7 7 up to release
%..j5released in the year 1(.17 is also available. I), provides a preAconfigured starter system in
which you can do some coding to describe the configuration to be installed. This is called #ystem
=eneration 5#ysgen7 that is, the process of setting up or installing an operating system on the
mainframe.
e can code !O)O&ACrograms and run them using a ?ob 5?!& L ?ob !ontrol &anguage7 on a
,ainframeA!omputer using its T#O BserAid for a given time. 0efer 6igure -. % for the basic
Page 5
ASPIRE 2014 ( Introduction to Computer systems )
skeleton of a !O)O& Crogram. + !O)O& program is written in structures called divisions.
9ivisions in turn can have many sections. #ections can have many paragraphs.
The ,ainframe terminal has .* columns on a line for coding. The area from columns . to 11 is
called +rea +. The area between columns 1" to 3" is called +rea ). 0efer 6igure -. / for a
sample program to display a message >ello orld.
+ !O)O& program has following divisions <
I+$NTI1ICATION +I3ISION L This division records useful information like author
name or date when the program was created. It should at least have the program name or
I9.
$N3I.ON($NT +I3ISION A This division tells the computer about the other
resources that the program will interact with 5that is, its environment7 such as printers,
disk drives, other files etc. example, #OB0!1A!O,CBT10. I), C!. This information
tells the configuration of the computer on which the program will execute.
+ATA +I3ISION L This division defines the names that the program will use to refer to
the data that it manipulates. 6or example, B#10A2+,1 CI! +51-7. The CI! 5or the
Cicture clause 7 states that the data stored in this B#10A2+,1 will be of type alphabets
only and a maximum of 1- characters 5like Tom or ?ohn7 can be stored in B#10A2+,1.
P.OC$+0.$ +I3ISION L It is the startingApoint of the !O)O&ACrogram. The
programing instructions must be written inside this C0O!19B01 9I4I#IO2. In
C0O!19B01 9I4I#IO2 we can write instructions oneAafterAthe other. The ,ainframe
executes these instructions oneAbyAone and stepAbyAstep se8uentially. The lastAinstruction
must be #TOC 0B2 to stop running the !O)O& Crogram.
Page
ASPIRE 2014 ( Introduction to Computer systems )
#.2. Net!or)s
+ computer network joins two or more different categories of computing devices enabling them
to communicate to each other by sending and receiving instructions. + computer network can be
wired or wireless. +lso, smaller networks in turn may be connected to larger networks through
bridges, gateways or routers 5refer glossary7 . !ommunication in a network follows certain rules
that is, it is protocol 5refer glossary7 based.
6ollowing are the major categories of a !omputer 2etwork<
&+2 5&ocal +rea 2etwork7 < + &+2 connects computer devices over a short distance. +
networked office, school or home usually contains a single &+2 and occasionally it may
connect a group of nearby buildings. &+2 is mostly connected using a technology called
1thernet 5refer glossary7.
+2 5ide +rea 2etwork7 < + +2 is a geographicallyAdispersed collection of multiple
&+2s. 4arious &+2s are connected to a +2 using a router. The Internet is the largest
+2 and it spans the 1arth. +2 networks exist under collective or distributed
ownership and management and do not belong to any single organi'ation.
&+2 5ire &ess +rea 2etwork7 < + ireless &ocal +rea 2etwork 5&+27 links two
or more devices using some wireless method that is without any physical cables. This
enables the to move around within a local coverage area while being connected to the
network. &+2s are used in places like inAhome networks, airplanes, trains, restaurants,
hotels.
Page "
ASPIRE 2014 ( Introduction to Computer systems )
!omputer networks 5refer glossary7 can be classified according to the hardware and associated
software technology that is used to interconnect the individual devices in the network like
electrical cable, optical fiber, and radio waves 5wireless &+27.
+ wellAknown family of communication media is collectively known as 1thernet. 1thernet uses
various standards and media to enable communication between computer devices.
ireless &+2 technology connects computer devices without the use of wires or cables.
These devices use transmission mediums like radio waves or infrared signals as shown in 6igure
-. - where a desktop computer, a laptop and a cell phone are all connected using wireless
technology. 6igure -.- < !omputer 2etwork
#.2.1. &ired Technologies
ired networks are of following types <
a. Twisted Cair
b. !oaxial !able
c. Optic 6iber
a. T!isted Pair
It is the most widely used medium for telecommunication. It is made of copper wires that are
twisted into pairs.
Page #
ASPIRE 2014 ( Introduction to Computer systems )
Ordinary land line telephones are a good example where the wires consist of two
insulated copper wires that are twisted into pairs.
!omputer network cabling 5wired 1thernet7 consists of / pairs of copper cabling that can
be utili'ed for both voice and data transmission. This twisting of two wires together helps
to reduce crosstalk 5refer glossary7 and electromagnetic induction.
Its transmission speed varies from " million to 1* billion bits per second. The Twisted
pair cables are of two types< Bnshielded Twisted Cair 5BTC7 and #hielded TwistedACair
5#TC7.
,. Coa7ial ca,le
It is generally used for cable television, office buildings, and other workAsites for local area
networks.
The cables consist of copper or aluminum wire surrounded by an insulating layer, which
in turn is surrounded by a conductive layer. This insulation helps in minimi'ing
interference and distortion.
Its transmission speed is between "** million bits per second to more than -** million
bits per second
c. Optical i,er
It is a glass fiber. It makes use of pulses of light to transmit data.
Its advantages over metal wires include less transmission loss, immunity from
electromagnetic radiation, and very fast transmission speed, up to trillions of bits per
second.
Page $
ASPIRE 2014 ( Introduction to Computer systems )
9ifferent colors of lights can be used to increase the number of messages being sent over
a fiber optic cable.

#.2.2. &ireless technologies
ireless network refers to computer network that is not connected by cables of any kind.
ireless networks can be of following types<
ireless C+2 A ireless personal area networks 5C+2s7 interconnect devices within a
relatively small area, generally within a personFs reach. )luetooth radio or invisible
infrared light provide a C+2 for connecting a headset to a laptop.
ireless &+2 A + wireless local area network 5&+27 links two or more devices over a
short distance using a wireless method providing a connection through an access point for
Internet access. The use of spreadAspectrum or O69, 5refer glossary7 technologies may
Page "0
ASPIRE 2014 ( Introduction to Computer systems )
allow users to move around within a local coverage area, still remaining connected to the
network.
ireless mesh network A It is made up of radio nodes organi'ed in a mesh topology
50efer section ".".% 2etwork Topology7. 1ach node forwards messages on behalf of the
other nodes. ,esh networks can automatically reAroute around a node that has lost
power.
ireless ,+2 A ireless metropolitan area networks are a type of wireless network that
connect many wireless &+2s. i,+M is an example of ireless ,+2.
ireless +2 A ireless wide area networks are wireless networks that typically cover
large areas, like networking neighboring towns and cities.
!ellular network A + cellular network or mobile network is a radio network distributed
over land areas known as cells. 1ach cell has at least one fixedAlocation transceiver5 It is
usually installed on a communication tower and basically has the role of sending and
receiving signals7, known as a cell site or base station. These cells are joined together to
provide radio coverage over a wide geographic area and enable a large number of
portable transceivers 5e.g., mobile phones, tablets7 to communicate with each other.
6ollowing Technologies are used to support the ireless network connections<
Terrestrial microwave communication L It uses 1arthAbased transmitters and receivers
resembling satellite dishes 5refer 6igure -.117. Terrestrial microwaves are in the
lowAgigahert' range limiting all communications to lineAofAsight. The relay stations are
placed approximately /. km 5%* mi7 apart.
!ommunications satellites A These communicate via microwave radio waves. These
waves are not deflected by the 1arthFs atmosphere. These satellites stationed in space
typically in geosynchronous orbit %-,/** km 5"",*** mi7 above the e8uator 50efer 6igure
-.1*7 can receive and relay data, voice and T4 signals.
#pread spectrum 5refer glossary7 technologies use a highAfre8uency radio technology to
enable communication between multiple devices in a limited area.
Infrared communication can transmit signals for small distances typically less than 1*
meters. It uses lineAofAsight propagation which limits the physical positioning of
communicating devices.
Page "1
ASPIRE 2014 ( Introduction to Computer systems )

#.2.3. Net!or) topology
+ network topology is the layout describing how the nodes5all computer terminals7 of a
computer network are interconnected. !ommon layouts are explained as follows<
8us Net!or)
Page "2
ASPIRE 2014 ( Introduction to Computer systems )
+ll nodes are connected to a common cable which is called a )us.
Ad%antages
Implementation is easier.
)est Topology for small networks
+isad%antages
9ue to the cable length, the number of nodes that can be connected is also less.
It can perform well for a limited number of nodes only.
If the main cable or the )us fails, then all the nodes connected to it also fail to serve.
Star Net!or)
+ll nodes are connected to a central node or hub. This layout found typically in a ireless &+2,
where each client connects to the central ireless access point.
Ad%antages
+s it is centrali'ed in nature, it is simple in terms of operation.
It also keeps each device isolated in the network. It means if one node stops working, it
does not affect the function of other nodes.
+isad%antages
The whole network operation is dependent on the central hub.
The entire network fails if the central hub fails.
.ing Net!or)
Ad%antage
There is no re8uirement of a central server as the communication between two nodes
channeli'es through all the intermediate nodes.
+isad%antages
Page "3
ASPIRE 2014 ( Introduction to Computer systems )
1ven if a single node of the network fails, it can cause the entire network to fail.
1ntire network is affected whenever any change or movement is made for a network
node.
(esh Net!or)
1ach node connects with a random number of neighbors such that there is at least one traversal
from each node to any other. >ere each node has the responsibility of propagating the data.
Ad%antage
This arrangement of the network nodes makes it is possible to transmit data from one
node to many other nodes at the same time.
+isad%antage
In an arrangement where each node is connected to every other node of the network,
many of the connections may serve no major purpose as they behave as redundant
connections.
1ully Connected Net!or)
1ach node connects with all the other nodes in the network.
Ad%antages
+ fault in one terminal on the network will not effect other nodes, as the data has multiple
redundancy paths that can be used.
9ata transfer rates can be kept at an acceptable level as whenever network usage is high
the data can be transmitted via different route hence reducing network clogging.
+isad%antage
It re8uires a large amount of wiring.
Page "4
ASPIRE 2014 ( Introduction to Computer systems )

#.2.". Net!or) Programming
!omputer network programming involves writing computer programs that communicate with
each other across a computer network. e need two separate programs for this. The !lient
program initiates the communication and The server program which waits or listens for the
communication from client. )oth endpoints of the communication flow are called network
sockets. 2etwork programming is also known as socket programming.
2etwork Crograming can be implemented using any language which needs to provide following
network layer functions. 0efer 6igure -.1%.
socket57 creates a new socket, identified by an integer number, and allocates system
resources to it.
bind57 is used on the server side to associate a socket with a socket address structure, that
is a specified local port number and IC address.
listen57 is used on the server side and it causes a bound T!C socket to enter listening
state.
connect57 is used on the client side to assign a free local port number to a socket. 6or T!C
socket, it causes an attempt to establish a new T!C connection.
Page "5
ASPIRE 2014 ( Introduction to Computer systems )
accept57 is used on the server side to accept a received incoming attempt to create a new
T!C connection from the remote client. It creates a new socket associated with the socket
address pair of this connection.
send57Arecv57, write57Aread57 or sendto57Arecvfrom57 can be used to send and receive data
toNfrom a remote socket.
o The methods send57 and recv57 are used for sockets using T!C that is
Transmission !ontrol Crotocol like >TTC. This mechanism has error checking
and guarantees no data loss. It is used for all such applications where you can not
allow data loss like browsing websites.
o The methods sendto57 and recvfrom57 are used for sockets using B9C 5Bser
9atagram Crotocol like 4oice over Internet Crotocol or 4OIC used to make phone
calls using internet. This has lower level of security and does not guarantee that
the data will reach its destination.7
close57 causes the system to release resources that are allcated to a socket. The connection
is terminated in case of T!C sockets.
unlink57 removes the file names created for the socket. #o now the socket is removed and
new socket with same name can be created when re8uired.
#ome additional methods that can be used are as follows<
gethostbyname57 and gethostbyaddr57 are used to resolve hostNserver names and
addresses.
select57 is used for one or more of a provided list of sockets to be ready to read or ready
to write.
poll57 is used to check the socketFs state. The whole set of sockets can be tested to see if
we can read or write to any socket or if an error occurred.
setsockopt57 is used to set the socket option for the given socket. These options can be
like #OUD11C+&I41 5keep the connection alive by periodic transfer of messages7,
#OU)0O+9!+#T 5+llows a single message to be sent 5broadcasted7 to all the
networked clients7, etc.
getsockopt57 gives the current value of a socket option for the specified socket.
Page "
ASPIRE 2014 ( Introduction to Computer systems )
#.3. Internet
The Internet is a network connecting computers from across the world enabling data exchange
between them. Internet consists of independent hosts following the protocols. The orld ide
eb is a way of exchanging information over this medium of internet. The system consists of at
least two computers connected in such a way that at any instance of time one acts as a client
5re8uesting data or service7 and the other machine works as a host or server 5providing the data
or service7. The Internet can be accessed almost anywhere in many ways. 9ata cards, mobile
phones, handAheld game consoles and cellular routers provide wireless connection to the
Internet.

Page ""
ASPIRE 2014 ( Introduction to Computer systems )
#.3.1. Internet Protocols
+ protocol is a common means or rules for unrelated objects to communicate with each other. +
protocol is a description of<
The messages that are understood by both the communicating objects.
The arguments or data that these messages may be supplied with.
The types of results returned by these messages.
The information that is preserved despite modifications to the state of an object.
+ny exceptional situations that needs to be handled during this communication.
The protocol used for data flow or communication between the networks connected in an internet
is called Internet Crotocol. The Internet protocol suite is a model architecture that divides
methods into a layered system of protocols.
The layers represent the scope or environment in which their services operate. 5refer 6igure
-.1-7. The layers are as follows<
Application 4ayer A It is the space for the applicationAspecific networking methods used
in software applications like a web browser program.
Transport layer A It connects applications on different hosts via the network 5like
clientLserver model7 with appropriate data exchange methods.
Internet layer A It enables computers to identify and locate each other via Internet
Crotocol 5IC7 addresses. It connects them to one another via intermediate 5transit7
networks. 5refer 6igure -.1$7.
Sot!are layer L It is the link layer and provides connectivity between hosts on the same
local network link, such as a local area network 5&+27 or a dialAup connection.
The model known as T!CNIC, is designed to be independent of the underlying hardware.
Internet Crotocol 5IC7 is the most prominent component of the Internet model. It provides
addressing systems 5IC addresses7 for computers on the Internet.
IC 4ersion / 5ICv/7 is the initial version of Internet Crotocol. It was designed to address up to
approximately /.% billion 51*(7 Internet hosts and is still in dominant use.
Page "#
ASPIRE 2014 ( Introduction to Computer systems )
+ new protocol version ICv$ was developed in the midA1((*s and is currently in growing
deployment around the world. It provides vastly larger addressing capabilities and more efficient
routing of Internet traffic.

#.3.2. Internet .outing
IC forwarding also known as Internet routing is a process used to determine the path for your
data contained in structures called datagrams or packets 5refer glossary7 . The process uses
routing information to make decisions and is designed to send a packet over multiple networks.
Internet #ervice Croviders 5I#Cs are the organi'ations that provide access to internet7 connect
their customers to those of other I#Cs.
+t the top of the routing hierarchy are TierA1 networks held by large telecommunication
companies which exchange traffic directly across to all other TierA1 networks via agreements
such that they donFt have to pay each other for the data transferred every now and then .
TierA" networks buy Internet transit from TierA1 I#C to reach the global Internet. That is, to reach
a remote network, the smaller I#Cs have to connect to first TierA1 network which in turn may be
connected to that remote network. 6or this connectivity they have to pay some amount.
I#Cs generally use a single upstream provider for connectivity. They may use multihoming 5refer
glossary7 to provide protection from problems with individual links.
Internet exchange points hold the physical connections between multiple I#Cs.
Page "$
ASPIRE 2014 ( Introduction to Computer systems )
!omputers and routers use routing tables 50efer 6igure -.137 to direct IC packets among locally
networked machines. These tables can be constructed manually or automatically via 9>!C
59ynamic >ost !onfiguration Crotocol7 for an individual computer or a routing protocol for
routers themselves. In singleAhomed networks, a default route usually points up toward an I#C
providing transit. The higherAlevel I#Cs use the )order =ateway Crotocol 5refer glossary7 to
determine paths to any given range of IC addresses across the complex connections of the global
Internet.
Page #0
ASPIRE 2014 ( Introduction to Computer systems )
#.". &e,sites
+ website is a set of related web pages containing information in form of text, images, audio,
video etc. + website is hosted on one or more web server5s7 and can be accessed by internet.
orld ide eb 57 is the term used to refer collection of all public websites.
+ web page is a single document written in plain text. It is formatted using instructions of
>ypertext ,arkup &anguage 5>T,&7.
The general features of a website are described as follows<
+ protocol is a common means or rules for unrelated objects to communicate with each other. +
protocol is a description of<
The home page of a website contains an introduction to that site and links to other related
pages or to other websites.
+ website can be owned by an organi'ation or an individual also.
ebsites may host static content that remains same for all the viewers or they may host
dynamic content that changes as per the visiting userFs preferences.
To access a website, we need its address. 6or example, www.tcs.com
The letters in the website address after the last dot 5.7 indicates the type of websites. 6or
example, .com means !ommercial Organi'ation, .edu refers to educational sites, .gov is
for government websites, .jobs means job websites, etc.
+ website is accessed using >ypertext Transfer Crotocol 5>TTC7 . It may also use
encryption 5>TTC #ecure, >TTC# 5refer glossary7 7 to provide security and privacy.
The userFs web browser understands the >T,& instructions and displays the page content
accordingly.
Page #1
ASPIRE 2014 ( Introduction to Computer systems )

#.".1. Static !e,site
+ static website usually displays the same information 5static information7 to all visitors. It is
similar to a printed brochure.
It provides consistent and standard information for a considerable long period.
The website may however receive updates occasionally. These updates are done using a manual
process to edit the text, photos and other content. This kind of editing re8uires a software and
basic skills to use it.
#tatic websites can be edited using the following categories of software<
Text editors A >ere content and >T,& markup are manipulated directly within the editor
program. 6or example, 2otepad, 2otepad::.
Page #2
ASPIRE 2014 ( Introduction to Computer systems )
@#I@= 5refer glossary7 offline editors L These provide a =BI interface. The output
is in form of >T,& markup generated automatically by the editor software. 6or example,
,icrosoft 6rontCage and +dobe 9reamweaver
@#I@= online editors L These can be used to create online web pages including
widgets, blogs, and other documents containing images and other media. 6or example,
#nap1ditor.
TemplateAbased editors A These allow 8uick creation and uploading of web pages to a
web server. + detailed >T,& knowledge is not re8uired. @ou just need to pick a desired
template from available options and add pictures and text to it without directly writing or
updating >T,& code. 6or example, 0apideaver and ieb.

#.".2. +ynamic &e,site
+ dynamic website has the ability to change or customi'e itself fre8uently and automatically at
some specific time interval or based on some criteria.
9ynamic websites offer dynamism in two aspects < !ode and !ontent. The dynamic code
execution is not visible to the user. The user can see the dynamic content only.
+ynamic code A The code is executed on the fly based on some user event. #cripting languages
like ?avascript, +jax are used for this. + website with dynamic code has following
characteristics<
It recalls all the bits of information from a database and consolidates them in a predefined
format.
It interacts with users in various ways like using cookies for finding previous history.
9irect interaction using form elements and mouse hovers also reflect the user event and
cause the dynamic code to execute.
It can display the current state of a interaction between users. It can capture information
personali'ed to the re8uirements of the user.
+ynamic content A The web page content keeps on varying based on some criteria, either
predefined rules or variable user input.
Page #3
ASPIRE 2014 ( Introduction to Computer systems )
6or example, a news website can use a predefined rule which tells it to display all news
articles for todayFs date and for your country or location only.
#uch a website automatically shows the most current news articles on any given date.
!onsider a retail website which allows a user to input a search re8uest for the keyword
like =uitar. In response, the content of the web page will spontaneously change and will
then display a list of =uitar and music products like !9s 5!ompact 9isks7 and 949s
59igital 4ersatile 9isk7.
Summary
!omputing 1nvironment is a collection of computers, and various software in a network.
+ll these computers collaborate with each other for storing,processing and exchanging
electronic information.
,ainframe computing environment is capable of doing bulk calculations with very high
level of accuracy,security and speed.
,ainframe programs are written using !O)O& and ?!&. e need a T#O 5refer glossary7
user id to access the time slot on a mainframe server.
+ computer network joins two or more computing devices so that they can communicate
with each other. 2etworks can be of two types that is, wired or wireless.
Twisted pair, !oaxial cables and Optic fiber technologies are used to connect a wired
network.
Terrestrial ,icrowave, #atellites, #pread #pectrum and Infrared technologies are used to
connect various computing devices without wires.
!omputer networks can have their nodes connected in forms like )us, #tar 0ing, ,esh or
6ully !onnected topology.
2etwork or #ocket programing can be done using various programing language and all of
them provide the basic methods for reading and writing to a network and listening for
re8uests from the client.
Internet connects computers across the world. It is based on protocols. 1ach computer in
the internet is identified by an IC address.
The communication between two computers may be routed through various networks.
Page #4
ASPIRE 2014 ( Introduction to Computer systems )
+ ebsite may be accessed using http protocol from any where on the internet. It can be
of two types < #tatic and dynamic.
#tatic websites are like the profile of a company or product and does not change often
and displays the same details to all visitors.
9ynamic websites change their content as per time and user preferences like news,
eAcommerce websites.
9ynamic code A The code is executed on the fly based on some user event. #cripting
languages like ?avascript, +jax are used for this. + website with dynamic code has
following characteristics<
o It recalls all the bits of information from a database and consolidates them in a
predefined format.
o It interacts with users in various ways like using cookies for finding previous
history.
o 9irect interaction using form elements and mouse hovers also reflect the user
event and cause the dynamic code to execute.
o It can display the current state of a interaction between users. It can capture
information personali'ed to the re8uirements of the user.
9ynamic content A The web page content keeps on varying based on some criteria, either
predefined rules or variable user input.
o 6or example, a news website can use a predefined rule which tells it to display all
news articles for todayFs date and for your country or location only.
o #uch a website automatically shows the most current news articles on any given
date.
o !onsider a retail website which allows a user to input a search re8uest for the
keyword like =uitar. In response, the content of the web page will spontaneously
change and will then display a list of =uitar and music products like !9s
5!ompact 9isks7 and 949s 59igital 4ersatile 9isk7.

Page #5
ASPIRE 2014 ( Introduction to Computer systems )

You might also like