Hardware Computer Systems Standard Grade Computing Studies Computing Department, Calderside Academy
Software Computer Systems Standard Grade Computing Studies Calderside Academy Computing Department
What is software
is the term that we use for all the programs and data that we use with a computer system.
Two types of software
Program - the instructions that the computer follows (e.g. a word processor or a game).
Data - what the programs process (e.g. a word processing document or a saved game)
More on software
there are two types of program software.
programs used to organise the computer, handle its devices, manage memory etc. The Operating System is Systems Software (see later).
programs designed to carry out a manual task (Word Processors, Databases, Graphics etc.)
The Operating System
The operating system (OS) is the most important program used by the computer .
The OS in most modern computers is stored on hard disc and is loaded into RAM when the computer starts up.
Some computers store their OS in ROM so that it cannot be erased by accident. ROM operating systems load very quickly.
The operating system controls and monitors the operation of the computer system.
The filing system is part of the OS and it controls the loading and saving of programs and data from backing storage.
Modern Operating Systems
Examples of operating systems which are disc based
Windows 98 for the PC
System 8 for Apple Macintosh
Unix for large fileservers and networks.
Examples of operating systems which are ROM based
JavaOS for Network Computers (NCs)
RiscOS for ACORN Computers
Windows CE2 for palm top and handheld computers.
Standard Functions of the OS.
the OS provides the means of communicating with the computer system (Icons, commands etc. are all provided by the operating system).
The way that memory is allocated to programs is controlled by the OS.
The access to all devices attached to the computer is controlled by the OS. For example, the OS can stop two programs trying to use the same device at the same time.
More OS - Standard Functions
The filing system manages backing storage
The access to all types of backing storage devices is controlled by a special part of the operating system called the filing system.
The filing system will prevent two programs trying to access the same files at the same time.
When a computer is running the demands on the systems resources (i.e. memory, input/output devices, backing storage etc.) may be greater than the resources available. To deal with this a resource allocation system is built into the OS.
Various techniques are used to prevent two programs demanding the same resource at the same time (e.g. two programs can't both send files to the printer at the same time).
The resource allocation system also ensures that all programs running on the system receive as much processing time as possible.
OS - Special Functions
Also know as multi-tasking. Some operating systems allow more than one program to run on the system at the same time. This is possible because the resource allocation system shares the processors time between the different programs.
Some operating systems allow many users to use the same computer system at the same time. Any computer system used in this way will have a multi-access operating system. The resource allocation system shares the resources of the computer system (discs, memory, processor etc.) between the different users.
OS - Different modes of processing
There are several different modes of processing.
Accepting input from a human. Interactive computer systems are programs that allow users to enter data or commands. Most popular programs, such as word processors and spreadsheet applications, are interactive. In interactive processing, the application responds to commands as quickly as it can once they have been entered. Sometimes there is a delay while the processor finishes another task.
Real-time operating systems are systems that respond to input immediately. Automatic teller machines for banks are an example of real time processing. Real time systems are used for tasks such as navigation, in which the computer must react to a steady flow of new information without interruption.
OS - Different modes of processing (cont.)
Executing a series of jobs (programs + data) all at one time. The term originated in the days when users entered programs on punch cards. They would give a batch of these programmed cards to the system operator, who would feed them into the computer.
Usually, batch jobs are stored up during working hours and then executed during the evening or whenever the computer is idle. Batch processing is particularly useful for operations that require the computer or a peripheral device for an extended period of time. Once a batch job begins, it continues until it is done or until an error occurs. Note that batch processing implies that there is no interaction with the user while the program is being executed.
OS - Different modes of processing (cont.)
Interactive systems with background job capability
Some operating systems allow a background process to occur at the same time as a foreground interactive process.
The foreground process is the one that accepts input from the keyboard, mouse, or other input device. Background processes cannot accept interactive input from a user, but they can access data stored on a disk and write data to the video display unit.
For example, some word processors print files in the background, enabling you to continue editing while files are being printed.
The Filing System
The system that an operating system uses to organise and keep track of files.
The filing system can access the contents of floppy and hard discs. The contents of these discs is held in the directory(also called catalogue). The filing system reads this information so that it can find any file on the disc straight away.
Types of File
Software can be stored on backing storage as files. There are two types of files.
Program files (such as the operating system, word processors etc).
Data files (such as graphics images, documents etc).
Types of filing system
A hierarchical filing system is one that uses directories to organise files into a tree structure.
Hierarchical filing system
A filing system in which directories have files and subdirectories beneath them.
To go from file A to file Z in a sequential-access system, you must pass through all intervening files.
Sequential access is sometimes called serial access.
Refers to the ability to access data at random. In a random-access system, you can jump directly to file Z. Disks are random access media, whereas tapes are sequential access media.
The operating system is just one example of systems software.
Other examples of systems software are:
Printer manager utilities
All these are examples of programs. Programs can be written in a number of different ways...
Low Level Languages
Computers only understand binary!!!
All programs have to end up in binary language in order work.
The binary language that the computer understands is called MACHINE CODE
Machine code looks like this…
NOT very easy to understand.
That’s why High Level Languages and Assembly Language have been produced...
High Level Languages
We use high level languages (HLLs) because programming in low level languages like machine code is VERY difficult.
High level languages make it easier for us to write programs because we can use commands that mean something (PRINT, END, IF, THEN).
High level language programs still have to be converted into machine code to work. This is done by a translator.
There are lots of different HLLs but they all still have several things in common...
Common features of High Level Languages
English like words and phrases as instructions eg. PRINT, IF, THEN, END, STOP, ELSE, OPEN etc.
Arithmetic operations such as multiply, divide, add subtract etc.
High level languages are problem orientated. This means that the programmer can forget about the internal workings and set-up of the computer system and can concentrate on solving the problem.
Common features of High Level Languages
Words and symbols are combined to conform to a predefined SYNTAX to produce program instructions (also called statements). Syntax are the rules which govern how the program commands are used (similar to the rules of grammar that govern how we use the English language).
Must be translated into machine code. A special program (a type of systems software) called a translator does this….
Types of translator
There are two types of translator for high level languages .
A program that translates source code into machine code. The compiler gets its name from the way it works, looking at all of the source code and collecting, reorganising and converting the instructions into machine code.
Compilers require some time to create an executable program. However, programs produced by compilers run much faster than the same programs executed by an interpreter.
The program produced by the compiler is executable. It does not need the compiler or the source code.
Many compilers are available for the same language. For example, there is a FORTRAN compiler for PCs and another for Apple Macintosh computers. This makes the program source code PORTABLE (able to run on a number of different computer processors).
Types of translator
An interpreter translates high-level instructions into a machine code line by line. Each HLL statement is converted, in turn, into machine code and then executed.
An interpreter can immediately execute high-level programs (unlike a compiler). For this reason, interpreters are sometimes used during the development of a program, when a programmer wants to add small sections at a time and test them quickly. Also interpreters are often used in education because they allow students to program interactively.
The advantage of an interpreter over a compiler is that it does not need to go through the compilation stage during which machine code instructions are generated.
Many interpreters are available for the same language. For example, there is a BASIC interpreter for PCs and another for Apple Macintosh computers. This makes the program source code PORTABLE.
Machine code consists entirely of numbers and is almost impossible for humans to read and write. Assembly language has the same structure and set of commands as machine code, but it allows a programmer to use names instead of numbers.
Each type of processor has its own machine code, so an assembly language program written for one type of processor won't run on another.
In the early days of programming, all programs were written in assembly language. Now, most programs are written in a high-level language such as FORTRAN or C. Programmers still use assembly language when speed is essential or when they need to perform an operation that isn't possible in a high-level language.
Types of translator
There is one type of translator for assembly language programs.
A program that translates programs from assembly language to machine language.
General purpose high level languages are written for a wide variety of tasks. They can be used for any type of application however they may lack certain commands that make particular tasks easy to do.
Special purpose high level languages are written for particular types of task. For example Delphi is written for windows database programming and has special commands that make this type of task easier to carry out.
Computer System - Block Diagram
The Computer System consists of four parts.
Input, Processor, Output, Backing Storage
Data Flow Processor Output Input Backing Storage
Advanced types of Input
With voice recognition systems the computer can understand the words spoken to it and can carry out commands associated with the words. Using voice recognition a letter can be dictated instead of being typed at the keyboard.
Handwriting can be recognised and the computer can convert the written text into typed text for storing.
A scanner is used to take information stored on paper and read it into a computer system. Scanners can be used to convert photographs, paintings etc. or even typed text into a form that can be stored on a computer.
Optical Character Recognition
Is used to convert paper typed documents into text files that can be edited and stored on a computer system.
OCR software can search a scanned image for the shapes of letters, numbers etc. When it finds shapes that match it converts them to the correct text and stores them in a file.
Advanced types of Input
A trackball is basically an upside down mouse. A trackball allows the user to move a small ball in order to move the pointer across the screen.
A graphics tablet allows the user to draw on a special worktop. As the user draws the details are stored on the computer system. These devices are most often used by architects and designers.
More on Output Devices.
There are two types of printers
Printers are used to create a hard copy of output from the computer system (normally on paper).
Laser printers are more expensive , produce high quality printouts, can produce 8 to 12 pages in a minute and are almost silent when they are working.
Inkjet printers are cheaper than laser they produce reasonable quality printouts
(not quite as good as laser), can often printout in colour , print 2 to 5 pages in minute
but they are a little noisy .
More on Output Devices
Visual Display Unit (VDU) is the proper name for the computer monitor. The VDU allows us to see the output from the computer.
A plotter is a device used for creating a hard copy of the output from a computer system. Plotters use special pens to draw the output as a series of lines. Plotters are often used to output building drawings and designs.
More on Output Devices
Voice output from a computer system is also know as speech synthesis. Some voice output programs are know as text readers. They take a text file and recite it to the user.
Other speech synthesis programs can tell the user what they are doing (for example floor announcements in a speaking elevator). Hello, I am Hal!
More on Backing Storage
Magnetic tape, floppy disc, hard disc and CD-ROM,CD/RW(rewritable) DVD, DVD/RW(rewritable) are all types of backing storage. The newest and most portable storage is usb memory stick .
Tape cheap Floppy disc CD / RW USB memory stick. Portable
What is the CPU
CPU - Central Processing Unit
It is the combination of the Processor and Memory.
There are TWO types of memory in the CPU, RAM and ROM.
Memory Control PROCESSOR Data Flow Central Processing Unit ALU.Arithmetic and Logic Unit ROM RAM Control unit
RAM and ROM
RAM is Random Access Memory
It can be written to and read from. It is where most programs and data are stored while the computer is being used.
ROM is Read Only Memory
Data stored in ROM can only be read, it can never be written over or deleted. We normally store important programs in ROM to do with the computers Operating System (see later).
More about the Processor
The processor is made up of two main parts.
The CONTROL UNIT fetches program instructions from the memory storage locations, decodes and then executes them.
The ALU (Arithmetic/Logic Unit) carries out all the calculations as instructed by the control unit.
Binary is used to store all the data and programs in a computer system.
We use binary to store:
Graphics , Text , Numbers , Video, Sound and Programs .
Binary is just the code used to store the data.
Numbers are stored in binary.
1 Bin is 1 Dec
10 Bin is 2 Dec
1000 Bin is 8 Dec
1001 Bin is 9 Dec
1111 Bin is 15 Dec
11111111 Bin is 255 Dec
You don’t need to understand binary (that’s Maths) but you do need to know that it is how most numbers are stored in the computer.
Storing large numbers
In most computers the largest binary number that they can store in 32 ones long.
The biggest number we can store in ordinary binary in these 32 bit computers is 4294967295.
If we want to store more we need to use FLOATING POINT REPRESENTATION .
Floating Point is the Computing version of Standard Form.
Floating Point Representation
The point is floated to the left
.2451 x 10 5
Mantissa Exponent The Mantissa is the number to be stored rounded to a few places and with the point moved. The Exponent is the number of places we must move the point to the right in order to get back our original number, 24510 . What must you know? Large numbers can be stored in a computer using floating point representation. The number is broken into two halves. The first half (the mantissa) is the number rounded to a few places and the second half (the exponent) is the number of places the point must be moved to create the original number!
Text is stored using a special set of codes called ASCII.
Each symbol (letter, number etc) has its own unique code e.g.
a is 97, A is 65, ? is 63, 3 is 51
ASCII ( A merican S tandard C ode for I nformation I nterchange)
One ASCII code is one byte long (eight bits).
Black and White graphics as stored using pixels ( Picture Elements ).
The image to be stored is broken up into dots, each dot is a pixel.
The pixels are ON for black and OFF for white e.g.
A character set is the set of characters that a device or a program uses.
For example some printers use character sets that are different from the software that is printing to them.
When the ASCII code for a symbol reaches the printer the printer substitutes the character from its character set with the same code.
A common problem created by non-standard character sets is £ being replaced by $ or @.
The character set for all types of devices contains special control characters .
These control characters carry out special operations like switching a printer on or off, clearing the VDU or moving a robot arm.
The ASCII control code 7 sounds makes the PC speaker beep.
More on Memory
Computers store blocks of data called ‘words’ in memory (A 32 bit computer has words that are 32 bits long) .
Each place that can store a word is called a storage location .
Each storage location has a unique address that identifies it from all the other locations.
The size of memory, hard disc space, floppy drive space, programs, data files etc. are all measured by the number of bytes, kilobytes, megabytes or gigabytes (1024 megabytes) they can store.
445 floppy discs = 1 CD-ROM
Types of Access
There are two types of access
Random Access (also called Direct Access ) devices retrieve the data you want straight away e.g. CD-ROM drive, Hard disc drive, floppy disc drive.
Sequential (also called Serial ) devices have to move through all the data, record after record, to find the data you need e.g. Cassette tape, magnetic tape.
Non-magnetic storage involves the use of media not coated in magnetic material.
Examples of this are: CD-ROM, Video Disc, Digital Video Disc (DVD)
These use pits and bumps (lands) on the disc to store digital data and use laser light to write and read them.
Virtual Reality involves the user entering a 3D world generated by the computer.
To be immersed in a 3D VR world requires special hardware e.g.
A headset (containing goggles , headphones and a position tracker )
A data glove or data suit so that the users body can interact with the VR world.
Multimedia systems combine graphics , text , sound , video and animation to provide a rich experience for the user.
Many interactive multimedia software titles are available now.
Often these are stored on CD-ROM e.g. Microsoft Encarta.