OSVAuto: automatic proofs about functional specifications in OS verification

📅 2024-03-20
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
This work addresses the challenge of automating formal verification of operating system (OS) kernel functional specifications—such as sequences, maps, structs, and enums. We propose a novel SMT-based verification method tailored to OS semantics. Our approach comprises two key contributions: (1) a native encoding scheme for OS-relevant data types that directly translates functional specifications into SMT-lib–compliant logical formulas; and (2) a sequence-oriented quantifier instantiation extension, enabling deep integration of SMT solvers into the OS specification verification pipeline for the first time. Evaluated on the uC-OS/II kernel, our method significantly improves automation: the majority of proof goals discharge without manual intervention, and human effort for functional correctness proofs is substantially reduced. End-to-end trustworthiness is ensured via integration with the Coq proof framework, guaranteeing soundness from specification to verification.

Technology Category

Application Category

📝 Abstract
We present OSVAuto for automatic proofs about functional specifications that commonly arise when verifying operating system kernels. The algorithm behind OSVAuto is designed to support natively those data types that commonly occur in OS verification, including sequences, maps, structures and enumerations. Propositions about these data are encoded into a form that is suitable for SMT solving. For quantifier instantiation, we propose an extension of recent work for automatic proofs about sequences. We evaluate the algorithm on proof obligations adapted from existing verification of the uC-OS/II kernel in Coq, demonstrating that a large number of proof obligations can be solved automatically, significantly reducing the proof effort on the functional side.
Problem

Research questions and friction points this paper is trying to address.

Automates proofs for OS kernel functional specifications
Supports OS-specific data types for SMT solving
Reduces manual effort in verifying uC-OS/II kernel
Innovation

Methods, ideas, or system contributions that make the work stand out.

Supports OS-specific data types natively
Encodes propositions for SMT solving
Extends quantifier instantiation for sequences
🔎 Similar Papers
No similar papers found.
Y
Yulun Wu
School of Mathematical Sciences, Peking University, China
B
Bican Xia
School of Mathematical Sciences, Peking University, China
Jiale Xu
Jiale Xu
Tencent ARC Lab
Generative Models3D Generation3D Reconstruction
B
Bohua Zhan
Huawei Technologies Co., Ltd., China
Tianqi Zhao
Tianqi Zhao
Zhongguancun Laboratory
formal methodssymbolic computation