Embedded linux with java

Embedded linux with java

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.

  • 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.

  • Part 1: Why Linux?
  • Part 2: Why Java?
  • Part 3: The Synergy of Java and Linux
  • Part 4: Conclusions

  • Virtual system mimics superscalar SoC
  • Real-time JVM rev’d with BeagleBoard support
  • Embedded database tunes up memory management
  • SGI frees up GL-related licensing
  • Oracle buys Sun — may jettison MySQL
  • Embedded database gains replication and distributed…
  • Telephony stack ports to Moblin, Moorestown
  • OODBMS vendor publishes Android benchmarks
  • Six carriers promise LiMo phones in 2009
  • Broadcom joins Linux Foundation, says Linux is cool…
  • Canonical preps Ubuntu for smartphone debut in 2014
  • IcedRobot Android fork seeks to preclude Oracle litigation
  • Webinars explore RTOS-to-Linux driver migration
  • Java, .Net object DB rev’d
  • How SCOPE creates tomorrow’s Linux

Источник

Embedded linux with java

The world of intelligent devices is changing dramatically. The computerized devices around us are getting smarter, they’re increasingly connected and interdependent, and they’re becoming vastly more numerous. And all this is happening at an ever increasing rate.

Blame it on Moore’s Law, but it’s now practical to embed moderately high performance computing and connectivity in just about everything that runs on electricity — whether tethered or mobile. This trend is fueled by powerful and highly integrated system-on-chip processors, coupled with large capacity system and storage memories (both disk and silicon), and empowered by wired and wireless communications interfaces (Ethernet, IrDA, 802.11, BlueTooth).

Another important phenomenon is that as both embedded computing and connectivity proliferate, the intelligence within tomorrow’s devices is becoming less localized. Increasingly, the precise location of the software running on these devices is blurring, and eventually we’re unlikely to actually know where the programs we use are located. Is the application running inside the device? Is it based on some remote server (e.g. a home services gateway)? Is it located at an Internet-based Application Service Provider? A combination of all three?

Call it “distributed intelligence” or “distributed computing”. Call it .NET. Call it the post-PC era. Whatever you call it, one thing’s certain: the era of isolated, autonomous desktop PCs running nothing but localized software is coming to an end. Like the mammoths of the Ice Age.

Welcome to “the post-PC era”

  • The number of smart devices (i.e. products with embedded operating systems inside) will grow exponentially, reaching numbers in the billions.
  • The choice of CPU will be more a matter of cost than technology or architecture.
  • Nearly all devices will have connectivity, whether wired or wireless.
  • Most devices will have the ability to be remotely upgraded or repaired, by downloading new firmware or software.
  • Most devices will have specific rather than general-purpose functionality, so their application software will be defined by their manufacturers (rather than loaded by their users).

  • Part 1: About this Guide
  • Part 2: Embedded Linux+Java — wave of the future?
  • Part 3: Articles & whitepapers on using Java with Embedded Linux
  • Part 4: Java products of interest to Embedded Linux based system developers

  • CG Linux supports multicore MIPS64
  • Intelligent systems outweigh PCs, servers, and…
  • Media-ready SoHo NAS devices run Linux
  • ARM SoC clocks to 2GHz, runs Linux
  • Intel silicon to slash the price of optical links
  • 1GHz SoC touted for single-Watt consumption
  • ST, NXP spin phone chip JV
  • Charge-density wave processor technology touted for…
  • Linux/Android RISC processors add Wi-Fi, IPTV support
  • Samsung spins 512GB solid state disk
  • Home energy gateway platform runs mystery SoC
  • Intel touts progress toward 50Gbps optical link
  • Tutorial: An ARM-based web kiosk system
  • Mini PC includes optical drive, choice of Core CPUs
  • CPU module has FPGA onboard

Источник

Читайте также:  Linux console disk manager
Оцените статью
Adblock
detector