Vincent Morice, PhD 2018-2021

 PhD Students, Research  Comments Off on Vincent Morice, PhD 2018-2021
Jan 112019
 

CIFRE with STMicroelectronics

A collaboration with J. Cornet and L. Maillet-Contoz

Adding Diagnostic Features to Digital Twins for Systems-on-a-Chip

Deadline : January 15, 2019 — ACM SIGBED Paul Caspi Memorial Dissertation Award

 News, Research  Comments Off on Deadline : January 15, 2019 — ACM SIGBED Paul Caspi Memorial Dissertation Award
Nov 212018
 

ACM SIGBED Paul Caspi Dissertation Award

http://sigbed.blogspot.fr/p/awards.html

Deadline for Nomination:  Jan 15, 2019 

The Paul Caspi Memorial Dissertation Award is a SIGBED award established in 2013. The award recognizes outstanding doctoral dissertations that significantly advance the state of the art in the science of embedded systems, in the spirit and legacy of Dr. Paul Caspi’s work.

The SIGBED Paul Caspi Memorial Dissertation Award will be presented annually to the author of an outstanding dissertation in the area of Embedded Systems. The author of the winning dissertation will be invited to publish a dissertation summary in the ACM SIGBED Newsletter and to submit their work to the journal ACM TECS (Transactions on Embedded Computing Systems) for possible publication, after the normal peer-review process. The award will include an award certificate for the author and an honorarium of 2000 USD. A public citation for the award paper will be placed on the SIGBED web site.

 

The award is for an outstanding doctoral dissertation dated within one year preceding the nomination due date. A selection committee and a selection committee chair will be selected by the current SIGBED Executive Committee. A member of the current SIGBED Executive Committee will be one of the selection committee members. The committee chair shall adjudicate conflicts of interest, appointing substitutes to the committee as necessary. Dissertations supervised by a selection committee member are ineligible to be nominated. For purposes of continuity, committee members may remain on the committee for up to three years. The selection committee shall be no less than three persons in size.

Nomination Process

Nominations will be solicited annually, being due  January 15 each year, via major mailing lists and web forums. Additionally, dissertation advisers of each eligible year will be contacted for solicitation of award nominations.

A nomination should consist of the following items:

  • Name, address, phone number, and email address of the person making the nomination (the nominator).
  • Name, address, phone number, and email address of the candidate for whom an award is recommended (the nominee).
  • A short statement (200-500 words) explaining why the nominee deserves the award.
  • Supporting statements from up to two persons in addition to the nominator.
  • The nominated dissertation in an English language version.
  • A list of the nominee’s publications that were used as the basis of chapters in the nominated dissertation.
  • The CV of the nominee.

The selection committee will make a recommendation on the winner of the award to the SIGBED Executive Committee, which will approve and announce the final winner. SIGBED Executive Committee members who have conflicts of interest with any nominee will be excluded from the approval process. The primary selection criterion will be the quality of the candidate’s work, with the aim to recognize outstanding doctoral dissertations. The selection committee may choose to issue no award in a given year. The award may not be given to multiple recipients.

For further information,  contact Wang.Yi@it.uu.se

Une petite expérience de vulgarisation sur le bug Meltdown

 Presentations  Comments Off on Une petite expérience de vulgarisation sur le bug Meltdown
Jan 052018
 

 

Une petite expérience de vulgarisation sur le bug Meltdown, d’après l’excellent résumé et le bout de code publiés là :
blog.cyberus-technology.de/posts/2018-01-03-meltdown.html.

Extrait de la page ci-dessus, pour les informaticiens :

; rcx = a protected kernel memory address
; rbx = address of a large array in user space
mov al, byte [rcx]                                 ; read from forbidden kernel address
shl rax, 0xc                                       ; multiply the result from the read  operation with 4096
mov rbx, qword [rbx + rax]                         ; touch the user space array at the offset that we just calculated

Pour les non informaticiens :

