GetTextbooks.com  
 Compare Prices & Save up to 90%
Search by ISBN, title, author, etc ...

Login | Sign up | My Wish List 


UNIX Network Programming, Volume 2: Interprocess Communications (2nd Edition) (The Unix Networking Reference Series , Vol 2)

by W. Richard Stevens

ISBN-10: 9780130810816
ISBN-10: 0-13-081081-9
ISBN-13: 9780130810816
ISBN-13: 978-0-13-081081-6
Hardcover
1998-09-04
Prentice Hall PTR


Find Lowest Price

Editorials


Product Description
Presents a comprehensive guide to every form of IPC, including message passing, synchronization, shared memory, & Remote Procedure Calls (RPC). Text contains extensive new source code - all carefully optimized & available on the Web. DLC: Unix (Computer file).

Amazon.com Review
The first volume of Unix Network Programming, Networking APIs: Sockets and XTI covers just about everything you need to know to get your applications to talk to other computers on a network. In this second volume, W. Richard Stevens discusses what you need to know to get your applications to talk to other applications running on your computer. There's a big difference, and Stevens covers it well.

Stevens introduces the reader to the internal structures of Posix interprocess communication (IPC) and System V (SysV) IPC; pipes and first in, first outs (FIFOs); message queues; how to lock and unlock files and records; semaphores; shared memory; and remote procedure calls (RPCs). He explains the difference between the Posix and SysV implementations of semaphores, message queues, and shared memory. There are also plenty of notes and examples for the reader.

This book is invaluable for programmers because it explains all of those little "gotchas" that always seem to pop up. In addition, the explanations of the differences between Posix IPC and SysV IPC really help readers decide which version they'd like to use for their applications. --Doug Beaver


Reviews


If you want to program in Linux you need this book.
Programming UNIX or Linux networks is a piece of cake with these books. You need the set, Vol 1 & 2.

As a professional programmer of 20 years I use the book as a refernce for all my new programs. I have used the books to break into the world of VoIP and audio CODEC network programming.

Classic work - but in series need of updates as time goes on
I cannot fathom a guess as to how many times the books in this series have saved my in project work over the years. The only drawback with this series is that some publisher should endeavor to keep them up to date. Serious Unix system programmers must have copies of the complete series.

The real power of UNIX is in communication
The real power of UNIX or any application for that matter is in interprocess communication. I found early on that to accomplish any large project would require the cooperation of interprocess communication. Now I find that simple administration skills also require knowledge of this interprocess communication.

My first foray into the field was to use semaphores to flag processes to run at the proper time. Later I needed to use pipes for a front-end in communication to SNA. Again I found IPC's could help inform and control processes that were in canned packages and not accessible any other way. The list of useful tools can go on and on. I also had to find the NT equivalent as it became popular.

UNIX is still out there in many forms and if one is to survive in the field an understanding of interprocess communications is imperative.

The Abbreviated Table of Contents:
Part 1. Introduction
1. Introduction
2. POSIX IPC
3. System V IPC
Part 2. Message Passing
4. Pipes and FIFOs
5. Posix Message Queues
6. System V Message Queues
Part 3. Synchronization
7. Mutexes and Condition Variables
8. Read-Write Locks
9. Record Locking
10. POSIX Semaphores
11. System V Semaphores
Part 4. Shared Memory
12. Shared Memory Introduction
13. POSIX Shared Memory
14. System V Shared Memory
Part 5. Remote Procedure Calls
15. Doors
16. Sun RPC
Epilogue
Appendix A. Performance Measurements
Appendix B. Threads Primer
Appendix C. Miscellaneous Source Code
Appendix D. Solutions to Selected Exercises
Bibliography
Index

One final note is that with systems dispersed globally Remote Procedures Calls are taking precedence in Interprocess communications.

Five star book on a four star subject
Since anyone considering buying a technical book always needs to know what it covers, here's the table of contents:

Part 1. Introduction

1. Introduction

2. Posix IPC

3. System V IPC

Part 2. Message Passing

4. Pipes and FIFOs

5. Posix Message Queues

6. System V Message Queues

Part 3. Synchronization

7. Mutexes and Condition Variables

8. Read-Write Locks

9. Record Locking

10. Posix Semaphores

11. System V Semaphores

Part 4. Shared Memory

12. Shared Memory Introduction

13. Posix Shared Memory

14. System V Shared Memory

Part 5. Remote Procedure Calls

15. Doors

16. Sun RPC

Epilogue

Appendix A. Performance Measurements

Appendix B. Threads Primer

Appendix C. Miscellaneous Source Code

Appendix D. Solutions to Selected Exercises

Bibliography

Index

This is the third and least of Stevens' three books on UNIX programming (he also coauthored a multi-volume work on TCP). It is the not the least because it is necessarily the worst, but because it has the shortest and has the narrowest application domain.

Having said it is the least, it remains a work of the highest quality in an industry that is notable for the huge quantity of bad books that it produces. The structure of this book will be familiar to readers of his prior two books: the lowest-level building block around which Stevens structures the book is the individual 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 provides a small C program that demonstrates it in action (all of the sample programs can also be downloaded from the web). 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 explains the basic concepts behind the functions in that chapter, and some review exercises at the end. The chapters in turn build on each other, with the most basic ones at the beginning and the more difficult ones towards the end.

In spite of the book's many positive qualities, one thing that this book brings to light, however, is that there is a thread-sized hole in Stevens' UNIX writings. "Advanced Programming in the UNIX Environment" had a great deal of information about processes, but nothing about threads. "UNIX Network Programming: Volume 1", discussed multi-threaded socket programs, but didn't go into any depth on threading. This volume, although it discusses thread synchronization, only touches on general threading issues. Thus, the works, taken as a group, go into some of the important issues and uses of threading without giving the reader a solid grounding in the subject. As threading increases in frequency, this deficiency has grown in importance.

Another difference between this book and its predecessors is that it deals with an area where standards are much weaker than the others; thus, the chapters often have to explain different implementations for accomplishing a task rather than building a basic-to-advanced sequence. This obviously is in no way Stevens' fault, but many readers will find that half the book, which is already the thinnest of Stevens' programming books, is concerned with API's which do not exist on their platform of interest.

To sum up, while this review clearly shows the reservations I have about this book compared to its predecessors, it must still be stressed that Stevens' is a technical author of the highest level. If you do have a need to understand any of the subjects in this book, you won't find a better teacher from which to learn it, and that is why I am still giving the book five stars.


A must own for every serious programmer
This book is a must own for every serious programmer on the unix platform. It provides an insight on various forms of IPC APIs available on the unix platform. It provides coverage of both System V and POSIX standards, there is no match to it as far as IPC is concerned. The Appendices in the end also provide a performance comparison between pipes, FIFOs, posix message queues, System V message queues, doors and Sun RPC. I have not seen another book provide such a wide and deep coverage of this topic. What more - it all comes from the GURU himself!


Home | Browse | Professors | Merchants | Webmasters | Contact Us

[ Canada | United Kingdom ]

Copyright © 2003-2008 GetTextbooks.com