Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
RTOS_K - Version: 1 - 05/05/2017 Introduction to Real-Time Operating Systems 3 days Course Course Description 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, micro-C/OS and others *. Instructors can provide in-depth insight into the specific workings of these RTOSs during the course, if it is of particular interest. Intended Audience 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. This is a course for engineers in industry with less than 3 years of experience with real-time operating systems. Prerequisites • Course participants are expected to be knowledgeable in the C programming language. Objectives • 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. Reading Topics • RTOS Basics - Communicating between Tasks o Intertask Communication and Synchronization Overview o Messages and Message Queues o Exercise: Intertask Communication via Message Queues o Semaphores: Binary and Counting Semaphores o Exercise: Intertask Synchronization via Semaphore o Priority Inversion o Mutexes: Priority Inheritance and Priority Ceiling o Exercise: Priority Inversion • Additional RTOS Kernel Topics o Dynamic Memory Allocation: Fragmentation Issues o RTOS Timers: Relative and Absolute Timing o Asynchronous Signals o Device I/O Supervisor • RTOS Topics Beyond the Kernel o Network Communication Programming: Sockets Interface o Application Software: Device Drivers o Application Software: Interrupt Service Routines o Exercise: Interrupt Service Routines o Operating System Configuration o Development Environment: Classes of Debuggers • Optional Topics o Picking an RTOS for Your Project o RTOS Trends in the Next 5 Years Follow on courses • Architectural Design of Real-Time Software