Explain threads for executing concurrent application code, Operating System

Assignment Help:

Explain Threads for Executing Concurrent Application Code

The thread has been introduced in many operating systems as an efficient mechanism for executing concurrent application code. The thread is best defined as light-weight process. While a thread owns a minimal amount of data, its main job is to execute application code efficiently. Therefore, starting and ending threads uses much less overhead than processes and minimizes the use of system resources. Threads allow more concurrency to occur with lesser overhead. With a thread-based system, it might be possible to assign one thread per remote client. This model is known as the Worker Model and will maximize all clients' use of the server processor. Threads are important because they can increase the ability to handle requests generated from client machines.

Applications architected for thread use can see very significant performance gains as well. The reason is simple; an operating system is much more efficient in creating, executing, and switching threads within a system than it is with process. The developer is uniformly presented with a simple API to create and manipulate thread execution. The thread API allows the developer to specify an arbitrary function at which the new thread is to be started. Priorities, inheritance, and privileges may either be passed or implied, depending on the platform. Optionally, the developer is allowed to create and manage a thread's stack or have the system do it. The specific API is not as important as the functionality provided.


Related Discussions:- Explain threads for executing concurrent application code

Producer-consumer using condition variables, Now let us present an implemen...

Now let us present an implementation of a producer-consumer system using condition variables. This implementation works. dequeue() lock(A) while (queue empty) { wait(A, C)

We can view an operating system as a resource allocator, We can view an ope...

We can view an operating system as a resource allocator. Explain. We can outlook an operating system as a resource allocator. A computer system has Many resources (software and

Describe the buddy system of memory allocation, Buddy system of memory allo...

Buddy system of memory allocation Free memory is used to maintain in linked lists, each of similar sized blocks. Every block is of size 2^k. When some memory is needed by a th

What are scheduling queues?, What are scheduling queues? Since the proc...

What are scheduling queues? Since the processes enter the system they are put into job queue. This queue contains all processes in the system. The processes that are exist in m

Batch system, what is a batch system give me answer in simple words so that...

what is a batch system give me answer in simple words so that i can understand

Unix, UNIX Shell and History feature. 1.Creating a child process. 2.Creatin...

UNIX Shell and History feature. 1.Creating a child process. 2.Creating a history feature. Its exactly "programming project 1 - Unix Shell and History Feature (p.157-159)" in the Si

Write a short note about schedulers, Write a short note about schedulers. ...

Write a short note about schedulers. Processes migrate between the various scheduling queues throughout its life time. The operating system should select for scheduling purpose

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