Professional Documents
Culture Documents
Introduction to Computer
Systems
Courses
Course Objective
The Objective of this course is to have an insight that what is a
computer, how it works in collaboration with another computer or various
devices that connect to it using wires or without them. This 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.This course also explains the
basics of system software and the different programs associated with system
software like assemblers,compilers, loaders, linkers and interpreter.
Course Content
1.
2.
ii.
iii.
3.
What is a Computer
a.
b.
c.
Memory Unit
Bus
Addressing Mode
Systems Software
i.
Assembler
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/index.html
1/2
12/9/13
4.
ii.
Assembly language
iii.
iv.
Compilers
v.
Interpreters
ii.
5.
a.
b.
Process Management
c.
File Management
d.
Device Management
Computing Environments
i.
ii.
iii.
Internet
iv.
Websites
Courses
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/index.html
2/2
12/9/13
Introduction to Computer
Technology
1. Introduction
Computers have become an indispensable part of our daily life.
Be it connecting with our friends, shopping, gaming, booking tickets, getting
the score updates, listening music, watching movies as well as live TV
programs and so on (refer Figure 1.1,1.2,1.3 and 1.4). Computers have made
our life not only easier but more interesting also. It is an advantage to us that
we are living in the period of such technological revolutions. So let us explore
What Computer Technology actually is and how it works.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.1_introduction.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.1_introduction.html
2/2
12/9/13
Introduction to Computer
Technology
1/2
12/9/13
automatic computing engine. It was to operate on steam and was called the
Difference Engine (refer Figure 1. 5).
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.2_what-is-a-computer_1.html
2/2
12/9/13
Introduction to Computer
Technology
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.2_what-is-a-computer_2.html
1/2
12/9/13
698532.47
65893.6598=
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.2_what-is-a-computer_2.html
2/2
12/9/13
Figure 1.9: Evolution from ENIAC to Desktop Computer to Laptop and Tablet
details)
Few of the latest use of computer technology can be listed as below. (Refer glossary for
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.2_what-is-a-computer_3.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.2_what-is-a-computer_3.html
2/2
12/9/13
Introduction to Computer
Technology
1.2.1 Hardware
Hardware constitutes the tangible parts of computer like its
keyboard, mouse, visual display unit (VDU or monitor), circuits, etc. It is best
described as all the physical parts of a computer, the parts you can actually see
and touch.
II.
Power supply
III.
Input peripherals
IV.
i.
Mouse
ii.
Keyboard
Output peripherals
i.
V.
Monitor
Memory Device
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_1.html
1/2
12/9/13
VI.
VII.
Motherboard
i.
ii.
RAM
iii.
Ports
Expansion cards
Mouse
II.
Keyboard
III.
Monitor
IV.
Memory Device
V.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_1.html
2/2
12/9/13
Introduction to Computer
Technology
1.2.1.1 Mouse
A Mouse 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 Scroller between the two mouse buttons. The mouse
can be used as follows:
Click: Point to the item, then tap (press and release) the left
mouse button. Like you click links on a website
Double-click: Here, point to the item and press the left mouse
button twice in rapid succession.
Right-click: Point to the item, then tap the right mouse button.
Drag: Point 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.
Right-drag: Point 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
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_2.html
2/2
12/9/13
Introduction to Computer
Technology
1.2.1.2 Keyboard
A Keyboard is an input device and is usually used when we need
to type some text input or fill a form. Various 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 F1 to F12. F1 can always be
used to display help for your current application, F2 can be used
to change name of any file, F3 can be used to search any text or
file on the computer. Similarly each function key can be used to
perform a specific action.
The direction keys or Arrow keys can be used to move the typing
cursor (the blinking short vertical line on monitor that indicates
the position of text insertion) at desired location.
The numeric keys can be used to enter numbers if we have
pressed the Num-Lock key which can be indicated by the light
on Lock Key indicators. Otherwise, the Numeric keys behave as
direction keys and allows you to change your cursor location.
Ctrl and Alt 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.
Shift Key is also a special key which can be used to change the
lower case letter to upper case and vice-versa while typing. It is
also used to display the parenthesis (), the question mark (?) ,
the exclamation point (!), and the colon(:). Also, it helps in
displaying other special characters like @,$,# that are present on
the horizontal numeric keypad.
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
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_3.html
1/2
12/9/13
filling a form.
Caps Lock Key sets an input mode in which typed letters are
uppercase(in capital letters) 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 requires
only capital letters.
Enter Key causes a form, or any other computer operation to
perform its default function. This is typically an alternative to
pressing an OK button. It can also be used to move to next line
starting position while typing.
Esc (Escape) key can be used to cancel a task or to go back to a
previous task.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_3.html
2/2
12/9/13
Introduction to Computer
Technology
1.2.1.3 Monitor
Also called VDU (Visual Display Unit), the Monitor is the
primary output device. It looks like a Television and has the similar purpose of
displaying videos or output of programs. Monitors are built using technologies
like Cathode Ray Tube (CRT monitors- refer Glossary) and Thin Film
Transistor Liquid Crystal Display (TFT- LCD monitors - refer Glossary) . We
now generally have these monitors or screens made of TFT-LCD.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_4.html
1/1
12/9/13
Introduction to Computer
Technology
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_5.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_5.html
2/2
12/9/13
Introduction to Computer
Technology
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_6.html
2/2
12/9/13
Introduction to Computer
Technology
1.2.2 Software
Software is the non-material part of computer like data,
programs, protocols, etc. It is a non-physical component that runs on your
computer and can be changed by a set of programmed instructions.
For example you watch a movie on a DVD using the DVD drive in
your computer. Here the DVD and DVD 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 DVD, similarly there is a program like Media
Player stored on your computer to watch that movie. The application that you
are currently using to read this text is also a software.
Software can be categorized into three types as follows:
System Software
Utility Software
Application Software
Course Contents | Prev : Next
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_7.html
1/1
12/9/13
Introduction to Computer
Technology
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_8.html
1/3
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_8.html
2/3
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_8.html
3/3
12/9/13
Introduction to Computer
Technology
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_9.html
1/1
12/9/13
Introduction to Computer
Technology
1.2.3 Firmware
It is the combination of persistent memory (long term or
permanent storage which is preserved even when the power supply is
unavailable), program code and the data stored in it.
It is software stored in hardware.
Examples include embedded systems like traffic lights and
remote control.
Let us understand firmware using remote control. When you
open a remote control you see a set of circuits which along with
the body of the remote control constitutes the hardware part.
Now you can move or switch channels using the remote control
or you can put a child lock for the same. Also you can use the
swap button on the remote control to go back to the previous
viewed channel. So the remote control is able to remember that
which is the most recent channel you viewed or your color
preferences. This part constitutes the software and data, stored
in your remote control.
Changing the firmware of a device may rarely or never be done
during its lifetime. Some firmware memory devices are
permanently installed and cannot be changed at all. Devices like
printers, scanners, cameras and USB drives have firmware
stored internally.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_10.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.3_components-in-a-computer-system_10.html
2/2
12/9/13
Introduction to Computer
Technology
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.4_computer-language.html
2/2
12/9/13
Introduction to Computer
Technology
Summary
A Computer is a machine that executes a set of arithmetic or
logical instructions and usually provides a visual output. It has evolved from
Charles Babbage's Difference Engine design to the modern day Laptops and
Tablets.
The different Components of a Computer are :
Hardware The tangible or physical parts of the computer.
Mouse the device used for pointing the
target or double clicking a folder to open it.
Keyboard the primary input device with all
alphabets and numbers on it.
Screen the primary output device which is
like the TV screen.
Memory devices store all the information and
data.
Microprocessor or Central Processing Unit the electronic brain of computer responsible
for all computation logic.
Software It is the non-tangible part of computer like programs
and applications.
System Software - It is a the main software on
the computer which enables execution of
other programs and software. For example Operating system.
Utility Software - Used as an add on or
protection of computer from virus attacks.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.5_summary.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.5_summary.html
2/2
12/9/13
Introduction to Computer
Technology
Glossary
Term used
Description
And OR
logical
operators
Augmented
Reality
Binary Address
Cache
Cathode Ray
Tube
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.6_glossary.html
1/4
12/9/13
Cloud
Computing
Compilation
Digital
Signature
Verification
Expansion
Cards
Flow Chart
Integrated
Circuit
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.6_glossary.html
2/4
12/9/13
Interpretation
Markup
Language
Natural
Language
Speech to Text
Phablet
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.6_glossary.html
3/4
12/9/13
Program
RAM
Scheduling
Algorithms
Server
Social
Networking
Thin Film
Transistor
Liquid Crystal
Display
Workstation
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module1/session1.6_glossary.html
4/4
12/9/13
2. Introduction
Computer Technology after its evolution, has made incredible
improvement. In early stage of evolution, the computers were not able to store
data, the size of the computer was a very huge one with very less
computational power.
Now a days, a personal computer has more computational power,
more main memory, more disk storage, smaller in size and is available in
affordable cost. The advances in the technology brought a rapid rate of
improvement in building computers and innovation in computer design.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.1_introduction.html
1/1
12/9/13
II.
III.
Memory Unit
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.1_organization_of_a_small_computer.html
1/1
12/9/13
b.
Control Unit
c.
Registers
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.2_central_processing_unit_1.html
1/1
12/9/13
Arithmetic Unit
ii.
Logical Unit
i. Arithmetic Unit(AU)
Arithmetic Unit performs arithmetic operations.
The ALU has got two input parameters named as A and B and
one output storage parameter, named as C.
It perform the operation as: C = A op B (where op stands for
operand which can be either of the given operations)
I.
Addition(C=A + B)
II.
Subtraction(C=A - B)
III.
Multiplication(C = A * B)
IV.
Division(C = A / B)
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.2_central_processing_unit_alu_1.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.2_central_processing_unit_alu_1.html
2/2
12/9/13
AND
II.
OR
III.
NOT
I. AND
The AND operator is represented by '&' and performs logical
conjunction on two Boolean expressions.
If both expressions are True, then the 'AND' returns True.
If either or both expressions are False, then 'AND' returns False.
As shown in the given table (Figure 2.3) : C = A & B
A
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.3_central_processing_unit_alu_3.html
2/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.3_central_processing_unit_alu_5.html
1/1
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.3_central_processing_unit_alu_6.html
1/1
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.4_central_processing_unit_cu.html
1/1
12/9/13
1/2
12/9/13
memory and after that they are displayed on the user screen.
Course Contents | Prev : Next
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.4_central_processing_unit_reg_1.html
2/2
12/9/13
Number of
Bits
Register Name
Function
DR
16
Data Register
AR
12
AC
16
Accumulator
Processor Register
IR
16
Instruction
Register
PC
12
Program Counter
TR
16
Temporary
Register
INPR
Input Register
OUTR
Output Register
1/2
12/9/13
register (IR).
The temporary register (TR) is used for holding temporary data
during the processing.
The input register (INPR) receives an 8-bit character from an
input device.
The output register (OUTR) holds an 8-bit character for an
output device.
A program counter (PC) is a register in a computer processor
that contains the address of the instruction being executed at
current point of time. As each instruction is fetched, the
program counter increases its stored value by 1 and points to
the next instruction in sequence. When the computer is reset or
restarts, the program counter normally reverts to 0.
An address register (AR) is a high-speed circuit that holds the
addresses of data to be processed or of the next instruction to be
executed.
Course Contents | Prev : Next
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.4_central_processing_unit_reg_2.html
2/2
12/9/13
a. Input Unit/Devices
computer.
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.5_input_unit.html
2/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.5_output_unit.html
1/1
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.6_input_output_devices.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.6_input_output_devices.html
2/2
12/9/13
2.1.3 Memory
Memory unit is an essential component in any computer, needed
to store the data and program. CPU works with information stored in memory
unit. It is also termed as primary memory or main memory.
A very small computer with a limited application may be able to
fulfill its intended task without the need of additional storage capacity. Most
general purpose computer is run more efficiently if it is equipped 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 CPU is not using currently.
The unit that communicates directly with CPU 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. Rest of the information is stored in auxiliary memory and transferred
to main memory when required.
There are following types of Memories:
a.
b.
Main memory
i.
ii.
Auxiliary Memory
i.
Magnetic Disks
ii.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.7_memory_1.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.7_memory_1.html
2/2
12/9/13
2.1.3 Memory
a. Main Memory
The main memory is central storage unit in a computer system. It
is used to store programs and data being used during computer operation.
Following comes under Main Memory:
RAM (Random Access Memory):
RAM, also known as Volatile memory that loses its contents
when the computer or hardware device loses power.
ROM(Read Only Memory):
ROM 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.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.7_memory_2.html
1/1
12/9/13
2.1.3 Memory
b. Auxiliary Memory
An Auxiliary Memory, also known as high-speed memory bank is
used in mainframes and supercomputers(refer to Glossary). The major
difference between main memory and auxiliary memory is that CPU directly
access the main memory but the auxiliary memory is not accessed by the CPU
directly. For this the data is first transferred from auxiliary memory to main
memory and then from main memory the data is transferred to the CPU for
further processing.
The most commonly used auxiliary memory devices in the
computer systems are magnetic disks and magnetic tapes.
There are following auxiliary memories:
Magnetic Disk
A magnetic disk is a circular plate made up
of metal or plastic coated with magnetized
material.
Both the sides of disk are used and several
disks may be stacked on one spindle with
read/write heads available on each surface.
Bits are stored on magnetized surface in
spots along concentric circles called tracks.
Tracks are divided into sections called
sectors.
Disk that are attached and cannot removed
by occasional user are called Hard disk.
A disk drive with the removable disks are
called a floppy disks.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.7_memory_3.html
1/2
12/9/13
Magnetic Tapes
A magnetic tape is also known as Removable
Media consists of electric, mechanical and
electronic components to provide the parts
and control mechanism for a magnetic tape
unit. The major difference between magnetic
disk and magnetic tape is that, magnetic
tapes support sequential access.
The tape is a plastic coated strip with a
magnetic recording medium.
The Bits are recorded as magnetic spots on
tape along several tracks.
Tracks are divided into sections called
sectors.
Disk that are attached and cannot removed
by occasional user are called Hard disk.
A disk drive with the removable disks are
called a floppy disks.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.7_memory_3.html
2/2
12/9/13
2.2 Bus
A bus enables a computer processor to communicate with the
memory or a video card.
The processor, main memory and Input/Output devices can be
interconnected through common data communication lines
which are termed as a common bus, as shown in Figure 2.10.
The primary function of common bus is to provide a
communication path between devices for transfer of data.
The bus include control lines needed to support interrupts and
arbitration.
II.
The bus lines which are used to transfer data are grouped into three categories:
I.
Data Bus
II.
Address Bus
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.8_bus_1.html
1/2
12/9/13
III.
Control Bus
Course Contents | Prev : Next
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.8_bus_1.html
2/2
12/9/13
2.2 Bus
Data Bus
Data 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 (CPU) to other
components.
Address Bus
An address bus is used to specify a physical address.
When a processor or Direct memory access (DMA)
enabled device needs to read or write to a memory
location, it specifies that memory location on the address
bus.
Control Bus
A control bus is a part of a computer bus, used by CPUs
for communicating with other devices within the
computer.
It carries commands from the CPU and returns status
signals received from the devices.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.8_bus_2.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.8_bus_2.html
2/2
12/9/13
Ex: Consider this machine code ADD A , B here ADD is opcode and A,B are
operands. This means add A and B and store the result in A. Here A and B
refers to some locations where the numbers are actually stored. This a kind of
indirect addressing mode.
There are several types of addressing modes present. Each
addressing mode has a unique formula to locate the operand.
Some of them are mentioned below :
I.
II.
III.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.9_addressing_mode.html
1/1
12/9/13
Summary
In given document, we have presented a brief overview of
Computer organization and architecture.
Computer Architecture - refer to the relationship between
different hardware component of a computer system.
Computer Organization - refer to how operational attributes are
linked together to realized the architecture specifications.
We have covered basic units of a computer:
Central Processing Unit (CPU) - Controls the operation of the
computer and performs its data processing functions.
Arithmetic Logic Unit (ALU) - It performs
computers data processing functions.
Control Unit(CU) - It performs computers
data processing functions.
Registers - Registers provides internal
storage to the CPU.
Input Unit/Devices - They provide input to the CPU.
Output Unit/Devices - They provide output from CPU to the
user.
Memory Unit - Memory Unit is needed to store the data and
program.
Bus - It consists of set of wires that allow data to be passed back
and forth.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.11_summary.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.11_summary.html
2/2
12/9/13
Glossary
Byte - A byte is a unit of measurement used to measure data. 1
byte contains 8 binary bits, or a series of eight zeros and ones.
So, each byte can be used to represent 2^8 or 256 different
values.
Processor Registers - A processor register is a local storage space
on a processor that holds data that is being processed by CPU.
They generally occupy the top-most position in the memory
hierarchy and provide high-speed storage space and fast access
to data. A register may include the address of memory location
instead of the real data itself.
Immediate Addressing Mode - In immediate addressing, the
instruction contains the value to be used. In many cases, an
instruction requires a constant quantity and a bit pattern which
will never change no matter when or how often the instruction is
executed. This mode of bit pattern is called the immediate
addressing mode. In the given Figure 2.15, the op-word for
instruction includes a group of bits which identifies this mode of
addressing. Since the instruction is located in program memory
the constant is itself in program memory.
In Immediate addressing mode, the instruction does not
explicitly state the location of operand, rather, it explicitly states
the operand itself. This addressing mode is used when a
particular constant value is to be fixed within a program itself.
The value is found in memory immediately after the
instruction code word that may never change at any time.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.10_glossary_1.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.10_glossary_1.html
2/2
12/9/13
Glossary
Direct Addressing Mode - In direct addressing, the instruction
tells where the value can be found, but the value itself is out in
the memory. Here the instruction explicitly states the location of
an operand or destination that is either in memory or in a
processor register.
There are two sub-classification of direct addressing modeAbsolute Addressing - The mode is referred
to as Absolute addressing, when the location
is in memory.
Register Direct Addressing - The mode is
referred to as Register Direct Addressing,
when the location is a processor register.
In Figure 2.16 , the instruction specifies the address of the
operand.
In Figure 2.17, the instruction specifies the register containing
the operand.
1/3
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.10_glossary_2.html
2/3
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.10_glossary_2.html
3/3
12/9/13
Glossary
SCSI device - A SCSI device is connected to the SCSI (Small
Computer System Interface). The SCSI device functions on its
own and uses the SCSI interface to communicate with the rest of
the computer. Figure 2.19 and Figure 2.20 are example of SCSI
devices.
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module2/session2.10_glossary_3.html
2/2
12/9/13
Systems Software
3. Introduction
System software refers to the files and programs that makes up the computer's
operating system. System files consist of libraries of functions, system services, drivers for
printers, other hardware, system preferences and various configuration files.
System Software consist of the following programs:
Assemblers
Compilers
File Management Tools
System Utilities
Debuggers
The system software is installed on the computer when the operating system is
installed. The software can be updated by running programs such as "Windows Update" for
Windows or "Software Update" for Mac OS X. Application programs are used by end user,
whereas system software is not meant to be run by the end user. For example, while Web browser
like Internet Explorer are used by users every day, they don't have to use an assembler program
(unless the user is a computer programmer).
System software runs at the most basic level of the computer and hence it is called
"low-level" software.User interface is generated by the system software and allows the operating
system to interact with the hardware.
software.
System software is the interface between the computer hardware and the application
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.1_introduction.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.1_introduction.html
2/2
12/9/13
Systems Software
3.1 Assembler
An assembler is a program that converts basic computer
instructions into a pattern of bits. These bits are used by computer's processor
to perform its basic operations. Some people call these instructions as
assembler language and others use the term assembly language. This is how it
works:
Most computers come with a specified set of very basic
instructions that corresponds to the basic machine operations that the
computer can perform. For example, a "Load" instruction moves a string of bits
from a location in the processor's memory to a special holding place called a
register. In computer architecture, a processor register is a small amount of
storage available on the CPU and the contents of register can be accessed more
quickly. Most 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. Assuming the processor has at least
eight numbered registers, the following instruction would move the value
(string of bits of a certain length) at memory location 2000 into the holding
place called register 8:
L 8,2000
The programmer can write a program using a sequence of
assembler instructions.
These assembler instructions, which is also known as the source
code or source program, is then specified to the assembler
program when it is started.
Each program statement in the source program is taken by the
assembler program and a corresponding bit stream or pattern (a
series of 0's and 1's of a given length) 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 sequence of 0's and 1's is also known as
machine code.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.2_assembler.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.2_assembler.html
2/2
12/9/13
Systems Software
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.3_assembly-language_1.html
2/2
12/9/13
Systems Software
Example
Binary
Hex Mnemonic
Description
1001111
4F
CLRA
110110
36
PSHA
1001101
4D
TSTA
Label
ii.
Opcode
iii.
Operand
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.3_assembly-language_2.html
1/2
12/9/13
iv.
Comments
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.3_assembly-language_2.html
2/2
12/9/13
Systems Software
1/2
12/9/13
An address
Examples of operands
LDAA 0100H ; two byte operand
LDAA LOOP ; label operand
LDAA #1 ; immediate operand(i.e constant value as operand)
The comment field is optional, and is used by the programmer to
explain how the coded program works. The comments are prefixed by a semicolon. Comments are ignored by the assembler when the instructions are
generated from the source file.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.3_assembly-language_3.html
2/2
12/9/13
Systems Software
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.4_loaders-and-linkers.html
2/2
12/9/13
Systems Software
3.4 Compilers
A compiler is a special program that processes statements
written in a particular programming language and turns them into machine
language or code that a computer's processor uses. A programmer writes
language statements in a language such as Pascal or C 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.
When executing (running), the compiler first parses (or analyzes)
the language statements syntactically one after the other and then builds the
output code in one or more successive stages or "passes" 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.
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.5_compilers.html
2/2
12/9/13
Systems Software
3.5 Interpreters
Interpreter is a program that executes instructions written in a
high-level language. There are two methods to run programs written in a highlevel language. The most common method is to compile the program and the
other method is to pass the program through an interpreter.
An interpreter translates high-level instructions into an
intermediate form and then executes it. In contrast to the above method, a
compiler translates high-level instructions directly into machine language. The
compiled programs generally run faster than interpreted programs. One of the
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 time-consuming if the program is very long. The
interpreter, on the other hand, immediately execute high-level programs. Hence
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
quickly. In addition to this, interpreters are often used in education because
they allow students to program interactively.
Interpreter vs 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
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.6_interpreters.html
1/2
12/9/13
object code. But an interpreter does not convert the source code
to an object code before execution.
An interpreter executes the source code line by line and
conversion to native code is performed line by line while
execution is going on (at runtime). Hence the run time required
for an interpreted program will be high compared to a compiled
program.
Even though the run time required for interpreted program is
more, the execution using an interpreter has its own advantages.
For example interpreted programs can modify themselves at
runtime by adding or changing functions. Compiled program
has to be recompiled fully even for the small modifications done
in the program. But in the case of an interpreter there is no such
problem (only the modified section needs to be recompiled).
(Refer Fig 3.6)
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.6_interpreters.html
2/2
12/9/13
Systems Software
Glossary
A driver is software that helps the computer to communicate
with hardware or devices. Without drivers, the hardware
connected to the computer, for example, a webcam, will not work
properly.
An assembler is a computer program which translates from
assembly language to an object file or machine language format.
A compiler is a computer program that converts source code
written in a particular programming language into another
computer language.
A debugger is a computer program that is used to test and debug
other programs.
Application software, also known as an application or an app, is
computer software that helps the user to perform specific tasks.
Examples of application software include enterprise
software,office suites, graphics software and media players.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module3/session3.7_glossary.html
1/1
12/9/13
4. Introduction
Operating system is a collection of programs. It is a software that
supports a computer's basic functions. It acts as an interface between
applications and computer hardware as shown below in the figure 4.1.
Examples of operating systems are Windows, Linux, MacOS, etc.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.1_introduction_1.html
1/1
12/9/13
4. Introduction
In the figure 4.2 below, OS 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 core software component of computer. It
performs many functions and acts as an interface between computer and the
outside world. A computer consists of several components including monitor,
keyboard, mouse, and other parts. Operating system provides an interface to
these parts through 'drivers'. 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. A brief on device drivers is given in section 4.2.4, Device
Management.
Operating system basically manages all internal components of
computer. It was developed to better use the computer system.
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.1_introduction_2.html
2/2
12/9/13
system:
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_1.html
1/1
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_2.html
1/1
12/9/13
i. Fragmentation
Internal Fragmentation
Internal fragmentation is the space wasted inside the
allocated memory block because of the restriction on allowed sizes of
allocated blocks. Allocated memory can be slightly larger than
requested memory. The size difference is the memory internal to
partition but would not be used. Internal fragmentation is difficult to
reclaim. Design change is the best way to remove internal
fragmentation. For example, in dynamic memory allocation, memory
pools cut internal fragmentation by spreading the space overhead over a
larger number of objects.
External Fragmentation
External 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 request but is not
contiguous and so, is wasted. Here the jargon 'external' is used to depict
that the storage that is further unusable is outside the allocated regions.
For 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. However, this free block cannot be used for allocation if the
memory to be allocated is larger in size than the free block. External
fragmentation also occurs in file systems as many files of different sizes
are created, size changed and deleted. The effect is even worse if a file
which is divided into many small pieces is deleted, because this leaves
almost equal small regions of free space.
Data Fragmentation
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_3.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_3.html
2/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_4.html
1/1
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_5.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_5.html
2/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_6.html
1/1
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_7.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_7.html
2/2
12/9/13
2.
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_8.html
2/2
12/9/13
1/2
12/9/13
Some of them are foreground processes while others are the background
processes. Foreground 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. Background processes are the processes
which are not associated with a particular user, but instead have some specific
function to be performed. For example email notification is an example of
background processes. System clock displayed at the bottom right corner of
status bar in windows is another example of background process.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_9.html
2/2
12/9/13
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_10.html
2/2
12/9/13
Preemptive scheduling:
In a computer, tasks are assigned priorities. At times it is
necessary to run a certain task that has high priority before another task
(even if the task is in running state). 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.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_11.html
1/3
12/9/13
2/3
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_11.html
3/3
12/9/13
1/2
12/9/13
Provide fast and simple algorithms to write and read files in cooperation with device manager.
Grant and deny access rights on files to programs and users.
Allocate and de-allocate files so that files can be processed in cooperation with process manager.
Provide programs and users with simple commands for
handling files.
Course Contents | Prev : Next
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_12.html
2/2
12/9/13
1/3
12/9/13
for free blocks is needed. The disadvantage is that FAT can grow to an
enormous size, which can slow down the system. Compaction would be
needed time to time. This type of file allocation is used for disk
allocation in MS-DOS.
Chained allocation:
With chained file allocation only the first block of file gets
an entry in the FAT. A 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 (or indicates that it was the last). That means each
sector (if it is not a last sector) has got a pointer at its end pointing to the
next sector that should be accessed. The advantage again is that the FAT
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. Unix i-node is an example of this type of allocation. i-nodes
are data structures (Refer Glossary) of a file system used to store all the
important properties of each file: owner's group id and user id, access
permission on that file, size of the file and more. Unix i-node is an
operating system which has i-nodes as its data structure.
Indexed allocation:
With indexed file allocation also only the first block of file
gets an entry in the FAT. 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. Here also the FAT 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. A
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 UNIX systems.
It is reliable as well as fast. Also, now-a-days, the wastage of storage
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_13.html
2/3
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_13.html
3/3
12/9/13
Dead Lock
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_14.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.2_resources-managed-by-OS_14.html
2/2
12/9/13
4.2.1 Multiplexing
Multiplexing is a method by which multiple analog data
signals/digital data streams are combined into one signal over a shared
medium. Multiplexing is used to share an expensive resource and thus help
reduce the cost.
Communication channel is used for transmission of a
multiplexed signal. This channel may be a physical transmission medium.
Multiplexing 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. Each of these low level logical channel maps to each message
signal or data stream to be transferred. A reverse of this process is known as
demultiplexing. Demultiplexing can extract the original channels or signals on
the receiver side.
A device that performs the task of multiplexing is called a
multiplexer (MUX), and a device that performs the task of demultiplexing is
known as a demultiplexer (DEMUX).
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.3_resource-sharing-management_1.html
1/1
12/9/13
4.2.1 Multiplexing
Resource management basically includes multiplexing the
resources in two ways:
Time Multiplexing
When 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. Printer is one of the best examples of in-time multiplexing. In a
network printer, different users get their turn to use the printer one after
another based on time.
Space Multiplexing
When a particular resource is space multiplexed, the resource is
shared equally in the available space. Time period for which a particular
resource is used does not matter anymore. That is each one gets a part of the
resource. Hard disk, main memory, etc are some of the examples of space
multiplexing. These resources are most of the times divided equally between
all the users.
To summarize, 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. Without operating system, computer would be
nothing but a monitor executing binary and machine language data.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.3_resource-sharing-management_2.html
1/1
12/9/13
Introduction to Computer
Technology
Glossary
Term
used
Description
Scheme
Process
Data
array
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module4/session4.4_glossary.html
1/1
12/9/13
Computing Environments
5. Introduction
Computing Environment 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 Distributed Computing Environment. Figure 5. 1 shows
how different computers are connected with each other globally, also they can
be connected with different devices like cell phones.
Critical applications (refer glossary) and bulk data processing
require computer environments which can guarantee high reliability and
stability. Most such large scale,high end commercial system architectures (refer
glossary) are referred as Mainframes.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.1_introduction.html
1/1
12/9/13
Computing Environments
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.2_mainframe-computing-environment_1.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.2_mainframe-computing-environment_1.html
2/2
12/9/13
Computing Environments
(For
example,
1/2
12/9/13
(alphabet).
The operating system looks into the segments to keep a track of
groups of datasets. The first segment of the dataset name is its
High-level Qualifier (HLQ).
Datasets should have meaningful names. For example,
Customers data should be stored in a file named
CUSTOMER.DATA. Here customer and data are the two
segments or qualifiers of your dataset name.
To access or log-in to Mainframes, we need a TSO (refer glossary)
USER-ID, which is similar to user-id that we use to login to a windows
machine.
Suppose your TSO-id is AGY0232. So give the High-level qualifier
AGY0232 to all your datasets. This way you can identify the datasets belonging
to you.
For
example,
AGY0232.CUSTOMER.DATA.
name
your
Customer
dataset
as
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.2_mainframe-computing-environment_2.html
2/2
12/9/13
Computing Environments
1/3
12/9/13
2/3
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.2_mainframe-computing-environment_3.html
3/3
12/9/13
Computing Environments
5.2 Networks
A computer network joins two or more different categories of
computing devices enabling them to communicate to each other by sending
and receiving instructions. A computer network can be wired or wireless. Also,
smaller networks in turn may be connected to larger networks through bridges,
gateways or routers (refer glossary) . Communication in a network follows
certain rules that is, it is protocol (refer glossary) based.
Following are the major categories of a Computer Network:
LAN (Local Area Network) : A LAN connects computer devices
over a short distance. A networked office, school or home
usually contains a single LAN and occasionally it may connect a
group of nearby buildings. LAN is mostly connected using a
technology called Ethernet (refer glossary).
WAN (Wide Area Network) : A WAN is a geographicallydispersed collection of multiple LANs. Various LANs are
connected to a WAN using a router. The Internet is the largest
WAN and it spans the Earth. WAN networks exist under
collective or distributed ownership and management and do not
belong to any single organization.
WLAN (Wire Less Area Network) : A Wireless Local Area
Network (WLAN) 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. WLANs are used in places like in-home
networks, airplanes, trains, restaurants, hotels.
Computer networks (refer glossary) 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 (wireless LAN).
A well-known family of communication media is collectively
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_1.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_1.html
2/2
12/9/13
Computing Environments
5.2 Networks
5.2.1 Wired Technologies
Wired networks are of following types :
a.
Twisted Pair
b.
Coaxial Cable
c.
Optic Fiber
a. Twisted Pair
It is the most widely used medium for telecommunication. It is
made of copper wires that are twisted into pairs.
Ordinary land line telephones are a good example where the wires
consist of two insulated copper wires that are twisted into pairs.
Computer network cabling (wired Ethernet) consists of 4 pairs of
copper cabling that can be utilized for both voice and data
transmission. This twisting of two wires together helps to
reduce crosstalk (refer glossary) and electromagnetic induction.
Its transmission speed varies from 2 million to 10 billion bits per
second. The Twisted pair cables are of two types: Unshielded
Twisted Pair (UTP) and Shielded Twisted-Pair (STP).
The unshielded cables are individually
covered but do not have any wrapping or
layer surrounding the twisted pair, that is
why they are called unshielded.
The shielded cables are individually covered
and the twisted pair is wrapped in a foil
shielding to help provide a more reliable
data communication. They are preferred
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_2.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_2.html
2/2
12/9/13
Computing Environments
5.2 Networks
5.2.1 Wired Technologies
b. Coaxial cable
It is generally used for cable television, office buildings, and other
work-sites 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 minimizing interference and
distortion.
Its transmission speed is between 200 million bits per second to
more than 500 million bits per second.
c. Optical fiber
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.
Different colors of lights can be used to increase the number of
messages being sent over a fiber optic cable.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_3.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_3.html
2/2
12/9/13
Computing Environments
5.2 Networks
5.2.2 Wireless technologies
Wireless network refers to computer network that is not
connected by cables of any kind. Wireless networks can be of following types :
Wireless PAN - Wireless personal area networks (WPANs)
interconnect devices within a relatively small area, generally
within a person's reach. Bluetooth radio or invisible infrared
light provide a WPAN for connecting a headset to a laptop.
Wireless LAN - A wireless local area network (WLAN) 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 spread-spectrum or OFDM (refer glossary)
technologies may allow users to move around within a local
coverage area, still remaining connected to the network.
Wireless mesh network - It is made up of radio nodes organized in
a mesh topology (Refer section 2.2.3 Network Topology). Each
node forwards messages on behalf of the other nodes. Mesh
networks can automatically re-route around a node that has lost
power.
Wireless MAN - Wireless metropolitan area networks are a type of
wireless network that connect many wireless LANs. WiMAX is
an example of Wireless MAN.
Wireless WAN - Wireless wide area networks are wireless
networks that typically cover large areas, like networking
neighboring towns and cities.
Cellular network - A cellular network or mobile network is a radio
network distributed over land areas known as cells. Each cell
has at least one fixed-location transceiver( It is usually installed
on a communication tower and basically has the role of sending
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_4.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_4.html
2/2
12/9/13
Computing Environments
5.2 Networks
5.2.2 Wireless technologies
connections:
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_5.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_5.html
2/2
12/9/13
Computing Environments
5.2 Networks
5.2.3 Network topology
A network topology is the layout describing how the nodes(all
computer terminals) of a computer network are interconnected. Common
layouts are explained as follows:
Bus Network
All nodes are connected to a common cable which is called a Bus.
Advantages
Implementation is easier.
Best Topology for small networks.
Disadvantages
Due 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 Bus fails, then all the nodes connected to it
also fail to serve.
Star Network
All nodes are connected to a central node or hub. This layout
found typically in a Wireless LAN, where each client connects to the central
Wireless access point.
Advantages
As it is centralized in nature, it is simple in terms of operation.
It also keeps each device isolated in the network. It means if one
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_6.html
1/3
12/9/13
Ring Network
Advantage
There is no requirement of a central server as the communication
between two nodes channelizes through all the intermediate
nodes.
Disadvantages
Even if a single node of the network fails, it can cause the entire
network to fail.
Entire network is affected whenever any change or movement is
made for a network node.
Mesh Network
Each node connects with a random number of neighbors such
that there is at least one traversal from each node to any other. Here each node
has the responsibility of propagating the data.
Advantage
This arrangement of the network nodes makes it is possible to
transmit data from one node to many other nodes at the same
time.
Disadvantage
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.
2/3
12/9/13
Advantages
A fault in one terminal on the network will not effect other nodes,
as the data has multiple redundancy paths that can be used.
Data 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.
Disadvantage
It requires a large amount of wiring.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_6.html
3/3
12/9/13
Computing Environments
5.2 Networks
5.2.4 Network Programming
Computer network programming involves writing computer
programs that communicate with each other across a computer network. We
need two separate programs for this. The Client program initiates the
communication and The server program which waits or listens for the
communication from client. Both endpoints of the communication flow are
called network sockets. Network programming is also known as socket
programming.
Network Programing can be implemented using any language
which needs to provide following network layer functions. Refer Figure 5.13.
socket() creates a new socket, identified by an integer number, and
allocates system resources to it.
bind() is used on the server side to associate a socket with a socket
address structure, that is a specified local port number and IP
address.
listen() is used on the server side and it causes a bound TCP
socket to enter listening state.
connect() is used on the client side to assign a free local port
number to a socket. For TCP socket, it causes an attempt to
establish a new TCP connection.
accept() is used on the server side to accept a received incoming
attempt to create a new TCP connection from the remote client.
It creates a new socket associated with the socket address pair of
this connection.
send()-recv(), write()-read() or sendto()-recvfrom() can be used to
send and receive data to/from a remote socket.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_7.html
1/3
12/9/13
2/3
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.3_networks_7.html
3/3
12/9/13
Computing Environments
5.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 World Wide Web 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 (requesting data or
service) and the other machine works as a host or server (providing the data or
service).
The Internet can be accessed almost anywhere in many ways.
Data cards, mobile phones, hand-held game consoles and cellular routers
provide wireless connection to the Internet.
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.4_internet_1.html
2/2
12/9/13
Computing Environments
5.3 Internet
5.3.1 Internet Protocols
A protocol is a common means or rules for unrelated objects to
communicate with each other. A 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.
Any 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 Protocol. 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. (Refer Figure 5.15). The layers are as follows:
Application Layer - It is the space for the application-specific
networking methods used in software applications like a web
browser program.
Transport layer - It connects applications on different hosts via the
network (like clientserver model) with appropriate data
exchange methods.
Internet layer - It enables computers to identify and locate each
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.4_internet_2.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.4_internet_2.html
2/2
12/9/13
Computing Environments
5.3 Internet
5.3.2 Internet Routing
IP forwarding also known as Internet routing is a process used to
determine the path for your data contained in structures called datagrams or
packets (refer glossary) . The process uses routing information to make decisions
and is designed to send a packet over multiple networks.
Internet Service Providers (ISPs are the organizations that provide
access to internet) connect their customers to those of other ISPs.
At the top of the routing hierarchy are Tier-1 networks held by large
telecommunication companies which exchange traffic directly across to all other
Tier-1 networks via agreements such that they don't have to pay each other for the
data transferred every now and then .
Tier-2 networks buy Internet transit from Tier-1 ISP to reach the global
Internet. That is, to reach a remote network, the smaller ISPs have to connect to first
Tier-1 network which in turn may be connected to that remote network. For this
connectivity they have to pay some amount.
ISPs generally use a single upstream provider for connectivity. They
may use multihoming (refer glossary) to provide protection from problems with
individual links.
Internet exchange points hold the physical connections between
multiple ISPs.
Computers and routers use routing tables (Refer Figure 5.17) to direct
IP packets among locally networked machines. These tables can be constructed
manually or automatically via DHCP (Dynamic Host Configuration Protocol) for an
individual computer or a routing protocol for routers themselves. In single-homed
networks, a default route usually points up toward an ISP providing transit. The
higher-level ISPs use the Border Gateway Protocol (refer glossary) to determine
paths to any given range of IP addresses across the complex connections of the
global Internet.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.4_internet_3.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.4_internet_3.html
2/2
12/9/13
Computing Environments
5.4 Websites
A website is a set of related web pages containing information in form
of text, images, audio, video etc. A website is hosted on one or more web server(s)
and can be accessed by internet. World Wide Web (WWW) is the term used to refer
collection of all public websites.
A web page is a single document written in plain text. It is formatted
using instructions of Hypertext Markup Language (HTML).
The general features of a website are described as follows:
A protocol is a common means or rules for unrelated objects to
communicate with each other. A 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.
A website can be owned by an organization or an individual also.
Websites may host static content that remains same for all the viewers
or they may host dynamic content that changes as per the visiting
user's preferences.
To access a website, we need its address. For example, www.tcs.com
The letters in the website address after the last dot(.) indicates the type
of websites. For example, .com means Commercial Organization, .edu
refers to educational sites, .gov is for government websites, .jobs
means job websites, etc.
A website is accessed using Hypertext Transfer Protocol (HTTP) . It may
also use encryption (HTTP Secure, HTTPS (refer glossary) ) to provide
security and privacy.
The user's web browser understands the HTML instructions and
displays the page content accordingly.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.5_introduction-to-websites_1.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.5_introduction-to-websites_1.html
2/2
12/9/13
Computing Environments
5.4 Websites
5.4.1 Static website
A static website usually displays the same information (static
information) to all visitors. It is similar to a printed brochure.
It provides
considerable long period.
consistent
and
standard
information
for
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.5_introduction-to-websites_2.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.5_introduction-to-websites_2.html
2/2
12/9/13
Computing Environments
5.4 Websites
5.4.2 Dynamic Website
A dynamic website has the ability to change or customize itself
frequently and automatically at some specific time interval or based on some
criteria.
Dynamic websites offer dynamism in two aspects : Code and
Content. The dynamic code execution is not visible to the user. The user can
see the dynamic content only.
Dynamic code - The code is executed on the fly based on some user
event. Scripting languages like Javascript, Ajax are used for this.
A 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.
Direct 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
personalized to the requirements of the user.
Dynamic content - The web page content keeps on varying based
on some criteria, either predefined rules or variable user input.
For example, a news website can use a
predefined rule which tells it to display all
news articles for today's date and for your
country or location only.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.5_introduction-to-websites_3.html
1/2
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.5_introduction-to-websites_3.html
2/2
12/9/13
Computing Environments
Summary
Computing Environment is a collection of computers, and various
software in a network. All these computers collaborate with
each other for storing,processing and exchanging electronic
information.
Mainframe computing environment is capable of doing bulk
calculations with very high level of accuracy,security and speed.
Mainframe programs are written using COBOL and JCL. We need
a TSO (refer glossary) user id to access the time slot on a
mainframe server.
A computer network joins two or more computing devices so that
they can communicate with each other. Networks can be of two
types that is, wired or wireless.
Twisted pair, Coaxial cables and Optic fiber technologies are used
to connect a wired network.
Terrestrial Microwave, Satellites, Spread Spectrum and Infrared
technologies are used to connect various computing devices
without wires.
Computer networks can have their nodes connected in forms like
Bus, Star Ring, Mesh or Fully Connected topology.
Network or Socket 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 requests
from the client.
Internet connects computers across the world. It is based on
protocols. Each computer in the internet is identified by an IP
address.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.6_summary.html
1/3
12/9/13
2/3
12/9/13
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.6_summary.html
3/3
12/9/13
Computing Environments
Glossary
Term used
Description
Border
Gateway
Protocol
Bridge
Crosstalk
Datagram
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.7_glossary.html
1/4
12/9/13
Encryption
Enterprise
Resource
Planning
Ethernet
Files
Gateway
Large
scale,high
end
commercial
system
architectures
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.7_glossary.html
2/4
12/9/13
Massive
throughput
MVS
Operating
system
OFDM
Packet
Protocol
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.7_glossary.html
3/4
12/9/13
Router
Spread
Spectrum
In telecommunication and radio communication, spreadspectrum techniques are methods by which a signal (For
example, an electrical, electromagnetic, or acoustic signal)
generated with a particular bandwidth is deliberately spread in
the frequency domain, resulting in a signal with a wider
bandwidth.
TSO
WYSIWYG
Acronym for What You See Is What You Get. It implies a user
interface that allows the user to view something very similar to
the end result while the document is being created.
https://aspire.tcs.com/aspire/courses/introduction_to_computer_systems/module5/session5.7_glossary.html
4/4