Skip to content

Reliable Multithreaded Programming with and without an RTOS - Corporate Training


Bright Solutions Global PLC

Summary

Price
Enquire to get more info on pricing
Study method
Onsite
Duration
2 days
Qualification
No formal qualification

Overview

There is a lot of misinformation about multithreaded programming and the use of real-time operating system (RTOS) features. Misinformation and programmer inexperience often leads to unreliable multithreading and introduces the possibility for dangerous system failures such as starvation, deadlock, and priority inversion. This course teaches the proper use of RTOS APIs in developing multithreaded software as well as techniques for developing reliable multithreaded program structures without an RTOS at all.

Description

Course Outline

Multitasking Fundamentals
Tasks and Task States
Scheduling Points
Context Switching
System Calls
Mutual Exclusion
Rate Monotonic Scheduling
Preemption
Rate Monotonic Algorithm
Schedulable Bound
Aperiodic Tasks and Interrupts
Priority Inversion
Intertask Communication
Semaphores
Mailboxes
Message Queues
Event Flags
Starvation and Deadlock
Related Topics in RTOSes
Memory Management
Timer Ticks
OS Hooks
Interrupt Handling
Task Partitioning

Preemption Implications
Ten Negatives
System Failures
Overhead Costs
Three Positives
Cooperative Multitasking
Foreground Background
Cyclic Executive
Co-Routines
Function Queues
Event Driven Programming
Events and Reactions
Event Queues
State Machines
Run-to-Completion
Active Objects
UML Statecharts
States and Transitions
Guard Conditions
Actions and Reactions
Entry and Exit Actions
Hierarchy

All exercises are done using the IAR Embedded Workbench integrated C/C++ compiler-debugger on the Renesas target development board. RTOS exercises are based on Micrium’s popular, royalty-free MicroC/OS-III real-time operating system.

Questions and answers

Reviews

Currently there are no reviews for this course. Be the first to leave a review.

FAQs

Study method describes the format in which the course will be delivered. At Reed Courses, courses are delivered in a number of ways, including online courses, where the course content can be accessed online remotely, and classroom courses, where courses are delivered in person at a classroom venue.

CPD stands for Continuing Professional Development. If you work in certain professions or for certain companies, your employer may require you to complete a number of CPD hours or points, per year. You can find a range of CPD courses on Reed Courses, many of which can be completed online.

A regulated qualification is delivered by a learning institution which is regulated by a government body. In England, the government body which regulates courses is Ofqual. Ofqual regulated qualifications sit on the Regulated Qualifications Framework (RQF), which can help students understand how different qualifications in different fields compare to each other. The framework also helps students to understand what qualifications they need to progress towards a higher learning goal, such as a university degree or equivalent higher education award.

An endorsed course is a skills based course which has been checked over and approved by an independent awarding body. Endorsed courses are not regulated so do not result in a qualification - however, the student can usually purchase a certificate showing the awarding body's logo if they wish. Certain awarding bodies - such as Quality Licence Scheme and TQUK - have developed endorsement schemes as a way to help students select the best skills based courses for them.