EmbeddedRelated.com
Forums

Jave on Embedded Linux

Started by moti...@gmail.com December 6, 2005
I have an embedded system and want to set J2SE or J2ME on Embedded
Linux.
I heard a few ways to install JDK but I cound not understand becase,
didn't have fully information.
I consider about kaffe and blackdown package, I could not build that,
however.

My embedded system's hardware specification

Processor : Intel PXA255 400MHz
SDRAM : Samsung 64 MB
Flash : Intel strata flash 32 MB
Ethernet : CS8900A 10BaseT
Display : LG TFT LCD 6.4" (640X480)
Touch : ADS7843(Touch Screen)
Etc. : USB, 2 Serials, 1 JTAG, PCMCIA(Buffalo WLAN Card), CF(Sandisk CF
512MB), MMC, IR, 8 Key Pads, RTC.

and Linux version is 2.4.18

If you have similar experience or related documents about Java on
Embedded Linux, please advice me. (if you have documents or
information, please send me.)
I really want to build java on embedded Linux.

Please help me.

Best Regards.


Y.K. Moon

motionanalyst@gmail.com <motionanalyst@gmail.com> wrote:
> Processor : Intel PXA255 400MHz > SDRAM : Samsung 64 MB > Flash : Intel strata flash 32 MB > Ethernet : CS8900A 10BaseT > Display : LG TFT LCD 6.4" (640X480) > Touch : ADS7843(Touch Screen) > Etc. : USB, 2 Serials, 1 JTAG, PCMCIA(Buffalo WLAN Card), CF(Sandisk CF > 512MB), MMC, IR, 8 Key Pads, RTC. > > and Linux version is 2.4.18
Is that 32 MB flash all that you have for persistent storage? A full J2SE version of the JRE on Linux will run you more than that when decompressed, even with all the optional pieces removed. You would need to look for a J2ME virtual machine. http://java.sun.com/products/personalprofile/download.html is a non- commercial J2ME implementation for Linux/x86. The page claims tht Sun sells a commercially distributable version as well. -- www.designacourse.com The Easiest Way To Train Anyone... Anywhere. Chris Smith - Lead Software Developer/Technical Trainer MindIQ Corporation
I am much indebted for your attention and was full of gratitude.

I have more quistions. I have more storage that is file system (ext2)
using Compact Flash(512MB, Sandisk).
Could I build the J2SE on my embedded system? If you have information
about installation of J2SE on an embedded system, please send me.

Thank you, and best regards

Y.K. Moon

hi,

I installed kaffe 1.1.6 on a embedded platform, based on MIPS:
it works with AWT, not SWING.
I started using the standard diistribution, with some month of works
:-)

You can try compiling it for your target, see the errors, and
ask in the kaffe mailing list: it gives a good support

bye
giammy
--
Gianluca Moro          http://groups.yahoo.com/group/embeddeditalia/
ISCRIVITI alla         Mailing List Italiana su LINUX EMBEDDED
giangiammy@yahoo.com   Visit http://ilpinguino.altervista.org/

