EN FR
EN FR


Bibliography

Major publications by the team in recent years
  • 1T. Bourke, L. Brun, P. Dagand, X. Leroy, M. Pouzet, L. Rieg.

    A formally verified compiler for Lustre, in: PLDI, 2017, pp. 586–601.
  • 2J. Brunel, D. Doligez, R. R. Hansen, J. L. Lawall, G. Muller.

    A foundation for flow-based program matching using temporal logic and model checking, in: POPL, Savannah, GA, USA, ACM, January 2009, pp. 114–126.
  • 3L. Burgy, L. Réveillère, J. L. Lawall, G. Muller.

    Zebu: A Language-Based Approach for Network Protocol Message Processing, in: IEEE Trans. Software Eng., 2011, vol. 37, no 4, pp. 575-591.
  • 4P. Dagand, N. Tabareau, É. Tanter.

    Partial type equivalences for verified dependent interoperability, in: ICFP, 2016, pp. 298–310.
  • 5D. Mercadier, P. Dagand.

    Usuba: high-throughput and constant-time ciphers, by construction, in: PLDI, 2019, pp. 157–173.
  • 6G. Muller, C. Consel, R. Marlet, L. P. Barreto, F. Mérillon, L. Réveillère.

    Towards Robust OSes for Appliances: A New Approach Based on Domain-specific Languages, in: Proceedings of the 9th Workshop on ACM SIGOPS European Workshop: Beyond the PC: New Challenges for the Operating System, Kolding, Denmark, 2000, pp. 19–24.
  • 7G. Muller, J. L. Lawall, H. Duchesne.

    A Framework for Simplifying the Development of Kernel Schedulers: Design and Performance Evaluation, in: HASE - High Assurance Systems Engineering Conference, Heidelberg, Germany, IEEE, October 2005, pp. 56–65.
  • 8F. Mérillon, L. Réveillère, C. Consel, R. Marlet, G. Muller.

    Devil: An IDL for hardware programming, in: Proceedings of the Fourth Symposium on Operating Systems Design and Implementation (OSDI), San Diego, California, USENIX Association, October 2000, pp. 17–30.
  • 9Y. Padioleau, J. L. Lawall, R. R. Hansen, G. Muller.

    Documenting and Automating Collateral Evolutions in Linux Device Drivers, in: EuroSys, Glasgow, Scotland, March 2008, pp. 247–260.
  • 10N. Palix, G. Thomas, S. Saha, C. Calvès, J. L. Lawall, G. Muller.

    Faults in Linux 2.6, in: ACM Transactions on Computer Systems, June 2014, vol. 32, no 2, pp. 4:1–4:40.
Publications of the year

Articles in International Peer-Reviewed Journals

  • 11T. Hoang, J. L. Lawall, Y. Tian, R. J. Oentaryo, D. Lo.

    PatchNet: Hierarchical Deep Learning-Based Stable Patch Identification for the Linux Kernel, in: IEEE Transactions on Software Engineering, November 2019, 17 p. [ DOI : 10.1109/TSE.2019.2952614 ]

    https://hal.inria.fr/hal-02373994
  • 12G. Lena Cota, S. Ben Mokhtar, G. Gianini, E. Damiani, J. L. Lawall, G. Muller, L. Brunie.

    RACOON++: A Semi-Automatic Framework for the Selfishness-Aware Design of Cooperative Systems, in: IEEE Transactions on Dependable and Secure Computing, July 2019, vol. 16, no 4, pp. 635-650. [ DOI : 10.1109/TDSC.2017.2706286 ]

    https://hal.archives-ouvertes.fr/hal-02196805

