VxWorks Application Debugging Use Cases
Provides a solid foundation in the use of Wind River® Workbench debugging tools in a variety of situations.
Course Description
The VxWorks® Application Debugging Use Cases course provides development and test engineers with a solid foundation in the use of Wind River® Workbench debugging tools in a variety of situations.
Course Results
After this course, participants will be able to perform the following:
- Identify when VxWorks has generated an exception
- Use the information VxWorks produces as a result of an exception to identify the location and instruction that caused the exception
- Identify a deadlock condition using System Viewer
- Use VxWorks facilities to identify the location of a race condition
- Identify the location and cause of a buffer or stack overflow
- Use System Viewer to track down the cause of a bug in an interrupt service routine
- Use the System Mode debug feature in Workbench to trace a problem ISR and fix the bug
- Use System Viewer to debug a problem that causes a warm boot of VxWorks
- Add data logging code to an application to be used in conjunction with the System Viewer debugging tool.
Products Supported
- Wind River VxWorks 6.9
- Wind River Workbench 3.3
- Wind River Simics 4.6
Who Should Attend
- Application developers and test engineers faced with diagnosing the cause of an exception
- Application developers and test engineers needing a way to identify and correct deadlock conditions in VxWorks
- Engineers, application developers, and test engineers needing a method to diagnose the causes of warm-start events in VxWorks
- Engineers needing information on how to debug an ISR using Workbench tools
- Application developers requiring highly customized System Viewer data collection schemes
Course Format
- One-day set of hands-on use cases covering six topics, with technical assistance and individual guidance available from an expert instructor
- Use of VxWorks 6.9, Workbench 3.3, and Simics 4.6 to gain experience with the topics presented
Syllabus
Use Cases
Day 1
Debugging an Application Generating an Exception
- Understand how VxWorks reports exceptions
- Interpret the exception message and use it effectively in debugging
Discovering and Fixing a Deadlock Condition
- Use System Viewer to identify and locate the cause of a deadlock condition
- Identify the resources involved in a deadlock without seeing the source code
- Fix the deadlock condition
Debugging a Memory Scribbler
- Use an exception message to identify a race condition
- Use the exception message to locate the problem instruction
- Examine the source code associated with the race condition and provide a fix
Debugging an Interrupt Service Routine
- Build and boot a defective application
- Identify the location and context under which the defect manifests
- Perform system-mode debugging to determine where the algorithm can be modified to eliminate the problem
Using System Viewer in Postmortem Mode to Detect an MMU Violation
- Configure a VxWorks image to set aside memory not to be initialized on a warm start
- Configure System Viewer to acknowledge and place data into the configured memory
- Examine the System Viewer log obtained from the configured memory and determine the location of the offending instruction
Using System Viewer Programmatically
- Configure and build a VxWorks image that supports System Viewer data collection utilities
- Write a custom application that makes use of System Viewer instrumentation
- Run the application to collect and upload data for examination
Prerequisites
Prerequisite Courses
Prerequisite Skills
- Two to three years of C programming experience
- Solid understanding of VxWorks and the VxWorks kernel programming environment
- Proficiency in the use of the Workbench tool suite, especially Workbench projects and target servers
- Functional knowledge of UNIX/Linux
Related Courses
COURSE DETAILS SUMMARY
- Duration: 1 Days
- Course Information: View
- Format: Hands-on use-case sessions with support from an instructor
- Type: Instructor-led