1 General RTOS Flashcards
What is an RTOS?
Multitasking operating system intended for real-time applications.
Why use RTOS?
Brings structure to a design.
Kernel multitasking removes the problem of scheduling from the application.
More efficient use of CPU resources.
How many possible task states are there?
4
What are the task states?
Ready
Running
Suspended
Blocked
What handles task switching?
The kernel handles the task switching, however the application code determines when task switches should occur.
What is the heartbeat of the RTOS System?
The tick timer is the of the RTOS System.
Explain time-slice scheduling?
CPU resources are time-sliced between tasks of equal priority. i.e. task 1 runs for one tick, then task2 runs for the next tick then back to one.
The sheduler switched between tasks on each tick interrupt.
Explain pre-emptive scheduling?
Scheduling based on task priority. If a higher priority task is in the ready state, the current running task is suspended. It leads to fast response time for high priority task.
What can a task do if it needs to be aware of other tasks?
A Task may block, awaiting a synchronisation event from another task.
What can be used for task synchronisation?
Queues, Semaphores, event groups, mutexex, notifications.
How would you communicate data between task?
Communication objects