Skip to content
Paperback Advanced Programming in the UNIX® Environment, 2/e (New Edition) Book

ISBN: 8131700054

ISBN13: 9788131700051

Advanced Programming in the UNIX® Environment, 2/e (New Edition)

Select Format

Select Condition ThriftBooks Help Icon


Format: Paperback

Condition: Like New


1 Available

Book Overview

For more than twenty years, serious C programmers have relied on one book for practical, in-depth knowledge of the programming interfaces that drive the UNIX and Linux kernels: W. Richard Stevens'... This description may be from another edition of this product.

Customer Reviews

5 ratings

One of Two Must-Have UNIX Books

This is one of two must-have UNIX books ("UNIX Network Programming" and "Advanced Programming for the UNIX Environment"). After I had been using UNIX for a long time and was getting into more advanced UNIX programming about a decade ago, these two books were recommended. I checked around and made comparisons. Sure enough, I had to agree. I bought both of them and use them a lot, even when doing Windows programming.As an example, I had to reference them again this weekend. I am using Visual Basic and C++ under Windows to connect some UDP/IP communications between applications. Once again, these books were indispensable (even after looking at online help, Google, Microsoft Knowledge Base and Experts-Exchange). Any Internet professional should have both of these books on their shelf.

A rarity - a great computer book.

The computer industry is notable for the huge quantity of really bad books it engenders. This, however, is not one of those books - this is a great book. Before explaining why it is great, I'd like to get the table of contents out of the way, so that you will know what it covers:Preface1. Introduction (a "whirlwind tour of Unix")2. Unix Standardization and Implementations3. File I/O4. Files and Directories5. Standard I/O Library6. System Data Files and Information7. The Environment of a Unix Process8. Process Control9. Process Relationships10. Signals11. Terminal I/O12. Advanced I/O13. Daemon Processes14. Interprocess Communication15. Advanced Interprocess Communication16. A Database Library17. Communicating with a PostScript Printer18. A Modem Dialer19. Pseudo TerminalsAppendicesA. Function PrototypesB. Miscellaneous Source Code (all source code is available for download)C. Solutions to Selected ExercisesBibliographyIndexThe first thing to understand about the book is that while it can be used as just a reference work (the index is wonderful), it really is a book you can and should read. Even if you think you know a lot of this stuff, you can be surprised at what you can still learn.What makes the book so much more useful than just a collection of man-page print-outs (that dreary and painfully common form of UNIX "book") is the method of presentation. Stevens' basic atom of organization is the function call. For each call (or minor variations on a single call), he provides the C prototype, and then, in text, explains what the function does, what it's arguments are for, and then typically provides a small C program that demonstrates it in action, which he then explains. These function-level building blocks are arranged into related sets, each of which is a chapter in the book. Each chapter has a wrapper that consists of an introduction explaining some basic concepts and history of the functions described in that chapter, and some review exercises at the end. The chapters themselves are arranged so that the earlier chapters describe the basic functions, and the later chapters describe the more difficult functions. Every chapter both teaches the reader something of immediate use in writing code (even the introduction has sample programs), as well as preparing him for the more difficult subjects that lie ahead.Now for the caveats. Stevens absolutely assumes that you know how to program in C and that you know how to use Unix development tools (or at least that you have some other source from which to learn them). This is not the book to learn how to use C or particular shells, editors, compilers, linkers, or debuggers. Similarly, new Unix variants, such as Linux and MacOS X, receive no specific mention here at all (though the book is invaluable for both). Also, there is no discussion of the various GUI interfaces offered on many current Unix systems - for those, some other book will necessary.One other thing worth mentioning is the cost of the book.

Simply the best, too bad no place for 6th star.

This is simply the best book that teaches you about Unix system level programming. Almost all system calls are explained in great details along with very comprehensible examples. The author made a claim that this book is not a mere repetition of Unix Programmer's Manual as the manual lacks logic and examples which this book provides. I think he really lived up to that claim.Many difficult topics are made so easy to grasp, sometimes I think this book should be retitled "Advanced Unix Programming Made Easy". The explanation are smooth with pointers to previously discussed concepts just in case you're lost. Each chapter comes with a number of exercises to try your understanding of the chapter, and most of the answers are available in the appendix of the book so this book is also great for self-learners. Before reading this book, I have read "Advanced Unix Programming" by Marc J. Rochkind, and I was confused by many things the guy said in the book plus the code is pretty outdated already and this book just filled in the gaps I had.The explanation is not geared towards any flavor of Unix, but pretty much all the mainstream Unix flavors such as BSD, SVR4, etc. So that gives a pretty wide horizon of view into Unix in general. I'm personally very impressed with his explanations on signal concept and concurrency controls.This book will provide a solid background for anyone wishing to become Unix/Linux kernel hacker. An investment worth every penny. Beware though, you must have a solid C programming background if you want to reap the maximum benefit out of this book. I found out that it's also a good idea to have K & R "C Programming Language" book around just in case you got confused with pointers, arrays and friends. This guy knows exactly what he is talking about and he expects you to know enough to understand him.

Nothing better than this book.

The only complete reference for programmers working in the UNIX enviroment. Not just a reference book but a very well guide to learn fundamentals of UNIX programming. Everything you want to know about UNIX programming. Signal handling, file system, I/O and lots of other chapters about advanced programming with UNIX. If you're looking a book to develop "real" advanced apps. or to join the development of Linux kernel and other open system projects, this is the FIRST book you must buy...It's sad to say this but the author of this book; the big guru, Richard Stevens is nomore with us. rest it peace guru...

Excellent book on UNIX programming

It is only book I have seen that illustrate unix programming so clear and so detail. Mr.stevens makes many difficult fetures of unix to easy grasp.In the book ,author describes more than 200 system calls and functions;a brief example accompanies each description. Building upon information presented in the first 15 chapters, the author offers chapter-long examples teaching you how to create a database library, a PostScript printer driver, a modem dialer, and a program that runs other programs under a pseudo terminal. To make your analysis and understanding of this code even easier, and to allow you to modify it, all of the code in the book is available via UUNET.
Copyright © 2022 Terms of Use | Privacy Policy | Do Not Sell My Personal Information | Accessibility Statement
ThriftBooks® and the ThriftBooks® logo are registered trademarks of Thrift Books Global, LLC
GoDaddy Verified and Secured