Understand system scheduling and locate rare timing events with no need for project source code and no need to modify the development environment. Produce results to help you understand and troubleshoot scheduling behavior from object code directly for compatible development environments.Learn more »
- Download Webinar: RVS/Deos for Multicore
RapiTaskZero | Zero-footprint event-level scheduling analysis
RapiTaskZero is a scheduling visualization tool that requires no project source code or modification of the development environment being used. To extract task-level scheduling information from a program, RapiTaskZero analyzes branch trace information collected from a compatible target or data collection mechanism.
As part of the RVS toolsuite, it forms part of a software verification solution that also includes tools for structural coverage analysis, worst-case execution time analysis and functional testing.
RapiTaskZero uses two inputs from which to produce task-level scheduling results. The first of these is a branch trace collected while the program under analysis is executed, while the second is a disassembly of the executable. From these, it can understand both the program structure and the events that occurred during the program execution, allowing it to perform task-level scheduling analysis and produce results.
RapiTaskZero extracts information on program execution from a branch trace that must be collected while the program under analysis is executed. This branch trace may be produced by target hardware or collected using a specific data collection mechanism such as a Lauterbach debugger.
For a list of currently supported platforms, see our RapiTaskZero Hardware support.
RapiTaskZero is OS-agnostic so you can keep the same visualization and metrics if you change OS, and you can use RapiTaskZero results as a point of reference to compare operating systems.
Additionally, you can capture and display custom events not related to the operating system (for example ARINC 429 messages) and display them in the trace.
RapiTaskZero is OS-agnostic; as with all Rapita tools the integration with the operating environment needs to be customized. If we can get information about items of interest from the OS we can add ‘user events’ to a RapiTaskZero trace.
As with all RVS tools, RapiTaskZero supports data collection on multicore architectures. To analyze the task-level scheduling behavior of multicore architectures, RapiTaskZero simply needs to know which branches corresponded to which core during program execution. This information can be inferred by providing a combined trace that includes information on the core on which each branch was taken.
RapiTaskZero displays data in two applications, the RVS Project Manager that is shared with all RVS tools, and an application specifically designed to display task scheduling information. You can synchronize the two applications to ensure that you can easily identify specific timing events in your system.
RapiTaskZero 's Invocation Timeline Chart helps you to understand the high-level scheduling behavior of your system at a glance.
RapiTime and RapiTimeZero abstract away from the OS tasking model and only report the execution time of a task as if it were the only thing running on the CPU. If you are interested in the response time of your code, or the interaction between tasks and your OS, you'll need RapiTask or RapiTaskZero.
As RapiTaskZero analyzes object code directly to produce results, it supports any language that targets machine code.
RVS tools are designed to handle very large code bases. Because of the efficient algorithms used by RVS tools, there is no fundamental limitation to the number of lines of code that RVS can process, and our RVS tools have been used on projects with millions of lines of code.
We offer both “Node-locked” and “Floating” licenses, and a license server to support use of our tools in your specific development environment. Floating licenses follow the “Enterprise” model, meaning that you can use our tools across geographical boundaries and different projects and users.
For more information on our licensing models, see our RVS licensing FAQs.
All RVS licenses include access to our dedicated in-house support team, who will work with you to provide a rapid fix to your issue. This is a critical part of our vision. During 2016, we responded to 97% of new support requests within one working day, closed 56% of these within 3 working days and 91% within 20 working days. We also inform our customers of known issues via our website and email.
We provide an extensive set of RVS documentation with each of our products, and offer training courses guiding you through the most effective use of RVS tools. All our users can benefit from privileged access to our website, which includes downloads for new product releases.
Zero-footprint RVS tools require that a branch trace is collected during program execution. Branch traces can be automatically generated by compatible targets or can be collected while the program operates using external devices. To interface with development environment, a Platform Support Package is needed.
Here are some examples of PSPs that we've prepared:
- No OS on x86 in QEMU
- No OS on ZCU102 with Lauterbach® TRACE32® debugger
- FreeRTOS on ARM M3 in QEMU
- FreeRTOS on R-Car Salvator-X with PARTNER-Jet2 debugger
- FreeRTOS on ZCU102 with Lauterbach TRACE32 debugger
- RV850 RTOS on RT850G4M with Lauterbach TRACE32 debugger
- eMCOS on R-Car Salvator-X with PARTNER-Jet2 debugger
For more information, and to see if we can add support for your development environment, contact email@example.com.