From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9989 invoked by alias); 12 Jun 2011 17:15:56 -0000 Received: (qmail 9980 invoked by uid 22791); 12 Jun 2011 17:15:55 -0000 X-SWARE-Spam-Status: No, hits=2.3 required=5.0 tests=AWL,BAYES_50,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RFC_ABUSE_POST,TW_GC,TW_QE,TW_WG X-Spam-Check-By: sourceware.org Received: from mail-gx0-f175.google.com (HELO mail-gx0-f175.google.com) (209.85.161.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 12 Jun 2011 17:15:41 +0000 Received: by gxk3 with SMTP id 3so1971815gxk.20 for ; Sun, 12 Jun 2011 10:15:41 -0700 (PDT) MIME-Version: 1.0 Received: by 10.146.8.34 with SMTP id 34mr4094405yah.28.1307898941226; Sun, 12 Jun 2011 10:15:41 -0700 (PDT) Received: by 10.146.84.6 with HTTP; Sun, 12 Jun 2011 10:15:41 -0700 (PDT) Date: Sun, 12 Jun 2011 17:15:00 -0000 Message-ID: Subject: GCJ Porting for RTEMS Status Report From: Jie Liu To: RTEMS Mailing List , java@gcc.gnu.org Cc: Joel Sherrill Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Mailing-List: contact java-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-owner@gcc.gnu.org X-SW-Source: 2011-06/txt/msg00015.txt.bz2 Hi, First, let us look at an HelloWorld example with exception and thread, the HelloWorld.java is: public class HelloWorld{ public static void main(String args[]){ ThreadTest t=3Dnew ThreadTest(); Thread t1=3Dnew Thread(t); System.out.println("GCJ For RTEMS in Java!---in HelloWorld.java"); try{ System.out.println(args[100]+"for raise an exception"); }catch(Exception e){ System.out.println(e.getMessage()+"---in an Exception"); } t1.start(); } } class ThreadTest extends Thread{ public void run(){ System.out.println("ThreadTest from HelloWorld!---in a new thread"); } } Compiling it using cross gcj and linking with rtems system, we get a HelloWorld.exe. And then, run it on qemu as: qemu -m 512 -boot a -cpu 486 -fda /home/rtems/qemu/pc386_fda -hda fat:/home/rtems/qemu/hd -monitor null -nographic -serial stdio --no-reboot The output is: Initialized console on port COM1 9600-8-N-1 GCJ For RTEMS in Java!---in HelloWorld.java 100---in an Exception ThreadTest from HelloWorld!---in a new thread EXECUTIVE SHUTDOWN! Any key to reboot... Is this interesting? In the last few months, I have --Porting bdwgc to RTEMS/I386 --Use RTEMS=92s pthread for GCJ Porting --Fix many many problems in compiling, linking and running --Have a cross gdb environment for source code level debug and next step I will -- Start focusing on running the testsuite and fix encountered problem -- Move to other architectures and repeat this progress --Submitting patches to related community If you are interested in, welcome! Do not hesitate to contact me. :) Best Regards, Jie