发表于2024-12-25
包郵 Linux內核設計與實現(原書第3版)|198071 pdf epub mobi txt 電子書 下載 2024
書[0名0]: | Linux內核設計與實現(原書[0第0]3版)|198071 |
圖書定價: | 69元 |
圖書作者: | (美)Robert Love |
齣版社: | [1機1] 械工業齣版社 |
齣版日期: | 2011/6/1 0:00:00 |
ISBN號: | 9787111338291 |
開本: | 16開 |
頁數: | 335 |
版次: | 3-1 |
作者簡介 |
Robert Love是一位資深的開源社區達人,很早就開始使用Linux。目前他是Google公司高級軟件工程師,是開發Android移動平颱內核的團隊成員;他曾在[0No0]vell公司任職Linux桌麵係統的[0首0]席架構師;他之前也曾是MontaVista和Ximain公司的內核開發工程師。他參與的內核項目包括搶占式內核、進程調度器、內核事件層、通[0知0] [1機1] 製、VM改進,以及設備驅動程序。他是《Linux journal》雜誌的編輯。另外他還著有《Linux System Programming》和《Linux in a Nutshell》。 陳莉君,西安郵電[0學0]院教授,十多年來一直緻力於推動Linux在中[0國0]的發展,多年從事Linux內核的教[0學0]和研究,並積[0極0]跟蹤Linux內核的發展動嚮,對Linux內核版本的不斷演化有著深刻的理解。著譯作[0品0]有《Linux操作係統原理與應用》、《Linux操作係統內核分析》、《深入分析Linux內核源代碼》、《深入理解Linux內核》和《Linux內核編程》等。 |
內容簡介 |
《Linux內核設計與實現(原書[0第0]3版)》基於Linux 2.6.34內核詳細介紹瞭Linux內核係統,覆蓋瞭從核心內核係統的應用到內核設計與實現等各方麵內容。主要內容包括:進程管理、進程調度、時間管理和定時器、係統調用接口、內存尋址、內存管理和頁緩存、VFS、內核同步以及調試技術等。同時本書也涵蓋瞭Linux 2.6內核中頗具特色的內容,包括CFS調度程序、搶占式內核、塊I/O層以及I/O調度程序等。《Linux內核設計與實現(原書[0第0]3版)》采用理論與實踐相結閤的路綫,能夠帶[0領0]讀者快速走進Linux內核世界,真正開發內核代碼。 《Linux內核設計與實現(原書[0第0]3版)》適閤作為高等院校操作係統課程的教材或參考書,也可供相關技術人員參考。 |
目錄 |
《Linux內核設計與實現(原書[0第0]3版)》 譯者序 序言 前言 作者簡介 [0第0]1章 Linux內核簡介1 1.1 Unix的曆[0史0]1 1.2 追尋Linus足跡:Linux簡介2 1.3 操作係統和內核簡介3 1.4 Linux內核和傳統Unix內核的比較5 1.5 Linux內核版本7 1.6 Linux內核開發者社區8 1.7 小結8 [0第0]2章 從內核齣發10 2.1 獲取內核源碼10 2.1.1 使用Git10 2.1.1 安裝內核源代碼10 2.1.3 使用補丁11 2.2 內核源碼樹11 2.3 編譯內核12 2.3.1 配置內核12 2.3.2 減少編譯的垃圾信息14 2.3.3 衍生多個編譯作業 14 2.3.4 安裝[親斤]內核14 2.4 內核開發的特點15 2.4.1 無libc庫抑或無標準頭文件15 2.4.2 GNU C16 2.4.3 沒有內存保護 [1機1] 製18 2.4.4 不要輕易在內核中使用浮點數18 2.4.5 容積小而固定的棧18 2.4.6 同步和並發18 2.4.7 可移植性的重要性19 2.5 小結19 [0第0]3章 進程管理20 3.1 進程20 3.2 進程描述符及任務結構 21 3.2.1 分配進程描述符22 3.2.2 進程描述符的存放23 3.2.3 進程狀態23 3.2.4 設置[0當0]前進程狀態25 3.2.5 進程上下文25 3.2.6 進程傢族樹25 3.3 進程創建26 3.3.1 寫時拷貝27 3.3.2 fork()27 3.3.3 vfork()28 3.4 綫程在Linux中的實現28 3.4.1 創建綫程29 3.4.2 內核綫程30 3.5 進程終結31 3.5.1 刪除進程描述符32 3.5.2 孤兒進程造成的進退維榖32 3.6 小結34 [0第0]4章 進程調度35 4.1 多任務35 4.2 Linux 的進程調度36 4.3 策略36 4.3.1 I/O消耗型和處理器消耗型的進程36 4.3.2 進程[0優0]先級37 4.3.3 時間片38 4.3.4 調度策略的活動38 4.4 Linux調度算[0法0]39 4.4.1 調度器類39 4.4.2 Unix 係統中的進程調度40 4.4.3 公平調度41 4.5 Linux調度的實現42 4.5.1 時間記賬42 4.5.2 進程選擇44 4.5.3 調度器入口48 4.5.4 睡眠和喚醒49 4.6 搶占和上下文切換51 4.6.1 用戶搶占53 4.6.2 內核搶占53 4.7 實時調度策略54 4.8 與調度相關的係統調用54 4.8.1 與調度策略和[0優0]先級相關的係統調用55 4.8.2 與處理器綁定有關的係統調用55 4.8.3 放棄處理器時間56 4.9 小結56 [0第0]5章 係統調用57 5.1 與內核通信57 5.2 API、 [P1O1S] IX和C庫57 5.3 係統調用58 5.3.1 係統調用號59 5.3.2 係統調用的性能59 5.4 係統調用處理程序60 5.4.1 指定恰[0當0]的係統調用60 5.4.2 參數傳遞60 5.5 係統調用的實現61 5.5.1 實現係統調用61 5.5.2 參數驗證62 5.6 係統調用上下文64 5.6.1 綁定一個係統調用的[z1u1i]後步驟65 5.6.2 從用戶空間訪問係統調用67 5.6.3 為什麼不通過係統調用的方式實現68 5.7 小結68 [0第0]6章 內核數據結構69 6.1 鏈錶69 6.1.1 單嚮鏈錶和[0[0雙0]0]嚮鏈錶69 6.1.2 環形鏈錶70 6.1.3 沿鏈錶移動71 6.1.4 Linux 內核中的實現71 6.1.5 操作鏈錶73 6.1.6 遍曆鏈錶75 6.2 隊列78 6.2.1 kfifo79 6.2.2 創建隊列79 6.2.3 推入隊列數據79 6.2.4 摘取隊列數據80 6.2.5 獲取隊列長度80 6.2.6 重置和撤銷隊列80 6.2.7 隊列使用舉例 81 6.3 映射 81 6.3.1 初始化一個idr82 6.3.2 分配一個[親斤]的UID82 6.3.3 查找UID83 6.3.4 刪除UID84 6.3.5 撤銷idr84 6.4 二叉樹84 6.4.1 二叉搜索樹84 6.4.2 自平衡二叉搜索樹 85 6.5 數據結構以及選擇 87 6.6 算[0法0]復雜度88 6.6.1 算[0法0]88 6.6.2 [0大0]o 符號88 6.6.3 [0大0]θ符號89 6.6.4 時間復雜度89 6.7 小結 90 [0第0]7章 中斷和中斷處理91 7.1 中斷91 7.2 中斷處理程序92 7.3 上半部與下半部的對比93 7.4 注冊中斷處理程序93 7.4.1 中斷處理程序標誌94 7.4.2 一個中斷例子95 7.4.3 釋放中斷處理程序95 7.5 編寫中斷處理程序96 7.5.1 共享的中斷處理程序97 7.5.2 中斷處理程序實例97 7.6 中斷上下文99 7.7 中斷處理 [1機1] 製的實現100 7.8 /proc/interrupts102 7.9 中斷控製103 7.9.1 禁止和激活中斷103 7.9.2 禁止指定中斷綫105 7.9.3 中斷係統的狀態105 7.10 小結106 [0第0]8章 下半部和推後執行的工作107 8.1 下半部107 8.1.1 為什麼要用下半部108 8.1.2 下半部的環境108 8.2 軟中斷110 8.2.1 軟中斷的實現111 8.2.2 使用軟中斷113 8.3 tasklet114 8.3.1 tasklet的實現114 8.3.2 使用tasklet116 8.3.3 老的BH [1機1] 製119 8.4 工作隊列120 8.4.1 工作隊列的實現121 8.4.2 使用工作隊列124 8.4.3 老的任務隊列 [1機1] 製126 8.5 下半部 [1機1] 製的選擇127 8.6 在下半部之間加鎖128 8.7 禁止下半部128 8.8 小結129 [0第0]9章 內核同步介紹131 9.1 臨界區和競爭條件131 9.1.1 為什麼我們需要保護132 9.1.2 單個變量133 9.2 加鎖134 9.2.1 造成並發執行的原因135 9.2.2 瞭解要保護些什麼136 9.3 死鎖137 9.4 爭用和擴展性138 9.5 小結140 [0第0]10章 內核同步方[0法0]141 10.1 原子操作141 10.1.1 原子整數操作142 10.1.2 64位原子操作144 10.1.3 原子位操作145 10.2 自鏇鎖147 10.2.1 自鏇鎖方[0法0]148 10.2.2 其他針對自鏇鎖的操作149 10.2.3 自鏇鎖和下半部150 10.3 讀-寫自鏇鎖150 10.4 信號量152 10.4.1 計數信號量和二值信號量153 10.4.2 創建和初始化信號量154 10.4.3 使用信號量154 10.5 讀-寫信號量155 10.6 互斥體156 10.6.1 信號量和互斥體158 10.6.2 自鏇鎖和互斥體158 10.7 完成變量158 10.8 BLK:[0大0]內核鎖159 10.9 順序鎖160 10.10 禁止搶占161 10.11 順序和屏障162 10.12 小結165 [0第0]11章 定時器和時間管理166 11.1 內核中的時間概念166 11.2 節拍率:HZ167 11.2.1 理想的HZ值168 11.2.2 高HZ的[0優0]勢169 11.2.3 高HZ的劣勢169 11.3 jiffies170 11.3.1 jiffies的內部錶示171 11.3.2 jiffies 的迴繞172 11.3.3 用戶空間和HZ173 11.4 硬時鍾和定時器174 11.4.1 實時時鍾174 11.4.2 係統定時器174 11.5 時鍾中斷處理程序174 11.6 實際時間176 11.7 定時器178 11.7.1 使用定時器178 11.7.2 定時器競爭條件180 11.7.3 實現定時器180 11.8 延遲執行181 11.8.1 忙等待181 11.8.2 短延遲182 11.8.3 schedule_timeout()183 11.9 小結185 [0第0]12章 內存管理186 12.1 頁186 12.2 區187 12.3 獲得頁189 12.3.1 獲得填充為0的頁190 12.3.2 釋放頁191 12.4 km[0all0]oc()191 12.4.1 gfp_mask標誌192 12.4.2 kfree()195 12.5 vm[0all0]oc()196 12.6 slab層197 12.6.1 slab層的設計198 12.6.2 slab分配器的接口200 12.7 在棧上的靜態分配203 12.7.1 單頁內核棧203 12.7.2 在棧上光明正[0大0]地工作203 12.8 高端內存的映射204 12.8.1 映射204 12.8.2 臨時映射204 12.9 每個CPU的分配205 12.10 [親斤]的每個CPU接口206 12.10.1 編譯時的每個CPU數據206 12.10.2 運行時的每個CPU數據207 12.11 使用每個CPU數據的原因208 12.12 分配函數的選擇209 12.13 小結209 [0第0]13章 虛擬文件係統210 13.1 通 包郵 Linux內核設計與實現(原書第3版)|198071 下載 mobi epub pdf txt 電子書 包郵 Linux內核設計與實現(原書第3版)|198071 pdf epub mobi txt 電子書 下載 用戶評價
評分
評分
評分
評分
評分
評分
評分
評分
評分
類似圖書 點擊查看全場最低價
包郵 Linux內核設計與實現(原書第3版)|198071 pdf epub mobi txt 電子書 下載 相關圖書
|