Docteur de l'Université de Rennes
Habilité ŕ diriger des recherches, Université
de Rennes 1, 1997
Current research activities: Design of Operating Systems, using domain-specific languages
The development of operating systems is traditionally considered to be an
activity on the fringe of software development. In fact, the lack of
systematic methodologies for OS design often translates into closed systems
that are difficult to extend and modify. Too often generality is
sacrificed for performance. The widespread use of unsafe programming
languages, combined with extensive manual optimizations, compromises the
safety of OS software.
The goal of my research is to develop new methodologies based on the
use of domain-specific languages for the structuring of an OS and an
OS kernel. A domain-specific language (DSL) is a programming language
dedicated to a particular application domain. A DSL is more
restricted than a general-purpose language, such as Java or C, but
encapsulates domain expertise that can allow verification of important
safety properties. In the context of systems programming, DSLs have
been developed for active networks (PLAN-P, and CPLAN-P),
device drivers (Devil), and kernel schedulers (Bossa).
My latest work is a DSL-based approach to address the problem of
collateral evolutions in drivers, that are are evolutions in
device-specific code induced by a change in a support
library. Specifically, we are developing a development environment, Coccinelle, that
provides a transformation language for precisely expressing evolutions
and an interactive transformation tool for applying them. The key idea
of Coccinelle is to shift the burden of collateral evolution from the
driver maintainer to the OS developer who performs the original
library evolution, and who thus understands this evolution
best. Overall, Coccinelle will provide a means for formally
documenting collateral evolutions and for easing the application of
these evolutions to device-specific code.
Curriculum Vitae (pdf)
Page on Google scholar
Recent Professional Activities (2010-...)
- Usenix ATC 2020,
Boston, MA, USA. July 2020.
- VEE 2020,
Lausanne, Switzerland. March 2020.
- SOSP 2019,
Huntsville, Ontario, Canada. October 2019.
- Usenix ATC 2019,
Renton, WA, USA. July 2019.
- OSDI 2018,
Carlsbad, California. October 2018.
- DSN 2018,
Luxembourg city, Luxembourg. June 2018.
- EuroSys 2018,
Porto, Portugal. April 2018.
- Usenix ATC 2017,
Santa Clara, California, USA. July 2017.
- DSN 2017,
Denver, Colorado, USA. June 2017.
- Systor 2017,
Haifa, Israel. May 2017.
- OPODIS 2016,
Madrid, Spain. December 2016.
- EDCC 2016,
Gothenburg, Sweden, September 2016.
- DSN 2016,
Toulouse, France, June 2016.
- ASPLOS 2016,
Atlanta, Georgia, USA, March 2016.
- TRIOS 2015,
Monterey, California, USA, October 2015.
- EDCC 2015,
Paris, France, September 2015.
- DSN 2015,
Rio de Janeiro, Brazil, June 2015.
- EuroSys 2015 PhD prize R. Needham award, April 2015, Bordeaux.
- Eurosys 2015,
Bordeaux, France, April 2015.
Wine chair, Sponsor co-chair, Grant co-chair
- TRIOS 2014,
Broomfield, Colorado, USA, October 2014.
- APSYS 2014,
Beijing, China, June 2014.
- EuroSys 2014 PhD prize R. Needham award, April 2014, Amsterdam, The Netherlands.
- VEE 2014,
Salt Lake City, Utah, USA, March 2014.
- PLOS 2013,
Nemacolin Woodlands Resort, Pennsylvania, USA, November 2013.
- DSN 2013,
Budapest, Hungary, June 2013.
- EuroSys 2013,
April 2013, Prague, Czech Republic.
- ICDCN 2013,
January 2013, Mumbai, India.
- DSN 2012, June 2012, Boston, USA.
- SYSTOR 2012,
June 2012, Haifa, Israel.
- ICDCS 2012, June 2012, Macau, China.
Distributed OS and Middleware track co-chair
- EuroSys 2012, April 2012, Bern, Switzerland.
- PLOS 2011,
October 2011, Portugal.
PC member, Co-organizer
- SRDS 2011, October 2011, Madrid, Spain.
- SYSTOR 2011, May 2011, Haifa, Israel.
- HotDep 2010, October 2010, Vancouver, Canada.
- DSN-DCCS 2010, June 2010, Chicago, USA.
- 5th EuroSys
conference, April 2010, Paris.
Last modified: April 2014