Oct 11 2007
Unix IPC
Unix Inter-Process Communication Course
Early 1999, I taught a course on Unix inter-process communications. The course was based on W. Richard Stevens books. The course covers,
- Unix process and IPC
- System V and ANSI Signals
- System V and POSIX Semaphores
- System V and POSIX Shared Memory, and Persistent Shared Memory
- Pipes and Message Queues
- TCP/IP Socket
- Unix process priorities
Both the course slide package and source code can be downloaded from the following links. Feel free to use them for any purpose. Both files are under BSD license.
Download the course slide package (PDF format)
Download the example source code (all in C)
Free C++ Library
This is a collection of utility classes that I wrote or adopted over the years. The classes should compile without any problem under Linux, FreeBSD, Solaris and HP-UX with GNU G++ 2.96, EGCS 2.91.66 or later versions with STL. The classes are now donated to the public under the BSD license.
If you find the classes useful or have a good suggestion, send me an email: Jiwei.Wang -at- ywywy – com.
The following is a complete list of classes. Details of the classes can be found in the header files. Sample usage code can be found under ./examples and ./config directories.
- Config: Configuration file reader, supporting file include with extensive error checking.
- Ctrace: tracing utility, allowing turning tracing on and off with environment variables. Tracing code can also be compiled out of the binary.
- HTTPHeader: HTTP request header parser.
- HTTPMethods: HTTP methods, get/put/post.
- HTTPResponse: HTTP response header parser.
- IndexHash: Sparse array based on STL Hash-map. Extremely efficient.
- IndexHashMutex: Sparse array with mutex protection
- Tqueue: C++ wrapper of task queue By Xavier Leroy
- MutexQueueP: Mutex protected pointer based queue
- MutexQueueV: Mutex protected value based queue
- MutexQAsymmetricP: Mutex protected asymmetric queue
- ObjectPool: Object pool
- ObjectPoolMutex: Object pool with mutex protection
- SocketAddress: Socket address wrapper
- TCPSocket: TCP socket class wrapper, with extensive support to HTTP
- UDPSocket: UDP socket wrapper
- Hexdump: displaying binary in hex
- Ctimer: timer and stop watch
- QuickHash: A quick hash wrapper, algorithm by Bob Jenkins
- Stringtok: String token class by pedwards at jaj.com
Downloading the C++ utility classes (300KB)
Really good work
[Reply]
Very useful information. Lot of efforts are really required to create these kind of document. Very useful IPC document
Thank you very much
regards
Bhagavan
[Reply]