Developing code with threads, Operating System

Assignment Help:

Developing Code with Threads

Writing code to support a thread-based implementation is very straightforward. Simple APIs are presented to the developer for each threads package. Actually, there are striking similarities between thread implementations on NetWare, Windows NT, and OS/2. We will use the Worker Model example of threads implementation introduced in the previous section. This example will be extended to include specifics for creating, controlling, and exiting threads for each platform. Listing shows the pseudocode representation of our example. We will only modify commands relating to threads in this example. Those commands will be highlighted and all other pseudocode will be left as-is.

LISTING

AcceptRegistrationRequests()

{

 do {

  .......

  WaitForClientRequestration( )

  RegisterClient()

  RegisterAsUser

  StartWorkerThread ()

           .......

  } while (FOREVER)

    }

    WorkerThread()

     {

    do {

  WaitForInterval ()

    if (CheckForWorkRequest() )  {

         Process Request ( )

         Send Response ( )

  }

     } while(CLIENT_CONNECTED)

     LeaveThread( )

}


Related Discussions:- Developing code with threads

What is banker''s algorithm, What is banker's algorithm? Banker's algor...

What is banker's algorithm? Banker's algorithm is a deadlock avoidance algorithm that is applicable to a resource-allocation system with multiple examples of each resource type

Define how to manage the interaction of client and server, Managing the int...

Managing the interaction of client and server  Among the differences between traditional application programs and client server ones is that developers must create a mechanism

What is a reference string, What is a reference string? An algorithm is...

What is a reference string? An algorithm is evaluated by running it on a particular string of memory references and computing the number of page faults. The string of memory re

What is low-level formatting, What is low-level formatting? Before a di...

What is low-level formatting? Before a disk can kept data, it must be required into sectors that the disk controller can read and write. This procedure is called low-level form

Explain the various page replacement strategies, Explain the various page r...

Explain the various page replacement strategies. Page replacement-basic scheme with diagram Optimal page replacement LRU page replacement FIFO page replacement LRU

List the coffmans conditions that lead to a deadlock, List the Coffman's co...

List the Coffman's conditions that lead to a deadlock. Mutual Exclusion : Only one process might be use a critical resource at a time. Hold & Wait: A process may be alloc

Define a daemon process , A daemon is a process that removes itself from t...

A daemon is a process that removes itself from the terminal and disconnected, executes, in the background, waiting for requests and responding to them. It may also be described as

Dynamic scheduling, Dynamic scheduling : The number of thread in a program...

Dynamic scheduling : The number of thread in a program may be changed during the course of operation. Dynamic priority scheduling is a kind of scheduling algorithm in which the pr

Multiprogramming, explain how response time are reduced by allowing time sh...

explain how response time are reduced by allowing time sharing on top of multiprogramming

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