Linux高级程序设计PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:(英)美斯特(Masters,J.),(美)布卢(Blum,R.)著
- 出 版 社:北京:人民邮电出版社
- 出版年份:2008
- ISBN:7115179107
- 页数:390 页
第1章 Linux简介 1
1.1 Linux发展简史 1
1.1.1 GNU项目 2
1.1.2 Linux内核 2
1.1.3 Linux发行版 3
1.1.4自由软件与开放源码 4
1.2开发起步 5
1.2.1选择一个Linux发行版 5
1.2.2安装Linux发行版 7
1.2.3沙盒和虚拟化技术 13
1.3 Linux社区 13
1.3.1 Linux用户组 14
1.3.2邮件列表 14
1.3.3 IRC 14
1.3.4私有社区 14
1.4关键差别 15
1.4.1 Linux是模块化的 15
1.4.2 Linux是可移植的 15
1.4.3 Linux是通用的 15
1.5本章总结 16
第2章 工具链 17
2.1 Linux开发过程 17
2.1.1使用源代码 18
2.1.2配置本地环境 18
2.1.3编译源代码 19
2.2 GNU工具链的组成 20
2.3 GNU二进制工具集 29
2.3.1 GNU汇编器 29
2.3.2 GNU连接器 30
2.3.3 GNU objcopy和objdump 31
2.4 GNU Make 33
2.5 GNU调试器 34
2.6 Linux内核和GNU工具链 37
2.6.1内联汇编 37
2.6.2属性标记 38
2.6.3定制连接器脚本 38
2.7交叉编译 39
2.8建立GNU工具链 40
2.9本章总结 41
第3章 可移植性 42
3.1可移植性的需要 42
3.2 Linux的可移植性 44
3.2.1抽象层 44
3.2.2 Linux发行版 45
3.2.3建立软件包 49
3.2.4可移植的源代码 61
3.3硬件可移植性 78
3.3.1 64位兼容 78
3.3.2字节序中立 79
3.3.3字节序的门派之争 81
3.4本章总结 81
第4章 软件配置管理 83
4.1 SCM的必要性 83
4.2集中式开发与分散式开发 84
4.3集中式工具 85
4.3.1 CVS 85
4.3.2 Subversion 93
4.4分散式工具 96
4.4.1 BazaarNG 96
4.4.2 Linux内核SCM 99
4.5集成化SCM工具 102
4.6本章总结 104
第5章 网络编程 105
5.1 Linux套接字编程 105
5.1.1套接字 105
5.1.2网络地址 107
5.1.3使用面向连接的套接字 108
5.1.4使用无连接套接字 114
5.2传输数据 117
5.2.1数据报与字节流 117
5.2.2标记消息边界 121
5.3使用网络编程函数库 123
5.3.1 I ibCurl函数库 123
5.3.2使用libCurl库 124
5.4本章总结 129
第6章 数据库 130
6.1持久性数据存储 130
6.1.1使用标准文件 130
6.1.2使用数据库 131
6.2 Berkeley DB软件包 133
6.2.1下载和安装 133
6.2.2编译程序 134
6.2.3基本数据处理 134
6.3 PostgreSQL数据库服务器 143
6.3.1下载和安装 144
6.3.2编译程序 145
6.3.3创建一个应用程序数据库 145
6.3.4连接服务器 147
6.3.5执行SQL命令 150
6.3.6使用参数 157
6.4本章总结 160
第7章 内核开发 161
7.1基本知识 161
7.1.1背景先决条件 161
7.1.2内核源代码 162
7.1.3配置内核 165
7.1.4编译内核 168
7.1.5已编译好的内核 171
7.1.6测试内核 172
7.1.7包装和安装内核 174
7.2内核概念 174
7.2.1一句警告 175
7.2.2任务抽象 175
7.2.3虚拟内存 179
7.2.4不要恐慌 182
7.3内核编程 182
7.4内核开发过程 185
7.4.1 git:傻瓜内容跟踪器 185
7.4.2 Linux内核邮件列表 187
7.4.3 “mm”发树 189
7.4.4稳定内核小组 189
7.4.5 LWN: Linux每周新闻 189
7.5本章总结 190
第8章 内核接口 191
8.1什么是接口 191
8.2外部内核接口 192
8.2.1系统调用 193
8.2.2设备文件抽象 197
8.2.3内核事件 210
8.2.4忽略内核保护 211
8.3内部内核接口 215
8.3.1内核API 215
8.3.2内核ABI 216
8.4本章总结 217
第9章 Linux内核模块 218
9.1模块工作原理 218
9.1.1扩展内核命名空间 220
9.1.2没有对模块兼容性的保证 221
9.2找到好的文档 221
9.3编写Linux内核模块 223
9.3.1开始之前 223
9.3.2基本模块需求 223
9.3.3日志记录 226
9.3.4输出的符号 227
9.3.5分配内存 228
9.3.6锁的考虑 236
9.3.7推迟工作 243
9.3.8进一步阅读 251
9.4分发Linux内核模块 252
9.4.1进入上游Linux内核 252
9.4.2发行源代码 252
9.4.3发行预编译模块 253
9.5本章总结 253
第10章 调试 254
10.1调试概述 254
10.2基本调试工具 255
10.2.1 GNU调试器 255
10.2.2 Vgrind 263
10.3图形化调试工具 264
10.3.1 DDD 264
10.3.2 Eclipse 267
10.4内核调试 269
10.4.1不要惊慌! 269
10.4.2理解oops 270
10.4.3使用UML进行调试 272
10.4.4一件软事 275
10.4.5关于内核调试器的注记 276
10.5本章总结 276
第11章 GNOME开发者平台 277
11.1 GNOME函数库 277
11.1.1 Glib 277
11.1.2 GObject 277
11.1.3 Cairo 278
11.1.4 GDK 278
11.1.5 Pango 278
11.1.6 GTK+ 278
11.1.7 libglade 279
11.1.8 GConf 279
11.1.9 GStreamer 279
11.2建立一个音乐播放器 280
11.2.1需求 280
11.2.2开始:主窗口 280
11.2.3建立GUI 282
11.3本章总结 299
第12章 自由桌面项目 300
12.1 DBUS:桌面总线 300
12.1.1什么是DBus 300
12.1.2 DBus基础 301
12.1.3 D-Bus方法 304
12.2硬件抽象层 308
12.2.1使硬件可以即插即用 308
12.2.2 HAL设备对象 311
12.3网络管理器 316
12.4其他自由桌面项目 317
12.5本章总结 318
第13章 图形和音频 319
13.1 Linux和图形 319
13.1.1 X视窗 319
13.1.2开放式图形库 321
13.1.3 OpenGL应用工具包 321
13.1.4简单直接媒介层 322
13.2编写OpenGL应用程序 322
13.2.1下载和安装 323
13.2.2编程环境 323
13.2.3使用GLUT库 324
13.3编写SDL应用程序 336
13.3.1下载和安装 336
13.3.2编程环境 337
13.3.3使用SDL库 337
13.4本章总结 347
第14章 LAMP 348
14.1什么是LAMP 348
14.1.1 Apache 349
14.1.2 MySQL 349
14.1.3 PHP 349
14.1.4反叛平台 350
14.1.5评价LAMP平台 350
14.2 Apache 351
14.2.1虚拟主机 352
14.2.2安装和配置PHP 5 353
14.2.3 Apache Basic认证 353
14.2.4 Apache与SSL 354
14.2.5 SSL与HTTP认证的整合 355
14.3 MySQL 355
14.3.1安装MySQL 355
14.3.2 配置和启动数据库 356
14.3.3修改默认密码 356
14.3.4 MySQL客户端接口 356
14.3.5关系数据库 357
14.3.6 SQL 357
14.3.7关系模型 359
14.4 PHP 362
14.4.1 PHP语言 362
14.4.2错误处理 369
14.4.3异常错误处理 370
14.4.4优化技巧 371
14.4.5安装额外的PHP软件 375
14.4.6日志记录 376
14.4.7参数处理 377
14.4.8会话处理 378
14.4.9单元测试 378
14.4.10数据库和PHP 380
14.4.11 PHP框架 380
14.5 DVD库 381
14.5.1版本1:开发者的噩梦 381
14.5.2版本2:使用DB数据层的基本应用程序 382
14.5.3版本3:重写数据层添加日志记录和异常 385
14.5.4版本4:应用模板框架 388
14.6本章总结 390
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《Cinema 4D电商美工与视觉设计案例教程》樊斌 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《古代巴比伦》(英)莱昂纳德·W.金著 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《BBC人体如何工作》(英)爱丽丝.罗伯茨 2019
- 《一个数学家的辩白》(英)哈代(G.H.Hardy)著;李文林,戴宗铎,高嵘译 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019