Skip to Main content Skip to Navigation

Verifying Software Fault Isolation

Abstract : We are used to use computers on which programs from diverse origins are installed and running at the same time. Each of these programs need to access memory for proper operation, but none of them should access or modify the memory of another. If this happened, programs would not be able to trust their memory and could start behaving erratically. Still, programmers do not need to coordinate and agree in advance on what parts of the memory they are allowed to use or not. Hardware takes care of allocating distinct memory zones for each program. This is completely transparent to the programmer. A malware cannot access or modify the memory of another program to attack it directly either. However, there exists a category of programs that do not benefit from this protection: modules that extend the features of other programs, such as plugins in a web browser. This thesis is based on a software (and not hardware) fault isolation technique, and proposes two semantics for it, single-threaded and multi-threaded, as well as a static analyzer based on abstract interpretation. We also present a proof of correctness for the analyzer.
Document type :
Complete list of metadatas

Cited literature [45 references]  Display  Hide  Download
Contributor : Abes Star :  Contact
Submitted on : Friday, March 20, 2020 - 11:45:07 AM
Last modification on : Wednesday, September 9, 2020 - 4:11:40 AM
Long-term archiving on: : Sunday, June 21, 2020 - 3:17:26 PM


Version validated by the jury (STAR)


  • HAL Id : tel-02513105, version 1


Julien Lepiller. Verifying Software Fault Isolation. Performance [cs.PF]. Université Rennes 1, 2019. English. ⟨NNT : 2019REN1S067⟩. ⟨tel-02513105⟩



Record views


Files downloads