LynxInsure++ is a suite of integrated analysis and visualization tools designed to maximize quality and performance and reduce the cost of developing and testing LynuxWorks™ LynxOS® applications.
Each of the three auto-instrumenting products in the suite—LynxInsure++, TCA (Total Coverage Analysis) and Inuse—provide a unique value in a particular area of quality improvement. Used together, they enable developers to rapidly define a comprehensive quality improvement process.
More importantly, the LynxInsure++ suite requires no changes to source code and causes no disruption of normal system operations.
The LynxInsure++ suite provides developers with detailed information to enable a deeper understanding of the operation of an application. This knowledge can then be applied to improving product quality while reducing long- and short-term development and maintenance costs. The detailed information delivered by the LynxInsure++ suite covers four key areas of software development:
Within the suite, the LynxInsure++ runtime error detection module verifies memory references and program implementation—including the proper use of the API and proper programming practices such as valid pointer operations and more. Thread-aware and thread-safe, LynxInsure++ detects a wide range of errors in C/C++ applications and threads. Unlike other automated detection tools, LynxInsure++ easily handles the non-linear nature of threaded applications and is particularly effective in finding errors in allocating and freeing dynamic memory. It supports all popular compilers, such as cc, gcc and acc, and is capable of checking third-party libraries and functions, as well as interfaces to modules written in languages other than C.
The TCA coverage analysis module acts as a display summary tool for LynxInsure++, providing displays of code execution and coverage on a line-by-line or a logical block basis.
Finally, the graphic Inuse dynamic memory visualization module provides animated information on memory allocation, including:
Performance analysis can be a daunting task when designing sophisticated applications. The LynxInsure++ suite optimizes product performance by providing visibility into the time-varied interactions between different system components.
The LynxInsure++ module possesses built-in detailed knowledge about correct and incorrect programming practices and the correct means of utilizing APIs. For example, incorrect uses of programming abstractions such as pointers are clearly displayed, as are incidents of memory corruption. This knowledge can be leveraged to reveal and correct conditions that could potentially cause normally efficient execution threads to de-synchronize during error handling.
The Inuse module, meanwhile, automatically instruments applications to log and reveal memory allocation patterns. As a result, bottlenecks to application efficiency are easily determined.
At the same time, the TCA module's display of program execution provides developers with a concrete view of areas that run and their frequency.
Generally, it is up to developers to write effective tests for their applications. But ensuring that the tests are testing what they should is not always easy. The LynxInsure++ suite provides valuable insights into the effectiveness of application testing processes by correlating testing procedures to actual program coverage and performance.
Integration in existing test harnesses is fast and easy, due to the auto-instrumenting nature of the LynxInsure++ suite. This makes it simple to enhance the effectiveness of existing test suites through a process of iterative improvement—i.e.: run a test, view its effectiveness, improve the test, run it again, etc.—designed to optimize both application quality and performance.
![]() |
Copyright © LynuxWorks™, Inc. All rights reserved. Reproduction in whole or in part in any form or medium without express written permission of LynuxWorks is prohibited. | 20 years of embedded excellence |