Explain what the kernel must provide for a user-level implementation of threads, such as Java on
UNIX.

What will be an ideal response?

A thread that makes a blocking system call provides no opportunity for the user-level scheduler to intervene,
and so all threads become blocked even though some may be in the READY state. A user-level implementation
requires (a) non-blocking (asynchronous) I/O operations provided by the kernel, that only initiate I/O; and (b)
a way of determining when the I/O has completed -- for example, the UNIX select system call. The threads
programmer should not use native blocking system calls but calls in the threading API which make an
asynchronous call and then invoke the scheduler.

Computer Science & Information Technology

You might also like to view...

The File Explorer program enables you to ________ the organizing structure of Windows

A) tag B) format C) navigate D) apply

Computer Science & Information Technology

Leaders for a tab stop are removed in the Tabs dialog box

Indicate whether the statement is true or false

Computer Science & Information Technology