Santoro Corrado wrote: | Ok, please let me know when the patch is ready, because I've not found any | java package for alpha/linux. The only porting of JDK that I've found in | Internet does not use native threads, so each time a blocking call is | issued, every thread is suspended :(((( Nor are you likely to. Garbage collection imposes two extra constraints on a threading system: 1. When a GC is started, all other threads must be stopped so that they don't change the reachability state of the heap while the GC is running. This does not apply if an incremental GC algorithm is used. In any case, allowing one thread to stop all others is not a primitive operation in most native thread systems. 2. The GC requires access to the saved register files of all other threads, because it is possible that the only reachable pointer to an object is in a register. Again, such access is not a primitive operation in most thread systems. Providing these operations may not be possible. e.g. some thread systems may decide to perform the thread switching in the kernel. If they don't provide a system call for #2, then it is simply not possible to get at the registers. Providing function #1 on a multiprocessor system can be quite expensive. Rather, Kaffe and other JVMs roll their own thread systems, where this functionality can be provided.