Computers Notes

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

NATIONAL UNIVERSITY OF SCIENCE AND TECHNOLOGY

DEPARTMENT OF COMPUTER SCIENCE

Information Technology and Computer Applications


Course code SCS1100.

Important Terms

Computer Science is the study of the theory, design, and implementation of algorithms
for manipulating data and information.

Computational Science is a field of applied computer science, i.e., the application of


computer science to solve problems across a range of disciplines. It combines computer
simulation, scientific visualization, mathematical modeling, computer programming and data
structures, networking, database design, symbolic computation, and high performance
computing with various disciplines

Computing involves the designing and building hardware and software systems for a wide range
of purposes; processing, structuring, and managing various kinds of information; doing scientific
studies using computers; making computer systems behave intelligently; creating and using
communications and entertainment media; finding and gathering information relevant to any
particular purpose. The various computing disciplines are shown in the following diagram.

Computing Disciplines

Pre-1990s:

Adapted from the ACM Computing Curriculum, 2005


Computing Disciplines Explained
I/ Computer Engineering (CE) is concerned with the design and construction of
computers and computer-based systems. It involves the study of hardware, software,
communications, and the interaction among them. It focuses on the theories, principles,
and practices of traditional electrical engineering and mathematics and applies them to
the problems of designing computers and computer-based devices.

II/ Information Systems (IS) focuses on integrating information technology solutions and
business processes to meet the information needs of businesses and other enterprises, enabling
them to achieve their objectives in an effective, efficient way. This discipline’s perspective on
information technology emphasizes information, and views technology as an instrument for
generating, processing, and distributing information

III/ Information Technology (IT) prepares students to meet the computer technology needs of
business, government, healthcare, schools, and other kinds of organizations. It focuses on
technology and the people who use that technology

IV/ Software Engineering (SE) is the discipline of developing and maintaining software systems
that behave reliably and efficiently, are affordable to develop and maintain, and satisfy all the
requirements that customers have defined for them.

More Terms
Data, Information, Knowledge

Data- bits of factual information.

Information- has been described as all ideas, facts and imaginative works of the mind
that have be communicated, recorded, published and distributed formally or informally.
Simply information is anything, which meets one’s need to know something.

Whilst these two can be used interchangeable they do not mean the same thing.

Knowledge - The sum or range of what has been perceived, discovered, or learned.

Information Society refers to a society in which the creation, distribution, and


manipulation of information has become the most significant economic and cultural
activity through the use of computers and telecommunications networks and related tools.
OR
Information Society is a society characterized by a high level of information intensity in
the everyday life of most citizens, in most organizations and workplaces; by the use of
common or compatible technology for a wide range of personal, social, educational and
business activities, and by the ability to transmit, receive and exchange digital data
rapidly between places irrespective of distance (IBM Community Development
Foundation, 1997).

A knowledge society generates, processes, shares and makes available to all members of
the society knowledge that may be used to improve the human condition. A knowledge
society differs from an information society in that the former serves to transform
information into resources that allow society to take effective action while the latter only
creates and disseminates the raw data. The capacity to gather and analyze information
has existed throughout human history. However, the idea of the present-day knowledge
society is based on the vast increase in data creation and information dissemination that
results from the innovation of information technologies.

Computer Science is the study of computation and computer technology, hardware, and
software. Computer scientists create abstractions of real-world problems that can be
understood by computer users and, at the same time, that can be represented and
manipulated inside a computer. Abstraction in computing is the simplification, the
replacement of a complex and detailed real-world situation by an understandable model
within which we can solve a problem. That is, we “abstract away” the details whose
effect on the solution to a problem is minimal or nonexistent, thereby creating a model
that lets us deal with the essence of the problem.

Computer Generations – History of Computers


A generation refers to the state of improvement in the development of a product. This
term is also used in the different advancements of computer technology. With each new
generation, the circuitry has significantly changed both in size and design than its
predecessor

The First Generation: 1946-1958 (Vacuum Tube Age)


The first generation computers were huge, slow, expensive, and unreliable. Required a lot
of power to run and produced so much heat that adequate air conditioning was critical to
protect the parts from overheating. The computers occupied large space some were as big
as a house! They could consume electricity that could probably light the whole of a
suburb. The weight was at the region of 20 tons.

General Features of First Generation Computers


 Computers in this generation did from 2 000 to 16 000 additions per second
 Had main memory from 128 bytes to 2 kilobytes (2 048 bytes)
 All computers of this generation used vacuum tubes to perform calculations
 Vacuum tubes are expensive because of the amount of materials and skill needed
to make them.
 Vacuum tubes get hot and burn out light an incandescent light bulb.
 All computers in this generation were very large machines
 Needed special rooms to house them with air conditioning because of the heat
generated by the vacuum tubes
 All required specially trained technicians to run and maintain them
 The software used in this generation was unsophisticated and machine oriented.
(Machine language programming) The programmers had to keep track of where
the instructions and data were stored in memory. Using assembly language was
efficient for the computer and difficult for the programmer.
 Input was based on punched cards and paper tape, and output was displayed on
printouts.
The ENIAC used thousands of vacuum tubes, which took up a lot of space and gave off a
great deal of heat just like light bulbs do. The ENIAC led to other vacuum tube type
computers like the EDVAC (Electronic Discrete Variable Automatic Computer) and the
UNIVAC I (Universal Automatic Computer).

The Second Generation: 1959-1964 (Transistor Era)


Computers of this generation were characterized by transistors, which replaced vacuum
tubes. These transistors were much smaller and gave off virtually no heat compared to
vacuum tubes. The use of transistors increased the switching speed (speed of processing)
of the computers and was long lasting and reliable as well. Storage improved with the
introduction of magnetic disk storage and magnetic cores for main memory. High speed
card readers, printers and magnetic tapes were also introduced. The measure of time was
in microseconds. Just the same as first generation, a particular computer was designed to
process either scientific or business oriented problems but not both. Programming the
computer improved from machine language to Assembly language. This allowed the
programmers to use mnemonics (natural language like instructions) operation codes for
instruction operation and symbolic names for storing variables. Compilers (more natural
language like instruction) were also introduced.

General Features of the Second Generation


 Smaller, Faster, More reliable, Much cheaper to build than the First Generation of
computers
 Used transistors instead of vacuum tubes for performing calculations
 6,000 to 3,000,000 operations per second
 6 kilobytes to 1.3 megabytes of main memory
 Contained in four cabinets about 6 feet high by 4 feet wide, each weighing 250
pounds
 Computers become common in larger businesses and universities
 Second-generation computers still relied on punched cards for input and printouts
for output.
 Second-generation computers moved from cryptic binary machine language to
symbolic, or assembly, languages, which allowed programmers to specify
instructions in words.

The Third Generation: 1965-1970 (Integrated Circuits Era)


Transistors were a tremendous breakthrough in advancing the computer. However no
one could predict that thousands even now millions of transistors could be compacted in
such a small space. The integrated circuit, or as it is sometimes referred to as
semiconductor chip, packs a huge number of transistors onto a single wafer of silicon.
Placing such large numbers of transistors on a single chip reduced the physical size and
also the processing speed on the other hand lowering the cost.

The third generation computers could carry out instructions in billionths of a second
(nanoseconds) New mass storage, such as the data cell, was introduced during this
generation boosting storage capacity to megabytes. Drum and disk capacity and speed
were improved. Portable disk pack and high-density magnetic tapes came into use.
Applications using online processing, real-time processing, time-sharing, multiprocessing
and teleprocessing became widely accepted.

General Features of the Third Generation


 Used integrated circuits - many transistors on one piece of silicon
 Computers became: Smaller, Faster, More reliable, Lower in price
 Size of a stove or refrigerator, some can fit on desktops
 Can do 100,000 to 400,000,000 operations per second
 Computers become very common in medium to large businesses

Instead of punched cards and printouts, users interacted with the third generation
computers through keyboards and monitors and interfaced with an operating system,
which allowed the device to run many different applications at one time with a central
program that monitored the memory and input-output devices. Computers for the first
time became accessible to a mass audience because they were smaller and cheaper than
their predecessors, ubiquitous

The Fourth Generation: 1971-Today (Microprocessor Era)

This generation can be characterized by both the jump to monolithic integrated circuits
(millions of transistors put onto one integrated circuit chip) and the invention of the
microprocessor By putting millions of transistors onto one single chip more calculation
and faster speeds could be reached by computers. Because electricity travels about a
30cm in a single nanosecond the smaller the distance the greater the switching speed

