Hcs Topic 5 Software V2

42
CS Topic 5 - Computer Sof tware v2 1 Computer hardware would be useless without software , the lists of instructions which tell the hardware what to do. Computers require various types of software to make them useful. These can be classified as follows: 1. Operating System 3. Applications software 2. Utility software

Transcript of Hcs Topic 5 Software V2

Page 1: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 1

Computer hardware would be useless without software, the lists of instructions which tell the hardware what to do.

Computers require various types of software to make them useful. These can be classified as follows:

1. Operating System

3. Applications software

2. Utility software

Page 2: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 2

1. Operating system

3. Applications software

2. Utility software

The operating system(OS) is the piece of software required by the computer to make sure that it works correctly and efficiently.

It manages the computer and allows the user to communicate with the hardware.

Storing the OS on disk means that it can be easily updated. Windows Vista and XP are updated on a daily basis.

Modern operating systems are typically stored on Hard disk and loaded into RAM when the computer is switched on.

Page 3: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 3

1. Operating system

3. Applications software

2. Utility softwareThe bootstrap loader

The bootstrap loader is a small but very important part of the OS which is permanently stored in ROM.

When the computer is first switched on the bootstrap loader starts to run.

It checks the RAM and input/output devices to make sure that they are working and then locates the OS on backing storage, usually on Hard disk but could be on CD or even a memory stick.It then loads the OS into RAM and the OS takes over control.

Page 4: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 4

1. Operating system

3. Applications software

2. Utility software

The main part of the operating system in RAM manages the computer and allows the user to communicate with the hardware

It has 6 main functions:

• Interpreting User Commands

• File Management

• Memory Management

• Input/Output Management

• Managing Processes

• Resource Allocation

Page 5: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 5

• Interpreting User Commands

This part of the operating system accepts commands (from a keyboard, mouse, etc) and passes them to the appropriate parts of the operating system.

If the syntax of the command is not correct then an error message should be displayed for the user or the command should be ignored. e.g. clicking the left mouse button on a blank area of the desktop.

• Interpreting User Commands• File Management• Memory Management• Input/Output Management• Managing Processes• Resource Allocation

Page 6: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 6

• File Management 1

This part of the OS manages file operations and backing storage allocation.

It allocates blocks of data to particular areas on the backing storage medium.  It maintains an index of where all the user's applications and data are stored so that they can be found when requested.

If you give a command to load a file from disk, the Command Interpreter will pass this instruction to File Management. 

• Interpreting User Commands• File Management• Memory Management• Input/Output Management• Managing Processes• Resource Allocation

Page 7: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 7

• File Management 2

File Management uses its index to work out exactly where on the disk the file is stored. e.g. Track 10, Sector 4.

File Management also maintains the security of the files. Included with the file information are the access rights for users. e.g. read only.

When a file is to be loaded, File Management will pass the information about the physical location (e.g. Track 10, Sector 4) to Input/Output Management.

• Interpreting User Commands• File Management• Memory Management• Input/Output Management• Resource Allocation• Managing Processes

Page 8: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 8

• Memory Management 1

Memory Management decides where programs and data are to be placed in RAM.

It allocates an area of RAM to store the program.

It allocates an area of RAM to store the data which the program is processing. e.g. when you work with Word then you will have a Word document which also requires RAM space

• Interpreting User Commands• File Management• Memory Management• Input/Output Management• Resource Allocation• Managing Processes

It checks to make sure that there is enough free space to store the new program and data.

Page 9: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 9

• Memory Management 2

It makes sure that programs do not access RAM space allocated to other programs

It frees RAM space when programs are exited.

• Interpreting User Commands• File Management• Memory Management• Input/Output Management• Resource Allocation• Managing Processes

It works with Input/Output Management to organise a Hard Disk for virtual memory use.

Page 10: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 10

• Input/Output Management 1

It is the task of Input/Output Management to do all the actual data transfers and issue the appropriate control signals to the peripheral devices.

• Interpreting User Commands• File Management• Memory Management• Input/Output Management• Managing Processes• Resource Allocation

