Operating System Properties
Batch processing
Batch processing is a method in which an Operating System gathers together the programmes and data in a batch before beginning processing. An operating system performs the following batch processing tasks −
- The OS defines a job as a single unit which has a predefined sequence of commands, programmes , and data.
- The OS holds in memory a number of jobs, and executes them without any manual knowledge.
- Jobs are handled in the submission order, that is, first come first served fashion.
- When a job finishes its execution, it releases its memory, and the work output is copied into an output spool for later printing or processing.
Advantages
- Most of the operator's function is taken to the computer by lot processing.
- Increased output as a new job gets started as soon as the previous job is done, with no manual intervention.
Disadvantages
- Hard to debug programme.
- A job might get in an infinite loop.
- One batch job will impact pending jobs due to lack of security scheme.
Multitasking
Multitasking is when the CPU performs several tasks by switching between them simultaneously. Switches occur so often that the users will be able to interact with each programme when running. An OS performs the following multitasking tasks –
- The user explicitly gives instructions to the operating system or a programme, and receives an immediate response.
- The OS manages multitasking in such a way that multiple operations / executes multiple programmes can be done at a time.
- Often known as Time-sharing systems are multitasking operating systems.
- These Operating Systems were designed to provide reasonable cost for the interactive use of a computer system.
- A time-shared operating system uses the CPU scheduling and multiprogramming principle to provide a small portion of a time-shared CPU for each user.
- Each user has at least one separate program in memory.
- A programme that is loaded into memory and executes is usually called a method.
- When a process is executed, it usually runs for only a very short time before either ending or I / O is needed.
- Since interactive I / O usually runs at slower speeds, the completion can take a long time. During this time another process can use a CPU.
- The operating system allows the users to concurrently share the computer. Because and action or command in a time-shared system tends to be short, it only requires a small amount of CPU time for each user.
- As the system moves CPU quickly from one user / programme to the next, each user gets the idea that he / she has his / her own CPU, while there is only one CPU shared by several users.
Multiprogramming
Sharing the processor is referred to as multiprogramming when two or more programmes reside in memory at the same time. Multiprogramming relies on a common single processor. Multiprogramming improves the use of CPU by organising jobs, so that the CPU still has one to do.
The following figure illustrates the layout of a multiprogramming device for the memory.
An OS performs the following multiprogramming related operations.
- The operating system memorises many tasks at a time.
- This set of jobs is a subset of workers that are held in the job pool.
- The operating system will select and start executing one of the memory jobs.
- Multiprogramming operating systems track the state of all active programmes and system resources using memory management tools to ensure the CPU is never idle, unless there are no jobs to be done.
Advantages
- Using fast and powerful CPU.
- User believes the Processor is allotted to many programmes almost simultaneously.
Disadvantages
- It needs CPU scheduling.
- Memory management is needed to handle a lot of jobs in memory.
Interactivity
Interactivity refers to Users' ability to interact with a computer system. An operating system performs the following interactivity operations
- Provides an interface for users to communicate with the system.
- Manages input devices which take user inputs. For instance keyboarding.
- Manages display devices to bring users outputs. For instance Monitor.
- The OS response time has to be fast, as the user submits and waits for the result.
Real Time System
Embedded systems are typically dedicated, real-time systems. An operating system performs the following operations in relation to system operation in real time.
- Usually Operating Systems read from and respond to sensor data in such systems.
- To ensure proper efficiency, the Operating System must ensure response to events within specified periods of time.
Distributed Environment
In a computer system a distributed environment refers to multiple independent CPUs or processors. An operating system conducts the following distributed network operations-
- The OS distributes logics of computation among many physical processors.
- Processors do not share a clock or a memory. Could processor rather has their own local memory.
- The OS handles interprocessor communications. They communicate with each other by way of various lines of communication.
Spooling
Spooling is a term for peripheral simultaneous on-line operations. Spooling refers to placing data in a buffer for different I / O work. This buffer is a special memory or disk area which I / O devices can access.
An operating system conducts the following distributed network operations-
- Handles data spooling of I / O devices as devices have different rates of data access.
- Keeps the spooling buffer that provides a waiting station where data can rest until the slower system catches up.
- Maintains parallel computation as a computer can perform I / O in parallel fashion, due to the spooling process. It becomes possible to make the machine read data from a tape, write data to a disk and copy it to a tape printer while the computing task is being performed.
Advantages
- As a very large buffer the spooling process uses a disk.
- Spooling will overlap I / O activity in one job with processor operations in another job.