Introduction to Real-Time Operating Systems
|
|
|
| |
|
|
Course Highlights:
This course introduces the principles shared by many real-time operating systems, and their use in the development
of embedded multitasking application software.
The course begins with the fundamental elements of real-time multitasking embedded application software design
and development. Processor and operating system concepts relevant to multitasking systems are examined, with
focus on preemptive task scheduling, intertask communication and synchronization.
The course continues with a detailed survey of popular operating system kernel services, giving many application
examples. Topics include timer services, dynamic memory allocation schemes, network communication
programming interfaces and device driver supervisors. Multitasking code development is discussed and example
programs are reviewed and debugged. Practical experience is gained during student work exercises.
The faculty for this course has extensive experience with a number of major real-time operating systems (RTOSs),
including VRTX, pSOS, VxWorks, OSEK / VDX, Nucleus, OSE and others *. Instructors can provide in-depth insight into
the specific workings of these RTOSs during the course, if it is of particular interest.
Objective of the course
The primary goal of this course is to give the participant the skills necessary to develop software for embedded
computer systems using a real-time operating system. This is a very practical, results-oriented course that will
provide knowledge and skills that can be applied immediately.
Who Should Attend:
This course is intended for practicing embedded systems software development engineers, software system
architects, project managers and technical consultants who are responsible for designing and implementing the
software for real-time and embedded computer systems.
Course participants are expected to be knowledgeable in the C programming language.
This is a course for engineers in industry with less than 3 years of experience with real-time operating systems. [For
those with more experience, we recommend the advanced course "Architectural Design of Real-Time Software" .]
Course Outline:
RTOS Basics - Multitasking
Embedded / Real-Time Systems: Definitions and Issues
Application Software: Tasks and Priority-Based Preemptive Scheduling
Criteria for Decomposition into Tasks
Exercise: Multitasking
Correctness Issues for Embedded / Real-Time Software
RTOS Basics - Communicating between Tasks
Intertask Communication and Synchronization Overview
Messages and Message Queues
Exercise: Intertask Communication via Message Queues
Semaphores: Binary and Counting Semaphores
Exercise: Intertask Synchronization via Semaphore
Dynamic Memory Allocation: Fragmentation Issues
Additional RTOS Kernel Topics
RTOS Timers: Relative and Absolute Timing
Priority Inversion
Mutexes: Priority Inheritance and Priority Ceiling
Exercise: Priority Inversion
Asynchronous Signals
Exercise: Intertask Communication Mechanisms
RTOS Topics Beyond the Kernel
Network Communication Programming: Sockets Interface
Device I/O Supervisor
Application Software: Device Drivers
Application Software: Interrupt Service Routines
Exercise: Interrupt Service Routines
Operating System Configuration
Development Environment: Classes of Debuggers
Final Examination.
INSTRUCTOR: Dr. David Kalinsky
Dr David Kalinsky has more than thirty years of experience in the design and construction of real-time and embedded
computer systems software. He is a popular lecturer and seminar leader on technologies for embedded software
development, appearing before audiences of professional engineers in North America, Europe and Israel. David
regularly presents classes at the Embedded Systems Conferences on topics such as "Architectural Design of Device
Drivers" and "Principles of High Availability Embedded Systems Design".
He has built and managed high-tech training programs on aspects of software engineering for the development of
real-time and embedded systems for a number of Silicon Valley companies. He has also been involved in the design
of many embedded medical and aerospace systems. In addition, he has in the past developed and taught training
courses on a number of major real-time operating systems (RTOSs), including VRTX, pSOS, VxWorks, OSEK / VDX,
Nucleus, OSE and others. With his broad experience, he has trained thousands of embedded systems software
engineers and architectural designers throughout the world.
|
We are a professional organisation providing training services to companies. We offer a comprehensive range of training courses, workshops and seminars covering every aspects relating to engineering.
We provide various training programs that meet the immediate and future needs of engineers. The training is organised through seminar style, hands-on workshop, project-based tutorial or a mixture to bring the maximum learning benefits to the enginners. |
|
We have a quality pool of leading authorities, worldwide experts and fully trained up professionals who are constantly striving to uncover the pitfalls and best practices of modern technology development. |
 |
|