Imaginez que vous êtes dans un grand bâtiment, vous avez quelques pièces à vous, et quelqu’un de puissant occupe les autres pièces. Chaque pièce est remplie de grandes étagères, chaque étagère est remplie de cartons, qui contiennent chacun un petit bout de papier où est noté un numéro secret dans l’intervalle [0, 42]. Tous les cartons du bâtiment sont numérotés. Vous avez le droit de jouer avec les cartons qui sont dans vos pièces du bâtiment, de déplacer et regarder les petits bouts de papier, voire de les montrer à la fenêtre si ça vous amuse. Mais comme les étagères sont hautes, et que vous risquez de vous coincer les doigts en déplaçant les échelles, il y a un petit robot qui permet d’attraper les cartons et de déplacer leur contenu, il suffit de lui indiquer précisément ce que vous voulez faire, par exemple : recopier le bout de papier du carton X et le mettre dans le carton Y.

Vous jouez tranquillement avec vos cartons et vos petits bouts de papier, et puis un jour vous demandez au robot un numéro de carton qui n’est pas à vous. Comme il est parfaitement interdit que vous regardiez le contenu des cartons de l’autre occupant puissant du bâtiment, le petit robot qui vous apporte les cartons consulte toujours un gardien pour savoir si vous avez le droit de demander ce carton. Le gardien a une grande écritoire où sont notés les numéros des cartons et leur propriétaire. Il peut donc donner ou non l’autorisation. S’il dit non, le petit robot revient vous faire une remontée de bretelles. Mais il y a eu des compressions de personnel, et le gardien est très occupé. Pour ne pas tout ralentir, il s’est mis d’accord avec le robot : le robot commence le boulot sans savoir si vous avez le droit à ce carton ou pas, va chercher le carton de toute façon, et commence à faire ce que vous lui avez demandé avec son contenu. Pendant ce temps, et avant que vous puissiez faire quoi que soit d’autre, si jamais vous n’aviez pas le droit de regarder ce carton, le gardien a finalement eu le temps de consulter son écritoire, il prévient le robot, qui remet tout en place comme si de rien n’était… et vous fait une remontée de bretelles. Ça a l’air un peu bête (bien que “faire et défaire, c’est toujours travailler !”, comme disait ma grand-mère), mais la plupart du temps vous ne demandez que des cartons qui sont bien à vous, alors en général ça fait gagner du temps à tout le monde de commencer le boulot avant d’avoir l’autorisation.

Mais vous avez vraiment envie de connaître un des secrets de l’autre occupant puissant, et vous êtes très malin. Vous avez aussi un petit nombre de cartons tout neufs un peu difficiles à ouvrir, ils sont encore très raides. Dès qu’ils auront été ouverts une fois, vous savez que ce sera plus facile. Vous les numérotez avec un gros marqueur, de 0 à 42. Vous imaginez l’expérience suivante : considérons un carton de numéro X qui n’est pas à vous. Vous demandez au robot d’aller chercher le petit bout de papier de ce carton X, de regarder le numéro secret qui y est inscrit (disons Y), et de mettre un bout de papier quelconque dans le carton tout neuf numéroté Y. Comme vous n’avez pas le droit de demander le carton X, à la fin le gardien ne donne pas l’autorisation, le petit robot remet tout en ordre et vous avez droit à une remontée de bretelles. Tant pis pour vous, raté ! Sauf que maintenant vous allez demander au robot de vous rapporter le contenu de chaque carton neuf, et vous le chronométrez soigneusement. Il y a un carton, disons celui de numéro Y, qui sera plus facile à ouvrir que les autres, parce que le robot y aura déjà eu accès. Et donc le robot mettra moins de temps à rapporter ce contenu que pour les autres cartons. En regardant le numéro de ce carton (Y), vous aurez le secret qui était écrit sur le petit bout de papier du carton X qui n’était pas à vous ! Gagné !

Mise à jour pour continuer à filer la métaphore…

Quand je disais “vous” ci-dessus, c’était une manière d’incarner un logiciel de bas niveau, qui parle directement au matériel (le robot, le gardien…). Maintenant il faut imaginer que l’utilisateur le plus commun du grand-bâtiment-rempli-d’étagères-remplies-de-cartons-qui-contiennent-des-petits-papiers n’est pas du tout cet individu qui doit penser à tout et donner des ordres au robot.

