Educational Blog Sites

Friday, August 11, 2017

Process Management


Unit 3 : Process Management

Processes are the most widely used units of computation in programming and systems, although object and threads are becoming more prominent in contemporary systems. Process management and CPU scheduling is the basis of multiprogramming operating system. By switching the CPU between processes the operating system can make the computer more productive. In this unit we will discuss the details of process and scheduling concepts. The concepts of semaphores, process synchronization, mutual exclusion and concurrency are all central to the study of operating systems and to the field of computing in general. The lessons 6 and 7 focuses on these. The lesson 8 of this unit focuses on IPC through message passing and classical IPC problem.
Lesson 1 : Process Concept
1.1. Learning Objectives
On completion of this lesson you will know :
i) multiprogramming
ii) process and process state
iii)  PCM.

1.2. Multiprogramming and its Problem
Multiprogramming is where multiple processes are in the process of being executed. Only one process is ever actually running on the CPU. The remaining process are in a number of others states including.
blocked,
Waiting for some event to occur, this includes some form of I/O to complete.
ready,
Able to be executed just waiting on the ready queue for its turn on the CPU.
The important part of multiprogramming is the execution is interleaved with I/O. This makes it possible for one process to be executing on the CPU and for other processes to be performing some form of I/O operator. This provides more efficient use of all of the resources available to the operating system.
Problems involved with multiprogramming are described below
resource management
Multiprogramming is where multiple processes are in the process of being executed.Multiple processes must share a limited number of resources including the CPU, memory, I/O devices etc. These resources must be allocated in a safe, efficient and fair manner. This can be difficult and provides more overhead.
protection
Processes must be prevented from accessing each others resources.
mutual exclusion and critical sections
there are times when a process must be assured that it is the only process using some resource
extra overhead for the operating system
The OS is responsible for performing all of these tasks. These tasks require additional code to be written and then executed.
Benefits
The benefits of multiprogramming are increased CPU utilization and higher total job throughput. Throughput is the amount of work accomplished in a given time interval.

1.3. Process
A process is defined as an instance of a program in execution. A process is a sequential unit of computation. The action of the unit of computation is described by a set of instructions executed sequentially on a Von-Neuman computer, using a set of data associated with the process. The components of a process are the programs to be excepted. The data on which the program will execute, resources required by the program (e.g. memory) and the status of the execution. For the process to execute; it must have a suitable abstract machine environment. In various operating systems, processes may be called jobs, users, programs, tasks or activities. A process may be considered as a job or time shared program.
Share:

0 comments:

Post a Comment

Translate

Total Pageviews

Search This Blog

Blog Archive

Recent Posts