热门搜索: 中考 高考 考试 开卷17
服务电话 024-23945002/96192
 

LINUX是怎样工作的(增订版)

编号:
wx1203680613
销售价:
¥85.83
(市场价: ¥99.80)
赠送积分:
86
数量:
   
商品介绍

-“现代计算机操作系统”趣味图解版
-新增4章,20多个“技术专栏”
-200余幅插图,图解×实践,全彩印刷
-直击Linux核心工作原理,涵盖容器、虚拟化,

本书通过丰富的插图、表格和代码示例,结合动手实验及结果分析,通俗易懂地讲解了Linux操作系统的基础知识和运行原理,包括进程管理、进程调度、内存管理、设备访问、文件系统、虚拟化和容器等机制,以及这些机制如何与硬件协同工作。本书在初版的基础上新增了设备访问、虚拟化、容器及cgroup等章节,并对原有章节内容也进行了大幅修订,以满足作者的阅读需求;开辟了“技术专栏”,以帮助希望深入了解Linux的读者拓宽知识面;源代码也从C语言编写更新为Go和Python实现,同时加入大量注释,以方便读者理解。此外,本书也全面升级为彩色印刷,让穿插于字里行间的丰富图表更加清晰易懂。
本书适合应用程序开发人员、系统设计师、运维管理人员和技术支持人员等人士阅读。

[日]武内觉 
资深计算机系统技术专家。现在知名云协同软件公司Cybozu负责分布式存储Ceph的研发。此前在富士通公司从事Linux相关技术开发多年。他是热心分享的技术专家,除了广受赞誉的本书之外,他还合著或者翻译了另外两部Linux著作。

第 1章 Linux概述 1
1.1 程序与进程 2
1.2 内核 2
1.3 系统调用 4
1.3.1 系统调用的可视化 5
1.3.2 执行系统调用的时间占比 7
技术专栏 监控、警报及仪表盘 10
1.3.3 系统调用的执行时间 11
1.4 库 11
1.4.1 C标准库 12
1.4.2 系统调用的包装函数 13
1.4.3 静态库与共享库 14
技术专栏 静态链接的复兴 17

第 2章 进程管理(基础篇) 19
2.1 创建进程 20
2.1.1 fork() 函数 21
2.1.2 execve() 函数 23
2.1.3 地址空间布局随机化 27
技术专栏 除fork()函数与execve()函数之外的进程创建方法 29
2.2 进程的父子关系 30
2.3 进程的状态 31
2.4 结束进程 33
2.5 僵尸进程与孤儿进程 34
2.6 信号 35
技术专栏 “必杀”的SIGKILL信号与“不死”的进程 -37
2.7 shell环境中的作业管理 37
2.7.1 会话 38
2.7.2 进程组 39
2.8 守护进程 41

第3章 进程调度 43
3.1 预备知识:运行时间和执行时间 44
3.2 只有一个逻辑CPU时的调度 46
3.3 存在多个逻辑CPU时的调度 48
3.4 user+sys>real 的个例 50
3.5 时间片 51
技术专栏 时间片原理 56
3.6 上下文切换 61
3.7 性能 63
3.8 程序并行执行的重要性 69

第4章 内存管理系统 70
4.1 获取内存的相关信息 71
4.1.1 used 72
4.1.2 buff/cache 74
4.1.3 通过sar命令获取内存信息 75
4.2 内存回收 76
4.3 虚拟内存 79
4.3.1 为什么需要虚拟内存 80
4.3.2 虚拟内存做了什么 82
4.3.3 虚拟内存怎样解决问题 88
技术专栏 恐怖的“熔断”漏洞 90
4.4 为进程分配新内存 91
4.4.1 分配内存区域:系统调用mmap() 91
4.4.2 分配内存:按需分页 93
技术专栏 编程语言处理系统的内存管理 102
4.5 多级页表 102
4.5.1 大页 105
4.5.2 透明大页 106

第5章 进程管理(进阶篇) 108
5.1 进程创建的高速化 109
5.1.1 fork()函数的高速化:写时复制 109
5.1.2 execve() 函数的高速化:按需分页 114
5.2 进程间通信 116
5.2.1 共享内存 116
5.2.2 信号 119
5.2.3 管道 120
5.2.4 套接字 121
5.3 互斥锁 121
5.4 互斥锁中的怪圈 125
5.5 多进程与多线程 126
技术专栏 内核级线程与用户级线程 128