However what really triggered the tremendous growth of computers and its significant
impact on our lives is the invention of the microprocessor. Intel corporation company
invented a chip the size of a pencil eraser that could do all the computing and logic work
of a computer. The microprocessor was made to be used in calculators, not computers. It
led, however, to the invention of personal computers, or microcomputers.
On the other side the Motorola started producing the MC68XX series of microprocessors.
This led to the development of the Apple Macintosh computers, which is a competitor to
Intel Corporation.

General Features of Fourth Generation Computers


 Used large scale to very large scale integrated circuits
 More than one IC on a silicon chip
 Can do more than one function
 Computers become smaller, faster, more reliable, and lower in price
 Can do 500,000 to 1,000,000,000 operations per second
 Computers become very common in homes and business

As these small computers became more powerful, they could be linked together to form
networks, which eventually led to the development of the Internet. Fourth generation
computers also saw the development of GUIs (Graphic User Interface), the mouse and
handheld devices.

Fifth Generation (1984-1990) Present and Beyond: Artificial Intelligence


The development of the next generation of computer systems is characterized mainly by
the acceptance of parallel processing. Until this time parallelism was limited to pipelining
and vector processing. The fifth generation saw the introduction of machines with
multiple processors that could all be work on different parts of a single program.

The major thrust of this generation was based on Artificial Intelligence. Voice
recognition, machine vision, and machine perception. Computers that could recognize
and respond to natural language input and are capable of learning and self-organization.

This present generation has platform from the many gains in parallel computing, both in
the hardware area and in improved understanding of how to develop algorithms to exploit
diverse, massively parallel architectures. Parallel systems now compete with vector
processors in terms of total computing power and most expect parallel systems to
dominate the future!

Future Computer Generations

 Hard to Predict
 Most inventions or technologies that have changed computers are not usually
predicted too far in advance of when they are first used
 It will become lower in price
 Computers will become smaller and faster
 Computers will have larger memories and more storage space
 Computers will become an integral part of everyone's life
 Computer technology and the World Wide Web will greatly reduce the distance
between people and cultures in the world
 People will connect to information at any place or time
 Libraries and other information sources will always be open
 Cell phone technology will let you connect to information and people any where
 Computers Will Become Small Enough to Wear, the technology is already being
developed
 Research is being done to find the best place to put computers so they will not
interfere with the body's movement
 The computer will always be with you to help you in tasks, communicate, and
find information
To sum it up the developments and advancement in computer technology has in store
PAVARSIVE computing, where everything will be capable of sensing, acting, feeling
and communicating. For example scenarios where a toy can provide children with water
to drink, comfort them when crying, play and help them do their homework should be
common.
Types of computers

I/ Supercomputer
These are special purpose computers. Fastest & more powerful & most expensive, With
processing speeds of 200 teraflops, performing 35 000 calculations per sec. Used in a
heavy research environment where there is excessive number crunching.
Used for tasks such as weather forecasting, climate research (including research into
global warming), molecular modeling (computing the structures and properties of
chemical compounds, biological macromolecules, polymers, and crystals), physical
simulations (such as simulation of airplanes in wind tunnels, simulation of the detonation
of nuclear weapons, and research into nuclear fusion), cryptanalysis, and the like. Major
universities, military agencies and scientific research laboratories are heavy users

Characteristics
 Perform multiple tasks
 Support many users
 High processing speeds
 Expensive and need cooling mechanisms

II/ Mainframe computer- Mainframe is an industry term for a large computer, larger
than a refrigerator. The name comes from the way the machine is build up: all units
(processing, communication etc.) were hung into a frame. Thus the maincomputer is
build into a frame, therefore: Mainframe

Characteristics
o A mainframe has 1 to 16 CPU's (modern machines more)
o Memory ranges from 128 Mb over 8 Gigabyte on line RAM
o Its processing power greater than 1 trillion instructions pers sec.
o It has often-different cabinets for
 Storage
 I/O
 RAM

Their main purpose is to run commercial applications of Fortune 1000 businesses and
other large-scale computing purposes.
Think here of banking and insurance businesses where enormous amounts of data are
processed, typically (at least) millions of records, each day.

Properties of the mainframe


o It manages a large number of users
o Distributes the sheer workload that can be handled by the machine over
different processors and in/output devices.
o All processes are running on the host and not on your terminal.
o Output is sent to your terminal through a program running (in background)
on the host (mainframe). Nothing else goes over the line. It is like you are
connected to a large computer by long wires. That is also the reason why it
seems that your keyboard typing sometimes appears slower on your
monitor then you actually type

III/ Minicomputer (Midrange computer) eg server


is a largely obsolete term for a class of multi-user computers which make up the middle
range of the computing spectrum, in between the largest multi-user systems (traditionally,
mainframe computers) and the smallest single-user systems (microcomputers or personal
computers). More modern terms for such machines include midrange systems (common
in IBM parlance), workstations (common in Sun Microsystems and general UNIX/Linux
parlance), and servers.

Characteristics
 Large storage spaces
 Moderately high processing speeds.
 Less expensive and they are mainly used as network servers.

IV/ Workstation
Similar to a desktop, but has more powerful mathematical and graphics processing
capabilities and can perform more complicated tasks in less time. Typically used for
software development, Web development, engineering and –business tools.

V/ Microcomputer or Personal computer


Although there is no rigid definition, a microcomputer (sometimes shortened to micro)
is most often taken to mean a computer with a microprocessor (µP) as its CPU (central
processing unit). Another general characteristic of these computers is that they occupy
physically small amounts of space.
The microcomputer came after the minicomputer, most notably replacing the many
distinct components that made up the minicomputer's CPU with a single integrated
microprocessor chip.
Desktop computers, video game consoles.

VI/ Tablet
A pen based computer that provides the screen capabilities of a PDA, with the
functionalities of a laptop. Uses pen or stylus to write notes on the screen and touch the
screen to perform functions such as clicking on a link while visiting a website.

VI Laptop Computers
A fully functional PC designed to be carried around and to run on a battery. Similar to all
handheld devices, may all be considered examples of microcomputers according to the
technical definition given above.
VII/ Personal Digital Assistant (PDA)
Small handheld computers, which perform simple tasks such as taking notes, scheduling
appointments, and maintaining an address book and a calendar. The PDA screen is touch
sensitive allowing a user to write directly on the screen, capturing what is written.

Number Systems, Arithmetic and Data Representation

A/ Decimal Number System

B/ Binary Number System (Unsigned Numbers (positive))

A binary number is expressed with a string of 0’s and 1’s and a possible binary point
such as 11010.11.

Converting Binary to Decimal;


The decimal equivalent of a number can be found by expanding it to a power series with
a base of 2.For example, to convert 11010 to decimal;

11010= 1*24+1*23+0*22+1*21+0*20 = 26
AND
110101.11= 32+16+4+1+0.5+0.25 = 53.75

11010= 1*24+1*23+0*22+1*21+0*20 = 26
110101.11= 32+16+4+1+0.5+0.25 = 53.75

Exercise: - Convert the numbers below to decimal


a) 11.111 b) 0.0111 c) 101.101

Converting Decimal to Binary


The method for converting a decimal number to binary can also be used to convert from
decimal to any number base. It involves using successive division by the radix until the
dividend reaches 0. At each division, the remainder provides a digit of the converted
number, starting with the least significant digit.

Example: 35 to binary

2 |35 = 17 rem 1 Least significant


2|17 = 8 rem 1
2|8 = 4 rem 0
2|4 = 2 rem 0
2|2 = 1 rem 0
2|1 = 0 rem 1 Most significant

Therefore 3510 = 1000112


Converting Decimal Fractions to Binary
To convert the decimal fractional part into binary, multiply the fraction part of the
decimal number by 2 continuously, until the fraction becomes 0 or a recursion is hit. At
each point, take the whole number to be the binary fraction; 0.6875 * 2 = 1.3750, giving
first number to the right of the point to be 1. 0.375*2 =0.75, second number is 0. …….

Exercise: - Convert to binary: a) 0.1875 b) 0.375 c) 7.1625

Hexadecimal numbers
In addition to binary, another number base that is commonly used in digital systems is
base 16. Hexadecimal numbers are often used to represent instruction codes. For any
number base greater than ten, a problem occurs because there are more than ten symbols
needed to represent the numerals for that number base.The letters A to F are used to
represent digits 10 - 15, i.e. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F ;
such that. 2B = (2*16) + 11 = 43.
To change a binary to a hex, group the digits in fours starting from the right: e.g.
10 1101 0110
2 D 6
So 1011010110 = 2D6 in hexadecimal.

