Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

What Can C++ Do for Embedded Systems Developers

NDC Conferences via YouTube

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore a keynote address by Bjarne Stroustrup on the applications of C++ in embedded systems development. Delve into the efficient hardware mapping and zero-overhead abstraction capabilities of modern C++, focusing on effective hardware utilization, resource management, reliability, and maintainability in various embedded contexts. Examine the differences in programming requirements for diverse embedded systems, from coffee machines to airplane controls. Investigate topics such as the C++ machine model, abstraction tools, constraints on embedded code, compile-time computation, static polymorphism, resource management, error handling, and the role of exceptions in embedded programming. Gain insights into building robust embedded systems using C++ features while maintaining simplicity and efficiency.

Syllabus

Intro
Overview
What is "embedded systems programming"?
Who are "embedded systems programmers"?
Complexity
2014 UBM survey
Programming Languages
C++ Background
C++ machine model • Primitive operations maps to machine instructions
Abstraction
Tools
Constraints on "embedded systems code" differ
Where compactness matters
Zero-overhead (classes vs structs)
Constant expressions
Compile-time computation
Simple selection
Static polymorphism (simplest form)
Zero-overhead features
Ordinary code
Why type-rich code?
Resource Management
Resources and Errors
We need error-code and exceptions
Are exceptions zero-overhead?
Simple experiment
When you use exceptions
RAll without exceptions?
Ordinary features
Keep simple things simple!
Build on a sound foundation

Taught by

NDC Conferences

Reviews

Start your review of What Can C++ Do for Embedded Systems Developers

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.