From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,23f777a1c26e56c1 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 1995-01-30 05:49:57 PST Newsgroups: comp.lang.ada Path: nntp.gmd.de!newsserver.jvnc.net!nntpserver.pppl.gov!princeton!gw1.att.com!fnnews.fnal.gov!uwm.edu!vixen.cso.uiuc.edu!howland.reston.ans.net!EU.net!chsun!mlma11.matrix.ch!user From: Mats.Weber@matrix.ch (Mats Weber) Subject: Re: How can two tasks in different processors rendezvous? Message-ID: Sender: usenet@eunet.ch Organization: ELCA Matrix SA References: Date: Mon, 30 Jan 1995 13:49:57 GMT Date: 1995-01-30T13:49:57+00:00 List-Id: In article , cordeiro@cs.nps.navy.mil (mauricio cordeiro) wrote: > We have 2 different Ada tasks running asynchronously in two different > workstations, and we need to transfer information from one to the other > (a kind of remote rendezvous...). You cannot do it with a rendez-vous. Ada's tasking model almost implies shared memory between the processors executing the same Ada program. Ada 83 has no built-in support for distributed systems. Many papers have been written on the subject, but I don't have the references. Ada 95 still uses the shared memory model for tasks, but offers an additional mechanism for distributed systems, described in an annex of the reference manual. It is based on RPC and is, IMO, very well done. I hope someone will implement it for release with GNAT. > The workstations run Unix and are networked, but the compiler we have > (SunAda), doesn't support any kind of RCP(remote procedure calls) or any > other similar facility. In the meantime, there are several possibilities: - Check out Paradise, a package offering TCP/IP communication primitives to Ada programs, with special care given to tasks (so that your whole program doesn't stop because one of its tasks is waiting for a Network message). I haven't got the exact reference for Paradise (look at the bindings section on the Ada WWW server ), but I know it is available through anonymous ftp and released under the GPL. - Use SunRPC or access TCP/IP sockets directly (that is, write an Ada binding to the relevant UNIX subprograms). This is quite easy if your programs have no tasks but becomes very hard otherwise. Mats