Convert the following binary numbers into hexadecimal


a) 10101001101 b) 1110110101 c) 110011111

Hexadecimal numbers can be easily changed to binary:


Convert 13C to binary

1 3 C
1 0011 1100
So 13C = 100111100
Convert the following hexadecimal numbers into binary

a) 5BA b) 2F1 c) 96F


Convert the following hexadecimal number into binary:
a) D78 = 13*16^2 + 7*16 + 8 = 3448 b) AAF c) 34E

Hexadecimal Number Representation in Programming


In most programming languages, there are several conventions used to represent Hex,
depending on the language. In the C and C++ languages, hexadecimal constants are
represented with a ‘0x’ preceding the number, as in: 0x317F, or 0x1234, or 0xAF. In
assembler programming languages that follow the Intel style, a hexadecimal constant
begins with a numeric character (so that the assembler can distinguish it from a variable
name), a leading ‘0’ being used if necessary. The letter ‘h’ is then suffixed onto the
number to inform the assembler that it is a hexadecimal constant. In Intel style assembler
format: 371Fh and 0FABCh are valid hexadecimal constants. Note that: A37h isn’t a
valid hexadecimal constant. It doesn’t begin with a numeric character, and so will be
taken by the assembler as a variable name. In assembler programming languages that
follow the Motorola style, hexadecimal constants begin with a ‘$’ character. So in this
case: $371F or $FABC or $01 are valid hexadecimal constants.

Binary Coded Decimal (BCD)


BCD provides a means of storing decimal numbers in a computer, in a way that they can
be converted to binary. The decimal numbers are represented by a code which contains
0’s and 1’s, hence it is easy to perform arithmetic operations with decimal numbers when
they are stored in the computer in coded form. A binary code is a group of n bits that
assume up to 2n distinct combinations of 0’s and 1’s. The code most used for decimal
digits is the straight binary assignment commonly known as the binary coded decimal
(BCD). A number with n decimal digits will require 4n bits in BCD. Decimal 396 is
represented in BCD with 12 bits as 0011 1001 0110 with each group of 4 bits
representing one decimal digit.

A decimal number in BCD is the same as its equivalent binary number only when the
number is between 0 and 9.

Convert 185 to its BCD equivalent


185 = (0001 1000 0101) while the binary equivalent 185 = 10111001

Convert the following decimal numbers into BCD


a) 889 b) 334 c) 999

The binary coded decimal (BCD) representation of numbers uses 4 bits to store a digit or
a sign.
.

There are a number of variations on the BCD representation, namely packed and
unpacked. An unpacked BCD number has only a single decimal digit stored in each data
byte. In this case, the decimal digit will be in the low four bits and the upper 4 bits of the
byte will be 0. In the packed BCD representation, two decimal digits are placed in each
byte. Generally, the high order bits of the data byte contain the more significant decimal
digit.

An example: The following is a 16 bit number encoded in packed BCD format:


01010110 10010011

This is converted to a decimal number as follows:

0101 0110 1001 0011


5693

The value is 5693 decimal

Another example: The same number in unpacked BCD (requires 32 bits)

00000101 00000110 00001001 00000011


5693
The use of BCD to represent numbers isn’t as common as binary in most computer
systems, as it is not as space efficient.

Fixed Precision and Overflow.

Numbers in computers are typically represented using a fixed number of bits. These sizes
are typically 8 bits, 16 bits, 32 bits, 64 bits ,etc. These sizes are generally a multiple of 8,
as most computer memories are organized on an 8 bit byte basis. Numbers in which a
specific number of bits are used to represent the value are called fixed precision
numbers. When a specific number of bits are used to represent a number, that determines
the range of possible values that can be represented. E. g, there are 256 possible
combinations of 8 bits, therefore an 8 bit number can represent 256 distinct numeric
values and the range is typically considered to be 0-255. Any number larger than 255
can’t be represented using 8 bits. Similarly, 16 bits allows a range of 0-65535.When fixed
precision numbers are used, (as they are in virtually all computer calculations) the
concept of overflow must be considered. An overflow occurs when the result of a
calculation can’t be represented with the number of bits available. For example when
adding the two eight bit quantities: 150 + 170, the result is 320. This is outside the range
0-255, and so the result can’t be represented using 8 bits. The result has overflowed the
available range. When overflow occurs, the low order bits of the result will remain valid,
but the high order bits will be lost. This results in a value that is significantly smaller than
the correct result.
When doing fixed precision arithmetic (which all computer arithmetic involves) it is
necessary to be conscious of the possibility of overflow in the calculations.

Signed and Unsigned Numbers.


So far, we have only considered positive values for binary numbers. When a fixed
precision binary number is used to hold only positive values, it is said to be unsigned. In
this case, the range of positive values that can be represented is 0 - 2n-1, where n is the
number of bits used. It is also possible to represent signed (negative as well as positive)
numbers in binary. In this case, part of the total range of values is used to represent
positive values, and the rest of the range is used to represent negative values.

Two’s Complement (Signed Binary Number Representation)


There are several ways that signed numbers can be represented in binary, but the most
common representation used today is called two’s complement. Two’s complement is a
way of interpreting and assigning meaning to a bit pattern contained in a fixed precision
binary quantity or is also used to refer to an operation that can be performed on the bits of
a binary quantity. As an operation, the two’s complement of a number is formed by
inverting all of the bits and adding 1. In a binary number being interpreted using the
two’s complement representation, the high order bit of the number indicates the sign. If
the sign bit is 0, the number is positive, and if the sign bit is 1, the number is negative.
For positive numbers, the rest of the bits hold the true magnitude of the number. For
negative numbers, the lower order bits hold the complement (or bitwise inverse) of the
magnitude of the number. It is important to note that two’s complement representation
can only be applied to fixed precision quantities, that is, quantities where there are a set
number of bits.
Two’s complement representation is used because it reduces the complexity of the
hardware in the arithmetic-logic unit of a computer’s CPU. Using a two’s complement
representation, all of the arithmetic operations can be performed by the same hardware
whether the numbers are considered to be unsigned or signed. The bit operations
performed are identical, the difference comes from the interpretation of the bits. The
interpretation of the value will be different depending on whether the value is considered
to be unsigned or signed.

For example: Find the 2’s complement of the following 8 bit number 00101001
11010110 First, invert the bits
+ 00000001 Then, add 1
= 11010111

The 2’s complement of 00101001 is 11010111

Another example: Find the 2’s complement of the following 8 bit number
10110101
01001010 Invert the bits
+ 00000001 then add 1
= 01001011
The 2’s complement of 10110101 is 01001011

The counting sequence for an eight bit binary value using 2’s complement representation
appears as follows:
01111111 7Fh 127 largest magnitude positive number
01111110 7Eh 126
01111101 7Dh 125

00000011 03h
00000010 02h
00000001 01h
00000000 00h
11111111 0FFh -1
11111110 0FEh -2
11111101 0FDh -3

10000010 82h -126
10000001 81h -127
10000000 80h -128 largest magnitude negative number
Notice in the above sequence that counting up from 0, when 127 is reached, the next
binary pattern in the sequence corresponds to -128. The values jump from the greatest
positive number to the greatest negative number, but that the sequence is as expected
after that. (i.e. adding 1 to –128 yields –127, and so on.). When the count has progressed
to 0FFh (or the largest unsigned magnitude possible) the count wraps around to 0. (i.e.
adding 1 to –1 yields 0).
ASCII Character Encoding (Make Notes)
Converting ASCII to BCD

COMPUTER HARDWARE
Designed around the Computerized Data Processing Cycle which is: -

Input-Processing-Output-Storage-Communication

Computer Peripheral Devices


These are plugged into the computer system based on the user's computing needs.

Input Devices

When using a computer the data and computer commands for processing the data have to
be entered into the computer system. Input into the computer can either be in the form of
text/graphics, control signals or audio.

The most common input devices used by the computer are the keyboard, mouse, and
touch sensitive screen. The keyboard allows entry of textual information while the
mouse allows the selection of a point on the screen by moving a screen cursor to the
point and pressing a mouse button. Using the mouse in this way allows the selection from
menus on the screen etc. and is the basic method of communicating with many current-
computing systems. Alternative devices to the mouse are tracker balls, light pens and
touch sensitive screens. Touch sensitive screens allows specialized devices or human
touch to be used for data entry.

However there are other devices which can be used as input, such that the user has to
analyze their environment and choose from the list.