International Conferences with Proceedings

  • 13J.-J. Bai, J. L. Lawall, Q.-L. Chen, S.-M. Hu.

    Effective Static Analysis of Concurrency Use-After-Free Bugs in Linux Device Drivers Effective Static Analysis of Concurrency Use-After-Free Bugs in Linux Device Drivers, in: 2019 USENIX Annual Technical Conference, Renton, Washington, United States, July 2019.

    https://hal.inria.fr/hal-02182516
  • 14J.-J. Bai, J. L. Lawall, W. Tan, S.-M. Hu.

    DCNS: Automated Detection of Conservative Non-Sleep Defects in the Linux Kernel, in: ASPLOS 2019 - The 24th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Providence, Rhode Island, United States, ACM, April 2019, pp. 287-299. [ DOI : 10.1145/3297858.3304065 ]

    https://hal.inria.fr/hal-02389543
  • 15B. Bui, D. Mvondo, B. Teabe, K. Jiokeng, L. Wapet, A. Tchana, G. Thomas, D. Hagimont, G. Muller, N. Depalma.

    When eXtended Para-Virtualization (XPV) meets NUMA, in: EUROSYS 2019: 14th European Conference on Computer Systems, Dresde, Germany, ACM Press, 2019, 7 p. [ DOI : 10.1145/3302424.3303960 ]

    https://hal.archives-ouvertes.fr/hal-02333640
  • 16D. Carver, R. Gouicem, J.-P. Lozi, J. Sopena, B. Lepers, W. Zwaenepoel, N. Palix, J. L. Lawall, G. Muller.

    Fork/Wait and Multicore Frequency Scaling: a Generational Clash, in: 10th Workshop on Programming Languages and Operating Systems, Huntsville, Canada, ACM Press, October 2019, pp. 53-59. [ DOI : 10.1145/3365137.3365400 ]

    https://hal.inria.fr/hal-02349987
  • 17Q.-L. Chen, J.-J. Bai, Z.-M. Jiang, J. L. Lawall, S.-M. Hu.

    Detecting Data Races Caused by Inconsistent Lock Protection in Device Drivers, in: SANER 2019 - 26th IEEE International Conference on Software Analysis, Evolution and Reengineering, Hangzhou, China, February 2019.

    https://hal.inria.fr/hal-02014196
  • 18C. Courtaud, J. Sopena, G. Muller, D. Gracia.

    Improving Prediction Accuracy of Memory Interferences for Multicore Platforms, in: RTSS 2019 - 40th IEEE Real-Time Systems Symposium, Hong-Kong, China, IEEE, December 2019.

    https://hal.inria.fr/hal-02401625
  • 19T. Hoang, J. L. Lawall, R. J. Oentaryo, Y. Tian, D. Lo.

    PatchNet: A Tool for Deep Patch Classification, in: ICSE-Companion 2019 - IEEE/ACM 41st International Conference on Software Engineering, Montreal, Canada, IEEE, May 2019, pp. 83-86. [ DOI : 10.1109/ICSE-Companion.2019.00044 ]

    https://hal.inria.fr/hal-02408347
  • 20Z.-M. Jiang, J.-J. Bai, J. L. Lawall, S.-M. Hu.

    Fuzzing Error Handling Code in Device Drivers Based on Software Fault Injection, in: ISSRE 2019 - The 30th International Symposium on Software Reliability Engineering, Berlin, Germany, October 2019. [ DOI : 10.1109/ISSRE.2019.00022 ]

    https://hal.inria.fr/hal-02389293
  • 21H. J. Kang, F. Thung, J. L. Lawall, G. Muller, L. Jiang, D. Lo.

    Semantic Patches for Java Program Transformation, in: 33rd European Conference on Object-Oriented Programming (ECOOP 2019), London, United Kingdom, Leibniz International Proceedings in Informatics (LIPIcs), Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, July 2019, vol. 134, pp. 22:1–22:27. [ DOI : 10.4230/LIPIcs.ECOOP.2019.22 ]

    https://hal.inria.fr/hal-02182522
  • 22F. Laniel, D. Carver, J. Sopena, F. Wajsburt, J. Lejeune, M. Shapiro.

    Highlighting the Container Memory Consolidation Problems in Linux, in: 2019 IEEE 18th International Symposium on Network Computing and Applications (NCA), Cambridge, United States, IEEE, September 2019, pp. 1-4. [ DOI : 10.1109/NCA.2019.8935034 ]

    https://hal.archives-ouvertes.fr/hal-02424007
  • 23D. Mercadier, P.-É. Dagand.

    Usuba: high-throughput and constant-time ciphers, by construction, in: PLDI 2019 - 40th ACM SIGPLAN Conference on Programming Language Design and Implementation, Phoenix, United States, ACM Press, June 2019, pp. 157-173. [ DOI : 10.1145/3314221.3314636 ]

    https://hal.inria.fr/hal-02176603

Internal Reports

  • 24H. J. Kang, F. Thung, J. L. Lawall, G. Muller, L. Jiang, D. Lo.

    Automating Program Transformation for Java Using Semantic Patches, Inria Paris, February 2019, no RR-9256.

    https://hal.inria.fr/hal-02023368
