- Multiprogramming operating system has ability to execute multiple programs with using of only one processor machine.
- when two or more programs are residing in memory at the same time then sharing the processor is referred.
- multiprogramming assumes a single shared processor.
- multiprogramming increase CPU utilization by organizing jobs so that the CPU always has one to execute.
- the operating system keeps several job in memory at a time.
- this set of jobs in a subset of the job pool.
- the operating system picks and being to execute one of the job in the memory.
- multiprogramming operating system monitors the state of all active programs and system resources using memory management program to ensures that the CPU is never idle unless there are no jobs
- Example:-
- -Windows O/S
- -UNIX O/S
- JOB:-In systems using multiprogramming a program loaded to memory and ready to execute is called a job.
Execute another job while waiting for I/O:- The simple idea is to always have one job execute on the CPU by changing job when an I/O request is made.
States:- in a multiprogramming system , a job can be in one of three state.
- Running
- The job is currently executing on the CPU. At any time, at most one job can be in this state.
- Ready
- The job is ready to run but currently not selected to do so.
- Waiting
- The job is blocked from running on the CPU while waiting for an I/O request to be completed.
Advantages
- High and efficient CPU utilization.
- User feels that many programs are allotted CPU almost simultaneously.
- Resources are utilized smartly.
- Less response time.
- Short time jobs are done fastest compare to long time jobs.
- Multiple users can use multiprogramming system at once.
- It can help to improve turnaround time for short jobs.
- It reduces total read time that is required to execute a job.
- Multiprogramming system helps to optimize total job throughput of computer.
- Multiprogramming system can monitor fastest as entire tasks run in parallel.
Disadvantages
- CPU scheduling is required.
- To accommodate many jobs in memory, memory management is required.
- If, it contains massive load of jobs then its long time jobs have to need long waiting time.
- Harder task is to manage of all processes and jobs.
- It is highly complex and sophisticated.
๐๐๐
ReplyDeleteSo proud ๐๐ฎ๐ณ
ReplyDeleteSo proud ๐๐ฎ๐ณ
ReplyDeleteGood job ๐๐ป๐
ReplyDeleteVery nice ❤️❤️
ReplyDeleteNice
ReplyDeleteNice
ReplyDelete