When a file is to be loaded, File Management will pass the information about the physical location (e.g. Track 10, Sector 4) to Input/Output Management.

Input/Output Management has to send the correct signals to the Hard Disk to tell it to access Track 10, sector 4, read the data and send it to RAM.

Page 11: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 11

• Input/Output Management 2

Different types of peripheral devices work in different ways.

Input/Output Management has to know how to communicate with each device to allow data transfer to take place.

• Interpreting User Commands• File Management• Memory Management• Input/Output Management• Managing Processes• Resource Allocation

Hard Disk Drives, CD Drives, DVD drives, solid state storage devices, inkjet printers, laser printers, CRT monitors, LCD monitors are all very different.

Device manufacturers provide drivers(small programs) which are installed and become part of Input/Output Management. These allow communication to take place.

Page 12: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 12

• Interpreting User Commands• File Management• Memory Management• Input/Output Management• Managing Processes• Resource Allocation

• Managing Processes 1

A process is defined as being “ an instance of a sequence of code in execution”

A modern OS will typically have several processes on the go at the same time. e.g. Operating system, Microsoft Word, printing, virus checker.

Processes have to share processor time.

The OS has to manage the processes so that they can be carried out efficiently and effectively.

Page 13: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 13

• Interpreting User Commands• File Management• Memory Management• Input/Output Management• Managing Processes• Resource Allocation

• Managing Processes 2

At any give time, the OS has to decide:

•how long it should be allowed to use the processor for.

The OS keeps a note of the state of each process and makes sure that each processor is getting its fair share of processor time.

• which process is to be allowed to use the processor.

Page 14: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 14

• Interpreting User Commands• File Management• Memory Management• Input/Output Management• Managing Processes• Resource Allocation

• Resource Allocation

The competing processes require access to resources.

Resources include the processor, RAM and Input/Output devices.

If one process is in the middle of sending data to the hard disk then another process cannot be allowed to start sending its data there too until the first process has completed its task.

The OS has to manage the resources by controlling how and when the processes are to be allowed to use them.

Page 15: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 15

1. Operating system

3. Applications software

2. Utility software

Utility software consists of programs which are designed to help with the maintenance of the computer and to ensure sure that it works correctly and efficiently.

The distinction between utility software and functions of the operating system is rather blurred as modern operating systems are often bundled with utility software.

e.g. disk defragmenter, anti-spyware tools, firewall.

Page 16: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 16

1. Operating system

3. Applications software

2. Utility software

There are many types of utility software with three examples to be looked at in the Higher course.

• Disk editor

• Defragmenter

• Virus checker

Page 17: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 17

• Disk editor

• Defragmenter

• Virus checker

• Disk Editor

A disk editor is a utility program that lets the user read, edit, and write the low-level raw data on a disk.

It can be used to repair/reconstruct damaged files and directories.

This type of utility gives a user complete power over the contents of every block on the disk and so it requires considerable knowledge and care to use it effectively.

It would be very easy for an inexperienced user to cause serious damage to the contents of a disk by altering bytes of data on the disk.

Page 18: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 18

• Disk editor

• Defragmenter

• Virus checker

• Defragmenter 1

Magnetic disks are organised so that they store data in blocks of a fixed size. Depending on its size, a file will typically occupy several blocks.

Normally data is stored in consecutive blocks on the disk.

This makes sense as the Read/Write head moves to the required track and starts to read the consecutive blocks.

After a time, the disk starts to fill up and files are edited and deleted. The remaining free blocks are not necessarily next to each other.

Page 19: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 19

• Disk editor

• Defragmenter

• Virus checker

• Defragmenter 2

When new files are saved the blocks may be on different parts of the disk. It then takes longer to access these files.

This is called file fragmentation.

A defragmenter program is a utility which reorganises the data on the disk so that all blocks for a file are stored together to improve access times.

This should be done regularly to maintain hard disk performance.

Page 20: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 20

• Disk editor

• Defragmenter

• Virus checker

• Virus Checker

A virus checker examines a computer system to find virus software.

