1 - Kinross High School

Download Report

Transcript 1 - Kinross High School

Computer Systems
computer
systems
Computer Systems
1- Data Representation
2 – Computer Structure
3 - Peripherals
4 - Networking
5 – Computer Software
Computer Systems
1- Data Representation
Computer Systems
Storing Data – Bits, Bytes & Binary
All information used by a computer system must be stored as a pattern of ones and zeros.
Each of these 1’s or 0’s used by the computer is called a Binary Digit (or Bit for short).
8 of these bits make up what is called a Byte. (E.g. 10101010)
The table below shows the units of storage and how to convert between them:
Name
Value
Bit
1 or 0
Byte
8 bits
Kilobyte (KB)
1024 bytes
Bits to Bytes
Divide by 8
KB to Bytes
Mulitply by 1024
Bytes to KB
Divide by 1024
KB to MB
Divide by 1024
Megabyte (MB)
MB to GB
Divide by 1024
Gigabyte (GB)
GB to TB
Divide by 1024
Terabyte (TB)
Bytes to Bits
Multiply by 8
1024 KB
(roughly 1 million bytes)
MB to KB
Muliply by 1024
GB to MB
Multiply by 1024
1024 MB
(roughly 1 billion bytes)
1024GB
(roughly 1000 billion bytes)
TB to GB
Multiply by 1024
Computer Systems
Representing Data – Numbers, Text & Graphics
We know that the computer can only store data in binary (1’s and 0’s). This means that all the
numbers, text and graphics that we use must be stored as 1’s and 0’s inside the computer.
Storing Numbers
You & Me
In our daily lives, we use a combination of the same 10 digits to represent every number.
0 1 2 3 4 5 6 7 8 9
This is called the decimal system.
The Computer
The computer is different. It uses a combination of only 2 digits to represent every number.
0 1
This is called the binary system.
Computer Systems
How a computer
counts
How we count
0
0
1
1
2
3
10
11
4
100
5
101
6
110
7
111
8
1000
9
1001
10
1010
11
1011
12
1100
etc.
Computer Systems
Decimal Numbers
The table below shows how the decimal system (base 10) is used to represent numbers:
Thousands
Hundreds
Tens
Units
103
102
(10 x 10 x 10)
(10 x 10)
101
100
1000
100
10
1
Number
9
9
99
1
0
0
100
3
4
7
1347
1
The number ninety-nine in decimal is written as 99 (9 tens and 9 units).
Computer Systems
Binary Numbers
This table below shows how the binary system (base 2) is used to represent numbers:
27
26
25
24
23
22
(2x2x2x2x2x2x2)
(2x2x2x2x2x2)
(2x2x2x2x2)
(2x2x2x2)
(2x2x2)
(2x2)
21
20
128
64
32
16
8
4
2
1
Decimal
1
1
1
0
2
1
1
3
1
0
0
4
1
0
1
5
1
1
1
0
0
0
1
1
99
1
1
0
0
1
0
0
100
1
0
0
1
0
0
0
200
The number ninety-nine in binary is written as 1100011 (1 x 64) + (1 x 32) + (1 x 2) + (1 x 1)
Computer Systems
Why Use Binary?
There are only 10 types of
people in this world
– those who understand
binary, and those who don’t.
The binary number system (base 2) is simpler than the decimal number
system (base 10).
Computers are able to represent all data (including numbers, text,
graphics, videos, sounds) as combinations of binary digits (0s and 1s).
Computers therefore represent 0 and 1 by means of electronic components
(e.g. magnetic particles on hard disks, pits and lands on CD/DVD).
This is why computers are called two state machines.
BINARY
It’s as easy as
01, 10, 11
Comparing Number Systems
For
Base
Against
Too many symbols – 0,1,2,3,4,5,6,7,8 & 9.
Familiar to humans as it is in common use.
Base 10
Decimal
Too many rules for +, -, × and .
Difficult to represent – requires 10 voltage levels (signal degradation).
Circuits for every combination of two digits e.g. 100 rules for adding.
Only two symbols – 0 & 1
Numbers are long.
0 & 1are easy to represent by a voltage and no voltage.
Only a few circuits required as the only combinations for e.g.
adding are 0+0, 0+1, 1+0 and 1+1. (4 rules)
Base 2
Binary
Difficult for humans to read, recognise, remember and copy.
Value is “hidden” from humans.
Computer Systems
Range of Values that can be Represented in Binary
As this table shows, the greater the number of bits used to represent a number,
the greater the range of numbers that can be represented.
Number of bits (n)
Range (0 – 2n-1)
Number of values (2n)
1
0–1
2
0–3
4
0 – 15
16
0 – 255
256
0 – 65,535
65,536
0 – 16,777,215
16,777,216
0 - 4,294,967,295
4,294,967,296
(i.e. 0 and 1)
2
(i.e. 00, 01, 10 and 11)
4
(i.e. 0000 to 1111)
8
(i.e. the number in 1 byte)
16
(i.e. the number in 2 bytes)
24
(i.e. the number in 3 bytes)
32
(i.e. the number in 4 bytes)
Computer Systems
Storing Integers
The integers (from the Latin integer, which means with untouched integrity, whole, entire) are
the set of numbers consisting of the natural numbers including 0 (0, 1, 2, 3, ...) and their
negatives (0, −1, −2, −3, ...). They are numbers that can be written without a fractional or
decimal component, and fall within the set {... −2, −1, 0, 1, 2, ...}.
Decimal to Binary
One technique of converting decimal numbers to binary, involves repeatedly dividing by two until we
reach the answer zero and then read the remainders upwards.
For example, let’s convert the integer 47:
We start with 47 units.
2
47
2
23
r1
We now have 23 groups of two and one unit over.
2
11
r1
We now have 11 groups of four and one two over.
2
5
r1
We now have 5 groups of eight and one four over.
2
2
r1
We now have 2 groups of sixteen and one eight over.
2
1
r0
We now have 1 group of thirty-two and no sixteens over.
0
r1
We now have no groups of sixty-four and one thirty-two over.
Therefore 47 in decimal is 101111 in binary.
(Note: we would normally add leading zeroes to show the value in one byte i.e. 00101111).
Computer Systems
Storing Integers
Binary to Decimal
To convert binary to decimal we simply use the table of place values that we looked at earlier.
For example let’s convert 10011010 to decimal:
128
64
32
16
8
4
2
1
1
0
0
1
1
0
1
0
Therefore 10011010 in binary is 154 in decimal.
128 + 16 + 8 + 2 = 154
Computer Systems
Representing Negative Numbers
Of course, computers must also be able to store negative numbers.
One possible solution is to indicate the sign (+ or -) by using the most significant bit (i.e. the
leftmost bit).
Thus a 0 indicates positive while a 1 indicates negative.
For example: 27 would be 00011011 while -27 would be 10011011
Sign Bit
0 or 1
+ or -
64
32
16
8
4
2
1
0
0
0
1
1
0
1
1
0 or 1
+ or -
64
32
16
8
4
2
1
1
0
0
1
1
0
1
1
16 + 8 + 2 + 1 = 27
16 + 8 + 2 + 1 = - 27
Though this seems to be a reasonable system, it has problems. (See next slide)
Computer Systems
Representing Negative Numbers Continued…
Problems with Sign Bit
Though this seems to be a reasonable system, it has
problems.
Let us consider values using 3 bits, with the 4th bit used as
the sign bit.
Here is a table of the values starting at 0 and adding 1 each
time:
There are two problems here:
There are two ways to represent zero! (0000 = +0 and 1000 = -0)
Arithmetic doesn’t work! (Adding 1 onto 7 we get -0!)
0111
0001
1000 ??
The solution? Use Two’s Complement!
Binary
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
Integer
+
+
+
+
+
+
+
+
-
0
1
2
3
4
5
6
7
0
1
2
3
4
5
6
7
Computer Systems
Twos Complement
When numbers are stored using two’s complement, the leftmost bit has a negative place value.
So with 8 bits, we have the following:
-128
64
32
16
8
4
2
1
0
0
0
0
1
1
0
1
8 + 4 + 2 = 14
1
0
0
0
0
0
1
1
-128 + 2 + 1 = -125
1
1
0
0
0
0
0
0
-128 + 64 = -64
1
0
0
1
0
1
0
0
-128 + 16 + 4 = -108
To represent negative values we:
Decimal Value
- work out the binary number for the positive value
- reverse the 1s and 0s (1s become 0s and 0s become 1s)
- and then add 1.
Method 1
-5
-12
-25
1. Work out the binary value for the
positive number (using 8 bits)
00000101
00001100
00011001
2. Reverse the 1s and 0s
11111010
11110011
11100110
3. Add 1
11111010
+1
11111011
11110011
+1
11110100
11100110
+1
11100111
Computer Systems
Twos Complement Continued
An easier method to get the two’s complement for a number is as follows:
- Starting from the right, find the first ‘1’
- Invert all of the bits to left of that ‘1’
Method 2
-5
-12
-25
1. Starting from the right, find the first ‘1’
00000101
00001100
00011001
2. Invert all of the bits to left of that ‘1’
11111011
11110100
11100111
Examples of Arithmetic
5 + (-3) = 2
+5
-3
0 0 0 0 0 1 0 1
1 1 1 1 1 1 0 1
1 0 0 0 0 0 0 1 0
3 + (-7) = -4 +3
-7
0 0 0 0 0 0 1 1
1 1 1 1 1 0 0 1
1 1 1 1 1 1 0 0
Ignore extra bit
0 0 0 0 0 0 1 0 =2
1 1 1 1 1 1 0 0 = -4
Computer Systems
Range of Values that can be Represented Using Twos Complement
The number of bits allocated to store each integer value determines the range of values which
can be stored:
Number of bits (n)
2
(i.e. 10, 11, 00 and 01)
4
(i.e. 1000 to 0111)
8
(i.e. 10000000 to 01111111)
16
(i.e. 1000000000000000 to
0111111111111111)
Range (-2n-1 to 2n-1)
Number of values (2n)
-21 to +21-1
-2 to 1
4
-23 to +23-1
-8 to +7
16
-27 to +27-1
-128 to 127
256
-215 to +215-1
-32768 to
32767
65536
Computer Systems
Storing Real Numbers
We know that positive and negative integers can be stored using a combination of 0’s and 1’s.
Since storing very large numbers would require too many digits, these numbers can be stored in a computer
using a technique called floating point representation.
This notation represents numbers as a base number and an exponent. For example, 234.567 in decimal could be
represented as 2.34567 x 102, with base = 10 and exponent = 2.
Using floating point the number is stored in 2 parts:
Mantissa
Exponent
- The mantissa is the actual digits that make up the number
- The exponent gives the position of the decimal point or binary point
Examples of floating point representation in decimal:
Decimal
Sign
Mantissa
Exponent
Equivalence
346.789
+
.346789
+3
0.346789 x 103
-0.002639
-
.2639
-2
-0.2639 x 10-2
Examples of floating point representation in binary:
Binary
Sign
Mantissa
Exponent
Equivalence
+110.011
+
.110011
+011
0.110011 x 23
-0.001011
-
.1011
-110
-0.1011 x 2-2
The range of the number is represented by the exponent, while the precision is represented by the mantissa.
Computer Systems
Hilarious Computing Jokes to Tell Your Mates
Q. Why do Higher Computing Students mix up
Halloween and Christmas Day?
A. Because OCT 31 = DEC 25
There are only 10 types of people in the world.
Those who understand ternary,
those who don’t
and those who confuse it with binary!
Computer Systems
Storing Text – ASCII vs. Unicode
The set of characters that can be represented by the computer is known as the character set. Many computers
have the flexibility of using several character sets, but we will restrict our discussions to ASCII and Unicode.
ASCII
ASCII is a 7-bit code which provides 128 code values. This gives us
96 characters and 32 control codes. Many systems use extended
ASCII code which is an 8-bit code providing a range of 256 characters.
The table opposite shows the ASCII codes for a range of characters.
Unicode
What you should know about Unicode
Unicode’s advantages over ASCII
Unicode is a 16-bit code which supports 65536 characters
This is many more than ASCII code, enabling Unicode to define a
code for characters:
- of every character-based alphabet in the world
- of the large ideographic languages such as Chinese, Japanese
and Korean
- for all punctuation symbols and control characters
The first 256 characters in Unicode are used to represent
ASCII code.
This makes conversion between the two codes easy
Of the 65536 characters, 49000 codes are predefined and
6400 are reserved for private use
This means they can be defined by the user of the software
This still leaves around 10000 characters in the code not
yet made use of
These can be used in future developments
Note: Unicode file sizes are large because it takes 2 bytes to store each character. This places greater demands on storage capacity and increases
time taken to transmit files across a network.
Computer Systems
Representing Graphics
Bitmap Graphics
Bitmap representation of graphics means that each pixel in a graphic is represented by a series
of bits.
Bitmaps are typically used for creating realistic images e.g. photographs.
Black & White Bitmaps
Here is an example of a graphic that has been enlarged so that you can see each pixel.
When storing black and white graphics the computer uses a very simple system. A graphic
is made up of a grid of pixels and stored in memory as a bit pattern of 1’s and 0’s. Each
black pixel is represented by a 1, while each white pixel is represented by a 0.
100 Pixels
=
0
0
1
1
1
1
1
1
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
1
0
1
1
0
0
1
1
1
1
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
1
1
1
1
1
1
0
0
100 Bits (or 12.5 Bytes)
Original Image
Image x 4
Computer Systems
Representing Graphics
Colour Bitmaps
The more bits assigned to represent each pixel, the greater the range of colours or shades of
grey that can be represented. This is known as colour bit depth.
Advantages of Bit-mapped Graphics
Number of bits per pixel
Colours or shades of
grey represented
Disadvantages of Bit-mapped Graphics
1
2
They demand lots of storage space
particularly when lots of colours are used
2
4
8
256
16
65,536
They allow the user to edit at pixel
They are resolution dependent. This means
the resolution of the graphic (the number of
pixels per inch) is set when the bitmap is
produced. I you reduce the resolution, the
system reduces the size of the pixel grid and
eliminates pixels, which in turn reduces the
quality of the image.
16,777,216
24
(true colour – the max number
human eye can distinguish)
Increasing the number of bits per pixel increases the file size
Resizing bit-mapped graphics causes problems. If you resize a bitmap graphic upwards it has the same number
of pixels, and so the image becomes pixellated, the edges jagged. If you resize downwards it becomes dense.
You cannot isolate and edit an individual object in a graphic and edit it
Computer Systems
Relationship between Bit Depth and File Size
Let’s look at the file size of a tiny 1 inch square graphic.
Resolution
(pixels per
square inch)
Pixels per
1 inch sq
graphic
Number of bits
representing
each pixel
Number of
colours
available
File size in
bytes
File size in
megabytes
600 x 600
360,000
8 bits (1 byte)
256
360,000
0.343
600 x 600
360,000
16 bits (2 bytes)
65,536
720,000
0.687
600 x 600
360,000
24 bits (3 bytes)
16,777,216
1,080,000
1.030
The more bits that are used to represent a pixel, the more colours you get, but the greater the file size.
If the graphic was larger, say 6 inches square, then the table looks like this:
Resolution
(pixels per
square inch)
Pixels per
1 inch sq
graphic
Number of bits
representing
each pixel
Number of
colours
available
File size in
bytes
File size in
megabytes
600 x 600
12,960,000
8 bits (1 byte)
256
12,960,000
12.36
600 x 600
12,960,000
16 bits (2 bytes)
65,536
25,920,000
24.72
600 x 600
12,960,000
24 bits (3 bytes)
16,777,216
38,800,000
37.8
Why is Compression needed?
You can see from the tables that sizes for bit-mapped graphics can be very large. This means that:
- they demand lots of storage space
- they can take quite a time to transmit across a network
Compressing the files means that less space is required for storage and transmission times can be reduced.
Computer Systems
An Illustration of Bit Depth
1 Bit – Monochrome – 2 Colours
8 Bit – 256 Colours
4 Bit – 16 Colours
24 Bit – True Colour – 16 Million Colours
Computer Systems
Vector Graphics
In vector graphics, the system stores mathematical definitions of:
- the shape of graphic objects
- their position on the screen
- their attributes such as the fill colour, the line colour and thickness
Where there are several objects in an image, the vector graphic file will store information about the layering of the
objects.
The definition of a circle might hold:
(x,y) - 100,200
- the position of the centre
- the length of the radius
- the with and colour of the line marking the circumference
- the colour/pattern of the infill
Radius – 2.5
Width – 1.5pt
Line – Pink
Fill – Pale Blue
Advantages of Vector Graphics
You can edit individual objects in a graphic
They are resolution independent. If an object is displayed on a system with high resolution output it will display
perfectly.
You can build up an image by layering objects
Vector Graphics take up less storage space than a bitmap graphic equivalent
When resizing a vector graphic, it will change in proportion and maintain smooth edges.
Computer Systems
2 – Computer Structure
Computer Systems
Back to Basics
The animation below illustrates how RAM is used to store programs while they are running
Computer Systems
Back to Basics
You should already be familiar with the following diagram
BACKING
STORAGE
INPUT
OUTPUT
RAM
ROM
Cache
ALU
MEMORY
Control
Unit
PROCESSOR
CPU
Registers
Computer Systems
Back to Basics
RAM
To execute a program you must first load
the program and any relevant data from
backing storage into the computer’s
memory (RAM).
BACKING
STORAGE
INPUT
OUTPUT
RAM
ROM
MEMORY
Cache
Registers
Control
Unit
ALU
PROCESSOR
CPU
SRAM Vs DRAM
SRAM – stands for static random access memory, a type of memory that is faster and more reliable than the more common DRAM (dynamic RAM).
The term static is derived from the fact that it doesn't need to be refreshed like dynamic RAM.
DRAM stands for dynamic random access memory, a type of memory used in most personal computers. In DRAM to store 1 bit of information 1
transistor and 1 capacitor is used. The information is stored in the capacitor in form of charge, so it required refreshing to retain the charge or data in the
capacitor.
Computer Systems
Back to Basics
BACKING
STORAGE
INPUT
OUTPUT
RAM
ROM
MEMORY
Cache
Registers
Control
Unit
PROCESSOR
CPU
RAM
The processor has to be able to pinpoint any memory location
needed, so each memory location is assigned an address. This is a
unique binary number from zero up to the number of locations -1.
The amount of data each storage location can store is known as the
word size for that computer.
ALU
Computer Systems
Back to Basics
BACKING
STORAGE
INPUT
OUTPUT
RAM
ROM
Cache
ALU
MEMORY
Control
Unit
Registers
PROCESSOR
CPU
ALU
The Arithmetic & Logic Unit (ALU) is the part of the Central
Processing Unit (CPU) where calculations, and Boolean logic
operations (AND, OR, NOT) and comparisons take place.
Computer Systems
Back to Basics
BACKING
STORAGE
INPUT
OUTPUT
RAM
ROM
Cache
ALU
MEMORY
Control
Unit
Registers
PROCESSOR
CPU
Control Unit
The Control Unit (CU) sends out control signals:
- within the processor to move data from one register to another and to
activate specific ALU function
- to the control bus to read or write from memory
- to I/O modules
Computer Systems
Distinguishing Between Computer “Memory” - Registers
BACKING
STORAGE
INPUT
OUTPUT
RAM
ROM
Cache
ALU
MEMORY
Control
Unit
Registers
PROCESSOR
CPU
The Registers
Registers are storage locations that are internal to the processor. They are used to:
- hold data that is being transferred to or from memory
- hold the address of the location in memory which the processor is accessing to read
or write data
- hold the instructions that are being carried out
Computer Systems
Distinguishing Between Computer “Memory” - Cache
BACKING
STORAGE
INPUT
OUTPUT
RAM
ROM
MEMORY
Cache
Registers
Control
Unit
ALU
PROCESSOR
CPU
Cache Memory
This is a small fast memory unit which the processor checks for data and instructions before accessing main memory.
When the processor attempts a read from memory, the cache is checked first. If the data is already stored there it is
transferred directly to the processor. This saves a read from memory operation which is much slower than cache memory.
The overall effect is to speed up system performance.
Computer Systems
Distinguishing Between Computer “Memory” – Main Memory
BACKING
STORAGE
INPUT
OUTPUT
RAM
ROM
Cache
Registers
MEMORY
Control
Unit
ALU
PROCESSOR
CPU
Main Memory
This is the main internal storage area for the computer where
instructions and data are stored. It is divided into RAM and ROM
sections. Reading from main memory is slower than accessing either
registers or cache memory. Use of cache memory avoids slower
accessed to main memory.
Computer Systems
Distinguishing Between Computer “Memory” – Backing Storage
BACKING
STORAGE
INPUT
OUTPUT
RAM
ROM
Cache
Registers
MEMORY
Control
Unit
ALU
PROCESSOR
CPU
Backing Storage
This is the slowest form of memory and is used to store
data and software. It retains the data when the power is
switched off, unlike the RAM area in main memory.
Computer Systems
Distinguishing Between The Different Parts of Memory
You should be able to
distinguish between registers,
cache, main memory and
storage memory according to
function and speed of access.
This table should help you:
Type of Memory
Registers
Cache
BACKING
STORAGE
Speed of Access
Internal to the processor. Holds data
while being processed, e.g. Instruction
Register
Fast access time internal to the
processor
Stands between the processor and main
memory. Processor checks the cache
memory for data/instructions before
accessing main memory
Slower access than a register but faster
than accessing main memory
Main memory
Stores user data and software in RAM
and some system software in ROM
Next in terms of speedAccessing data in
main memory is slower than accessing
either cache memory or registers
Backing storage
Stores data, software retains the data
when power is off
Slowest of all the types of memory
Registers
Cache
RAM
ROM
Function
FETCH-EXECUTE CYCLE – READ FROM MEMORY
ALU
Computer Systems
0000
0001
0101
0110
1101
0110
0010
0011
0100
0101
COMPUTER TASK:
READ the data currently held in
memory location 1101
1 1 0 1 13
1111
0100
Address Bus
REGISTERS
1
0
0
1
1
1
1
0
Data Bus
CONTROL
UNIT
0110
0111
1101
1100
0101
0101
1000
1001
0100
0000
0101
0000
1010
1011
0101
0111
1111
1111
1100
1101
1001
1100
1011
0110
1110
1111
Control Bus
0101
0100
A Processor may need an instruction from memory or require data to perform a calculation. Here are the steps:
PROCESSOR
• Processor sets up address lines with the required address (1101)
• Processor activates READ line on control bus
• Memory releases data (10110110) from memory location (1101) onto data bus
• Data is received by the processor
MEMORY
Computer Systems
FETCH-EXECUTE CYCLE – WRITE TO MEMORY
ALU
0000
0001
0101
0110
1101
0110
0010
0011
COMPUTER TASK:
WRITE the instruction
11100101 to memory location 0011
0 0 1 1 3
1110
0101
0100
0101
1111
0100
Address Bus
REGISTERS
1
0
1
1
1
0
0
1
Data Bus
CONTROL
UNIT
1
0
1
1
0110
0111
1101
0101
0100
0000
0101
0000
1010
1011
0101
0111
1111
1111
1100
1101
1001
1100
1011
0110
1110
1111
11100 0 0101
01000 1 1001
Control Bus
0101
0100
A Processor may need to store an instruction or piece of data in memory. Here are the steps:
PROCESSOR
• Processor sets up address lines with the required address (0011)
• Processor sets up data bus with data to be stored (11100101)
• Processor activates WRITE line on control bus
• Data is copied from data bus into the memory location
MEMORY
Computer Systems
Distinguishing Between The Different Parts of Memory
Computer memory is divided up into memory locations. Each location has its own unique
address. The processor uses the address to find the data and instructions it needs.
The number of memory locations that a processor can address is, in theory, limited by
the number of lines on the address bus.
Look at this table:
Address
Memory location contents
1000000000000001
01010101111100001111000011110000
1000000000000010
11010101111100001111000011110011
1000000000000011
01110101111100001111011011110011
16 bit addresses = 16 line address bus
Each location stores a 32-bit number
00000000
00000000
00000000
00000001
10111111
00010101
11010100
00101011
00110101
11101011
00101011
00011110
00000000
00000010
00000000
00000011
11111111
11111101
11010001
00000001
01001111
11100001
11010001
00011001
MEMORY
The maximum capacity of memory is calculated as follows:
0 0 0 0 0 0 0 0
0 0 0 0 0 0 1 1
3
Maximum capacity = no. of addresses x capacity of each memory location
e.g. assuming
i) that the width of the data bus matches the capacity of each memory location;
ii) a 16-bit data bus;
iii) a 24-bit address bus
Address Bus
then maximum capacity = 2width of the address bus x 16-bits = 32 Megabytes.
Computer Systems
Control Bus Lines
Some common lines on the Control bus are:
READ
Signal sent from processor to start a
memory read operation after the address
bus has been set up with address to be read
WRITE
Signal sent from the processor to start a memory
write operation after the address bus has been
set up with the address to be written to.
Clock
Signal that synchronises the processors
operations by providing pulses along the control
line. In a processor with a speed of 2GHz, the
clock “ticks” 2000 million times every second and
an operation takes place on each tick.
Interrupt
An interrupt is a signal to the processor that a
peripheral requires to be serviced (e.g. pressing a
keyboard key or moving the mouse will generate
an interrupt)
NMI
A Non-Maskable Interrupt signal means the
processor is required to service the device
immediately. E.g. power failure, disk
read/write error.
Reset
A signal on the reset line returns the system to its
original state, stops all processes, clears the
registers and RAM and returns system to state
when it was first switched on.
Control Bus
Computer Systems
Measuring System Performance
You should be able to describe and evaluate the following measures of performance:
Measure
Clock Speed
MIPS
FLOPS
Application
Based
Tests
Description
Good Indicator of Performance?
• Clock pulses regulate and co-ordinate processor activities
• Pulses are measured in Megahertz (MHz) and Gigahertz (GHz)
• 1 MHz = 1 Million pulses per second, 1 GHz = 1000 MHz
There is more to system performance than the power of the
processor! While salespeople and adverts highlight clock
speed, be careful not to overemphasise its importance. Other
factors (e.g. Data bus width) must also be considered!
• Short for Millions of Instructions Per Second
• Based on number of machine code instructions that can be
processed in 1 second.
A rough indication of performance, it does NOT take into
account the size or complexity of the instructions being
carried out.
• Short for Floating Point Operations Per Second
• Measures how many floating point operations can be carried out
in 1 second.
FLOPS can be seen as being a more reliable indicator of
performance than MIPS. It is an objective approach
measuring the number of clearly definable, arithmetical
tasks that can be carried out per second.
Most computer mags use application-based tests (bench mark
tests) to compare system performance.
Set out series of practical tasks using standard applications
packages and award scores to make overall comparisons.
(E.g. Spreadsheet - Use a multi-document spreadsheet to carry out
statistical changes to 200 rows of data per sheet with related
graphs.
Database – Three database table opened and filled with 120,000
records, then queried and reports produced
Media – Convert 25 minute WAV file into mp3 and then to Windows
Media format
3D Graphics – 3D Graphics run at resoluation of 1024 x 768 with
32-bit colour)
While the other measures give (to varying degrees)
reasonable indicators of system performance, they do not
provide evidence of how well a system will perform I a given
practical task. Application based tests provide actual,
reproducible evidence of system performance. This is why
they are seen as reliable measures of performance.
Explaining System Performance – Key Points
By now, you should appreciate the effect on system performance of:
The width of the data bus
The use of cache memory
The data transfer rate of peripherals (All peripherals operate a slower speeds than the processor, which will slow the system down – for example if the CPU needs to read data from a CD.)
Computer Systems
Current Trends in Computer Hardware
Complete the tables below with information on the latest trends:
Current Trends in Storage
Storage Medium
Capacity
Data Transfer Rate
Hard Drive
CD-R, CD-RW
DVD-R, DVD-RW
Solid State Drive (SSD)
Other Portable Storage
Current Trends in Processors
Manufacturer
Clock Speed
Data Bus Width
Address Bus Width
Current Trends in Main Memory
Capacity
Other trends in Hardware
Input Devices
Output Devices
Other Developments
Computer Systems
3 – Peripherals
Computer Systems
Peripherals – Compensating for Speed Differences
“A peripheral is a device attached to a host computer...whose primary functionality is dependent
upon the host, and can therefore be considered as expanding the hosts capabilities, while not
forming part of the system's core architecture.”
Buffer
Wikipedia
A buffer is an area of memory which is used to temporarily store data while it is waiting to be transferred from
an input device or to an output device. A printer for example has on-board memory called a printer buffer which
lets the computer dispose of its printer output at full speed without waiting for each page to print. If the printer
buffer is full, the printer will use the system RAM. Some printers come with upgradeable memory options.
Why use buffers?
The use of buffers is a technique for improving system performance.
•Peripherals operate at much slower speeds than the CPU. Using buffers helps the computer system compensate
for the differences in operating speeds between the CPU and its peripherals.
•When transferring data out to a peripheral such as a printer, the faster CPU can transfer data into the buffer then
return to other processing tasks.
•The use of buffers reduces the frequency with which the CPU is interrupted to deal with input. When data is being
transferred to the CPU from a relatively slow input device, like a keyboard, a buffer is used to store the data until a
significant block of data is assembled for the CPU to deal with.
Spooling
Spooling is a similar technique used in the transfer of data to a slow peripheral. When spooling, the data intended for
the peripheral (i.e. the printer) is transferred to storage, usually the hard disk. This frees up the much faster CPU to
process other tasks. Like the use of buffers, spooling is another possible method of improving system performance.
Computer Systems
The Need for Interfaces between CPU and Peripherals
Computer peripherals, such as CD-ROM drives, scanners, keyboards and microphones all
work differently.
•
They ALL operate at much slower speeds than the CPU
•
They each have particular data transfer rates
•
They may transmit data in either serial or parallel form
•
They use a wide variety of codes and control signals
•
They may even work at higher voltages than the CPU
Interfaces
An interface is a combination of hardware and software needed to link the CPU to the peripherals
and enable them to communicate with the CPU despite all their differing characteristics.
The main functions of an interface are:
1.Buffering
2.Converting data between serial to parallel forms
3.Converting data between analogue and digital forms
4.Voltage conversion
5.Protocol Conversion
6.Handling of status signals
Computer Systems
The Main Functions of Interfaces
1 - Buffering
We have already seen how the interface uses the buffer to compensate for the differences in speed between the
peripherals and the CPU by temporarily storing incoming data so that the faster CPU can process it in manageable
blocks rather than waiting for the slower peripheral.
2 - Converting data between serial and parallel forms
0
1
0
1
0
1
0
1
The buses internal to the processor are parallel communication channels. Any data
coming from a serial device has to be sent to an interface which buffers the data then
converts the data then converts it to parallel form before it is passed to the processor.
To understand this clearly you need to know the difference between serial and parallel
transmission of data.
Parallel
0 1 0 1 0 1 0 1
Serial
Serial data transmission is where data is transmitted along a communication channel one bit after another in
sequence.
Parallel interfaces transmit several bits of data simultaneously across a series of parallel channels, often
transmitting 16 or 32 bits at a time.
3 - Converting data to and from analogue and digital forms
A key job of interfaces is to convert the analogue signals that are sent from peripherals to the
digital form that the CPU can handle. A mouse click generates an electrical or a wireless
analogue signal that is sent to the computer. The interface buffers the signal, changes it to digital
form and then sends it onto the CPU. Similarly a digital audio file will be converted to analogue
sound waves via an interface between CPU and speakers!
Computer Systems
The Main Functions of Interfaces
4 - Voltage conversions
Peripherals mainly work at higher voltage levels than CPU. These signals need to be reduced to the
CPU’s level and this is one of the jobs of the interface. For example, a signal coming from a keyboard
at 9 V needs to be reduced to a level which can be handled by the CPU, a maximum of 5 V.
5 - Protocol
conversion
Peripherals send
data in units of
varying sizes and at
speeds that are
different from those
that operate in the
CPU. The interface
has to deal with the
differences between
them.
6 – Handling of Status Signals
Peripherals and the CPU exchange a series of signals before and during the exchange of data, for example a
peripheral will signal that it is ready to accept data. These signals are passed through the interface
Computer Systems
The Latest Interfaces
One way in which computer system performance can be speeded up is by increasing the data
transfer rate between peripherals and the CPU. Since the interface plays a key part in getting data to
and from the peripherals and the CPU there is a trend towards greater and greater interface speeds.
Interface
Description
Transfer speeds
USB
Universal serial bus
A means of connecting external
devices such as scanners, keyboards,
mouse, audio equipment to a PC port.
Fast transfer rate:
12 Mbps for fast devices
and
1.5 Mbps for keyboards and mice.
USB2
An improved version of the USB.
Three operating speeds of
1.5, 12 and 480 Mbps.
Firewire (IEEE 1394)
A high speed serial interface used for
connecting audio/visual and multimedia
applications like digital camcorders,
digital cameras and digital TV
equipment, music systems.
In its latest version, IEEE 1394b, up to a
maximum of 800 Mbps.
1.6 Gbps and 3.2 Gbps versions are under
development.
Why are wireless connections between peripherals becoming popular?
Wireless connections have the following obvious advantages:
• you do not need to have wires trailing all around your desktop;
• it gives you a lot more mobility and freedom to position you peripherals exactly where you want them without having to worry about cable
lengths and extending cables.
The most popular way of setting up wireless connections uses Bluetooth.
• This is a short range wireless transmission system used for the wireless connection of peripherals such as keyboards/mouse, printers and
modems to computer systems.
• It can also be used to connect mobile phones and PDA’s to computer systems.
• It has a range of 10 metres or 100 metres within a signal booster.
• Its speed is at present a practical maximum of 720 kbps although by 2005, a 10 Mbps version is planned.
Computer Systems
Peripherals – Solid State Storage Devices
Solid State Storage
Unlike hard drives and CD drives, solid state devices have no mechanical or moving parts. They store data using
memory chips which can be written and rewritten to. They are often packaged and sold as ‘flash cards’, compact
removable units which fit into your pocket. There are two types: flash ROM and flash RAM.
Flash RAM needs power to retain its data and flash ROM does not.
Flash ROM uses a type of EEPROM chip, an Electronically Erasable and Programmable ROM chip. It uses an electrical
charge to change the value of blocks of data stored in memory. It stores data when the power is off.
Flash memory has to be erased and written in fixed blocks generally from 512 bytes to 256 Kilobytes.
There are commonly connected to a system via the USB interface and appear on the desktop as removable disks.
Recent advances have made Solid State Storage a viable alternative to a traditional Hard Disc Drive.
Advantages of Solid State
Open casing of 2.5” traditional hard disk
drive (left) and solid-state drive (centre).
• Solid state devices are much faster than mechanical disks: the access time,
the time taken to read in the data from a solid state machine is “instant”.
• They are compact and lightweight and so are highly portable
• They have no moving parts and so do not make a sound
Disadvantages of Solid State
The disassembled components of a hard disk drive
(left) and components of a solid-state drive (right).
• They are more expensive per megabyte of storage than a hard disk
• Flash chips generally have a limit to the number of times they can be written
to, normally between
Computer Systems
4 – Networking
Computer Systems
Network Strategy
A network strategy allows an organisation to manage how data is distributed across the
enterprise. It details the types of networking currently used by an organisation and the
requirements for future developments. This strategy needs to address the following:
Network
Strategy
- Data transfer
- Distribution/coverage
- Access and security
- Facilities
- Storage capacity
Data Transfer (Traffic)
How much data will be moving across the network and what are the projections for the future? Is the network carrying voice,
data and video?
Distribution / Coverage
Where is the data to be located? Which areas of the organisation will be granted access and to what extent? Is structured
cabling being used?
Access and Security
What precautions prevent unauthorised access to the computer systems and data?
Facilities
What applications and tools are available to process data on the network? What future applications are required?
Storage Capacity
What is the current capacity for data storage on the network and what are the projected requirements for storage?
Computer Systems
Network Architecture
A network exists where any group of two or more computer systems are linked together.
These tables will help you compare LANs, WANs, Intranets and Internetworks
Local Area Network - LAN
Functions
Geographical Spread
Transmission Media
Bandwidth
Sharing data files, sharing peripherals, enabling communication (e.g. via emails)
Usually limited to building/campus such as school, office block, factory. Usually up to 2km.
Twisted-pair copper cable, fibre-optic cable, co-axial cable.
Bandwidth depends on transmission media:
- twisted-pair copper cable: 10-100Mbps
- fibre-optic cable
- co-axial cable
Wide Area Network - WAN
Functions
Geographical Spread
Transmission Media
Bandwidth
Supports file transfer, communication (email), multi-user databases etc
There is no physical limitation. It could cover a city, country or be worldwide.
Telecommunication systems covering large distances.
Bandwidth depends on nature of telecommunications link.
Computer Systems
Network Architecture
Intranet
Functions
Geographical Spread
Used for internal communication within an organisation. Supports internal email, sharing of
data files, web pages. Examples include using web pages to advertise internal jobs or
training courses or sharing sensitive data within an organisation.
There is no physical limitation. It could cover a city, country or be worldwide.
Transmission Media
Intranets use the same telecommunications systems technologies as WANs to cover large
distances.
Bandwidth
Bandwidth depends on nature of telecommunications link, from 56kbps for dial-up, 128kbps
for ISDN, 10Mbps+ for broadband, 50mbps T3 telecoms leased line.
Internetworking
Functions
An internetwork consists of several networks joined by devices such as routers or switches.
The functions available to the users include those outlined for other networks.
Geographical Spread
An internetwork can vary in its geographical spread. It could be used to link several LANs in
the same complex or, using the telecommunications systems it could link networks spread
across a city or country.
Transmission Media
Depends on the configuration of the internetwork. If it is linking several LANs, it will probably
use a high speed backbone medium such as fibre-optic cable.
Bandwidth
Using a fibre-optic cable to link LANs would support a bandwidth of up to 100Gbps. Linking
netowrks across a wide area would involve using telecommunications.
Computer Systems
Networks, Terminals, Mainframes, Servers
Network
Terminals
A network is defined as an interconnected set of independent computers connected by a communications channel.
Networks are used to transmit and share data as well as enable communications.
Terminals are generally composed of a monitor and keyboard with little or no local storage or
processing power which serve as access points to the storage/processing capabilities of mainframe.
Mainframes are powerful computers systems which are designed to provide:
- High capacity input/output capability. This enables them to service thousands of users simultaneously by accessing
and storing data at high speeds.
- High speed processing. This enables them to process data for thousands of users simultaneously.
Mainframe
- Centralised storage, processing and management for large amounts of data.
- Reliability, security and centralised control.
- High availability: this means they normally operate 24 hours a day.
- Thorough backup, recovery and security systems.
File Server –
Server
Stores data files for all network users.
Holds information about users access rights (read/write etc) to files, folders etc
Print Server – Receives print jobs from clients
Queues the jobs, spools the jobs to disk while they are in the queue
Sends the jobs in turn, to the printer
Web Server – Enables HTML pages and other HTTP documents to be shared and accessed by systems using a
browser
Email Server – Manages, stores and controls access to, email
Computer Systems
Network Topology
The way that workstations are connected to the network through the actual cables that
transmit data, the physical structure of the network, is called the topology. Common
network topologies include:
- Bus
- Star
- Ring
- Mesh
- Tree
Network
Strategy
Bus Network
Consists of a main cable with a terminator at each end. All networked devices (nodes) are connected to the cable.
Advantages
Disadvantages
- Easy to implement and extend
- Main cable fault means entire network fails
- Cheapest topology to implement
-Requires terminators at both ends of backbone
cable to absorb signals
- Can survive node failure
- Can be difficult to locate faults
- Bus topology not intended to be used in large
businesses because of these problems
Computer Systems
Star Network
A star topology is designed with each node connected directly to a central node. The central
node can be a network hub or switch.
Network
Strategy
Each network device has its own direct cable connection to central node. This means that in
many cases more cable is required than for a bus network. However, adding or moving
computers is a relatively easy task. Data on a star network passes through the central node
before continuing to its destination. The central node controls all functions of the network. It also
acts as a repeater for the data flow by boosting the signal before sending it onto its destination.
Advantages
Disadvantages
- Easy to install and extend
- Significantly more network cabling required
- Easy to detect and correct faults
- If central node fails, then whole network fails
- Faults to individual nodes do not affect others
- More expensive because of hub or switch that
is needed to function as central node
Computer Systems
Ring Network
A ring topology consists of a set of nodes connected serially by cable. In other words, it is a
circle or ring of computers through which data travels in a clockwise direction. In a ring network,
a signal is transferred sequentially via a ‘token’ from one station to the next. When a station
wants to transmit, it ‘grabs’ the token, attaches data and an address to it and then passes it
round the ring. The token travels around the network until it reaches its destination address. The
receiving computer acknowledges receipt with a return message to the sender.
Network
Strategy
Each station on the ring has equal access but only one station can talk at a time. The ring
employs an active topology. Each station ‘boosts’ the signal before passing it to the next station.
Advantages
Disadvantages
- Network can grow without significantly
impacting on performance of the system
- Ring networks require specialist hardware to
function which makes them very expensive
- All stations have equal access to
communication because of the use of the token
- Failure of one computer may impact on others
on the network
Computer Systems
Mesh Network
In a Mesh topology, devices are connected with many redundant interconnections between
network nodes. In a fully connected mesh network, every node has a connection to all other
nodes. In a partially connected mesh, there are still multiple connections but all nodes are not
connected.
Network
Strategy
Full mesh is very expensive to implement and yields the greatest amount of redundancy. In the
event that one node fails, network traffic can still be directed to any of the other nodes. Partially
connected mesh is less expensive to implement and yields less redundancy.
Partially connected mesh
Fully connected mesh
Advantages
-Provide multiple paths along which data can
travel
- If one of the network connections is cut, there
will normally be another route available
Disadvantages
- Expensive to implement because of cable links
- Difficult to install because of number of
physical connections
- Complexity makes it difficult to manage
- Errors can be difficult to detect
Computer Systems
Tree Network
Network
Strategy
A tree topology is like a series of interconnected star topology networks. Tree topologies allow
for expansion of an existing network, and enable organisations to configure new networking to
meet their needs.
One segment
Advantages
Disadvantages
- Easy to install
- Length of each segment is limited by the cable type
- Easy to add additional nodes to a segment or
additional segments to the main central node
- Whole network fails if central connecting node fails
- Easy to detect faults / remove parts
- Errors/faults should only affect one node / segment
- Whole segment fails if segment central node fails
Computer Systems
Client-Server vs. Peer-to-Peer
Peer-to-peer
Peer-to-peer (or P2P) networking is a type of network in which each node has equivalent capabilities and
responsibilities in terms of communication on the network. No single node is responsible for storing all the
files or controlling data traffic.
Peer-to-peer networks are generally simpler than client/server networks, but they usually do not offer the
same performance as client/server networks under heavy loads. Peer-to-peer networks are commonly found
in homes or small business situations where only two or three machines are networks.
Client/Server
In client/server architectures some computers are dedicated to serving the
others. These computers, called servers, can be file servers, web servers and
so on. The nodes on the network, the clients, access the server for data.
The server then sends the data to the client in response to the request.
Peer-to-peer
Client-server
Centralised Storage
No centralised storage.
Each workstation stores data independently.
Data stored centrally at server.
Backup Regime
Implementing back-up strategy is very difficult.
Each workstation backs-up its data independently.
Centralised storage means centralised backup strategy, regularly e.g. daily.
Security
Security is difficult to implement because there is no
mechanism centrally managing access. Individual
workstations can set up IDs and passwords.
Server holds database of user information
that contains IDs and Passwords and user
access privileges.
Type of Environment
Is best suited to ‘trusting’ environment, for example
in the family home.
Commonly used in businesses and
organisations.
Computer Systems
Network Hardware
Network
Strategy
A wide variety of hardware devices are required for the correct operation of
a computer network.
Server
A server is a computer or device on a network that manages network resources.
For example, a file server is a computer and storage device dedicated to storing
files. Any user on the network can store file in the file server.
A print server is a computer that manages one or printers, and a network server is
computer that manages network traffic. A database server is a computer system
that processes database queries.
File Server
Servers are often dedicated, meaning that they perform no other tasks other than
their server tasks. Multiprocessing operating systems allow multiple programs to
run at the same time. A server, in this case, could refer to the program that is
managing resources rather than the entire computer.
Print Server
Hub
Hubs are commonly used to connect segments of a network. A hub contains multiple ports.
When a block of data (a packet) arrives at a port, it is copied to other ports so that all
segments of the LAN can see all packets. Hubs repeat everything they receive and can be
used to extend the network. Hubs pass on traffic to the network regardless of their intended
registration; the PCs to which the packets are sent use the address information in each
packet to work out which packets are meant for them.
Hub
Computer Systems
Network
Strategy
Network Hardware cont.
Switch
A switch acts very much as a hub, however a switch can interpret the destination of data
packets and will route packets only to their destination. This increases the capacity of the
network because the incoming data is not repeated to every node.
Switches control the flow of network traffic based on the address information in each packet. A
switch learns which devices are connected to its ports, and then forwards on packets to the
appropriate port only. This allows simultaneous communication across the switch, improving
bandwidth. Switches reduce the amount of unnecessary network traffic.
Switch
Switches and hubs can be used on the same network. Hubs extend the network by providing
more ports, and switches divide the network into smaller, less congested sections.
Repeater
A repeater is a network device used to regenerate or replicate a signal on a network. Repeaters
boost signals that are distorted by transmission loss. Transmission loss can occur when a
workstation is a considerable distance from the nearest hub or switch. In such a case, a repeater
would be required to boost the signal due to the length of the cable.
A repeater can also relay messages between segments of networks that use different protocols or
cable types. Hubs can operate as repeaters by relaying messages to all connected computers. A
repeater cannot do the intelligent routing performed by bridges and routers.
Repeater
Computer Systems
Network Hardware cont.
Network
Strategy
Router
A router is a device which forwards data packets along networks. It is normally connected to at least
two networks, often two LANs or WANs or a LAN and an internet service provider’s network. Routers
are located gateways, the place where two or more networks connect.
Routers use headers and forwarding tables to determine the best path for forwarding the packets, they
use protocols to communicate with each other and configure the best route between any two points on
the networks. A router typically links networks which use different transmission protocols.
Router
Bridge
A bridge is a device that connects two local area networks (LANs), or two segments of the same
LAN that use the same protocol. A bridge essentially joins together the two networks, allowing data
transmission between them.
Network Adapter (or NIC)
A network adapter, also known as a Network Interface Card (NIC), is a computer circuit board or card
that is installed in a computer so that it can be connected to a network. The network adapter encodes
and decodes networks transmissions.
Every computer attached to a network needs a network adapter card. The card is often built into the
computer at the time of manufacture. The network cable plugs into the card and the other end into a
socket and it therefore allows the computer to send and receive data across the network.
Bridge
Computer Systems
Perth High School Network
Internet
Library
To Primaries
3-13
H.T.O.
MS2
Server
Room
Computer Systems
Network Software
Network
Strategy
All computer networks require software in order to function. Computers and other devices connected to the network
must be network-enabled. This means that these devices must run a network operating system. In addition, networks
often require management tools which assist in the monitoring and administration of the network.
Network Operating Systems (NOS)
A network operating system (NOS) is any operating system product which has device drivers and communication
software which allow connection to network services.
There are 2 parts to the network operating system; the version that runs on the server and the version that runs on the personal
computers to turn them into network stations. The server software is needed to control which users and workstations can access the
server, keep each user’s data secure, and control the flow of information around the network. It is also responsible for file and data
sharing, communication between users and hardware peripheral sharing.
Each network workstation needs the network operating system installed before it can connect successfully to the network facilities. In
its early form, Windows did not support networking, so Novell NetWare became the first popular network operating system for the PC
(Windows 95 was Microsoft’s first networking operating system product). Today, nearly any consumer operating system qualifies as a
NOS due to the popularity of the Internet and the need to support basic Internet Protocol (IP) networking. The user is asked to log in
before they can access either the computer or the network.
Network Management System (NMS)
Network management software is a collection of tools which allow the performance, setup, security and functionality of the network to
be controlled and managed. It can be used to monitor both users’ activity and workstation activity. Small programs called agents run
on and monitor each of the computers attached to the network. User/workstation activity is logged by the agent and then sent to the
central Network Management System. Information gathered by agents is used to monitor and control network performance, network
configuration, network faults and network security.
Performance Management – Measures and controls network performance so that it can be maintained at an acceptable level
Configuration Management – Monitors the configuration (the arrangement) of the network and devices attached to it.
Fault Management – detects, logs, notifies users of, and sometimes automatically fixes network problems
Security Management - provides control over access to network resources to prevent unauthorised access and sabotage
Computer Systems
Networks and the Law
The Data Protection Act (1998)
This very important act is designed to protect people from having false
information about them stored on a computer database.
It concerns 2 main groups of people:
Networks &
The Law
Data Subjects (People whose personal details are stored – you and me!)
Data Users
(Organisations who store and use personal data – E.g. Mobile Phone Co.)
Data Subjects have the right to:
- See what data is being held about them (they may have to pay for the privilege!)
- have the data corrected if it is wrong.
- (You may be entitled to claim compensation for damage caused (“damages”) if personal data held about you is inaccurate, lost, or
disclosed.
Data Users holding the data must adhere to the following:
- Personal data shall be processed fairly and lawfully.
- Personal data shall be obtained only for lawful purposes, and shall not be further processed in any manner incompatible with those
purposes.
- Personal data shall be adequate, relevant and not excessive in relation
to the purposes for which it is processed.
- Personal data shall be accurate and, where necessary, kept up to date.
- Personal data processed for any purpose shall not be kept for longer than is necessary.
- Personal data shall be processed in accordance with the rights of data subjects.
- Appropriate measures shall be taken against unauthorised or unlawful processing of data and against accidental loss or destruction of,
or damage to, personal data.
- Personal data shall not be transferred to a country outside Europe, unless that country ensures protection for the rights of data subjects
in relation to the Act.
Changes from 1984 Data Protection Act – The 1984 DPA had certain shortcomings that unscrupulous companies exploited. For example it only covered data in electronic
form and companies used printed mailing lists and photocopied names and addresses onto labels to circumvent the DPA. It also had no European or worldwide dimension
and there was no obligation on any data user to tell the data subject that they held any data about them. The 1998 Act covers the transmission of data in electronic form,
which was not really an issue in 1984, and harmonised the European Union data protection legislation. It also made it a requirement of the Act to ask for the prior consent of
data subjects to have data held about them, and that included paper-based records.
Computer Systems
Networks and the Law
The Computer Misuse Act (1990)
The Computer Misuse Act (1990) was introduced to deal with the issue of computer
hacking and other unauthorised access to computer systems and unauthorised
modification of computer data. The act defines 3 offences in each of its 3 sections:
Legal
Implications
Section 1: unauthorised access to computer material
Section 2: unauthorised access with intent to commit or facilitate commission of further offences
Section 3: unauthorised modification of computer material
1: Unauthorised Access to Computer Material
It is an offence to gain unauthorised access to a computer system. This includes causing a computer to perform a function with intent to gain
access to any program or data, knowing that access is unauthorised.
This is an offence regardless of whether the motives for access are well meaning or malicious.
Examples of such offences would include unauthorised use of another person’s username and password, persistently trying to guess a
username and password, and laying a trap to obtain a password (possibly using a Trojan or virus).
2: Unauthorised Access with Intent to Commit or Facilitate Commission of Further Offences
It is an offence to gain access with the intent to commit another crime, for example, gaining access to a person’s online bank account with the
intention of stealing their money.
3: Unauthorised Modification of Computer Material
This part of the act outlaws the unauthorised modification of computer material. A person found guilty of this act could be convicted with a
maximum prison sentence of 5 years or an unlimited fine (or both!)
Examples of offences under this section would include deleting another user’s file, modifying system files, the introduction of computer
viruses, or deliberately generating information to cause a complete system malfunction.
The act also states that on a charge of attempting to commit an offence, as outlined above, it is immaterial
where the attack was made from, so a hacker from outwith the UK could be prosecuted. There have been
several successful prosecutions of hackers and computer virus developers using this law.
Computer Systems
Networks and the Law
The Copyright, Designs and Patents Act (1988)
The Copyright, Designs and Patents Act is a large and complex act. We only really need
to concern ourselves here with the Copyright section of the Act. It covers published
materials, software, music, film, pictures, books etc. We will consider how it applies to
software (including software piracy), computer databases, web content and digital media.
Legal
Implications
Copyright of Software
There are three methods of licensing software and slightly different copyright laws apply to each kind:
1. Commercial Software can be legally bought and installed on as many computers as the licence permits.
Home and small business users usually buy a single user licence, whereas schools, colleges, local
authorities and large businesses generally buy multiple licences.
2. Shareware is generally downloaded from the Internet and can be legally installed, usually for 30 days,
after which time a payment should be made to the author or the software uninstalled from the
computer.
3. Freeware is similar to shareware except that there is no need to pay and therefore no trial period. It can
be downloaded and installed free of charge.
Software Piracy
One area of great concern is that of software piracy, where illegal copies of software are sold or where software is installed on machines
when no licence has been purchased. So concerned are the software houses that an organisation called FAST – Federation Against
Software Theft – has been set up to try and prevent the large scale of software theft which is thought to exist within organisations in the UK.
Copyright of Computer Databases
As well as the applications themselves, the content created using a computer application is also protected by copyright. One area of great
concern commercially is that of computer databases. They can store vast amounts of very useful information, which may be commercially
valuable and may have cost the originators a lot of money to set up. The copyright laws cover the database, or an extract from it.
Copyright of Web Content
It is illegal for you to copy anybody else’s work without permission. This applies directly to material found on the Internet. It considered
plagiarism to copy material directly from Internet sites and try to pass it off as your own original work. If you must use the material it must be
acknowledged in some way.
Computer Systems
The Regulation Of Investigatory Powers Act (2000)
This Act provides for, and regulates the use of, a range of
investigative powers by a variety of public authorities, such as the
Police, Special Branch, GCHQ and MI5. It updates the law on the
interception of communications to take account of technological
change such as the growth of the Internet. It allows organisations to
monitor employees’ e-mail and web usage. It also provides powers
to help combat the threat posed by rising criminal use of strong
encryption to try to break into electronic transactions.
Networks &
The Law
The Act contains five parts providing for powers in relation to specific investigative techniques or establishing
systems of scrutiny, oversight and redress:
1. Relates to the interception of communications and the acquisition and disclosure of communications data.
2. Relates to the use of covert surveillance, agents, informants and undercover officers.
3. Covers the investigation of electronic data protected by encryption.
4. Provides for independent judicial oversight of the powers in the Act.
5. Covers miscellaneous and supplemental matters such as consequential amendments, repeals and interpretation.
In practice the act allows the authorities to monitor our personal e-mail and Internet
usage in terms of the sites we visit. Furthermore businesses, local authorities and
government departments can and do monitor e-mails, even internally, and Internet
usage of staff, students and pupils. This sounds very like ‘Big Brother’, and it may
enrage and disturb many people to realise that this monitoring occurs. Others believe
that, at a time when terrorists can be anywhere in our society it may be a relief to know
that the authorities are taking active steps to catch them.
Computer Systems
5 – Computer Software
Computer Systems
Computer Software – Systems Software
Intro to Software
Computer hardware can do nothing without sets of instructions and their associated data – called software!
Software can be divided into the following categories:
* Systems Software
* Applications Software
* Programming Languages
Systems Software
This is the set of programs used to operate and maintain a computer system. It includes:
* Single User Operating System
* Network Operating System
* Utilities (e.g. Disk Defragmenter or File Backup)
The systems software provides an user interface or layer of software that lets users operate the computer without
having to know about the underlying processes that are going on all the time!
For example,
- Users can save a file to disk without worrying where the file is stored and whether all the details about the file are
saved to allow the file to retrieved at a later date.
- Users can print a document currently stored in memory, without worrying which memory locations are used, how
the output is routed to the printer and whether the data is to be transferred via a direct link or over a network connection.
Computer Systems
Operating Systems
Operating Systems
The operating system is responsible for managing the hardware and communicating with the user.
Disk Based Vs ROM Based Operating Systems
Most modern computers store their operating system on disk, and load it into RAM at startup. The main advantage of
this is that it is very simple to upgrade the operating system. It also means that only those parts of the operating
system that are really needed have to loaded. Other parts can be left on disk until they are needed.
The main disadvantage of storing the OS on disk, is that other programs can corrupt it.
Older computers often had their operating system in ROM. This meant that it was ready as soon as the computer
was switched on! It was impossible to corrupt it the system (since it was READ ONLY) but it was expensive and
clumsy to upgrade.
Bootstrap Loader
Even the modern disk-based operating systems need a small part in ROM – the
bootstrap loader.
The bootstrap loader is the program that the processor runs on startup and whose task it
is to check the system memory and peripherals and then load in the rest of the
operating system from the hard disk into the main memory.
Computer Systems
The Main Functions of a Single User Operating System
Single User Operating System
The task of a single user operating system is to handle efficiently all the resources of a computer system, hiding their
complexity from the user and the rest of the system. The main resources are the processor, memory, backing storage
and peripherals.
Main functions of Single User OS
* Interpreting User Commands (CLI)
* File Management
* Memory Management
* Input/Output Management
* Processor Management
* Resource Allocation
Interpreting User Commands
This operating system function involves the computer system
taking instructions or commands from the user, checking
them and passing them onto the correct part of the operating
system which deals with that command. In early operating
systems, these were typed text commands. In modern
systems the operating system will have to check menu
selections and mouse click commands.
Computer Systems
The Main Functions of a Single User Operating System
File Management
The operating system supervises the creation, deletion and
updating of files. A directory is used to keep track of where files
are stored on the various backing storage media. It has to
maintain a hierarchical directory structure, where files are placed
in directories/folders and sub-directories/sub-folders.
Input/Output Management
The input/output layer of the operating system performs the actual transfer of data between peripherals and
memory. Its main functions are:
- control and timing to co-ordinate the flow of data between the CPU and external devices
- communicating with the processor and peripherals by accepting CPU commands, handling information
about whether peripherals are ready to send/receive data and managing the actual exchange of data to
and from memory and peripherals
- data buffering to regulate the speed between processor and main memory
- detecting errors during transmission
Computer Systems
The Main Functions of a Single User Operating System
Memory Management
This part of the operating system organises the storage of data in main memory.
Its main functions are:
RAM
- to load programs into memory so that each has the memory required
- monitoring the use of memory
ROM
- freeing memory locations when data is no longer needed
Process Management
A process is defined as a program that is being executed plus all the resources which are associated with
that that program (buffers, memory locations, input/output devices, data files etc)
The operating system:
- allocates resources to the process, such as memory, files, buffers
- schedules CPU time
- maintains the integrity of the process
- terminates the process and restores all system facilities so that they can be accessed by other processes
Resource Allocation
This refers to the process of allocating memory and CPU time to programs. Allocating memory is usually a
matter of admitting processes to the memory if there is enough space or delaying until there is space available.
Computer Systems
Utility Programs
Utility Programs
These are programs designed to carry out specific tasks related to the management or maintenance of a computer
system. They are not part of the core operating system as they are not needed on a continuous basis.
Virus Checker
This utility checks your system for virus software using a range of techniques outlined on slide
**. It is essential for system security and maintenance to run this utility on a regular basis. If
connected to a network, it may be a good idea to have this utility running in the background
whenever you are online.
Disk Clean-Up/Disk Editor
A disk editor or disk clean-up utility enables the user to remove all sorts of unnecessary files that clutter up
your system, some of which they may not even know exist, such as temporary internet files, temporary files
used by applications and offline web-pages that are no longer needed. Using this utility will free up disk space.
Recovery
This utility is used to restore files that have been corrupted. The utility normally has a wizard which will help you
locate an intact copy of your files from a backup and use it to replace the corrupted files on your computer system.
Disk Defragmenter
When the operating system saves a file to disk, it uses the first available empty sectors it finds. This
means that the disk will eventually have parts of files scattered across the disk surface which can
decrease system performance. To fix this, you can use a defragmenter. This utility rearranges the
contents of the hard disk so that the data blocks that make up a file are contiguous (right beside each
other). Defragmenting a disk frees up space and speeds up access times.
Computer Systems
Viruses, Trojans and Worms
What is a virus?
A virus is a destructive piece of software that attaches itself to a file, reproduces itself, and spreads to other files.
A virus will often lurk in a system before disrupting it, for example by corrupting data.
To understand the many types of virus is it helpful to classify them into types:
Classification of Viruses by Type of File Infected
File Virus
This type of virus attaches itself to an application program such as a game or any executable (.exe) file.
When you run the program the virus instructions are also carried out.
Boot Sector Virus
A boot sector virus infects the system that your computer uses every time you power up.
Macro Virus
A macro is a set of legitimate instructions to automate operations, for example producing a
worksheet. Hackers create a destructive macro, attach it to document and then often
distribute it over the internet. When a user opens the document the macro duplicates itself
into the macro library from where it attaches itself to other doucuments, spreading even
further.
Computer Systems
Techniques Viruses Use
Techniques Viruses Use to Disrupt a System
Replication
The virus inserts copies of itself into other program files. Each time the infected program is run by the computer, it reproduces itself,
copying itself into another program, often into that part of the code containing information about the program running: the program header.
Camouflage
A virus can disguise itself to avoid detection by anti-virus software by adding fake instructions to its code so that the anti-virus software is
unable to spot the pattern of instructions which identify it.
Watching
Some viruses copy themselves to memory and wait there checking for a condition before carrying out their destructive action, for
example on specific date or a certain combination of key-presses. Meantime it replicates.
Delivery
Some viruses copy themselves to memory and wait there checking for a condition before carrying out their destructive action, for
example on specific date or a certain combination of key-presses. Meantime it replicates.
Computer Systems
Trojans and Worms
Worms
What is the Difference between a Worm and a Virus?
Whereas a virus spreads from file to file, a worm spreads from one computer to another, usually via security holes in a network. Like a
virus it then reproduces itself. Unlike a virus it does not need to be attached to a document or an executable program.
How do Worms Spread Themselves?
The most common method used by worms to spread themselves is by attaching copies of themselves onto email documents and TCP/IP
packets and using them to move to other email servers and from there to user systems.
What do Worms do?
Worms are often used to activate a ‘Denial of Service' attack. This means they can flood a network with useless traffic which
overwhelms a network’s processing capability and halts communications.
Trojans
What is a Trojan?
A Trojan is software which appears to be doing one thing but actually secretly does another. A classic Trojan
activity is to pretend to be a network login screen so it can steal an ID and password which it either emails to a
hacker or stores in a file tha the hacker can easily get to later. Others pass themselves off as graphics files or
adverts.
Computer Systems
Virus Detection Techniques Used by Anti-Virus Software
Searching for Virus Signatures
Whereas a virus spreads from file to file, a worm spreads from one computer to another, usually via security holes
in a network. Like a virus it then reproduces itself. Unlike a virus it does not need to be attached to a document or an
executable program.
Use of Checksum
This technique scans an uninfected program file and calculates a checksum using the binary values of the data in
the file. It then scans the file whenever the program is run and repeats the calculation. If the calculation produces a
different checksum, it knows that the code has been altered, possibly by a virus.
Memory Resident Monitoring
This is anti-virus software residing in RAM which monitors all a computers actions for suspicious activity, for example copy or
decompressing files, attempts to modify programs, instructions that remain in memory after they’ve been executed. If it finds
anything suspicious it throws up an error message and halts all operations.
Heuristic Detectors
This software looks for code that is triggered by time or date events, for code that searches for .com or
.exe files, and for instructions that try to write to disk without going through normal operating system
procedures.