User:Jsmethers

Subpages: TLA

Current Project
I will be working on fleshing out all wikipedia articles about IPC. I hope to approach this from a number of perspectives. First and foremost, from a pratical point of view considering what major APIs are available for use in operating systems today, such as POSIX, BSD, UNIX, Linux, Windows, etc. Second, I hope to give more theoretical information about how to IPC could, should, and would be implemented. This should also include the typical examples such as the dining philosophers, etc.

First steps include finding all wikipedia articles on the subject and melding them with the current IPC category. As I find them I will focus more on improving them from a techinical writing point of view. This includes rewording and rearranging the current content.

I will have to purchase some books on Microsoft IPC methods. These include DDE; COM and COM+; DCOM; ActiveX;  OLE and OLE 2.0; and Microsoft .NET.

Working on IPC will probably lead to other more general operating system topics such as processes, threading, contexts, etc.

Inter-Process Communication (IPC)

 * Category: Category:Inter-process communication
 * Standards and API's: POSIX

Message Passing

 * Pipes
 * Anonymous pipe, Named pipe
 * FIFOs


 * POSIX Message Queues mq_open mq_close mq_unlink mq_getattr mq_setattr mq_send mq_receive mq_notify
 * System V Message Queues msgget msgsnd msgrcv msgctl

Synchronization
Disambiguate: Inner Process, (Interprocess Communication), Kernel


 * Mutexes
 * Condition Variables
 * Read-Write Locks
 * Record Locking fcntl
 * POSIX Semaphores sem_open sem_close sem_unlink sem_wait sem_trywait sem_post sem_getvalue sem_init sem_destroy
 * System V Semaphores semget semnop semctl

Shared Memory
Disambiguate: Distributed, Multiprocessor, (Interprocess Communication)


 * POSIX Shared Memory shm_open shm_unlink ftruncate fstat
 * System V Shared Memory shmget shmat shmdt shmctl

Remote Procedure Calls (RPC)

 * Doors door_call door_create door_return door_cred door_info
 * Sun RPC