深入Linux Kernel程式設計:kernel內部原理、模組開發與同步機制(第二版)
NT$ 980
專為Linux kernel新手程式設計師與希望深化核心開發能力的工程師所撰寫!是一本兼具系統性與實務導向的程式設計指南。內容循序漸進,從基礎概念出發,引領讀者深入Linux kernel的設計思維與運作核心。
本書以6.1長期支援(LTS,Long-Term Support)的Linux kernel為基礎,該版本具備高度穩定性,並廣泛應用於實務環境中。此外,Civil Infrastructure Project已承諾將6.1超長期支援(SLTS,Super LTS)kernel維護至2033年8月,使本書在未來多年內仍具高度實務與參考價值。
你將從學習如何由原始碼編譯(build)kernel開始,逐步學習如何運用kernel強大的可載入核心模組(LKM,Loadable Kernel Module)架構,撰寫並管理你的第一個kernel模組。在奠定模組開發基礎後,將進一步帶你深入核心內部關鍵主題,包括Linux kernel架構、記憶體管理與CPU(task)排程等重要機制。
最後,本書將聚焦於kernel開發中極為關鍵的——平行性(concurrency),深入說明各種同步與上鎖(locking)技術的設計理念與實務應用,包含mutex、spinlock、atomic/refcount運算子、rw-spinlock,以及per-CPU與RCU等lock-free技術,協助你撰寫更安全、穩定且可擴充的kernel程式碼。
閱讀完本書後,你將能以更宏觀且結構化的視角理解Linux kernel與kernel模組的運作方式,並具備實際應用於真實專案與產品中的能力。內容包括:
■ 從原始碼設定並編譯6.1 LTS Linux kernel
■ 為6.x kernel設計高品質、可維護的模組化程式碼(LKM架構)
■ 探索現代Linux kernel架構設計
■ 掌握kernel內記憶體管理的關鍵細節
■ 理解並使用各種動態kernel記憶體alloc/dealloc API
■ 深入解析kernel內CPU排程機制,包含cgroups v2
■ 洞悉kernel平行性(concurrency)問題與常見陷阱
■ 正確運用關鍵的kernel同步原語(synchronization primitives)
【作者簡介】
Kaiwan長期深耕Linux系統程式設計,技術橫跨Bash腳本、C語言使用者空間程式開發,以及作業系統層級的Linux kernel內部機制開發與除錯,並參與多項商業與開源專案。
他曾為Linux主線核心提交裝置驅動程式,亦在GitHub上發起多個開源專案。目前專注於Linux kernel強化與安全領域。
二十多年來,他持續培訓工程師,教授Linux作業系統原理與安全、穩定程式設計實務,致力於培養具備紮實核心能力的開發者。
出版社:?峰資訊股份有限公司
作者:Kaiwan N. Billimoria
ISBN/EAN:9786264252904
分享給朋友
同類別產品
NT$ 980