User:Jsmethers

From Wikipedia, the free encyclopedia

Wikipedia:Babel
en This user is a native speaker of English.
C This user can program in C.
C++ This user can program in C++.
Java-2 This user is an intermediate Java programmer.
sql-2 This user is an intermediate SQL programmer.
php-2 This user is an intermediate PHP programmer.
HTML-2 This user is an intermediate HTML user.
Firefox This user contributes using Mozilla Firefox.
This user contributes using Microsoft Windows .
Search user languages

Subpages: TLA

Contents

[edit] 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.

[edit] Inter-Process Communication (IPC)


[edit] Message Passing

  • 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

[edit] 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

[edit] Shared Memory

Disambiguate: Distributed, Multiprocessor, (Interprocess Communication)

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

[edit] Remote Procedure Calls (RPC)

  • Doors door_call door_create door_return door_cred door_info
  • Sun RPC


[edit] Performance

[edit] References

  • Stevens, Richard. UNIX Network Programming, Volume 2, Second Edition: Interprocess Communications. Prentice Hall, 1999. ISBN 0130810819
  • Hart, Johnson M. Windows System Programming, Third Edition. Addison-Wesley, 2005. ISBN 0321256190

[edit] Future Projects

[edit] Linkers, Loaders, Libraries, Object Files, Executables, etc.

[edit] Networking, Sockets, etc.