We present I-Systems as a formal constraint-based approach for modeling and analyzing both autonomous and reactive behavior in a distributed system. Essentially it is a formalism of interacting finite automata. We demonstrate its incremental potential by stepwise modeling a solution for a synchronous communication problem.
Specific problems in practical distributed system design arise from incomplete information about the cooperation requirements, up to, or even beyond, the final design stage. Events in components will occur, or they may occur, depending on (local) user decisions. The latter may also not occur, as a result of yet unknown external influences or design faults. Adequate formal modeling tools should allow for distinguishing between such different event types. Our approach for this purpose to be introduced here is the formal model of I-Systems. As a particularly relevant and unique feature, the presence as well as the absence of interactional influences (as part of distributed cooperation requirements) can be explicitly modeled, with no side effects. A non-trivial synchronization problem is modeled incrementally in order to demonstrate both the modeling and analysis capabilities in I-Systems.
For detecting timing errors in distributed real-time programs it is essential to know all combinations of execution paths of subprograms to,tl, ..., t, where a given path of to experiences a worst-case blocking time caused by a scenario of operations on execution paths of tl, ..., t,,ab? to such operations blocking certain operations of to while accessing shared resources. This paper deals with the problem of determining all possible worst-case blocking scenarios of an execution path of to by execution paths of t l , ..., t,,. While this problem is NP-hard we give a polynomial algorithm for an associated ("wed) problem which computes an often tight superset of these scenarios in a variety of practically relevant application situations. MotivationThere has been a strongly growing interest in debugging distributed real-time programs, already starting before the ADA real-time guidelines were published in 1990 [3]. In such ADA programs communication between subprograms (tasks) is achieved through mutually exclusive server calls. Since this concept is a familiar paradigm for distributed real-time program execution we took it as a basis for a formal analysis approach. In order to determine whether a task may miss a deadline all possible distributed execution paths of the given program have to be analyzed. Given that worst-case execution times for Local operations within tasks (no server calls) could be efficiently computed or measured the first key problem is to evaluate, for a given path po of a task t~, the worst-case waiting (blocking) time caused by competing server calls (global operations) on execution paths p1, p2, ... , pn associated with the other tasks tl, t2, ... , t, in the given program. The second key problem is then to find the configurations, or scenarios, of execution paths that exhibit the worst-case behavior. Discussed as a graph-theoretical problem the first problem is already NP-hard [SI. In an important reduction step that leads to an associated problem of determining a very good upper bound for the maximum waiting time (this will be indicated below) the problem turns into studying, for a path pi of task ti , just the subsequence of its global operations, and into checking for 1068-3070/96 $5.00 0 1996 IEEE Proceedings of EURWRTS '96 worst-case blocking scenarios forpo here. In [5], a new algorithm has been represented for computing the worstcase blocking time for 2 global operation paths corresponding to tasks and tl , respectively. The worstcase blocking time is caused by global operations in p1 which prevent global operations in po from accessing shared resources. Such pairs of global operations from p1 and po are called blockages, and the worst-case blocking time is caused by certain sequences of blockages, so-called worst-case blocking sequences. As the next step we developed in [4] an efficient algorithm for finding all possible blocking sequences between the global operation paths. (This is a superset of the blocking sequences for the second key problem mentioned above, and a tight one for ...
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.