The concept of thread-parallel computing, Computer Engineering

Assignment Help:

The Concept of Thread

Thread is a chronological flow of control within a process. A process can include one or more threads. Threads have their own register values and program counter, but they are split the memory space and other resources of the procedure. Each process always starts with a single thread. Through the implementation of other threads may be produced as and when necessary. Like processes, each thread has an implementation state (ready, running, terminated or blocked). A thread has entrance to the memory address space and resources of its process. Threads have related life cycles as the processes do. A single processor system can maintain concurrency by switching implementation among two or more threads. A multi-processor system can hold parallel concurrency by executing a separate thread on each processor. There are three basic process in concurrent programming languages for terminating and creating threads:

Unsynchronised creation and termination:  In this method threads are terminated and created using library functions such as, START_PROCESS, CREATE_THREAD, CREATE_PROCESS and START_THREAD. As a effect of these function calls a new process or thread is produced and starts consecutively independent of its parents.

Unsynchronised creation and synchronized termination:  This method uses two instructions: JOIN and FORK. The FORK instruction creates a new thread or process. When the parent needs the child's(thread or process) result, it calls JOIN instruction. At this junction two threads (processes) are synchronised.

Synchronised creation and termination:  The most commonly system construct to implement synchronization is

COBEGIN...COEND. The threads among the COBEGIN...COEND construct are executed in similar. The termination of parent-child is suspended until all child threads are ended.

We can think of a thread as basically a inconsequential process. However, threads present some advantages over processes. The advantages of this are:

i) It takes very less time to terminate and create a new thread than to Terminate and Create a process. The reason being that a newly terminate thread uses the current process address space.

ii) It obtains less time to switch between two threads within the similar process, partly because the recently created thread uses the current process address space.

iii) Less communication overheads -- communicating between the threads of one process is easy because the threads share among former entities the address space. So, data produced by one thread is directly available to all the other threads.


Related Discussions:- The concept of thread-parallel computing

What is generalization, What is generalization? Generalization is a rel...

What is generalization? Generalization is a relationship among a class (super class) and one or more variations of the class (sub classes).It arrange classes by similarities an

Display frames (horizontal and vertical lines) in lists, How can you displa...

How can you display frames (horizontal and vertical lines) in lists? You can show tabular lists with horizontal and vertical lines (FRAMES) using the ULINE command and the syst

Lexical analyser, The aim of this project is for you to construct a fully w...

The aim of this project is for you to construct a fully working compiler for a small simple programming language, SPL. The compiler will read in SPL source code and produce ANSI C

Define the emphasis on object structure, Define the Emphasis on Object Stru...

Define the Emphasis on Object Structure Emphasis on Object Structure, not on Operation Implementation In object orientation the importance is on specifying the qualities

Evaluate an interactive product using suitable techniques, This assignment ...

This assignment is based around two UK websites. In order to avoid difficulties such as the websites changing, or disappearing, we have downloaded these websites and you can find t

Why do we call motherboard a motherboard, Motherboard is called as motherbo...

Motherboard is called as motherboard because in the world all borned creature is directly attached to her mother & after it all the relations makes due to her mother so in the simi

What is test factory, Rational Test Factory is a component-based testing to...

Rational Test Factory is a component-based testing tool that automatically produces TestFactory scripts according to the application's navigational structure. TestFactory is integr

What is exception, a. Explain about exception? When do they occur? Show usi...

a. Explain about exception? When do they occur? Show using an example how to give your own exception handler. b. Can you restrict the types of exception that a function can thro

Minimization of the logic function using k-maps, Minimize the logic functio...

Minimize the logic function F(A, B, C, D) = ∑ m(1,3,5,8,9,11,15) + d(2,13) using K-maps Ans. The logic function minimization of F(A, B, C, D) = ∑ m(1,3,5,8,9,11.15) + d(2,13) by

Gustafsons law, Amdahl's law is suitable for applications where response ti...

Amdahl's law is suitable for applications where response time is critical. On the other hand, there are a lot of applications which need that accuracy of the resultant output shoul

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