A virus is a program or programming code that replicates by being copied or initiating its copying to another program, computer boot sector or document.

It can be set to examine any type of backing storage media, check email attachments and files downloaded from the internet.

A good virus checker will constantly work in the background checking for signs of virus activity.

Page 21: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 21

Viruses can be classified by the type of file which they infect.

• file virus

• boot sector virus

• macro virus

• file virusA file virus attaches itself to an executable file (program which you can run). e.g. Word, Photoshop, FIFA09.

• boot sector virusA boot sector virus infects the system files that your computer uses when the bootstrap loader begins to load in the operating system from disk.

Page 22: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 22

• macro virus

• boot sector virus

A macro is a saved sequence of commands or keyboard strokes that can be stored and then recalled. It makes use of the programming language which is contained in some applications. e.g. Visual Basic for Applications (VBA)

• file virus

These applications allow you to embed a macro in a document and have the macro execute each time the document is opened.

What is a macro ?

Page 23: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 23

It causes a sequence of actions to be performed automatically when the application is started or something else triggers it.

A macro virus contains instructions which may damage a document or other software.

Once a macro virus gets onto your machine, it can embed itself in all future documents you create with the application.

This is how a macro virus spreads.

• macro virus

• boot sector virus

• file virus

• macro virus

Page 24: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 24

• camouflage

A virus makes copies of itself into other program files.

Virus program writers can have fake code within the program to prevent virus checkers from spotting the patterns of instructions which are commonly used in virus programs.

• watching

• camouflage

• replication

• replication

• delivery

Page 25: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 25

• delivery

Some virus programs remain dormant in a computer until a particular event triggers them into action. This can be a certain date, time or the running of a specific application.

This is the term used for when the virus executes and carries out its intended actions.

• watching

• camouflage

• replication

• watching

• delivery

Page 26: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 26

A virus is a program or programming code that replicates itself into another program or document.

Are viruses, worms and trojan horses all the same?

A virus cannot be spread without a human action, (such as running an infected program) to keep it going. 

NO

Page 27: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 27

A worm does not alter files but resides in active memory and replicates. Worms use parts of an operating system that are automatic and usually invisible to the user.

Are viruses, worms and trojan horses all the same?

Worms spread from computer to computer and, unlike a virus, have the ability to travel without any help from a person

NO

Page 28: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 28

Due to the copying nature of a worm and its ability to travel across networks the end result in most cases is that the worm consumes too much system memory (or network bandwidth).

Are viruses, worms and trojan horses all the same?

NO

This causes Web servers, network servers, and individual computers to stop responding and networks grind to a halt.

Page 29: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 29

At first glance they will appear to be useful software but will actually do damage once installed or run on your computer. 

Are viruses, worms and trojan horses all the same?

NOTrojan horses do not reproduce by infecting other files nor do they self-replicate.

The user is tricked into opening them because they appear to be receiving legitimate software or files from a legitimate source. 

Page 30: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 30

Some Trojans are designed to be more annoying than malicious (like changing your desktop, adding silly active desktop icons) or they can cause serious damage by deleting files and destroying information on your system.

Trojans can also create a backdoor on your computer that gives malicious users access to your system, allowing confidential or personal information to be compromised.

Are viruses, worms and trojan horses all the same?

NO

Page 31: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 31

Anti-virus software use various techniques to detect viruses.

• Use of checksum

• Searching for Virus signature

• Heuristic detection

Four techniques are covered in the Higher course:

• Memory resident monitoring

Page 32: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 32

The anti-virus software scans an uninfected file and calculates a checksum by adding up all the binary codes in the file.

• Use of checksum

• Searching for virus signature

• Heuristic detection

Whenever the file is to be used, the anti-virus software adds up all the binary codes again and the checksum should match the earlier checksum.

• Memory resident monitoring

• Use of checksum

If the checksums don’t match then it may be that the file now contains some virus code.

Page 33: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 33

A known virus will contain a sequence of particular lines of code.

• Use of checksum

• Searching for virus signature

• Heuristic detection

