登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書

『簡體書』奔跑吧Linux内核(第2版)卷2:调试与案例分析

書城自編碼: 3611390
分類:簡體書→大陸圖書→計算機/網絡操作系統/系統開發
作者: 笨叔
國際書號(ISBN): 9787115552525
出版社: 人民邮电出版社
出版日期: 2021-03-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:HK$ 181.3

我要買

 

** 我創建的書架 **
未登入.


新書推薦:
楼台上的凝视:清代女性观剧与社交
《 楼台上的凝视:清代女性观剧与社交 》

售價:HK$ 203.3
通胀,还是通缩
《 通胀,还是通缩 》

售價:HK$ 78.7
互联网大厂推荐算法实战
《 互联网大厂推荐算法实战 》

售價:HK$ 108.7
红酒帝国:市场、殖民地与英帝国兴衰三百年
《 红酒帝国:市场、殖民地与英帝国兴衰三百年 》

售價:HK$ 107.7
写下来,痛苦就会过去
《 写下来,痛苦就会过去 》

售價:HK$ 118.6
日本汉文话丛编(共5册)
《 日本汉文话丛编(共5册) 》

售價:HK$ 602.6
瑞士创新密码
《 瑞士创新密码 》

售價:HK$ 106.5
利益相关者:战略管理全新视角  [美]R.爱德华·弗里曼
《 利益相关者:战略管理全新视角 [美]R.爱德华·弗里曼 》

售價:HK$ 95.6

 

