《UNIX环境高级编程》学习总结

《UNIX环境高级编程》(第二版)(人民邮电出版社)

【美】W.Richard Stevens & Stephen A.Rago 著

尤晋元 张亚英 戚正伟 译

第一次阅读总结

2011年11月17日购于当当网,2012年3月初开始阅读,至3月底全书21章阅读完毕。本次阅读采用的策略是粗读,书中的绝大部分实例中的程序代码我都没仔细研究,只是了解了该实例要实现怎么样的功能,使用了那些关键的技术。在阅读过程中一些一下子搞不明白的地方也没有深究,只是在书中留下记号。

我承认,书本封面的三格漫画我还没有看明白。

内容提要:

本书在保持前一版风格的基础上,根据最新的标准对内容进行了修订和增补,反映了最新的技术发展。书中除了介绍UNIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了多个应用实例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案,还有一个非常有用的索引。

我的总结:

以前学习C语言的时候,就只知道编写一些简单的程序,至多也只是调用那么几个C库函数,从来没有考虑过自己的程序与所在的操作系统的关系。这一点跟开发嵌入式的单片机程序很像,因为那程序是裸跑的,单片机上没有搭载操作系统。但是真正应用广泛的,具有更强的功能的以及可移植性的程序都是跑在某个特定的操作系统里面的。基于UNIX的操作系统有很多,其中使用比较广泛的Linux也是我自己最近在学习的。

我在看这本书之前先是学习了操作系统课程,然后自学了《深入理解LINUX内核》。所以对这本apue,我感觉阅读起来难度不大,书中提到的很多与操作系统相关的一些知识我都事先了解过了。事实上,这也是本书的一大亮点。它不单单是讲解在UNIX环境中编程需要用到哪些函数、策略。它还比较深入地具有针对性地讲解了所涉及到的一些操作系统相关的知识。这令人读起来很舒畅。

书本的第一章是UNIX基础知识,这是这类的每一本书籍所惯常有的,可以使读者先大致了解一些相关的情况。第二章比较重要,它讲解了贯穿本书的三个标准:ISO C, IEEE POSIX, Single UNIX Specification 。每一个标准都是前一个的超集。这也是程序员在开发可移植性强的程序时所必须考虑的。然后接下来就详细讲解了各种I/O,因为这是程序最常用到的。接着是进程相关的内容,这也I/O一样,是本书的两大重点之一。当然,讲解完进程少不了对线程的介绍,这是能大大地提高程序性能的一种技术。书本的后半部分主要讲解进程间通信,我感觉这是一种比较高级的技术,在大型程序当中特别重要。

读完之后觉得意犹未尽。真是一本神书!它讲解得太好了。不过回想起来,7百页的一本书,怎么这么少内容的?是我把先前看的内容都忘记了太多还是我已经把书读薄了?

2012.3.26

你可能感兴趣的:(编程,unix,网络,嵌入式,linux内核,操作系统相关)