Hands-On System Programming with Linux: Deep dive into fundamentals of core Linux system programming and interface (Paperback)

Kaiwan N Billimoria

  • 出版商: Packt Publishing
  • 出版日期: 2018-10-31
  • 售價: $1,800
  • 貴賓價: 9.5$1,710
  • 語言: 英文
  • 頁數: 794
  • 裝訂: Paperback
  • ISBN: 1788998472
  • ISBN-13: 9781788998475
  • 相關分類: Linux
  • 立即出貨 (庫存=1)

買這商品的人也買了...

商品描述

Learn the theory behind,and use the powerful Linux System Programming APIs with this comprehensive guide for current and aspiring Linux systems developers

Key Features

  • 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 examples

Book Description

The 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.

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.

Who This Book Is For

This 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.

商品描述(中文翻譯)

學習理論並使用強大的Linux系統程式設計API,這本全面指南適用於現有和有志成為Linux系統開發人員的讀者。

主要特點:

- 深入了解Linux系統架構及其程式設計介面
- 實踐核心概念,如進程管理、信號、pthread、排程等
- 提供行業最佳實踐和建議,並附有數十個程式碼示例

書籍描述:

Linux作業系統及其嵌入式和伺服器應用程式是當今分散式、網絡化世界中關鍵軟體基礎設施的重要組成部分。對熟練的Linux開發人員的需求只會增加。本書旨在為讀者提供兩個方面的內容:堅實的理論基礎和實用的行業相關描述和程式碼,涵蓋Linux系統程式設計領域。它深入探討Linux應用程式設計的藝術和科學 - 系統架構、進程記憶體和管理、信號、計時器、pthread、檔案IO、共享庫等等。

本書試圖超越「使用API X執行Y」的方法;它努力解釋理解程式設計介面所需的概念和理論,有經驗的開發人員在使用它們時所做的設計決策和權衡,以及背後的原理。書中還提供疑難排解的技巧和技巧。

通過閱讀本書,您將獲得基本的概念設計知識和與Linux系統程式設計介面一起工作的實踐經驗。

您將學到什麼:

- 對UNIX和Linux系統架構的關鍵理論基礎有牢固的掌握
- 現代作業系統使用虛擬記憶體、動態記憶體API的原因和方法
- 進程管理:進程憑證、執行、創建、信號等概念和API
- 如何有效執行檔案IO和使用計時器
- 多線程:pthread的創建、管理、取消、詳細同步的概念和API
- Linux的CPU排程策略及如何通過API集合利用它們
- 構建和使用守護進程
- 如何有效進行疑難排解

本書適合對Linux系統工程師、程式設計師或任何相關人員有興趣的讀者;對於那些希望不僅僅使用API集合,還要理解強大的Linux系統程式設計API背後的理論基礎和概念的讀者。為了充分利用本書,讀者應該熟悉Linux的使用者級別 - 登錄、使用命令行界面的shell、能夠使用find、grep、sort等工具。需要具備對C程式設計語言的工作知識。不需要先前的Linux系統程式設計經驗。