Ask, Learn and Innovate
  • HOME
  • About Us
  • Team
  • Video Library
    • Lectures
    • Seminars
  • Resources
    • Conferences
    • Recommended Syllabus >
      • Analog Design
      • Embedded System
      • Digital Design
      • MEMS
      • CAD Courses
    • Design & Testing >
      • Design Flow
      • CAD Tools
      • Fabrication
      • Design tools & Testing facilites
    • VLSI Research Centers In Egypt >
      • Graduation projects
      • Postgraduate Theses
    • VLSI Business >
      • VLSI Companies in Egypt
      • Embedded SystemsCompanies in Egypt
      • Incubators
      • Certification
      • Patenting in Egypt
  • Jobs

RTOS

Picture








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

session 6
Rate Monotonic Scheduling

session 8
Time and Memory Management

session 10
Design Notes

session 12
FreeRtos: Creating New Project, Files

​session 14
FreeRtos: Task Control

​SESSION 16
FreeRtos: Kernel Control

​SESSION 18
FreeRtos: Semaphores

​SESSION 20
FreeRtos: Software Timers