What happens to the Thread executing IO Block

What happens to the thread (if JVM is enabled for using green threads) executing IO block? Does it block the whole process? if, it doesn't block the process, how does it let the O/S know that the calling thread should not be blocked? Please help me understand the concept.
[300 byte] By [gopal_mk] at [2007-9-30 5:57:28]
# 1
Mutlithreaded (green or not) readers are not distrubed by the same question in several threads; single-threaded ones might be. http://forum.java.sun.com/thread.jsp?thread=512649&forum=37&message=2438030
BIJ001 at 2007-7-1 19:17:33 > top of Java-index,Administration Tools,Sun Connection...
# 2
Is there a problem?
gopal_mk at 2007-7-1 19:17:33 > top of Java-index,Administration Tools,Sun Connection...
# 3
Crossposting is considered a problem. Suppose somebody has answered in one thread and another poster does not know this and tries to porvide an answer in another thread. This is wasting of human reosurces.
BIJ001 at 2007-7-1 19:17:33 > top of Java-index,Administration Tools,Sun Connection...
# 4
looks like we are not solving the actual problem. instead diverting ourselves by getting into unnecessary discussions which doesn't fetch anything ( wasting human resources). still doesn't answer my actual question though (technical).
gopal_mk at 2007-7-1 19:17:33 > top of Java-index,Administration Tools,Sun Connection...
# 5
The process is a thread. so if the thread blocks, the process blocks.If you have a process with two threads and one of them blocks then the other still does other stuff, i.e. the process doesn't stop.Better?Andrew
awaddi at 2007-7-1 19:17:33 > top of Java-index,Administration Tools,Sun Connection...
# 6

true. but when JVM is running (with green threads), as it multiplexes all the requests onto only one O/S thread, does it mean that it doesn't block on IO? if so, how does it manage to do IO on O/S which doesn't support asynchronous IO (I am not sure if there are any O/Ss of that kind) unlike windows and Unix (which have poll and select system calls)

gopal_mk at 2007-7-1 19:17:33 > top of Java-index,Administration Tools,Sun Connection...
# 7

> true. but when JVM is running (with green threads), as it multiplexes all the requests onto only one O/S

> thread, does it mean that it doesn't block on IO? if so, how does it manage to do IO on O/S which doesn't

> support asynchronous IO (I am not sure if there are any O/Ss of that kind) unlike windows and Unix (which

> have poll and select system calls)

Good question. Actually, it can't work very well on OSes where you can't issue asynchronous I/O calls. Or where they work in an "unexpected" fashion.

The green threads port to HP-UX 10.20 (which didn't have threading support, and whose async I/O worked differently from Solaris') was extremely flaky for a while. While it did improve, there were still lots of interesting problems because of this.

Anyway, this only a matter for intellectual curiosity now. While there may still be a few HP-UX 10.20 installations out there, they are few and far in between. And they'll only support JDK 1.1, and may be 1.2.x. Recent JDK releases only support the HotSpot VM, which requires native threads in the OS.

shankar.unni at 2007-7-1 19:17:33 > top of Java-index,Administration Tools,Sun Connection...