Enea, the world leader in advanced device software, today announced a new Eclipse-based Integrated Development Environment for the OSE(TM) real-time operating system. Utilizing the latest Eclipse (version 3.1.2) and C/C++ Development Toolkit (CDT version 3.1.1) technology, Optima(TM) provides advanced system level browsing, debugging, profiling and analysis tools that greatly simplify the debugging and optimization of large-scale distributed systems spanning multiple processors and operating systems.
“Optima provides a flexible, extensible platform with advanced system-level debug capabilities that greatly simplify the development, deployment and maintenance of distributed systems,” said Mike Christofferson, director of product management at Enea. “Optima also gives developers full access to the Eclipse open community, enabling them to quickly configure optimized, application-specific development platforms that combine Optima with best-of-breed tools from multiple suppliers.”
The Optima CDT utilizes the Eclipse workbench and workspace concept for building images and managing projects, and provides plug-ins for most software configuration management tools. The CDT includes a C/C++ editor with language-aware highlighting and code completion, a C/C++ debugger, a C/C++ launcher, a parser and indexer, a search engine, content assist, and a Makefile editor and builder.
Optima takes full advantage of the Eclipse framework plug-in architecture, offering several powerful OSE-aware plug-ins that help developers solve complex system-level problems in their application code. These plug-ins include a system browser for viewing and manipulating OSE system objects, a pool profiler for browsing and analyzing system memory utilization, a run-mode debugger with a program launcher (loader), and a help viewer for viewing OSE documents and references. All Optima plug-ins support fully distributed debugging, which enables any target CPU in a connected network to be accessed without the need for a direct connection.
Optima’s system browser provides a high-level object view of target systems that helps developers isolate problems that are not easily discoverable using standard source code debug tools. The system browser provides a hierarchical view of OSE systems that enables system integrators to debug complete distributed systems without having to drill down to the application source code and master every bit and byte. Key features include:
- Information for all important OSE objects, including processes, blocks, semaphores, message queues, and signals in process/message queues.
- A filtered, sortable, flat table view of processes or blocks on the target system. For example, users can filter and sort on stack size.
- Start, stop, and kill for blocks and processes.
- Loading and unloading of OSE programs.
- A complete system level view with simultaneous attachments to multiple targets.
- A connection to the Optima run-mode debugger that enables code windows to be brought up for debug on selected processes in the system browser list.
Optima’s graphical pool profiler, which comes with the system browser, helps developers understand system memory resource consumption, optimize memory pool size, and find/isolate system memory leaks (to a process). The pool profiler provides detailed information and statistics about OSE signal memory usage and fragmentation in an easy-to-read graphical format. It also provides histograms for buffer/signal size, error detection for overwritten buffers, and filtered/sorted lists of individual buffers.
Optima’s run-mode debugger enables programmers to access and control a single system process without affecting or stopping the rest of the system. This is extremely valuable for large-scale applications in which software objects and states have complex dependencies that cause failures to appear only under certain circumstances. In these complex applications, stopping the entire system and single stepping through massive code sections may not reveal the defect causing the failure.
With Optima’s run-mode debugger, breakpoints are “process aware”, meaning that code shared by multiple processes may have a breakpoint selected for just one process. The run-mode debugger provides a flexible scheme for breakpoint management, allowing a variety of conditions to trigger a breakpoint, and a variety of actions to ensue upon hitting a breakpoint. The run-mode debugger is also “OSE aware”, providing information about the current OSE state as an adjunct to code debug (like process lists and states).
Through its Java-based Eclipse framework, Optima provides true cross platform support for a variety of host development environments, including Windows, Linux, and Solaris.
Optima supports all OSE targets, including PowerPC, ARM/Xscale, MIPS32, and the OSE Soft Environment simulator.
Base pricing for Optima starts at $ 3,000 for a single-user subscription.
Enea (Stockholm: ENEA.ST) is the leading supplier of real-time operating systems, middleware, development tools, database technology and professional services for high-availability distributed multiprocessing applications such as telecommunications infrastructure, mobile devices, medical instrumentation, and automobile control/infotainment. Enea’s flagship operating system, OSE is deployed in approximately half of the world’s 3G mobile phones and base stations. Enea has over 500 employees and is listed on the Stockholm Stock Exchange.
OSE and Optima are registered trademarks of Enea AB or its subsidiaries.