第6章 设备访问 132
6.1 设备文件 133
6.1.1 字符设备 135
6.1.2 块设备 136
技术专栏 回环设备 138
6.2 设备驱动程序 139
6.2.1 内存映射I/O 140
6.2.2 轮询 144
6.2.3 中断 146
技术专栏 主动利用轮询机制的情形 148
6.3 设备文件名 149

第7章 文件系统 152
7.1 访问文件的方法 156
7.2 内存映射文件 157
7.3 普通的文件系统 160
7.4 容量限制(磁盘配额) 161
7.5 文件系统的一致性 162
7.5.1 日志技术 163
7.5.2 写时复制技术 166
7.5.3 首要之事是备份 168
7.6 Btrfs提供的高级功能 169
7.6.1 快照 169
7.6.2 卷 171
技术专栏 应该使用哪种文件系统? 173
7.7 数据损坏的检测与修复 173
7.8 其他文件系统 175
7.8.1 基于内存的文件系统 175
7.8.2 网络文件系统 177
7.8.3 procfs 178
7.8.4 sysfs 179

第8章 存储层次 181
8.1 高速缓存 182
8.1.1 局部性原理 187
8.1.2 多级高速缓存 187
8.1.3 测试高速缓存的访问速度 188
8.2 同时多线程 193
技术专栏 转译后备缓冲区 195
8.3 页缓存 195
8.4 缓冲区缓存 201
8.5 回写的时间点 202
8.6 direct I/O 203
8.7 交换机制 204
8.8 统计信息 207

第9章 通用块层 211
9.1 HDD 的特征 212
9.2 通用块层的基本功能 217
9.3 块设备的性能指标与性能测试方法 219
9.3.1 有且仅有 1 个进程发出I/O请求的情形 219
9.3.2 多个进程并行发出I/O请求的情形 222
技术专栏 不要推测, 要实打实地测试 226
9.3.3 性能测试工具:fio 226
9.4 通用块层对HDD性能的影响 229
9.4.1 情景A 的测试结果 238
技术专栏 性能测试的目的 -238
9.4.2 情景B 的测试结果 241
9.5 随着技术革新而变化的通用块层 241
9.6 通用块层对NVMe SSD性能的影响 243
9.6.1 情景A 的测试结果 243
9.6.2 情景B 的测试结果 246
技术专栏 现实中的性能测试 246

第 10章 虚拟化 249
10.1 什么是虚拟化功能 250
10.2 虚拟化软件 251
10.3 本章使用的虚拟化软件 253
技术专栏 嵌套虚拟化 255
10.4 支持虚拟化功能的CPU 255
技术专栏 CPU 不支持虚拟化功能时的虚拟化 259
10.5 宿主OS视角的虚拟机 260
10.5.1 宿主OS视角的客户OS 262
10.5.2 启动多个虚拟机 263
技术专栏 IaaS中的弹性伸缩功能 265
10.6 虚拟化环境中的进程调度 265
10.6.1 物理机上运行着其他线程的情况 267
10.6.2 统计信息 271
10.7 虚拟机与内存管理 274
10.8 虚拟机与存储设备 277
10.8.1 虚拟机的I/O性能 278
10.8.2 存储设备的写入操作与页缓存 281
10.8.3 半虚拟化设备与virtio-blk 281
技术专栏 宿主OS与客户OS的I/O性能逆转 282
10.8.4 virtio-blk的原理 283
技术专栏 PCI直通 286

第 11章 容器 287
11.1 虚拟机与容器的区别 288
11.2 容器的类型 290
11.3 命名空间 291
11.3.1 pid ns 291
11.3.2 容器的本质 297
11.4 安全风险 298

第 12章 cgroup 300
12.1 cgroup能够限制的资源 302
12.2 示例:限制CPU使用时间 303
技术专栏 把cgroup 机制引入内核的经过 -305
12.3 应用实例 306
技术专栏 cgroup v2 306

第 13章 总结与应用 307

商品参数
基本信息
出版社 人民邮电出版社
ISBN 9787115670250
条码 9787115670250
编者 [日]武内觉 著 曹栩 译
译者
出版年月 2025-06-01 00:00:00.0
开本 32开
装帧 平装
页数 312
字数 308
版次 1
印次 1
纸张
商品评论

暂无商品评论信息 [发表商品评论]

商品咨询

暂无商品咨询信息 [发表商品咨询]