2fd39ac8-eb73-4c44-a8da-f434edfcbbef

Course Information

  • Course Title: Embedded and Real Time Operating Systems (EC352)

  • Instructor: Dr. Ahna Sharan

  • Email: ahna@nitandhra.ac.in

  • Prerequisite: Microcontrollers

Course Outcomes

By the end of the course, students will be able to:

  • CO1: Identify applications, design metrics, and challenges of embedded systems.

  • CO2: Design, implement, and test an embedded system.

  • CO3: Write programs for Arduino-based embedded systems.

  • CO4: Describe various components and operating systems used in real-time embedded systems.

  • CO5: Build application programs using Keil CMSIS RTOS RTX5.

Syllabus Overview

Embedded Systems

  • Introduction and Overview

  • Comparison with General Computing Systems

  • History and Classification

  • Major Application Areas

  • Characteristics and Design Challenges

Embedded System Development

  • General Purpose and Domain Specific Processors

  • Memory Types: ROM, RAM, Communication Interfaces

  • Polling vs. Interrupts

Real-Time Operating Systems (RTOS)

  • RTOS Architecture

  • Task Scheduling Algorithms

  • Memory Management and Interprocess Communication

Keil CMSIS RTOS RTX5

  • Introduction to Keil MDK-ARM

  • Creating and Implementing RTX5 Projects

Key Concepts in Embedded Systems

Definition

  • An embedded system consists of embedded software and hardware that performs dedicated functions within larger systems.

Examples of Embedded Systems

  • Alarm clocks, coffee makers, microwaves, smart TVs, and home security systems.

Evolution of Embedded Systems

  • Early development around vacuum tubes and transistors.

  • Significant milestones include the Apollo Guidance Computer (AGC), which controlled lunar expeditions.

  • Major advancements in the 1970s and 80s led to the proliferation of microcontrollers and more integrated systems.

Embedded Systems vs. General Computing Systems

General Purpose Computing

  • Versatile and adaptable systems used for a variety of applications (e.g., desktops, laptops).

Embedded Computing

  • Specialized systems designed for specific tasks with strict constraints.

  • Examples include microwave ovens and washing machines.

Classification of Embedded Systems

  • By Generation: First through Fourth generations based on technological advancements.

  • By Behavior: Deterministic (e.g., airbag systems) vs. Non-Deterministic systems (e.g., gaming consoles).

  • By Application Scale: Small-scale, medium-scale, and sophisticated embedded systems based on power and complexity.

Characteristics of Embedded Systems

  • Single-functioned, tightly constrained, reactive, and real-time capabilities.

Major Applications Areas

  • Consumer electronics, household appliances, automotive, healthcare, and IoT systems.

Purpose of Embedded Systems

  • Data collection, communication, processing, monitoring, control, and providing user interfaces.