Define the os/2 threads code, Operating System

Assignment Help:

Define the OS/2 threads code

The sample program in Listing is very similar to the NetWare example. OS/2 commands are substituted for the pseudocode commands controlling thread creation and execution.

Listing

Void WorkerThread(ULONG userID);

#define SLEEP_INTERVAL (ULONG) 50

void AcceptRegisterationRequests( )

{

   int userID, threadID ;

   do{

        ......

        WaitforClientRegistration( )

        RegisterClient()

        UserID = RegisterAsUser ( )

        DocCreateThread(&threadID,WorkerThread, userID, 0, 8192)

        ......

     } while (FOREVER)

   }

   Void WorkerThread(ULONG userID);

   {

  do{

          DosSleep(SLEEP_INTERVAL);

                   if (WorkAvailable) {

    Process Request ( )

    Send Response ( )

   }

  } while (CLENT_CONNECTED)

  DosExit(EXIT_THREAD,0);

 }

Listing : OS/2 threads code example  Upon successful registration, an OS/2 thread is started with the CreateThread(  ) command. The function WorkerThread( ) begins asynchronous execution and loops at specified intervals looking for work to perform. The intervals are created by the DosSleep ( ) function call and  will allow  the thread to periodically  poll for available work.When the client requests closure of the connection or an error occurs, the DosExit( ) function will be performed to exit the current worker thread.


Related Discussions:- Define the os/2 threads code

What are the advantages of contiguous allocation, What are the advantages o...

What are the advantages of Contiguous allocation? The advantages are a. Supports direct access b. Supports sequential access c. Number of disk seeks is minimal.

Major differences between capability lists and access lists, Q. What are th...

Q. What are the major differences between capability lists and access lists? Answer: An access list is a list for each object consisting of the domains with a nonempty set of

What is the main problem with the fcfs scheme, Question : a) Consider ...

Question : a) Consider table 1.0 below, assume the processes arrived in the order P 1 , P 2 , P 3 , P 4 at time shown and need the indicated burst time (both in milliseconds)

Define what an assembler is, Define what an assembler is An assembler i...

Define what an assembler is An assembler is machine dependant.

Virtual memory and paging, A- Consider a computer system that provides a vi...

A- Consider a computer system that provides a virtual memory space that consists of 8  pages. The physical memory contains 4 pages where the page size is 4Kbytes. Assume that at sp

Explain general graph directory structure, General Graph Directory A s...

General Graph Directory A serious trouble with using an acyclic graph structure is making sure that there are no cycles. When links are further added to an existing tree struc

Is disk scheduling useful in a single-user environment, Is disk scheduling,...

Is disk scheduling, other than FCFS scheduling, useful in a single-user environment? Explain your answer. In a single-user environment, the I/O queue usually is blank. Requests

Explain additional-reference-bits algorithm, Additional-reference-bits algo...

Additional-reference-bits algorithm We can keep an 8-bit byte for every page in a table in memory. The operating system shifts the reference bits right 1 bit, discarding the lo

Recognition of essential syntactic constructs by reductions, Recognition of...

Recognition of essential syntactic constructs by reductions, this task is carried out by Recognition of essential syntactic constructs by reductions, this task is carried out

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