Book Review: Advanced UNIX Programming, 2nd Edition

January 12th, 2005 by Dan Kaspi in

The updated version of this classic text is as well written, detailed and informative as the original.
Your rating: None Average: 5 (1 vote)

Advanced UNIX Programming, Second Edition

Marc J. Rochkind

Addison-Wesley Professional

ISBN 0131411543

$44.99

Although this book is the second edition of this title, the former edition was published quite a while ago, 20 years to be exact. Quite a bit in UNIX programming has changed since then.

The book begins with an introduction to UNIX and its variants, including Linux and FreeBSD. Subsequently, the book deals with I/O--file I/O and, perhaps less common, terminal I/O--processes and threads. A large portion of the book is devoted to interprocess communication (IPC). Coverage is given to pipes, named pipes (FIFOs), shared memory and sockets, all of which are accompanied by many code examples. Also explained are the two sets of system calls used for messages, semaphores and shared memory--System V IPC, the older system, and POSIX IPC, the newer one. In addition to describing each system, the author explains the advantages and disadvantages of using each.

The author also defines, for the purpose of writing the IPC portion of the book, a special interface called SMI--simple messaging interface. SMI is not part of any standard. Instead, it defines requirements for a simple messaging interface, with types and functions of its own, which then is demonstrated in various IPC mechanisms. The final chapter of the book is devoted to signals and timers.

Throughout the book, examples are provided that demonstrate doing things the wrong way--either partially or completely--and subsequently how to fix them. The author also often gives a simple example that builds into a more complex example, which is quite helpful for watching an idea grow. It may take a bit of time to get used to all of the code samples--there are a lot of them. Furthermore, almost every system call is wrapped in a macro that tests its return value; usually it is ec_neg1. Finally, almost every program ends with EC_CLEANUP_BGN / EC_CLEANUP_END macros. Be sure to explore the book's accompanying Web site, which provides all the code samples contained in the book.

All in all, Advanced UNIX Programming, Second Edition is a great book; it's well written, interesting and full of examples. It's a great resource for beginning and intermediate programmers who want to improve their overall knowledge of UNIX.

Dan Kaspi is a software engineer who has been developing network applications for Linux for over five years. Besides being a Linux enthusiast, he likes playing chess and music.

__________________________


Special Magazine Offer -- Free Gift with Subscription
Receive a free digital copy of Linux Journal's System Administration Special Edition as well as instant online access to current and past issues. CLICK HERE for offer

Linux Journal: delivering readers the advice and inspiration they need to get the most out of their Linux systems since 1994.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
komik oyunlar's picture

komik oyun

On February 23rd, 2009 komik oyunlar (not verified) says:

Although I must say this book has been very usefull. I can't say that it was really all that well written. When I read it I found it more of a reference or man page rather than an informative learning book. I would recommend it to the intermediate/advanced programmer but not a beginner.

giydirme oyunları's picture

giydirme

On February 23rd, 2009 giydirme oyunları (not verified) says:

great article thanks

Ben LeMasurier's picture

i felt different about this book

On January 18th, 2005 Ben LeMasurier (not verified) says:

Although I must say this book has been very usefull. I can't say that it was really all that well written. When I read it I found it more of a reference or man page rather than an informative learning book. I would recommend it to the intermediate/advanced programmer but not a beginner.

-Ben
uidzer0.org

Damian Wojsław's picture

Isn't it what the title says?

On January 20th, 2005 Damian Wojsław (not verified) says:

Isn't it what the title says? Advanced UNIX Programming...

-trochej

Anonymous's picture

The informational value of th

On January 15th, 2005 Anonymous (not verified) says:

The informational value of this review would have been greatly enhanced you had compared it to Stevens' Advanced Programming in the Unix Environment.

DanKaspi's picture

Re: The informational value of this review

On January 16th, 2005 DanKaspi (not verified) says:

Hello,
I know and appreciate "Advanced Programming in the Unix Environment" of Stevens , as well as other books of him.

The second edition of Stevens book will be published at July 22, 2005;
at list, according to Amazon site
http://www.amazon.com/exec/obidos/tg/detail/-/0201433079/qid=1105873209/sr=8-2/ref=sr_8_xs_ap_i2_xgl14/104-6017087-9908729?v=glance&s=books&n=507846
This fisrt edition is from more than 10 years ago (1992).

So I felt it will be not appropiate to make a comparison now;
But when it will be out, I intend to read it and post a book review
on it with a comparison to Rochkind book.

Regards
Dan

Aaron's picture

Comparison with stevens book

On December 18th, 2005 Aaron (not verified) says:

Well, it looks like the book is out. I didn't see a comparison review when I did a google search.

Post new comment

Please note that comments may not appear immediately, so there is no need to repost your comment.
The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <pre> <ul> <ol> <li> <dl> <dt> <dd> <i> <b>
  • Lines and paragraphs break automatically.

More information about formatting options

Newsletter

Each week Linux Journal editors will tell you what's hot in the world of Linux. You will receive late breaking news, technical tips and tricks, and links to in-depth stories featured on www.linuxjournal.com.
Sign up for our Email Newsletter

Tech Tip Videos

From the Magazine

December 2009, #188

If last month's Infrastrucuture issue was too "big" for you then try on this month's Embedded issue. Find out how to use Player for programming mobile robots, build a humidity controller for your root cellar, find out how to reduce the boot time of your embedded system, and if you're new to embedded systems find out the basics that go into one. You can also read about the Beagle Board, the Mesh Potato and a spate of other interestingly named items. And along with our regular columns don't miss our new monthly column: Economy Size Geek.







Read this issue