This book explains how to
program for the OSEK/VDX open
standard for embedded computer control systems. It is
organized to address independently each of the three
OSEK/VDX standards — operating system (OS),
communication (COM), and
network management (NM). Readers
can learn about the standard in its entirety or refer to
the sections relevant to the components of the standard
they are implementing. A fourth section explains
programming input and output (I/O), which was not
explicitly covered by the standard. (OSEK/VDX addresses I/O
by encouraging each company to develop a standard for
maximum portability within its organization.)
Use the OSEK/VDX open standard to achieve efficiencies
in programming your communications and control systems.
This tutorial presents each element of the standard -
operating system (OS), communication (COM), and network
management (NM) - independently so you can refer to the
sections pertinent to your project. The presentation
features an example application that demonstrates all
aspects of the API without focusing on the standard's
automotive origins.
Developing an application using OSEK/VDX used to mean
wading through 500 pages of official standards
documentation to discover what the system did, followed by
a period of experimentation to discover how it could best
be used. Joe Lemieux has set out change all that, writing a
book designed for application developers. Progressively
introducing all the major concepts of the operating system,
communications module and network management facilities
through the book, the reader learns about the facilities
available and, most importantly, how they can be used in
the real world. An example program based on a card game
illustrates each new feature or service as it is explained
without the reader requiring specialist knowledge of
particular automotive applications. With plenty of examples
and exercises,this book provides an accessible entry in to
the world of OSEK/VDX.
Contents
Foreward
Preface
Introduction
Part 1 Operating System
- Chapter 1
Implementation Startup
- System Boot
- Main Module
- OSEK/VDX Implementation Language
- Example Program
- Exercises
- Summary
- Chapter 2
Starting and Ending
- Application Mode
- Startup
- Shutdown
- Example Program
- Exercises
- Summary
- Chapter 3
Development Support
- Error Handling
- Debugging Hook Routines
- Example Program
- Exercise
- Summary
- Task Model
- Task Activation and Termination
- Other Task Services
- Scheduling
- Example Program
- Exercises
- Summary
- Counters
- Using Alarms
- Other Alarm Services
- Example Program
- Exercises
- Summary
- Events Defined
- Managing Events
- Other Event Services
- Example Program
- Exercises
- Summary
- Priority Inversion and Deadlock
- Priority Ceiling Protocol
- Managing Resources
- Example Program
- Exercises
- Summary
- Types of Interrupts
- Interrupt Services
- Startup Operation
- Example Program
- Summary
- Chapter 9
Interprocess Communication
- Communication Model
- Notification
- Communication Services
- Example Program
- Exercises
- Summary
Part 2  Communication
- Chapter 10
 Communication
- Communication Model
- Message Attributes
- Transmission Modes
- Message Addressing and Length
- Deadline Monitoring
- Notification Mechanisms
- Conformance Classes
- Example Program
- Summary
- Chapter 11
 Internal Communication
- Internal Communication Overview
- COM Startup and Shutdown
- Unqueued Messages (CCCA)
- Queued Messages (CCCB)
- Example Program
- Exercises
- Summary
- Chapter 12
 Basic External Communication
- CAN Overview
- Unacknowledged Unsegmented Data Transfer
- Example Program
- Exercises
- Summary
- Chapter 13
 Advanced External Communication
- Unacknowledged Segmented Data Transfer (CCC2)
- Dynamic Address Messages
- Dynamic Length Messages
- Example Program
- Modules
- Exercises
- Summary
Part 3 Network Management
- Chapter 14
Network Management Overview
- Network Management Components
- Summary
- Chapter 15
Direct Network Management
- Direct Network Management Concept
- Status Monitoring
- Configuration Management
- Network Management Protocol Data Unit
- Sleep
- Example Program
- Exercises
- Summary
- Chapter 16
 Indirect Network Management
- Indirect NM Concept
- Configuration Management
- Message Monitoring
- Network Startup
- Extended Configuration
- Limp Home
- Sleep
- Example Program
- Exercises
- Summary
Appendix A Choosing an Implementation
- Certification
- Conformance
- GUI Configuration
- Processor and Driver Support
- Network Protocols
- Development Environment
- Benchmarks
- Object Limitations
- Priority Limitations
- Network Management
Appendix B Example Program Build Structure
- Directory Structure
- Porting to Different Implementations
- Axiom CME 555 Setup
Appendix C OSEK/VDX API Reference
Index
What's on the CD-ROM?