《Linux高级程序设计》是Linux程序设计领域的一部力作,讲解了大量程序员需要掌握的关键知识点,包括Linux开发中的基本工具、Linux系统编程、Linux桌面开发以及Linux与Web开发。书中包括大量有益的经验之谈和富于启发的示例。
第1章 Linux简介
1.1 Linux发展简史
1.1.1 GNU项目
1.1.2 Linux内核
1.1.3 Linux发行版
1.1.4 自由软件与开放源码
1.2 开发起步
1.2.1 选择一个Linux发行版
1.2.2 安装Linux发行版
1.2.3 沙盒和虚拟化技术
1.3 Linux社区
1.3.1 Linux用户组
1.3.2 邮件列表
1.3.3 IRC
1.3.4 私有社区
1.4 关键差别
1.4.1 Linux是模块化的
1.4.2 Linux是可移植的
1.4.3 Linux是通用的
1.5 本章总结
第2章 工具链
2.1 Linux开发过程
2.1.1 使用源代码
2.1.2 配置本地环境
2.1.3 编译源代码
2.2 GNU工具链的组成
2.3 GNU二进制工具集
2.3.1 GNU汇编器
2.3.2 GNU连接器
2.3.3 GNU objcopy和objdump
2.4 GNU Make
2.5 GNU调试器
2.6 Linux内核和GNU工具链
2.6.1 内联汇编
2.6.2 属性标记
2.6.3 定制连接器脚本
2.7 交叉编译
2.8 建立GNU工具链
2.9 本章总结
第3章 可移植性
3.1 可移植性的需要
3.2 Linux的可移植性
3.2.1 抽象层
3.2.2 Linux发行版
3.2.3 建立软件包
3.2.4 可移植的源代码
3.3 硬件可移植性
3.3.1 64位兼容
3.3.2 字节序中立
3.3.3 字节序的门派之争
3.4 本章总结
第4章 软件配置管理
4.1 SCM的必要性
4.2 集中式开发与分散式开发
4.3 集中式工具
4.3.1 CVS
4.3.2 Subversion
4.4 分散式工具
4.4.1 Bazaar-NG
4.4.2 Linux内核SCM
4.5 集成化SCM工具
4.6 本章总结
第5章 网络编程
5.1 Linux套接字编程
5.1.1 套接字
5.1.2 网络地址
5.1.3 使用面向连接的套接字
5.1.4 使用无连接套接字
5.2 传输数据
5.2.1 数据报与字节流
5.2.2 标记消息边界
5.3 使用网络编程函数库
5.3.1 libCurl函数库
5.3.2 使用libCurl库
5.4 本章总结
第6章 数据库
6.1 持久性数据存储
6.1.1 使用标准文件
6.1.2 使用数据库
6.2 Berkeley DB软件包
6.2.1 下载和安装
6.2.2 编译程序
6.2.3 基本数据处理
6.3 PostgreSQL数据库服务器
6.3.1 下载和安装
6.3.2 编译程序
6.3.3 创建一个应用程序数据库
6.3.4 连接服务器
6.3.5 执行SQL命令
6.3.6 使用参数
6.4 本章总结
第7章 内核开发
7.1 基本知识
7.1.1 背景先决条件
7.1.2 内核源代码
7.1.3 配置内核
7.1.4 编译内核
7.1.5 已编译好的内核
7.1.6 测试内核
7.1.7 包装和安装内核
7.2 内核概念
7.2.1 一句警告
7.2.2 任务抽象
7.2.3 虚拟内存
7.2.4 不要恐慌
7.3 内核编程
7.4 内核开发过程
7.4.1 git: 傻瓜内容跟踪器
7.4.2 Linux内核邮件列表
7.4.3 “mm”开发树
7.4.4 稳定内核小组
7.4.5 LWN:Linux每周新闻
7.5 本章总结
第8章 内核接口
8.1 什么是接口
8.2 外部内核接口
8.2.1 系统调用
8.2.2 设备文件抽象
8.2.3 内核事件
8.2.4 忽略内核保护
8.3 内部内核接口
8.3.1 内核API
8.3.2 内核ABI
8.4 本章总结
第9章 Linux内核模块
9.1 模块工作原理
9.1.1 扩展内核命名空间
9.1.2 没有对模块兼容性的保证
9.2 找到好的文档
9.3 编写Linux内核模块
9.3.1 开始之前
9.3.2 基本模块需求
9.3.3 日志记录
9.3.4 输出的符号
9.3.5 分配内存
9.3.6 锁的考虑
9.3.7 推迟工作
9.3.8 进一步阅读
9.4 分发Linux内核模块
9.4.1 进入上游Linux内核
9.4.2 发行源代码
9.4.3 发行预编译模块
9.5 本章总结
第10章 调试
10.1 调试概述
10.2 基本调试工具
10.2.1 GNU调试器
10.2.2 Valgrind
10.3 图形化调试工具
10.3.1 DDD
10.3.2 Eclipse
10.4 内核调试
10.4.1 不要惊慌!
10.4.2 理解oops
10.4.3 使用UML进行调试
10.4.4 一件轶事
10.4.5 关于内核调试器的注记
10.5 本章总结
第11章 GNOME开发者平台
11.1 GNOME函数库
11.1.1 Glib
11.1.2 GObject
11.1.3 Cairo
11.1.4 GDK
11.1.5 Pango
11.1.6 GTK+
11.1.7 libglade
11.1.8 GConf
11.1.9 GStreamer
11.2 建立一个音乐播放器
11.2.1 需求
11.2.2 开始:主窗口
11.2.3 建立GUI
11.3 本章总结
第12章 自由桌面项目
12.1 D-BUS:桌面总线
12.1.1 什么是D-Bus
12.1.2 D-Bus基础
12.1.3 D-Bus方法
12.2 硬件抽象层
12.2.1 使硬件可以即插即用
12.2.2 HAL设备对象
12.3 网络管理器
12.4 其他自由桌面项目
12.5 本章总结
第13章 图形和音频
13.1 Linux和图形
13.1.1 X视窗
13.1.2 开放式图形库
13.1.3 OpenGL应用工具包
13.1.4 简单直接媒介层
13.2 编写OpenGL应用程序
13.2.1 下载和安装
13.2.2 编程环境
13.2.3 使用GLUT库
13.3 编写SDL应用程序
13.3.1 下载和安装
13.3.2 编程环境
13.3.3 使用SDL库
13.4 本章总结
第14章 LAMP
14.1 什么是LAMP
14.1.1 Apache
14.1.2 MySQL
14.1.3 PHP
14.1.4 反叛平台
14.1.5 评价LAMP平台
14.2 Apache
14.2.1 虚拟主机
14.2.2 安装和配置PHP 5
14.2.3 Apache Basic认证
14.2.4 Apache与SSL
14.2.5 SSL与HTTP认证的整合
14.3 MySQL
14.3.1 安装MySQL
14.3.2 配置和启动数据库
14.3.3 修改默认密码
14.3.4 MySQL客户端接口
14.3.5 关系数据库
14.3.6 SQL
14.3.7 关系模型
14.4 PHP
14.4.1 PHP语言
14.4.2 错误处理
14.4.3 异常错误处理
14.4.4 优化技巧
14.4.5 安装额外的PHP软件
14.4.6 日志记录
14.4.7 参数处理
14.4.8 会话处理
14.4.9 单元测试
14.4.10 数据库和PHP
14.4.11 PHP框架
14.5 DVD库
14.5.1 版本1:开发者的噩梦
14.5.2 版本2:使用DB数据层的基本应用程序
14.5.3 版本3:重写数据层,添加日志记录和异常
14.5.4 版本4:应用模板框架
14.6 本章总结
《PhotoShopCS2经典UI设计效果表现》由多年从事UI设计的优秀设计师精心编写,结构合理、重点突出、实例丰富、图文并茂,讲解方式
本书详细地讲解了JavaScript编程所用到的基本知识和常用技术。全书分为三大部分。第1、2章是JavaScript的简介和在HTML中用JavaSc
《波浪理论实战新解:股市波动原理与规律》内容简介:股市波动规律必须建立在具有说服力的股市波动原理之上,这是笔者写作此书不变
《游踪行旅亦有趣》内容简介:《游踪行旅亦有趣》中的作品有叙事的、抒情的、释理的,文笔手法细腻,结构顺畅,条理清晰,内容丰富
《和风漫步》内容简介:本书是一本淡彩街景的绘画教程。淡彩是集柔美与硬朗为一体的绘画艺术,它既具有水彩的诗意,又具有钢笔的行
《卫青(中华先贤人物故事汇)【中宣部2022年主题出版重点出版物】》内容简介:在古今中外的军事史上,卫青堪称不世出的天才。本书
《TensorFlow自然语言处理》内容简介:本书首先介绍NLP和TensorFlow基础知识,然后介绍如何使用Word2vec(包括高级扩展)创建单词嵌
UG NX4实例教程 本书特色 本书以UG NX4为蓝本,重点介绍有关CAD的各部分内容,包括实体建模、装配设计、工程制图和曲面建模等。第1~4章介绍了软件的基...
MichaelAbrashsclassicGraphicsProgrammingBlackBookisacompilationofMichaelspreviou...
《如果有来生 还是做记者》内容简介:本书是纪念“范敬宜新闻教育奖”颁发六周年的感言集。41篇新闻学子真挚深情的文章,记录了他们
☆大数据领域公认权威、百万级畅销书《大数据时代》作者维克托•迈尔-舍恩伯格教授最新力作☆“终身学习”时代的必读书,开启全新
《犹太商人大智慧》内容简介:财富之道;翻开这本书,你将真正踏上百万富翁的成功之旅;如果看完这本书,你还不会挣钱,那你将一生
《现代纠错编码与调制理论及应用》系统地介绍了编解码理论的基本概念、基本方法和基本应用。《现代纠错编码与调制理论及应用》内
《神经网络设计与实现》内容简介:本书是一本神经网络实践进阶指南,适合对AI和深度学习感兴趣并且想进一步提高技能的读者阅读。本
《学校是比家大一点的地方(全2册)》内容简介:在北京,有这样一所很“土”的学校,叫一土学校。创办之初,这所学校只有三间教室,
现代数据库系统及应用教程 内容简介 这是一部关于现代数据库系统的基本原理、技术和方法的教科书。**篇介绍数据库基础知识;第二篇描述关系数据库设计与实现;第三篇介...
本书从2001年世界电信业的那场危机谈起,解读了电信行业领先者成国的奥秘,探寻了成功的电信市场进入战略,调查了良好合作的真相
《别让口才毁了你》内容简介:本书大致讲述口才是一门天入地的大学问,足以立身,足以成事。但也不必走向另一个极端,把口才能力看
《价值投资之茅台大博弈》内容简介:2010~2018年,知名投资人董宝珍重仓持有贵州茅台,经历了跌宕起伏的投资历程,其间他写作了数百
《微视,这么玩才赚钱!》内容简介:这是一本介绍个人如何利用微视创业(赚钱)、企业如何通过微视迅速提升经营业绩(赚更多钱)的