[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Java on HURD, success



I've attempted to run a Java Virtual Machine under the Hurd, i 
chose Kaffe which appeared to be the most advanced of the open 
source JVMs.
I got the Kaffe-1.0.5 source from www.transvirtual.com, and of 
course it didn't compile right out of the box. First I had to get 
configure to recognise the i386-gnu system type. Then I tried to 
prallel the architecture dependent initalization code from linux. 
Since Kaffe requires threads and Hurd lacks a pthreads 
implementation, i had to settle for it's own jthreads 
implementaion, however something more native like cthreads or a 
future implementation of pthreads would be better. After that the 
compile went through, however Kaffe hung my box hard whenever it 
tried to run any java program. The problem was in that it was 
trying to put the stdin, stdout and stderr file descriptors into 
asynchronous  mode (using fctnl and O_ASYNC, i think). Since I'm 
no expert on async-IO and that part of code wasn't essential to 
exectution I just commented it out. BTW, how does one go about 
putting file descriptors in async mode?
After that it actually worked fine. I've been able to run several 
console java programs. And most of the self checks that come with 
the code passed as well, except a couple that were dealing with 
threading and stacks overflows.
I didn't try and AWT programs yet since I don't have X install 
(btw, is X actually working now?).

The important thing is that it's working!!! Being able to run 
java apps greatly increases Hurd's application base.

So, any suggestions as to the problems  stated above? especially 
about threads, how's that pthreads implementation coming?

Igor



Reply to: