Explain the concept of process, Computer Engineering

Assignment Help:

The Concept of Process

Unofficially a process is a program in execution subsequent to the program has been loaded in the main memory. Though a process is more than just a program code. A process has its threads, return addresses, value of program counter, temporary variables, file handles, security attributes, own address space etc. 

Every process has a life cycle that consists of execution, creation and termination phases. A process can create various new processes that in turn can also create a new process. In UNIX OS (Operating System) environment a new process is created by fork system call. Process creation requires the subsequent four actions:

i) Setting up the process explanation: Setting up the process explanation requires the creation of a Process Control Block (PCB). A PCB encloses basic data like description of the allocated address space, owner, process status, process identification number and other execution dependent process specific information needed for process management.

ii)  Allocating an address space: There are two methods to allocate address space to processes: sharing the address space between the created processes or allocating separate space to every process.

iii)  Loading the program into allocated address space: The executable program file is loaded in allocated memory space.

iv)  Passing the process explanation to process scheduler:  once, the three steps of process creation as stated above are finished, the information collected through the above-stated steps is sent to the process scheduler, that allocates processor(s) resources to several competing to be executed processes queue.

The process execution phase is managed by the process scheduler. Process scheduling may be for each process or for each thread. The process scheduling involves three concepts: scheduling policy, state transition and process state.

A process may be in one of the subsequent states:  

(a)  New: The process is being created.

(b) Waiting: The process is waiting for an event to occur.  

(c)  Ready: The process is ready to be executed if processor is available.

(d) Running: The process is being executed on a single processor or multiple processors.

(e)  Terminated: The process has finished execution.

At a specific time, a process may be in any one of the above stated states. As soon as process is admitted into job queue, it goes in the ready state. Whenever process scheduler dispatches process, program turns into running state. If process is entirely executed then it's terminated and we would say that it's in terminated state. However, the process can return to ready state due to some interrupts or can go to waiting state due to any I/O activity. And when I/O activity is over it can go to ready state.  The state transition diagram is shown in figure below:

2111_The Concept of Process.png

Figure: Process state transition diagram

The scheduling rule can be either preemptive or non preemptive. In preemptive policy, the processes can be interrupted. Operating systems have various scheduling strategies. E.g. to select a process to be executed, one of the scheduling strategy may be: (FIFO) which is First In First Out.

When the process completes execution it's terminated by system calls such as abort, releasing all the allocated resources.


Related Discussions:- Explain the concept of process

Write a subroutine in c which toggles the cursor, Q . Write a subroutine in...

Q . Write a subroutine in C which toggles the cursor? Write a subroutine in C which toggles the cursor. It takes one argument which toggles the value between on (1) and off (0)

#web conferencing, data floe diagrams for web conferencing

data floe diagrams for web conferencing

Explain the hamiltonian path, What is Hamiltonian path?  A Hamiltonian ...

What is Hamiltonian path?  A Hamiltonian path in a directed graph G is a directed path that goes by each node exactly once. We consider a special case of this difficulty where

User compatibility & appropriateness of inputs and outputs, User Compatibil...

User Compatibility & Appropriateness of Inputs and Outputs User compatibility - this is the degree to which the machine works towards task completion in way that suits the u

Arrays of any size, Modify your program so that the line "int numStones = u...

Modify your program so that the line "int numStones = ui.readStones();" in the Game constructor is considered. Depending on the value of numStones read from the user, you should cr

Can matchcode object contain ids with different update types, Can matchcode...

Can matchcode object contain Ids with different update types? Yes.

Moral and ethical implications, • Moral and Ethical Implications o Will ...

• Moral and Ethical Implications o Will this be safe to have on the road    Will the computers on board be able to handle extreme circumstances • Hazardous conditions o Ex

Determine the method for updating the main memory, The method for updating ...

The method for updating the main memory as soon as a word is removed from the Cache is known as  (A) Write-through                  (B) write-back   (C) protected write

What is neg instruction, What is NEG instruction Arithmetic sign inver...

What is NEG instruction Arithmetic sign inversion or two's complement (NEG). NEG instruction two's complements a number which means that arithmetic sign of a signed number cha

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd