paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Virtual timeline: a formal abstraction for verifying preemptive schedulers with temporal isolation

虚拟时间线:一种验证具有时间隔离的抢占式调度器的形式化抽象
POPL 4(POPL)2019匹配度 3/10 · 该论文属于形式化验证与实时OS调度器验证,虽符合用户对理论形式化和工程实现的偏好,但不涉及用户核心关注的AI/LLM与程序分析交叉、浮点程序分析或贝叶斯程序分析。引用 17 inbox
Mengqi Liu, Lionel Rieg, Zhong Shao, Ronghui Gu, David Costanzo, Jung-Eun Kim, Man-Ki Yoon
crossref: 2026-09-10

AI 速览

一句话:提出虚拟时间线抽象,并在 Coq 中验证抢占式调度器实现,使实时内核获得时间与空间隔离。

安全攸关实时系统要求组件间具备空间与时间隔离,其中时间隔离依赖于具体抢占式调度器实现的性质(如及时提供时间片、对抢占不敏感等)。已有工作或只验证调度器抽象模型,或证明的性质不足以建立组件隔离。本文提出一种组合式推理框架,以 virtual timeline(实时调度分析中 supply bound function 的变体)作为抽象,隔离地规定并推理每个组件的调度行为,并证明抽象上的性质可下推到 OS 内核生成的汇编代码。作者在 Coq 中验证了一个扩展自 mCertiKOS 的实时内核,加入用户级抢占、经验证的定时器中断处理程序和实时调度器。结果证明,在排除微架构级时间信道的前提下,该内核在功能正确性之外还满足时间与空间隔离。

问题
安全攸关实时系统需要组件间时间隔离,而时间隔离取决于具体抢占式调度器的算法性质;现有工作要么只针对抽象模型,要么证明的性质不足以建立组件隔离。
方法
提出以 virtual timeline(supply bound function 的变体)为核心抽象的组合式框架,用于隔离地规定和推理每个组件的调度,并建立从该抽象到内核生成汇编代码的证明下推。
评估
在 Coq 中验证扩展 mCertiKOS 的实时内核(含用户级抢占、定时器中断处理和实时调度器),证明在无微架构级时间信道时该内核满足功能正确性、时间隔离与空间隔离。
原文摘要(Abstract)

The reliability and security of safety-critical real-time systems are of utmost importance because the failure of these systems could incur severe consequences (e.g., loss of lives or failure of a mission). Such properties require strong isolation between components and they rely on enforcement mechanisms provided by the underlying operating system (OS) kernel. In addition to spatial isolation which is commonly provided by OS kernels to various extents, it also requires temporal isolation, that is, properties on the schedule of one component (e.g., schedulability) are independent of behaviors of other components. The strict isolation between components relies critically on algorithmic properties of the concrete implementation of the scheduler, such as timely provision of time slots, obliviousness to preemption, etc. However, existing work either only reasons about an abstract model of the scheduler, or proves properties of the scheduler implementation that are not rich enough to establish the isolation between different components. In this paper, we present a novel compositional framework for reasoning about algorithmic properties of the concrete implementation of preemptive schedulers. In particular, we use virtual timeline , a variant of the supply bound function used in real-time scheduling analysis, to specify and reason about the scheduling of each component in isolation. We show that the properties proved on this abstraction carry down to the generated assembly code of the OS kernel. Using this framework, we successfully verify a real-time OS kernel, which extends mCertiKOS, a single-processor non-preemptive kernel, with user-level preemption, a verified timer interrupt handler, and a verified real-time scheduler. We prove that in the absence of microarchitectural-level timing channels, this new kernel enjoys temporal and spatial isolation on top of the functional correctness guarantee. All the proofs are implemented in the Coq proof assistant.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot527,
  title = {Virtual timeline: a formal abstraction for verifying preemptive schedulers with temporal isolation},
  author = {Mengqi Liu and Lionel Rieg and Zhong Shao and Ronghui Gu and David Costanzo and Jung-Eun Kim and Man-Ki Yoon},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {4},
  number = {POPL},
  year = {2019},
  doi = {10.1145/3371088}
}