A pre-run-time scheduling algorithm for object-based distributed real-time systems I. Santhoshkumar, G. Manimaran, C. Siva Ram Murthy * Department of Computer Science & Engineering, Indian Institute of Technology, Madras 600 036, India Received 18 August 1997; received in revised form 5 February 1998; accepted 16 April 1998 Abstract The most important goal in hard real-time systems is to guarantee that all timing constraints are satis®ed. Even though object-based techniques (which contain reusable software components) are used to manage the complexity in the software development process of such systems, execution eciency may have to be sacri®ced, due to the large number of procedure calls and contention for accessing software components. These issues are addressed by the fol- lowing parallelizing techniques: (a) converting potentially inecient procedure calls to a source of concurrency via asynchronous remote procedure calls (ARPC) (b) replicating (or cloning) software components to reduce the con- tention. The existing object-based scheduling algorithms construct an initial schedule and apply incremental parall- elization techniques to modify the initial schedule till a feasible schedule is generated. But these algorithms are applicable for scheduling only multiple independent tasks. This paper describes a pre-run-time scheduling algorithm for a set of periodic object-based tasks having precedence constraints among them. The algorithm allocates the components of object-based periodic real-time tasks to the sites of a distributed system based on a clustering heuristic which takes into account the ARPC parallelism and load balancing, and schedules them on respective sites. The algorithm also ®nds a schedule for communication channel(s). Further, it clones the components of object-based periodic tasks, if con- tention occurs in accessing them. In addition to the above (periodicity and precedence) constraints, the tasks handled by our algorithm can have resource constraints among them. The experimental evaluation of the algorithm shows that the combination of the proposed clustering heuristic and cloning enhances schedulability. Ó 1999 Elsevier Science B.V. All rights reserved. Keywords: Object-based task; ARPC; Clustering; Scheduling; Cloning; Distributed system; Real-time system www.elsevier.com/locate/sysarc Journal of Systems Architecture 45 (1999) 1169±1188 * Corresponding author. E-mail: murthy@iitm.ernet.in 1383-7621/99/$ ± see front matter Ó 1999 Elsevier Science B.V. All rights reserved. PII: S 1 3 8 3 - 7 6 2 1 ( 9 8 ) 0 0 0 3 1 - 9