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

Explain the procedure for handling the page fault, The procedure for handli...

The procedure for handling the page fault is as follows 1. We check the internal table to verify whether the reference was valid or invalid. 2. If the reference was invalid,

Explain the os/2 operating system, Explain the OS/2 Operating System Li...

Explain the OS/2 Operating System Like NetWare, OS/2 manage resources at three levels, as shown in Figure 4.5 Resources may be maintained at the session, process, and thread le

What is an acyclic graph, What is an acyclic graph? A tree that has bee...

What is an acyclic graph? A tree that has been corrupted by links to other branches, but does not have any cyclic paths in it.

Malloc, I need help implementing malloc

I need help implementing malloc

What is external fragmentation?, What is external fragmentation? As pro...

What is external fragmentation? As process are removed from and loaded to the memory free memory space is bracken into pieces .external fragmentation take place when enough mem

Information system can be divided into three task areas, From hardware pers...

From hardware perspective, every information system can be divided into three task areas Presentation, Application Logic and Data Storage. The R/3 Basis software is extremely s

Nested Macro calls, . Nested Macro calls are expanded using the

. Nested Macro calls are expanded using the

Server thread, Extend task 1 so that the requests are issued by the clients...

Extend task 1 so that the requests are issued by the clients instead of the server. The server now do not use the "all_requests.dat" file. Instead every client thread reads from

Explain multi-user based operating system, Multi-user - A multi-user Opera...

Multi-user - A multi-user Operating System permits for multiple users to use the same computer at the same time and/or different times. Below are some instances of multi-user Op

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