System programming made easy using C++17.Key FeaturesLearn how to write system level code in C++Build robust and concurrent systems that take the best advantage of the available hardware resources.Deep dive into C++ concurrency to be able to take advantage of C++ server-level constructs.Book DescriptionC++ is a general-purpose programming language with a bias towards systems programming as it provides ready access to hardware-level resources, efficient compilation, and a versatile approach to higher-level abstractions.With this comprehensive book, you will understand the benefits of systems programming with C++17. You will gain a firm understanding of various C, C++, and POSIX standards and various system types for C++ and POSIX. After a brief refresher on C++, RAII, and The GSL, you will learn to program Linux and UNIX Systems. As we delve deeper, the book will provide you with the details of C++'s support for IO. You will be guided through various methods involved in Memory management and also understand how to program file input and output. You will also explore how to program POSIX sockets using C++. We'll be creating two examples that explain how to set up both a UDP and TCP server/client safely using C++.Finally, you will be guided through UNIX Time interfaces, Multi-threading and Error handling with Exceptions. By the end of this book, you will be comfortable with programming high-quality systems in C++.What You Will LearnUnderstand the benefits of using C++ for system programming.Learn to program Linux / Unix systems using C++.Discover the benefits of Resource Acquisition Is Initialization and its use in system programming.Learn the POSIX socket APIs and how to program them.Explore advanced system programming topics including allocators.Learn to program concurrent systems using POSIX and C++ threads.Understand how C++ can be used to create safer, more performant system applications in any environment.Who This Book Is ForIf you are a developer who has intermediate knowledge of C++ but little to no knowledge of UNIX and Linux system programming and want to learn system programming with C++, this book is for you.
Author: Dr. Rian Quinn