System Software                                   _                                                                                             James Leong Mook Seng

Operating Systems

An operating system is a set of programs designed to run in the background on a computer system, giving an environment in which application software can be executed.

Most operating systems comprise a large set of programs, only some of which are stored in the processor memory all the time. Many of the routines available in the O.S. are stored on the hard drive so that they can be accessed when required. This not only saves space in the processor memory but also means that the O.S. can be easily changed to a different one.

When a user is using an application package, he is not communicating with the computer hardware, he is communicating with the operating system. Without an operating system, no matter how many programs the user have, the computer is useless. The operating system sits between the hardware and the application program or user.

The main purpose of an operating system is to allow a user to access the hardware so they can carry out useful tasks. Breaking down the operating system:

               

Functions of the operating systems.

For computers generally:

  • Memory Management: allocation of program space, buffers, swapping, storage protection
  • Processor Management: scheduling of programs awaiting processing, queue handling, priority allocation, interrupt handling
  • Resource Management: control of hardware resources e.g input and output devices, interacting with peripheral control units, handshaking
  • Data Management : control of disc filing system, loading programs and data, spooling, error handling, maintaining directories

Types of Operating System

  • Batch Processing

When computing was still a new science, there were not enough machines to satisfy the demand for processor time from students in universities who wanted great calculations done, firms who wanted their payroll worked out, and many others. The big problem was the ‘speed mismatch’ between the user sitting at the keyboard who was very slow, and the machine which was very fast. There are two simple solutions to this problem, one is to buy more machines and the other is to make the machines work more effectively by taking away the slowest part of the system – the human being. Nowadays we might well opt to buy more machines, but this used not to be an option. This problem gave rise to the development of batch processing.

A batch processing operating system is one that does not allow for interaction between the user and the processor during the execution of the work. Lots of programs that need to be run are collected together (to form a batch) and they are sent to the computer. The batch operating system then controls their passage through the computer.

Nowadays, batch processing tends to be used where

  • there are large amounts of data to be processed,
  • the data is very similar in nature and…
  • it requires similar processing,
  • the computer system has identifiable times when it is not being used, and so has available processor time
  • the application does not require human intervention.

Typical examples of applications which would be done using batch processing include production of bank statements from customer files, production of gas (electricity, telephone) bills from customer records, the compilation of high level language programs where a number of users want programs compiled.

An example of batch processing:

Consider the example of an Internet bank. At the end of every month it might prepare everyone’s bank statements and then email all of their customers, telling them that their statements are ready:

  • Batch processing involves many jobs, in this example, many statements that need processing
  • The jobs are similar in nature. Each statement is processed in broadly the same way
  • A JCL program is written, telling the computer what files to use, when to start the processing, what to do with the output and so on.
  • Some instructions in the JCL program tell the computer to process the statements at a time where the network’s resources are not needed for other more important things.
  • The processing begins. The output is not immediate- the processing might take hours.
  • There is no physical output in this particular case- the output is in the form of updated statements held in electronic form and prepared emails.
  • Once the processing starts, it continues uninterrupted until it is finished.
  • At a later time, when the computers are free, the file containing emails is accessed and all emails are sent.
  • When a customer receives an email telling them that their statement is ready, they can log in to their account. They will then be able to access and print off their statement.

Batch processing is a way of improving the efficiency of a computer or network’s resources by bringing together similar work and processing them in one go at a time when resources aren’t needed. The main thing to remember is that the output from a batch processing run isn’t immediate.

  • Real-time

A real-time O.S. is one which can react quickly enough to affect the next input, or process to be carried out. Most real-time systems are based on control of some process in the real world or on information handling.

Join now!

A chemical plant has a reaction vessel where the temperature is critical to the result of the process. The temperature is monitored by a computer which accepts input from a sensor and then makes a decision whether to adjust the heating elements in the vessel. In this example, it would not be sensible for the computer to be running any O.S. that is not real-time because if there was a delay in the decision making process, it might mean that the reaction is corrupted in some way.

A robot trolley is controlled by a processor which takes ...

This is a preview of the whole essay