分享

Advanced Programming in the UNIX Environment, 3rd Edition: W. Richard Stevens, Stephen A. Rago: 9780321637734: Amazon.com: Books

 鸥友 2018-02-08
In 1992, W. Richard Stevens wrote Advanced Programming in the UNIX Environment (APUE), published in 1993 by Addison-Wesley. The original edition was revised in 2005 by Stephen A. Rago to more accurately reflect the landscape of UNIX and UNIX-like systems. In 2013, Rago wrote an updated 3rd edition upon which this review is based.

APUE is targeted at readers with a working knowledge of UNIX and C. It includes chapter long examples of real-world applications, and manages to simultaneously serve as an enlightening tutorial and a valuable reference book.

Few technical authors have had such a great impact on the geek community as Rich Stevens, and because of this, any review of his books should include a few words about the man himself. Stevens' work typically tops any "recommended reading" list when it comes to TCP/IP networking or UNIX programming. Stevens passed away on September 1st, 1999. In addition to APUE, he authored UNIX Network Programming (Volume 1: APIs and Volume 2: IPC) and TCP/IP Illustrated (Volume 1: Protocols, Volume 2: Implementation, and Volume 3: TCP/T, HTTP, NNTP, Unix Domain Protocols.) Stevens was posthumously awarded the USENIX Lifetime Achievement Award for his extraordinarily lucid teaching and generous spirit within the community, which was accepted on his behalf by his wife and children.

Stephen A. Rago, who accepted the daunting task of revising Stevens' APUE, worked at Bell Laboratories as a UNIX SVR4 developer. His first contact with Rich Stevens was an e-mail regarding a typographical error in Stevens' first book, UNIX Network Programming. Stevens later acted as a technical reviewer for Rago's UNIX System V Network Programming. Rago reciprocated as a technical reviewer for the first edition of APUE, and has done a fine job of revising that same text for the second edition and third editions.

Rago's revisions to the third edition reflect the following changes:
* The text now covers version 4 of the Single UNIX Specification (SUS).
* STREAMS-related interfaces have been obsoleted per SUS POXIS.1-2008.
* The following platforms are covered: FreeBSD 8.0, Linux 3.2.0 (the Ubuntu 12.04 distribution), Mac OS X version 10.6.8 (Darwin 10.80.0), and Solaris 10.
* Linux 2.6 changed to the Native POSIX Thread Library (NPTL).
* "In total, this edition includes more than 70 new interfaces, including interfaces to handle asynchronous I/O, spin locks, barriers, and POSIX semaphores. Most obsolete interfaces are removed, except for a few ubiquitous ones."

Stevens believed that the best way to learn code was to read code, and his books reflect that philosophy well. The original edition contained a chapter titled "Communicating with a PostScript Printer" that included a complete program to communicate over a RS-232 serial connection to an attached printer. Most printers today are accessed via a network interface, and in the second and third editions Rago has changed the material to reflect this while still maintaining the original intent of the chapter.

This book is no superficial update from the previous edition. From cover to cover, it's apparent that Rago has carefully interpreted the original text and rewritten it to accurately reflect the changes of the past several years; he has also managed to preserve to original lucid and efficient presentation style of Stevens' classic.

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多