图书介绍
嵌入式Linux内存使用与性能优化PDF|Epub|txt|kindle电子书版本网盘下载
- 史子旺,叶超群,蔡建宇编著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111270430
- 出版时间:2009
- 标注页数:317页
- 文件大小:67MB
- 文件页数:326页
- 主题词:Linux操作系统-程序设计
PDF下载
下载说明
嵌入式Linux内存使用与性能优化PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
出版说明3
前言3
第一篇 内存使用3
第1章 内存的测量3
1.1 系统当前可用内存3
1.2 进程的内存使用5
1.2.1 虚拟内存与物理内存5
1.2.2 /proc/{pid}6
1.2.3 内存回收11
第2章 进程内存优化13
2.1 执行文件13
2.1.1 堆段15
2.1.2 栈26
2.1.3 环境变量及参数29
2.1.4 ELF文件34
2.1.5 数据段48
2.1.6 代码段61
2.1.7 使用Thumb指令65
2.2 动态库69
2.2.1 数据段70
2.2.2 代码段76
2.2.3 动态库的优化82
2.3 静态库86
2.4 线程87
2.4.1 设置进程栈空间90
2.4.2 设置线程栈空间91
2.4.3 减少线程的数量91
2.5 共享内存92
第3章 系统内存优化94
3.1 守护进程的内存使用94
3.2 tmpfs分区95
3.3 Cache和Buffer95
3.4 内存回收96
3.5 /proc/sys/vm/优化97
第4章 内存泄漏99
4.1 是否有内存泄漏99
4.2 mtrace&lo100
4.3 malloc与ee钩子函数101
4.4 栈的回溯121
4.5 化整为零法124
4.6 Dmalloc125
4.7 Valgrind127
第二篇 软件性能优化133
第5章 性能优化的流程133
5.1 性能评价133
5.2 性能优化的流程133
5.3 性能的评测134
5.4 性能分析134
第6章 进程启动速度140
6.1 查看进程的启动过程140
6.2 减少加载动态库的数量143
6.3 共享库的搜索路径144
6.4 动态库的高度147
6.5 动态库的初始化147
6.6 动态链接151
6.7 提高进程启动速度156
6.8 进程冷起与热起的区别159
第7章 性能优化的方法160
7.1 寻找程序热点161
7.1.1 gprof161
7.1.2 OProfile165
7.2 程序逻辑瓶颈188
7.3 优化的层次190
7.4 何时开始性能优化191
7.5 如何推动系统性能优化192
7.6 为什么软件性能会低下193
7.7 程序逻辑优化195
7.7.1 算法的优化196
7.7.2 考虑事件的特殊性199
第8章 代码优化的境界201
8.1 GCC编译优化202
8.1.1 条件编译202
8.1.2 指定CPU的型号204
8.1.3 builtin函数204
8.1.4 GCC编译优化205
8.1.5 GCC与G++的不同206
8.2 优化基本原则209
8.3 标准C代码优化209
8.3.1 数据类型209
8.3.2 常量定义213
8.3.3 数组214
8.3.4 结构217
8.3.5 变量218
8.3.6 慢操作224
8.3.7 if语句231
8.3.8 switch语句235
8.3.9 循环239
8.3.10 函数246
8.3.11 寄存器的使用248
8.3.12 文件操作254
8.3.13 线程258
8.4 C++代码优化258
8.4.1 构造函数和析构函数258
8.4.2 对象的作用域263
8.4.3 访问成员变量265
8.4.4 成员函数271
8.4.5 全局对象与静态对象273
8.4.6 栈对象与堆对象275
8.5 硬件相关的优化276
8.5.1 流水线278
8.5.2 内存访问281
8.5.3 Cache285
8.5.4 Thumb指令292
8.5.5 多媒体指令SIMD294
第9章 系统性能优化301
9.1 Shell脚本优化301
9.1.1 Built-ins和applets301
9.1.2 bash脚本302
9.1.3 如何优化BusyBox bash脚本302
9.2 使用Preload预先加载进程303
9.3 调整进程的优先级304
9.4 让进程运行得慢一些306
9.5 守护进程的数量307
9.6 文件系统308
9.7 使用Lmbench了解你的系统310
9.8 系统的启动311
9.9 系统耗电量312
附录 GCC常用编译选项314
参考文献317