Added web site

First version of web site

URL of on-line web site is http://heptagon.gforge.inria.fr

The script rsyncweb allows to sync between the repository and the online site (by use of rsync)
master
Gwenal Delaval 12 years ago
parent 11493f3274
commit 2e0abee73c

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

@ -0,0 +1,22 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<link type="text/css" href="style.css" rel="stylesheet">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Heptagon publications</title>
</head>
<body>
<?php include('toc.php'); ?>
<?php include('header.php'); ?>
<div id="content">
<h3>Publications about Heptagon: definition, compilation, case studies</h3>
<?php include('publications.html'); ?>
</div>
</body>
</html>

@ -0,0 +1,3 @@
<div id="header">
<h1>Heptagon</h1>
</div>

@ -0,0 +1,133 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<link type="text/css" href="style.css" rel="stylesheet">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Heptagon</title>
</head>
<body>
<?php include('toc.php'); ?>
<?php include('header.php'); ?>
<div id="content">
<p>
Heptagon is a synchronous dataflow language whose syntax and semantics is
inspired from <a href="http://www-verimag.imag.fr/Synchrone,30.html">Lustre</a>,
with a syntax allowing the expression of control structures (e.g., switch or
mode automata).
</p>
<p>
Heptagon is also a research compiler, whose aim is to facilitate
experimentation. The current version of the compiler includes the following
features:
<ul>
<li><strong>Inclusion of <em>discrete controller synthesis</em> within the
compilation</strong>: the language is equipped with a behavioral contract
mechanisms, where assumptions can be described, as well as an "enforce"
property part. The semantics of this latter is that the property should be
enforced by controlling the behaviour of the node equipped with the
contract. This property will be enforced by an automatically built controller,
which will act on free controllable variables given by the programmer. This
extension has been named <a href="http://bzr.inria.fr">BZR</a> in previous
works.</li>
<li><strong>Expression and compilation of array values with modular memory
optimization.</strong> The language allows the expression and operations on
arrays (access, modification, iterators). With the use of <em>location annotations</em>, the
programmer can avoid unnecessary array copies.</li>
</ul>
</p>
<p>
Heptagon is developed in
the <a href="http://www.di.ens.fr/ParkasTeam.html">Parkas (ENS)</a>
and <a href="http://pop-art.inrialpes.fr">Pop-Art (LIG/INRIA)</a> research teams.
</p>
<h2>How to get it or try it</h2>
<h3>Download</h3>
Heptagon can be freely downloaded <a href="http://gforge.inria.fr/projects/heptagon">here</a>.
<h3> Technical requirements</h3>
The use of the Heptagon compiler by itself does not require any additional
tools. However, the usual use involves a compiler for the generated code (target
languages are currently C or Java).
The tools below are optional or are related to some subparts of Heptagon:
<ul>
<li>The graphical display tool sim2chro can be obtained from
<a href="http://www-verimag.imag.fr/~raymond/edu/distrib/">
Verimag</a>. It can be used together with Heptagon's graphical simulator.</li>
<li> <a href="https://gforge.inria.fr/projects/bzr">Sigali</a>, the
controller synthesis tool, developed by the Espresso and Vertecs team at INRIA
Rennes. </li>
</ul>
<h3>Contact </h3> Please
contact <a href="mailto:heptagon-developers@lists.gforge.inria.fr">us</a> for
further information.
<h2>Main participants</h2>
<table>
<tr>
<td>Gwenaël Delaval</td>
<td>Assistant Prof. at <a href="http://www.ujf-grenoble.fr/">UJF</a></td>
<td>+33 4 76 61 54 31</td>
<td><a href="mailto:gwenael.delaval@inria.fr">mail</a></td>
<td><a href="http://pop-art.inrialpes.fr/people/delaval/">web</a></td>
</tr>
<tr>
<td>Léonard Gérard</td>
<td>PhD student at <a href="http://www.ens.fr/">ENS</a></td>
<td></td>
<td><a href="mailto:leonard.gerard at ens.fr">mail</a></td>
<td></td>
</tr>
<tr>
<td>Adrien Guatto</td>
<td>PhD student at <a href="http://www.ens.fr/">ENS</a></td>
<td></td>
<td><a href="mailto:adrien dot guatto at ens dot fr">mail</a></td>
<td><a href="http://www.di.ens.fr/~guatto/">web</a></td>
</tr>
<tr>
<td>Hervé Marchand</td>
<td>Researcher at <a href="http://www.inria.fr/">INRIA</a></td>
<td>+33 2 99 84 75 09</td>
<td><a href="mailto:herve.marchand@inria.fr">mail</a></td>
<td><a href="http://www.irisa.fr/prive/hmarchan/">web</a></td>
</tr>
<tr>
<td>Cédric Pasteur</td>
<td>PhD student at <a href="http://www.ens.fr/">ENS</a></td>
<td></td>
<td><a href="mailto:cedric dot pasteur at ens dot fr">mail</a></td>
<td><a href="http://www.di.ens.fr/~pasteur/">web</a></td>
</tr>
<tr>
<td>Marc Pouzet</td>
<td>Professor at <a href="http://www.ens.fr/">ENS</a></td>
<td></td>
<td><a href="mailto:marc dot pouzet at ens dot fr">mail</a></td>
<td><a href="http://www.di.ens.fr/~pouzet/">web</a></td>
</tr>
<tr>
<td>Eric Rutten</td>
<td>Researcher at <a href="http://www.inria.fr/">INRIA</a></td>
<td>+33 4 76 61 55 50</td>
<td><a href="mailto:eric.rutten@inria.fr">mail</a></td>
<td><a href="http://sardes.inrialpes.fr/~rutten">web</a></td>
</tr>
</table>
</div>
</body>
</html>

Binary file not shown.

Binary file not shown.

