Software Technologies for Embedded and Ubiquitous Systems

Volume 4761 of the series Lecture Notes in Computer Science pp 67-81

On Distributed Real-Time Scheduling in Networked Embedded Systems in the Presence of Crash Failures

  • Binoy RavindranAffiliated withECE Dept., Virginia Tech, Blacksburg, VA 24061
  • , Jonathan S. AndersonAffiliated withECE Dept., Virginia Tech, Blacksburg, VA 24061
  • , E. Douglas JensenAffiliated withThe MITRE Corporation, Bedford, MA 01730


We consider the problem of scheduling distributable real-time threads in networked embedded systems that operate under run-time uncertainties including those on thread execution times, thread arrivals, and node failure occurrences. We present a distributed scheduling algorithm called CUA. We show that CUA satisfies thread time constraints in the presence of crash failures, is early-deciding, has an efficient message complexity of O(fn) (where f is the number of crashes that actually occur and n is the number of nodes), and is time-optimal with a time lower bound of O(D + fd + nk) (where D is the message delay upper bound, d is the failure detection bound, and k is the maximum number of threads). In crash-free runs, the algorithm constructs schedules within O(D + nk), and yields optimal total utility if nodes are also not overloaded. The algorithm is also “best-effort” in that a high importance thread that may arrive at any time has a very high likelihood for feasible completion (in contrast to classical admission control algorithms which favor feasible completion of admitted threads over admitting new ones, irrespective of thread importance).