Book Image

C++ Programming for Linux Systems

By : Desislav Andreev, Stanimir Lukanov
Book Image

C++ Programming for Linux Systems

By: Desislav Andreev, Stanimir Lukanov

Overview of this book

Around 35 million Linux and almost 2 billion Android users rely on C++ for everything from the simplest embedded and IoT devices to cloud services, supercomputing, and space exploration. To help you produce high-quality software, two industry experts have transformed their knowledge and experience into practical examples in system programming with C++ Programming for Linux Systems. In this book, you'll explore the latest C++20 features, while working on multiple specific use cases. You’ll get familiar with the coroutines and modern approaches in concurrent and multithreaded programming. You'll also learn to reshape your thinking when analyzing system behavior in Linux (POSIX) environments. Additionally, you'll discover advanced discussions and novel solutions for complex challenges, while approaching trivial system operations with a new outlook and learning to choose the best design for your particular case. You can use this workbook as an introduction to system programming and software design in Linux or any Unix-based environment. You’ll also find it useful as a guideline or a supplement to any C++ book. By the end of this book, you’ll have gained advanced knowledge and skills for working with Linux or any Unix-based environment.
Table of Contents (15 chapters)
Free Chapter
1
Part 1:Securing the Fundamentals
7
Part 2:Advanced Techniques for System Programming

Index

As this ebook edition doesn't have fixed pagination, the page numbers below are hyperlinked for reference only, based on the printed edition of this book.

A

aggregate initialization 83

anonymous function 92

anonymous pipe communication mechanism 60-62

anonymous pipes 150, 167

application binary interface (ABI) 9

application programming interface (API) 8

Arithmetic Logic Units (ALUs) 25

asynchronous tasks 139

atomic operation 157

guaranteeing, through semaphores and mutual exclusions 155-157

awaitable-awaiter pattern 250

awaitables 243

B

background processes 14

binary semaphore 158

Block Starting Symbol (BSS) 26

branch misprediction 229

branch prediction optimization 223

branch predictions 229

buffer overflow vulnerabilities 206

C

C++ 3

FS operations, executing 55-59

time handling 191-193

C++20

calendar, using 199-201

clocks 197-199

time zones, working with 202, 203...