@ -0,0 +1,471 @@
<!-- This document was automatically generated with bibtex2html 1.95
(see http://www.lri.fr/~filliatr/bibtex2html/),
with the following command:
bibtex2html -s alpha -d -r -nodoc -o publications publis.bib -->
<table>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="Gerard:2012">GGPP12</a>]
</td>
<td class="bibtexitem">
L&eacute;onard G&eacute;rard, Adrien Guatto, C&eacute;dric Pasteur, and Marc Pouzet.
A modular memory optimization for synchronous data-flow languages.
In <em>Proc. of the ACM International Conference on Languages,
Compilers, Tools and Theory for Embedded Systems (LCTES'12)</em>, Beijing, China,
June 2012.
[&nbsp;<a href="publications_bib.html#Gerard:2012">bib</a>&nbsp;]
<blockquote><font size="-1">
The generation of efficient sequential code for
synchronous data-flow languages raises two
intertwined issues: control and memory
optimization. While the former has been extensively
studied, for instance in the compilation of LUSTRE
and SIGNAL, the latter has only been addressed in a
restricted manner. Yet, memory optimization becomes
a pressing issue when arrays are added to such
languages. This article presents a two-level
solution to the memory optimization problem. It
combines a compile-time optimization algorithm,
reminiscent of register allocation, paired with
language annotations on the source given by the
designer. Annotations express in-place modifications
and control where allocation is performed. Moreover,
they allow external functions performing in-place
modifications to be safely imported. Soundness of
annotations is guaranteed by a semilinear type
system and additional scheduling constraints. A key
feature is that annotations for well-typed programs
do not change the semantics of the language:
removing them may lead to less efficient code but
will not alter the semantics. The method has been
implemented in a new compiler for a LUSTRE-like
synchronous language extended with hierarchical
automata and arrays. Experiments show that the
proposed approach removes most of the unnecessary
array copies, resulting in faster code that uses
less memory.
</font></blockquote>
<p><blockquote><font size="-1">
Keywords: synchronous programming; type system
</font></blockquote>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="aboubekr11:_autom">ADPG<sup>+</sup>11</a>]
</td>
<td class="bibtexitem">
S.&nbsp;Aboubekr, G.&nbsp;Delaval, R.&nbsp;Pissard-Gibollet, &Eacute;.&nbsp;Rutten, and D.&nbsp;Simon.
Automatic generation of discrete handlers of real-time continuous
control tasks.
In <em>Proc. 18th World Congress of the International Federation of
Automatic Control (IFAC)</em>, Milano, Italy, August 2011.
[&nbsp;<a href="publications_bib.html#aboubekr11:_autom">bib</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/bzrccad.pdf">.pdf</a>&nbsp;]
<blockquote><font size="-1">
We present a novel technique for designing discrete,
logical control loops, on top of continuous control
tasks, ensuring logical safety properties of the
tasks sequencings and mode changes. We define this
new handler on top of the real-time executives built
with the Orccad design environment for control
systems, which is applied, e.g. to robotics and
real-time networked control. It features structures
of control tasks, each equipped with a local
automaton, used for the reactive, event-based
management of its activity and modes. The
additional discrete handler manages the interactions
between tasks, concerning, e.g., mutual exclusions,
forbidden or imposed sequences. We use a new
reactive programming language, with constructs for
finite-state machines and data-flow nodes, and a
mechanism of behavioral contracts, which involves
discrete controller synthesis. The result is a
discrete control loop, on top of the continuous
control loops, all integrated in a coherent
real-time architecture. Our approach is illustrated
and validated experimentally with the case study of
a robot arm.
</font></blockquote>
<p>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="boyer11:_discr_contr_auton_system">BPD<sup>+</sup>11</a>]
</td>
<td class="bibtexitem">
Fabienne Boyer, No&euml;l&nbsp;De Palma, Gwena&euml;l Delaval, Olivier Gruber, and
Eric Rutten.
Case studies in discrete control for autonomic system administration.
In <em>Sixth International Workshop on Feedback Control
Implementation and Design in Computing Systems and Networks (FeBID 2011)</em>,
Karlsruhe, Germany, June 2011.
[&nbsp;<a href="publications_bib.html#boyer11:_discr_contr_auton_system">bib</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/febid2011.pdf">.pdf</a>&nbsp;]
<blockquote><font size="-1">
This paper presents examples of autonomic system
administration issues that can be addressed and
solved as discrete control problems. This shows
evidence of the relevance of control techniques for
the discrete aspects of closed-loop control of
computing systems. The model-based control of
adaptive and reconfigurable systems is considered via
a reactive programming language, based on discrete
controller synthesis (DCS) techniques. We identify
control problems in autonomic systems belonging to
the class of logical, discrete systems, and
illustrate how to solve them using DCS.
</font></blockquote>
<p>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="bouhadiba11:_sdc_fract">BSDR11</a>]
</td>
<td class="bibtexitem">
Tayeb Bouhadiba, Quentin Sabah, Gwena&euml;l Delaval, and &Eacute;ric Rutten.
Synchronous control of reconfiguration in fractal component-based
systems - a case study.
Rapport de recherche RR-7631, INRIA, May 2011.
[&nbsp;<a href="publications_bib.html#bouhadiba11:_sdc_fract">bib</a>&nbsp;|
<a href="http://hal.inria.fr/inria-00596883/en/">http</a>&nbsp;|
<a href="http://hal.inria.fr/inria-00596883/PDF/RR-7631.pdf">.pdf</a>&nbsp;]
<blockquote><font size="-1">
In the context of component-based embedded systems,
the management of dynamic reconfiguration in
adaptive systems is an increasingly important
feature. The Fractal component-based framework, and
its industrial instantiation MIND, provide for
support for control operations in the lifecycle of
components. Nevertheless, the use of complex and
integrated architectures make the management of this
reconfiguration operations difficult to handle by
programmers. To address this issue, we propose to
use Synchronous languages, which are a complete
approach to the design of reactive systems, based on
behavior models in the form of transition
systems. Furthermore, the design of closed-loop
reactive managers of reconfigurations can benefit
from formal tools like Discrete Controller
Synthesis. In this paper we describe an approach to
concretely integrate synchronous reconfiguration
managers in Fractal component-based systems. We
describe how to model the state space of the control
problem, and how to specify the control
objectives. We describe the implementation of the
resulting manager with the Fractal/Cecilia
programming environment, taking advantage of the
Comete distributed middleware. We illustrate and
validate it with the case study of the Comanche HTTP
server on a multi-core execution platform.
</font></blockquote>
<p><blockquote><font size="-1">
Keywords: Component-based systems, synchronous programming,
reconfigurable systems, discrete controller
synthesis.
</font></blockquote>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="gcm10:_qos_energ_coord_dcs">DDR10</a>]
</td>
<td class="bibtexitem">
No&euml;l De Palma, Gwena&euml;l Delaval, and &Eacute;ric Rutten.
Qos and energy management coordination using discrete controller
synthesis.
In <em>1st International Workshop on Green Computing Middleware
(GCM'2010)</em>, Bangalore, India, November 2010.
[&nbsp;<a href="publications_bib.html#gcm10:_qos_energ_coord_dcs">bib</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/delaval-gcm10.pdf">.pdf</a>&nbsp;]
<blockquote><font size="-1">
Green computing is nowadays a major challenge for
most IT organizations. Administrators have to
manage the trade-off between system performances and
energy saving goals. Autonomic computing is a
promising approach to control the QoS and the energy
consumed by a system. This paper precisely
investigates the use of synchronous programming and
discrete controller synthesis to automate the
generation of a controller that enforces the
required coordination between QoS and energy
managers. We illustrate our approach by describing
the coordination between a simple admission
controller and an energy controller.
</font></blockquote>
<p>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="delaval10:_react_model_based_contr_of">DR10b</a>]
</td>
<td class="bibtexitem">
Gwena&euml;l Delaval and &Eacute;ric Rutten.
Reactive model-based control of reconfiguration in the fractal
component-based model.
In <em>13th International Symposium on Component Based Software
Engineering (CBSE 2010)</em>, Prague, Czech Republic, June 2010.
[&nbsp;<a href="publications_bib.html#delaval10:_react_model_based_contr_of">bib</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/delaval-cbse10.pdf">.pdf</a>&nbsp;]
<blockquote><font size="-1">
We present a technique for designing reconfiguration
controllers in the Fractal component-based
framework. We obtain discrete control loops that
automatically enforce safety properties on the
interactions between components, concerning, e.g.,
mutual exclusions, forbidden or imposed sequences.
We use a reactive programming language, with a new
mechanism of behavioural contracts. Its compilation
involves discrete controller synthesis, which
automatically generates the correct adaptation
controllers. We apply our approach to the problem
of adaptive ressource management, illustrated by the
example of a HTTP server.
</font></blockquote>
<p>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="delaval10:_contracts_mod_dcs">DMR10</a>]
</td>
<td class="bibtexitem">
Gwena&euml;l Delaval, Herv&eacute; Marchand, and &Eacute;ric Rutten.
Contracts for modular discrete controller synthesis.
In <em>ACM International Conference on Languages, Compilers, and
Tools for Embedded Systems (LCTES 2010)</em>, Stockholm, Sweden, April 2010.
[&nbsp;<a href="publications_bib.html#delaval10:_contracts_mod_dcs">bib</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/lctes2010.pdf">.pdf</a>&nbsp;]
<blockquote><font size="-1">
We describe the extension of a reactive programming
language with a behavioral contract construct. It
is dedicated to the programming of reactive control
of applications in embedded systems, and involves
principles of the supervisory control of discrete
event systems. Our contribution is in a language
approach where modular discrete controller synthesis
(DCS) is integrated, and it is concretized in the
encapsulation of DCS into a compilation process.
From transition system specifications of possible
behaviors, DCS automatically produces controllers
that make the controlled system satisfy the property
given as objective. Our language features and
compiling technique provide
correctness-by-construction in that sense, and
enhance reliability and verifiability. Our
application domain is adaptive and reconfigurable
systems: closed-loop adaptation mechanisms enable
flexible execution of functionalities w.r.t.
changing resource and environment conditions. Our
language can serve programming such adaption
controllers. This paper particularly describes the
compilation of the language. We present a method
for the modular application of discrete controller
synthesis on synchronous programs, and its
integration in the BZR language. We consider
structured programs, as a composition of nodes, and
first apply DCS on particular nodes of the program,
in order to reduce the complexity of the controller
computation; then, we allow the abstraction of parts
of the program for this computation; and finally, we
show how to recompose the different controllers
computed from different abstractions for their
correct co-execution with the initial program. Our
work is illustrated with examples, and we present
quantitative results about its implementation.
</font></blockquote>
<p>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="delaval10:_warm">DR10a</a>]
</td>
<td class="bibtexitem">
Gwena&euml;l Delaval and &Eacute;ric Rutten.
A language-based approach to the discrete control of adaptive
resource management.
In <em>Workshop on Adaptive Resource Management (WARM 2010)</em>,
Stockholm, Sweden, April 2010.
[&nbsp;<a href="publications_bib.html#delaval10:_warm">bib</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/warm10.pdf">.pdf</a>&nbsp;]
<blockquote><font size="-1">
We present a novel technique for designing discrete
control loops for adaptive systems. They
automatically enforce safety properties on the
interactions between tasks, concerning, e.g., mutual
exclusions, forbidden or imposed sequences. We use
a new reactive programming language, with a
mechanism of behavioural contracts. Its compilation
involves discrete controller synthesis, which
automatically generates the correct appropriate
adaptation controllers. We apply our approach to
the problem of adaptive ressource management,
illustrated by the example of a HTTP server.
</font></blockquote>
<p>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="aboubekr09:_prog_lg_adapt_ctr">ADR09</a>]
</td>
<td class="bibtexitem">
Soufyane Aboubekr, Gwena&euml;l Delaval, and &Eacute;ric Rutten.
A programming language for adaptation control: Case study.
In <em>2nd Workshop on Adaptive and Reconfigurable Embedded Systems
(APRES 2009). ACM SIGBED Review</em>, volume&nbsp;6, Grenoble, France, October 2009.
[&nbsp;<a href="publications_bib.html#aboubekr09:_prog_lg_adapt_ctr">bib</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/apres09.pdf">.pdf</a>&nbsp;]
<blockquote><font size="-1">
We illustrate an approach for the safe design of
adaptive embedded systems. It applies the BZR
programming language, featuring a special new
contract mechanism: its compilation involves
automatical discrete controller synthesis. The
contribution of this paper is to illustrate how it
can be used to enforce the correct adaptation
control of the application, meeting execution
constraints, with the case study of a video module
of a multimedia cellular phone.
</font></blockquote>
<p>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="gamatie09:_case_study_contr_synth_for">GYDR09</a>]
</td>
<td class="bibtexitem">
Abdoulaye Gamati&eacute;, Huafeng Yu, Gwena&euml;l Delaval, and &Eacute;ric Rutten.
A case study on controller synthesis for data-intensive embedded
systems.
In <em>Proceedings of the 6th IEEE International Conference on
Embedded Software and Systems (ICESS'2009)</em>, HangZhou, Zhejiang, China, May
2009.
[&nbsp;<a href="publications_bib.html#gamatie09:_case_study_contr_synth_for">bib</a>&nbsp;]
<blockquote><font size="-1">
This paper presents an approach for the safe design
of data-intensive embedded systems. A multimedia
application module of last generation cellular
phones is considered as a case study. The OMG
standard profile MARTE is used to adequately model
the application. The resulting model is then
transformed into a synchronous program from which a
controller is synthesized by using a formal
technique, in order to enforce the safe behavior of
the modeled application while meeting quality of
service requirements. The whole study is carried out
in a design framework, GASPARD, dedicated to
high-performance embedded systems.
</font></blockquote>
<p>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="delaval07:_nemo_jes">DR07</a>]
</td>
<td class="bibtexitem">
Gwenaël Delaval and Éric Rutten.
A domain-specific language for multitask systems, applying discrete
controller synthesis.
<em>EURASIP Journal on Embedded Systems</em>, 2007:Article ID 84192, 17
pages, 2007.
[&nbsp;<a href="publications_bib.html#delaval07:_nemo_jes">bib</a>&nbsp;|
<a href="http://dx.doi.org/10.1155/2007/84192">DOI</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/nemo-jes2007.pdf">.pdf</a>&nbsp;]
<blockquote><font size="-1">
We propose a simple programming language, called
Nemo, specific to the domain of multi-task real-time
control systems, such as in robotic, automotive or
avionics systems. It can be used to specify a set of
resources with usage constraints, a set of tasks
that consume them according to various modes, and
applications sequencing the tasks. We obtain
automatically an application-specific task handler
that correctly manages the constraints (if there
exists one), through a compilation-like process
including a phase of discrete controller
synthesis. This way, this formal technique
contributes to the safety of the designed systems,
while being encapsulated in a tool that makes it
useable by application experts. Our approach is
based on the synchronous modelling techniques,
languages and tools.
</font></blockquote>
<p><blockquote><font size="-1">
Keywords: real-time systems, safe design, domain-specific
language, discrete control synthesis, synchronous
programming
</font></blockquote>
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="delaval06:_domain_specif_languag_multi_system">DR06</a>]
</td>
<td class="bibtexitem">
G.&nbsp;Delaval and E.&nbsp;Rutten.
A domain-specific language for task handlers generation, applying
discrete controller synthesis.
In <em>SAC '06: Proceedings of the 2006 ACM Symposium on Applied
computing</em>, pages 901-905, Dijon, France, April 2006. ACM Press.
[&nbsp;<a href="publications_bib.html#delaval06:_domain_specif_languag_multi_system">bib</a>&nbsp;|
<a href="http://dx.doi.org/10.1145/1141277.1141487">DOI</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.ps.gz">.ps.gz</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.pdf">.pdf</a>&nbsp;]
</td>
</tr>
<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="rr-nemo">DR05</a>]
</td>
<td class="bibtexitem">
G.&nbsp;Delaval and E.&nbsp;Rutten.
A domain-specific language for multi-task systems, applying discrete
controller synthesis.
Rapport de recherche INRIA nº5690, September 2005.
[&nbsp;<a href="publications_bib.html#rr-nemo">bib</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.ps.gz">.ps.gz</a>&nbsp;|
<a href="http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.pdf">.pdf</a>&nbsp;]
</td>
</tr>
</table><hr><p><em>This file was generated by
<a href="http://www.lri.fr/~filliatr/bibtex2html/">bibtex2html</a> 1.95.</em></p>

