420 likes | 527 Views
COMPUTING (Higher). Unit 1 Computer Systems Topic 5 – Computer Software. COMPUTER SOFTWARE Systems Booklet 4 - Page 4.
E N D
COMPUTING(Higher) Unit 1 Computer Systems Topic 5 – Computer Software
COMPUTER SOFTWARESystems Booklet 4 - Page 4 • A processor can do nothing without instructions. These instructions with their associated data make up the programs or software that are needed to do the various tasks in a computer. • Software can be divided up into the following categories: • System software • Applications software • Programming languages • In this topic we will be looking at the first 2.
System SoftwareSystems Booklet 4 - Page 4 • System software refers to the operating system and to all utility programs that manage the way the computer works or how it is used. The systems software provides a layer of software that lets users operate the computer without having to know about the underlying processes that are going on all the time.
The Operating SystemSystems Booklet 4 - Pages 4 - 6 • The operating system software (OS) is the most important part of system software. Without the operating system software the computer would be useless. All computers need an operating system to tell them how to work. • The operating system software is the very first program or set of programs loaded when the computer is switched on. The operating system software controls and monitors the operation of the computer system and how the hardware connected to the CPU is used.
The Operating System (2) • The operating system is also responsible for managing the hardware and communicating with the user. It can be broken down into various layers but the exact details of these are not needed here. (but is shown on the next slide for reference) • The advantage of putting software into layers is that, if a manufacturer updates part of your operating system, only the software dealing with that layer needs to be rewritten.
Command Language Interpreter File Management Memory Management I/O Management Level kernel
The Operating System (3) • Most modern computers keep their operating system on disk and load it into RAM on start-up. • Advantages of this are • It is very simple to upgrade the operating system. • Only those parts of the operating system that are really needed have to be loaded with other parts left on disk until needed. • The main disadvantage is that other programs can corrupt the operating system.
The Operating System (4) • 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 the system but very difficult to upgrade it. • Even the modern disk-based operating systems need a small part in ROM – the bootstraploader – which is the program that the processor runs on start-up and whose task is to load in the rest of the operating system from the hard disk.
Common Features of Operating System Software.Systems Booklet 4- Pages 5 - 6 • All operating systems have certain standard functions. These standard functions can be found in all operating system software. These include: • Managing Memory • The operating system controls • how blocks of the computer’s memory are given to programs and data, • keeps track of what stage each program is at and • ensures that no process tries to access the memory space of a different program. This applies especially to the operating system’s space. • If it is corrupted in some way it could cause the whole computer system to crash.
Command Language Interpreter • The operating system has to take user commands from the keyboard, mouse etc., interpret the commands and pass them to the appropriate part of the operating system that deals with that command. If the command cannot be understood, a suitable error message should be given.
Managing Input and Output • All peripherals work at different speeds and have different characteristics. The I/O system hides these differences and makes them all appear to operate in a similar manner. It is the task of the I/O system to do all the actual data transfers and issue the appropriate control signals to the peripherals. • If extra hardware is added then the manufacturer will supply the appropriate software (often called a driver) to handle that peripheral. It will then be up to the user to install the ‘driver’ into the operating system on the hard disc.
Process Management • The operating system has to decide which of the tasks in a multi-tasking environment gets to use the processor. • In a single-program operating system it only has to choose between the operating system itself and the package being run but on larger systems which can run several programs simultaneously, this becomes much more complex. Process management is usually called the kernel, as it is the core function of the operating system.
Managing 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. Whenever data is saved or loaded the filing system controls what happens. • Whenever data is saved the operating system takes care of how the data is written to the backing store. • So, if you are using a piece of application software and wish to save your data to the backing store, you would use the SAVE command in the application software which would then pass the data to be saved to the operating system which would then write the data to the computer hardware (see figure on next slide).
Data to be saved. Application software Data is written to backing storage. Operating System Backing store The part of the operating system that manages backing storage is the filing system. The filing system will prevent two programs trying to access the same files at the same time.
More on the Filing System • The operating system supervises the creation, deletion and updating of files. A directory has to be kept which keeps track of where files are stored on the various types of backing storage.
Catalogue/Directory • The filing system can access the contents of floppy and hard discs and other backing stores. Data is stored on most modern backing stores in areas called directories. The list of the contents of these directories is called a catalogue. • 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).
Flat filing system • All the files are organised into one single directory. This type of system presents us with several problems. • If there are so many files in the directory that their names won’t fit on one screen it can be difficult to find the particular file you want. • Each file on a flat filing system must have a different name. If you give two files the same name the most recent one will overwrite the first file – which you will lose.
Computer C:/ D:/ Drives Folders Files • Hierarchical Filing System • A filing system in which directories have files and subdirectories beneath them. A hierarchical filing system is one that uses directories to organise files into a tree structure. A hierarchical filing system
Security • In some operating systems, especially ones that run on computer networks, the access to the computer system is controlled by the operating systems through passwords. • User interface • The operating system provides user interface. This is the means of communicating with the computer system. Features such as icons, commands etc. are all provided by the operating system. • All of the levels are essential to the running of a computer system and the software for them will be loaded in when the computer is started up and kept in memory as long as the computer is switched on.
Resource Allocation • 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.
Utility SoftwareSystems Booklet 4 - Page 8 • Utility programs are those programs that are used to enhance the functions of the operating system. • Disk editing programs - allow the user to recover damaged or deleted files or to partition the disk (e.g. Undelete). Allows the user to directly edit contents of disk sectors/blocks • File compression - reduce the amount of space that a file takes up on disk. • Disk defragmentation tools – see next slide. • Virus checking tools – see later slides.
Disk Defragmentation Tools • Disk defragmentation tools are used to combat the problem of file fragmentation. • This is when files are broken up by the OS, with the various portions dispersed across the disk. Usually happens when a number of small files are deleted from a disk, and the file system fills in the gaps left by the deleted files when the next file is saved. A defragmentation utility reorganises the way the files are laid out on the disk so that the components of a file are near to each other. This speeds up file accesses.
Advantages of using Utilities • frees the computer system of unnecessary clutter • improves the performance of the computer system • can speed up Internet connection • frees up system memory • recovers accidentally deleted files • can prevent virus infection • aids the organisation and ‘health’ of the Computer System
Utility Software – Typical Qs • Q4 – 2005 • Describe the function of a defragmenter. • • The defrag utility locates parts of files around disk and re-orders into physically adjacent blocks on the disk, thereby speeding up loading of files / file access / gather free space at end of disc. • Q4 – 2009 • System software consists of the operating system and utility programs. • A disk editor is a common example of utility software. Describe one function of a disk editor. • • Allows the user to directly edit contents of disk sectors/blocks • • Allows recovery of damaged/deleted blocks/files
Standard File Types - Graphic Applications • Many applications use computers to generate Graphics. However sometimes it can be really frustrating when you want to use another computer to load a file. • The problems that can occur are: • The saved backing storage format is different. (e.g. Mac disk on a PC) • Differing operating systems won't recognised files. • The computer does not have the appropriate application software. • The first two problemscan be resolved by using either a different computer, ensuring that your media is formatted for the correct standard or installing different operating system software. • The third problem is typical as each application saves files in its own way and other packages find it difficult to read these files.
Types and Formats of ImagesSystems Booklet 3- Page 11 • However, standards have been set which allow the user to save data in a format that can be read by other packages. • The disadvantage of saving files using these standards is that special formatting created within the original file may be lost e.g. different styles, fonts and sizes. • These different formats can usually be chosen in the Save As.... menu option in each package. • When considering graphical images as opposed to animation and video it is important to look at the formats in which they can be stored. • TIFF • JPEG • GIF • are a few standard file formats that are commonly used for representing graphics.
JPEG • JPEG is a standard developed by the Joint Photographic Experts Group and makes image files small by removing detail. This is called a ‘lossy compression’. • JPEG follows an algorithm which cuts out certain pixels and then saves the resulting image in a vector format, meaning that the image is not as sharp as the original. The highest quality results in the largest file size so a trade off has to be made between image quality and file size. • Currently JPEG is the most popular standard for several reasons. • It can handle a large number of colours. • A large number of applications recognise it. • It is a cross-platform standard. • JPEG is one of the image file formats supported on the WWW and is suffixed by ".jpg".
GIF • The Graphic Interchange Format (GIF) is an older graphics format which operates in a similar way to JPEG files. • Significantly, GIF’s preserve all the precise shapes in an image i.e. when decoding, the algorithm uncompresses the file to generate the original image. (lossless compression) • GIF files can have a colour range up to 256 colours (2 to the power of 8). This 256 colour limitation limits its ability to store photo images effectively. • The web also supports GIF (Graphics Interchange Format) images A GIF file can be identified as a file with a “.gif” suffix.
TIFF • TIFF (Tag Image File Format) is a standard format for encoding bitmap images e.g. scanner images, and can be any resolution. • TIFF files can be in any of several classes, including grey scale, colour palette, or RGB full colour (24 bit), and can include files with JPEG and GIF formats. • TIFF is popular because graphics can be edited right down to pixel level. However, TIFF files tend to be large and need to be compressed. • TIFF files tend to be used for DTP rather than Multimedia, and can be identified as a file with a ".tiff" or ".tif" suffix.
SFF – Typical Qs • 2009 – Q9 • A graphic file is to be transferred as an e-mail attachment. Explain why a JPEG file might be preferred to a TIFF file for the graphic in this situation. • JPEG achieves greater compression (1 mark), therefore less time to be transferred/reduction in net traffic (1 mark) • 2007 – Q17(b) State two reasons why digital images are stored as JPEGs. • JPEG files are compressed (to reduce file size) • JPEG is a common file format (used by many applications). • JPEG supports millions of colours/has large bit depth/24 bit (more realistic image).
VirusesSystems Booklet 3- Pages 14 - 17 • A virus is program code that causes some undesirable and unexpected event to happen in a computer. • Viruses are usually disguised as something innocent and are designed so that they automatically spread within or between computer systems. • Viruses can enter a system as an attachment to an e-mail, download from the web, or from on a disk or CD. • Some viruses take effect as soon as their code is executed. • Others can wait until circumstances cause their code to be executed by the computer. • Viruses can be quite harmful and erase data or close down a system.
Virus Types • The main classifications of virus are listed below: • File Virus • Attached to .exe or .com files or complete program or script attached to e.g. e-mail so that the computer will actually try to execute it. • Once resident in the computer it is ready to cause havoc • Boot Sector Virus • These infect executable code found in boot sector on disks (bootstrap loader) or the master boot record on hard disks. • To infiltrate the boot sector, the virus is read while the system is running and then activated the next time the operating system is loaded. By putting its code in the boot sector, a virus can guarantee it gets executed. • Most boot sector viruses are not very common any more as most operating systems now protect the boot sector.
Macro Code Virus • Macro viruses are fairly common viruses (75% of all viruses today are macro viruses), but tend to do the least damage. • Macro viruses infect applications and typically cause a sequence of actions within the application e.g. inserting unwanted words or phrases in a document. • Once a macro virus gets onto your machine, it can embed itself in all future documents you create with that application. • Email Virus • An email virus attaches itself to email messages, and usually replicates itself by automatically mailing itself to everyone in a user’s email address book.
Other Infections(These are not classified as viruses as they don’t self-replicate or infect other files) • Worm • This is a self-replicating virus that does not alter any files but takes up residence in the computer’s active memory. It only becomes noticeable once its replication consumes the memory to the extent that the system slows down or is unable to carry out particular tasks. • Worms tend to use the parts of the computer’s operating system that is not seen by the user until it is too late. They may also shut the systemdown. • Trojan horse • A Trojan horse is a program where harmful code is contained inside other code which can appear to be harmless. Once the apparently harmless code is in the computer, it releases the malicious code to do its damage.Unlike viruses, Trojan horses do not replicate themselves but they can be just as destructive. One of the most dangerous types of Trojan horse is a program that claims to rid your computer of viruses but instead introduces viruses onto your computer
Virus Code Actions • Viruses use a combination of actions to spread. These are: • Replication • Most viruses use replication to infect computer systems. Virus attaches itself to any type of file and copies (replicates) itself very quickly. Can replicate many times before activation. • Camouflage • Takes on characteristics that detection software doesn’t look for. Good anti-virus software is aware of this and makes more checks (check sum etc.). • Watching • Lies in wait and activates when a condition is met e.g. correct date. It then attaches itself to a program or file and spreads. • Delivery • Sometimes viruses can be attached to external backing storage media such as USB sticks and e-mail. Virus waits for trigger to drop its payload. Once the disk has loaded its contents into memory the virus can attach itself to executable programs.
Typical Qs • 2009 – Q5 • A trojan horse is a malicious computer program. State one characteristic of a trojan horse. • • Not spread by infecting other files or self replicating • • Disguises itself or appears to be a harmless/ordinary/useful file • 2008 – Q2 • Explain why a trojan horse is not classified as a computer virus. • • A trojan horse is not self replicating • • Does not infect other files • 2007 – Q9 - State the type of virus that can affect the computer during the loading of the operating system. • Boot sector virus
Anti-Virus Techniques • Checksum • A checksum of a file can be formed by adding up all the instructions used within that file. The result is then added to the file. When the file is about to be run the checksum is recalculated and if there is an error then it is assumed that the file could be infected and a warning is given. • Virus Signatures • A virus signature is a unique string of bits of a virus. The virus signature is like a fingerprint in that it can be used to detect and identify specific viruses. Anti-virus software uses the virus signature to scan for the presence of malicious code and remove (disinfect) it.
Heuristic detection • Approaches problem using past knowledge. Using a virus’ signature, heuristics look at characteristics of viruses that are already known. • This is useful for finding unknown viruses. By using previous knowledge the heuristic can measure how likely it is that the computer system has been infected. • Memory Resident Monitoring • Anti-virus software stays in memory at start-up and actively monitors the system. • The downside of this type of anti-virus software is it takes up RAM and hence can slow down the usual function of the computer as checks are being consistently carried out as programs are being loaded and run.
Typical Questions • 2009 Q2 - Explain how the heuristic detection technique is used to detect a virus. • It looks for a suspicious pattern of behaviour (which was previously associated with a virus) • 2007 Q18(d) - Debbie installs the latest anti-virus software to help prevent the computer from becoming infected. • Name and describe one anti-virus software detection technique. • Checksum – a checksum of system’s key files is recorded. When file is run, checksum is re-calculated. Any anomaly between checksums is reported • Signature – checks for known signature (bit patterns) of viruses • Heuristic – use knowledge of characteristics of previous viruses to detect future viruses • Memory resident monitoring – software is always resident in memory, checking for possible infection.
Selecting SoftwareSystems Booklet 4 - Pages 18 - 20 Look at the booklet!!!
Software CompatibilitySystems Booklet 3- Page 13 • When purchasing application software it is vitally important that checks are made to make sure you have the needed software, hardware, and operating system to run the application before installing it. • Each piece of software includes details of the minimum system specification required to run the application. This will include: • Operating System • Minimum RAM • Processor • Hard Disc space • Peripherals required