Course Purpose

The purpose of this course is to equip students with the foundational knowledge and practical skills required to design, implement, and debug software for resource-constrained embedded systems and modern mobile operating systems (Android/iOS). Students will explore the intersection of hardware and software, learning to program microcontrollers and sensors in bare-metal and RTOS environments, while also developing applications for mobile platforms that interface with embedded peripherals via Bluetooth, Wi-Fi, and cloud services. Emphasis is placed on performance optimization, real-time constraints, power management, memory efficiency, and secure inter-process communication.

 

 

Course Learning Outcomes

By the end of this course, you should be able to:

  1. ELO 1: Explain the fundamental concepts of embedded systems and mobile operating systems.

  2. ELO 2: Describe the architectures and components of embedded systems and mobile operating systems.

  3. ELO 3: Analyze design methodologies, system constraints, and trade-offs in embedded systems.

  4. ELO 4: Apply security techniques to mitigate threats in embedded and mobile systems.

  5. ELO 5: Apply security techniques to mitigate threats in embedded and mobile systems.

 

Course Content

This course, Embedded Systems and Mobile OS Programming, provides an in-depth understanding of the principles, architectures, and design methodologies underlying modern embedded systems and mobile operating systems. It explores key topics such as embedded system types and characteristics, system architecture, design processes, constraints and trade-offs, as well as mobile operating systems including Android and iOS development frameworks.

Through a combination of theoretical foundations and hands-on practical activities, learners will develop the skills required to design, develop, and analyze embedded systems and mobile applications. The course also addresses critical aspects of system security, enabling learners to evaluate and mitigate potential threats in embedded and mobile environments.

By the end of the course, students will be equipped with the competencies needed to build efficient, reliable, and secure embedded and mobile solutions, preparing them for careers in embedded systems engineering, mobile application development, and related fields.