Advanced Programming in the UNIX Environment: Paperback Edition (Addison-Wesley Professional Computing Series) (英語) ペーパーバック – 2005/6/17
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
The late W. Richard Stevens was the acclaimed author of UNIX® Network Programming, Volumes 1 and 2, widely recognized as the classic texts in UNIX networking; as well as TCP/IP Illustrated, Volumes 1-3, and the first edition of this book.
Stephen A. Rago is the author of UNIX® System V Network Programming (Addison-Wesley, 1993). Rago was one of the Bell Laboratories developers who built UNIX System V, Release 4. He served as a technical reviewer for the first edition of Advanced Programming in the UNIX® Environment. Rago currently works as a manager at EMC, specializing in file servers and file systems.
The real strength of this book is in the definitions. We get to see the purpose and flexibility of system calls and functions. Not just use them but understand them. UNIX functions as job control or signals are explained in detail. Let’s take just one item “waitpid”:
The waitpid function provides three features that aren’t provided by the wait function.
You will have to red the book to find out what they are. However there are examples also. Now for people with real systems like AIX all you have to do is ad a “k” to the front of the call and you have the AIX kernel function call “kwaitpid”; voila you now have an understanding that can not be found clearly in a Red Book.
It does help some to have a preunderstanding of the system do you can use the book to fill in the education holes missed when necessary.
The index is worth its weight in gold as you can find functions headers and concepts all in alphabetical order. My favorite is the definitions.
As much as I am a fan of the internet it also pays to carry the information in the form of a book. And all this book has to do is save a couple of hours and it has paid for its self.
If it were run through a compiler then a number of errors would be thrown up in relation to references to undeclared functions caused by forward referencing to functions described in later sections or chapters without indicating this which may confuse the reader.
1. The book focuses heavily on standards and portability. Throughout the book, API and implementations are described according to the SUS or XSI standards. However, to book maintains a firm grasp on reality by tracking 4 real Unix-like systems, Solaris, Linux, Mac OS X, and FreeBSD throughout and noting implementation specific exceptions and extensions where applicable.
2. A lot of illustrative example code is included. In some cases API functions are re-implemented to make it clear exactly how it works.
APUEv2 reads quite easily as a beginner's introduction to programming in the Unix environment. However it also includes a great deal of tables, charts, and figures to make it suitable as a reference for the more experienced programmer, useful as a back-up in case the local man pages are not available.
As mentioned in the foreword, readers should be comfortable with the C language itself before attempting to dive in to Unix programming.
You will not be dissapointed.