Real-Time C++
Efficient Object-Oriented and Template Microcontroller Programming
Christopher Kormanyos(Author)
Springer (Publisher)
Published on 27. March 2013
Book
Hardback
XXIV, 360 pages
978-3-642-34687-3 (ISBN)
Article exhausted; check for reprint
Description
The C++ language has powerful object-oriented and template features that can improve software design and portability while simultaneously reducing code complexity and the risk of error. Furthermore, C++ compiles highly efficient native code. This unique and effective combination makes C++ well-suited for programming microcontroller systems that require compact size, high performance and safety-critical reliability.With this book, Chris Kormanyos delivers a highly practical guide to programming real-time embedded microcontroller systems in C++. It is divided into three parts plus several appendices. Part I provides a foundation for real-time C++ by covering language technologies, including object-oriented methods, template programming and optimization. Next, part II presents detailed descriptions of a variety of C++ components that are widely used in microcontroller programming. It details some of C++'s most powerful language elements, such as class types, templates and the STL, to develop components for microcontroller register access, low-level drivers, custom memory management, embedded containers, multitasking, etc. Finally, part III describes mathematical methods and generic utilities that can be employed to solve recurring problems in real-time C++. The appendices include a brief C++ language tutorial, information on the real-time C++ development environment and instructions for building GNU GCC cross-compilers and a microcontroller circuit.The most recent specification of C++11 in ISO/IEC 14882:2011 is used throughout the text. To facilitate portability, no libraries other than those specified in the language standard itself are used. Efficiency is always in focus and numerous examples are backed up with real-time performance measurements and size analyses that quantify the true costs of the code down to the very last byte and microsecond.The target audience of this book mainly consists of students and professionals interested in real-time C++. Readers should be familiar with C or another programming language and will benefit most if they have had some previous experience with microcontroller electronics and the performance and size issues prevalent in embedded systems programming.
Reviews / Votes
From the reviews:"In this book, Kormanyos, a microcontroller programmer with significant industrial experience, delivers a practical real-time embedded system programming guide in C++. The book teaches by example, providing plenty of motivation. . The author focuses on creating efficient code, both time- and space-wise, with technique exposure specific to embedded systems. Overall, this book is a good practical guide, beneficial to both students and professionals interested in real-time C++ programming. Summing Up: Recommended. Upper-division undergraduates and above." (D. Papamichail, Choice, Vol. 51 (3), November, 2013)Programmers seeking information about real-time performance or advanced knowledge of the C++ language will delight in this book. The reader is led along the arduous road of templates, generic metaprogramming, and object-oriented techniques using a diverse collection of code examples. The ultimate goal of implementing real-time embedded microcontroller systems using C++ is brilliantly achieved, opening the door for extension to real-time applications." (Andre Maximo, ACM Computing Reviews, October, 2013)"This is a gentle introduction to using C++11 in real-time projects. (.) It shows that C++11 is a reasonable choice for embedded work. Overall, a good tutorial for C++ developers who want to get their feet wet in embedded programming." (Andrew Binstock, Dr. Dobb's, May, 2013)More details
Edition
2013
Language
English
Place of publication
Heidelberg
Germany
Publishing group
Springer Berlin
Target group
Professional and scholarly
Professional/practitioner
Illustrations
biography
Dimensions
Height: 23.5 cm
Width: 15.5 cm
Weight
736 gr
ISBN-13
978-3-642-34687-3 (9783642346873)
DOI
10.1007/978-3-642-34688-0
Schweitzer Classification
Other editions
New editions

Christopher Kormanyos
Real-Time C++
Efficient Object-Oriented and Template Microcontroller Programming
Book
07/2021
4th Edition
Springer
€80.24
Shipment within 7-9 days

Christopher Kormanyos
Real-Time C++
Efficient Object-Oriented and Template Microcontroller Programming
Book
12/2015
2nd Edition
Springer
€74.89
Article exhausted; check for reprint
Additional editions

Christopher Michael Kormanyos
Real-Time C++
Efficient Object-Oriented and Template Microcontroller Programming
Book
02/2015
Springer
€53.45
Article exhausted; check different version
Person
Chris Kormanyos is a senior system architect at a major automotive supplier with 20 years experience in software development, microcontroller system design and application deployment. Chris is well-connected in the microcontroller industry and has strong professional ties to both tier-one silicon suppliers as well as compiler and tool vendors. He received a PhD in experimental particle physics from the University of Colorado in 1994 and also holds several patents for automotive electronic technologies.
Content
Part I Language Technologies for Real-Time C++.- Getting Started with Real-Time C++.- Working with a Real-Time C++ Program on a Board.- An Easy Jump-Start in Real-Time C++.- Object-Oriented Techniques for Microcontrollers.- C++ Templates for Microcontrollers.- Optimized C++ Programming for Microcontrollers.- Part II Components for Real-Time C++.- The Right Start.- Low-Level Hardware Drivers in C++.- Custom Memory Management.- C++ Multitasking.- Part III Mathematics and Utilities for Real-Time C++.- Floating-Point Mathematics.- Fixed-Point Mathematics.- High-Performance Digital Filters.- C++ Utilities.- Extending the C++ Standard Library and the STL.- Additional Reading.- Part IV Appendices.- A Tutorial for Real-Time C++.- A Robust Real-Time C++ Environment.- Building and Installing GNU GCC Cross-Compilers.- Building a Microcontroller Circuit.