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

Explain the reasons why an organisation fail to plan, Problem 1: (a) Wh...

Problem 1: (a) What are the likely benefits which an organisation may derive from the planning process? (b) Explain the main reasons why an organisation may fail to plan.

Define memory management, Define memory management In multiprogramming ...

Define memory management In multiprogramming system the user part of memory should be further subdivided to accommodate multiple processes. The task of subdivision is carried o

Activities of operating system-secondary-storage management, Q. What are th...

Q. What are the three main activities of an operating system in regard to secondary-storage management? Answer: 1) Free-space management 2) Storage allocation 3) Disk

What is a client server system, What is a client server system? Central...

What is a client server system? Centralized systems proceed as server systems to satisfy request generated by client systems Server system is able to be broadly div

Explain the basic concepts of segmentation, Explain the basic concepts of s...

Explain the basic concepts of segmentation. Segmentation definition User view of program Hardware used with diagram-segment table, base, limit & offset Protection and

Write note on process, Write note on process, process state? A process ...

Write note on process, process state? A process is in excess of the program code which is sometimes known as text section. It as well includes the current activity as represent

Virtualization, What factors are involved in choosing the host operating sy...

What factors are involved in choosing the host operating system?

Can dhcp provide support for mobile users, Question: a) The Dynamic Ho...

Question: a) The Dynamic Host Control Protocol (DHCP) server is important for setting TCP/IP configuration, when there are a large number of clients on the network. How does D

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