[nycbug-talk] Status of native jdk's on OpenBSD

Kurt Miller truk
Wed Jun 30 15:57:08 EDT 2004


Before I went on vacation I was asked about the native jdk's
on OpenBSD. The current status is that OpenBSD has 1.3 
working in classic vm, green threads only. 

After the basic jdk was committed, I started working on 
getting native threads working (classic vm, native threads). 
tedu@ started working on getting hotspot going too. He 
posted his patches to ports@ and I've picked up where 
he left off. 

The classic vm with native threads is working ok right
now (i.e. -native). There are some issues like tomcat 
crashes it and the SwingSet2 demo app has a random 
segfault.

$ java -native -version 
java version "1.3.1-p9"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-p9-truk-2004-06-28-15:04)
Classic VM (build 1.3.1-p9-truk-2004-06-28-15:04, native threads, nojit)

Just recently I've made some more progress with hotspot. 
I ported some missing functionality in dlsym from FreeBSD.
This has enabled hotspot to get fully initialized, but still 
crashes when executing the java demos. 

$ java -client -version
java version "1.3.1-p9"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-p9-truk-2004-06-28-15:04)
Java HotSpot(TM) Client VM (build truk-2004-06-29-15:32, mixed mode)
$ java -server -version 
java version "1.3.1-p9"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-p9-truk-2004-06-28-15:04)
Java HotSpot(TM) Server VM (build truk-2004-06-29-15:32, mixed mode)

I'm also investigating if gcc must be configured with
--enable-threads=posix to get a thread safe libstdc++.
It is quite possible hotspot may have to wait until gcc
obtains this feature on OpenBSD.

Once 1.3 is working halfway decently with hotspot, a 1.4
port is possible. Although changes will likely be needed to 
replace sigcontext with ucontext in OpenBSD signal handlers.

-Kurt




More information about the talk mailing list