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

K-nearest neighbor for text classification, Assignment 2: K-nearest neighbo...

Assignment 2: K-nearest neighbor for text classification. The goal of text classification is to identify the topic for a piece of text (news article, web-blog, etc.). Text clas

Explain the working of dynamic ram - computer memory, Explain the working o...

Explain the working of Dynamic RAM? A plain piece of hardware called a DRAM controller can be used to make DRAM behave more like SRAM and the job of the DRAM controller is to p

What is the difference between in two lines of verilog code, What is the di...

What is the difference between the following two lines of Verilog code? #5 a = b; a = #5 b; #5 a = b; Wait five time units before doing the action for "a = b;". Value assig

What is monkey testing, What is Monkey testing? The monkey testing is ...

What is Monkey testing? The monkey testing is the process of testing here and there for judging the application trying to observe the accessing dissimilar functionalities is i

Advantages offered by data mining, Advantages offered by Data Mining: 1...

Advantages offered by Data Mining: 1.  Facilitates discovery of knowledge from big, massive data sets. 2.  Can be used within dissimilar application areas by Fraud detection

Cookies for one page in your site, How do you turn off cookies for single p...

How do you turn off cookies for single page in your site? We can turn off the cookies for one page:- By setting the Cookie. Discard property false.

Nix commands, reate a directory "Unix" under your home directory. Command(...

reate a directory "Unix" under your home directory. Command(s): ………………………………………….

What is a javabean, JavaBeans are reusable software components written in t...

JavaBeans are reusable software components written in the Java programming language, designed to be influenced visually by a software development environment, like JBuilder or Visu

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