Real-time systems

Real-time systems

s --!!!B $NJf~& OF ARCHITECTURE ELSEVIER Journal of Systems Architecture 42 (1996) 387-390 Guest editorial Real-time systems Lorenzo Mezzalir...

352KB Sizes 1 Downloads 59 Views

s --!!!B

$NJf~&

OF

ARCHITECTURE

ELSEVIER

Journal of Systems Architecture

42 (1996)

387-390

Guest editorial

Real-time systems Lorenzo Mezzalira Dipurtimento

Elettronica

e Informazione,

Politecnico

di Milano,

A correct interaction among different devices can only be obtained if their temporal behavior meets some constraints, usually dictated by ineludible physical laws. When some devices happen to be virtualized by means of programmable computers, a new world of problems has to be faced by the designers. In the first place, what used to be implemented as an intrinsic functionality of purely hardware devices has to be mapped onto sequential executions of instructions. As a consequence we have to deal with a temporal behavior which is peculiar of programmable devices: it not only depends on how functions are implemented, but also on how many of them are allocated to a single processing unit and on how they interact among themselves. The general correctness problem among interacting devices thus gives rise to what has become known as real-time systems, giving mostly to the computers the responsibility of adapting their behavior to the external world of devices, and not vice-versa. A fascinating broad spectrum of studies and research activities has been carried out since more than a couple of decades, trying to bring real-time computing out from magic art into well founded method-

* Email:

[email protected]

1383.7621/0165-6074/96/$15.00 PII

S1383-7621(96)00029-X

Copyright

0 1996 Elsevier

Science

*

Piazza Leonardo

du Vinci 32, I-20133

Milano,

Ital)

ologies and techniques. But this process, although part of a rapidly evolving computer science, has been kept in a separate and slightly delayed track with respect to the mainstream achievements, hardly inheriting useful methodologies and tools. In fact, most of the classical abstractions, useful to dominate computational complexity, are not suitable to capture the rich world of temporal, fault-tolerant and distributed behavior. Since a few years we are assisting an interesting trend towards a fusion of many computer science disciplines into the real-time computing. Actually, the Workshops on Real-Time Systems organised annually by EUROMICRO since 1989, have been a successful series of European events providing an interesting overview of the many research and implementation activities in this field. So, it has been decided to collect in this special issue a selection of interesting papers covering the main topics related to real-time systems, emerged from the RTS-95 workshop, updated with last results and carefully revised. Papers one to four deal with different aspects related to scheduling problems focusing on different points of view. Papers five and six are devoted to designing distributed real-time systems. Formal methods are the central point of papers seven and eight. Finally, problems related to Distributed RealB.V. All rights reserved.

388

L. Memdiru/

Journul

of Systems

Time Data Bases are addressedby papers nine and ten. Before a short presentationof each paper, I would like to thank all people who made this special issue possible with their hard work, in particular the reviewers, Ms. Enza Caputo and the staff of Elsevier Science. (1) Strategies for scheduling optional tasks in intelligent real-time environments (Ana Garcia-Fornes, Houcine Hassanand Alfons Crespo). The paper deals with the problem of scheduling the execution of AI algorithms, typically characterized by unpredictable worst-case execution times, imposing a predictable behaviour which guarantees that hard deadlinesare met. The model of the tasks is assumedto be composed of a mandatory part, followed by optional refinement parts, followed by a (mandatory) action part. The scheduling is performed at two levels, the first one taking into account the predictable mandatory parts, while the secondone is left with the duty of scheduling in the slack time as much as possible of the quality improving optional parts. (2) Scalability zn . real-time systemswith end-to-end requirements (R. Yerraballi and R. Mukkamalla). The paper addressesdistributed systems where end-to-end temporal requirementshave to be met. In particular the problem is to extend schedulability analysis in order to take care of changesin execution times of (some) tasks. The tasks are subdivided in subtasks, possibly allocated to different components(active resources), whose execution time may be increasedas a consequence of changes(improvements) of their functionality, or as a consequenceof reduction in speed of the component. The investigated problem can be stated as follows: given a schedulabletask set of n tasks, is it possibleto accommodatea new task, still meeting all the deadlines? The proposed approach

Architecture

42 (1996)

387-390

avoids performing a completely new costly schedulability analysis. (3) Minimizing the effects of jitter in distributed hard real-time systems(Jose’Javier GutiCrrez Garcia and Michael Gonzalez Harbour). In distributed real-time control systems, most of the activities are carried out by a cyclic execution of tasks on different interconnected subsystems.The paper analyses the effects on task schedulability, of their deferred activations (jitter) typically due to communication techniques. The jitter in one task is shown to adversely affect the worst-case response time of lower priority tasks, thus reducing the maximum schedulable utilization. The proposed solution is to reduce the jitter, by using sporadic servers to scheduletasks in each node as well as messagesin the network. (4) Hardware/software partitioning aiming at filfilment of real-time constraints (Jakob Axelsson). The system’s ability to satisfy real-time requirements is usually verified only when the hardware and software implementation is completely defined. In particular when designing embedded real-time systems, is it desirable to be able to take care of schedulability issuesalready in the early phasesof the design process, instead of just verifying a-posteriori. The paper proposes a hardware/software codesign approach in which the minimal required speedupis introduced as an implementation quality metric, computed from schedulability analysis, and used as an optimization criterion for the hardware/software partitioning. (5) Real time pipelined system design through simulated annealing (Moreno Coli and Paolo Palazzari). The paper focuses on problems related to mapping a behavior described by a Control Data Flow Graph onto a set of hardware resources,minimizing schedulelength and required resources,while satisfy-

