Rating: Summary: Comprehensive coverage of diff. interprocess comm. methods Review: Covers semaphores, mutexes, read write locks, record locks, message queues, pipes and shared memory with extensive examples in C.A must have book along with Vol I for anyone dealing with network programming.
Rating: Summary: Great book but lacks some vital information for IPC Review: great info about pipe, shared memory. need some more work but overall good to have this book. It is sad that author of this book (GodFather of Unix) is no longer here. I learned very much from having this book. Some improvements have been made from earlier edition. This may not be the first book recommended for beginners.
Rating: Summary: Great book but lacks some vital information for IPC Review: great info about pipe, shared memory. need some more work but overall good to have this book. It is sad that author of this book (GodFather of Unix) is no longer here. I learned very much from having this book. Some improvements have been made from earlier edition. This may not be the first book recommended for beginners.
Rating: Summary: Comprehensive coverage of diff. interprocess comm. methods Review: I didn't get exactly what I needed out of this book. It's good as a reference, but I think it leaves out some information on different topics. The IPC section is a little skimpy, but then again it's not a book about IPC per se...some of the stuff the way it was written was not any more understandable than a manpage, and often you buy books hoping that they are worded less cryptically than manpages. On the upside, I got most of what I needed out of it.
Rating: Summary: Good but not thorough. Review: I didn't get exactly what I needed out of this book. It's good as a reference, but I think it leaves out some information on different topics. The IPC section is a little skimpy, but then again it's not a book about IPC per se...some of the stuff the way it was written was not any more understandable than a manpage, and often you buy books hoping that they are worded less cryptically than manpages. On the upside, I got most of what I needed out of it.
Rating: Summary: Indespensible! Review: I found this book invaluable when having to port POSIX code to a SVR4 system. The examples given are obscure, but useful for a serious systems programmer. Having first referenced several other books for the same material, I found there were no comparisons once I picked up UNPv2. A *must have* reference book for Unix systems programmers!
Rating: Summary: As always, Stevens is worth every penny. Review: Ok, I will admit to be biased. Stevens is a unix programming god. Or mine anyway. However, I will dare say that again he has improved his previous good work. I felt that he improved and showed a lot more in his second edition of Volume I, and I felt the same way about volume II. While his was HARDLY the first serious book on thread programming that I have read (I also suggest programming with Posix Threads, if it interests you), his was very informative, from both a beginner and advanced standpoint. If you have only one author to buy, this is it.
Rating: Summary: As always, Stevens is worth every penny. Review: Ok, I will admit to be biased. Stevens is a unix programming god. Or mine anyway. However, I will dare say that again he has improved his previous good work. I felt that he improved and showed a lot more in his second edition of Volume I, and I felt the same way about volume II. While his was HARDLY the first serious book on thread programming that I have read (I also suggest programming with Posix Threads, if it interests you), his was very informative, from both a beginner and advanced standpoint. If you have only one author to buy, this is it.
Rating: Summary: Five star book on a four star subject Review: 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.
Rating: Summary: The real power of UNIX is in communication Review: 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.
|