<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>Advogato blog for jserv</title>
    <link>http://www.advogato.org/person/jserv/</link>
    <description>Advogato blog for jserv</description>
    <language>en-us</language>
    <generator>mod_virgule</generator>
    <pubDate>Wed, 22 May 2013 23:30:58 GMT</pubDate>
    <item>
      <pubDate>Mon, 23 Apr 2007 16:46:17 GMT</pubDate>
      <title>23 Apr 2007</title>
      <link>http://www.advogato.org/person/jserv/diary.html?start=6</link>
      <guid>http://www.advogato.org/person/jserv/diary.html?start=6</guid>
      <description>Cacao VM running on OpenMoko&#xD;
&#xD;
&lt;p&gt; The &lt;a href="http://www.fic.com.tw/" &gt;FIC&lt;/a&gt; guys gave me&#xD;
one handset of GTA01 (&lt;a&#xD;
href="http://www.openmoko.org/"&gt;OpenMoko&lt;/a&gt;/Neo1973&#xD;
machine) last month, and it brings a lot of joy and fun for&#xD;
hacking to me.&#xD;
&#xD;
&lt;p&gt; First, &lt;a&#xD;
href="http://wiki.openmoko.org/wiki/OpenMoko_under_QEMU"&gt;system&#xD;
emulator&lt;/a&gt; for &lt;a&#xD;
href="http://www.openmoko.org/"&gt;OpenMoko&lt;/a&gt; based on qemu&#xD;
is really exciting, and I prepared a working Win32 version&#xD;
of openmoko emulator some days ago (look up the &lt;a&#xD;
href="http://wiki.openmoko.org/wiki/OpenMoko_under_QEMU"&gt;wiki&lt;/a&gt;&#xD;
for details).  Then, back to Free Java world, I met several&#xD;
hackers around the world in #kaffe, #classpath, and #cacao&#xD;
IRC channel.  Since I had portd &lt;a&#xD;
href="http://www.kaffe.org/"&gt;Kaffe&lt;/a&gt; to Xscale-based mobile&#xD;
phones, I decide to take &lt;a&#xD;
href="http://www.cacaojvm.org/"&gt;Cacao&lt;/a&gt; for a try.&#xD;
&#xD;
&lt;p&gt; After some slight modifications (with the help from twisti), &lt;a&#xD;
href="http://www.cacaojvm.org/"&gt;Cacao&lt;/a&gt; works on &lt;a&#xD;
href="http://www.openmoko.org/"&gt;OpenMoko&lt;/a&gt; GTA01, and here&#xD;
is the output for typical "Hello World" application in Java:&#xD;
&lt;pre&gt;&#xD;
root@fic-gta01:/var/tmp$ cd /tmp/cacao &#xD;
root@fic-gta01:/var/tmp/cacao$ ls *.class&#xD;
fp.class     hello.class&#xD;
root@fic-gta01:/var/tmp/cacao$ cd bin &#xD;
root@fic-gta01:/var/tmp/cacao/bin$ ./cacao -cp .. hello&#xD;
Hello world&#xD;
root@fic-gta01:/var/tmp/cacao/bin$ uname -a&#xD;
Linux fic-gta01 2.6.20.7-moko8 #1 PREEMPT Sat Apr 14&#xD;
07:40:05 UTC 2007 armv4tl unknown&#xD;
&lt;/pre&gt;&#xD;
It is based on &lt;a href="http://www.cacaojvm.org/" &gt;Cacao&lt;/a&gt;&#xD;
SVN (along with GPL'd ARM jit engine) + &lt;a&#xD;
href="http://www.gnu.org/software/classpath/"&gt;GNU&#xD;
Classpath&lt;/a&gt; version 0.95.  However, I still manage to let&#xD;
gtk-peer work on &lt;a href="http://www.cacaojvm.org/" &gt;Cacao&lt;/a&gt;&#xD;
inside GTA01 device.  But I am of the opinion that it is&#xD;
really a good start point for joint of the power from Free&#xD;
Java (&lt;a href="http://www.gnu.org/software/classpath/" &gt;GNU&#xD;
Classpath&lt;/a&gt;, &lt;a href="http://www.cacaojvm.org/" &gt;Cacao&lt;/a&gt;,&#xD;
&lt;a href="http://www.kaffe.org/" &gt;Kaffe&lt;/a&gt;, etc.), &lt;a&#xD;
href="http://www.openmoko.org/"&gt;OpenMoko&lt;/a&gt;, and Embedded&#xD;
Linux.&#xD;
&#xD;
&lt;p&gt; Also, I met guillaum1 in #cacao, who is the developer of &lt;a&#xD;
href="http://midpath.thenesis.org/"&gt;MIDPath&lt;/a&gt;, and he&#xD;
suggested me to try the combination of cacao-cldc (cacao&#xD;
without GNU Classpath) + &lt;a&#xD;
href="http://midpath.thenesis.org/"&gt;MIDPath&lt;/a&gt;.  The design&#xD;
of &lt;a href="http://midpath.thenesis.org/" &gt;MIDPath&lt;/a&gt; is&#xD;
very flexible, and it allows to have MIDP2 working on top of&#xD;
cacao-cldc (without Classpath) or standard cacao (i.e with&#xD;
Classpath).  I will do that later.&#xD;
&#xD;
&lt;p&gt; In addition, some friends in Taiwan and I set up a new&#xD;
laboratory, named "&lt;a&#xD;
href="http://orzlab.blogspot.com/"&gt;Open RazzmatazZ&#xD;
Laboratory&lt;/a&gt;" (OrzLab), which funds an environment for&#xD;
freedom and creativity based on Free Software and Open&#xD;
Source efforts.  We are looking for some improvements for &lt;a&#xD;
href="http://www.openmoko.org/"&gt;OpenMoko&lt;/a&gt;, such as CJK&#xD;
(Chinese, Japanese, and Korean) text processing and input&#xD;
methods, Java VM integrations, etc.  I do really enjoy the&#xD;
fun of hacking!</description>
    </item>
    <item>
      <pubDate>Mon, 6 Feb 2006 03:32:14 GMT</pubDate>
      <title>6 Feb 2006</title>
      <link>http://www.advogato.org/person/jserv/diary.html?start=5</link>
      <guid>http://www.advogato.org/person/jserv/diary.html?start=5</guid>
      <description>&lt;b&gt;Ten Anniversary of Kaffe Project&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
In Feb 6 1996, Tim Wilkinson released the first version of &lt;a href="http://www.kaffe.org/" &gt;Kaffe&lt;/a&gt; as version 0.1, which is the first independent free and open source implementation of Java Virtual Machine. See the ChangeLog &lt;a href="http://www.kaffe.org/cgi-bin/viewcvs.cgi/kaffe/ChangeLog.1?rev=HEAD&amp;content-type=text/vnd.viewcvs-markup" &gt;here&lt;/a&gt;:&lt;br&gt;&lt;ul&gt;&lt;pre&gt;
Tue Feb  6 11:38:46 MET 1996    Tim Wilkinson   &amp;lt;tim@sarc.city.ac.uk&amp;gt;

&lt;p&gt;          * Version 0.1 of Kaffe released.
&lt;/pre&gt;&lt;/ul&gt;
The brave action inspires many developers around the world, and various research projects and commercial products were constructing on the basis of &lt;a href="http://www.kaffe.org/" &gt;Kaffe&lt;/a&gt;, and we could find some Kaffe-related projects in &lt;a href="http://www.kaffe.org/links.shtml" &gt;Links&lt;/a&gt;. Now, after ten years, there are many and many free Java runtimes and "clones". It's really amazing that GNU Classpath, GCJ, Kaffe, etc. are going better and better, more and more robust, and still free and open. :-)&lt;br&gt;
&lt;br&gt;
Happy Birthday to Kaffe!&lt;br&gt;</description>
    </item>
    <item>
      <pubDate>Wed, 26 Oct 2005 10:51:46 GMT</pubDate>
      <title>26 Oct 2005</title>
      <link>http://www.advogato.org/person/jserv/diary.html?start=4</link>
      <guid>http://www.advogato.org/person/jserv/diary.html?start=4</guid>
      <description>Kaffe in Commercial Embedded System Product

&lt;p&gt; I am looking up some commercial vendors for embedded system solutions dedicated to Linux-based realtime support today. There is one company, &lt;a href="http://www.sysgo.com/" &gt;SYSGO AG&lt;/a&gt;, claiming that it is the leading software provider for Embedded Systems in Europe. After consulting the &lt;a href="http://www.sysgo.com/en/downloads/elinos-service/faqs/" &gt;FAQs of ELinOS&lt;/a&gt;, I found the following interesting items:&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Interesting facts about the use of Java on embedded Linux&lt;/b&gt;&lt;ul&gt;
The commercial SUN Java 1.3 JDK requires about 30 MB in the file system and another 16-22 MB RAM for graphics applications. When graphic versions are integrated (e.g. Swing), the required classes add up to enormous volumes that are often too large for an embedded system.

&lt;p&gt; There are alternatives, but they usually have similar memory requirements when used with graphic versions. If it is possible to use access alternative graphic libraries instead of JAVA (e.g. QT/GTK...), a similar application can be handled with less than 4 MB.

&lt;p&gt; ELinOS offers Kaffe and Kaffe for QT as a Java environment in the DevelopmentKit.&lt;/ul&gt;
&lt;li&gt;&lt;b&gt;Is there Java support for embedded systems? (VMs, versions etc.)&lt;/b&gt;&lt;ul&gt;
ELinOS v3.0 comes with the Kaffe free Java VM for X86, PPC, ARM  and Jikes. If requested, KVM or any other JVMs are possible.&lt;/ul&gt;
&lt;/ul&gt;
So that, we can see that recent release of &lt;a href="http://www.kaffe.org/" &gt;KaffeVM&lt;/a&gt; (with Qt/Embedded AWT backend) was shipped in industrial embedded system products, such as &lt;a href="http://www.sysgo.com/" &gt;SYSGO AG&lt;/a&gt;'s &lt;a href="http://www.sysgo.com/en/products/" &gt; 	ELinOS&lt;/a&gt;. Interesting :-)</description>
    </item>
    <item>
      <pubDate>Tue, 27 Sep 2005 00:05:59 GMT</pubDate>
      <title>27 Sep 2005</title>
      <link>http://www.advogato.org/person/jserv/diary.html?start=3</link>
      <guid>http://www.advogato.org/person/jserv/diary.html?start=3</guid>
      <description>Play with GCJX

&lt;p&gt; &lt;p&gt; &lt;p&gt; I just saw Ranjit Mathew's diary, &lt;a href="http://www.advogato.org/person/rmathew/diary.html?start=112" &gt;Miscellany&lt;/a&gt;, and &lt;a href="http://gcc.gnu.org/wiki/GCJX%20status" &gt;the status of GCJ&lt;/a&gt; attracts me, so that I decided to take a try with GCJx. I wrote &lt;a href="http://jserv.sayya.org/kaffe/build-gcjx" &gt;a small build script&lt;/a&gt;, which can automatically check out from CVS, build GCJX, and show you if it's completed or not.

&lt;p&gt; &lt;p&gt; &lt;p&gt; GCJX worked very well with my test cases, and I even modified kaffe/libraries/javalib/Makefile.am.in to drive GCJX generating bytecode for Kaffe's API implementations. It seems to work, but I think I should take a look over the existing build process, according to kaffe/library/javalib/Makefile.am: &lt;ul&gt;&lt;pre&gt;
# Note: Makefile.am is generated from Makefile.am.in using 
# developers/update-class-list (called from developers/autogen.sh)
#
# Yes, it's slightly insane:
#
#   Makefile.am.in -&amp;gt; Makefile.am -&amp;gt; Makefile.in -&amp;gt; Makefile
&lt;/pre&gt;&lt;/ul&gt;
Also, I found the &lt;a href="http://www.kaffe.org/pipermail/kaffe/2005-September/103342.html" &gt;kaffeawt building fault of Nano-X AWT backend&lt;/a&gt;. It would be better to introduce new rules for generating the separate jarball.

&lt;p&gt; &lt;p&gt; &lt;p&gt; Ooops, I have to say again, GCJX rocks. Kudos to &lt;a href="http://www.peakpeak.com/~tromey/blog/" &gt;Tom Tromey&lt;/a&gt;!</description>
    </item>
    <item>
      <pubDate>Mon, 29 Aug 2005 08:16:09 GMT</pubDate>
      <title>29 Aug 2005</title>
      <link>http://www.advogato.org/person/jserv/diary.html?start=2</link>
      <guid>http://www.advogato.org/person/jserv/diary.html?start=2</guid>
      <description>After following [&lt;a href="http://conference2005.kde.org/sched-devconf.php" &gt;KDE Contributor and Developer Conference&lt;/a&gt;], I found the topic [&lt;a href="http://conference2005.kde.org/cfp/develconf/josef.spillner-short.qt.port.php" &gt;There is a K in microkernel - Qt/embedded port to L4&lt;/a&gt;], and I thought that's amazing to me although I can't attend the session due to physical distance. Recently, [the L4 guys] ported Qt to L4/DROPS, and they are finally about to present their great work in KDE aKademy.

&lt;p&gt; As I recall, Alexander Boettcher told me the progress of Qt and Kaffe porting to L4 in mailing-list. Refer to [&lt;a href="http://www.kaffe.org/pipermail/kaffe/2005-April/102379.html" &gt;problem using QtAWT with 1.1.5 (Gnu Linux/i686)&lt;/a&gt;]. I am really excited that it works even better now. Later, I would like to put the sexy screenshots in Kaffe.org's collection [&lt;a href="http://www.kaffe.org/screenshots_qte.shtml" &gt;Screen Shots - Kaffe's Qt AWT backend&lt;/a&gt;], and, of course, I am willing to see the L4 porting efforts are going to be merged  in cvs repository, too.

