Chapter

Ablaufplanung und Zuteilbarkeitsanalyse für den Mehrprozessbetrieb

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

Nach Betrachtung eines graphischen Verfahrens zur zeitlichen Ablaufplanung und Synchronisation von Rechenprozessen werden zwei Verfahren sicherer Prozessorzuteilung für leicht vorhersagbaren Mehrprozessbetrieb vorgestellt. Das statische Verfahren aktiviert Rechenprozesse periodisch synchron zu einem Zeittakt. Synchronisierungs- und Verklemmungsprobleme lassen sich verhindern, zeitliches Ablaufverhalten vorhersagen und lastadaptiv steuern sowie Zuteilbarkeit zu jeder Zeit anhand eines einfachen Kriteriums überprüfen, indem bei der optimalen Strategie dynamischer Rechenprozesszuteilung nach Fertigstellungsfristen auf Verdrängbarkeit verzichtet wird.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

ResearchGate has not been able to resolve any citations for this publication.
Article
Full-text available
The authors examine a priority driven two-phase lock protocol called the read/write priority ceiling protocol. It is shown that this protocol leads to freedom from mutual deadlock. In addition, a high-priority transactions can be blocked by lower priority transactions for at most the duration of a single embedded transaction. These properties can be used by schedulability analysis to guarantee that a set of periodic transactions using this protocol can always meet its deadlines. Finally, the performance of this protocol is examined for randomly arriving transactions using simulation studies
Article
Full-text available
A process is called a monotone process if the accuracy of its intermediate results is non-decreasing as more time is spent to obtain the result. The result produced by a monotone process upon its normal termination is the desired result; the error in this result is zero. External events such as timeouts or crashes may cause the process to terminate prematurely. If the intermediate result produced by the process upon its premature termination is saved and made available, the application may still find the result unusable and, hence, acceptable; such a result is said to be an imprecise one. The error in an imprecise result is nonzero. The problem of scheduling periodic jobs to meet deadlines on a system that provides the necessary programming language primitives and run-time support for processes to return imprecise results is discussed. This problem differs from the traditional scheduling problems since the scheduler may choose to terminate a task before it is completed, causing it to produce an acceptable but imprecise result. Consequently, the amounts of processor time assigned to tasks in a valid schedule can be less than the amounts of time required to complete the tasks. A meaningful formulation of this problem taking into account the quality of the overall result is discussed. Three algorithms for scheduling jobs for which the effects of errors in results produced in different periods are not cumulative are described, and their relative merits are evaluated.
Article
We consider polynomial-time static semantics-preserving transformations of real-time programs. Used in in conjunction with schedulability analysis, the transformations significantly increase the class of real-time programs that may be analyzed efficiently for guaranteed schedulability at compile-time.
Article
Real-Time Euclid, a language designed specifically to address reliability and guaranteed schedulability issues in real-time systems, is introduced. Real-Time Euclid uses exception handlers and import/export lists to provide comprehensive error detection, isolation, and recovery. The philosophy of the language is that every exception detectable by the hardware or the software must have an exception-handler clause associated with it. Moreover, the language definition forces every construct in the language to be time- and space-bounded. Consequently, Real-Time Euclid programs can always be analyzed for guaranteed schedulability of their processes. Thus, it is felt that Real-Time Euclid is well-suited for writing reliable real-time software.
Article
We show that the problem of finding an optimal schedule for a set of jobs is polynomial complete even in the following two restricted cases. (1) All jobs require one time unit. (2) All jobs require one or two time units, and there are only two processors. As a consequence, the general preemptive scheduling problem is also polynomial complete. These results are tantamount to showing that the scheduling problems mentioned are intractable.
Article
Der Prozessorzuteilungsalgorithmus beeinflut ganz entscheidend die Einhaltung von Zeitbedingungen einer harten Realzeit-Umgebung. Es wird eine Prozessorzuteilung nach aufsteigenden Antwortzeiten zugrundegelegt und gezeigt, da sie bei einem Einprozessorsystem immer eine zeitgerechte Verarbeitung liefert, falls dies berhaupt mglich ist.The processor scheduling algorithm has a very crucial influence on the meeting of deadlines in a hard real-time environment. A processor scheduling algorithm for increasing response times is described, and it is shown that it generates a processing which meets all deadlines on a one-processor system whenever this is possible.
Article
We present polynomial-time static semantics-preserving transformations of real-time programs. Used in conjunction with schedulability analysis, the transformations significantly increase the class of real-time programs that may be analyzed efficiently for guaranteed schedulability at compile-time. In cases where the form of resource contention among processes resists efficient transformation, we apply a heuristic transformation (and a consequent run-time scheduling heuristic) to allow the programs to be analyzed efficiently.
Article
Real-time computing applications are among the very earliest of all computing applications, and their use continues to grow at a rapid pace after 40 years. Many programming languages have been used to develop today's real-time software. We attempt to define appropriate requirements for a real-time language and undertake a chronological survey and assessment of languages representative of the many real-time languages designed and used. Following the survey, we draw conclusions and speculate on what future real-time language work may or should bring.
Conference Paper
Für eine harte Real Zeitumgebung sind die Verarbeitungsergebnisse eines Rechensystems nur dann brauchbar, wenn nach Übertragung einer Aufgabe an das Rechensystem sie innerhalb einer vorgegebenen Antwortzeit verfügbar sind. Die Zuteilung von Aufgaben (Tasks) an die m Prozessoren, die in dieser Arbeit gleichartig sein sollen, nimmt in diesem Zusammenhang eine zentrale Stellung ein, ebenso die Frage nach einer möglichen oder unmöglichen zeitgerechten Verarbeitung von Tasks bzw. Tasksystemen durch das Prozessorsystem.
Conference Paper
In real-time systems, a computation may not have time to complete its execution because of deadline requirements. In such cases, no result except the approximate results produced by the computations up to that point will be available. It is desirable to utilize these imprecise results if possible. Two approaches are proposed to enable computations to return imprecise results when executions cannot be completed normally. The milestone approach records results periodically, and if a deadline is reached, returns the last recorded result. The sieve approach demarcates sections of code which can be skipped if the time available is insufficient. By using these approaches, the system is able to produce imprecise results when deadlines are reached. The design of the Concord project is described which supports imprecise computations using these techniques. Also presented is a general model of imprecise computations using these techniques, as well as one which takes into account the influence of the environment, showing where the latter approach fits into this model.
Conference Paper
A real-time language, called Real-Time Euclid, has been specifically designed with a set of schedulability analysis provisions built in. The authors introduce a set of schedulability analysis techniques that are applied to Real-Time Euclid programs and, utilizing knowledge of implementation-dependent information, provide good worst-case time bounds and other schedulability information. To demonstrate the effectiveness of these techniques, a prototype schedulability analyzer has been developed, to be used on a realistic real-time system. A description is given of the design of the prototype, and preliminary evaluation results.
Conference Paper
PEARL is a widely-used, standardised, industrial process-control programming language. The programs, that are written in PEARL, are typically expected to operate in a predictable, timely, reliable manner. Developing such programs is no easy task. Yet, with the invent of the experimental programming language Real-Time Euclid and its schedulability analyser, a tool that is used to predict whether real-time software will adhere to its critical timing constraints, it has been demonstrated that this task may be made considerably easier. In this paper, we describe how PEARL can be modified to be better suitable for realtime application writing, and to accommodate schedulability analysis. We propose a design for a schedulability analyser for PEARL. We feel confident that the analyser can be applied successfully to PEARL programs, thus aiding greatly in the process of developing predictable, timely and reliable software.
Article
We examine the computational complexity of scheduling problems associated with a certain abstract model of a multiprocessing system. The essential elements of the model are a finite number of identical processors, a finite set of tasks to be executed, a partial order constraining the sequence in which tasks may be executed, a finite set of limited resources, and, for each task, the time required for its execution and the amount of each resource which it requires. We focus on the complexity of algorithms for determining a schedule which satisfies the partial order and resource usage constraints and which completes all required processing before a given fixed deadline. For certain special cases, it is possible to give such a scheduling algorithm which runs in low order polynomial time. However, the main results of this paper imply that almost all cases of this scheduling problem, even with only one resource, are NP-complete and hence are as difficult as the notorious traveling salesman problem.
Article
The problem of multiprogram scheduling on a single processor is studied from the viewpoint of the characteristics peculiar to the program functions that need guaranteed service. It is shown that an optimum fixed priority scheduler possesses an upper bound to processor utilization which may be as low as 70 percent for large task sets. It is also shown that full processor utilization can be achieved by dynamically assigning priorities on the basis of their current deadlines. A combination of these two scheduling techniques is also discussed.
Article
Consider the problem of scheduling a set of preemptible tasks in one or more processor systems. The task system consists of a set of independent tasks or a task set with precedence relations. Each task is characterized by execution time and deadline. This article presents scheduling algorithms that guarantee all time constraints. These algorithms are so easy to implement that they can be used in real-time operating systems. An overview is given for the different feasible scheduling algorithms of some task and processor systems.
Article
This paper describes a scheduling algorithm for a set of tasks that guarantees the time within which a task, once started, will complete. A task is started upon receipt of an external signal or the completion of other tasks. Each task has a rxed set of requirements in processor time, resources, and device operations needed for completion of its various segments. A worst case analysis of task performance is carried out. An algorithm is developed for determining the response times that can be guaranteed for a set of tasks. Operating system overhead is also accounted for.
Article
A set of language-independent schedulability analysis techniques is presented. Utilizing knowledge of implementation- and hardware-dependent information in a table-driven fashion, these techniques provide accurate worst-case time bounds and other schedulability information. A prototype schedulability analyzer has been developed to demonstrate the effectiveness of these techniques. The analyzer consists of a partially language-dependent front-end, targeted at real-time Euclid, a real-time language specifically designed with a set of schedulability analysis provisions built-in, and a language-dependent back-end. The analyzer has been used on a number of realistic real-time programs run on a multiple-microprocessor system. Predicted program performance differs only marginally from the actual performance
Esterel: towards a synchronous and semantically sound high level language for real-time applications
  • G Berry
  • S Moisan
  • J.-P Rigault
Ordonnancement des Processus Temps Reel sur une ressource pre-emptive. These de 3me cycle
  • J Labetoulle
Simulation of packet level handshaking in X.25 using the real-time Euclid programming language
  • G Parnis
Simulation of a real time control system using the real-time Euclid programming language
  • S A Thurlow
  • SA Thurlow
Deterministische Modelle für die Prozessorzuteilung in einer harten Realzeit-Umgebung. Dissertation
  • R Henn
Antwortzeitgesteuerte Prozessorzuteilung
  • R Henn
  • B Schönhoff
Real time scheduling in a multiprocessor environment
  • J Labetoulle