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

How are problems of clock skew minimized, How are problems of clock skew mi...

How are problems of clock skew minimized? Clock skew, when done right, can also benefit a circuit. This can be intentionally introduced to reduce the clock period, at that the

Target_parent, TARGET = "_parent" "_parent" is used in a situation whe...

TARGET = "_parent" "_parent" is used in a situation where a frameset file is nested inside another frameset file. A link in one of the inner frameset documents that uses "_par

Universal serial bus - computer architecture, Universal Serial Bus - comput...

Universal Serial Bus - computer architecture: USB   Universal Serial Bus   Speed Low-speed(1.5 Mb/s) High-speed(480 Mb/s) Full-speed(12 Mb/s)   De

Importance of using module-instance parameter, Using Module-Instance Parame...

Using Module-Instance Parameter: Parameter values can be overridden while a module is instantiated. New parameter values are passed at the time of module instantiation. Top-

Features added in message passing interface-2, Q. Show the Features added i...

Q. Show the Features added in message passing interface-2 Input/output Single-sided operations for remote memory access Binding for C++ Dynamic process managem

Can we call reports from interactive reporting lists, Can we call reports ...

Can we call reports and transactions from interactive reporting lists? Yes.  It also permits you to call transactions or other reports from lists.  These programs then use val

Write a short note on pointer declaration, Write a short note on pointer de...

Write a short note on pointer declaration A simple variable in a program is stored in a certain number of bytes at a particular memory location, or address, in the machine. Poi

Pros and cons of assembly language, Pros and Cons of Assembly Language ...

Pros and Cons of Assembly Language The following are a number of advantages / disadvantages of employing assembly language: Assembly Language offers more control over ha

State in brief about virtual memory, What is Virtual memory The term v...

What is Virtual memory The term virtual memory signifies something that appears to be present though actually it is not. Virtual memory technique enables users to use more mem

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