Mô tả

This course teaches you how to build a Real-Time Operating Systems through intensive practice and theory. It starts by getting you excited through an introduction to the internals of a Real-Time Kernel on ARM Processors, which you shall implement yourself in code.Then we move on to learn all there  is about Real-Time Operating Systems, their various parts, how they work and then we finally build our own Real-Time Operating System exploring different scheduling algorithms and Inter-Thread communication tools. 

At the end of this course you should be able to build your own Real-Time Operating System from scratch, give your own lecture on Real-Time Operating Systems, be able to build a Round-Robin Scheduler, be able to build a Periodic Scheduler, be able to calculate the CPU utilization of your RTOS, be able to build an OS Kernel etc. Please see the course curriculum section to find out all the amazing content awaiting you. 

Bạn sẽ học được gì

Build a Real-Time Operating System from Scratch

Build Round-Robin Schedulers

Build Cooperative Schedulers

Build Periodic Schedulers

Build First Come First Served Scheduler

Build Rate Monotonic Schedulers

Build a board support package from scratch

Calculate the CPU Utilization of an RTOS

Write Bare-Metal Embedded-C Code

Write Assembly code

Understand the OS Support Features of the Cortex-M Architecture

Understand the Internals of an RTOS Kernel

Be Implement to implement and explain popular scheduling algorithms

Be able to explain the Cortex-M Architecture

Be able to give a lecture on Real-Time Operating Systems

Yêu cầu

  • Having basic C programming skills is a plus

Nội dung khoá học

19 sections

Setting Up

7 lectures
Downloading CubeIDE
02:34
Installing CubeIDE
02:38
Development Board
00:06
Getting the Required Documentation
08:43
Setting Up the Project Tree (Part I)
12:24
Setting Up the Project Tree (Part II)
04:56
Getting the best out of this course.
04:59

[OPTIONAL] Setting Up Keil uVision 5

5 lectures
Downloading Keil uVision
01:16
Installing Keil uVision 5
06:23
Installing Packs
04:19
Overview of Keil uVision 5
10:00
Changing the Compiler
01:53

Developing the Required Drivers

11 lectures
Programming : Developing the LED Driver (PartI)
17:34
Notice
00:02
Programming : Developing the LED Driver (PartII)
22:02
[Keil uVision] : Programming : Developing the LED Driver
15:32
Programming : Developing the UART Driver (Part I) - Approach
14:20
Programming : Developing the UART Driver (Part II) - Initialization Function
20:53
Programming : Developing the UART Driver (Part III) - Write Function
12:19
[Keil uVision] : Programming : Developing the UART Driver
06:17
Programming : Developing the Timebase Initialization Function
16:10
Programming : Developing the Timebase Utility Functions
11:01
[Keil uVision] : Programming : Developing the Timebase
03:38

The Internals of Realtime Operating Systems

4 lectures
Programming : Experimenting with Blocking Code
10:26
[Keil uVision] : Programming : Experimenting with Blocking Code
05:00
Programming : Manual Context Switching
26:53
[Keil uVision] : Programming : Manual Context Switching
01:45

Introduction to Real-time Operating Systems

2 lectures
What is an RTOS?
02:22
Performance Metrics of Real Time Operating Systems
00:52

Software Flows

3 lectures
Busy Wait System
01:30
Multi-Threaded Systems (With ISRs)
02:39
Real-Time Systems
00:55

The Stack

2 lectures
Stack & Memory Map
03:34
Stack Manipulation
04:41

Overview of Cortex-M OS Support Features

4 lectures
Inside the Microcontroller
02:30
The Shadow Stack Pointer
02:21
Exclusive access instructions
03:45
The SysTick
01:26

BOOT Sequence

2 lectures
Cortex-M Boot Sequence PART I
01:02
Cortex-M Boot Sequence PRT II
05:07

Introduction to Threads

2 lectures
The Thread
02:16
Classification of Threads
03:19

Thread Control Block (TCB)

2 lectures
Features of the Thread Control Bock
02:15
Implementing a Thread Control Block
04:09

The Scheduler and Scheduling Algorithms

14 lectures
The Scheduler
02:38
Process vs. Thread
02:38
Classification of Schedulers
01:52
Preemption
01:20
Scheduler Criteria
01:17
CPU Utilization
02:01
Scheduling Algorithm Optimization
01:57
Overview of Popular Scheduling Algorithms
00:58
First Come First Served (FCFS) Scheduler
07:13
Round Robin (RR) Scheduler
08:41
Round Robin (RR) Scheduler (PART II)
04:49
Quanta
04:18
Weighted Round Robin (WRR) Scheduler
04:09
Internals of the Round Robin Scheduler
06:19

Context Switching

1 lectures
The Context Switching process
03:10

The Kernel

1 lectures
The Kernel
00:40

Developing a Realtime OS with a Round Robin Scheduler

10 lectures
Programming : Developing the Thread Control Block
07:48
Programming : Implementing the Kernel Stack Initialization Function
11:22
Programming : Implementing the Kernel Add Threads Function
09:07
Programming : Implementing the Kernal Launch Function
09:51
Programming : Saving and Restoring Context
16:20
Programming : Implementing the OS Scheduler Launch Function
08:02
Programming : Testing the RTOS
29:43
Programming : Exploring the RTOS further
07:05
[Keil uVision] Programming : Developing the Round Robin Scheduler v1
10:45
[Keil uVision] Programming : Developing the Round Robin Scheduler v2
09:59

Developing a Realtime OS with a Cooperative Scheduler

2 lectures
Programming : Developing the Cooperative Scheduler
11:29
[Keil uVision] : Programming : Developing the Cooperative Scheduler
04:03

Developing a Realtime OS with a Periodic Scheduler

4 lectures
Programming : Developing the Periodic Scheduler
16:22
Programming : Developing the Periodic Scheduler with Hardware Timers
21:04
[Keil uVision] : Developing the Periodic Scheduler
09:25
[Keil uVision] : Programming : Developing the Periodic Scheduler with Hardware
05:06

Semaphores

2 lectures
Programming : Developing the APIs for Semaphores
22:26
[Keil uVision] : Programming : Developing the APIs for Semaphores
04:05

Closing

1 lectures
Closing Remark
00:17

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.