&lt;p&gt; Exciting L4 !</description>
    </item>
    <item>
      <pubDate>Sat, 20 Aug 2005 04:46:33 GMT</pubDate>
      <title>20 Aug 2005</title>
      <link>http://www.advogato.org/person/jserv/diary.html?start=1</link>
      <guid>http://www.advogato.org/person/jserv/diary.html?start=1</guid>
      <description>I attended &lt;a href="http://www.javatwo.net/" &gt;JavaTwo&lt;/a&gt;, the Java Developer Conference by Sun Microsystems Taiwan in Aug 17 and 18. I met two Sun guys, Matt Thompson and Rima Patel, whose talks were very impressive. Also, I participated in various sesssions, including Design Patterns in Java Library (speaker: jjhou), J2EE Anti-Patterns, New Advances of XML and Web Services 2005, and BeanShell interpreter.

&lt;p&gt; &lt;p&gt; &lt;p&gt; In the meanwhile, In JavaTwo, I presented Free Java Runtimes dedicated to overview of recent great works around Free Java Hackers, and the slides are &lt;a href="http://jserv.sayya.org/kaffe/doc/FreeJavaRuntimes-JavaTwo2005.pdf" &gt;available here&lt;/a&gt; (PDF document). Of course, my slides are written in Traditional Chinese, so that only some developers could understand, but I wish that's still useful.

