ABOUT THIS BOOK
PUBLISHER: Packt Publishing Limited
FORMAT: Paperback
ISBN: 9781788998475
RRP: £33.99
PAGES: 543
PUBLICATION DATE:
August 31, 2018
BUY THIS BOOK
As an Amazon Associate and Bookshop.org affiliate we earn from qualifying purchases.
Hands-On System Programming with Linux: Deep dive into fundamentals of core Linux system programming and interface
Kaiwan Billimoria
Learn the theory behind,and use the powerful Linux System Programming APIs with this comprehensive guide for current and aspiring Linux systems developersAbout This Book* Acquire deep insight into Linux system architecture and it’s programming interfaces* Get hands-on with core concepts like process management, signalling, pthreads, scheduling, and more* Packed with industry best practices and advice, with dozens of code examplesWho This Book Is ForThis book is targeted towards Linux system engineers, programmers or any stakeholders; for those who want to go beyond just using an API set to also understanding the theoretical underpinnings and concepts behind the powerful Linux system programming APIs. To get the most out of this book, the reader should be familiar with Linux at the user-level – logging in, using the shell via the command line interface, the ability to use tools like find, grep, sort, etc. A working knowledge of the ‘C’ programming language is required. No prior experience with Linux systems programming is assumed.What You Will Learn* A solid grasp on the key theoretical underpinnings of the UNIX and Linux system architecture* The what and why of modern OS’s using Virtual Memory, dynamic memory APIs* Process Management: concepts and APIs on process credentials, execution, creation, signalling* How to effectively perform file IO, and use timers* Multithreading: concepts and APIs on pthreads creation, management, cancellation, synchronization in detail* Linux’s CPU scheduling policies and how to exploit them via their API set* Build and work with daemon processes* How to effectively troubleshoot.In DetailThe Linux OS and it’s embedded and server applications are a critical component of today’s key software infrastructure in a decentralized, networked universe. The industry demand for proficient Linux developers is only rising. This book aims to give the reader two things: a solid theoretical base and practical industry-relevant descriptions and code covering the Linux system programming domain. It delves into the art and science of Linux application programming – system architecture, process memory and management, signalling, timers, pthreads, file IO, shared libraries, and more.This book attempts to go beyond the “use API X to do Y” approach; it takes pains to explain the concepts and theory required to understand the programming interfaces, the design decisions and tradeoffs made by experienced developers when using them and the rationale behind them. Troubleshooting tips and techniques round out the book’s coverage.By the end of this book, you will have both the essential conceptual design knowledge and hands-on experience working with Linux system programming interfaces.