注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)Linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)(原書(shū)第3版·典藏版)

Linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)(原書(shū)第3版·典藏版)

Linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)(原書(shū)第3版·典藏版)

定 價(jià):¥89.00

作 者: [美]羅伯特·洛夫
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787111748793 出版時(shí)間: 2024-05-01 包裝: 平裝-膠訂
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)基于Linux 2.6.34內(nèi)核詳細(xì)介紹了Linux內(nèi)核系統(tǒng),覆蓋了從核心內(nèi)核系統(tǒng)的應(yīng)用到內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)等各方面內(nèi)容。主要內(nèi)容包括:進(jìn)程管理、進(jìn)程調(diào)度、時(shí)間管理和定時(shí)器、系統(tǒng)調(diào)用接口、內(nèi)存尋址、內(nèi)存管理和頁(yè)緩存、VFS、內(nèi)核同步以及調(diào)試技術(shù)等。同時(shí)本書(shū)也涵蓋了Linux 2.6內(nèi)核中頗具特色的內(nèi)容,包括CFS調(diào)度程序、搶占式內(nèi)核、塊I/O層以及I/O調(diào)度程序等。本書(shū)采用理論與實(shí)踐相結(jié)合的路線(xiàn),能夠帶領(lǐng)讀者快速走進(jìn)Linux內(nèi)核世界,真正開(kāi)發(fā)內(nèi)核代碼。本書(shū)適合作為高等院校操作系統(tǒng)課程的教材或參考書(shū),也可供相關(guān)技術(shù)人員參考。

作者簡(jiǎn)介

  羅伯特·洛夫(Robert Love)資深的開(kāi)源軟件開(kāi)發(fā)者,很早就開(kāi)始使用Linux。目前是谷歌云的高級(jí)工程總監(jiān),在那里構(gòu)建了全球范圍的網(wǎng)絡(luò)產(chǎn)品。在此之前,他曾是Toast的工程副總裁,開(kāi)發(fā)Android移動(dòng)平臺(tái)內(nèi)核的團(tuán)隊(duì)成員,Novell公司Linux桌面系統(tǒng)首席架構(gòu)師。 他參與的內(nèi)核項(xiàng)目包括搶占式內(nèi)核、進(jìn)程調(diào)度器、內(nèi)核事件層、通知機(jī)制、VM改進(jìn),以及設(shè)備驅(qū)動(dòng)程序。他曾是Linux Journal雜志的編輯。除本書(shū)之外,他還著有Linux System Programming和Linux in a Nutshell。

圖書(shū)目錄