Imaginons donc une autre personne A confortablement installée dans une de vos pièces, et qui vous donne des ordres plus abstraits. Par exemple : s’il vous plait, faites-moi la somme de tous les nombres écrits sur les papiers des cartons de l’étagère en haut à gauche. C’est à vous de donner tous les ordres de base nécessaires au robot (soit vous les inventez tout seul, soit vous les confiez à un autre bâtiment où les gens s’occupent de traduire ça en ordres de base, vous récupérez un bout de papier que vous exécutez fidèlement).

On peut même imaginer une autre personne, B, encore plus confortablement installée, et qui donne des ordres encore plus abstraits à A. Par exemple : apportez-moi le budget réalisé de cette année. A se débrouille pour traduire ça en calculs de sommes, et vous demande de faire ces sommes. Et ainsi de suite…

On peut aussi imaginer que le travail à réaliser arrive sous forme d’un livre que la personne Z se fait livrer. Z ouvre le livre, lit le contenu et donne des ordres à Y, qui donne des ordres à X, …., qui donne des ordres à A, qui vous en donne. Quand il récupère des résultats, il les envoie au livreur initial. Il faut être très très très malin pour arriver à provoquer l’expérience décrite plus haut, et à récupérer les résultats, grâce à un travail décrit dans un tel livre livré à Z qui ne se doute de rien. Mais il existe des gens comme ça.

On peut essayer de se protéger en demandant à Z de faire bien attention à ce qu’il lit et transmet à Y et indirectement à X, …, A, vous et le robot. On peut espérer qu’en faisant bien attention, il ne renverra jamais au livreur le fameux secret Y dont on parlait plus haut et qu’il ne devrait pas connaître. Mais tout le monde, de A jusqu’à Z, plus vous, a toujours considéré que le gardien ferait son boulot, tout au bout.  Pour le moment, on peut envisager de confisquer la montre de Z.

Oct 102016
 

The Open Workshop on Synchronous Languages and Systems

SYNCHRON, the International Open Workshop on Synchronous Programming, is devoted to all aspects of synchronous programming: languages, compiling techniques, formal methods, programming environments, execution platforms, semantics issues, code generation. This traditional workshop has become the annual rendez-vous hotpot of the synchronous community and a ’must’ event for anyone interested in keeping up with the latest developments, in front and behind the scenes, in academic and industrial synchronous research. The workshop is renowned for its informal and open character.

 

2017 Edition Rennes, France
2016 Edition  Bamberg, Germany
2015 Edition
Kiel, Germany
2014 Edition Aussois, France
2013 Edition back to Dagstuhl for the 20th anniversary!
2012 Edition Le Croisic, France
2011 Edition Paris, France
2010 Edition Fréjus, France
2009 Edition Dagstuhl, Germany
2008 Edition Aussois, France
2007 Edition Bamberg, Germany
2006 Edition L’alpe d’Huez, France
2005 Edition Qwara, Malta
2004 Edition Dagstuhl, Germany
2003 Edition Luminy, France
2002 Edition La Londe les Maures, France
2001 Edition Dagstuhl, Germany
2000 Edition St Nazaire, France
1999 Edition Hyères, France
1998 Edition Gandía, Spain
1997 Edition Roscoff, France
1996 Edition Dagstuhl, Germany
1995 Edition Luminy, France
1994 Edition Dagstuhl, Germany

Embedded Tutorial, EMSOFT’16

 Presentations, Research  Comments Off on Embedded Tutorial, EMSOFT’16
Oct 032016
 

 

Title: Energy consumption in embedded systems; abstractions for software models, programming languages and verification methods

Author: Florence Maraninchi

(thanks to: M. Moy, L. Mounier, L. Maillet-Contoz, D. Barthel, J.
Cornet, C. Helmstetter, T. Bouhadiba, N. Berthier, L. Samper, …)

Slides

Jul 012016
 

Some Recent Papers:

Real-time on-Board Manycore Implementation of a Health Monitoring System: Lessons Learnt
Moustapha Lo, Nicolas Valot, Florence Maraninchi, Pascal Raymond
9th European Congress — EMBEDDED REAL TIME SOFTWARE AND SYSTEMS (ERTS2’18)
Toulouse, France, January 2018
pdf available

