Hands-On System Programming with Linux: Deep dive into fundamentals of core Linux system programming and interface (Paperback)
暫譯: Linux 系統程式設計實戰:深入探討核心 Linux 系統程式設計與介面基本原理 (平裝本)

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 系統程式設計的先前經驗。