Unix环境中的高级编程第1版

时间:2011-12-06 22:51:54

标签: linux unix operating-system kernel

我将在下学期学习本科操作系统课程,这是一本推荐的书。我想知道你是否仍然会推荐Unix环境第1版中的高级编程,而不是第二版。我知道你不能为你没有参加的课程推荐一本书(不是我要求的),但我想知道是否有人阅读/拥有这两个版本以及他们是否认为第1版仍然相关或由于其年龄(写于1992年)我最好投资第二版。我对unix一无所知,看了第一版之后,它看起来很丰富,让我知道你的想法

2 个答案:

答案 0 :(得分:5)

来自the book's web site

  

UNIX®环境中的第二版高级编程已经更新,以反映当代操作系统和最近的标准变化。此外,对示例章节进行了彻底改革。用于测试书中示例的四个平台包括FreeBSD 5.2.1,Linux 2.4.22,Mac OS X 10.3和Solaris 9.这些平台是一个移动目标,很可能现在有更新的版本,所以你的里程可能会有所不同。

     

主要的变化包括添加一个关于套接字的章节,两个关于线程的章节,以及删除讨论调制解调器通信的章节,尽管这里有一个丢失的章节。此外,打印机通信章节被重写为当今基于网络的打印机。

在我看来,这些变化中最有价值的是使用现代平台进行测试。 APUE 1 / e几乎没有提到Linux,当然也没有涵盖OS X,因为它尚未创建。 2 / e解决了这个问题。

这并不是说APUE 1 / e对Linux和OS X系统编程没用。我在Linux上成功使用了很多年。我想不出任何时候它所涵盖的主题并没有隐含地涵盖在Linux上至少有一种方法。主要的困难是,在有多种方法可以做某事的情况下,APUE通常会提供所有这些方法,但是只需1 / e就可以尝试所有方法来找出Linux所支持的方式。对于OS X来说,这是一个更糟糕的问题,因为它的内核不如Linux那么普及。

我不会错过我的1 / e副本中有关线程和套接字的章节,因为我还有其他书籍。作为一名新的系统程序员,您会发现它们很有价值,直到您找到在这些领域获得更全面的东西的理由。他们都是值得完整书籍的主题。 (全货架,真的。)

无论如何,最重要的是,尽管购买2 / e工作,我仍然有我的1 / e副本。刚回家的1 / e副本就是全部。它仍然有用。

答案 1 :(得分:2)

这是一本好书,第一版并不是很过时。 Unix的许多重点是限制功能和接口随时间变化的程度。本书的旧版本仍然非常有效,而且十九年内只有两个版本的事实说明了unix库和实用程序的稳定性。当然,您的教授应该能够解释您可能遇到的差异。