目  錄
譯者序
序 言
前 言
第3版致謝
作者簡(jiǎn)介
第1章 Linux內(nèi)核簡(jiǎn)介1
1.1 UNIX的歷史1
1.2 追尋Linus足跡:Linux簡(jiǎn)介2
1.3 操作系統(tǒng)和內(nèi)核簡(jiǎn)介3
1.4 Linux內(nèi)核和傳統(tǒng)UNIX內(nèi)核的
比較5
1.5 Linux內(nèi)核版本7
1.6 Linux內(nèi)核開(kāi)發(fā)者社區(qū)8
1.7 小結(jié)8
第2章 從內(nèi)核出發(fā)10
2.1 獲取內(nèi)核源碼10
2.1.1 使用Git10
2.1.2 安裝內(nèi)核源代碼10
2.1.3 使用補(bǔ)丁11
2.2 內(nèi)核源碼樹(shù)11
2.3 編譯內(nèi)核12
2.3.1 配置內(nèi)核12
2.3.2 減少編譯的垃圾信息14
2.3.3 衍生多個(gè)編譯作業(yè) 14
2.3.4 安裝新內(nèi)核14
2.4 內(nèi)核開(kāi)發(fā)的特點(diǎn)15
2.4.1 無(wú)libc庫(kù)抑或無(wú)標(biāo)準(zhǔn)頭文件15
2.4.2 GNU C16
2.4.3 沒(méi)有內(nèi)存保護(hù)機(jī)制18
2.4.4 不要輕易在內(nèi)核中使用浮點(diǎn)數(shù)18
2.4.5 容積小而固定的棧18
2.4.6 同步和并發(fā)18
2.4.7 可移植性的重要性19
2.5 小結(jié)19
第3章 進(jìn)程管理20
3.1 進(jìn)程20
3.2 進(jìn)程描述符及任務(wù)結(jié)構(gòu) 21
3.2.1 分配進(jìn)程描述符22
3.2.2 進(jìn)程描述符的存放23
3.2.3 進(jìn)程狀態(tài)23
3.2.4 設(shè)置當(dāng)前進(jìn)程狀態(tài)25
3.2.5 進(jìn)程上下文25
3.2.6 進(jìn)程家族樹(shù)25
3.3 進(jìn)程創(chuàng)建26
3.3.1 寫(xiě)時(shí)拷貝27
3.3.2 fork()27
3.3.3 vfork()28
3.4 線(xiàn)程在Linux中的實(shí)現(xiàn)28
3.4.1 創(chuàng)建線(xiàn)程29
3.4.2 內(nèi)核線(xiàn)程30
3.5 進(jìn)程終結(jié)31
3.5.1 刪除進(jìn)程描述符32
3.5.2 孤兒進(jìn)程造成的進(jìn)退維谷32
3.6 小結(jié)34
第4章 進(jìn)程調(diào)度35
4.1 多任務(wù)35
4.2 Linux 的進(jìn)程調(diào)度36
4.3 策略36
4.3.1 I/O消耗型和處理器消耗型的
進(jìn)程36
4.3.2 進(jìn)程優(yōu)先級(jí)37
4.3.3 時(shí)間片38
4.3.4 調(diào)度策略的活動(dòng)38
4.4 Linux調(diào)度算法39
4.4.1 調(diào)度器類(lèi)39
4.4.2 UNIX 系統(tǒng)中的進(jìn)程調(diào)度40
4.4.3 公平調(diào)度41
4.5 Linux調(diào)度的實(shí)現(xiàn)42
4.5.1 時(shí)間記賬42
4.5.2 進(jìn)程選擇44
4.5.3 調(diào)度器入口48
4.5.4 睡眠和喚醒49
4.6 搶占和上下文切換51
4.6.1 用戶(hù)搶占53
4.6.2 內(nèi)核搶占53
4.7 實(shí)時(shí)調(diào)度策略54
4.8 與調(diào)度相關(guān)的系統(tǒng)調(diào)用54
4.8.1 與調(diào)度策略和優(yōu)先級(jí)相關(guān)的
系統(tǒng)調(diào)用55
4.8.2 與處理器綁定有關(guān)的系統(tǒng)調(diào)用55
4.8.3 放棄處理器時(shí)間56
4.9 小結(jié)56
第5章 系統(tǒng)調(diào)用57
5.1 與內(nèi)核通信57
5.2 API、POSIX和C庫(kù)57
5.3 系統(tǒng)調(diào)用58
5.3.1 系統(tǒng)調(diào)用號(hào)59
5.3.2 系統(tǒng)調(diào)用的性能59
5.4 系統(tǒng)調(diào)用處理程序60
5.4.1 指定恰當(dāng)?shù)南到y(tǒng)調(diào)用60
5.4.2 參數(shù)傳遞60
5.5 系統(tǒng)調(diào)用的實(shí)現(xiàn)61
5.5.1 實(shí)現(xiàn)系統(tǒng)調(diào)用61
5.5.2 參數(shù)驗(yàn)證62
5.6 系統(tǒng)調(diào)用上下文64
5.6.1 綁定一個(gè)系統(tǒng)調(diào)用的最后步驟65
5.6.2 從用戶(hù)空間訪(fǎng)問(wèn)系統(tǒng)調(diào)用67
5.6.3 為什么不通過(guò)系統(tǒng)調(diào)用的
方式實(shí)現(xiàn)68
5.7 小結(jié)68
第6章 內(nèi)核數(shù)據(jù)結(jié)構(gòu)69
6.1 鏈表69
6.1.1 單向鏈表和雙向鏈表69
6.1.2 環(huán)形鏈表70
6.1.3 沿鏈表移動(dòng)71
6.1.4 Linux 內(nèi)核中的實(shí)現(xiàn)71
6.1.5 操作鏈表73
6.1.6 遍歷鏈表75
6.2 隊(duì)列78
6.2.1 kfifo79
6.2.2 創(chuàng)建隊(duì)列79
6.2.3 推入隊(duì)列數(shù)據(jù)79
6.2.4 摘取隊(duì)列數(shù)據(jù)80
6.2.5 獲取隊(duì)列長(zhǎng)度80
6.2.6 重置和撤銷(xiāo)隊(duì)列80
6.2.7 隊(duì)列使用舉例 81
6.3 映射 81
6.3.1 初始化一個(gè)idr82
6.3.2 分配一個(gè)新的UID82
6.3.3 查找UID83
6.3.4 刪除UID84
6.3.5 撤銷(xiāo)idr84
6.4 二叉樹(shù)84
6.4.1 二叉搜索樹(shù)84
6.4.2 自平衡二叉搜索樹(shù) 85
6.5 數(shù)據(jù)結(jié)構(gòu)以及選擇 87
6.6 算法復(fù)雜度88
6.6.1 算法88
6.6.2 大o 符號(hào)88
6.6.3 大θ符號(hào)89
6.6.4 時(shí)間復(fù)雜度89
6.7 小結(jié) 90
第7章 中斷和中斷處理91
7.1 中斷91
7.2 中斷處理程序92
7.3 上半部與下半部的對(duì)比93
7.4 注冊(cè)中斷處理程序93
7.4.1 中斷處理程序標(biāo)志94
7.4.2 一個(gè)中斷例子95
7.4.3 釋放中斷處理程序95
7.5 編寫(xiě)中斷處理程序96
7.5.1 共享的中斷處理程序97
7.5.2 中斷處理程序?qū)嵗?7
7.6 中斷上下文99
7.7 中斷處理機(jī)制的實(shí)現(xiàn)100
7.8 /proc/interrupts102
7.9 中斷控制103
7.9.1 禁止和激活中斷103
7.9.2 禁止指定中斷線(xiàn)105
7.9.3 中斷系統(tǒng)的狀態(tài)105
7.10 小結(jié)106
第8章 下半部和推后執(zhí)行的
工作107
8.1 下半部107
8.1.1 為什么要用下半部108
8.1.2 下半部的環(huán)境108
8.2 軟中斷110
8.2.1 軟中斷的實(shí)現(xiàn)111
8.2.2 使用軟中斷113
8.3 tas

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)