motionanalyst@gmail.com wrote:
> I am much indebted for your attention and was full of gratitude. > > I have more quistions. I have more storage that is file system (ext2) > using Compact Flash(512MB, Sandisk).
If you have any kind of graphical output (browser and/or Java console), you need to include a mininum X installation. 512M would be tight, 1G would be better. However, with any kind of GUI, 64M RAM is not enough. We had a Java servlet apps that starts up with 100M without anything else running.
> Could I build the J2SE on my embedded system? If you have information > about installation of J2SE on an embedded system, please send me.
Of course you can, but you have to spend lots of time striping it down to fit your system.
> > Thank you, and best regards > > Y.K. Moon
"linnix" <me@linnix.info-for.us> wrote in message 
news:1133974525.831469.234720@g14g2000cwa.googlegroups.com...
> > motionanalyst@gmail.com wrote: >> I am much indebted for your attention and was full of gratitude. >> >> I have more quistions. I have more storage that is file system (ext2) >> using Compact Flash(512MB, Sandisk). > > If you have any kind of graphical output (browser and/or Java console), > you need to include a mininum X installation. 512M would be tight, 1G > would be better. However, with any kind of GUI, 64M RAM is not enough. > We had a Java servlet apps that starts up with 100M without anything > else running.
This is simply not true. Taken literally, we had GUIs even before 1985 when Windows 1.0 came out, and 64MB of RAM was a hell of a lot of RAM back in those days. But even if you restrict yourself to "modern GUIs", there are still plenty of lightweight ones out there. In fact, there are GUIs specifically designed for embedded Linux. See, for example the MatchBox project: http://projects.o-hand.com/matchbox/screenshots.html with full unicode support and theme switching, and yet can run on systems with only 40MB of RAM, and the binaries themselves take up a measly 50Kb. That's kilobytes, not megabytes. If you're running on devices even more constrained than that, there's MicroWindows: http://www.linuxdevices.com/links/LK4761626139.html which can run in 64Kb of RAM. Again, note that that's Kilobytes, not Megabytes. You can find a list of GUIs for embedded Linux at http://www.linuxdevices.com/articles/AT9202043619.html I didn't see the original post, so I don't know what the OP is planning to do, but if it's something that involves Java 2 SE, the OP may wish to reconsider. I'm not sure Java is the best choice for memory-constrained devices; at least not J2SE. - Oliver
Oliver Wong wrote:
> "linnix" <me@linnix.info-for.us> wrote in message > news:1133974525.831469.234720@g14g2000cwa.googlegroups.com... > > > > motionanalyst@gmail.com wrote: > >> I am much indebted for your attention and was full of gratitude. > >> > >> I have more quistions. I have more storage that is file system (ext2) > >> using Compact Flash(512MB, Sandisk). > > > > If you have any kind of graphical output (browser and/or Java console), > > you need to include a mininum X installation. 512M would be tight, 1G > > would be better. However, with any kind of GUI, 64M RAM is not enough. > > We had a Java servlet apps that starts up with 100M without anything > > else running. > > This is simply not true. Taken literally, we had GUIs even before 1985 > when Windows 1.0 came out, and 64MB of RAM was a hell of a lot of RAM back > in those days. But even if you restrict yourself to "modern GUIs", there are > still plenty of lightweight ones out there. In fact, there are GUIs > specifically designed for embedded Linux. See, for example the MatchBox > project: http://projects.o-hand.com/matchbox/screenshots.html with full > unicode support and theme switching, and yet can run on systems with only > 40MB of RAM, and the binaries themselves take up a measly 50Kb. That's > kilobytes, not megabytes.
This page mentioned quarter VGA resolution. The OP asked for touch screen VGA.
> > If you're running on devices even more constrained than that, there's > MicroWindows: http://www.linuxdevices.com/links/LK4761626139.html which can > run in 64Kb of RAM. Again, note that that's Kilobytes, not Megabytes.
Without meanful GUI.
> > You can find a list of GUIs for embedded Linux at > http://www.linuxdevices.com/articles/AT9202043619.html > > I didn't see the original post, so I don't know what the OP is planning > to do, but if it's something that involves Java 2 SE, the OP may wish to > reconsider. I'm not sure Java is the best choice for memory-constrained > devices; at least not J2SE.
The OP asked for J2SE. Perhaps you should read the post before answering.
> > - Oliver
"linnix" <me@linnix.info-for.us> wrote in message 
news:1133987328.902483.312010@f14g2000cwb.googlegroups.com...
> Oliver Wong wrote: >> See, for example the MatchBox >> project: http://projects.o-hand.com/matchbox/screenshots.html with full >> unicode support and theme switching, and yet can run on systems with only >> 40MB of RAM, and the binaries themselves take up a measly 50Kb. That's >> kilobytes, not megabytes. > > This page mentioned quarter VGA resolution. The OP asked for touch > screen VGA.
Yes, the page *mentions* quarter VGA resolution. It also has screenshots for the Nokia 770 which is of a higher resolution, and the Sony U71 Tablet PC with runs at 800x600, which exceeds VGA. In other words, MatchBox is not "locked" at quarter VGA, which you seemed to be implying by your post.
>> If you're running on devices even more constrained than that, there's >> MicroWindows: http://www.linuxdevices.com/links/LK4761626139.html which >> can >> run in 64Kb of RAM. Again, note that that's Kilobytes, not Megabytes. > > Without meanful GUI.
I assume you mean "meaningful". What's your definition of meaningful? The site there specifically says it provides an API that is compatible with X Windows and Win32. Here's a short paragraph from the page I linked above: <quote> Microwindows is essentially a layered design that allows different layers to be used or rewritten to suite the needs of the implementation. At the lowest level, screen, mouse/touchpad and keyboard drivers provide access to the actual display and other user-input hardware. At the mid level, a portable graphics engine is implemented, providing support for line draws, area fills, polygons, clipping and color models. At the upper level, various API's are implemented providing access to the graphics applications programmer. </quote> According to http://www.linuxdevices.com/news/NS6390514383.html, the latest release now supports handwriting recognition, graphics keyboard, and a new window manager. What more do you need before the GUI becomes "meaningful"?
> >> >> You can find a list of GUIs for embedded Linux at >> http://www.linuxdevices.com/articles/AT9202043619.html >> >> I didn't see the original post, so I don't know what the OP is >> planning >> to do, but if it's something that involves Java 2 SE, the OP may wish to >> reconsider. I'm not sure Java is the best choice for memory-constrained >> devices; at least not J2SE. > > The OP asked for J2SE. Perhaps you should read the post before > answering. >
As I mentioned, I did not see the original post. For whatever reasons, my newsgroup decided to discard it. As I also mentioned, I don't think J2SE is the right choice for whatever the OP wants to do, given the limited information I've seen in the form of quotes in your post. Additionally, I think you are not in a good position to accuse me of not reading the original post when it seems to me that you dismissed the solutions I provided without actually reading the URLs I linked to. - Oliver
Oliver Wong wrote:
> "linnix" <me@linnix.info-for.us> wrote in message > news:1133987328.902483.312010@f14g2000cwb.googlegroups.com... > > Oliver Wong wrote: > >> See, for example the MatchBox > >> project: http://projects.o-hand.com/matchbox/screenshots.html with full > >> unicode support and theme switching, and yet can run on systems with only > >> 40MB of RAM, and the binaries themselves take up a measly 50Kb. That's > >> kilobytes, not megabytes. > > > > This page mentioned quarter VGA resolution. The OP asked for touch > > screen VGA. > > Yes, the page *mentions* quarter VGA resolution. It also has screenshots > for the Nokia 770 which is of a higher resolution, and the Sony U71 Tablet
128M flash and no Java
> PC with runs at 800x600, which exceeds VGA. In other words, MatchBox is not > "locked" at quarter VGA, which you seemed to be implying by your post. > > >> If you're running on devices even more constrained than that, there's > >> MicroWindows: http://www.linuxdevices.com/links/LK4761626139.html which > >> can > >> run in 64Kb of RAM. Again, note that that's Kilobytes, not Megabytes. > >
No talks of Java at all.
> > Without meanful GUI. > > I assume you mean "meaningful". What's your definition of meaningful?
Yes, you are right.
> The site there specifically says it provides an API that is compatible with > X Windows and Win32. Here's a short paragraph from the page I linked above: >
... We are not asking for window APIs. We are asking for Java, i.e. J2SE API.
> > > > >> > >> You can find a list of GUIs for embedded Linux at > >> http://www.linuxdevices.com/articles/AT9202043619.html > >> > >> I didn't see the original post, so I don't know what the OP is > >> planning > >> to do, but if it's something that involves Java 2 SE, the OP may wish to > >> reconsider. I'm not sure Java is the best choice for memory-constrained > >> devices; at least not J2SE. > > > > The OP asked for J2SE. Perhaps you should read the post before > > answering. > > > > As I mentioned, I did not see the original post. For whatever reasons, > my newsgroup decided to discard it. As I also mentioned, I don't think J2SE > is the right choice for whatever the OP wants to do, given the limited > information I've seen in the form of quotes in your post. > > Additionally, I think you are not in a good position to accuse me of not > reading the original post when it seems to me that you dismissed the > solutions I provided without actually reading the URLs I linked to.
I have not dissmissed solutions that meet the requirements. Please provide links to successful implementation of J2SE on 64M memory. I can provide a 128M J2SE system, but not on 64M. Sure, you can run it with 64M and 64M swap file on Flash, but don't forget to replace the flash every couple of months.
> > - Oliver
"linnix" <me@linnix.info-for.us> wrote in message 
news:1133994317.471339.266390@z14g2000cwz.googlegroups.com...
> > I have not dissmissed solutions that meet the requirements.
The OP's post finally came through, and I see that (s)he wrote that she wants J2SE or J2ME, so actually, yes, you did dismiss solutions that met the requirement. But my main gripe was not whether or not you dismissed solutions that met the requirement, but rather that you dismissed solutions without actually reading about them, and then proceed to chatise me for not reading the original post after I had already said I wasn't able to see the original post. Anyway, it doesn't matter to me. There's two directions that I can think of for this thread can go from here. One is that we get into an argument of who was right and who was wrong. The other is that we try to post information that the OP may find helpful. I'm going to try to steer the thread back towards the latter. We'll see what happens from there.
> Please > provide links to successful implementation of J2SE on 64M memory. I > can provide a 128M J2SE system, but not on 64M.
I couldn't find an implementation of J2SE, but I found one for PersonalJava. The Sharp Zaurus PDA has 64MB of RAM, and supports PersonalJava via the Jeode JVM. You can see pictures of it at http://www.linuxdevices.com/articles/AT2134869242.html. In case (like me) you don't know much about PersonalJava, from Sun's website, http://developers.sun.com/techtopics/mobility/personal/articles/ztutorial/: <quote> In terms of target device capacity, PersonalJava sits between J2SE and the CLDC/MIDP stack of J2ME. </quote> So it's not quite J2SE, but it's more than J2ME. PersonalJava might be another route the OP may wish to look at if (s)he finds (s)he cannot fit J2SE on the device in question. There also happens to be a guide to Java on embedded Linux located at http://www.linuxdevices.com/articles/AT8918758707.html . The OP may be particularly interested in part 4, entitled "Java products of interest to Embedded Linux based system developers". - Oliver