Click here to learn
about this Sponsor:
Home  |  News  |  Articles  |  Polls  |  Forum

Keywords: Match:
Embedded Linux & Java -- made for each other (Part 3)
(continuation)

The Synergy of Java and Linux

A properly implemented embedded RTOS must form the core of the embedded Linux/Java platform. Embedded devices pose several restrictions and constraints on an operating system, device drivers, and other foundation components. It's important to work with a version of Linux that has been specifically implemented with embedded target platforms in mind. Not just any Linux will do.

Special attention must be paid to the management of scarce embedded device resources like RAM, ROM, and Flash. Where processor features are lacking (for example, floating point math accelerators), it's necessary to provide efficient and seamless implementations that run on the hardware that is available.

Since embedded Linux must adapt to the unique resources available on a target device, it's important to be able to quickly and efficiently rebuild and restructure the Linux operating system image. This allows developer/engineers to add, remove, and reconfigure Linux features that will be needed by the virtual machine and Java applications. In embedded deployment, every aspect of the device and application must be considered in the tradeoff between size, speed, and resource constraint.

Embedded platforms are nothing like the standardized personal computer or server targets for which enterprise and workstation variants of Linux are designed. In particular, special attention must be paid to enabling access to devices on embedded targets. Uniform access to communications ports, flash memory arrays, display devices, and sound interfaces must be enabled. Thanks to the broad experience embedded RTOS developers have had with Linux deployment, several embedded-oriented standards have evolved for use on these devices.

These standards include . . .
  • Low Overhead Display Device Management

    The combination of an embedded Linux OS and Java technology has delivered a new level of efficiency for constructing graphic user interfaces that can be rendered on touch screen equipped LCD display devices. Low cost, compact, and often in color, these display devices are attractive to both consumers and product designers. Many pervasive designs will deliver user interface convergence on convenient handheld or set-top-box devices, allowing control and visibility to a large array of headless connected embedded platforms deeply embedded in appliances, vehicles, and communications devices.

    Graphic user interfaces tend to be deployed on embedded platforms on either bitmap-based coarse icon-based forms or window control oriented frameworks. Unlike server or workstation-based Linux, which often implements the server/client oriented "X-Windows" user interface framework and one of several alternate window managers, embedded Linux offers an efficient and direct approach. MontaVista's Hard Hat Linux, for example, incorporates the open source package "MicroWindows" ported to run on many supported processor/device platforms. This package runs directly on top of the Linux frame buffer, providing a low-level hardware interface that is very close to the device hardware. It's designed for high performance on embedded processors and can be used to create very responsive interfaces.

    IBM's J9 and its Java class libraries were adopted for MicroWindows by MontaVista. Thus, several embedded device targets have uniform graphics support available. IBM has provided two basic graphics class libraries: the Simple Window Toolkit ("SWT") and "MicroView." AWT graphics specified by personal Java platform configurations runs on top of the SWT graphics layer, as do several browsers and related XML-based rendering tools. SWT is used to create layered user interfaces with complex window controls. The lightweight MicroView framework is used to create the coarser image/icon-based user interfaces favored on simple embedded devices.

  • Communications Interfaces

    Almost every development platform and embedded computer includes communication interfaces. It's a basic part of the task of Linux porting to make drivers available for RS-232 serial communications and Ethernet if the devices are present on the board.

    Communications is either based upon the TCPIP communications stack provided in Linux or on raw manipulation of simple serial or bus interfaces. The TCPIP stack provides access to the Internet and socket interfaces for implementing session-oriented program-to-program communications.

    Specialized communications buses and devices that directly attach to the serial device can be manipulated directly through classes provided as extensions to the Java class libraries. This could include devices that interface with automotive buses like "CAN", "MOST" or IEEE J-1850.

    During development, some devices may be accessed directly through serial connections. Examples include cell phones, car radios and GPS units. These devices are controlled through specialized protocols that are transported over the serial link. In production, these devices may actually be attached to an automotive communications bus. For this reason, a layered architecture is needed for device control. IBM has created device kits that can provide hardware simulation, and alternate transport techniques so that the programs written on development platforms can be directly moved into production designs.
Flexibility

Port combinations using Java technology and an embedded Linux OS are now available on a large number of embedded targets. The developer/engineer can configure and scale the virtual machine and Java class library components as well as the embedded Linux RTOS according to the needs of the project. Device drivers can be included as needed, while still retaining a uniform approach to application development and deployment for many related devices. This method allows improved program code reuse on a large range of devices from deeply embedded headless servers through user interface rendering platforms. From the smallest to the largest embedded device, the combination of a Linux OS and Java technology is very scalable.

Vendor Support

Much of the cost of a project occurs after development is complete and the product is deployed. This support expense can relate to the product consumer in many ways.

The developer's relationship with the supporting Linux and Java technology vendor is key when considering embedded Java code. It's typical for the Java development engineers to have worked with the Linux vendor when doing initial ports of the virtual machine and Java class libraries to the embedded Linux target platforms. The ongoing relationship between Linux and Java vendors is an important consideration. It's also important, especially in the open source environment of Linux, to be able to access the source for Java class libraries in the various configurations being considered for a project.

--- Continued ---



Story navigation . . .

(Click here for further information)


FUEL Database on MontaVista Linux
Whether building a mobile handset, a car navigation system, a package tracking device, or a home entertainment console, developers need capable software systems, including an operating system, development tools, and supporting libraries, to gain maximum benefit from their hardware platform and to meet aggressive time-to-market goals.