Output Devices
The most common output device is a monitor, which is usually a Cathode Ray Tube
device, which can display text and graphics. If hard-copy output is required then some
form of printer is used.

Computer Storage Media


Storage capacities
Term Capacity
 Byte 8 bits
 Kilobyte (KB) 1 024 bytes
 Megabyte (MB) 1 024 kilobytes
 Gigabyte 1 024 MB
 Terabyte (TB) 1 024 GB (1012 bytes)
 Pentabyte (PB) 1 024 Terabyte (1015 bytes)
 Exabyte (EB) 1 024 Pentabyte(1018 bytes)
Divided into primary storage and secondary storage.

Secondary storage-- or external memory, is computer memory that is not directly


accessible to the central processing unit of a computer, requiring the use of computer's
input/output channels. Secondary storage is used to store data that is not in active use.
Secondary storage is usually slower than primary storage, or internal memory, but also
almost always has higher storage capacity and is non-volatile, which makes it perfect for
the preservation of stored information in an event of power loss.
-Data stored on secondary storage devices (such as magnetic tapes, disks, and drums) can
be accessed only in a predetermined order due to constraints in their mechanical design.

Magnetic disc--a flat rotating disc covered on one or both sides with some magnetizable
material. The two main types are the hard disk and the floppy disk.

Hard disc (most common form of external memory), which is permanently installed in
the computer and will typically, have a capacity of hundreds of megabytes. A hard disc is
a flat, circular oxide-coated disc that rotates continuously. Information is recorded on the
disc by magnetizing spots of the oxide coating on concentric circular tracks. An access
arm in the disc drive positions a read/write head over the appropriate track to read and
write data from and to the track. This means that before accessing or modifying data the
read/write head must be positioned over the correct track.
Adapted from Elmasri & Navathe, Fundamentals of Database Systems

Measuring disk speed:-

Access time – consists of:


◦ Seek time – time it takes to reposition the arm over the correct track.
◦ (Rotational) latency time – time it takes for the sector to be accessed to
appear under the head.
◦ Data-transfer rate – the rate at which data can be retrieved from or stored
to the disk.
 Access time = seek time + rotational delay + transfer time

Disk availability
 Mean time to failure (MTTF) – the average time the disk is expected to run
continuously without any failure.
◦ Typically 5 to 10 years
◦ Probability of failure of new disks is quite low, corresponding to a
theoretical MTTF” of 30,000 to 1,200,000 hours for a new disk
 E.g., an MTTF of 1,200,000 hours for a new disk means that given
1000 relatively new disks, on an average one will fail every 1200
hours
◦ MTTF decreases as disk ages

Magnetic tape is a non-volatile storage medium consisting of a magnetic coating on a


thin plastic strip. Nearly all recording tape is of this type, whether used for video, audio
storage or general purpose digital data storage using a computer.

A floppy disk is a data storage device that is composed of a disk of thin, flexible
("floppy") magnetic storage medium encased in a square or rectangular plastic shell.
Floppy disks are read and written by a floppy disk drive or FDD

Optical discs; Flat circular device usually made of polycarbonate material. The disk
stores data in digital form, through the use of lands and pits within a flat surface.
These are burned into a master disk by a high powered laser. The master disk is
reproduced mechanically by a stamping process, where after the data surface is protected
by a clear coating. Data is read by sensing the reflection of laser light. A pit scatters the
light, a land reflects the light.

Forms of Optical disks:-


Compact disks (CDs)
CD-ROM (an abbreviation of "Compact Disc Read-Only Memory") is a compact disc
that contains data accessible by a computer. Has typical memory of 700megabytes.

CD-R: also known as WORM (Write Once, Read Many) used to create custom music
CDs and to archive data
Compact Disc Re-Writable (CD-RW) is a rewritable optical disc format.

DVD - "Digital Versatile Disc" or "Digital Video Disc") is an optical disc storage media
format that can be used for data storage, including movies with high video and sound
quality. Has higher capacities of 4.7 gigabytes.
Three forms of DVD: -
i. DVD-ROM: used to distribute full-length feature films with theatre quality video
and sound
ii. DVD-R: expected to replace CD-R as prices decline
iii. DVD-RAM and DVD-RW: reusable DVDs used to develop very large-scale
multimedia projects.

Ideally a DVD can hold more than 6 times capacity than a CD. DVDs are more used by
video, movie and computer software which CDs are liked by music album producers.
DVD players can play both DVDs and CDs which CD players can only play CDs. The
capacity is the biggest issue of the two. DVDs have higher rotational speeds.

Other forms of storage:-

Primary storage, or internal memory, is computer memory that is accessible to the


central processing unit of a computer without the use of computer's input/output
channels. Primary storage is used to store data that is likely to be in active use. Primary
storage is typically very fast, in the form of RAM which is volatile, and ROM which is
not. Typically, ROM must be completely erased before it can be rewritten, making large
scale use impractical, if not impossible.

Random-Access Memory (RAM) refers to data storage formats and equipment that
allows the stored data to be accessed in any order — that is, at random

