What is Multiprogramming?
MultiProgramming literally means more than one program. Currently, we can run more than one program on a single CPU.
Following this, when the first program is not using the CPU recently, then the second program is executed and similarly the first and second program is not using the CPU recently, then the third program is executed. This process is called multi-programming.
In multiprogramming, more than one job is processed at a time by the operation system. The main advantage of this type of operating system is that by using it the idle process of the processor can be reduced. Almost all operating systems currently available are multiprogramming.
The main advantage of using this technique is that it makes full use of the resource. With the advent of this technology, mobility has been incorporated into the work. Some changes have been made to it from time to time, which are as follows:
i) Resource utilization:
Earlier it used to happen that someone has run a program or application and now it is requiring user input, that is, external interruption is required and if the operator is still busy, then it will not give input to another application/program.
Will have to wait for the first application/program. In spite of being a resource in this way, it cannot be put to good use. This shortcoming can be overcome by multi-programming.
ii) Time-Saving:
It serves the purpose of saving time. Because if your full potential resource is used, then it is natural that there will be time-saving.
iii) Reduction in Expenditure.
iv) To execute complex programs.
Read Also:
WHAT IS SYSTEM BOOT, TYPES OF BOOTING AND IT'S STEPS | BOOTING IN OPERATING SYSTEM
WHAT IS A SYSTEM CALL? ITS TYPES AND FUNCTIONS. SYSTEM CALL IN THE OPERATING SYSTEM
Types of Multiprogramming Operating Systems
There are two types of multiprogramming:
- Multi Tasking Operating System
- Multi Users Operating System
1. What is Multitasking Operating System?
Multitasking is a system in which more than one task has to be completed at the same time. The timeshare approach is not useful for real-time applications. Because in multi-user applications, the processing time of many jobs is based on their priority.
That is, the processing of jobs with higher priority is done first. Its low-priority job gets interrupted. There are also some machines that process different jobs one after the other (simultaneously) which is called multitasking.
In an operating system, multitasking allows a user to perform more than one computer task at the same time, which leads to excessive CPU usage and slow computer system performance.
Being able to multitask does not mean that unlimited tasks can be done at the same time. Each task uses storage and other resources. As more tasks are started, the system may slow down or the shared storage may run out.
2. What is Multiuser Operating System?
According to Wikipedia - A multi-user operating system is computer software that allows access to multiple users of the computer. Time Sharing systems are multiuser systems.
Most batch processing systems for mainframe computers can also be considered "multi-user", in order to avoid the CPU remaining idle while waiting for I/O operations to complete.
The operating system changes between terminals so quickly that each user has constant access to the central computer. If there are many users on such a system, the central computer may take longer to respond.
Advantage of Multiprogramming
Multi-programming has the following advantages -
- Always prevent deadlock conditions.
- Always use the resource and maintain the status of unwire.
- If the resource is waiting for instruction ie user input, then making the resource available to the application with a waiting list.
- Analyzing execution accuracy and timing.
- Analysis of Multiprogramming technology and reporting on error/bug.
- To improve and optimize Multiprogramming technology.
- Memory is fully used.
- The process of CPU idle can be reduced, the time of reading in the processing of Job can be reduced.
- If the operating system is doing some work, then it does not have to wait for any other work to be done.
The disadvantage of Multiprogramming:
- Since more than one program is being processed simultaneously, therefore all have to be kept in one cash memory, which increases the pressure on them.
- They are very sophisticated and complex.
0 Comments