NowtAdminCase Studiesmodule1Module2Module3Module4Module5Module6Glossary

 
nowtCapturing DataVerification and ValidationOrganisation of DataCapabilities of SoftwareProcessing DataDisemination and distributionHardwareSecurity of dataNetwork enviromentsnowt
endNature of softwareCapabilityUpgrades and ReliabilitySystem SoftwareQuestionsend
 

Systems Software

Systems software enables the computer hardware to operate as a computer system. As such it is a part of the computer system and is usually supplied with the hardware at the time of purchase.

Systems software consists of the operating system which is responsible for controlling and managing the hardware while processing is taking place and utility programs that allow the user to perform tasks related to the running of the system.

Operating Systems

The operating systems is responsible for the running of the computer system. The tasks performed by the operating system program include:

  • Handling input, output and storage operations.
  • Managing the allocation and use of processor time, memory, peripherals and backing storage.
  • Loading and running applications programs.
  • Handling and reporting error situations.
  • Communicating with the operator when this is not being done by the application software.
  • Maintaining a log of resource usage for audit or billing purposes.

Handling Input, Output and Storage

Application programs will call the operating system when they need to perform input, output or storage operations so the operating system or at least a part of it must be resident in the computer's memory at all times.

Input, output and storage operations require the use of peripheral devices such as printers, disk drives, keyboards, mice etc. These each have their own characteristics in terms of capacities and speeds of access. The operating system needs to be able to control these peripherals and allocate them as resources available to the system. Storage devices require facilities for the management of the files they contain such as creation, updating and deletion of files.

Each device usually has an associated device driver which enables the operating systems to interact with it. These present the operating system with a mechanism were by it can communicate with peripherals that were not part of the original computer system.

Managing the allocation and use of processor time, memory, peripherals and backing storage

One of the major tasks of the operating system is to manage how much time is spent on dealing with peripherals and on running the programs in memory. One of the problems that has to be dealt with is how much processor time is used by the operating systems itself. Typically this is about 30% of processor time available.

If a number of programs are being run at the same time then it is up to the operating system to decide which peripherals are available to which programs and which is currently in use. Clearly it would cause problems if one program used a printer at the same time as another.

Loading and running applications programs

Applications programs are run under the control of the operating system and so it must be capable of allocating resources (memory, processor time, peripherals) to a program as it is loaded. The first process is to allocate a portion of memory for the application package to use then it can be allocated some processing time to actually run. If the program is terminated by the user than the resources allocated to it can be freed up for another application to use.

Handling and reporting error situations

At some point errors will occur. These may include software bugs which cause the program to function incorrectly, they may be as a result of a peripheral hardware failure. In either case the operating system should detect the error situation and allow it to be dealt with without crashing the whole system.

Communicating with the operator when this is not being done by the application software

There are occasions when an application package will attempt to use a peripheral or part of the system that could cause other programs to have problems. One example could be if a word processor

When the computer is first switched on a bootstrap loader program stored in a small amount of ROM will locate and load the operating system from the hard disk. As the operating system loads it will check the status of the hardware, reporting any errors to the operator. Once this has been done the system is ready to load and run whatever application the operator chooses.

Alongside the operating system is a set of programs called utilities. These are designed to help the operator perform routine tasks such as formatting a disk and deleting, renaming or finding files. These utility programs, unlike the operating system, will not be permanently resident in central memory but will be loaded in as required.

Applications software is the software that performs the task that the user requires of the computer system. Examples of applications software include word processors, payroll programs and database systems.

An application program may be classed as generic or specific. A generic application is a general-purpose program that the user adapts for his or her own purpose. Spreadsheets and DTP packages are generic. The user uses the package for a particular purpose. Another user might use the same package for a totally different purpose. Although a generic package is obviously suited to solving a particular type of problem, it can be used to solve a wide range of problems of that type.

Integrated packages provide a suite of generic functions such as spreadsheet, database, word processor, communications and graphics. These packages are cheaper than buying the individual items but there is usually some reduction in functionality and you may be paying for features that you do not use.

A specific software package is designed to solve one particular problem. Examples of specific software include an accounting program for a small business and games software. These programs are designed to solve one specific problem. They cannot be set up to handle a wider range of problems.

Applications software may be 'off the shelf', tailored or bespoke. Software bought off the shelf is cheaper than the alternatives, it is available immediately and is generally less likely to contain major bugs. If there is a wide user base for the particular package then there may well be user support groups established. Generic software is almost always in this form.

In some cases a package might be adapted for a particular use. This may include the setting up of a generic package in a certain way - e.g. creating templates and macros to set up a word processing package so that it exactly matches a company's requirements or it may involve adapting an item of specific software to the needs of a client. In either case existing software has been tailored to the clients specification. This is cheaper and faster than the final option of bespoke software.

Bespoke software is applications software written specially for a client. It will take some time to develop and it will be expensive but it will satisfy the client's needs exactly. This may be the only alternative if pre-written packages are not available to solve the problem. It may be possible for the client to sell the solution on to others with the same or similar problems to solve.

   

© LEV