Breaking New Ground: The Evolution of Linux Clustering
With a platform comprising a complete Linux distribution, enhanced for clustering, and tailored for HPC, Penguin Computing¿s Scyld Software provides the building blocks for organizations from enterprises to workgroups to deploy, manage, and maintain Linux clusters, regardless of their size.

Data Monitoring with NightStar LX
Unlike ordinary debuggers, NightStar LX doesn¿t leave you stranded in the dark. It¿s more than just a debugger, it¿s a whole suite of integrated diagnostic tools designed for time-critical Linux applications to reduce test time, increase productivity and lower costs. You can debug, monitor, analyze and tune with minimal intrusion, so you see real execution behavior. And that¿s positively illuminating.

Virtualizing Service Provider Networks with Vyatta
This paper highlights Vyatta's unique ability to virtualize networking functions using Vyatta's secure routing software in service provider environments.

High Availability Messaging Solution Using AXIGEN, Heartbeat and DRBD
This white paper discusses a high-availability messaging solution relying on the AXIGEN Mail Server, Heartbeat and DRBD. Solution architecture and implementation, as well as benefits of using AXIGEN for this setup are all presented in detail.

Understanding the Financial Benefits of Open Source
Will open source pay off? Open source is becoming standard within enterprises, often because of cost savings. Find out how much of a financial impact it can have on your organization. Get this methodology and calculator now, compliments of JBoss.

Embedded Hardware and OS Technology Empower PC-Based Platforms
The modern embedded computer is the jack of all trades appearing in many forms.

Data Management for Real-Time Distributed Systems
This paper provides an overview of the network-centric computing model, data distribution services, and distributed data management. It then describes how the SkyBoard integration and synchronization service, coupled with an implementation of the OMG¿s Data Distribution Service (DDS) standard, can be used to create an efficient data distribution, storage, and retrieval system.

7 Advantages of D2D Backup
For decades, tape has been the backup medium of choice. But, now, disk-to-disk (D2D) backup is gaining in favor. Learn why you should make the move in this whitepaper.

 


Got a HOT tip?   please tell us!
Free weekly newsletter
Enter your email...
Click here for a profile of each sponsor:
PLATINUM SPONSORS
(Become a sponsor)

ADVERTISEMENT
(Advertise here)

Check out the latest Linux powered...

Mobile phones!

MIDs, UMPCs
& tablets

Mobile devices

Other cool
gadgets



BREAKING NEWS

• Asus nettop gets discrete graphics
• Mapping the mobile open source ecosystem
• WiMAX deal "clears" Linux for takeoff
• HMI panels run Linux
• Nokia alludes to Linux phone plans
• Linux music phone boasts stereo mini-jack
• Nokia spins open Linux home automation gateway
• Qseven module sports Atom
• Open source phone gains "fat" distro
• Android phone launches in China
• Microsoft to bake own phone?
• Tux cashes in on paint
• Linux ported to iPhone
• Blockbuster box runs Linux
• Palm Pilot VM for Linux updated


Most popular stories -- past 90 days:
• Open source phone goes mass-market
• Tinest Linux system, yet?
• Garmin Nav devices run Gnome Linux
• ARM9 board boots Debian in 0.69 seconds
• Low-cost laptop runs Linpus Linux
• Linux-friendly Beagle fetches $150
• Mini Linux PC breaks $100 barrier
• Open source camera records geotagged video to SATA HDD
• Open set-top box ships
• First $100 laptop runs Linux


DesktopLinux headlines:
• Linux gains FPS
• Ubuntu tops on desktop, but not servers
• Browser swallows OS
• Tutorial reveals desktop Linux security tips
• Fedora 10 first impressions
• 8,000 TuxTop models and counting
• "Moonlight" ready to shine
• Adobe unleashes 64-bit Flash
• Debian Lenny installer arrives
• Ubuntu announces ARM port


Also visit our sister site:


Sign up for LinuxDevices.com's...

news feed

Home  |  News  |  Articles  |  Polls  |  Forum  |  About  |  Contact
 

Ziff Davis Enterprise Home | Contact Us | Advertise | Link to Us | Reprints | Magazine Subscriptions | Newsletters
Tech RSS Feeds | White Papers | ROI Calculators | Tech Podcasts | Tech Video | VARs | Channel News

Baseline | Careers | Channel Insider | CIO Insight | DesktopLinux | DeviceForge | DevSource | eSeminars |
eWEEK | Enterprise Network Security | LinuxDevices | Linux Watch | Microsoft Watch | Mid-market | Networking | PDF Zone |
Publish | Security IT Hub | Strategic Partner | Web Buyer's Guide | Windows for Devices

Developer Shed | Dev Shed | ASP Free | Dev Articles | Dev Hardware | SEO Chat | Tutorialized | Scripts |
Code Walkers | Web Hosters | Dev Mechanic | Dev Archives | igrep

Use of this site is governed by our Terms of Service and Privacy Policy. Except where otherwise specified, the contents of this site are copyright © 1999-2008 Ziff Davis Enterprise Holdings Inc. All Rights Reserved. Reproduction in whole or in part in any form or medium without express written permission of Ziff Davis Enterprise is prohibited. Linux is a registered trademark of Linus Torvalds. All other marks are the property of their respective owners.