Instructor: Mostafa Ahmed Saleh Senior Student at Faculty of Engineering, Alexandria University Date: August, 22 2016 Personal Website: Here
Biography
Eng. Mostafa Ahmed Saleh is a senior student at the Faculty of Engineering, Alexandria University, Department of Communications and Electronics.
Course Info.
This is a Real time operating system (RTOS) course, the course focuses on RTOS concepts, features, and APIs. It does not focus much on real time systems design. The first part of the course focuses on RTOS generally, and explains its basic concepts, it consists of 10 sessions. The second part focuses on a certain RTOS which is FreeRTOS, it consists of 12 sessions and 9 labs using TIVA C within them.
Course prerequisites
C programming
Microcontroller interfacing
OS is a plus
Course Topics
Introduction
Survey on Software Architectures
Real time Concepts
Race Conditions
Synchronization and Mutual Exclusion
RMS
Inter-task Communication
Timers and Memory Management
ISR and Events
Note about design
FreeRTOS: Intro
FreeRTOS: Files and Configuration
FreeRTOS: Tasks (Lab0)
FreeRTOS: Task Control (Lab1)
FreeRTOS: Task utilities (Lab2)
FreeRTOS: Kernel Control (Lab3)
FreeRTOS: Queues (Lab4)
FreeRTOS: Semaphores (Lab5)
FreeRTOS: Mutexes (Lab6)
FreeRTOS: S/W timers (Lab 7)
FreeRTOS: Events (Lab 8)
FreeRTOS: Arduino (LAB9)
Course Textbook
An embedded software primer - David E. Simon (main)
MicroC/OS II the real time kernel - Jean J. Labrosse
Embedded Microcomputer Systems Real Time Interfacing - Jonathan W. Valvano
Embedded Systems: Architecture, Programming and Design - Raj Kamal
session 1 introduction
session 3 Tasks and Scheduling
session 5 Semaphores, Mutexes, and Synchronization
session 7 Inter-Task communication
session 9 Events and ISR
session 11 FreeRtos: Introduction
session 13 FreeRtos: Tasks
SESSION 15 FreeRtos: Task Utilities
SESSION 17 FreeRtos: Queues
SESSION 19 FreeRtos: Mutexes
SESSION 21 FreeRtos: Events
session 2 Software architectures
session 4 Shared Data Problem and Mutual Exclusion