本书介绍了Linux环境下进行应用程序开发需要掌握的知识,对许多编程实践中经常遇到的内容进行了详细的讲解,并且提供了典型的实例加以说明。 全书分为四个部分。第1部分是初学者需要了解的知识,包括Linux的历史、从事自由软件开发需要了解的版权知识和GPL等许可证,以及如何获取和使用在线文档系统。第2部分介绍了开发环境和工具。其中包括Vi,emacs编辑器,gdb调试器的使用,gcc的选项和扩展,GNU C库的基本知识,内存溢出和泄漏的调试工具,如何创建、使用、管理静态库和动态库,以及如何通过系统调用请求系统服务。第3部分详细介绍了Linux系统编程知识。其中包括进程模型,简单文件管理,信号处理,高级文件操作,目录操作,作业控制,终端与伪终端,socket网络,时I司和定时器,随机数,虚拟控制台,Linux控制台,以及如何编写安全的程序。第4部分精选了Linux编程中最常用的开发库进行介绍。其中包括字符串匹配,用于终端编程的S-lang库,基于散列的数据库函数库,命令行解析库,如何运行时动态加载共享对象,以及有关用户身份识别和验证的库。 本书内容丰富、实用,语言通俗,不仅适合初学者学习,也适合熟悉Unix环境编程的高级开发人员参考。