C programs may dynamically load and unload modules. For example, some operating system kernels support dynamic loading and unloading of device drivers. This causes specific difficulties in the verification of such programs and modules; in particular, it must be verified that no functions or global variables from the module are used after the module is unloaded. We propose a separation-logic-based approach for the verification of such programs and modules. We propose proof rules for loading and unloading modules, and for dealing with pointers to functions in unloadable modules, that ensure soundness while imposing minimal verification overhead. We offer a formalization and we report on verifying a small kernel-like program using a prototype...
Abstract The Verified Software Toolchain builds foundational machine-checked proofs o...
We present a sound verification approach for verifying input/output properties of programs. Our appr...
In this PhD thesis, we present automatic and modular solutions to the three main problems that come ...
C programs may dynamically load and unload modules. For example, some operating system kernels suppo...
Programs in unsafe languages, like C and C++, may dynamically load and unload modules. For example, ...
Over the past decade, great progress has been made in the static modular verification of C code by m...
Over the past decade, great progress has been made in the static modular verification of C code by m...
AbstractThis paper presents a methodology for automated modular verification of C programs against s...
We present a new methodology for automatic verification of C programs against finite state machine s...
In the first part of this thesis, we present a case study on successfully verifying the Linux USB BP...
We present a new methodology for automatic verification of C programs against finite state machine s...
In our increasingly computer-oriented society, the computer programs we rely on tend to increase in ...
Formal verification enables developers to provide safety and security guarantees about their code. A...
This note describes a separation-logic-based approach for the spec-ification and verification of saf...
Separation logic is the twenty-first-century variant of Hoare logic that permits verification of poi...
Abstract The Verified Software Toolchain builds foundational machine-checked proofs o...
We present a sound verification approach for verifying input/output properties of programs. Our appr...
In this PhD thesis, we present automatic and modular solutions to the three main problems that come ...
C programs may dynamically load and unload modules. For example, some operating system kernels suppo...
Programs in unsafe languages, like C and C++, may dynamically load and unload modules. For example, ...
Over the past decade, great progress has been made in the static modular verification of C code by m...
Over the past decade, great progress has been made in the static modular verification of C code by m...
AbstractThis paper presents a methodology for automated modular verification of C programs against s...
We present a new methodology for automatic verification of C programs against finite state machine s...
In the first part of this thesis, we present a case study on successfully verifying the Linux USB BP...
We present a new methodology for automatic verification of C programs against finite state machine s...
In our increasingly computer-oriented society, the computer programs we rely on tend to increase in ...
Formal verification enables developers to provide safety and security guarantees about their code. A...
This note describes a separation-logic-based approach for the spec-ification and verification of saf...
Separation logic is the twenty-first-century variant of Hoare logic that permits verification of poi...
Abstract The Verified Software Toolchain builds foundational machine-checked proofs o...
We present a sound verification approach for verifying input/output properties of programs. Our appr...
In this PhD thesis, we present automatic and modular solutions to the three main problems that come ...