К содержимому
learnspaceYOUR NEXT CHAPTER
ПРОСТРАНСТВО ОБУЧЕНИЯ
ГлавнаяКаталог курсовМоё обучениеCoursera

Знания без границ

Учитесь у лучших университетов и компаний мира.

Открыть Coursera
Интеграция
Пространство университета
Моё пространствоСтраница курса
↵
ЯЛичный кабинетСтудент
© 2026 LearnSpaceКаждый день — возможность узнать больше.Помощь
Real-Time Embedded Systems Theory and Analysis · LearnSpace
Назад в каталог
courseraИнженерия

Real-Time Embedded Systems Theory and Analysis

Курс от University of Colorado Boulder
Продвинутый≈ 62.2 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

This course can also be taken for academic credit as ECEA 5316, part of CU Boulder’s Master of Science in Electrical Engineering degree. This course provides an in-depth and full mathematical derivation and review of models for scheduling policies and feasibility determination by hand and with rate monotonic tools along with comparison to actual performance for real-time scheduled threads running on a native Linux system. By the end of this course the learner will be able to full derive the fixed priority rate monotonic least upper bound for feasibility as well as justifying the rate monotonic policy and will be able to compare to dynamic priority scheduling including earliest deadline first and least laxity policies. At the end of this course learners will be able to fully derive and explain the math model for the rate monotonic least upper bound as well as performing timing diagram analysis for fixed and dynamic priority software services. Tools to provide analysis will be learned (Cheddar) to automate timing analysis and to compare to actual performance. Specific objectives include: ● Rate monotonic theory (complete math models) ● Differences between fixed priority rate monotonic policy and dynamic priority earliest deadline first and least laxity policies ● Scheduling theory and practice writing code for multi-frequency executives, priority preemptive RTOS services, and real-time threaded services on traditional operating systems (Linux) ● Building a simple Linux multi-service system using POSIX real-time extensions on Raspberry Pi 3b using sequencing and methods to log and verify agreement between theory and practice ● Timing diagram generation and analysis using Cheddar This course includes specific hardware and software requirements. Please review the FAQ below for complete details.

Навыки, которые вы освоите

Real-Time Operating SystemsEmbedded SystemsSystem Design and ImplementationVerification And ValidationAlgorithmsTest ToolsSystems AnalysisEmbedded SoftwareLinuxSoftware DesignSystem ProgrammingTheoretical Computer ScienceOS Process Management

Программа курса

4 модулей · 88 учебных материалов

01Real-Time Scheduling and Rate Monotonic Least Upper Bound Derivation34 материалов

Introduction

Course Updates and Accessibility SupportЧтениеNon-Credit Students: Welcome and Where to Find HelpЧтениеCourse Assumed Real-Time Knowledge and OverviewВидеоHardware & Software RequirementsЧтение

Учитесь у экспертов

Sam Siewert

Associate Professor Adjunct

Real-Time Embedded Systems Theory and Analysis
В каталоге вашей программы

Инвестируйте в себя

Новые знания — в удобное для вас время.

Начать на Coursera

Обучение откроется на Coursera
в новой вкладке

Обучение на Coursera

≈ 62.2 ч

4 модулей

Язык: Английский

Субтитры: Арабский, Французский, Украинский, Китайский (Китай), Греческий, Итальянский, Бразильский португальский, Нидерландский, Корейский, Немецкий, Русский, Тайский, Индонезийский, Шведский, Турецкий, Испанский, Хинди, Японский, Казахский, Польский

Часть программы вашего университета
Introduce YourselfОбсуждение

Course Resources

EXTRA HELP: Home Lab Set UpЧтениеCode Walkthrough for Peer ReviewsЧтениеGuidelines for Code Quality Peer ReviewsЧтениеCODE: CU Boulder Linux Example Code - PublicЧтениеTextbook: RTECS with Linux and RTOSЧтениеBasic Makefile Skills by ExampleЧтениеTiming Analysis Examples for RM, EDF, and LLFЧтение

Real-Time Scheduling Policies Overview - Fixed and Dynamic

Code Walkthrough: Syslog for Tracing and Autograded AssignmentsВидеоRate Monotonic Fixed Priority Policy and Optimality (Review)ВидеоRate Monotonic Scheduling within the Least Upper BoundВидеоChallenges with and Alternatives to Fixed Priority RM PolicyВидеоDeadline Monotonic Extensions to Rate Monotonic PolicyВидеоDeadline Driven Scheduling: using Dynamic Priority AlternativesВидео

Real-Time Fixed Priority Scheduling Feasibility Least Upper Bound

Read, Review and Understand Derivations in Original RMA Paper (Liu & Layland)ЧтениеRM LUB Derivation - IntroductionВидеоTwo Cases that Drive the RM Least Upper BoundВидеоRM Least Upper Bound Intersection PointВидеоRM Least Upper Bound Derivation - ConclusionВидео

RM Exact Fixed Priority Feasibility Analysis with Worst Case Analysis

Optional: Rate Monotonic Exact AnalysisЧтениеNecessary and Sufficient Feasibility by Worst-Case Analysis (Exact Test)ВидеоExact Feasibility for Rate Monotonic Policy with Scheduling PointВидеоExact Feasibility for Rate Monotonic using Completion TestВидеоAssignment 1:Timing Diagram Emulation - Non-Harmonic, Below LUB, Feasible, Margin (Safe)ПрограммированиеAssignment 1: Timing Diagram Emulation - Non-Harmonic, Below LUB, Feasible, Margin (Safe)Взаимная проверкаAssignment 2: Timing Diagram Emulation - Non-Harmonic, Above LUB, Feasible, Margin (safe)ПрограммированиеAssignment 2: Timing Diagram Emulation - Non-Harmonic, Above LUB, Feasible, Margin (safe)Взаимная проверкаAssignment 3: Timing Diagram Emulation - RM Succeeds, Fair FailsПрограммированиеAssignment 3: Timing Diagram Emulation - RM Succeeds, Fair FailsВзаимная проверка

