注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)深入Linux內(nèi)核架構(gòu)與底層原理(第2版)

深入Linux內(nèi)核架構(gòu)與底層原理(第2版)

深入Linux內(nèi)核架構(gòu)與底層原理(第2版)

定 價(jià):¥139.00

作 者: 劉京洋 著
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787121436895 出版時(shí)間: 2022-06-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 568 字?jǐn)?shù):  

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

  本書主要描述Linux系統(tǒng)的總體框架和設(shè)計(jì)思想,包含很多可以直接操作的實(shí)例。編寫本書的目的是希望讀者對(duì)Linux系統(tǒng)背后的邏輯有一個(gè)全面的了解。本書對(duì)比較核心且常用的技術(shù)點(diǎn)有更加深入的解釋,對(duì)實(shí)際使用Linux系統(tǒng)工作大有裨益,同時(shí),選擇重點(diǎn)的方向進(jìn)行源碼級(jí)深度分析,包含大量的案例,而且增加了與Windows同類操作系統(tǒng)的對(duì)比,涉及Fuchsia?OS和Android系統(tǒng)的一些實(shí)現(xiàn),對(duì)操作系統(tǒng)的描述更清晰。 本書適合Linux系統(tǒng)開(kāi)發(fā)人員、嵌入式系統(tǒng)開(kāi)發(fā)人員閱讀,也可供計(jì)算機(jī)相關(guān)專業(yè)的師生閱讀。

作者簡(jiǎn)介

  劉京洋,從事Linux內(nèi)核相關(guān)研發(fā)十余年,工作內(nèi)容包括對(duì)內(nèi)核子系統(tǒng)的實(shí)際產(chǎn)業(yè)應(yīng)用。尤其擅長(zhǎng)網(wǎng)絡(luò)研發(fā)與性能調(diào)優(yōu),對(duì)Linux之外的操作系統(tǒng)同樣興趣濃厚。目前,在騰訊前沿技術(shù)中心從事云游戲研發(fā)工作。

圖書目錄

