Mel Gorman曾获得爱尔兰利马瑞克大学的计算机学士和硕士学位。他的研究领域广泛:从网页开发到摄影机的实时显示系统。Mel Gorman认为,即使是最难以攻克的项目也并没有想象中那么艰难。他曾经还担任过系统管理员,主要管理Linux, 也涉及到Solaris和Windows。现今Mel Gorman是都柏林IBM公司的Java程序开发员。
Mel Gorman的大部分技能都来自于他自己在利马瑞克大学的生活经历,与大学里计算机社区的广泛接触,以及实地工作经验这三者的完美结合。是计算机社区使他接触到了Linux,并相信Linux用途广泛,而绝不仅仅只是一个便利的邮箱地址。这个社区还使他对开放源码软件产生了兴趣,尤其是在Linux内核方面。他永远感激利马瑞克大学为他提供的这个平台,使他认识了许多有识之士,并有两年时间来研究VM。
闲暇时Mel Gorman喜欢和女友凯伦呆在一起,或者弹弹吉他(尽管并不擅长),读读手边的书籍,与朋友和家人(他们避免谈及有关VM的话题)一同消磨时光。又或是制订一些可能并无价值的计划(有时仅仅在想象中完成它们)。只要安迪说服他乘坐游艇是个不错的娱乐项目,他也会去尝试。Mel Gorman还在犹豫着是继续创作关于Linux的文章,还是向从前一样在Linux环境下编写程序,因为后者才是他最初的意愿。
第1章 简介
1.1 开始启程 2
1.2 管理源码 4
1.3 浏览代码 9
1.4 阅读代码 11
1.5 提交补丁 12
第2章 描述物理内存
2.1 节点 14
2.2 管理区 16
2.3 管理区初始化 21
2.4 初始化mem_map 21
2.5 页面 22
2.6 页面映射到管理区 26
2.7 高端内存 26
2.8 2.6中有哪些新特性 27
第3章 页表管理
3.1 描述页目录 30
3.2 描述页表项 33
3.3 页表项的使用 34
3.4 页表项的转换和设置 36
3.5 页表的分配和释放 36
3.6 内核页表 37
3.7 地址和struct page之间的映射 39
3.8 转换后援缓冲区(TLB) 40
3.9 一级CPU高速缓存管理 41
3.10 2.6中有哪些新特性 44
第4章 进程地址空间
4.1 线性地址空间 50
4.2 地址空间的管理 52
4.3 进程地址空间描述符 53
4.4 内存区域 57
4.5 异常处理 72
4.6 缺页中断 74
4.7 复制到用户空间/从用户空间复制 81
4.8 2.6中有哪些新特性 82
第5章 引导内存分配器
5.1 表示引导内存映射 88
5.2 初始化引导内存分配器 89
5.3 初始化bootmem_data 89
5.4 分配内存 90
5.5 释放内存 91
5.6 销毁引导内存分配器 91
5.7 2.6中有哪些新特性 93
第6章 物理页面分析
6.1 管理空闲块 94
6.2 分配页面 96
6.3 释放页面 98
6.4 获得空闲页面(GFP)标志位 99
6.5 进程标志位 101
6.6 防止碎片 102
6.7 2.6中有哪些新特性 102
第7章 非连续内存分配
7.1 描述虚拟内存区 105
7.2 分配非连续区域 106
7.3 释放非连续内存 108
7.4 2.6中有哪些新特性 109
第8章 Slab分配器
8.1 高速缓存 113
8.2 Slabs 124
8.3 对象 131
8.4 指定大小的高速缓存 133
8.5 per?CPU 对象高速缓存 135
8.6 初始化slab分配器 137
8.7 伙伴分配器接口 138
8.8 2.6中有哪些新特性 138
第9章 高端内存管理
9.1 管理PKMap地址空间 140
9.2 映射高端内存页面 141
9.3 解除页面映射 143
9.4 原子性的映射高端内存页面 143
9.5 弹性缓冲区 144
9.6 紧急池 146
9.7 2.6中有哪些新特性 147
第10章 页面帧回收
10.1 页面替换策略 150
10.2 页面高速缓存 151
10.3 LRU链表 156
10.4 收缩所有的高速缓存 159
10.5 换出进程页面 161
10.6 页面换出守护程序(kswapd) 162
10.7 2.6中有哪些新特性 162
第11章 交换管理
11.1 描述交换区 166
11.2 映射页表项到交换项 169
11.3 分配一个交换槽 170
11.4 交换区高速缓存 171
11.5 从后援存储器读取页面 174
11.6 向后援存储器写页面 174
11.7 读/写交换区域的块 175
11.8 激活一个交换区 177
11.9 禁止一个交换区 178
11.10 2.6中有哪些新特性 179
第12章 共享内存虚拟文件系统
12.1 初始化虚拟文件系统 181
12.2 使用shmem函数 182
12.3 在tmpfs中创建文件 184
12.4 虚拟文件中的缺页中断 186
12.5 tmps中的文件操作 188
12.6 tmpfs中的索引节点操作 188
12.7 建立共享区 189
12.8 System V IPC 189
12.9 2.6中有哪些新特性 192
第13章 内存溢出管理
13.1 检查可用内存 193
13.2 确定OOM状态 194
13.3 选择进程 194
13.4 杀死选定的进程 195
13.5 是这样吗? 195
13.6 2.6中有哪些新特性 195
第14章 结束语
附录A 介绍
附录B 描述物理内存
B.1 初始化管理区 201
B.2 页面操作 214
附录C 页表管理
C.1 初始化页表 219
C.2 遍历页表 227
附录D 进程地址空间
D.1 进程内存描述符 232
D.2 创建内存区域 239
D.3 查找内存区域 285
D.4 对内存区域上锁和解锁 291
D.5 缺页中断 304
D.6 页面相关的磁盘I/O 330
附录E 启动内存分配
E.1 初始化引导内存分配器 370
E.2 分配内存 372
E.3 释放内存 381
E.4 释放引导内存分配器 383
附录F 物理页面分配
F.1 分配页面 391
F.2 分配辅助函数 402
F.3 释放页面 404
F.4 释放辅助函数 409
附录G 不连续内存分配
G.1 分配一块非连续的区域 411
G.2
本书由两位在文案设计领域具有丰富经验的教师所著。它把修辞方法引入视觉设计中,为各类文案设计提供了有用的策略和工具。本书分
《企业级Java现代化:写给开发者的云原生简明指南》内容简介:《企业级Java现代化:写给开发者的云原生简明指南》讨论了如何利用现
《WPF编程宝典:使用C#2008和.NET3.5》在亚马逊网站上深受读者好评.由微软公司的最有价值专家MatthewMacDonald倾力而作,凝聚了M
《影像杂谈》内容简介:作者影像评论十二篇首次结集,并配以作者的手机快照。《影像杂谈》以画家之眼,谈论时间对于摄影的参与,记
《信息的社会层面》分析了近年来信息技术对人类社会所产生的冲击,对信息至上论进行了批判性反思。作者认为,信息是植根于社会生
软件“风格”所要讨论的主题是如何在开销与功能之间、优雅与可维护性之间、灵活。性与过分灵活之间寻找完美的平街点。在本书中,
《计算机网络(第5版)》自1989年首次出版以来,于1994年、1999年和2003年分别出了修订版。2006年8月本教材通过了教育部的评审,被
《第一等人》内容简介:☆侯家的第一位进士、第一位官员、侯峒曾的曾祖父侯尧封,生平对儿孙说的最多的一句话是:“不愿汝辈它日为
《手把手教你学C语言》内容简介:本书是学习C语言的入门书籍,内容非常全面,包含C语言基础知识、流程控制、数组、函数、指针、字符
《深入理解分布式事务》内容简介:本书的广度与深度兼备、理论与实战兼顾的分布式事务专著,它从基础知识、解决方案、原理分析、源
《儿童时间管理效能手册》内容简介:为什么孩子总是发脾气?为什么孩子什么话都不愿跟家长说?为什么孩子对自己的事情负不起责任来
信号检测与估计理论是随机信号统计处理的基础。本书在扼要复习信号检测与估计理论基础知识后,首先论述信号的统计检测理论和信号
汇编语言-(第2版) 内容简介 汇编语言是各种CPU提供的机器指令的助记符的集合,人们可以用汇编语言直接控制硬件系统进行工作。汇编语言是很多相关课程(如数据结构...
《他们这样旅行》内容简介:两大家族,三代人,横跨70年,11场纵横交错的人生旅行。深夜的大马士革路上,年轻女人和未婚夫的车被两
《操盘:千股涨停》内容简介:2015年上万亿资金逐鹿A股市场,各路私募基金迅速扩张,大量的场内场外杠杆交易大行其道。青山投资异军
《日本论》内容简介:戴季陶曾留学日本多年,与日本民众有过深入的交往,因此对日本有着通透的认识。在本书中,他纵论日本从皇权、
魏玛时期的包豪斯,是20世纪最重要的建筑、设计及艺术学校之一,莫霍利-纳吉是其个性鲜明的教员团队中的一员。他不仅是欧洲前卫运
3ds Max三维室内设计实用教程 内容简介 张岩编著的《3dsmax三维室内设计实用教程》为“室内设计·装饰专业高职高专教学丛书”之一。3dsmax为一款可视...
Cisco OSPF命令与配置手册 本书特色 本书是一本简洁而完整的OSPF命令手册。书中提供了很多示例场景,演示了可在由*少数量的路由器组成的网络环境中实施的...
《南京传》内容简介:春归秣陵树,人老建康城。作为一位公认的文章大家,叶兆言对他写了四十年的南京有着独特理解。南京为他提供了