A unique number, much like a mailbox, is used to address memory locations. The
memory locations may contain only one instruction or piece of data. When data is written
back to memory, previous contents of that address are destroyed
RAM can either be Static or Dynamic
• Static RAM
– Fast (active drive)
– Less dense (4-6 transistors/bit)
– Stable (holds value as long as power applied)
• Dynamic RAM
– Data stored as charge in capacitance
– Slower
– High density (1 transistor/bit)
– Unstable (needs refresh
Neither device holds data if power removed

ROM – Read-Only Memory a type of data storage device, which is manufactured with,
fixed contents. ROM holds instructions necessary to start your computer.
The instructions located in this part of the computer are set when your computer is built,
and you can't change them. Data is stored in ROM chips during manufacture and can
either be of the PROM or EPROM sub-class of ROM chips. At POST( Power On Self
Test) the , the machine runs a self-test program stored in ROM.
The POST will determine if the computer’s RAM, disk drives, peripheral devices, and
other hardware components are properly working. If the diagnostic determines that
everything is in working order, the boot sequence continues.

PROM –Programmable Read-Only Memory- kind of ROM, which can be written


using a PROM programmer. The contents of each bit are determined by a fuse or anti
fuse. The memory can be programmed once after manufacturing by "blowing" the fuses,
which is an irreversible process. Blowing a fuse opens a connection while blowing an
anti fuse closes a connection (hence the name). Programming is done by applying high-
voltage pulses, which are not encountered during normal operation.

EPROM, or erasable programmable read-only memory, is a type of computer memory


chip that retains its data when its power supply is switched off. Can be erased only by
exposing it to strong ultraviolet light.

EEPROM ( Electrically Erasable Programmable Read-Only Memory), is a non-volatile


storage chip used in computers and other devices to store small amounts of non volatile
(configuration) data.

Central Processing Unit (CPU)


The Central Processing Unit (CPU) performs the actual processing of data. Computer
CPU's (processors) are composed of thin layers of thousands of transistors. The data
processed by the CPU is obtained, via the system bus, from the main memory. American
Micro Devices (AMD), IBM, Intel, Motorola, SGI and Sun are just a few of the
companies that make most of the CPU's used for various kinds of computers including
home desktops, office computers, mainframes and supercomputers. Modern CPU's are
based on 'integrated chips' technology, where an integrated chip has several types of
components integrated into a single piece of silicon (a single CPU), consisting of one or
more execution cores, the arithmetic logic unit (ALU) , registers, instruction memory,
cache memory and the input/output controller (bus controller). In some cases special
high-speed memory for caching program instructions from RAM is available. Results
from the CPU are then sent back to main memory via the system bus. In addition to
computation the CPU controls and co-ordinates the operation of the other major
components (input and output). The CPU is built using logic gates, and contains a small
number of programs called 'microcode' built into the chip to perform certain basic
processes (like reading data from the bus and writing to a device). Current chips use a
'reduced instruction set' or RISC architectures.

A lot of components go into building modern computers processor and just what goes in
changes with every generation as engineers and scientists find new, more efficient ways
to do old tasks. The list below shows some of the components within the CPU.
 Execution Core(s)
 Data Bus
 Address Bus
 Arithmetic Logic Unit
 Instruction sets / Microcode
 Registers
 Memory Controller
 Cache Memory

The CPU three main components are-:

1. The Control Unit -- controls the fetching of instructions from the main memory
and the subsequent execution of these instructions. Among other tasks carried out
are the control of input and output devices and the passing of data to the
Arithmetic/Logical Unit for computation.
2. The Arithmetic/ Logical Unit (ALU) -- carries out arithmetic operations on
integer (whole number) and real (with a decimal point) operands. It can also
perform simple logical tests for equality and greater than and less than between
operands.

3. Memory – which is made up of registers, cache (A small fast memory holding


recently accessed data, designed to speed up subsequent access to the same data.
Most often applied to processor-memory access but also used for a local copy of
data accessible over a network etc), RAM (modern computer’s main memory
used for holding the currently executing program and its working data) and ROM
() as well as various temporary buffers and other logic.

A block diagram of a simple CPU is shown below.

Executing Programs in the CPU

Fetch
CU gets an instruction
Decode
CU decodes the instruction
Execute
CU notifies the appropriate part of hardware to take action
Control is transferred to the appropriate part of hardware
Task is performed
Store
Control is returned to the CU
Classifying CPUs
1. Trough the number of execution cores

One way of describing a processor is using the number of execution cores in the chip.
The most advanced chips today have eight execution cores. More execution cores means
you can get more work done at the same time, but it doesn't necessarily mean a single
program will run faster. A system with a processor with 8 cores could run an MP3
music, web browser, a graphics program, plus ten more applications without even
seeming to slow down (assuming enough RAM to load all this software at the same
time). More execution cores means more processing capability, but not necessarily more
speed. The most advanced processors available are 64-bit processors with 8 cores,
running as fast as 3-4 gigahertz. Intel has released quad-core 64-bit chips as has AMD.

2. Through the number of processors

Some computers are designed to run more than one processor chip at the same time.
Many companies that manufacture servers make models that accept two, four, eight,
sixteen even thirty two processors in a single chassis. The biggest supercomputers are
running hundreds of thousands of quad-core processors in parallel to do major
calculations for such applications as thermonuclear weapons simulations, radioactive
decay simulations, weather simulations, high energy physics calculations and more.

Registers

Registers have special use depending on the type of a computer, example register names
include: -

PC, program counter


The PC points to memory location that holds the next instruction to be executed;

AC, accumulator
The accumulator is like the display register in a calculator; most operations use it
implicitly as an unmentioned input, and the result of any operation is placed in it.
Macro-level (level 2) programmers do all arithmetic and logical operations through
it; e.g. ADD, you must put operand 1 in AC, operand 2 must come from a memory
location, and the result is put in AC. Of course, micro-level (level 1) programmers
can treat all these registers in a uniform way;

SP, stack-pointer

IR, Instruction Register:


Holds the instruction (the actual instruction data) currently being executed.

TIR, Temporary Instruction Register


Holds temporary versions of the instruction while it is being decoded;
A, B, C, ...F
: General purpose registers; but general purpose only for the micro-programmer,
i.e. the assembly language cannot address them.

Factors affecting CPU speed:-

◦ Register sizes – temp memory area – 32 bit


◦ Memory and computing power - RAM
◦ System clock – Hz – cycles - GHz
◦ The bus sizes– the highway
◦ The data bus – CPU & devices
◦ The address bus – CPU & RAM
◦ Cache memory, number of – L1(CPU resident), L2 (External)

COMPUTER SOFTWARE

Computer software is the programs that enable a computer to perform a specific task.
This includes application which enables a user to perform a task, and system software
which enables other software to run properly, by interfacing with hardware and with
other software.

I/ System Software

Definitions of system software include:


 Programs that control and support operations of a computer system. System
software includes a variety of programs, such as operating systems, database
management systems, communications control programs, service and utility
programs, and programming language translators.

 A set of programs that act together to allow a computer, and other programs, to
function. If system software is stored on non-volatile storage such as integrated
circuits, it is usually termed firmware.

Types of system software


A/ Communications software
Software that is used to control, monitor, manage and communicate with operating
systems, networks, network services, databases, storage and networked applications in an
integrated and cooperative fashion across a network from a central location. This includes
all network management software, server software, security and encryption software, etc.

B/ Data management software


A collection/ suite of software programs that enables storage, modification and extraction
information from a database. There are many different types of DBMSs ranging from
small systems that run on computers to huge systems that run on mainframes, e.g. Oracle.
C/ Development tools and programming software
Software used to assist in the development and/or authoring of computer programs.
Software products that support the professional developer in the design, development,
APand implementation of a variety of software systems and solutions. (Includes all SW
testing tools, program development tools and programming languages software).

D/ Operating system
 A set of programs that lies between applications software and the computer
hardware. It is a software program that manages the hardware and software
resources of a computer
 Conceptually the operating system software is an intermediary between the
hardware and the applications software. Incidentally, the term system software is
sometimes used interchangeably with operating system, but system software
means all programs related to coordinating computer operations. System software
does include the operating system, but it also includes the BIOS software, drivers,
and service programs.
-the diagram below shows the position of the operating system in a computer system

Functions of an operating system

-The first three functions are the main functions of an operating system
(1) manage the computer's resources, such as the central processing
unit, memory, disk drives, and printers,
(2) establish a user interface, and
(3) execute and provide services for applications software

The operating system's tasks, in the most general sense, fall into six categories:

1. Processor management or CPU scheduling--The heart of managing the processor


comes down to two related issues: First, ensuring that each process and application
receives enough of the processor's time to function properly and, second, using as
many processor cycles for real work as is possible. The basic unit of software that
the operating system deals with in scheduling the work done by the processor is
either a process or a thread, depending on the operating system

2. Memory and storage management When an operating system manages the


computer's memory, there are two broad tasks to be accomplished. First, each process
must have enough memory in which to execute, and it can neither run into the memory
space of another process, nor be run into by another process. Next, the different types of
memory in the system must be used properly, so that each process can run most
effectively. The first task requires the operating system to set up memory boundaries for
types of software, and for individual applications. Disk storage is only one of the memory
types that must be managed by the operating system, and is the slowest. Ranked in order
of speed, the memory in a computer system is:

 High-speed cache -- This is fast, relatively small amounts of memory that are
available to the CPU through the fastest connections. Cache controllers predict
which pieces of data the CPU will need next and pull it from main memory into
high-speed cache to speed system performance.

 Main memory --The RAM that you see measured in megabytes when you buy a
computer.
 Secondary memory --This is most often some sort of rotating magnetic storage
that keeps applications and data available to be used, and serves as virtual RAM
under the control of the operating system.

3. Device management --The path between the operating system and virtually all
hardware not on the computer's motherboard goes through a special program called a
driver. Much of a driver's function is as translator between the electrical signals of the
hardware sub-systems and the high-level programming languages of the operating system
and application programs

4. Storage management – see memory management

5. Application Interface –

6. User Interface –

Classification of Operating Systems


Operating systems can be classified as follows:
 Multi-user or time-sharing: Allows two or more users to run programs at the
same time. Some operating systems permit hundreds or even thousands of
concurrent users. All mainframes and minicomputers are multi-user systems, but
most personal computers and workstations are not.

 Multiprocessing: Supports running a program on more than one CPU. (1) Refers
to a computer system's ability to support more than one process (program) at the
same time. Multiprocessing operating systems enable several programs to run
concurrently. UNIX is one of the most widely used multiprocessing systems, but
there are many others, including OS/2 for high-end PCs. Multiprocessing systems
are much more complicated than single-process systems because the operating
system must allocate resources to competing processes in a reasonable manner.
(2) Refers to the utilization of multiple CPUs in a single computer system. This is
also called parallel processing.

 Multitasking: Allows more than one program to run concurrently. The terms
multitasking and multiprocessing are often used interchangeably, although
multiprocessing implies that more than one CPU is involved. There are two
basic types of multitasking: preemptive and cooperative. In preemptive
multitasking, the operating system parcels out CPU time slices to each program.
In cooperative multitasking, each program can control the CPU for as long as it
needs it. If a program is not using the CPU, however, it can allow another
program to use it temporarily. OS/2, Windows 95, Windows NT, and UNIX use
preemptive multitasking, whereas Microsoft Windows 3.x and the MultiFinder
(for Macintosh computers) use cooperative multitasking.

 Real time: Responds to input instantly. General-purpose operating systems, such


as DOS and UNIX, are not real-time. The term is used to describe a number of
different computer features. For example, real-time operating systems are
systems that respond to input immediately. They are used for such tasks as
navigation, in which the computer must react to a steady flow of new information
without interruption. Most general-purpose operating systems are not real-time
because they can take a few seconds, or even minutes, to react. Real time can also
refer to events simulated by a computer at the same speed that they would occur
in real life. In graphics animation, for example, a real-time program would
display objects moving across the screen at the same speed that they would
actually move.

Examples of OS
I/ Linux – Open source operating system that provides a rich environment for high end
workstations and network servers. Its source code is available for users or other software
developers who may fine tune the code. (Maths- Manyika/ OR Parallel Erica)
II/ Unix - A 32 bit multi-tasking and multiuser operating system authored by AT & T ,
and commonly used on a variety of computers (OR –Thabani / SCS Para Tinotenda)

III/ Mac OS X. The operating system for Macintosh computers (App Phy + Radiography
– Tendai OR Para - Malunga)

IV/ Microsoft Windows – Generic name for the various o/s in the Windows family.
Have evolved over a period of time. (Comp scie - Mthokozisi)

V/ MS DOS OR para Lisa– The standard, single user operating system of IBM and
IBM-compatible computers, introduced in 1981. A command-line driven o/s that requires
the user to enter commands, arguments following a given syntax. (App Chem
–Sikhanyiso)
VII/ Any O/S Alois

II/ Application Software

Definitions of application software:


 Allows the user to accomplish specific tasks. Examples of this type of software
are Word, Excel, PowerPoint, and Access.
 It is software used to make a computer useful for one specific purpose
 Software that is designed and written for a specific personal, organizational, or
processing task.

Application Software Classification by use

General business productivity applications


Software used for general business purposes to improve productivity (Includes office
suite applications with word processors, spreadsheets, simple databases; graphics
applications; project management software, computer-based training software etc.)

Home use applications


Software used in the home for entertainment, reference or educational purposes (includes
games, reference, home education, etc.)

Cross-industry application software


Software that is designed to perform and/or manage a specific business function or
process that is not unique to a particular industry. (Includes professional accounting
software, human resource management, customer relations management software,
Geographic Information System software, webpage/site design software, etc.)

Vertical market application software


Software that performs a wide range of business functions for a specific industry such as
manufacturing, retail, healthcare, engineering, restaurants, etc.

Utilities software
A small computer program that performs a very specific task. Utilities differ from other
applications software in terms of size, cost and complexity. Examples include:
compression programs, anti-virus, font, file viewers, and voice recognition software.

Application Software Classification by design

I/ Browser – Enables the user to navigate the WWW. A Web Browser Architecture
usually consists of 3 parts:

Controller:
• receives and interpret input from the keyboard or the mouse
• calls other components to perform operations specified by users
(e.g., uses a client program to access a document)
Client programs: uses different protocols
• HTTP client fetches HTML documents from WWW server
optional clients: FTP client and E-mail client
• FTP client - access file transfer service
• E-mail client - send & receive e-mails

Interpreters:
• HTML interpreter displays HTML-formatted documents

Examples include Netscape Navigator and Microsoft Internet Explorer, Mozilla Firefox

II/ Data Management – Provides tools for data retrieval, modification, deletion, and
insertion, e.g. Access, MySQL, Oracle, Informix

III/ Desktop Publishing – Transforms a computer into a desktop publishing station, e.g.
Adobe Framemaker, Adobe Pagemaker, and QuarkXpress

IV/ E-mail – Provides e-mail services for computer users, including receiving mail,
sending mail, and storing messages. e.g. Microsoft Outlook, Eudora

V/Presentation Graphics – Creates & enhances charts and graphs so that they are
visually appealing and easily understood by an audience. A full-feature graphics includes
facilities for making a wide variety of charts and graphs and for adding titles, legends,
and explanatory text anywhere in the chart or graph.

VI/ Programming

Legacy Software
Software developed decades ago and have been continually modified to meet changes in
business requirements and computing platforms.
Many of these systems remain supportive to core business functions and are indispensible
to the business. Legacy systems characteristics:
 Inextensible designs,
 Convoluted code - long winded & complicated code
 Non existent documentation
 Non existent test cases & results
 Poorly managed change history

Legacy systems exist so as to provide business continuity, and often evolve due to the
following reasons:
 The system is adapted to meet the needs of new computing environment or
technology
 The software is enhanced to implement new business requirements
 The software must be extended to make it interoperable with other more modern
systems or databases
 The software must be redesigned to make it viable within a network environment
File Systems and Database systems

Files and database systems provide a means of logically arranging data on storage for
ease of data manipulation.

File concepts.
Data element: - A data element is the smallest unit of a file. It is a logical collection of
alphanumeric characters, which provides description of entities stored in the file.
Examples, name, surname and student registration number.

Record; -A record is a collection of logically grouped data elements or fields. The fields
should also be interrelated for them to be treated as records for example; details of a
student form a record.

File: -A file is a collection of logical records e.g. a student file, employee file, a patient
file, and beneficiary file.

Database
Is a collection of interrelated and logically grouped files that describing data elements in
an organization. The files are cross-referenced and have at least one common data
element used for referencing one file from the other.

Data mart – A restricted data warehouse. Restriction may be based on type of data,
business area or geographic area.

Data warehouse - a type of database system designed to fulfil decision-support needs of


an organization. It is a subject-oriented, integrated, time-variant, and non-volatile
collection of data used in support of management decision-making’. A data warehouse is
structured in terms of the major subject areas of the organisation. A data warehouse
explicitly associates time with data. Data in a warehouse is only valid for some point or
period in time

File Organization techniques – means of logically arranging records in view of saving


space and reducing access time.

Sequential File Structure.


Sequential file structure stores records sequentially using a unique key called a primary
key. To retrieve / access record n, the computer system has to first scan through all the
earlier records before the desired record is retrieved. The file structure is very slow and
its speed reduces exponentially with the size of the file. However, if the file is accessed
once every month, such as a payroll the method is most ideal, although not ideal for
query handling.

Random file Structure.


A record is given a specific disk space address using an algorithm, and this location can
be accessed directly without having to scan all the earlier records. Direct access devices
support this method. The file structure is faster as records are accessed directly,
unfortunately more than one records can compete for one disk address there by creating
access problems.

Indexed Sequential File Structure.


Records are stored sequentially on a random access media. Each record is given a
specific disk address and thereafter an index of all disk addresses is compiled for random
access. This file structure is better known as Indexed Sequential Access Method (ISAM).
It permits both sequential and random access of records in a file. The method allows one
record to be accessed in two ways. A block of addresses can be accessed randomly with
individual records accessed sequentially. Unfortunately the method uses a lot of memory
for the maintenance of indexes and to sort records sequentially.

File Properties, Disadvantages of files

Database Concepts.
A database approach was developed to try and address the shortcoming of the traditional
approach, the file system. Besides providing solutions to the file system problems, the
database approach seeks to organize data and records in a uniformed and cost effective
way. The approach does make savings on disk space, time and other computer resources.

Data program dependence.


Data program dependence is where data formatting depends on the structure of a program
that is used to manipulate the data file to the extent that if the format of the data file is
changed, the program has to be modified accordingly. If the program is to be modified
the structure of the data file has to be changed as well otherwise there will be no
compatibility between the data file and the application program.

Data Redundancy.
When a number of departments run similar files, they tend to repeat certain details, which
result in Data redundancy. Redundancy is the unnecessary duplication of fields across a
number of files and wastage of resources such as memory space, which could have been
used for something else.

Data Inconsistency.
Data redundancy leads to data inconsistency. For example if a record is edited in one file
while the other departments running similar file(s) do not effect the changes, there will be
inconsistency between these files. A student can ask the student records department to
effect his change of address and that change when it is not communicated to other
interested departments, his correspondences from the same university but different
departments will be sent to his old and new addresses instead to the new one due to data
inconsistency in the university systems.

Database Management Systems (DBMS).


The database management system is software used to create, update and secure data in a
database environment. A database system is a collection of software programs that store
data in a uniform way, organize data into records in a uniform way, and allow access to
data in a uniform way. The DBMS acts as an interface between application programs and
data. Application programs cannot directly access data but they can do so through the
database management system.

Components of DBMS.
Data Dictionary.
A data dictionary (DD) does contain names and descriptions of every filed in the
database.
It is a meta data, it holds data about data, and it contains descriptions of data and
information about their technical characteristics and their interrelationships. It includes
information about where data is used, length of the filed and whether it is numeric,
alphabetic or alphanumeric. It gives a complete reference system for all available data
elements.

Data Sub Languages.


There are two types these are Data Description Language (DDL) and Data Manipulation
Language (DML). DDL is used to place data in the data dictionary; it is the language,
which is used to describe the characteristics of data elements.
DML is a data manipulation language for uniform access to data. It uses standard set of
commands to manipulate data. The standard commands are used to retrieve data, process
data, store, search, save, delete and many more operations.

Application Development Software.


These are set of programs or tools used by developers to develop user defined application
programs that process data into desired forms.

Security Software.
Security software takes care of security needs of the database system. It provides a
variety of tools that shield the database from unauthorized access and from security
attacks. Passwords, level of access, transaction log files, system log files and encryption
are some of the security features that can be employed to secure a database?

Archiving and Recovery Systems.


This component of the system provides means and techniques of making copies of a
database or for backup. They have also restart and recovery tools for data reconstruction
in the event of database corruption. Restart and recovery tools help in the recovery of lost
data.

Database Administrator.
A database administrator (DBA) is the overall in charged with the running of a corporate
database. He manages the organization‘s data resources and their use. The DBA is also
in charge with the security of the database and with the setting up of user accounts and
levels of access.
The functions of DBA also include database planning, design, operation, training, and
user support, security, and maintenance. The role of DBA requires someone who can
easily relate to all levels in the organization. It requires someone with both management
skills and technical flair.
The most important role of a Database Administrator is to ensure that users give up their
ownership of data, which is a shared resource.

Views/ Levels of a Database.


External View.
This is a less comprehensive view as compared to conceptual view and it is a view held
by users. The external view is a local view of a database called a subschema. An
application programmer holds this view as well. It is composed of data elements needed
to run application programs and each application program holds a distinct external view
of a database. It is also a logical view of database and is not concerned about how data is
physically stored on the storage media. It describes how data is logically organized and it
does provide a means of security. A database user will be restricted to his or her own
view and will never be allowed to access someone else’s view

Conceptual View.
This is a view held by a Database Administrator. It is a global view of a database, a
logical view of records in a database. It is also known as a schema of a database. The
view includes all data elements in a database and how they relate to each other logically.

Internal View.
The internal view is the only physical view of a database. A systems programmer holds
this view, and is concerned about how data is physically stored on the storage media. It is
sometimes known as the hardware view of database since it looks at the organization and
partition of the storage media physically. The systems programmer designs and
implements this view by allocating tracks, sectors, and cell addresses to data elements.
The systems programmer is responsible for placing data physically on the storage media.

Database Structures.
Hierarchical Database Structure.
The records in a hierarchical structure are logically organized into a hierarchy of
relationships. It models a parent child relationship where a parent record is allowed to
have one or more child records whereas child records are only allowed one parent record.
The structure is inflexible time consuming and is not user friendly. Database enquiries are
slow, costly and time consuming.

Network Database Structure.


A network database structure is similar to hierarchical structure but it’s more flexible and
user friendly. It views data in sets; each set is composed of an owner record and one or
more member records. A record is allowed to be a member of one or more sets, and an
owner record can also have one or more member records.
The database structure is structured into a series of two-dimensional tables with rows and
columns. Rows represent records with columns representing data elements or fields. A
table does represent a distinct file.

Object Oriented Database.


Object Oriented Database Structure models real world objects. It uses objects, and
inheritance. The emphasis is on the reuse of code and inheritance and the organization of
objects into classes. Each object in a database binds together data and sets of instructions
that manipulate data. The objects have both values and behavior. The values are the
attributes whereas the instructions are the methods that act upon data. Objects do
communicate with one another through a technique known as message passing. Object
oriented databases rely on an Object Oriented Database Management System
(OODBMS) for data manipulation.

Advantages of Databases.
1. Data sharing – the entire organizational database is accessible to all users.
2. Reduced data redundancy – duplication of data is minimized.
3. Improved data consistency – data inconsistency is substantially reduced as a result of
data redundancy that has been minimized.
4. Data program Independence – data description is independent from the formatting of
programs that manipulate data.
5. Increased application programmer and user productivity -- Use of application
programming tools to write programs and report generators for generation of reports.
6. Improved data administration and control – one person has overall responsibility of the
database, the Database Administrator. The DBA enforce standards and controls access to
data.
7. Emphasis on data as a corporate resource – there is greater corporate attention to
Information Systems that aid decision-making; hence a database is treated as an
Information resource.
8. Reduced data duplication.

Disadvantages.
1. Concurrency problems.
2. Ownership.
3. Expensive – more resources are required for backup, maintenance, DBA, equipments,
memory space, and for communication.
4. Data insecurity – once breached all the data can be lost since data storage is usually
centralized.

COMPUTERS AND DATA COMMUNICATIONS


A network consists of two or more computers that are linked in order to share resources
(such as printers and storage devices, exchange files, or allow electronic communications.
The computers on a network may be linked through cables, telephone lines, radio waves,
satellites, or infrared light beams.

Main types of Networks

Wide area networks (WANS)


Metropolitan area networks (MANs)

Local area networks (LANs)


Local area network (LAN)-is a network located in a limited geographical area normally
an office building, a college campus and etc. These are normally installed by
organizations & also known as private data networks. Can either be wired or wireless.

LAN Hardware
Three main hardware components make up a local area network and these are personal
computers with network interface cards (NIC), also known as adapter cards, which are
connected by a transmission medium. Some of these computers perform special functions
on the network, while others are used for basic information retrieval and storage.

Personal computers
Any type of a personal computer can be used in a LAN as long as it is compatible with
the LAN software being used.
Can either be workstations (or clients), which is a PC used to access information over
the network,
Or a server used to: -
 Process the requests for software made by the workstations,
 Store files, file server;
 Handle print jobs, print server;
 Provides connection between networks;
 Runs network management software or Network operating system (NOS) and
 Provide e-mail services.

Because the server has so many functions, the computer used as a server usually is the
largest and the fastest machine on the network. Most servers have huge hard disks to
store files and network software.

Network interface cards


The network interface card (NIC) is the link between the physical network and a
workstation. Most modern computers have inbuilt NICs. Network cards are designed to
be used on specific types of networks using specific standards. For example if a network
uses a token ring standard the NIC used to connect computers to the network must
conform to that standard. Similarly an Ethernet NIC has to be used with Ethernet
standard.

Transmission media
In data transmission, the transmission medium is the path between the sender and
receiver.
Transmission media can either be guided or unguided. In guided media, the signal is
guided along a solid medium, such as copper twisted pair, copper coaxial cable, and
optical fiber. For unguided media, wireless transmission occurs through the atmosphere,
outer space, or water.

Guided/ Conducted media

The three guided media commonly used for data transmission are twisted pair, coaxial
cable, and optical fiber.

Twisted Pair
Twisted pair consists of two insulated copper wires arranged in a regular spiral pattern.
A wire pair acts as a single communication link. Typically, a number of these pairs are
bundled together into a cable by wrapping them in a tough protective sheath. Over longer
distances, cables may contain hundreds of pairs. The twisting tends to decrease the
crosstalk interference between adjacent pairs in a cable.

Neighboring pairs in a bundle typically have somewhat different twist lengths to reduce
the crosstalk interference. On long-distance links, the twist length typically varies from 5
to 15 cm. The wires in a pair have thicknesses of from 0.4 to 0.9 mm.

Characteristics
 Much cheaper & easier to work with
 Can carry both analog (repeater a every 5 to 6 km) & digital data (repeaters
every 2 or 3km)
 Limited distance, bandwidth and data rate
 Quite susceptible to interference and noise due to its easy coupling with
electromagnetic fields.

Coaxial Cable (diagram see insert)


Coaxial cable consists of two conductors, constructed to permit it to operate over a wider
range of frequencies. It consists of a hollow outer cylindrical conductor that surrounds a
single inner wire conductor. The inner conductor is held in place by either regularly
spaced insulating rings or a solid dielectric material. The outer conductor is covered with
a jacket or shield. A single coaxial cable has a diameter of from 1 to 2.5 cm. Coaxial
cable can be used over longer distances and support more stations on a shared line than
twisted pair.

Applications

Coax applications among others include:


 Television distribution, ,i.e, as a means of distributing TV signals to individual
homes—cable TV
 Long-distance telephone transmission
 Short-run computer system links
 Local area networks

Transmission Characteristics

 Can transmit both analog & digital signals


 More superior than twisted-pair, has higher data rates
 Less susceptible to interference
 But suffers from attenuation, thermal noise, and inter modulation noise.

Optical Fiber

A thin (2 to 125 µm), flexible medium capable of guiding an optical ray. Various glasses
and plastics can be used to make optical fibers. The lowest losses have been obtained
using fibers of ultrapure fused silica. Ultrapure fiber is difficult to manufacture; higher-
loss multi component glass fibers are more economical and still provide good
performance. Plastic fiber is even less costly and can be used for short-haul links.

An optical fiber cable has a cylindrical shape and consists of three concentric
sections: the core, the cladding, and the jacket. The core is the innermost section and
consists of one or more very thin strands, or fibers, made of glass or plastic; the core has
a diameter in the range of 8 to 100 µm. Each fiber is surrounded by its own cladding, a
glass or plastic coating that has optical properties different from those of the core. The
interface between the core and cladding acts as a reflector to confine light that would
otherwise escape the core. The outermost layer, surrounding one or a bundle of cladded
fibers, is the jacket. The jacket is composed of plastic and other material layered to
protect against moisture, abrasion, crushing, and other environmental dangers.
Characteristics
 Greater capacity: - data rates of hundreds of Gbps over tens of kilometers
 Smaller size and lighter weight ; thus reduced structural support requirements.
 Lower attenuation: -0.2 to 0.5 dB/km with repeater spacing of 40 km
 Electromagnetic isolation :- System not vulnerable to interference, impulse noise,
or crosstalk , fiber is also inherently difficult to tap.
 Greater repeater spacing: - Fewer repeaters mean lower cost and fewer sources
of error.

Applications
 Long-distance telecommunications; average about 1500 km in length and offer
high capacity (typically 20,000 to 60,000 voice channels)
 Metropolitan trunks ; average length of 12 km and may have as many as
100,000 voice channels in a trunk group
 Local area networking; with capacity of 100 Mbps to 10 Gbps and can support
hundreds or even thousands of stations in a large office building or a complex of
buildings.
 Rural exchange trunks ; circuit lengths ranging from 40 to 160 km and link
towns and villages., with 5000 voice channels.
 Subscriber loops; running directly from the central exchange to a subscriber , to
handle voice, data as well as image and video.

Radiated medium
Unlike the conducted medium, which uses wires to transmit, data radiated medium or
wireless medium uses air, water, and the vacuum of space for data transmission. A
wireless network can be used by a computer with the right components to communicate
with the other devices on the network without being physical connected to the network
using a cable. Examples of wireless technologies include bluetooth, which can be used on
the network or can be used by codeless keyboards which have Infrared data ports also
known as (irDA) infrared data access ports. Many of these networks use radio waves,
cellular radio technology, microwave transmission, spread spectrum radio transmission,
infrared light transmission, or laser transmission for sending data.

Local Area Network (LAN) topologies


LANs use topologies appropriate for the localized nature of networks. The topologies are
designed for speed and ease of modification. Topology refers to the way the computers
are arranged in the network, can either be physical or logical (method of packet
transmission). LANs quickly expand as more and more people learn of the resources
available through the LAN. The topology must be adaptable to this type of environment.
The following are different types of LAN topologies.

Ring
The ring topology is designed so that each workstation is connected to the workstation
before it and to the workstation after it. The cables connecting the workstations form a
closed loop or ring. The data is transmitted in one direction and it travels the entire
lengthy of the cable. Each station on the ring accepts the message, determines what node
is to receive it, and then sends the message onto the next node. The receiving node
accepts the message and sends an acknowledgement to say that the message was received
correctly. Workstations on the network are either active or inactive stations.
Active stations can send and receive messages as they arrive on the network. Inactive
stations are not capable of responding to messages because the station is either powered
off or is not functioning properly such stations are bypassed by data traveling through the
network. A widely used form of the ring topology is the Fiber Distributed Data Interface
(FDDI)- two rings are used such that if one breaks the other ring can be used the network
switches to the unbroken ring automatically.

Advantages
Network operates even if one node is down

Disadvantages
Complex installation
Expensive- requires more cabling
Difficult to trouble shoot
Slow speed for non-FDDI

Bus
A bus network topology consists of a single wire to which individual stations are
attached. The ends of the cable have a special device connected to them called a
terminator, telling the network the location of the end. Terminators are used also to avoid
signal bounce. Each workstation on the network is connected directly to the next station
along the bus.

Advantages
Requires less cable than the star network, thus inexpensive
Easy to install and connect new nodes.

Disadvantages
If backbone is broken the entire network goes down
Difficult to trouble shoot if entire network shuts down
Terminators required at both ends of the bus

Star
A star network consists of a central device to which all the other devices on the network
are connected. Each terminal on the network is connected to the central device (hub) by a
point-to-point link. Data passes directly from the central hub to the destination terminal.
Additions and deletions from the network can be made with little or no disruptions to the
other terminals on the network.

Advantages
Changes are easy
Easy to troubleshoot

Disadvantages
If central hub goes down the entire network goes down

Mesh
 The mesh topology connects each computer on the network to the others
 Meshes use a significantly larger amount of network cabling than do the other
network topologies, which makes it more expensive.
 The mesh topology is highly fault tolerant.
o Every computer has multiple possible connection paths to the other
computers on the network, so a single cable break will not stop network
communications between any two computers.

Other net work devices


As the network grows there might be need to connect more computers to the netwok
calling for more devices to handle these connections.

Bridge
A bridge is a device that allows for the segmenting of a large network into smaller, more
efficient networks.
A bridge monitors the information traffic on both sides of the network so that it can pass
packets of information to the correct location. Most bridges can "listen" to the network
and automatically figure out the address of each computer on both sides of the bridge.
The bridge can inspect each message and, if necessary, broadcast it on the other side of
the network.
The bridge manages the traffic to maintain optimum performance on both sides of the
network. It keeps information flowing on both sides of the network, but it does not allow
unnecessary traffic through. Bridges can be used to connect different types of cabling, or
physical topologies. They must, however, be used between networks with the same
protocol.

Router
Routers are the traffic directors in a wide area network. Routers maintain complex
routing tables which allow them to determine appropriate paths for packets destined for
any address. Routers communicate with each other, and forward network packets out of
or into a network.
While bridges know the addresses of all computers on each side of the network, routers
know the addresses of other routers which in turn know about their own networks.
Routers can even "listen" to entire networks to determine which sections are busiest --
they can then redirect data around those sections until traffic congestion clears.
So, routers are network gateways. They move network packets from one network to
another, and many can convert from one network protocol to another as necessary.
Routers select the best path to route a message, based on the destination address of the
packet. The router can direct traffic to prevent head-on collisions, and is smart enough to
know when to direct traffic along back roads and shortcuts.

Repeater
The repeater electrically amplifies the signal it receives and rebroadcasts it. Repeaters can
be separate devices or they can be incorporated into a concentrator. They are used when
the total length of a network cable exceeds the standards set for the type of cable being
used.
A good example of the use of repeaters would be in a local area network using a star
topology with unshielded twisted-pair cabling. The length limit for unshielded twisted-
pair cable is 100 meters. The most common configuration is for each workstation to be
connected by twisted-pair cable to a multi-port active concentrator. The concentrator
amplifies all the signals that pass through it allowing for the total length of cable on the
network to exceed the 100 meter limit.

Switch
An ethernet switch is a device that provides a central connection point for cables from
workstations, servers, and peripherals. In a star topology, twisted-pair wire is run from
each workstation to a central switch/hub. Most switches are active, i.e. they electrically
amplify the signal as it moves from one device to another. The predecessor of the switch
was the hub, which broadcasted all inbound packets out all ports of the device, creating
huge amounts of unnecessary network traffic. Modern switches build a port map of all IP
address which respond on each port, and only broadcasts on all ports when it doesn't have
a packet's target IP address already in its port map. Switches are:

 Usually configured with 8, 12, or 24 RJ-45 ports


 Often used in a star or tree topology
 Usually installed in a standardized metal rack that also may store network servers,
bridges, or routers
Firewall
A firewall is a networking device that is installed at the entrance to a LAN when
connecting a network together, particularly when connecting a private network to a
public network, such as the internet. The firewall uses rules to filter traffic into and out of
the private network, to protect the private network users and data from hackers.
Firewalls are either hardware or software. A hardware firewall protects a network and is
a hardware device installed in the network between the router and the network. Almost
all hardware firewalls will have at least two ports, labeled "Trusted" and "Untrusted". The
public network is connected to the untrusted network port, and the private network is
connected to the trusted port.
Firewalls work with rules which are cumulative, so general rules may be specified, and
exceptions added as necessary.

Software firewalls are commonly included in modern workstation and server operating
systems. They operate in a similar way as hardware firewalls, except that they filter
traffic in and out of the machine itself

You might also like