|
This course examines the engineering activities in the high-level design of multi-tasking and distributed embedded systems software to be developed using the OSE real-time operating system.
Starting with a brief review of some fundamental issues in real-time multi-tasking embedded application software design and development, and briefly surveys several modern techniques for real-time and embedded software requirement specification. It then quickly moves to design issues of structuring a software system that must execute within strict deadline and resource limits. The main focus is on multiprocessing and timing behaviors, rather than object orientation
Inter-process communication is examined in detail, with the emphasis on signals, and also covers mutual exclusion mechanisms in OSE including semaphores and priority ceiling mutexes. The next portion of the class deals with the evaluation of architectural design quality and timing performance of a multitasking embedded software design. The class may (optionally) proceed to a high-level discussion of the design of large systems including their decomposition into subsystems and distributed multiprocessing. It concludes with an introduction to the design of high-availability systems.
This course is not a general course about software design theory or a traditional course about object oriented design. Instead, it is strongly focused on the design of deeply embedded, time-constrained, resource-constrained multitasking software that will run under the control of the OSE real-time operating system in single-processor or distributed multiprocessor environments.
|
Objectives The primary objective of this course is to provide the participant with the skills needed to do high-level design of software for real-time and embedded systems using the OSE operating system in single-processor or distributed multiprocessor environments. This is a very practical, results-oriented course, which will provide knowledge and skills that can be applied immediately.
Who should attend? Real-time software system architects, project managers, and technical consultants working with designing, structuring and implementing software for real-time and embedded systems utilizing the OSE real-time operating system.
Previous Knowledge Very familiar with the OSE real-time operating system, say at least 2 years of practical experience using OSE. This knowledge may also be gained by attending an introductory course such as "OSE Basics", "OSE Advanced" or "OSE Extended".
Course Material Students are provided with a complete course notebook including all slides on all topics presented in the course. In addition, students will receive a set of in-depth white papers on specific design topics such as the use and misuse of semaphores and mutexes, direct vs. indirect message passing, and device driver design.
Recommended following courses OSE Custom Board Suppor Packages
|