@ -0,0 +1,422 @@
<h1>publis.bib</h1><a name="Gerard:2012"></a><pre>
@inproceedings{<a href="publications.html#Gerard:2012">Gerard:2012</a>,
author = {L{\'e}onard G{\'e}rard and Adrien Guatto and
C{\'e}dric Pasteur and Marc Pouzet},
title = {A Modular Memory Optimization for Synchronous
Data-Flow Languages},
booktitle = {Proc. of the ACM International Conference on
Languages, Compilers, Tools and Theory for Embedded
Systems (LCTES'12)},
date-added = {2012-07-04 16:11:46 +0200},
date-modified = {2012-07-04 16:15:18 +0200},
keywords = {synchronous programming; type system},
year = 2012,
month = jun,
address = {Beijing, China},
abstract = {The generation of efficient sequential code for
synchronous data-flow languages raises two
intertwined issues: control and memory
optimization. While the former has been extensively
studied, for instance in the compilation of LUSTRE
and SIGNAL, the latter has only been addressed in a
restricted manner. Yet, memory optimization becomes
a pressing issue when arrays are added to such
languages. This article presents a two-level
solution to the memory optimization problem. It
combines a compile-time optimization algorithm,
reminiscent of register allocation, paired with
language annotations on the source given by the
designer. Annotations express in-place modifications
and control where allocation is performed. Moreover,
they allow external functions performing in-place
modifications to be safely imported. Soundness of
annotations is guaranteed by a semilinear type
system and additional scheduling constraints. A key
feature is that annotations for well-typed programs
do not change the semantics of the language:
removing them may lead to less efficient code but
will not alter the semantics. The method has been
implemented in a new compiler for a LUSTRE-like
synchronous language extended with hierarchical
automata and arrays. Experiments show that the
proposed approach removes most of the unnecessary
array copies, resulting in faster code that uses
less memory. }
}
</pre>
<a name="rr-nemo"></a><pre>
@misc{<a href="publications.html#rr-nemo">rr-nemo</a>,
author = {Delaval, G. and Rutten, E.},
title = {A Domain-Specific Language for Multi-task Systems,
applying Discrete Controller Synthesis},
howpublished = {Rapport de recherche INRIA nº5690},
month = sep,
year = 2005,
pdf = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.pdf">http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.pdf</a>},
ps = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.ps.gz">http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.ps.gz</a>}
}
</pre>
<a name="delaval06:_domain_specif_languag_multi_system"></a><pre>
@inproceedings{<a href="publications.html#delaval06:_domain_specif_languag_multi_system">delaval06:_domain_specif_languag_multi_system</a>,
author = {Delaval, G. and Rutten, E.},
title = {A Domain-specific Language for Task Handlers
Generation, Applying Discrete Controller Synthesis},
booktitle = {SAC '06: Proceedings of the 2006 ACM Symposium on
Applied computing},
year = 2006,
address = {Dijon, France},
month = apr,
isbn = {1-59593-108-2},
pages = {901--905},
doi = {10.1145/1141277.1141487},
publisher = {ACM Press},
pdf = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.pdf">http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.pdf</a>},
ps = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.ps.gz">http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.ps.gz</a>}
}
</pre>
<a name="delaval07:_nemo_jes"></a><pre>
@article{<a href="publications.html#delaval07:_nemo_jes">delaval07:_nemo_jes</a>,
author = {Delaval, Gwenaël and Rutten, Éric },
title = {A Domain-Specific Language for Multitask Systems,
Applying Discrete Controller Synthesis},
journal = {EURASIP Journal on Embedded Systems},
year = 2007,
volume = 2007,
pages = {Article ID 84192, 17 pages},
doi = {10.1155/2007/84192},
abstract = {We propose a simple programming language, called
Nemo, specific to the domain of multi-task real-time
control systems, such as in robotic, automotive or
avionics systems. It can be used to specify a set of
resources with usage constraints, a set of tasks
that consume them according to various modes, and
applications sequencing the tasks. We obtain
automatically an application-specific task handler
that correctly manages the constraints (if there
exists one), through a compilation-like process
including a phase of discrete controller
synthesis. This way, this formal technique
contributes to the safety of the designed systems,
while being encapsulated in a tool that makes it
useable by application experts. Our approach is
based on the synchronous modelling techniques,
languages and tools.},
keywords = {real-time systems, safe design, domain-specific
language, discrete control synthesis, synchronous
programming},
pdf = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/nemo-jes2007.pdf">http://pop-art.inrialpes.fr/people/delaval/pub/nemo-jes2007.pdf</a>}
}
</pre>
<a name="delaval10:_contracts_mod_dcs"></a><pre>
@inproceedings{<a href="publications.html#delaval10:_contracts_mod_dcs">delaval10:_contracts_mod_dcs</a>,
author = {Delaval, Gwena\"{e}l and Marchand, Herv\'{e} and
Rutten, \'{E}ric},
title = {Contracts for Modular Discrete Controller Synthesis},
booktitle = {ACM International Conference on Languages,
Compilers, and Tools for Embedded Systems (LCTES
2010)},
year = 2010,
address = {Stockholm, Sweden},
month = apr,
abstract = {We describe the extension of a reactive programming
language with a behavioral contract construct. It
is dedicated to the programming of reactive control
of applications in embedded systems, and involves
principles of the supervisory control of discrete
event systems. Our contribution is in a language
approach where modular discrete controller synthesis
(DCS) is integrated, and it is concretized in the
encapsulation of DCS into a compilation process.
From transition system specifications of possible
behaviors, DCS automatically produces controllers
that make the controlled system satisfy the property
given as objective. Our language features and
compiling technique provide
correctness-by-construction in that sense, and
enhance reliability and verifiability. Our
application domain is adaptive and reconfigurable
systems: closed-loop adaptation mechanisms enable
flexible execution of functionalities w.r.t.
changing resource and environment conditions. Our
language can serve programming such adaption
controllers. This paper particularly describes the
compilation of the language. We present a method
for the modular application of discrete controller
synthesis on synchronous programs, and its
integration in the BZR language. We consider
structured programs, as a composition of nodes, and
first apply DCS on particular nodes of the program,
in order to reduce the complexity of the controller
computation; then, we allow the abstraction of parts
of the program for this computation; and finally, we
show how to recompose the different controllers
computed from different abstractions for their
correct co-execution with the initial program. Our
work is illustrated with examples, and we present
quantitative results about its implementation.},
pdf = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/lctes2010.pdf">http://pop-art.inrialpes.fr/people/delaval/pub/lctes2010.pdf</a>}
}
</pre>
<a name="aboubekr09:_prog_lg_adapt_ctr"></a><pre>
@inproceedings{<a href="publications.html#aboubekr09:_prog_lg_adapt_ctr">aboubekr09:_prog_lg_adapt_ctr</a>,
author = {Aboubekr, Soufyane and Delaval, Gwena\"{e}l and
Rutten, \'{E}ric},
title = {A Programming Language for Adaptation Control: Case
Study},
booktitle = {2nd Workshop on Adaptive and Reconfigurable Embedded
Systems (APRES 2009). ACM SIGBED Review},
year = 2009,
volume = 6,
number = 3,
address = {Grenoble, France},
month = oct,
abstract = {We illustrate an approach for the safe design of
adaptive embedded systems. It applies the BZR
programming language, featuring a special new
contract mechanism: its compilation involves
automatical discrete controller synthesis. The
contribution of this paper is to illustrate how it
can be used to enforce the correct adaptation
control of the application, meeting execution
constraints, with the case study of a video module
of a multimedia cellular phone.},
pdf = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/apres09.pdf">http://pop-art.inrialpes.fr/people/delaval/pub/apres09.pdf</a>}
}
</pre>
<a name="delaval10:_warm"></a><pre>
@inproceedings{<a href="publications.html#delaval10:_warm">delaval10:_warm</a>,
author = {Delaval, Gwena\"{e}l and Rutten, \'{E}ric},
title = {A Language-Based Approach to the Discrete Control of
Adaptive Resource Management},
booktitle = {Workshop on Adaptive Resource Management (WARM
2010)},
year = 2010,
address = {Stockholm, Sweden},
month = apr,
abstract = {We present a novel technique for designing discrete
control loops for adaptive systems. They
automatically enforce safety properties on the
interactions between tasks, concerning, e.g., mutual
exclusions, forbidden or imposed sequences. We use
a new reactive programming language, with a
mechanism of behavioural contracts. Its compilation
involves discrete controller synthesis, which
automatically generates the correct appropriate
adaptation controllers. We apply our approach to
the problem of adaptive ressource management,
illustrated by the example of a HTTP server.},
pdf = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/warm10.pdf">http://pop-art.inrialpes.fr/people/delaval/pub/warm10.pdf</a>}
}
</pre>
<a name="delaval10:_react_model_based_contr_of"></a><pre>
@inproceedings{<a href="publications.html#delaval10:_react_model_based_contr_of">delaval10:_react_model_based_contr_of</a>,
author = {Delaval, Gwena\"{e}l and Rutten, \'{E}ric},
title = {Reactive model-based control of reconfiguration in
the Fractal component-based model},
booktitle = {13th International Symposium on Component Based
Software Engineering (CBSE 2010)},
year = 2010,
address = {Prague, Czech Republic},
month = jun,
abstract = {We present a technique for designing reconfiguration
controllers in the Fractal component-based
framework. We obtain discrete control loops that
automatically enforce safety properties on the
interactions between components, concerning, e.g.,
mutual exclusions, forbidden or imposed sequences.
We use a reactive programming language, with a new
mechanism of behavioural contracts. Its compilation
involves discrete controller synthesis, which
automatically generates the correct adaptation
controllers. We apply our approach to the problem
of adaptive ressource management, illustrated by the
example of a HTTP server.},
pdf = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/delaval-cbse10.pdf">http://pop-art.inrialpes.fr/people/delaval/pub/delaval-cbse10.pdf</a>}
}
</pre>
<a name="gcm10:_qos_energ_coord_dcs"></a><pre>
@inproceedings{<a href="publications.html#gcm10:_qos_energ_coord_dcs">gcm10:_qos_energ_coord_dcs</a>,
author = {{De Palma}, No\"{e}l and Delaval, Gwena\"{e}l and
Rutten, \'{E}ric},
title = {QoS and Energy Management Coordination using
Discrete Controller Synthesis},
booktitle = {1st International Workshop on Green Computing
Middleware (GCM'2010)},
year = 2010,
address = {Bangalore, India},
month = nov,
abstract = {Green computing is nowadays a major challenge for
most IT organizations. Administrators have to
manage the trade-off between system performances and
energy saving goals. Autonomic computing is a
promising approach to control the QoS and the energy
consumed by a system. This paper precisely
investigates the use of synchronous programming and
discrete controller synthesis to automate the
generation of a controller that enforces the
required coordination between QoS and energy
managers. We illustrate our approach by describing
the coordination between a simple admission
controller and an energy controller.},
pdf = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/delaval-gcm10.pdf">http://pop-art.inrialpes.fr/people/delaval/pub/delaval-gcm10.pdf</a>}
}
</pre>
<a name="aboubekr11:_autom"></a><pre>
@inproceedings{<a href="publications.html#aboubekr11:_autom">aboubekr11:_autom</a>,
author = {S. Aboubekr and G. Delaval and R. Pissard-Gibollet
and {\'E}. Rutten and D. Simon},
title = {Automatic generation of discrete handlers of
real-time continuous control tasks},
booktitle = {Proc. 18th World Congress of the International
Federation of Automatic Control (IFAC)},
address = {Milano, Italy},
month = aug,
year = 2011,
abstract = {We present a novel technique for designing discrete,
logical control loops, on top of continuous control
tasks, ensuring logical safety properties of the
tasks sequencings and mode changes. We define this
new handler on top of the real-time executives built
with the Orccad design environment for control
systems, which is applied, e.g. to robotics and
real-time networked control. It features structures
of control tasks, each equipped with a local
automaton, used for the reactive, event-based
management of its activity and modes. The
additional discrete handler manages the interactions
between tasks, concerning, e.g., mutual exclusions,
forbidden or imposed sequences. We use a new
reactive programming language, with constructs for
finite-state machines and data-flow nodes, and a
mechanism of behavioral contracts, which involves
discrete controller synthesis. The result is a
discrete control loop, on top of the continuous
control loops, all integrated in a coherent
real-time architecture. Our approach is illustrated
and validated experimentally with the case study of
a robot arm. },
pdf = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/bzrccad.pdf">http://pop-art.inrialpes.fr/people/delaval/pub/bzrccad.pdf</a>}
}
</pre>
<a name="boyer11:_discr_contr_auton_system"></a><pre>
@inproceedings{<a href="publications.html#boyer11:_discr_contr_auton_system">boyer11:_discr_contr_auton_system</a>,
author = {Fabienne Boyer and No\"{e}l De Palma and Gwena\"{e}l
Delaval and Olivier Gruber and Eric Rutten},
title = {Case Studies in Discrete Control for Autonomic
System Administration },
booktitle = {Sixth International Workshop on Feedback Control
Implementation and Design in Computing Systems and
Networks (FeBID 2011)},
year = 2011,
address = {Karlsruhe, Germany},
month = jun,
abstract = {This paper presents examples of autonomic system
administration issues that can be addressed and
solved as discrete control problems. This shows
evidence of the relevance of control techniques for
the discrete aspects of closed-loop control of
computing systems. The model-based control of
adaptive and reconfigurable systems is considered via
a reactive programming language, based on discrete
controller synthesis (DCS) techniques. We identify
control problems in autonomic systems belonging to
the class of logical, discrete systems, and
illustrate how to solve them using DCS.},
pdf = {<a href="http://pop-art.inrialpes.fr/people/delaval/pub/febid2011.pdf">http://pop-art.inrialpes.fr/people/delaval/pub/febid2011.pdf</a>}
}
</pre>
<a name="bouhadiba11:_sdc_fract"></a><pre>
@techreport{<a href="publications.html#bouhadiba11:_sdc_fract">bouhadiba11:_sdc_fract</a>,
hal_id = {inria-00596883},
url = {<a href="http://hal.inria.fr/inria-00596883/en/">http://hal.inria.fr/inria-00596883/en/</a>},
title = {Synchronous Control of Reconfiguration in Fractal
Component-based Systems -- a Case Study},
author = {Bouhadiba, Tayeb and Sabah, Quentin and Delaval,
Gwena{\"e}l and Rutten, \'Eric},
abstract = {{In the context of component-based embedded systems,
the management of dynamic reconfiguration in
adaptive systems is an increasingly important
feature. The Fractal component-based framework, and
its industrial instantiation MIND, provide for
support for control operations in the lifecycle of
components. Nevertheless, the use of complex and
integrated architectures make the management of this
reconfiguration operations difficult to handle by
programmers. To address this issue, we propose to
use Synchronous languages, which are a complete
approach to the design of reactive systems, based on
behavior models in the form of transition
systems. Furthermore, the design of closed-loop
reactive managers of reconfigurations can benefit
from formal tools like Discrete Controller
Synthesis. In this paper we describe an approach to
concretely integrate synchronous reconfiguration
managers in Fractal component-based systems. We
describe how to model the state space of the control
problem, and how to specify the control
objectives. We describe the implementation of the
resulting manager with the Fractal/Cecilia
programming environment, taking advantage of the
Comete distributed middleware. We illustrate and
validate it with the case study of the Comanche HTTP
server on a multi-core execution platform.}},
keywords = {Component-based systems, synchronous programming,
reconfigurable systems, discrete controller
synthesis.},
language = {Anglais},
affiliation = {SARDES - INRIA Grenoble Rh{\^o}ne-Alpes / LIG
Laboratoire d'Informatique de Grenoble - INRIA -
Institut National Polytechnique de Grenoble - INPG -
Universit\'e Joseph Fourier - Grenoble I -
Universit\'e Pierre Mend\`es-France - Grenoble II -
CNRS : UMR5217},
pages = 31,
type = {Rapport de recherche},
institution = {INRIA},
number = {RR-7631},
year = 2011,
month = may,
pdf = {<a href="http://hal.inria.fr/inria-00596883/PDF/RR-7631.pdf">http://hal.inria.fr/inria-00596883/PDF/RR-7631.pdf</a>}
}
</pre>
<a name="gamatie09:_case_study_contr_synth_for"></a><pre>
@inproceedings{<a href="publications.html#gamatie09:_case_study_contr_synth_for">gamatie09:_case_study_contr_synth_for</a>,
author = {Gamati\'e, Abdoulaye and Yu, Huafeng and Delaval,
Gwena\"el and Rutten, \'Eric},
title = {A Case Study on Controller Synthesis for
Data-Intensive Embedded Systems},
booktitle = {Proceedings of the 6th IEEE International Conference
on Embedded Software and Systems (ICESS'2009)},
year = 2009,
address = {HangZhou, Zhejiang, China},
month = may,
abstract = {This paper presents an approach for the safe design
of data-intensive embedded systems. A multimedia
application module of last generation cellular
phones is considered as a case study. The OMG
standard profile MARTE is used to adequately model
the application. The resulting model is then
transformed into a synchronous program from which a
controller is synthesized by using a formal
technique, in order to enforce the safe behavior of
the modeled application while meeting quality of
service requirements. The whole study is carried out
in a design framework, GASPARD, dedicated to
high-performance embedded systems.}
}
</pre>
<hr><p><em>This file was generated by
<a href="http://www.lri.fr/~filliatr/bibtex2html/">bibtex2html</a> 1.95.</em></p>

@ -0,0 +1,395 @@
@inproceedings{Gerard:2012,
Author = {L{\'e}onard G{\'e}rard and Adrien Guatto and
C{\'e}dric Pasteur and Marc Pouzet},
Title = {A Modular Memory Optimization for Synchronous
Data-Flow Languages},
Booktitle = {Proc. of the ACM International Conference on
Languages, Compilers, Tools and Theory for Embedded
Systems (LCTES'12)},
Date-Added = {2012-07-04 16:11:46 +0200},
Date-Modified= {2012-07-04 16:15:18 +0200},
Keywords = {synchronous programming; type system},
Year = 2012,
month = jun,
address = {Beijing, China},
abstract = {The generation of efficient sequential code for
synchronous data-flow languages raises two
intertwined issues: control and memory
optimization. While the former has been extensively
studied, for instance in the compilation of LUSTRE
and SIGNAL, the latter has only been addressed in a
restricted manner. Yet, memory optimization becomes
a pressing issue when arrays are added to such
languages. This article presents a two-level
solution to the memory optimization problem. It
combines a compile-time optimization algorithm,
reminiscent of register allocation, paired with
language annotations on the source given by the
designer. Annotations express in-place modifications
and control where allocation is performed. Moreover,
they allow external functions performing in-place
modifications to be safely imported. Soundness of
annotations is guaranteed by a semilinear type
system and additional scheduling constraints. A key
feature is that annotations for well-typed programs
do not change the semantics of the language:
removing them may lead to less efficient code but
will not alter the semantics. The method has been
implemented in a new compiler for a LUSTRE-like
synchronous language extended with hierarchical
automata and arrays. Experiments show that the
proposed approach removes most of the unnecessary
array copies, resulting in faster code that uses
less memory. }
}
@misc{rr-nemo,
author = {Delaval, G. and Rutten, E.},
title = {A Domain-Specific Language for Multi-task Systems,
applying Discrete Controller Synthesis},
howpublished = {Rapport de recherche INRIA nº5690},
month = sep,
year = 2005,
pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.pdf},
ps = {http://pop-art.inrialpes.fr/people/delaval/pub/RR-5690.ps.gz}
}
@inproceedings{delaval06:_domain_specif_languag_multi_system,
author = {Delaval, G. and Rutten, E.},
title = {A Domain-specific Language for Task Handlers
Generation, Applying Discrete Controller Synthesis},
booktitle = {SAC '06: Proceedings of the 2006 ACM Symposium on
Applied computing},
year = 2006,
address = {Dijon, France},
month = apr,
isbn = {1-59593-108-2},
pages = {901--905},
doi = {10.1145/1141277.1141487},
publisher = {ACM Press},
pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.pdf},
ps = {http://pop-art.inrialpes.fr/people/delaval/pub/article-nemo.ps.gz}
}
@article{delaval07:_nemo_jes,
author = {Delaval, Gwenaël and Rutten, Éric },
title = {A Domain-Specific Language for Multitask Systems,
Applying Discrete Controller Synthesis},
journal = {EURASIP Journal on Embedded Systems},
year = 2007,
volume = 2007,
pages = {Article ID 84192, 17 pages},
doi = {10.1155/2007/84192},
abstract = {We propose a simple programming language, called
Nemo, specific to the domain of multi-task real-time
control systems, such as in robotic, automotive or
avionics systems. It can be used to specify a set of
resources with usage constraints, a set of tasks
that consume them according to various modes, and
applications sequencing the tasks. We obtain
automatically an application-specific task handler
that correctly manages the constraints (if there
exists one), through a compilation-like process
including a phase of discrete controller
synthesis. This way, this formal technique
contributes to the safety of the designed systems,
while being encapsulated in a tool that makes it
useable by application experts. Our approach is
based on the synchronous modelling techniques,
languages and tools.},
keywords = {real-time systems, safe design, domain-specific
language, discrete control synthesis, synchronous
programming},
pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/nemo-jes2007.pdf}
}
@inproceedings{delaval10:_contracts_mod_dcs,
author = {Delaval, Gwena\"{e}l and Marchand, Herv\'{e} and
Rutten, \'{E}ric},
title = {Contracts for Modular Discrete Controller Synthesis},
booktitle = {ACM International Conference on Languages,
Compilers, and Tools for Embedded Systems (LCTES
2010)},
year = 2010,
address = {Stockholm, Sweden},
month = apr,
abstract = {We describe the extension of a reactive programming
language with a behavioral contract construct. It
is dedicated to the programming of reactive control
of applications in embedded systems, and involves
principles of the supervisory control of discrete
event systems. Our contribution is in a language
approach where modular discrete controller synthesis
(DCS) is integrated, and it is concretized in the
encapsulation of DCS into a compilation process.
From transition system specifications of possible
behaviors, DCS automatically produces controllers
that make the controlled system satisfy the property
given as objective. Our language features and
compiling technique provide
correctness-by-construction in that sense, and
enhance reliability and verifiability. Our
application domain is adaptive and reconfigurable
systems: closed-loop adaptation mechanisms enable
flexible execution of functionalities w.r.t.
changing resource and environment conditions. Our
language can serve programming such adaption
controllers. This paper particularly describes the
compilation of the language. We present a method
for the modular application of discrete controller
synthesis on synchronous programs, and its
integration in the BZR language. We consider
structured programs, as a composition of nodes, and
first apply DCS on particular nodes of the program,
in order to reduce the complexity of the controller
computation; then, we allow the abstraction of parts
of the program for this computation; and finally, we
show how to recompose the different controllers
computed from different abstractions for their
correct co-execution with the initial program. Our
work is illustrated with examples, and we present
quantitative results about its implementation.},
pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/lctes2010.pdf}
}
@inproceedings{aboubekr09:_prog_lg_adapt_ctr,
author = {Aboubekr, Soufyane and Delaval, Gwena\"{e}l and
Rutten, \'{E}ric},
title = {A Programming Language for Adaptation Control: Case
Study},
booktitle = {2nd Workshop on Adaptive and Reconfigurable Embedded
Systems (APRES 2009). ACM SIGBED Review},
year = 2009,
volume = 6,
number = 3,
address = {Grenoble, France},
month = oct,
abstract = {We illustrate an approach for the safe design of
adaptive embedded systems. It applies the BZR
programming language, featuring a special new
contract mechanism: its compilation involves
automatical discrete controller synthesis. The
contribution of this paper is to illustrate how it
can be used to enforce the correct adaptation
control of the application, meeting execution
constraints, with the case study of a video module
of a multimedia cellular phone.},
pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/apres09.pdf}
}
@inproceedings{delaval10:_warm,
author = {Delaval, Gwena\"{e}l and Rutten, \'{E}ric},
title = {A Language-Based Approach to the Discrete Control of
Adaptive Resource Management},
booktitle = {Workshop on Adaptive Resource Management (WARM
2010)},
year = 2010,
address = {Stockholm, Sweden},
month = apr,
abstract = {We present a novel technique for designing discrete
control loops for adaptive systems. They
automatically enforce safety properties on the
interactions between tasks, concerning, e.g., mutual
exclusions, forbidden or imposed sequences. We use
a new reactive programming language, with a
mechanism of behavioural contracts. Its compilation
involves discrete controller synthesis, which
automatically generates the correct appropriate
adaptation controllers. We apply our approach to
the problem of adaptive ressource management,
illustrated by the example of a HTTP server.},
pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/warm10.pdf}
}
@inproceedings{delaval10:_react_model_based_contr_of,
author = {Delaval, Gwena\"{e}l and Rutten, \'{E}ric},
title = {Reactive model-based control of reconfiguration in
the Fractal component-based model},
booktitle = {13th International Symposium on Component Based
Software Engineering (CBSE 2010)},
year = 2010,
address = {Prague, Czech Republic},
month = jun,
abstract = {We present a technique for designing reconfiguration
controllers in the Fractal component-based
framework. We obtain discrete control loops that
automatically enforce safety properties on the
interactions between components, concerning, e.g.,
mutual exclusions, forbidden or imposed sequences.
We use a reactive programming language, with a new
mechanism of behavioural contracts. Its compilation
involves discrete controller synthesis, which
automatically generates the correct adaptation
controllers. We apply our approach to the problem
of adaptive ressource management, illustrated by the
example of a HTTP server.},
pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/delaval-cbse10.pdf}
}
@inproceedings{gcm10:_qos_energ_coord_dcs,
author = {{De Palma}, No\"{e}l and Delaval, Gwena\"{e}l and
Rutten, \'{E}ric},
title = {QoS and Energy Management Coordination using
Discrete Controller Synthesis},
booktitle = {1st International Workshop on Green Computing
Middleware (GCM'2010)},
year = 2010,
address = {Bangalore, India},
month = nov,
abstract = {Green computing is nowadays a major challenge for
most IT organizations. Administrators have to
manage the trade-off between system performances and
energy saving goals. Autonomic computing is a
promising approach to control the QoS and the energy
consumed by a system. This paper precisely
investigates the use of synchronous programming and
discrete controller synthesis to automate the
generation of a controller that enforces the
required coordination between QoS and energy
managers. We illustrate our approach by describing
the coordination between a simple admission
controller and an energy controller.},
pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/delaval-gcm10.pdf}
}
@inproceedings{aboubekr11:_autom,
author = {S. Aboubekr and G. Delaval and R. Pissard-Gibollet
and {\'E}. Rutten and D. Simon},
title = {Automatic generation of discrete handlers of
real-time continuous control tasks},
booktitle = {Proc. 18th World Congress of the International
Federation of Automatic Control (IFAC)},
address = {Milano, Italy},
month = aug,
year = 2011,
abstract = {We present a novel technique for designing discrete,
logical control loops, on top of continuous control
tasks, ensuring logical safety properties of the
tasks sequencings and mode changes. We define this
new handler on top of the real-time executives built
with the Orccad design environment for control
systems, which is applied, e.g. to robotics and
real-time networked control. It features structures
of control tasks, each equipped with a local
automaton, used for the reactive, event-based
management of its activity and modes. The
additional discrete handler manages the interactions
between tasks, concerning, e.g., mutual exclusions,
forbidden or imposed sequences. We use a new
reactive programming language, with constructs for
finite-state machines and data-flow nodes, and a
mechanism of behavioral contracts, which involves
discrete controller synthesis. The result is a
discrete control loop, on top of the continuous
control loops, all integrated in a coherent
real-time architecture. Our approach is illustrated
and validated experimentally with the case study of
a robot arm. },
pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/bzrccad.pdf}
}
@inproceedings{boyer11:_discr_contr_auton_system,
author = {Fabienne Boyer and No\"{e}l De Palma and Gwena\"{e}l
Delaval and Olivier Gruber and Eric Rutten},
title = {Case Studies in Discrete Control for Autonomic
System Administration },
booktitle = {Sixth International Workshop on Feedback Control
Implementation and Design in Computing Systems and
Networks (FeBID 2011)},
year = 2011,
address = {Karlsruhe, Germany},
month = jun,
abstract = {This paper presents examples of autonomic system
administration issues that can be addressed and
solved as discrete control problems. This shows
evidence of the relevance of control techniques for
the discrete aspects of closed-loop control of
computing systems. The model-based control of
adaptive and reconfigurable systems is considered via
a reactive programming language, based on discrete
controller synthesis (DCS) techniques. We identify
control problems in autonomic systems belonging to
the class of logical, discrete systems, and
illustrate how to solve them using DCS.},
pdf = {http://pop-art.inrialpes.fr/people/delaval/pub/febid2011.pdf}
}
@techreport{bouhadiba11:_sdc_fract,
hal_id = {inria-00596883},
url = {http://hal.inria.fr/inria-00596883/en/},
title = {Synchronous Control of Reconfiguration in Fractal
Component-based Systems -- a Case Study},
author = {Bouhadiba, Tayeb and Sabah, Quentin and Delaval,
Gwena{\"e}l and Rutten, \'Eric},
abstract = {{In the context of component-based embedded systems,
the management of dynamic reconfiguration in
adaptive systems is an increasingly important
feature. The Fractal component-based framework, and
its industrial instantiation MIND, provide for
support for control operations in the lifecycle of
components. Nevertheless, the use of complex and
integrated architectures make the management of this
reconfiguration operations difficult to handle by
programmers. To address this issue, we propose to
use Synchronous languages, which are a complete
approach to the design of reactive systems, based on
behavior models in the form of transition
systems. Furthermore, the design of closed-loop
reactive managers of reconfigurations can benefit
from formal tools like Discrete Controller
Synthesis. In this paper we describe an approach to
concretely integrate synchronous reconfiguration
managers in Fractal component-based systems. We
describe how to model the state space of the control
problem, and how to specify the control
objectives. We describe the implementation of the
resulting manager with the Fractal/Cecilia
programming environment, taking advantage of the
Comete distributed middleware. We illustrate and
validate it with the case study of the Comanche HTTP
server on a multi-core execution platform.}},
keywords = {Component-based systems, synchronous programming,
reconfigurable systems, discrete controller
synthesis.},
language = {Anglais},
affiliation = {SARDES - INRIA Grenoble Rh{\^o}ne-Alpes / LIG
Laboratoire d'Informatique de Grenoble - INRIA -
Institut National Polytechnique de Grenoble - INPG -
Universit\'e Joseph Fourier - Grenoble I -
Universit\'e Pierre Mend\`es-France - Grenoble II -
CNRS : UMR5217},
pages = 31,
type = {Rapport de recherche},
institution = {INRIA},
number = {RR-7631},
year = 2011,
month = may,
pdf = {http://hal.inria.fr/inria-00596883/PDF/RR-7631.pdf}
}
@inproceedings{gamatie09:_case_study_contr_synth_for,
author = {Gamati\'e, Abdoulaye and Yu, Huafeng and Delaval,
Gwena\"el and Rutten, \'Eric},
title = {A Case Study on Controller Synthesis for
Data-Intensive Embedded Systems},
booktitle = {Proceedings of the 6th IEEE International Conference
on Embedded Software and Systems (ICESS'2009)},
year = 2009,
address = {HangZhou, Zhejiang, China},
month = may,
abstract = {This paper presents an approach for the safe design
of data-intensive embedded systems. A multimedia
application module of last generation cellular
phones is considered as a case study. The OMG
standard profile MARTE is used to adequately model
the application. The resulting model is then
transformed into a synchronous program from which a
controller is synthesized by using a formal
technique, in order to enforce the safe behavior of
the modeled application while meeting quality of
service requirements. The whole study is carried out
in a design framework, GASPARD, dedicated to
high-performance embedded systems.}
}

@ -0,0 +1 @@
rsync -vz bib.php header.php index.php publications_bib.html publications.html style.css toc.php try.php Yuyuan_ventana_heptagonal.JPG pub scm.gforge.inria.fr:/home/groups/heptagon/htdocs

@ -0,0 +1,120 @@
body {
background-color: #FFFFFF;
color: #444444;
font-family: Helvetica,Arial,Verdana;
font-size: 100%;
margin:25px 50px;
text-align: justify;
}
a {
color: #8A0000;
font-weight: bold;
text-decoration: none;
}
a:hover {
color: #E00000;
}
ol, ul {
}
li {
line-height: 20px;
text-align: left;
}
#logo {
float:left;
}
#header {
margin: 0 auto 40px;
width: 750px;
}
#header h1 {
border-bottom: 2px solid #8A0000;
color: #8A0000;
font-family: "Century Gothic",Helvetica,"Arial Narrow",Arial,sans-serif;
font-size: 2em;
font-weight: normal;
margin: 0 0 10px;
padding: 30px 0 0;
text-align: left;
}
#header h2 {
color: #8A0000;
font-family: "Century Gothic",Helvetica,"Arial Narrow",Arial,sans-serif;
font-size: 1.4em;
font-weight: normal;
margin: 0;
padding: 0;
text-align: left;
}
#toc {
float:left;
}
#toc h2 {
border-bottom: 1px solid #8A0000;
color: #8A0000;
font-family: "Century Gothic",Helvetica,"Arial Narrow",Arial,sans-serif;
font-size: 1.5em;
font-weight: normal;
}
#toc ul {
list-style-type: none;
}
#content {
margin: 0 auto;
text-align: justify;
width: 750px;
}
#content h2 {
border-bottom: 1px solid #8A0000;
color: #8A0000;
font-family: "Century Gothic",Helvetica,"Arial Narrow",Arial,sans-serif;
font-size: 1.5em;
font-weight: normal;
}
#content h3 {
color: #8A0000;
font-size: 1.2em;
font-weight: normal;
padding: 0;
}
#content p {
}
table {
background-color: #FFFFFF;
}
table td {
border-collapse: collapse;
padding: 5px;
}
#rightcontent {
float: right;
font-size: 95%;
text-align: left;
width: 160px;
}
#rightcontent h1 {
border-bottom: 1px solid #EEEEEE;
color: #905F40;
font-family: "Century Gothic",Helvetica,"Arial Narrow",Arial,sans-serif;
font-size: 20px;
font-weight: normal;
text-align: right;
text-transform: uppercase;
}
#rightcontent p {
line-height: 20px;
}
#rightcontent a {
font-weight: normal;
}

@ -0,0 +1,15 @@
<div id="toc">
<a title="Par Hispalois (Travail personnel) [GFDL
(http://www.gnu.org/copyleft/fdl.html) ou CC-BY-SA-3.0-2.5-2.0-1.0
(http://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons"
href="http://commons.wikimedia.org/wiki/File%3AYuyuan_ventana_heptagonal.JPG">
<img width="200" alt="Yuyuan ventana heptagonal" src="Yuyuan_ventana_heptagonal.JPG"/>
</a>
<ul>
<li><a href="http://heptagon.gforge.inria.fr">Main page</a></li>
<li><a href="https://gforge.inria.fr/projects/heptagon">Download</a></li>
<li><a href="pub/heptagon-manual.pdf">Manual</a></li>
<li><a href="bib.php">Publications</a></li>
</ul>
</div>

@ -0,0 +1,135 @@
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<title>Heptagon - try it !</title>
</head>
<?php
define("HEC", "/home_nas/gdelaval/bin/hec-stable");
define("HEAPPLET", "/home_nas/gdelaval/bin/heapplet-stable");
define("HEPTLIB", "/home_nas/gdelaval/synchronics/heptagon/lib/");
function tempdir($prefix) {
$tempfile=tempnam(sys_get_temp_dir(),$prefix);
if (file_exists($tempfile)) { unlink($tempfile); }
mkdir($tempfile);
if (is_dir($tempfile)) { return $tempfile; }
}
?>
<body>
<center>
<h1>Try Heptagon !</h1>
<form enctype="multipart/form-data"
action="<?php echo $_SERVER['PHP_SELF']; ?>"
method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
Heptagon program (with "<code>main</code>" node):
<input name="heptfile" type="file" value="<?php echo $_FILES['heptfile']['name']; ?>"/>
<br/>
<textarea name="heptprog" rows="8" cols="100%">
<?php
if (isset($_POST['heptprog'])) {
echo $_POST['heptprog'];
} else {
?>
node main(x:bool) returns (last y:int)
let
automaton
state Up
do y = (0 -> last y) + 1
until y = 10 then Down
state Down
do y = last y - 1
until y = 0 then Up
end
tel
<?php
}
?>
</textarea><br/>
<input type="submit" name="submit" value="Compile" />
</form>
</center>
<?php
if(isset($_POST['submit'])){
// Ne marche pas : s'affiche une fois que la compil. est terminee
//echo '<p>Compilation...</p>';
flush();
ob_flush();
// Temporary directory creation
$workdir = tempdir("heptagon-");
// Copy Heptagon program to working directory
$heptfile = $workdir . "/main.ept";
$isfile = move_uploaded_file($_FILES['heptfile']['tmp_name'], $heptfile);
if (! $isfile) {
$hepthandle = fopen($heptfile,'a+');
fputs($hepthandle,"(*@ java\npackage main;\n@*)\n");
fputs($hepthandle,$_POST['heptprog']);
fclose($hepthandle);
};
// Go to working directory
chdir($workdir);
// Compile main file
echo '<pre>';
$last_line = system(HEC
. ' -stdlib '
. HEPTLIB
. ' -target java -i main.ept 2> main.out',$res);
echo '</pre>';
flush();
if ($res == 0) {
// Make interface Java class
mkdir('main_interface');
echo '<!-- ';
$h = system(HEAPPLET . ' -mod Main -node main -targetpath main_interface 2>&1');
echo ' -->';
echo '<pre>';
// Java compilation
system('javac '
. '-classpath /home_nas/gdelaval/public_html/bzr/heptagon_applet.jar:.'
. ' main_interface/MainInterface.java 2>&1');
//system('ls -l *');
echo '</pre>';
// Make jar file
$tempfile=tempnam('/home_nas/gdelaval/public_html/bzr/jar','main-');
system('jar cf ' . $tempfile . '.jar main/*.class main_interface/*.class 2>&1');
// $_SESSION['jarfile'] = $tempfile;
// Generate applet HTML code
?>
<center>
<applet name="HeptagonApplet"
code="heptagon_applet.HeptagonApplet.class"
archive=<?php echo '"heptagon_applet.jar,jar/' . basename($tempfile) . '.jar"'?>
width="800"
height=<?php echo '"' . (60*$h + 60) . '"'?>
alt="Simulation loading...">
</applet>
</center>
<?php
} else {
echo '<pre>';
passthru('cat main.out');
echo '</pre>';
echo '<p>Compilation failed !</p>';
}
system("rm -fr " . $workdir. "/*");
// Get the compilation result
// Working directory suppression
rmdir($workdir);
}
?>
</body>
</html>
Loading…
Cancel
Save