Anti-virus software keeps a database of known virus signatures and refers to this when looking for viruses.

• Memory resident monitoring

• Searching for virus signature

The virus signature database has to be updated regularly to make this effective.

This sequence is known as its virus signature.

When it finds a macro, program or boot sector file with code matching one of the known virus signatures then it has found a virus.

Page 34: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 34

The term heuristics comes from a Greek word meaning ”to find”.

• Use of checksum

• Searching for virus signature

• Heuristic detection

It will look for certain “behaviour” in code e.g.

• Memory resident monitoring

• Heuristic detection

This technique involves using knowledge gained from what existing viruses are like and how they act and using this past knowledge when looking for new viruses.

Code triggered by date or time events, code that searches for .exe files(programs), code that tries to write to disk in an unusual way.

Heuristic detection makes intelligent guesses about what files contain viruses.

Page 35: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 35

This type of anti-virus software is loaded into RAM on start up and remains in operation constantly for as long as the computer is left on.

• Use of checksum

• Searching for virus signature

• Heuristic detection

• Memory resident monitoring

• Memory resident monitoring

It monitors all computer activity and checks programs for infection when they are about to run.

It checks all programs and files being loaded, modified, copied or decompressed to look for suspicious signs or activity.

This slows down system performance but can be very effective at preventing the spread of viruses.

Page 36: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 36

There are many standard file formats for graphic files. Each has its own advantages and disadvantages and users should choose formats carefully depending on the purpose for the graphic file.

Compression

Graphics files, particularly bit-mapped graphics, can generate very large file sizes.

It is possible to analyse the data in the file and cut down on the data which needs to be stored. This is known as compression.

Page 37: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 37

Lossless CompressionThis technique manages to cut down on the amount of data which needs to be stored but does not actually lose any of the data. This means that the quality of the image is not affected.

Compression saves disk space but affects system performance as saving and loading takes longer due to the extra processing involved.

Lossy CompressionThis technique cuts down on the amount of data which needs to be stored by discarding some of the data. This means that the quality of the image is affected.

Page 38: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 38

(Joint Picture Experts Group)

It allows you to save graphics using 24 bit depth allowing 16 million colours.

jpeg

It uses lossy compression and the user can decide between quality and file size depending on the intended use.

• jpeg

• gif

• TIFF

JPEG is designed for compressing either full-colour or grey-scale images of natural, real-world scenes. It works well on photographs, naturalistic artwork, and similar material; not so well on lettering, simple cartoons, or line drawings

Page 39: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 39

• JPEG images can be compressed by varying amounts to make the file size smaller

• JPEG allows 24 bit colour(True Colour) and so it is good for photographs

• jpeg

• gif

• TIFF

Advantages of using JPEG

• JPEG is a common standard and so it is understood by many applications

Disadvantage of using JPEG

• JPEG uses lossy compression so the quality of the original image suffers.

Page 40: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 40

(graphics interchange format)

It only allows you to save graphics using 8 bit depth allowing 256 colours.

gif

It uses lossless compression and so retains quality but it cannot achieve as big a reduction in file size as jpeg can.

• jpeg

• gif

• TIFF

GIF is normally used for diagrams, buttons, etc. which have a small number of colours. It can also be used for simple animations.

Page 41: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 41

(Tagged Image File Format)

It allows you to save graphics using up to 32 bit depth allowing 4 thousand million colours.

TIFF

It can use either lossy or lossless or no compression and is often used with lossless or no compression when file quality is to be maintained. This, of course, leads to large file sizes.

• jpeg

• gif

• TIFF

TIFF is is an industry standard file format developed for the purpose of storing high-resolution bit-mapped, grey-scale, and colour images.

Page 42: Hcs Topic 5 Software V2

CS Topic 5 - Computer Software v2 42

When choosing software it is important to examine the system requirements to make sure that the software will run on the hardware.

System requirements will typically include details on:

Storage Requirements

Memory

OS compatibility

i.e. how much RAM is required for the software.

i.e. how much Hard Disk space is required for the software.

i.e. which operating system it requires.