Course Description
The VxWorks 6.x and Workbench Fundamentals training workshop provides engineers with a fast, cost-effective way to acquire the knowledge necessary to develop real-time applications with Workbench.
Course Results
After taking this course, students will be able to:
- Design and develop real time applications in kernel and user modes
- Debug, build, and test real-time applications in a target-host development environment with Workbench and VxWorks
Skills and Topics
Building and Configuring a VxWorks Real-time System
- General Purpose Platform Component Overview
- Setting Up a Cross-Development Environment
- Using the Application Development Perspective
- Managing Projects
- Building Applications
Debugging and Analyzing Real-time Applications
- Using Host Shell Interpreters for Interacting with the Target
- Debugging Applications Using the Embedded Debug Perspective
- Using the System Viewer for Analyzing Applications
- Error Detection and Reporting
Using the VxWorks API to Design Real-time Applications
- Real-Time Processes Programming Model Usage
- Multitasking Environment Overview
- Task API Usage
- Synchronization Solutions
- Protecting Shared Resources
- Intertask Communication
- Basic Memory Management
- Exception Handling
- Interrupts
- Timers for Periodic Code Execution
Products Supported
- VxWorks 6.7
- Wind River Workbench 3.1
- Earlier product releases (topics may vary)
Who Should Attend
- Everyone who will receive Workbench and VxWorks 6.x within 60 days
- Developers who work with Workbench and VxWorks
- New project members on teams already using Wind River products
- Senior engineers who want to evaluate VxWorks technology
Prerequisite Skills
- One year of C programming
- Basic understanding of operating systems and debugging techniques
- Functional knowledge of UNIX /Linux
Course Format
- Our four-day instructor-led courses consist of lectures and lab sessions that allow hands-on application of course concepts.
- Students receive personal guidance from expert Wind River instructors.
- Students examine details of the Workbench environment, focusing on the most commonly used areas.
- Specific questions are addressed.
Agenda
Day 1
Getting Started
- Available Tools
- Directory Structure
- Help Resources
- VxWorks Simulator
- Getting Started Lab
Managing Projects in Workbench
- Introduction to VxWorks Projects
- Project Explorer Overview
- Application Projects
- Build Specifications
- Project Management Lab
Using VxWorks Shells
- Host Shell and Shell Interpreters
- Kernel Shell
- Host Shell Lab
Day 2
Debugging
- Debugger
- Configuration
- GUI and Usage Overview (Setting Breakpoints, etc.)
- Kernel-Space and Application-Space Debugging
- Debugger Lab
Using Dynamic printf Event Points
- Using dprintf in the C and cmd Modes
- Using dprintf with RTPs
- Applying dprintf Through Workbench
- dprintf Lab
Real-Time Multitasking
- Task Creation and Deletion
- Other Task APIs (taskDelay(), Task Variables, Task Hooks, etc.)
- Nonexecutable Stack Pages
- NULL Pointer Dereference Detection
- Text Segment Write Protection
- System Tasks
- Real-Time Multitasking Lab
VxWorks Events
- Event Register
- Task Synchronization
- Events Lab
Day 3
Semaphores
- Semaphores and Synchronization
- Mutual Exclusion Semaphores
- Semaphores Lab
Intertask Communication
- Shared Memory
- Message Queues
- Pipes
- Intertask Communications Lab
Memory
- Memory Allocation
- Memory Partitions
- Memory Lab
Real-Time Processes (RTPs)
- RTP Overview
- RTP File Generation
- Starting an Application
- Shared Data Usage
- Shared Library Usage
- Real-Time Processes Lab
Overlapped RTP Virtual Memory
- RTP Virtual Memory Models
- RTP Code Regions
- Configuring VxWorks
- Identifying RTP Code Regions
- Building Absolutely Linked RTPs
- Memory Lab
Day 4
Exceptions, Interrupts, and Timers
- Exceptions
- Using Signals to Recover from Hardware Exceptions/Fatal Errors
- Interrupts
- Interrupt Flow Example
- ISR Stack, ISR Restrictions
- Timers
- Watchdog Interface and Polling
- Auxiliary Clock for Polling at Higher Speed
- Exceptions, Interrupts, and Timers Lab
Error Management
- Error Reporting Framework
- Persistent Memory
- Error Records
- Error Detection and Reporting Configuration
- Error Detection and Reporting Lab
System Viewer
- System Viewer
- System Viewer Configuration and Log Explanation
- Triggering
- User Events
- System Viewer Lab