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

Average access time experienced by the processor, Give the formula for the ...

Give the formula for the average access time experienced by the processor in a system with 2 levels of caches. Ans: Formula is for the average access time experienced by the pr

What do you understand by a file system, Problem (a) What do you mean...

Problem (a) What do you meant by a file system? (b) Mention the five categories of data for a basic file system reference model. What is the use of such a reference model

Give explanation of user datagram protocol, Explain UDP (User Datagram Prot...

Explain UDP (User Datagram Protocol). UDP utilizes a connectionless communication paradigm. It is an application of using UDP doesn't require preestablishing a connection befor

What are user threads, What are User threads   User threads are support...

What are User threads   User threads are supported above the kernel and are executed by a thread library at the user level. Thread creation & scheduling are done in the user sp

What are the types of smart cards used in e-commerce, What are the types of...

What are the types of Smart cards used in e-commerce? Generally there are 2 types of smart cards. Memory smart cards, which can be sighted as minuscule removable read/ write

What is data structure, What is data structure? A data structure is a w...

What is data structure? A data structure is a way of organizing data that considers not only the items kept, but also their relationship to each other. Advance knowledge abo

Assembler, Assembler: Typically a modern assembler makes object code b...

Assembler: Typically a modern assembler makes object code by translating assembly instruction into op codes, & by resolving symbolic names for memory locations and any other e

Subprogram to output the result, Input a list of positive numbers (terminat...

Input a list of positive numbers (terminated by 0) into an array. Find the largest number in the array, and into the result. Use a subprogram to input the numbers, a function to fi

Calculate number of trunks for time multiplexed space switch, Calculate the...

Calculate the number of trunks that can be supported on a time multiplexed space switch given that, 32 channels are multiplexed in each stream, while the control memory access time

Explain the working of a 1-to-16 Demultiplexer, Using a suitable logic diag...

Using a suitable logic diagram explain the working of a 1-to-16 de multiplexer. Ans. 1-to-16 Demultiplexer Working: A demultiplexer obtains in data from one line and directs this

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