Understanding UNIX/LINUX Programming: A Guide to Theory and Practice (Paperback)
暫譯: 理解 UNIX/LINUX 程式設計:理論與實務指南 (平裝本)

Bruce Molay

  • 出版商: Prentice Hall
  • 出版日期: 2002-11-25
  • 售價: $2,050
  • 貴賓價: 9.8$2,009
  • 語言: 英文
  • 頁數: 552
  • 裝訂: Paperback
  • ISBN: 0130083968
  • ISBN-13: 9780130083968
  • 相關分類: Linux
  • 已絕版

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

商品描述

Understanding Unix/Linux Programming explains how Unix and Linux work and shows how to write programs at the system call level. Using nearly 100 complete programs and over 200 illustrations, the book demonstrates the basics as well as the advanced aspects of Unix systems programming.

Topics include:

  • file I/O
  • file systems
  • device I/O
  • the terminal driver
  • timers
  • signals
  • process management
  • pipes
  • stream and datagram sockets
  • network programming
  • POSIX threads
  • semaphores

The text presents theory in practical contexts with detailed explanations of common Unix programs such as who, ls, pwd, sh, and httpd. Each example starts with a description of what the program does and how people use it. From there, the text discusses the underlying principles and mechanisms, and then uses those ideas to write a version of the program.

The book is designed for learning. Chapter summaries, memorable analogies, experiments, explorations, and varied exercises help the reader understand and program Unix as an integrated, logical whole.

Material in the book applies to all versions of Unix and Linux. The book assumes the reader knows the C programming language and is familiar with a modern operating system. The book is suitable as a class text, for self-study, and for reference, and it provides thorough coverage of information essential to students, Unix programmers, and system administrators

Table of Contents

1. Unix Systems Programming: The Big Picture.
2. Users, Files, and the Manual: Who Is First.
3. Directories and File Properties: Looking through ls.
4. Focus on File Systems: Writing pwd.
5. Connection Control: Studying stty.
6. Programming for Humans: Terminal Control and Signals.
7. Event-Driven Programming: Writing a Video Game.
8. Processes and Programs: Studying sh.
9. A Programmable Shell: Shell Variables and the Environment.
10. I/O Redirection and Pipes.
11. Connecting to Processes Near and Far: Servers and Sockets.
12. Connections and Protocols: Writing a Web Server.
13. Programming with Datagrams: A License Server.
14. Threads: Concurrent Functions.
15. IPC Roundup: Can We Talk?

商品描述(中文翻譯)

《理解 Unix/Linux 程式設計》解釋了 Unix 和 Linux 的運作方式,並展示了如何在系統呼叫層級撰寫程式。這本書使用近 100 個完整的程式和超過 200 幅插圖,展示了 Unix 系統程式設計的基本概念以及進階方面。

主題包括:

- 檔案 I/O
- 檔案系統
- 裝置 I/O
- 終端驅動程式
- 計時器
- 信號
- 程序管理
- 管道
- 流和資料報文套接字
- 網路程式設計
- POSIX 執行緒
- 信號量

本書在實際情境中呈現理論,並詳細解釋了常見的 Unix 程式,如 `who`、`ls`、`pwd`、`sh` 和 `httpd`。每個範例都以程式的功能和使用方式的描述開始。接著,文本討論了其背後的原理和機制,然後利用這些概念撰寫程式的版本。

本書旨在促進學習。章節摘要、易於記憶的類比、實驗、探索和各種練習幫助讀者理解並將 Unix 作為一個整合的、邏輯的整體進行程式設計。

書中的材料適用於所有版本的 Unix 和 Linux。本書假設讀者已了解 C 程式語言並熟悉現代作業系統。本書適合作為課堂教材、自學和參考,並提供了對學生、Unix 程式設計師和系統管理員至關重要的資訊的全面覆蓋。

目錄

1. Unix 系統程式設計:全貌。
2. 使用者、檔案與手冊:誰是第一。
3. 目錄與檔案屬性:透過 ls 觀察。
4. 專注於檔案系統:撰寫 pwd。
5. 連接控制:研究 stty。
6. 為人類程式設計:終端控制與信號。
7. 事件驅動程式設計:撰寫一個電子遊戲。
8. 程序與程式:研究 sh。
9. 可程式化的 Shell:Shell 變數與環境。
10. I/O 重定向與管道。
11. 連接近端與遠端的程序:伺服器與套接字。
12. 連接與協議:撰寫一個網頁伺服器。
13. 使用資料報文程式設計:一個授權伺服器。
14. 執行緒:並行功能。
15. IPC 總結:我們可以交談嗎?