Time/Utility Function Decomposition in Soft Real-Time Distributed Systems

By E. Jensen

We consider RealTime CORBA 2.0 (Dynamic Scheduling) distributable threads, whose time constraints are specified using time/utility functions (TUFs), operating in legacy environments. In legacy environments, system node resources—both physical (processor, disk, I/O, etc.) and logical (locks, etc.)—are shared among time-critical distributable threads and local applications that may or may not be time-critical. Thus, in such environments, distributable threads that are scheduled using their propagated TUFs and scheduling parameters, as mandated by Real-Time CORBA 2.0's Case 2 approach, may suffer performance degradation, if a node scheduler can achieve higher local accrued utility by giving higher eligibility to local threads than to distributable threads. To alleviate this, we consider decomposing TUFs of distributable threads into "subTUFs" that are used for scheduling segments of distributable threads. We present methods for decomposing TUFs. Furthermore, we identify conditions under which TUF decomposition can alleviate performance degradation. Our experimental results reveal that the most important factors that affect the performance of TUF decomposition include the properties of node scheduling algorithms, TUF shapes, task load, Global Slack Factor, local threads and resource dependencies, and that these factors interact.

Download Resources


PDF Accessibility

One or more of the PDF files on this page fall under E202.2 Legacy Exceptions and may not be completely accessible. You may request an accessible version of a PDF using the form on the Contact Us page.