Implementing a Real-Time Avionic Application on a Many-Core Processor
Moustapha Lo, Nicolas Valot, Florence Maraninchi, Pascal Raymond
42nd European Rotorcraft Forum (ERF’16)
pdf available

 

DATE’16: Efficient Monitoring of Loose-Ordering Properties for SystemC/TLM. 
Yuliia Romenska and Florence Maraninchi  — Full Text (HAL)

Control-oriented Models for a shared IoT Infrastructure in Smart Cities
Laurent Lemke, Florence Maraninchi, Didier Donsez, Gilles Privat

Modeling power consumption and temperature in TLM models
Matthieu Moy, Claude Helmstetter, Tayeb Bouhadiba, Florence Maraninchi
LITES – Leibniz Transactions on Embedded Systems, Vol 3, No 1 (2016)


Full List:

For a clean list, see the publication repository of Univ. Grenoble Alpes, or my Google scholar page.

I’ve just decided to delete my ResearchGate account. There might be dangling pointers here and there… will be corrected soon.

For full the text of my publications, just ask me.

Workshop: The Future of Nanosatellites

 Events, Presentations, Research  Comments Off on Workshop: The Future of Nanosatellites
Feb 022016
 

http://nanocsug2.sciencesconf.org/

 

Wednesday March 23, 9h30.
Resource-constrained real-time embedded software and systems
Florence Maraninchi

Abstract:

Embedded software and systems are already everywhere (in nuclear power plants, smart grids, pacemakers, cars, trains and subways, planes, rockets and satellites, etc.). Most of these contexts are said to be safety-critical: a failure can cause human injuries or death, or severe environment damage. Others might be “only” business-critical: a failure costs a lot of money. To guarantee a very low probability of failure, the most critical systems are based on costly hardware redundancy, dedicated software development methods, and costly validation methods.

Nanosatellites are not safety-critical, and probably not as business-critical as big commercial satellites. Moreover, they are highly resource-constrained (energy consumption, memory, computing power). These observations could lead to choose cheap solutions. However, given the development time and the cost of the launch procedure, failures should be avoided.

We advocate the idea that the development of embedded software and systems for nanosatellites should try and benefit from the accumulated experience on the development of more critical systems; a key problem is to understand which constraints can be relaxed, and which level of quality can be obtained at a reasonable cost.

Oct 022015
 

Argos is a  pure synchronous language inspired by Statecharts. It is a synchronous language in which basic programs are explicit Mealy machines, and the compositions operators are the parallel composition and the hierarchic composition. Automata in the Family of Synchronous Languages is a presentation that contains a good summary of Argos.

Students and Main Collaborations:

  • PhD Students: Muriel Vachon, Yann Rémond, Lionel Morel
  • Collaborations: Airbus, EsterelTechnologies, Schneider Electric, …

Main Publications:

External References to this Work:

Sep 302015
 

  • Amaury Graillat, Master II R, 2014-2015  (with Matthieu Moy)
  • Hanan Kanso, Master II R, 2013-2014 (with Matthieu Moy)
  • Abdelhaq Beladjine, master II R 2009-2010
  • Sofiane Kara Mostefa, master II R 2009-2010
  • Laurie Lugrin, Master II R, 2008-2009 (with Laurent Mounier)
  • Nicolas Berthier, Master II R, 2007-2008 (with Christophe Rippert)
  • Quentin Meunier, Master II R, 2006-2007 (with Karine Altisen)
  • Giovanni Funchal, Master IIR, 2006-2007 (with Matthieu Moy)
  • Tayeb Sofiane Bouhadiba, Master IIR, 2005-2006
  • Muhammad Muzammil Shahbaz, Master IIR, 2004-2005 (with Matthieu Moy)
  • David Stauch, Master IIR 2003-2004 (with Karine Altisen)
  • Jacques Ndjeng Ndjeng, DEA 2002-2003
  • Aurélie Clodic , DEA 2001-2002
  • Lionel Morel, DEA 2000-2001
  • Fabien Gaucher, DEA 1999-2000
  • Yann Rémond, DEA 1997-1998
  • Traian Popovici, Master Diploma, Rumania, 1995-1996
  • Muriel Vachon, DEA 1990-1991