<內容簡介>
Linux與UNIX®系統程式開發經典
完整涵蓋Linux API:函式、介面、程式設計範例
《The Linux Programming Interface》是Linux與UNIX系統程式開發大全,幾乎涵蓋了全部Linux與UNIX系統程式會用到的API。在這本重量級著作中,Linux程式開發專家Michael Kerrisk以清晰的說明及完整的範例程式,提供完善的系統呼叫(system call)與函式庫函式(library function)等系統程式開發技術。書中囊括500個以上的system call與library function,提供200個以上程式範例,88個表格與115張圖。
讀者將可學到下列技術:
‧高效率的檔案
‧使用訊號(signal)、時鐘(clock)與計時器(timer)
‧建立行程(process)與可執行程式
‧設計安全可靠的程式
‧以POSIX多執行緒設計多工程式
‧設計與使用共享函式庫
‧以管線(pipe)、訊息佇列(message queue)、共享記憶體(shared memory)與號誌(semaphore)達成行程間的通訊(IPC)
‧基於socket API設計網路程式
本書涵蓋豐富的Linux特有的功能,包含epoll、inotify與/proc檔案系統,尤其極為重視與UNIX標準的相容度(POSIX.1-2001/SUSv3與POSIX.1-2008/SUSv4),使本書可完全適合其他UNIX平台的開發者參考閱讀。
本書是目前探討Linux與UNIX API涵蓋面最廣泛、最完整的作品,作者期許它能成為一部經典。
本書涵蓋目前UNIX標準(POSIX.1-2001/SUSv3與POSIX.1-2008/SUSv4)
<章節目錄>
Chapter 1 淺談歷史與標準
Chapter 2 基本概念
Chapter 3 系統程式設計概念
Chapter 4 檔案 I/O:通用的 I/O 模型
Chapter 5 檔案 I/O:深入探討
Chapter 6 行程(Process)
Chapter 7 記憶體配置(Memory Allocation)
Chapter 8 使用者與群組
Chapter 9 行程憑證(process credential)
Chapter 10 時間
Chapter 11 系統限制與選項
Chapter 12 系統與行程資訊
Chapter 13 檔案 I/O 緩衝區
Chapter 14 檔案系統
Chapter 15 檔案屬性(File Attribute)
Chapter 16 擴充屬性(Extended Attribute)
Chapter 17 存取控制清單(Access Control List)
Chapter 18 目錄與連結(Directory and Link)
Chapter 19 監控檔案事件
Chapter 20 訊號(signal):基本概念
Chapter 21 訊號(signal):訊號處理常式(signal handler)
Chapter 22 訊號(signal):進階功能
Chapter 23 計時器(timer)與休眠(sleep)
Chapter 24 建立行程
Chapter 25 終止行程
Chapter 26 監控子行程
Chapter 27 執行程式
Chapter 28 深入探討建立行程與執行程式
Chapter 29 執行緒(thread):簡介
Chapter 30 執行緒:執行緒同步
Chapter 31 執行緒:執行緒安全(thread safety)與個別執行緒儲存空間
Chapter 32 結束執行緒
Chapter 33 執行緒:深入探討