seL4/l4v 项目使用教程

seL4/l4v 项目使用教程

l4v seL4 specification and proofs l4v 项目地址: https://gitcode.com/gh_mirrors/l4/l4v

1. 项目的目录结构及介绍

seL4/l4v 项目是一个包含 seL4 微内核的形式化规范和证明的 Git 仓库。以下是项目的主要目录结构及其介绍:

  • docs: 包含项目的文档,如约定、风格等。
  • spec: 包含 seL4 的不同形式化规范。
    • abstract: seL4 的功能抽象规范。
    • sep-abstract: 配置为分离内核的简化版 seL4 的抽象规范。
    • haskell: seL4 内核的 Haskell 模型,与 C 代码同步。
    • machine: 这些规范的机器接口。
    • cspec: 自动将 seL4 C 代码翻译成 Isabelle 的入口点。
    • capDL: 抽象内存内容和具体执行行为的 seL4 规范,建模系统的保护状态。
    • take-grant: 应用于 seL4 的经典 take-grant 安全模型的形式化。
  • proof: seL4 的证明。
    • invariant-abstract: seL4 抽象规范的不变量。
    • refine: 抽象和设计规范之间的细化。
    • crefine: 设计规范和 C 语义之间的细化。
    • access-control: 完整性和权限限制证明。
    • infoflow: 机密性和非传递性非干扰证明。
    • asmrefine: seL4 二进制验证的 Isabelle/HOL 部分。
    • drefine: capDL 和抽象规范之间的细化。
    • sep-capDL: capDL 上的分离逻辑实例。
    • capDL-api: 选定的 seL4 API 的分离逻辑规范。
  • lib: 通用的证明库、证明方法和工具。
  • tools: 较大的、自包含的证明工具。
    • asmrefine: 二进制验证工具的通用 Isabelle/HOL 部分。
    • c-parser: 从 C 到 Isabelle/HOL 中 Simpl 语言的解析器。
    • autocorres: 从 C 到更高层次 Isabelle/HOL 函数的自动抽象工具。
    • haskell-translator: 将 seL4 的 Haskell 原型转换为 Isabelle/HOL 中的可执行设计规范的 Python 脚本。
  • misc: 杂项脚本和构建工具。
  • camkes: CAmkES 组件平台在 seL4 上的初始形式化,正在进行中。
  • sys-init: 基于 capDL 的 seL4 用户级系统初始化规范,带有证明。

2. 项目的启动文件介绍

seL4/l4v 项目的启动文件主要是 run_tests 脚本。该脚本用于运行项目中的证明测试。以下是启动文件的介绍:

  • run_tests: 这是一个用于运行 seL4 证明测试的脚本。它确保生成的 Isabelle 规范是最新的,并且可以针对不同的架构(如 ARM、ARM_HYP、X64、RISCV64、AARCH64)运行证明。

使用方法:

L4V_ARCH=ARM ./run_tests

3. 项目的配置文件介绍

seL4/l4v 项目的主要配置文件包括 setup.mdMakefile。以下是这些配置文件的介绍:

  • setup.md: 位于 docs 目录下,包含项目的软件依赖和 Isabelle 安装的详细说明。用户应按照此文件中的说明设置开发环境。

  • Makefile: 位于 l4v 目录下,用于构建和运行项目的证明。用户可以通过运行 make <session-name> 来构建特定的证明会话。例如:

    export L4V_ARCH=ARM
    cd l4v/spec
    make ASpec
    

通过这些配置文件和启动文件,用户可以正确设置和运行 seL4/l4v 项目中的证明。

l4v seL4 specification and proofs l4v 项目地址: https://gitcode.com/gh_mirrors/l4/l4v

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柏克栋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值