Date: Thu, 5 Sep 1996 19:24:35 +1000 From: Julian Assange <proff@suburbia.net> To: hackers@freebsd.org Subject: DIPC (Distributed IPC) Message-ID: <199609050924.TAA00656@suburbia.net>
next in thread | raw e-mail | index | archive | help
Path: news.aus.world.net!news.us.world.net!news.inc.net!news.moneng.mei.com!bloom-beacon.mit.edu!news.mathworks.com!uunet!in3.uu.net!liw.clinet.fi!usenet From: karimik@sun.iust.ac.ir Newsgroups: comp.os.linux.announce Subject: DIPC (Distributed IPC) Followup-To: comp.os.linux.development.apps Date: Fri, 16 Aug 1996 07:21:40 GMT Organization: ? Lines: 118 Approved: linux-announce@news.ornl.gov (Lars Wirzenius) Message-ID: <cola-liw-840180100-17039-0@liw.clinet.fi> NNTP-Posting-Host: localhost X-Cache: nntpcache 0.92.4UL (cf. ftp://nntpcache.org/nntpcache) -----BEGIN PGP SIGNED MESSAGE----- From: karimik@sun.iust.ac.ir (Kamran Karimi) Subject: DIPC (Distributed IPC) update Organization: IUST (Iran University of Science & Technology) Keywords: distributed parallel programming multi computer Kernel IPC DSM WAN TCP/IP heterogeneous Version 0.15 (alpha) of DIPC is now available. It allows you to use stand alone computers connected over a TCP/IP network to work towards the same goal. This replaces version 0.10. The update includes bug fixes, new features, much more documents, more examples and new tools. It can be obtained by anonymous ftp from sunsite.unc.edu, in directory /pub/Linux/Incoming, or /pub/Linux/ALPHA. The original announce of DIPC version 0.10 follows. You can find some information about DIPC and also addresses to contact me here. Good news for Linux power users! I am glad to announce the availability of a pre-alpha system for programming distributed applications, very easily. It works by making System V IPC mechanisms (shared memory, semaphores and messages) network transparent. Meaning that programs on different machines can use the same IPC key to exchange data and synchronize between themselves without bothering about the network. This is called 'Distributed IPC', or DIPC. Programs on different machines can use a key to get a shared region of memory. They can all read from it, and a write by one process will automatically become visible to others . This brings 'Segment Based' Distributed Shared Memory (DSM) to Linux. Messages can also be used to pass data in a synchronous way between machines. Semaphores are used to arbitrate access to the shared memory or the message queues. DIPC is a very simple system that seems to work well. The main parts of it run in user space. It has some advantages: *) There is no need to know about network programming. *) Unlike other distributed programming facilities, there are no new and complex material to learn. If you are familiar with System V IPC, you are already prepared to use DIPC. In any case you can find plenty of information about System V IPC in many books written by professionals. This is one less thing to worry about. *) Existing software, possibly designed for multiprocessor systems, which use System V IPC can easily be converted to distributed software. *) You can write (and to a great extend test) a distributed application on a single machine. *) Some distributed systems require the programmer to take active role in any data exchange across the network. This gives the ultimate flexibility but makes the programmer's work harder. Others, like page-based DSM systems, do data exchanges transparently, but the user has little say in what and how much is transferred. many problems, like false sharing, can occur. In DIPC, as the programmer determines the size of data exchanges (shared memory and message sizes) (s)he can tune the performance if (s)he wants to. It means ease of programming and controllability at the same time. *) DIPC was designed with a heterogeneous environment in mind. *) At least in theory, one may be able to use DIPC on WANs (Wide Area Networks). This may be a major advantage. DIPC can be used on a TCP/IP network. To use it, some changes must be done to the kernel (I used kernel 1.2.8 and gcc 2.6.3 on 486 machines). A manager program should also be running in user space. You can obtain the necessary files and information from the linux Incoming (or ALPHA) directory in sunsite.unc.edu. Note that DIPC is still very alpha. Little testing has been done on it. But This is the main reason I am making this public: to find as many bugs as possible. If you have questions about DIPC, send a mail to me. I am Kamran Karimi, a graduate software student at IUST (Iran University of Science & Technology), working towards an MS. My e-mail address: karimik@sun.iust.ac.ir My s-mail address: Kamran Karimi -----BEGIN PGP SIGNATURE----- Version: 2.6.2i iQCVAwUBMhQgUIQRll5MupLRAQFSkAQA1cS39rCS+kiQ5DYtZmZZemopnIO/3WNy eeJjY/zNsVNAgrIHmjgtdvolKBhKrAUUlhtaJ7koCaCiURNdER6wzO+NVjBvpWGw HlRmGi9W9m4qVzgrR7Wrcz7j0TTQjCkXHmmCna+qmpEKQtHfT65OcKlM0fBowoda dCUVXQls9hI= =VlbE -----END PGP SIGNATURE----- -- This article has been digitally signed by the moderator, using PGP. Finger wirzeniu@kruuna.helsinki.fi for PGP key needed for validating signature. Send submissions for comp.os.linux.announce to: linux-announce@news.ornl.gov PLEASE remember a short description of the software and the LOCATION.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199609050924.TAA00656>