Explain the concept of concurrent and parallel execution, Computer Engineering

Assignment Help:

The Concept of Concurrent and Parallel Execution

Real world systems are concurrent in nature and computer science is about modeling the real world. Illustrations of real world systems that require concurrency are machines in a factory and railway networks. In the computer world, several new OS (Operating systems) support concurrency. Whilst working on our PC's (Personal Computer), we can listen to streaming audio, download a file, have a clock running, type in a text editor and print something 

A distributed computer system or a multiprocessor can much better exploit the inherent concurrency in the problem solutions rather than a uniprocessor system. Concurrency is attained either by creating concurrent processes or by creating threads within a process. Whichever of these manners is used, it needs loads of effort to synchronies the threads/processes to evade deadlocks, starvations and race conditions. 

Study of parallel and concurrent executions is significant because of following reasons: 

i)  A number of problems are most naturally resolved by using a set of co-operating processes.

ii)  To decrease the execution time.

The words 'concurrent' and 'parallel' are frequently used interchangeably, Though they are different.

Concurrent execution is the chronological behavior of the N-client 1-server model where no more than one client is served at a given moment. It has dual nature; it is serial in a small time scale, however concurrent in a large time scale. In our situation, a processor works as server and thread or process works as client. Examples of simultaneous languages comprise Modula-2, concurrent Pascal, Adam and concurrent PROLOG). 

Concurrent execution is linked with the N-client N-server model. It permits the servicing of more than one client simultaneously as number of servers are more than one.

Illustrations of parallel languages comprise strand-88, Parallel C and Occam-2.

Parallel execution doesn't require explicit concurrency in the language. Parallelism may be achieved by underlying hardware. In the same way, we can have concurrency in a language not including parallel execution. That's the case when a program is executed on a single processor.


Related Discussions:- Explain the concept of concurrent and parallel execution

Example of shared programming using library routines, Q. Example of shared ...

Q. Example of shared programming using library routines? Think about subsequent set of statements  Process A                                  Process B                  :

Why floating point numbe process than integer, Why floating point number mo...

Why floating point number more difficult to represent and process than integer? In floating point numbers we have to show any number in three fields sign, exponent and mantissa

Blocking and non-blocking network, Blocking and Non-Blocking network In...

Blocking and Non-Blocking network In non-blocking networks the route from any free input node to any free output node can always be offered. Crossbar is an best example of non-

Target _self, TARGET = "_self" "_self" puts the new document in the s...

TARGET = "_self" "_self" puts the new document in the same window and frame as current document. "_self" works the same as if you hadn't used TARGET at all.

System software, System Software System software is a group of progr...

System Software System software is a group of programs written to service another programs. Some system software (e.g., compilers editors and file management utilities) proc

Internet application development, As an employee of an up and coming web De...

As an employee of an up and coming web Design Company, you have been approached by a small local cinema, called Valley Viewing who are looking to revamp their existing HTML website

How many address bits are needed to show a 32 K memory, How many address bi...

How many address bits are required to represent a 32 K memory ? Ans. 32K = 25 x 210 = 215, Hence 15 address bits are needed; Only 16 bits can address this.

Simplify the expressions using boolean postulates, Simplify the given expre...

Simplify the given expressions using Boolean postulates XY + X‾Z‾  + XY‾Z (XY + Z) Ans. XY + X‾Z‾ + XY‾Z (XY + Z) = XY + X‾Z‾ + XY‾Z (XY + Z) = XY + X‾Z‾  + XXYY‾Z

Explain virtual address, What is virtual address? The binary address th...

What is virtual address? The binary address that the processor used for either instruction or data known as virtual address.

Explain adaptive routing, Explain adaptive routing. Adaptive routing de...

Explain adaptive routing. Adaptive routing defines the ability of a system, by which routes are characterised through their destination, to change the path that the route takes

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