GhostFunc:一种针对Rust操作系统内核的验证方法
CSTR:
作者:
作者单位:

作者简介:

通讯作者:

董威,E-mail:wdong@nudt.edu.cn

中图分类号:

TP316

基金项目:

国家自然科学基金(U2341212)


GhostFunc: A Verification Method for Rust Operating System Kernels
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    操作系统是软件的基础平台,操作系统内核的安全性往往影响重大.Rust是逐渐兴起的内存安全语言,具有生命周期、所有权、借用检查、RAII等安全机制,使用Rust语言构建内核逐渐成为当前热门的研究方向.但目前使用Rust构建的系统多包含部分unsafe代码段,无法从根本上保证语言层面的安全性,因而针对unsafe代码段的验证对于保证Rust构建的内核正确可靠尤为重要.本文以某使用Rust构建的微内核为对象,提出了GhostFunc的safe和unsafe代码段组合验证方法,将两类代码段采用不同层级的抽象,使用GhostFunc进行组合验证.本文针对任务管理与调度模块,基于λRust 形式化了Arc<T>等unsafe代码段,并给出了形式化GhostFunc的具体实现,完成了此方法的验证实例.本文所有验证工作基于定理证明的方法,在Coq中采用Iris分离逻辑框架完成了正确性的验证.

    Abstract:

    The operating system serves as the foundational platform for software, and the security of its kernel is often of significant importance. Rust, a memory-safe language that has been gradually gaining popularity, incorporates safety mechanisms such as lifetimes, ownership, borrowing checks, and RAII. Building kernels using Rust has become a prominent area of research. However, systems constructed with Rust often contain some unsafe code segments, preventing the language from offering comprehensive guarantees of safety at the language level. Therefore, verifying these unsafe code segments is crucial for ensuring the correctness and reliability of Rust-based kernels. This paper proposes a method for combining the safe and unsafe code segments, called GhostFunc, to verify a microkernel built with Rust. The method applies different levels of abstraction to the two types of code segments and uses GhostFunc for the combination verification. Focusing on the task management and scheduling module, this paper formalizes unsafe code segments such as Arc<T> using λRust and presents the formal implementation of GhostFunc. A verification example of this method is also provided. All verification work is based on theorem proving, and correctness is validated in Coq using the Iris separation logic framework.

    参考文献
    相似文献
    引证文献
引用本文

何韬,董威,文艳军. GhostFunc:一种针对Rust操作系统内核的验证方法.软件学报,2025,36(8):0

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2024-08-25
  • 最后修改日期:2024-10-14
  • 录用日期:
  • 在线发布日期: 2024-12-10
  • 出版日期:
文章二维码
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号