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

Explain the working of a 3-bit D/A converter, With the help of R-2R binary ...

With the help of R-2R binary network, explain the working of a 3-bit D/A converter and derive an expression for the output voltage. Ans: We see a 3-bit R-2R ladder D/A netwo

Explain what are user controls, Briefly explain what user controls are and ...

Briefly explain what user controls are and what server controls are and the differences between the two.   An ASP.NET control (sometimes known as a server control) is a server-

Define interrupt and isr, Define interrupt and ISR? An interrupt is a r...

Define interrupt and ISR? An interrupt is a request from an I/O device for service by the processor. The processor gives the requested service by implementing the interrupt ser

What are qualified associations, What are qualified associations? A qua...

What are qualified associations? A qualified association is an association in which an attribute known as the qualifier disambiguates the object many associated end.

Define variants of turing machine, Define variants of Turing Machine?  ...

Define variants of Turing Machine?  Variants are  Non deterministic turing machine.  Mutlitape turing  machine.  Enumerators

Weka uses a gaussian - radial basis function, A data set with 1000 rows is ...

A data set with 1000 rows is input to a neural network in Weka. The test option is set to 10-fold cross validation and the neural network option validationSetSize = 20%. How many r

Gnome, Explain briefly about GNOME desktop

Explain briefly about GNOME desktop

How many bits are required for a ladder d/a converter, How many bits are re...

How many bits are required at the input of a ladder D/A converter, if it is required to give a resolution of 5mV and if the full scale output is +5V. Find the %age resolution.

Differentiate b/w pre-emptive and non-pre-emptive scheduling, Differentiate...

Differentiate between pre-emptive and non-pre-emptive scheduling. Pre-emptive scheduling : in its approach, center processing unit can be taken away from a process if there is a

Computer network architecture, A protocol is a formal description of messag...

A protocol is a formal description of message formats and the rules two or more machines must follow to exchange those messages. Because TCP (transmission control protocol) and IP

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