L. Mezzalira/Journal

oj’Systems

ing all RT constraints. The pipelined execution of the graph allows to keep a high data arrival rate. The mapping cost function is minimized by means of a Simulated Annealing algorithm. (6) HyperReal: A modular control architecture for HRT systems (Flavio De Paoli, Francesco Tisato and Carlo Bellettini). A typical problem in designing real-time systems is the composition of conflicting issues as abstraction and visibility. Abstraction is the way to modularity and reuse of modules in different applications, while visibility is required to a proper control of the mechanisms which end up providing the required performances. The paper proposes architectural abstractions supporting the design of modular RT systems. The key idea is the introduction of a controller, at the programming in the large level, to which not only the binding of modules, but also control related issues are made visible as abstractions. The overall framework is based on objects - controllers, agents and connectors - and interfaces - ports and protocols. Both the time-driven and the event-driven paradigms are supported. (7) Integrating methods for the design of real-time systems (Jozef Hooman and Juri Vain). The paper moves from the consideration that good design techniques should provide short design time and guarantee correctness. Formal methods are proposed as a way for reducing backtracking times due to ambiguities in specifications. Nevertheless, to overcome the unsuitability of formal languages at the customer’s specification level, a stepwise refinement compositional method is proposed along four phases of knowledge transformation, from informal description to technology oriented description, to conceptual modeling, up to a formal description. A simple example is given. (8) A GSPN based methodology for the evaluation of concurrent applications in distributed plant

Architecture

42 (1996)

387-390

389

automation systems (Oliver Botti and Lorenzo Capra). The paper is originated from an environment very close to industrial applications, where problems of formal approaches cannot be separated from those of performance evaluations and dependability analysis suited for industrial users needs. A modular modelling approach and a set of performance indices are introduced to support a structured evaluation technique, where the consolidated theory of Generalized Stochastic Petri Nets is brought near to the view of industrial users. Modelling and evaluation techniques are demonstrated along a case study, based on a simple architecture, yet representing the main features of heterogeneous distributed systems as found in power plants. (9) Impact of high speed network on per$ormance real-time concurrency control protocol (Victor C.S. Lee, Kam-yiu Lam and Sheung-lun Hung). The paper investigates problems related to Distributed Real Time Data Base Systems, focusing in particular on the effects of the communication network characteristics, such as transmission rate and propagation speed, on the processes carrying on query processing, concurrency control protocols, deadlock resolution and remote data accessing. After having stressed the importance of going beyond the simplistic view of the network as a pure delay, a model is presented, on which the impact of the network characteristics on the overall behavior is studied. of

(10) Software architecture for a firm real-time database system (Young-Kuk Kim, Matthew R. Lehr and Sang H. Son). This paper presents the StarBase software architecture, designed to support an RT-DBMS. StarBase is built upon a RT operating system and deals with issues beyond the classical transaction scheduling. In particular issues as resource contention, data contention and deadline enforcing are addressed. The

390

L. Mezzalircr/Jourwl

of Systems Architecture

priority based scheduling provided by the RT operating system is in charge to solve resource contentions. A particular concurrency control algorithms, aware of priorities and provided with a Precise Serialization, solves data contentions, while deadline handling is taken care of by deadline handlers synchronized with only start and end of a transaction.

42 (1996)

387-390

Lorenzo Mezzalira was born in Italy, April 16th. 1944 and graduated as Electronic Engineer at Politecnico di Milan0 in 1968. Since then he has been worlcmg at Dipartimento di Elettronica e Informazione - Politecnico di Milan0 (Italy). Since 1982 he is Associate Professor of Computer Science and has been teaching courses on “Electronics”, “Introduction to Computer Science”, “Computer Architectures” and “Industrial Computer Applications”. Since 1977 he has been an active member of Euromicro, as Italian Director until 1991 and presently as Correspondent. He has been deeply involved in Euromicro activities as program committee member and session chairman for yearly Euromicro conferences and workshops, and in particular as program chairman of Euromicro Workshop on Real-Time Systems 1995 in Odense (DK). His research and professional activity since 1969 has been devoted to various aspects of computer science, and in particluar to the following topics: design and layout of integrated circuits; buses for modular microcomputer systems; multiprocessor architectures with both tight and loose couplings; microcomputers for robot control; computer networks, techniques and protocols; real-time systems, scheduling algorithms, analysis of timing performances, real-time kernels; design of real-time systems for process controls.