Modern C++ Systems Programming: A hands-on guide to low-level memory management, lock-free concurrency, and robust system software using C++20/23 - Softcover

C. Miller, Luis

 
9798292305958: Modern C++ Systems Programming: A hands-on guide to low-level memory management, lock-free concurrency, and robust system software using C++20/23

Inhaltsangabe

Modern C++ Systems Programming isn’t just a reference, it’s your definitive playbook for building rock-solid, low-latency services, libraries, and tools that run anywhere. Whether you’re modernizing legacy C++ code or designing greenfield systems at scale, this book equips you with the patterns, practices, and deep-dive strategies to deliver mission-critical software with confidence.

What You’ll Learn

✔ Advanced Concurrency & Synchronization

– Master lock-free algorithms, fine-tuned spin-waiting, and wait-free data structures

– Leverage std::latch, std::barrier, and semaphores for clear, high-throughput coordination

– Build dynamic thread pools with work-stealing and NUMA-aware affinity for maximum CPU utilization

✔ Memory Management & Low-Level I/O

– Use memory-mapped I/O (MMIO) and Direct Device Access for minimal-latency hardware interfacing

– Harness cache-blocking, data-oriented layouts, and SIMD intrinsics for blazing performance

– Implement custom allocators, pool memory, and manage safe reclamation in lock-free systems

✔ Cross-Platform Abstractions & System Calls

– Wrap POSIX and Win32 syscalls in policy-based, concept-driven C++ interfaces

– Abstract file, network, and serial devices with RAII, error codes, and std::expected for robust APIs

– Craft portable packages with CMake, CPack, DEB/RPM, and multi-stage Docker or Podman images

✔ Profiling, Testing & Observability

– Integrate AddressSanitizer, ThreadSanitizer, and static analyzers into your CI pipeline

– Profile CPU hot spots with perf and Intel VTune; diagnose memory with Massif and VTune’s Memory Analysis

– Add logging, metrics, and tracing with OpenTelemetry; design live-reload daemons and zero-downtime upgrades

✔ Performance Engineering & Reliability

– Set up performance budgets, automated benchmarks (Google Benchmark), and regression guards

– Optimize branch prediction, minimize false sharing, and tune prefetch hints

– Build resilient services with health checks, backpressure, circuit breakers, and shared-nothing actors

✔ CI/CD, Infrastructure as Code & Deployment

– Automate cross-compilation, testing, and packaging for multiple architectures in GitHub Actions or Azure Pipelines

– Define Infrastructure as Code with Terraform, Bicep, and container orchestration for cloud-native rollouts

– Enforce ABI stability with versioned SONAMEs, PImpl idiom, and compliance checks in your release workflow

Who This Book Is For

• Systems engineers building high-performance servers, network services, or device drivers in C++

• Performance architects who need to squeeze every cycle and byte from modern multi-core hardware

• DevOps and platform teams automating cross-platform CI/CD, containerization, and observability for C++ workloads

• Software leads standardizing concurrency, memory safety, and upgrade practices across critical infrastructure


With ready-to-reuse templates, production-tested patterns, and hands-on examples, Modern C++ Systems Programming is the essential guide to crafting future-proof, high-velocity, and dependable C++ applications where every microsecond and megabyte counts.

Die Inhaltsangabe kann sich auf eine andere Ausgabe dieses Titels beziehen.