第1章 操作系統(tǒng)總覽\t1
1.1 操作系統(tǒng)簡(jiǎn)介\t1
1.2 如何形成一個(gè)內(nèi)核\t4
1.3 主要操作系統(tǒng)與Linux的對(duì)比\t6
1.3.1 Linux和Android\t6
1.3.2 Windows下Linux運(yùn)行環(huán)境的發(fā)展\t8
1.3.3 Fuchsia OS與Windows、Linux的對(duì)比\t9
第2章 系統(tǒng)結(jié)構(gòu)\t15
2.1 Linux內(nèi)核整體結(jié)構(gòu)\t15
2.1.1 內(nèi)核模塊\t17
2.1.2 內(nèi)核符號(hào)表\t23
2.2 Linux內(nèi)核數(shù)據(jù)結(jié)構(gòu)\t25
2.2.1 鏈表與哈希表\t25
2.2.2 雙向鏈表\t26
2.3 hlist\t28
2.3.1 llist\t34
2.3.2 樹(shù)與IDR\t37
2.3.3 xarray\t38
第3章 鎖與系統(tǒng)調(diào)用\t46
3.1 原子操作\t47
3.1.1 內(nèi)存一致性\t51
3.1.2 原子類型定義\t54
3.1.3 cmpxchg實(shí)現(xiàn)\t56
3.2 引用計(jì)數(shù)\t60
3.3 自旋鎖\t65
自旋鎖的性能\t77
3.4 讀寫鎖與順序鎖\t79
3.5 信號(hào)量\t82
3.6 讀寫信號(hào)量\t86
3.6.1 獲得讀鎖\t87
3.6.2 鎖狀態(tài)與鎖交接\t90
3.6.3 鎖持有\(zhòng)t92
3.6.4 等待鏈表\t94
3.6.5 讀鎖慢速路徑\t99
3.7 互斥鎖\t103
3.8 RCU鎖\t110
3.8.1 RCU鎖基本接口\t114
3.8.2 grace period等待\t115
3.8.3 SRCU\t117
3.8.4 RCU鎖、讀寫鎖與順序鎖對(duì)比\t118
3.8.5 hlist中的RCU鎖\t119
3.8.6 reuseport中的RCU鎖\t121
3.9 引用計(jì)數(shù)\t123
percpu-ref\t124
第4章 信號(hào)、中斷與系統(tǒng)調(diào)用\t129
4.1 信號(hào)\t129
4.1.1 Linux信號(hào)處理機(jī)制的設(shè)計(jì)\t129
4.1.2 Windows的Event語(yǔ)義設(shè)計(jì)\t139
4.2 中斷\t141
4.2.1 IDT(中斷描述符表)\t141
4.2.2 IPI中斷\t148
4.3 系統(tǒng)調(diào)用\t156
4.3.1 系統(tǒng)調(diào)用原理\t156
4.3.2 vsyscall與VDSO\t163
4.3.3 系統(tǒng)調(diào)用截?cái)郳t168
第5章 Linux系統(tǒng)的啟動(dòng)與進(jìn)程\t171
5.1 Linux啟動(dòng)過(guò)程的組件\t171
5.1.1 啟動(dòng)過(guò)程相關(guān)組件\t171
5.1.2 最小系統(tǒng)的制作和啟動(dòng)\t182
5.2 內(nèi)核啟動(dòng)流程:EFI stub\t183
5.3 進(jìn)程\t199
5.3.1 進(jìn)程概述\t199
5.3.2 進(jìn)程內(nèi)存和PID\t201
5.3.3 進(jìn)程生命周期\t205
第6章 調(diào)度\t220
6.1 任務(wù)調(diào)度\t220
6.1.1 調(diào)度優(yōu)先級(jí)\t220
6.1.2 上下文切換\t223
6.1.3 運(yùn)行隊(duì)列與調(diào)度類\t228
6.1.4 調(diào)度域、調(diào)度組與調(diào)度實(shí)體\t230
6.1.5 TTWU(喚醒)\t239
6.2 時(shí)鐘\t244
6.2.1 時(shí)鐘概念\t244
6.2.2 計(jì)時(shí)器與定時(shí)器\t248
6.3 Futex系統(tǒng)調(diào)用\t256
6.4 C-State\t263
第7章 內(nèi)存管理\t275
7.1 地址空間\t275
7.1.1 64位Linux地址空間\t275
7.1.2 32位Linux地址空間\t276
7.2 尋址\t280
7.2.1 64位下的尋址\t280
7.2.2 Intel的硬件四級(jí)尋址過(guò)程\t284
7.2.3 操作系統(tǒng)的頁(yè)狀態(tài)和權(quán)限控制\t291
7.2.4 頁(yè)框回收算法\t293
7.2.5 段寄存器\t301
7.3 堆內(nèi)存管理\t306
7.3.1 用戶空間與內(nèi)核空間的堆內(nèi)存管理\t306
7.3.2 Buddy思想與Slab思想\t307
7.3.3 內(nèi)存回收(PFRA)\t314
7.3.4 BDI\t316
第8章 存儲(chǔ)\t319
8.1 VFS\t319
8.1.1 文件句柄與文件描述符表\t319
8.1.2 _alloc_fd、fd_install、dup2與close_on_exec\t322
8.1.3 open系統(tǒng)調(diào)用\t325
8.1.4 flock文件鎖與文件內(nèi)容鎖\t328
8.2 通用塊層\t339
8.2.1 通用塊層功能概覽\t339
8.2.2 bio和bio_set\t342
8.2.3 request和request_queue\t343
8.2.4 電梯算法\t345
8.3 緩存層\t354
8.3.1 Linux與Windows在緩存設(shè)計(jì)上的不同\t354
8.3.2 Linux下的緩存機(jī)制\t355
8.4 文件系統(tǒng)與Ext4\t362
8.4.1 Linux文件系統(tǒng)的特性與框架\t362
8.4.2 文件系統(tǒng)的種類\t367
8.4.3 文件系統(tǒng)的抽象:VFS\t372
8.4.4 Ext4文件系統(tǒng)實(shí)踐\t375
8.5 預(yù)讀機(jī)制\t383
8.5.1 預(yù)讀機(jī)制框架\t383
8.5.2 預(yù)讀算法\t388
第9章 套接字(socket)\t393
9.1 socket概覽\t393
9.1.1 socket類型與接口\t394
9.1.2 Linux socket連接模型\t397
9.1.3 Linux socket的鎖\t398
9.1.4 epoll\t400
9.2 Netlink\t402
9.2.1 Netlink消息格式\t402
9.2.2 Netlink功能模塊\t406
9.2.3 genetlink的使用\t408
9.2.4 inet_diag模塊\t410
9.2.5 RTNETLINK\t414
9.3 BPF與eBPF\t418
9.3.1 BPF\t419
9.3.2 eBPF\t422
第10章 網(wǎng)絡(luò)\t430
10.1 網(wǎng)絡(luò)架構(gòu)\t430
10.2 IP\t434
10.2.1 路由條目的意義\t434
10.2.2 IP管理\t437
10.2.3 IP隧道\t439
10.3 TCP\t446
10.3.1 TCP的無(wú)損特性\t446
10.3.2 TCP的連接狀態(tài)\t447
10.3.3 TCP擁塞控制\t452
10.4 負(fù)載均衡\t460
10.4.1 負(fù)載均衡的核心技術(shù)點(diǎn)\t460
10.4.2 四層負(fù)載均衡常見(jiàn)架構(gòu)\t461
10.4.3 一致性哈希和分布式哈希\t463
10.5 網(wǎng)絡(luò)服務(wù)質(zhì)量與安全性\t465
10.5.1 TCP安全性\t465
10.5.2 QoS\t469
10.5.3 NAT\t472
10.6 netfilter\t475
第11章 設(shè)備管理\t479
11.1 設(shè)備模型\t479
11.1.1 sys文件系統(tǒng)\t479
11.1.2 設(shè)備變化通知用戶端\t484
11.1.3 設(shè)備類型\t485
11.2 tty子系統(tǒng)\t491
11.2.1 tty框架與ttyS硬件\t491
11.2.2 terminal硬件\t493
11.2.3 tty結(jié)構(gòu)\t494
11.2.4 getty、login與shell\t496
11.2.5 /dev/ptmx與/dev/pts/n\t496
11.2.6 SSH\t501
11.3 PCI與USB\t502
11.3.1 PCI\t502
11.3.2 USB\t510
第12章 二進(jìn)制\t516
12.1 二進(jìn)制原理\t516
12.1.1 編譯、鏈接與執(zhí)行\(zhòng)t516
12.1.2 裸程序\t518
12.1.3 加載器\t519
12.1.4 鏈接過(guò)程\t523
12.2 ELF格式\t525
12.2.1 ABI\t525
12.2.2 ELF\t529
12.3 函數(shù)調(diào)用約定\t547
12.4 二進(jìn)制安全\t552

本目錄推薦

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