Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 27 Feb 1999 00:32:27 -0800
From:      Amancio Hasty <hasty@rah.star-gate.com>
To:        java@FreeBSD.ORG
Subject:   Netscape's Electric Fire (JAVA VM ) works on FreeBSD
Message-ID:  <199902270832.AAA20564@rah.star-gate.com>

next in thread | raw e-mail | index | archive | help
For build instructions and downloading see:

http://www.mozilla.org/projects/ef/unixbuild.html

For technical background on EF see:
http://www.mozilla.org/projects/ef/techdocs/index.html

Make sure that you use egcs from the ports distribution for compiling EF =
and =

nsprpub.

EF so far only works with jdk 2 java classes. to compile java programs I =
use =

"jikes" with
the jdk 2 classes.

EF native method implementation is incomplete and Scott Furmant the Netsc=
ape =

EF champion had this to say:

fur@netscape.com said:
> Amancio Hasty wrote:  If anyone has any clues as to how to tackle
> implementing the  unimplemented native methods  please let me know. EF
> has an implementation of *some* native methods - most of java.lang,
> java.lang.reflect and java.io, for example.=A0 However, my expectation
> is that we will throw out a large part of the existing native methods
> in favor of a 3rd-party unified runtime library that includes its own
> versions of both native and Java methods.  The two most obvious
> suppliers for EF's runtime are the GNU Classpath effort and Sun's JDK
> 1.2 (under the new community licensing policy). To the extent
> possible, EF should support both libraries, but the legal requirement
> to avoid tainting Classpath and ElectricalFire with Sun code may cause
> problems, e.g. if a developer looks at the Sun runtime library sources
> then they can't contribute to the Classpath effort.  I know that Aaron
> Renn of Classpath expressed some interest on integrating their code
> with EF, so you might contact him: arenn@urbanophile.com  -Scott =


jikes Test.java          =

time ./sajava -nosys -classpath $CLASSPATH Test  =

0.311u 0.062s 0:00.39 94.8%     43+1191k 0+0io 0pf+0w

jdk1.7
time java Test     =

7.590u 0.043s 0:07.88 96.8%     6+758k 0+0io 0pf+0w

The benchmark is a  little misleading because EF did not compile all the =

java classes .

=2E/sajava -classpath $CLASSPATH Test
linker_path =3D /maxtor/gcsns/ef/x/mozilla/ef/dist/FreeBSD_DBG.OBJ/bin/..=
/lib:/ho
me/hasty:/usr/local/netscape/lib/freebsd

*** NOTE: Throwing verify error: Error in reading class file: file not fo=
und, =

or has errors

*** NOTE: Throwing verify error: Error in reading class file: file not fo=
und, =

or has errors
Netscape_Java_java_lang_Thread_registerNatives not implemented
Netscape_Java_java_security_AccessController_getStackAccessControlContext=
 not =

implemented
3.176u 0.739s 0:05.54 70.3%     26+15786k 133+0io 24pf+0w     =


The warning messages are just that which only are printed when EF is comp=
iled =

with -DDEBUG.

EF is not twice as fast the jdk for there is a fixed cost for the =

compilation/linking of java
classes after that it really takes off and it is quite evident per my fir=
st =

sajava run.

In playing around with EF I found that a thread gets fired to compile/run=
 a =

program and that
that the system keeps the compiled classes in memory so that a second run=
 =

enjoys the
speed of unoptimized C code. In essence  EF compiles the java program int=
o =

memory
and it then executes it . You can actually see the code which EF generate=
s by =

including
the "-html" in your run : sajava -html .

The code for outputting x86 diassembled code comes straight from the Free=
BSD =

kernel . Scott did the integration I merely gave him the code .


The  netscape.public.mozilla.java newsgroup is open to discussions on EF.=


Last but not least EF is at an early stage so it is not for the faint of =
heart.

	Enjoy,
	Amancio







To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-java" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199902270832.AAA20564>