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=0.6 required=5.0 tests=BAYES_05,INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!rutgers!ames!sdcsvax!ucbvax!SIERRA.STANFORD.EDU!ROSENBLUM From: ROSENBLUM@SIERRA.STANFORD.EDU (David S. Rosenblum) Newsgroups: comp.lang.ada Subject: Re: Answer to 'a question' Message-ID: <12332478709.9.ROSENBLUM@Sierra.Stanford.EDU> Date: Sun, 6-Sep-87 12:08:51 EDT Article-I.D.: Sierra.12332478709.9.ROSENBLUM Posted: Sun Sep 6 12:08:51 1987 Date-Received: Sun, 6-Sep-87 21:17:58 EDT References: <219@trwrc.UUCP> Sender: daemon@ucbvax.BERKELEY.EDU Organization: The ARPA Internet List-Id: >>>My question is: Are those entry calls queued in the order of calls? >>>YES. ... The key is that the execution of the >> >>Unfortunately, you are assuming a single processor system. In any distributed >>or multiprocessor system, where calls are implemented via message exchange, >Wrong! Not in any OS. In a properly designed real-time, multiprocessor, >Ada OS, where tasking across machine boundaries is implemented via messages, >the design of the bus insures that the messages are received in the order >that they are sent out. A common solution is a ring bus such as the SAE-9B >token-passing ring. Why would the communication of a rendezvous over a >interprocessor bus between run-time systems in different kernals be any >different than passing a message from a task to a run-time kernal >in the same processor via system services? There are many synchronization >problems to be reconed with in these implementations and that is why it has >taken Ada contractors over five years to get even close to a solution. >As an example all processors are synchronized within nanoseconds by a >"heartbeat" signal and messages are time-tagged to resolve ambiguities between >real-time events. There seems to be a slight misunderstanding in some of these messages. What is at issue--the order in which calls are issued or the order in which call messages are sent over a network? Using both time-tagging and network serialization of messages, the time order of messages may still NOT be the same as the sending order, especially using a token ring network. If time-tagging is used to resolve the order of real-time events, then the type of network used is immaterial. If the network is used to impose a serialization of real-time events, there is no guarantee that the network order is the same as the real-time order of occurrence. Nevertheless, this skirts a more fundamental issue, namely that software which depends on such implementation characteristics cannot be portable. Remember that a major goal of the Ada language is portability of Ada software. -- David -------