&lt;p&gt; &lt;p&gt; &lt;p&gt; I am glad to see that some developers took their interest to attend my session, and gave me some feedback. They thought my demo for recent KMM (Kaffe Multimedia Project) and KOE (Kaffe-based Operating Environment) were cool enough as an exciting impression how Free Java Runtimes could be. :-)

&lt;p&gt; &lt;p&gt; &lt;p&gt; However, I am still hacking Kaffe VM for better integration between lightweight AWT implementations and MHP software stack, and I do hope to release some snapshots this year.</description>
    </item>
    <item>
      <pubDate>Sat, 24 Apr 2004 03:39:12 GMT</pubDate>
      <title>24 Apr 2004</title>
      <link>http://www.advogato.org/person/jserv/diary.html?start=0</link>
      <guid>http://www.advogato.org/person/jserv/diary.html?start=0</guid>
      <description>&lt;a href="http://www.advogato.org/proj/Kaffe%20OpenVM/" &gt;Kaffe OpenVM&lt;/a&gt;&lt;br&gt;
Recently, I wrote an &lt;a href="http" ://jserv.sayya.org/kaffe/doc/jvm-impl-big5.txt&gt;article&lt;/a&gt; encoded in Big5 about Open Source JavaVM development in Traditional Chinese. In fact, the article is never completed since everything changes so fast. I am willing to share this to others interested in  getting involved with Open Source JavaVM, especially for people using Chinese.</description>
    </item>
  </channel>
</rss>
