Results 1  10
of
13
Algorithms and Complexity Concerning the Preemptive Scheduling of Periodic, RealTime Tasks on One Processor
 RealTime Systems
, 1990
"... We investigate the preemptive scheduling of periodic, realtime task systems on one processor. First, we show that when all parameters to the system are integers, we may assume without loss of generality that all preemptions occur at integer time values. We then assume, for the remainder of the pape ..."
Abstract

Cited by 180 (13 self)
 Add to MetaCart
We investigate the preemptive scheduling of periodic, realtime task systems on one processor. First, we show that when all parameters to the system are integers, we may assume without loss of generality that all preemptions occur at integer time values. We then assume, for the remainder of the paper, that all parameters are indeed integers. We then give as our main lemma both necessary and sufficient conditions for a task system to be feasible on one processor. Although these conditions cannot, in general, be tested efficiently (unless P = NP), they do allow us to give efficient algorithms for deciding feasibility on one processor for certain types of periodic task systems. For example, we give a pseudopolynomial time algorithm for synchronous systems whose densities are bounded by a fixed constant less than 1. This algorithm represents an exponential improvement over the previous best algorithm. We also give a polynomialtime algorithm for systems having a fixed number of distinct typ...
FixedPriority EndToEnd Scheduling In Distributed RealTime Systems
, 1997
"... In recent years more and more realtime applications run on multiprocessor or distributed systems. In such systems, a task may execute sequentially on many different processors. Such a task can be viewed as a linear chain of subtasks, each of which represents a segment of the task that executes on o ..."
Abstract

Cited by 27 (0 self)
 Add to MetaCart
In recent years more and more realtime applications run on multiprocessor or distributed systems. In such systems, a task may execute sequentially on many different processors. Such a task can be viewed as a linear chain of subtasks, each of which represents a segment of the task that executes on one of those processors. The response time of the task is measured from the release of its first subtask to the completion of its last subtask and is called the endtoend response time. A task is schedulable if its endtoend response time is never greater than the specified endtoend relative deadline. This thesis deals with the problem of scheduling periodic tasks to meet their endtoend deadlines. Specifically, the thesis focuses on fixedpriority scheduling algorithms, where each subtask is assigned a fixed priority and is scheduled preemptively. According to this approach, three related problems need to be solved. Priority Assignment : How we assign the priorities to subtasks so that...
Efficient Methods of Validating Timing Constraints
, 1995
"... Introduction In a realtime system, many jobs are timecritical. Here, by job, we mean a unit of work to be scheduled and executed. A job may be the computation of a control law, the transmission of an operator command, the retrieval of a file, and so on. To execute, it requires a computer, a data ..."
Abstract

Cited by 11 (0 self)
 Add to MetaCart
Introduction In a realtime system, many jobs are timecritical. Here, by job, we mean a unit of work to be scheduled and executed. A job may be the computation of a control law, the transmission of an operator command, the retrieval of a file, and so on. To execute, it requires a computer, a data link, a console, and a disk; we refer to them all as processors. The processors are identical if they can be used interchangeably. Otherwise they are functionally dedicated, as exemplified by the processors listed above. The length of time a job requires to complete if it were to execute alone is called its execution time. The execution of a timecritical job cannot begin until its release time and must complete by its deadline. To validate a realtime system, its builder must demonstrate convincingly that all timecritical jobs will always complete by their deadlines, after making sure that the scheduler
Prefetching and caching for query scheduling in a special class of distributed applications
 In ICPP
, 1996
"... ..."
A Framework For The Simulation Of Complex RealTime Systems
, 1997
"... Simulation is often used in the analysis of complex computing systems. The design and validation of complex realtime systems demands capabilities not found in existing simulation environments. We categorize these capabilities into three major functional areas: search control, the execution engine, ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
Simulation is often used in the analysis of complex computing systems. The design and validation of complex realtime systems demands capabilities not found in existing simulation environments. We categorize these capabilities into three major functional areas: search control, the execution engine, and output analysis. Search control is an imporant topic often treated lightly in simulation environments for realtime systems. The search controller chooses values for variable input parameters and launches simulation sto determine the performance of the system under different sets of parameter values. The search control framework presented in this thesis allows both conventional design and search and also validation search
Scheduling Queries With Large OutofCore Data Sets
, 1995
"... We consider the problem of dynamic, preemptive scheduling of queries that have a shared data set. The model consists of (a) a processing node with limited physical memory, (b) a disk resident data set, (c) Poisson arrival of queries, (d) known probability distributions of processing times and (e) fi ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
We consider the problem of dynamic, preemptive scheduling of queries that have a shared data set. The model consists of (a) a processing node with limited physical memory, (b) a disk resident data set, (c) Poisson arrival of queries, (d) known probability distributions of processing times and (e) fixed, nonzero cost of data fetches from the disk. The objective is to minimize the flow time of the queries. In this paper we assume that the queries may be scheduled in any order. Data is fetched from the disk in units of "chunks", which are assumed to be fixed size. Each query may process the data chunks in any order. Since the data is shared, a single data chunk may be required by multiple queries. Hence, an efficient scheduling algorithm must ensure that the chunk is read from disk a minimum number of times. It is well known that the shortest expected remaining processing time (SERPT) rule can minimize the flow time for memory resident tasks. However, it is unclear how successfully SERPT ...
Exploiting Data Locality For Multiprocessor Query Scheduling
 International Conference on Parallel Processing
, 1996
"... We analyze the scheduling aspects of database queries submitted to an abstract model of a very large distributed system. The essential elements of this model are (a) a finite number of identical processing nodes with limited storage capacity, (b) a finite number of queries to be serviced, (c) a very ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
We analyze the scheduling aspects of database queries submitted to an abstract model of a very large distributed system. The essential elements of this model are (a) a finite number of identical processing nodes with limited storage capacity, (b) a finite number of queries to be serviced, (c) a very large readonly data set that is shared by all queries and (d) a fixed internode communication latency. This framework models an important class of applications that use distributed processing of very large data sets. Examples of these applications exist in the very large database and multimedia problem domains. To meet the objective of minimizing flow time of queries while exploiting interquery locality, various heuristics are proposed and evaluated through extensive simulation. 1 Introduction 1.1 Motivation for the Problem In recent years, increasing processor speeds and distributed computing are making feasible query processing over very large databases. The size of the database in s...
The Role of the Software Engineer in RealTime Software Development: An Introductory Course
"... Abstract: A noteworthy feature of the computing industry is the increasing demand for applicationspecific software. For example, software to control a factory in realtime involves timing, faulttolerance, and safety constraints. These requirements differ from those one would encounter in the design ..."
Abstract
 Add to MetaCart
Abstract: A noteworthy feature of the computing industry is the increasing demand for applicationspecific software. For example, software to control a factory in realtime involves timing, faulttolerance, and safety constraints. These requirements differ from those one would encounter in the design of a software interface to a database. Software engineers who architect realtime systems need to know how to apply basic principles about realtime computing, but there is a gap between realtime computing theory and industrial engineering practice. The subject of this report is a fullsemester course, Introduction to RealTime Software and Systems, which bridges this gap by focusing on the role of the software engineer in realtime software development. This course shows how realtime computing theory can be incorporated into software engineering practice. The report describes the rationale, structure, and content of