This course will explore the fundations of modern Real-time operating systems from the programmer's perspective. Topics include structure of real-time embedded systems, interrupts, concurrent task synchronization and communication, inter-process interface and multitasking, sharing resources, schedulability and reliability. The course will provide a particular emphasis on predictable scheduling algorithms and provide the basic methodologies for designing predictable computing systems useful in supporting time critical IoT systems. The course also discuss popular open-source FreRTOS to identify the benefits and weaknesses in deciding whether or not to adopt more traditional, less powerful, techniques for a project.
The course teaches theoretical foundations of analog circuit design through immersion in best practices in circuit design, analysis, and simulation. Topics include diodes, rectifiers, and power supplies, transistors, special electronic devices and applications, single-stage and multistage amplifiers, differential and tuned Amplifiers, feedback amplifiers, and oscillators.