Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

DSDP/TML/TmlProposedArchitecture

< DSDP‎ | TML

Goals of the TmL Project

This project will bring together various existing sub projects, optimizing their use for the embedded mobile Linux development.

The unique feature of this project will to develop an end-to-end capable IDE including a device simulator to test applications.

The list of desired features includes:

  • Framework for embedded Linux development
    • Capability to run native Applications on an x86 based simulator
    • Deploy applications on a native device
  • Capable to have Profiles for different devices
    • A profile consists of one or more of the following:
      • Cross compiler
      • Header files and libraries
      • UI Skins
      • Emulator plug-ins
    • Profiles can be downloaded/updated
  • Integrate with other projects
    • Device Debugging
    • MTJ for Java development
    • C/C++ Development
    • Native Application Builder


Identified technologies

One of the biggest challenges of the TmL project will be the development of the device emulator.

The emulator is based on the Usermode Linux (UML) extension (UML), which allows to run a complete sandboxed Linux environment on top of a host Linux development platform. (A corresponding solution for Windows based development hosts is still needed)

One of the tasks of the project will be to develop virtual "device drivers" which run in the UML sandbox and present the features of a "real phone device" to the application. Depending on the type of device, the drivers can completely emulate the functionality (e.g. simulate "fun lights"), connect to the Eclipse environment to control the device (e.g. keypad) or map to a real hardware on the hosted device (e.g. virtual phone camera mapped to USB camera)

Those drivers include support for:

  • UI output,
    • multiple displays
    • 3D accelerators
  • Keypad
  • Touchpad
  • Sound, e.g. Midi synthesizer for ringtones
  • Camera
    • USB host connection

Copyright © Eclipse Foundation, Inc. All Rights Reserved.