編輯推薦:
1.基于Linux 5.0内核和ARM64x86_64架构,全面修订;
2.新增实战案例分析,帮助读者提升实战能力; 3.新增了内核调试和优化技巧,通过分析宕机案例和安全漏洞,总结调试技巧; 4.新增了ARM64架构等方面的内容;
5.新增了大量插图和表格。
相对于Linux 4.0内核,Linux 5.0内核中加入了很多新特性,并且很多内核的实现已经发生了很大变化。本书旨在介绍Linux内核中核心模块的实现,主要内容包括ARM64架构,ARM64在Linux内核中的实现,内存管理的理论知识和案例,以及进程管理的基础知识与案例等。
本书特色:
基于Linux 5.0内核的源代码进行案例分析;
新增了ARM64架构等方面的内容。
涵盖实战案例,可操作性强。
1.基于Linux 5.0内核和ARM64x86_64架构,全面修订;
2.新增实战案例分析,帮助读者提升实战能力; 3.新增了内核调试和优化技巧,通过分析宕机案例和安全漏洞,总结调试技巧; 4.新增了ARM64架构等方面的内容;
5.新增了大量插图和表格。
相对于Linux 4.0内核,Linux 5.0内核中
內容簡介:
本书基于Linux 5.0内核的源代码讲述Linux内核的调试技巧和案例。本书共6章。主要内容包括并发与同步,中断管理,内核调试和性能优化,基于x86_64的宕机难题解决方案,基于ARM64的宕机题解决方案,安全漏洞的产生原理与修复方案等。
本书适合从事Linux系统开发人员、嵌入式系统开发人员及Android开发人员阅读,也可供计算机相关专业的师生阅读。
關於作者:
笨叔,Linux内核爱好者,出版过《奔跑吧Linux内核》《奔跑吧 Linux内核 入门篇》。创建了奔跑吧Linux社区。
目錄
目录
第 1章 并发与同步 1
1.1 原子操作 3
1.1.1 原子操作 3
1.1.2 atomic_add函数分析 6
1.1.3 比较并交换指令 7
1.2 内存屏障 11
1.2.1 经典内存屏障接口函数 11
1.2.2 内存屏障扩展接口函数 13
1.3 经典自旋锁 14
1.3.1 自旋锁的实现 15
1.3.2 自旋锁的变体 18
1.3.3 spin_lock和raw_spin_lock
函数 19
1.4 MCS锁 20
1.4.1 快速申请通道 21
1.4.2 中速申请通道 22
1.4.3 慢速申请通道 23
1.4.4 释放锁 26
1.5 排队自旋锁 27
1.5.1 快速申请通道 29
1.5.2 中速申请通道 30
1.5.3 慢速申请通道 32
1.5.4 释放锁 36
1.5.5 案例分析:为什么这里
pending域要清零 36
1.5.6 小结 38
1.6 信号量 39
1.6.1 信号量简介 39
1.6.2 小结 43
1.7 互斥锁 43
1.7.1 mutex数据结构 43
1.7.2 互斥锁的快速通道 44
1.7.3 互斥锁的慢速通道 46
1.7.4 乐观自旋等待机制 47
1.7.5 mutex_unlock函数分析 50
1.7.6 案例分析 51
1.7.7 小结 52
1.8 读写锁 52
1.9 读写信号量 53
1.9.1 rw_semaphore数据结构 53
1.9.2 申请读者类型信号量 55
1.9.3 释放读者类型信号量 58
1.9.4 申请写者类型信号量 58
1.9.5 释放写者类型信号量 64
1.9.6 小结 64
1.10 RCU 64
1.10.1 关于RCU的一个简单例子 65
1.10.2 经典RCU和Tree RCU 68
1.11 案例分析:内存管理中的锁 69
1.11.1 mm-mmap_sem 70
1.11.2 mm-page_table_lock 71
1.11.3 PG_Locked 72
1.11.4 anon_vma-rwsem 72
1.11.5 zone-lru_lock 74
1.11.6 RCU 75
1.11.7 RCU停滞检测 78
第 2章 中断管理 81
2.1 中断控制器 82
2.1.1 中断状态和中断触发方式 82
2.1.2 ARM GIC-V2中断控制器 83
2.1.3 关于ARM Vexpress V2P
开发板的例子 85
2.1.4 关于QEMU虚拟机平台的
例子 86
2.2 硬件中断号和Linux中断号的映射 87
2.3 注册中断 98
2.4 ARM64底层中断处理 105
2.4.1 异常向量表 105
2.4.2 IRQ处理 107
2.4.3 栈框 108
2.4.4 保存中断上下文 110
2.4.5 恢复中断上下文 112
2.5 高层中断处理 114
2.5.1 汇编跳转 114
2.5.2 handle_arch_irq处理 115
2.5.3 小结 123
2.6 软中断和tasklet 125
2.6.1 软中断 125
2.6.2 tasklet 129
2.6.3 local_bh_disable和
local_bh_enable函数分析 134
2.6.4 小结 135
2.7 工作队列 136
2.7.1 工作队列的相关数据结构 137
2.7.2 工作队列初始化 141
2.7.3 创建工作队列 143
2.7.4 添加和调度一个work 149
2.7.5 处理一个work 153
2.7.6 取消一个work 157
2.7.7 和调度器的交互 159
2.7.8 小结 161
第3章 内核调试与性能优化 164
3.1 打造ARM64实验平台 165
3.1.1 使用O0优化等级编译
内核 165
3.1.2 QEMU虚拟机 Debian
实验平台 166
3.1.3 单步调试ARM64 Linux
内核 171
3.1.4 以图形化方式单步调试
内核 172
3.1.5 单步调试head.S文件 176
3.2 ftrace 181
3.2.1 irqs跟踪器 182
3.2.2 function跟踪器 184
3.2.3 动态ftrace 185
3.2.4 事件跟踪 186
3.2.5 添加跟踪点 188
3.2.6 trace-cmd和kernelshark 191
3.2.7 跟踪标记 192
3.2.8 小结 195
3.3 内存检测 196
3.3.1 slub_debug 197
3.3.2 KASAN内存检测 202
3.4 死锁检测 204
3.5 内核调试方法 210
3.5.1 printk 210
3.5.2 动态输出 212
3.5.3 oops分析 213
3.5.4 BUG_ON和WARN_ON宏
分析 217
3.6 使用perf优化性能 217
3.6.1 安装perf工具 218
3.6.2 perf list命令 218
3.6.3 perf recordreport命令 219
3.6.4 perf stat命令 220
3.6.5 perf top命令 221
3.7 SystemTap 222
3.8 eBPF和BCC 224
3.8.1 BCC工具集 224
3.8.2 编写BCC脚本 225
第4章 基于x86_64解决宕机难题 229
4.1 Kdump和Crash工具 230
4.2 x86_64架构基础知识 230
4.2.1 通用寄存器 230
4.2.2 函数参数调用规则 231
4.2.3 栈的结构 232
4.2.4 寻址方式 232
4.3 在CentOS 7.6中安装和配置Kdump
和Crash 233
4.4 crash命令 235
4.5 案例1:一个简单的宕机案例 244
4.6 案例2:访问被删除的链表 250
4.7 案例3:一个真实的驱动崩溃案例 254
4.8 死锁检查机制 259
4.9 案例4:一个简单的死锁案例 261
4.10 案例5:分析和推导参数的值
变量 263
4.11 案例6:一个复杂的宕机案例 270
4.11.1 问题描述 271
4.11.2 分析ps进程 276
4.11.3 分析test进程 281
4.11.4 计算一个进程被阻塞了多长
时间 283
第5章 基于ARM64解决宕机难题 285
5.1 搭建Kdump实验环境 285
5.2 案例1:一个简单的宕机案例 287
5.3 案例2:恢复函数调用栈 288
5.4 案例3:分析和推导参数的值 291
5.5 案例4:一个复杂的宕机案例 294
5.5.1 分析ps进程 296
5.5.2 分析test进程 299
第6章 安全漏洞分析 303
6.1 侧信道攻击 303
6.2 CPU熔断漏洞分析 306
6.2.1 乱序执行、异常处理和地址
空间 306
6.2.2 修复方案:KPTI技术 307
6.3 CPU幽灵漏洞 317
6.3.1 分支预测 317
6.3.2 攻击原理 320
6.3.3 修复方案 321
附录A 使用DS-5调试ARM64 Linux
内核 325
附录B ARM64中的独占访问指令 341
附录C 图解MESI状态转换 345
附录D 高速缓存与内存屏障 350

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 大陸用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.