Module 1 Quiz

Module 1 | Key Steps in the RM Least Upper Bound DerivationЗадание
02Service Design Feasibility Analysis Practice and Methods of Implementation24 материалов

Fixed Priority Timing Diagram Methods, Practice and Theory

Comparison of RM Policy to Round RobinВидеоRecall Method for RM Fixed Priority Scheduling Timing Diagram CreationВидеоMore Complex RM Timing DiagramsВидеоTiming Diagram with a Harmonic CaseВидеоTiming Diagram with a Full Utility Harmonic CaseВидеоTiming Diagram Example Comparing RM and EDFВидеоAssignment 4: Timing Diagram Emulation - Non-Harmonic, Above LUB, Not-FeasibleПрограммированиеAssignment 4: Timing Diagram Emulation - Non-Harmonic, Above LUB, Not-FeasibleВзаимная проверкаAssignment 5: Timing Diagram Emulation - Harmonic, Above LUB, Feasible, Zero-Margin (Unsafe)ПрограммированиеAssignment 5: Timing Diagram Emulation - Harmonic, Above LUB, Feasible, Zero-Margin (Unsafe)Взаимная проверкаAssignment 6: Timing Diagram Emulation - Non-Harmonic, RM Failure, DM SuccessПрограммированиеAssignment 6: Timing Diagram Emulation - Non-Harmonic, RM Failure, DM SuccessВзаимная проверка

RT Service Design and Implementation Patterns

RT Extensions to POSIX - 1003.1 in Linux, QNX, Solaris, FreeBSD, etc.ЧтениеOptional Resources for POSIX 1003.1 RT ExtensionsЧтениеPOSIX RT Extension SupportВидеоGeneral Design Pattern Part-1: AMP RT Functions, Services and SystemsВидеоGeneral Design Pattern Part-2: Mulit-Core, Multi-Service AMP SystemsВидеоImplementation Pattern: Periodic Services with POSIX RT Threads, Interval Timers and SignalsВидео

Linux service WCET concepts and tracing to evaluate jitter and drift

Methods to Determine Worst Case Execution Time (WCET)ВидеоMethods for WCET Speed-up to Meet DeadlinesВидеоService Request Period Jitter and DriftВидео

Module 2 Quiz

Module 2 | Service Implementation and Admission to Real-Time Using RMA, Scheduling Point, Completion TestЗадание
03Dynamic priority Earliest Deadline First and Least Laxity First13 материалов

Using EDF for real-time systems

Rate Monotonic vs. EDF - Judgement Day PaperЧтениеAdvantages of Dynamic Priorities and When to use EDFВидеоFundamentals of EDF Book and Key PapersЧтениеDisadvantages of Dynamic Priorities and When EDF should not be usedВидеоAssignment 7: Timing Diagram Emulation - Non-Harmonic, RM Failure, EDF and LLF SuccessПрограммированиеAssignment 7: Timing Diagram Emulation - Non-Harmonic, RM Failure, EDF and LLF SuccessВзаимная проверка

Using LLF for real-time systems

Reference: Key Least Laxity First PapersЧтениеAdvantages of Dynamic, Adaptive Scheduling: When to use LLFВидеоDisadvantages of Dynamic Adaptive Scheduling: When LLF should not be usedВидеоFinal Comparison of EDF and LLF Failure Modes and RecoveryВидео

Using Cheddar to Analyze Fixed and Dynamic Priority Schedules

Cheddar Tool Introduction and OverviewВидеоCheddar 3.2 Tools and Examples Updated!Чтение

Module 3 Quiz

Module 3 | Earliest Deadline First, Least Laxity FirstЗадание
04Synchronization and Bounded vs. Unbounded Blocking17 материалов

Bounded and Unbounded Blocking Challenges

Note on Linux Methods of Synchronization Compared to RTOSВидеоBounded Blocking for Service ReleaseВидеоBounded Blocking and Execution Efficiency Impact on RT SystemsВидеоDefinition of Unbounded Blocking and Examples of Root CausesВидеоCode Walkthrough: Circular Wait - Deadlock DemonstrationВидеоCode Walkthrough: Can you think of a simple way to break deadlock after a timeout?Видео

Unbounded Priority Inversion due to Blocking

Priority Inversion (Unbounded) and Priority Inheritance ProtocolЧтениеOPTIONAL: The Evolution of Real-Time LinuxЧтениеReview of Semaphore Use and Necessity of Critical Section (C.S.)ВидеоCode Walkthrough: Unbounded Priority Inversion DemonstrationВидео

Solutions to Unbounded Priority Inversion

Priority Inheritance, Priority Ceiling, and Priority Ceiling EmulationВидеоLinux has no Priority Inheritance or Ceiling Protocol - Why? What can be done?Взаимная проверка

Mars Pathfinder Case Study

Mars Pathfinder Problem - Rolling Reset 3 Days prior to closest approach to MarsВидеоMars Pathfinder Root Cause AnalysisВидеоMars Pathfinder - Bug Localization and the FixВидеоWhat Really Happened to Mars Pathfinder? Why are there multiple stories?Взаимная проверка

Module 4 Quiz

Module 4 | Thread SynchronizationЗадание
Message Queues for Synchronization and Data SharingВидео
Code Walkthrough: POSIX RT Feature DemonstrationВидео