<p>There are various documents describing threading on Solaris/Linux, but nowwhere describing the Windows implementation. I have a passing interest in this, it seems strange that something so critical is (seemingly) not documented.</p>

<p>Threading is not the same on different OS' - "Write Once, Run Anywhere" isn't true for threading.</p>

<p>See <a href="http://java.sun.com/docs/hotspot/threads/threads.html" rel="nofollow noreferrer">http://java.sun.com/docs/hotspot/threads/threads.html</a></p>

The document in question discusses the Solaris threading model and how the VM maps to it. This has nothing to do with Linux. Also, the document discusses performance only. The program's overall behaviour should not change no matter what you choose.
Java's exposed threading model is the same on every platform and defined in the Java specifications. To a Java application, the underlying OS should be completely transparent even for threading.
If you have to know, though ... The Sun JVM maps its threads 1:1 to Windows threads. It doesn't use multiple processes or fibers.