Threads in Linux (in general) are separate process that share memory space, in Windows it's different and they're "threads" being scheduled under a parent process.
In the Java 1.1 & Linux 2.0 days you could get better Java performance by using green threads. That didn't last long, and around the time Java was being used for server-side applications it had mostly switched over to native threads.
So far as your actual question goes: There is little difference between the Java threading implementation on Linux & Windows.
[1] http://en.wikipedia.org/wiki/Green_threads#Green_threads_in_...
The Linux scheduler schedules processes; the Windows scheduler schedules threads. Via clone(), Linux can create a process that shares almost everything with its parent, and thereby looks mostly like a Windows thread.
With regards the JVM, there is little difference in this specific respect. The sync primitives available on each platform are a bit different though, as well as things like signals.
But I would say you would have definitely to watch for a) thread creation time and b) thread priorities (but for most of the applications these are not a problem)