References in notes
  • 25T. Ball, E. Bounimova, B. Cook, V. Levin, J. Lichtenberg, C. McGarvey, B. Ondrusek, S. K. Rajamani, A. Ustuner.

    Thorough Static Analysis of Device Drivers, in: EuroSys, 2006, pp. 73–85.
  • 26A. Baumann, P. Barham, P.-É. Dagand, T. Harris, R. Isaacs, S. Peter, T. Roscoe, A. Schüpbach, A. Singhania.

    The multikernel: A new OS architecture for scalable multicore systems, in: SOSP, 2009, pp. 29–44.
  • 27T. F. Bissyandé, L. Réveillère, J. L. Lawall, Y.-D. Bromberg, G. Muller.

    Implementing an embedded compiler using program transformation rules, in: Software: Practice and Experience, 2013.
  • 28T. F. Bissyandé, L. Réveillère, J. L. Lawall, Y.-D. Bromberg, G. Muller.

    Implementing an Embedded Compiler using Program Transformation Rules, in: Software: Practice and Experience, February 2015, vol. 45, no 2, pp. 177-196.

    https://hal.archives-ouvertes.fr/hal-00844536
  • 29T. F. Bissyandé, L. Réveillère, J. L. Lawall, G. Muller.

    Ahead of Time Static Analysis for Automatic Generation of Debugging Interfaces to the Linux Kernel, in: Automated Software Engineering, May 2014, pp. 1-39. [ DOI : 10.1007/s10515-014-0152-4 ]

    https://hal.archives-ouvertes.fr/hal-00992283
  • 30A. P. Black, S. Ducasse, O. Nierstrasz, D. Pollet.

    Pharo by Example, Square Bracket Associates, 2010.
  • 31E. Brady, K. Hammond.

    Resource-Safe Systems Programming with Embedded Domain Specific Languages, in: 14th International Symposium on Practical Aspects of Declarative Languages (PADL), LNCS, Springer, 2012, vol. 7149, pp. 242–257.
  • 32T. Braibant, D. Pous.

    An Efficient Coq Tactic for Deciding Kleene Algebras, in: 1st International Conference on Interactive Theorem Proving (ITP), LNCS, Springer, 2010, vol. 6172, pp. 163–178.
  • 33C. Cadar, D. Dunbar, D. R. Engler.

    KLEE: Unassisted and Automatic Generation of High-Coverage Tests for Complex Systems Programs, in: OSDI, 2008, pp. 209–224.
  • 34V. Chipounov, G. Candea.

    Reverse Engineering of Binary Device Drivers with RevNIC, in: EuroSys, 2010, pp. 167–180.
  • 35A. Chlipala.

    The Bedrock Structured Programming System: Combining Generative Metaprogramming and Hoare Logic in an Extensible Program Verifier, in: ICFP, 2013, pp. 391–402.
  • 36L. A. Clarke.

    A system to generate test data and symbolically execute programs, in: IEEE Transactions on Software Engineering, 1976, vol. 2, no 3, pp. 215–222.
  • 37E. Clarke, O. Grumberg, S. Jha, Y. Lu, H. Veith.

    Counterexample-guided abstraction refinement for symbolic model checking, in: J. ACM, 2003, vol. 50, no 5, pp. 752–794.
  • 38P. Cousot, R. Cousot.

    Abstract Interpretation: Past, Present and Future, in: CSL-LICS, 2014, pp. 2:1–2:10.
  • 39P.-É. Dagand, A. Baumann, T. Roscoe.

    Filet-o-Fish: practical and dependable domain-specific languages for OS development, in: Programming Languages and Operating Systems (PLOS), 2009, pp. 51–55.
  • 40I. Dillig, T. Dillig, A. Aiken.

    Sound, complete and scalable path-sensitive analysis, in: PLDI, June 2008, pp. 270–280.
  • 41D. R. Engler, B. Chelf, A. Chou, S. Hallem.

    Checking System Rules Using System-Specific, Programmer-Written Compiler Extensions, in: OSDI, 2000, pp. 1–16.
  • 42D. R. Engler, D. Y. Chen, A. Chou, B. Chelf.

    Bugs as Deviant Behavior: A General Approach to Inferring Errors in Systems Code, in: SOSP, 2001, pp. 57–72.
  • 43A. Goldberg, D. Robson.

    Smalltalk-80: The Language and Its Implementation, Addison-Wesley, 1983.
  • 44L. Gu, A. Vaynberg, B. Ford, Z. Shao, D. Costanzo.

    CertiKOS: A Certified Kernel for Secure Cloud Computing, in: Proceedings of the Second Asia-Pacific Workshop on Systems (APSys), 2011, pp. 3:1–3:5.
  • 45L. Guo, J. L. Lawall, G. Muller.

    Oops! Where did that code snippet come from?, in: 11th Working Conference on Mining Software Repositories, MSR, Hyderabad, India, ACM, May 2014, pp. 52–61.
  • 46A. Israeli, D. G. Feitelson.

    The Linux kernel as a case study in software evolution, in: Journal of Systems and Software, 2010, vol. 83, no 3, pp. 485–501.
  • 47A. Kadav, M. M. Swift.

    Understanding modern device drivers, in: ASPLOS, 2012, pp. 87–98.
  • 48A. Kennedy, N. Benton, J. B. Jensen, P.-É. Dagand.

    Coq: The World's Best Macro Assembler?, in: PPDP, Madrid, Spain, ACM, 2013, pp. 13–24.
  • 49G. A. Kildall.

    A Unified Approach to Global Program Optimization, in: POPL, 1973, pp. 194–206.
  • 50G. Klein, K. Elphinstone, G. Heiser, J. Andronick, D. Cock, P. Derrin, D. Elkaduwe, K. Engelhardt, R. Kolanski, M. Norrish, T. Sewell, H. Tuch, S. Winwood.

    seL4: formal verification of an OS kernel, in: SOSP, 2009, pp. 207–220.
  • 51J. L. Lawall, J. Brunel, N. Palix, R. R. Hansen, H. Stuart, G. Muller.

    WYSIWIB: Exploiting fine-grained program structure in a scriptable API-usage protocol-finding process, in: Software, Practice Experience, 2013, vol. 43, no 1, pp. 67–92.
  • 52J. L. Lawall, B. Laurie, R. R. Hansen, N. Palix, G. Muller.

    Finding Error Handling Bugs in OpenSSL using Coccinelle, in: Proceeding of the 8th European Dependable Computing Conference (EDCC), Valencia, Spain, April 2010, pp. 191–196.
  • 53J. L. Lawall, D. Lo.

    An automated approach for finding variable-constant pairing bugs, in: 25th IEEE/ACM International Conference on Automated Software Engineering, Antwerp, Belgium, September 2010, pp. 103–112.
  • 54J. L. Lawall, D. Palinski, L. Gnirke, G. Muller.

    Fast and Precise Retrieval of Forward and Back Porting Information for Linux Device Drivers, in: 2017 USENIX Annual Technical Conference, Santa Clara, CA, United States, July 2017, 12 p.

    https://hal.inria.fr/hal-01556589
  • 55C. Le Goues, W. Weimer.

    Specification Mining with Few False Positives, in: TACAS, York, UK, Lecture Notes in Computer Science, March 2009, vol. 5505, pp. 292–306.
  • 56Z. Li, S. Lu, S. Myagmar, Y. Zhou.

    CP-Miner: A Tool for Finding Copy-paste and Related Bugs in Operating System Code, in: OSDI, 2004, pp. 289–302.
  • 57Z. Li, Y. Zhou.

    PR-Miner: automatically extracting implicit programming rules and detecting violations in large software code, in: Proceedings of the 10th European Software Engineering Conference, 2005, pp. 306–315.
  • 58D. Lo, S. Khoo.

    SMArTIC: towards building an accurate, robust and scalable specification miner, in: FSE, 2006, pp. 265–275.
  • 59J.-P. Lozi, F. David, G. Thomas, J. L. Lawall, G. Muller.

    Fast and Portable Locking for Multicore Architectures, in: ACM Transactions on Computer Systems, January 2016. [ DOI : 10.1145/2845079 ]

    https://hal.inria.fr/hal-01252167
  • 60S. Lu, S. Park, Y. Zhou.

    Finding Atomicity-Violation Bugs through Unserializable Interleaving Testing, in: IEEE Transactions on Software Engineering, 2012, vol. 38, no 4, pp. 844–860.
  • 61M. Mernik, J. Heering, A. M. Sloane.

    When and How to Develop Domain-specific Languages, in: ACM Comput. Surv., December 2005, vol. 37, no 4, pp. 316–344.

    http://dx.doi.org/10.1145/1118890.1118892
  • 62G. Morrisett, G. Tan, J. Tassarotti, J.-B. Tristan, E. Gan.

    RockSalt: better, faster, stronger SFI for the x86, in: PLDI, 2012, pp. 395-404.
  • 63M. Odersky, T. Rompf.

    Unifying functional and object-oriented programming with Scala, in: Commun. ACM, 2014, vol. 57, no 4, pp. 76–86.
  • 64M. C. Olesen, R. R. Hansen, J. L. Lawall, N. Palix.

    Coccinelle: Tool support for automated CERT C Secure Coding Standard certification, in: Science of Computer Programming, October 2014, vol. 91, no B, pp. 141–160.

    https://hal.inria.fr/hal-01096185
  • 65T. Reps, T. Ball, M. Das, J. Larus.

    The Use of Program Profiling for Software Maintenance with Applications to the Year 2000 Problem, in: ESEC/FSE, 1997, pp. 432–449.
  • 66L. R. Rodriguez, J. L. Lawall.

    Increasing Automation in the Backporting of Linux Drivers Using Coccinelle, in: 11th European Dependable Computing Conference - Dependability in Practice, Paris, France, 11th European Dependable Computing Conference - Dependability in Practice, November 2015.

    https://hal.inria.fr/hal-01213912
  • 67C. Rubio-González, H. S. Gunawi, B. Liblit, R. H. Arpaci-Dusseau, A. C. Arpaci-Dusseau.

    Error propagation analysis for file systems, in: PLDI, Dublin, Ireland, ACM, June 2009, pp. 270–280.
  • 68L. Ryzhyk, P. Chubb, I. Kuz, E. Le Sueur, G. Heiser.

    Automatic device driver synthesis with Termite, in: SOSP, 2009, pp. 73–86.
  • 69L. Ryzhyk, A. Walker, J. Keys, A. Legg, A. Raghunath, M. Stumm, M. Vij.

    User-Guided Device Driver Synthesis, in: OSDI, 2014, pp. 661–676.
  • 70R. k. Saha, J. L. Lawall, S. Khurshid, D. E. Perry.

    On the Effectiveness of Information Retrieval Based Bug Localization for C Programs, in: ICSME 2014 - 30th International Conference on Software Maintenance and Evolution, Victoria, Canada, IEEE, September 2014, pp. 161-170. [ DOI : 10.1109/ICSME.2014.38 ]

    https://hal.inria.fr/hal-01086082
  • 71R. Saha, J. L. Lawall, S. Khurshid, D. E. Perry.

    On the Effectiveness of Information Retrieval based Bug Localization for C Programs, in: International Conference on Software Maintenance and Evolution (ICSME), Victoria, BC, Canada, September 2014.
  • 72S. Saha, J.-P. Lozi, G. Thomas, J. L. Lawall, G. Muller.

    Hector: Detecting resource-release omission faults in error-handling code for systems software, in: DSN 2013 - 43rd Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), Budapest, Hungary, IEEE Computer Society, June 2013, pp. 1-12. [ DOI : 10.1109/DSN.2013.6575307 ]

    https://hal.inria.fr/hal-00918079
  • 73D. A. Schmidt.

    Data Flow Analysis is Model Checking of Abstract Interpretations, in: POPL, 1998, pp. 38–48.
  • 74P. Senna Tschudin, J. L. Lawall, G. Muller.

    3L: Learning Linux Logging, in: BElgian-NEtherlands software eVOLution seminar (BENEVOL 2015), Lille, France, December 2015.

    https://hal.inria.fr/hal-01239980
  • 75M. Shapiro.

    Purpose-built languages, in: Commun. ACM, 2009, vol. 52, no 4, pp. 36–41.
  • 76R. Tartler, D. Lohmann, J. Sincero, W. Schröder-Preikschat.

    Feature consistency in compile-time-configurable system software: facing the Linux 10,000 feature problem, in: EuroSys, 2011, pp. 47–60.
  • 77F. Thung, D. X. B. Le, D. Lo, J. L. Lawall.

    Recommending Code Changes for Automatic Backporting of Linux Device Drivers, in: 32nd IEEE International Conference on Software Maintenance and Evolution (ICSME), Raleigh, North Carolina, United States, IEEE, October 2016.

    https://hal.inria.fr/hal-01355859
  • 78W. Wang, M. Godfrey.

    A Study of Cloning in the Linux SCSI Drivers, in: Source Code Analysis and Manipulation (SCAM), IEEE, 2011.
  • 79J. Yang, C. Hawblitzel.

    Safe to the Last Instruction: Automated Verification of a Type-safe Operating System, in: PLDI, 2010, pp. 99–110.