免费下载书籍地址:PDF下载地址
精美图片

深入Linux内核架构莫尔勒人民邮电出版社9787115227430书籍详细信息
- ISBN:9787115227430
- 作者:暂无作者
- 出版社:暂无出版社
- 出版时间:2009-06
- 页数:暂无页数
- 价格:111.86
- 纸张:胶版纸
- 装帧:平装-胶订
- 开本:16开
- 语言:未知
- 丛书:暂无丛书
- TAG:暂无
- 豆瓣评分:暂无豆瓣评分
内容简介:
暂无相关简介,正在全力查找中!
书籍目录:
第pan>章简介和概述
1.pan>内核的任务
1.2实现策略
1.3内核的组成部分
1.3.pan>
1.3.2UNIX
1.3.3地址空间与
1.3.4页表
1.3.5物理内存的分配
1.3.6计时
1.3.7系统调用
1.3.8设备驱动程序、块设备和字符设备…
1.3.9网络…
1.3.10文件系统
1.3.1pan>模块和热插拔
1.3.12缓存…
1.3.13 链表处理…
1.3.14对象管理和引用·
1.3.15数据类型…
1.3.16本书的局限…
1.4为什么内核是的…
1.5行文注记
1.6小结
第2程管理和调度
2.pan>
2.2
2.3
2.3.pan>
2.3.2命名空间
2.3.3ID号
2.3.4
2.4
2.4.pan>
2.4.2内核线程
2.4.3启动新程序
2.4.4退程
2.5调度器的实现
2.5.pan>概观
2.5.2数据结构
2.5.3处理优先级
2.5.4核心调度器
2.6公平调度类
2.6.pan>数据结构
2.6.2CFS操作
2.6.3队列操作
2.6.4选择下一程
2.6.5处理周期调度器
2.6.6唤醒抢占
2.6.7处理程
2.7实时调度类
2.7.pan>质
2.7.2数据结构
2.7.3调度器操作
2.8调度器
2.8.1 SMP调度
2.8.2调度域和控制组
2.8.3内核抢占和低延迟相关工作…
2.9小结
第3章内存管理
3.pan>概述
3.2(N)UMA模型中的内存组织
3.2.1 概述
3.2.2数据结构
3.3页表…
3.3.pan>数据结构
3.3.2页表项的创建和操作
3.4初始化内存管理
3.4.pan>建立数据结构
3.4.2特定于体系结构的设置
3.4.3 启动过程期间的内存管理………pan>
3.5物理内存的管理
3.5.pan>伙伴系统的结构
3.5.2避免碎片
3.5.3初始化内存域和结点数据结构…
3.5.4分配器API·
3.5.5分配页
3.5.6释放页
3.5.7内核中不连续页的分配………
3.5.8·
3.6 分配器
3.6.pan>备选分配器
3.6.2内核中的内存管理·
3.6.3 分配的原理…
3.6.4实现
3.6.5通用缓存
3.7 处理器高速缓存和TLB控制………
3.8小结
第4程虚拟内存
4.pan>简介
4.2
4.2.pan>
4.2.2建立布局
4.3的原理
4.4数据结构
4.4.pan>树和链表
4.4.2虚拟内存区域的表示……
4.4.3优先查找树·
4.5对区域的操作
4.5.1 将虚拟地址关联到区域……
4.5.2区域合并
4.5.3插入区域
4.5.4创建区域
4.6地址空间
4.7
4.7.pan>创建映射
4.7.2删除映射
4.7.3非线映射
4.8反向映射
4.8.pan>数据结构
4.8.2建立逆向映射
4.8.3使用逆向映射
4.9堆的管理
4.10缺页异常的处理
4.1pan>用户空间缺页异常的校正
4.11.pan>按需分配/调页
4.11.2 匿名页
4.11.3写时
4.11.4获取非线映射
4.12内核缺页异常
4.13在内核和用户空间之间数据
4.14小结
第5章锁程间通信
5.pan>控制机制
5.1.pan>竞态条件
5.1.2临界区
5.2内核锁机制
5.2.pan>对整数的原子操作
5.2.2自旋锁
5.2.3信号量
5.2.4RCU机制
5.2.5内存和优化屏障
5.2.6 读者/写者锁
5.2.7大内核锁
5.2.8互斥量
5.2.9 近似的per-CPU器
5.2.10锁竞争与细粒度锁
5.3System V
5.3.1 System V 机制
5.3.2 信号量
5.3.3消息队列
5.3.4共享内存
5.4 其他IPC机制
5.4.1 信号
5.4.2管道和套接字
5.5小结
第6章设备驱动程序
6.1 I/O体系结构
6.2访问设备
6.2.pan>设备文件
6.2.2字符设备、块设备和其他设备…317
6.2.3使用ioctl
6.2.4主从设备号的表示
6.2.5 注册
6.3与文件系统关联
6.3.1inode中的设备文件成员
6.3.2标准文件操作
6.3.3用于字符设备的标准操作
6.3.4用于块设备的标准操作
6.4字符设备操作
6.4.pan>表示字符设备
6.4.2打开设备文件
6.4.3读写操作
6.5块设备操作
6.5.pan>块设备的表示
6.5.2数据结构
6.5.3向系统添加磁盘和分区
6.5.4打开块设备文件
6.5.5请求结构
6.5.6BIO
6.5.7提交请求
6.5.8I/O调度
6.5.9 ioctl的实现
6.6资源分配
6.6.pan>资源管理
6.6.2I/O内存
6.6.3I/O端口
6.7
6.7.pan>通用驱动程序模型
6.7.2 PCI
6.7.3 USB
6.8小结
……
18.10.2注册和删除收缩器
18.10.3 收缩缓存
18.1pan>小结
第19章审计
19.pan>概述
19.2审计规则
19.3实现
19.3.pan>数据结构
19.3.2初始化·
19.3.3处理请求
19.3.4记录事件
19.3.5系统调用审计
19.4小结
附录A体系结构相关知识
A.pan>概述
A.2数据类型
A.3对齐
A.4内存页面
A.5系统调用
A.6字符串处理
A.7线程表示
A.8 位操作和字节序
A.9页表·
A.10杂项
A.1pan>小结
附录B使用源代码
B.pan>内核源代码的组织
B.2 用Kconfig
B.3 用Kbuild 编译内核
B.4有用的工具
B.5调试和分析内核
B.6 用户模式Linux
B.7小结
附录C有关C语言的注记
C.1 GNU C编译器如何工作
C.2内核的标准数据结构和技术
C.3小结
附录D系统启动
D.1 IA-32系统上与体系结构相关的设置
D.2高层初始化
D.3小结
附录E ELF制格式
E.pan>布局和结构
E.2内核中的数据结构
E.3小结
附录F内核开发过程
F.pan>简介
F.2内核代码树和开发的结构
F.3补丁的结构
F.4 Linux和学术界
F.5小结
参考文献
作者介绍:
暂无相关内容,正在全力查找中
出版社信息:
暂无出版社相关信息,正在全力查找中!
书籍摘录:
第
pan>
章简介和概述
操
作系统不仅是信息技术中吸引人的一部分,而且还是公众争论的主题
?
。在此发展过程中,
Linux
发挥了举足轻重的作用。然而仅仅
10
年前,学术用操作系统和商用操作系统还是有着严格区分的:前者相对简单而日可茶得源代码
.
对后者而言,虽然不同的操作系统能各不相同,但其源代码一直都是受到良好保护的秘密。现在,任何人都可以从因特网下载
Linux
(或任何其他自由操作系统)的源代行研究。
Linux
现在已经安装到了数百万台电脑上,无论是家庭用户还是专业人员,都可以在
Linux
上执行各种任务。无论是手表中的微型嵌入式系统,还是大规模并行大型机,
Linux
都可以在无数领域大展身手。而这使得
Linux
的源代码有趣。一个合理可靠、基础牢固的概念(
UNIX
操作系统)结合了强大的创新以及学术操作系统所缺乏的解决问题的强烈倾向,这是为什么
Linux
具备如此强大吸引力的原因。
本书描述了内核的主能,解释了其内部的结构,并研究了其实现。由于所讨论主题的复杂,我假定读者已经对操作系统和
C
语言系统程序设计有的基础(当然,对
Linux
系统的熟悉是不言而喻的)。我会简要介绍与常见操作系统问题相关的几个基础概念,但本书主要的内容则集中于
Linux
内核的实现。市场上有许多讲述操作系统基础概念的教材,对某一特定主题不熟悉的读者,可以找一本看看。例如,
Tanenbaum
写的两本的入门书籍(
[TW06]
和
[Tan07]
)。
本书要求读者有牢固的
C
语言程序设计基础。因为内核使用了
C
语言的许多技巧,尤其是
GNUC
编译器的许多专门特。附录
C
讨论了
C
语言的一些精微之处,即使的程序员可能也未必熟悉这些。由于
Linux
必然与系统硬件(是
CPU
)有直接的交互,因此了解一点计算机结构的基础知识是很有用的。该主题也有很多入门书籍可用,在参考文献章节中列出了一些相关书籍。在深入讲解
CPU
的知识时(大多数情况下,我都以
IA-32
或
AMD64
体系结构为例,因为
Linux
在这些体系结构上很常用),我会解释相关硬件的细节。在讨论不常见的机制时,我会解释机制背后的一般概念,但对于某个特定的特如何在用户空间中使用,则需要读者查询书中指明的手册页。
本章将概述内核所涉及的各种领域,并在后续章节中对相应的子系行长篇阐述之前,先行说明其基本关系。
由于内核的演变比较快速,读者很自然会问本书内容涵盖了哪一个内核版本。我选择了
2.6.24
版
本的内核,该版本发布于
08
年
pan>
月末。内核开发的动态意味着,在阅读本书时,本的内核应该已经发布,所以某些细节很自然会有所改变,这是不可避免的。如果不是这样,那
Linux
将会成为一个死气沉沉、毫无乐趣的系统,读者也很可能不会选择本书了。尽管一些细节将会发生变化,但书中描述的概念在本质上是不变的。对于
2.6.24
版本来说,这一点正确。因为与更早的版本比较,该版本有一些根本的改动。很自然,也无法隔一夜折腾一些此类来。
1.pan>
内核的任务
在纯技术层面上,内核是硬件与软件之间的一个中间层。其作用是将应用程序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组行寻址。尽管如此,仍然可以从其他一些有趣的视角对内行研究。
口从应用程序的视角来看,内核可以被认为是一台的计算机,将计算机抽象到一个高层次上。例如,在内核寻址硬盘时,它必须确定使用哪个路径来从磁盘向内存数据,数据的位置,经由哪个路径向磁盘发送哪一条命令,等等。另一方面,应用程序只需发出传输数据的命令。实际的工作如何完成与应用程序是不相干的,因为内核抽象了相关的细节。应用程序与硬件本身没有联系
?
,只与内核有联系,内核是应用程序所知道的层次结构中的底层,因此内核是一台的计算机。
口当若干程序在同一系统中并发运行时,也可以将内核视为资源管理程序。在这种情况下,内核负责将可用共享资源括
CPU
时间、磁盘空间、网络连接等)分配到各个系程,同时还需要保证系统的完整。
口另一种研究内核的视角是将内核视为库,其提供了一组面向系统的命令。通常,系统调用用于向计算机发送请求。借助于
C
标准库,系统调用对于应用程序像是普通函数一样,其调用方式与其他函数相同。
1.2
实现策略
当前,在操作系统实现方面,有以下两种主要的范型。
(
pan>
)微内核:这种范型中,只有基本能直接由中央内核(即微内核)实现。所有其他能都委托给一些独程,这程通过明确定义的通信接口与中心内核通信。例如,独程可能负责实现各种文件系统、内存管理等。(当然,与系统本身的通信需要用到基本的内存管能,这是由微内核实现的。但系统调用层次上的处理则由外部的服务程实现。)理论上,这是一种很的方法,因为系统的各个部分彼此都很清楚地划分开来,同时也迫使程序员使用“清洁的”程序设计技术。这种方法的其他好括:动态可扩展和在运行时切换重要组件。但由于在各个组件之间支持复杂通信需要额外的
CPU
时间,所以尽管微内核在各种研究领域早已经成为活跃主题,但在实用方展甚微。
在线阅读/听书/购买/PDF下载地址:
在线阅读地址:深入Linux内核架构莫尔勒人民邮电出版社9787115227430在线阅读
在线听书地址:深入Linux内核架构莫尔勒人民邮电出版社9787115227430在线收听
在线购买地址:深入Linux内核架构莫尔勒人民邮电出版社9787115227430在线购买
原文赏析:
暂无原文赏析,正在全力查找中!
其它内容:
暂无其它内容!
书籍真实打分
故事情节:5分
人物塑造:7分
主题深度:9分
文字风格:6分
语言运用:5分
文笔流畅:3分
思想传递:6分
知识深度:3分
知识广度:8分
实用性:4分
章节划分:5分
结构布局:8分
新颖与独特:5分
情感共鸣:4分
引人入胜:8分
现实相关:9分
沉浸感:4分
事实准确性:3分
文化贡献:8分
网站评分
书籍多样性:4分
书籍信息完全性:9分
网站更新速度:6分
使用便利性:4分
书籍清晰度:8分
书籍格式兼容性:4分
是否包含广告:4分
加载速度:3分
安全性:3分
稳定性:8分
搜索功能:9分
下载便捷性:9分
下载点评
- 微信读书(174+)
- 小说多(581+)
- 内容完整(94+)
- 无多页(410+)
- 超值(67+)
- 三星好评(323+)
- 目录完整(602+)
- 好评多(267+)
- 购买多(583+)
- 博大精深(98+)
- 赚了(505+)
- 盗版少(504+)
下载评价
网友 饶***丽:下载方式特简单,一直点就好了。
网友 焦***山:不错。。。。。
网友 马***偲:好 很好 非常好 无比的好 史上最好的
网友 游***钰:用了才知道好用,推荐!太好用了
网友 曹***雯:为什么许多书都找不到?
网友 冉***兮:如果满分一百分,我愿意给你99分,剩下一分怕你骄傲
网友 宫***玉:我说完了。
网友 利***巧:差评。这个是收费的
网友 龚***湄:差评,居然要收费!!!
网友 相***儿:你要的这里都能找到哦!!!
网友 家***丝:好6666666