Device Software Development Platform Subprojects
Actual work on the DSDP top-level project is done in subprojects:Subprojects
- Device Debugging (DD) - Device Debugging creates new frameworks and extensions to the existing platform debug framework to support the three phases of device software development: hardware bring-up, platform software development, and application software development. Today's platform debug API's and views are geared towards developing a single application on a fast workstation with a simple debug model (processor, thread, stack frame). Since the debug scenarios in device software are more complex and varied, the Device Debugging project will build enhanced debug models, API's, and views to provide greater visibility into and control over device software targets.
- Embedded Rich Client Platform (eRCP) - The goal of this project is to extend the Eclipse Rich Client Platform (RCP) to embedded devices. eRCP is largely a set of components which are subsets of RCP components. It essentially enables the same application model used on desktop machines to be used on devices.
- Mobile Tools for the Java Platform (MTJ) - The goal of the Mobile Tools for Java project is to extend existing Eclipse frameworks to support mobile device Java application development, including a device and emulator framework, a deployment framework, generic build processes for mobile application development, mobile device debugging, application creation wizards, UI design tools, localization, optimization, and security.
- Native Application Builder (NAB) - The NAB (eWideStudio) project was born out of the WideStudio/MWT open source project. WideStudio/MWT is a general tool and run-time library for building GUI applications on multiple host and embedded platforms, such as Windows, Linux, MacOS, and several embedded real-time operating systems. The WideStudio portion provides the GUI application builder, and MWT (Multiplatform Widget Toolkit) provides the operating system specific implementations. The goal of WideStudio/MWT is to allow the user to write a GUI application once and build it for many platforms without changing the code. The NAB project was created to bring into Eclipse the portions of the WideStudio tool that are focused on building embedded GUI’s in C++.
- Real-Time Software Components (RTSC) - The Real-Time Software Components (RTSC) project provides foundational tools and low-level runtime content to enable component-based development using the C language targeting all embedded platforms. While other component technologies exist for embedded systems, RTSC is unique in that it scales down to highly resource constrained embedded systems including DSPs and 16-bit micro-controllers.
- Target Management (TM) - In device software development, the end product can contain multiple targets. Each target can contain multiple processors, and each processor can contain multiple cores. The application software running on a core can contain multiple processes and threads. Each of the entities can often be independently controlled. Targets can be located in a developer's office, in a board lab, or even deployed in the field. A single target may have multiple control channels, such as local serial or JTAG connections, or remote socket connections. The Target Management project creates data models and frameworks to configure and manage these systems, their connections, and their services. Target Management supports downloading software and data, launching single or multiple configurations, starting and stopping cores, debugging processes and threads, querying target information, etc.
- Tools for Mobile Linux (TmL) - The Tools for mobile Linux (TmL) project has been created to address the gap where existing Eclipse projects do not entirely satisfy the needs of developers of native C/C++ applications for mobile devices. Even though the project intends to eventually address the complete application development cycle, the initial scope comprises support to multiple build targets, constrution of a device emulator framework, and a simulated end-to-end environment to test enterprise applications.

