VxWorks 7 Symmetric Multiprocessing

Buy Now

Course Description

Course Results

Products Supported

Who Should Attend

Course Format

Please see course datasheet for further details here Buy Now

Course Details Summary

  • Duration: 2 Days
  • Course Information: View
  • Format: Lectures and Labs
  • Type: Instructor-led
  • Price/Schedule: View

The VxWorks® 7 Symmetric Multiprocessing course presents several methods to optimize application performance using parallel design techniques. Issues encountered in migrating applications to parallel design are discussed in detail. Specifics of creating and migrating applications to Wind River® VxWorks symmetric multiprocessing (SMP) technology are also addressed.

After taking this course, participants will be able to:

  • Describe the multi-core processor architecture.
  • Distinguish between multi-core and multiprocessing environments.
  • Describe the VxWorks SMP system configuration.
  • Understand and solve pitfalls of serial programming in the SMP environment.
  • Migrate applications from the uniprocessor (UP) to the SMP environment.
  • Analyze concurrency using debug tools.
  • Perform run-time analysis of applications in the UP vs. SMP environment.
  • VxWorks 7
  • Wind River Workbench 4
  • Wind River Simics 4.8
  • Application engineers
  • System integrators and architects

Day 1

Introduction to SMP

  • History of multi-core and multiprocessing
  • Overview of SMP
  • Other multi-core configurations
  • LAB: Getting started

VxWorks SMP Architecture

  • Overview of SMP architecture
  • Cache and cache coherency
  • The sequential memory model
  • Mutual exclusion
  • Spinlocks and deadlocks
  • Memory barriers
  • Development challenges

VxWorks SMP Configuration

  • VxWorks SMP components
  • Software and hardware requirements
  • BSP
  • LAB: VxWorks SMP configuration

VxWorks SMP Programming

  • Spinlocks
  • Read/write semaphores
  • Task CPU affinity
  • Interrupt CPU affinity
  • Atomic operations
  • Memory barriers
  • POSIX thread barriers
  • CPU information and management
  • Uniprocessor incompatibilities
  • LAB: Data synchronization
  • LAB: Core affinity and reservation
  • LAB: Implicit synchronization with message queues
  • LAB: Implicit synchronization with semaphores

Day 2

Debugging and Analysis Tools

  • Multi-core debugging overview
  • Breakpoints
  • Multiple context debugging
  • System viewer and analysis tools
  • Kernel shell debugging
  • LAB: Working with Workbench Debugger

Introduction to Software Parallelism

  • SMP limits
  • Parallel software design
  • Implementing a parallel programming model
  • Threading
  • Parallelism examples
  • Portable parallel programming APIs

Uniprocessor to SMP Migration

  • Migration guidelines
  • The three-step migration plan
    • Step 1: Update to current VxWorks version
    • Step 2: Migrate to SMP API
    • Step 3: Optimize for SMP
  • LAB: Performance measurement

VxWorks SMP Scheduler

  • Overview
  • VxWorks UP scheduler
  • VxWorks SMP
  • VxWorks SMP scheduler

Prerequisite Courses

Prerequisite Skills

  • C programming
  • Functional knowledge of UNIX
  • Basic VxWorks API knowledge
  • Real-time programming basics
  • This two-day expert-led course consists of nine lectures and seven lab sessions.
  • Attendees use VxWorks 7, Workbench 4, and Simics 4.8 to gain experience with the topics presented.
  • Participants receive individual guidance from an expert engineer who has extensive experience with Wind River technologies.
Subscribe to Wind River