System Programming in Linux: A Hands-On Introduction
暫譯: Linux 系統程式設計:實作入門指南

Weiss, Stewart

  • 出版商: No Starch Press
  • 出版日期: 2025-10-14
  • 售價: $3,570
  • 貴賓價: 9.5$3,392
  • 語言: 英文
  • 頁數: 1048
  • 裝訂: Hardcover - also called cloth, retail trade, or trade
  • ISBN: 1718503563
  • ISBN-13: 9781718503564
  • 相關分類: Linux
  • 海外代購書籍(需單獨結帳)

商品描述

Learn to write real Linux software--not just run it.

Most programmers never learn how Linux really works. Why? Because system programming is rarely taught, and the tools can be intimidating without the right guidance. As a result, many developers stick to high-level languages and frameworks--writing code that runs on Linux without understanding how it interacts with Linux.

In today's world, that's not enough to stand out. Especially as more companies turn to AI to write their software, the question becomes: How do you stay relevant in an AI-driven world? You learn how things really work.

If you've ever wondered how processes are created, how memory and files are managed, or how programs communicate in a Unix environment, System Programming in Linux will make it all make sense.

This is a hands-on guide to writing software that interfaces directly with the Linux operating system. You'll go beyond shell commands and abstractions to understand what the kernel is doing--and how to leverage it through your own code. Rather than telling you how to solve each problem, Professor Stewart N. Weiss guides you through the process of discovering the solution yourself.

Start with the core concepts of Unix and Linux, then work your way up to advanced topics like process control, signals, interprocess communication, threading, and non-blocking I/O. Each chapter includes conceptual diagrams, annotated source code, and practical projects to help you immediately apply what you've learned.

You'll explore topics such as:

  • The structure of Unix and Linux operating systems--and why it matters
  • Using system calls to create and manage processes
  • The mechanics of signals, timers, and interprocess communication
  • Using synchronization tools to write multithreaded programs
  • Interacting with filesystems, devices, and terminals
  • Building text-based user interfaces using ncurses
  • Developing programs that are robust, efficient, and portable

At Hunter College, Professor Weiss built the course this book is based on, and he has helped thousands of students go from confusion to confidence in his over 40 years of teaching programming. His clear, conversational style; technical depth; and focus on real-world application make this one of the most approachable and powerful system programming books available.

As Linux continues to dominate development, server, and embedded environments, understanding the system behind your software isn't just helpful; it's essential.

Whether you're a student, developer, or sysadmin, this book gives you the tools to work directly with Linux and the insight to understand what's really happening under the hood.

商品描述(中文翻譯)

學習撰寫真正的 Linux 軟體——不僅僅是運行它。

大多數程式設計師從未真正了解 Linux 是如何運作的。為什麼?因為系統程式設計很少被教授,而在沒有正確指導的情況下,工具可能會讓人感到畏懼。因此,許多開發者僅限於高階語言和框架——撰寫在 Linux 運行的程式碼,而不理解它如何與 Linux 互動

在今天的世界中,這樣的知識不足以讓你脫穎而出。尤其是隨著越來越多的公司轉向 AI 來撰寫他們的軟體,問題變成了:在 AI 驅動的世界中,你如何保持相關性? 你需要學習事物的真正運作方式。

如果你曾經想知道如何創建進程、如何管理記憶體和檔案,或如何在 Unix 環境中進行程式間的通信,Linux 系統程式設計 將使這一切變得清晰。

這是一本實用指南,教你如何撰寫直接與 Linux 作業系統介面的軟體。你將超越 shell 命令和抽象概念,了解核心正在做什麼——以及如何通過自己的程式碼利用它。教授 Stewart N. Weiss 並不告訴你如何解決每個問題,而是引導你自己發現解決方案的過程。

從 Unix 和 Linux 的核心概念開始,然後逐步深入到進程控制、信號、進程間通信、執行緒和非阻塞 I/O 等高級主題。每一章都包括概念圖、註解源碼和實用專案,幫助你立即應用所學的知識。

你將探索以下主題:

  • Unix 和 Linux 作業系統的結構——以及為什麼這很重要

  • 使用系統呼叫來創建和管理進程

  • 信號、計時器和進程間通信的機制

  • 使用同步工具撰寫多執行緒程式

  • 與檔案系統、設備和終端互動

  • 使用 ncurses 建立基於文本的用戶介面

  • 開發穩健、高效且可攜帶的程式


在亨特學院,Weiss 教授建立了這本書所基於的課程,並在他超過 40 年的程式設計教學中幫助了成千上萬的學生從困惑走向自信。他清晰、對話式的風格;技術深度;以及對實際應用的重視,使這本書成為最易於接觸且強大的系統程式設計書籍之一。

隨著 Linux 繼續主導開發、伺服器和嵌入式環境,了解你軟體背後的系統不僅是有幫助的;而是必不可少的。

無論你是學生、開發者還是系統管理員,這本書都為你提供了直接與 Linux 互動的工具,以及理解底層運作的洞察力。

作者簡介

Stewart N. Weiss was a professor in the computer science department of Hunter College for 38 years and was also on the faculty of the Graduate Center of the City University of New York. He developed courses in Unix system programming, parallel computing, software testing, and open source software development. Weiss holds a PhD in computer science from the Courant Institute of Mathematical Science of New York University. He has been working with Unix and C since 1983 and is passionate about sharing his knowledge of Unix and Linux systems.

作者簡介(中文翻譯)

斯圖亞特·N·韋斯在亨特學院的計算機科學系任教38年,並且也是紐約市立大學研究生中心的教員。他開發了有關Unix系統程式設計、平行計算、軟體測試和開源軟體開發的課程。韋斯擁有紐約大學數學科學研究所的計算機科學博士學位。他自1983年以來一直在使用Unix和C,並熱衷於分享他對Unix和Linux系統的知識。

最後瀏覽商品 (20)