HyperViper 项目教程
HyperViperToolkit for Hyper-V security research项目地址:https://gitcode.com/gh_mirrors/hy/HyperViper
1. 项目的目录结构及介绍
HyperViper 项目的目录结构如下:
hyperviper/
├── silver/
├── silicon/
├── commutativity-plugin/
├── commutativity-plugin-test/
└── silver-sif-extension/
目录介绍:
- silver/:包含 Viper 标准验证语言的定义。
- silicon/:包含 Viper 标准执行后端。
- commutativity-plugin/:包含 HyperViper 本身的完整实现。
- commutativity-plugin-test/:仅用于构建目的,不包含代码,依赖 Viper 和 HyperViper 插件。
- silver-sif-extension/:一个预先存在的开源实现,用于模块化产品程序。
2. 项目的启动文件介绍
HyperViper 项目的启动文件位于 commutativity-plugin-test/
目录下。要启动 HyperViper,请按照以下步骤操作:
-
设置环境变量:
export Z3_EXE=/path/to/z3/executable
-
编译 HyperViper:
cd commutativity-plugin-test sbt assembly
-
运行测试:
sbt test
-
验证单个文件:
./hyperviper.sh path/to/file.vpr
3. 项目的配置文件介绍
HyperViper 的配置文件主要涉及环境变量的设置,特别是 Z3_EXE
环境变量,用于指定 Z3 可执行文件的路径。此外,commutativity-plugin-test/
目录下的 build.sbt
文件可能包含项目的构建配置。
配置示例:
export Z3_EXE=/usr/local/bin/z3
构建配置文件 (build.sbt
):
// 示例 build.sbt 文件内容
name := "commutativity-plugin-test"
version := "0.1"
scalaVersion := "2.13.4"
libraryDependencies ++= Seq(
"org.viperproject" %% "viper" % "1.0.0",
"org.viperproject" %% "hyperviper" % "0.1"
)
以上是 HyperViper 项目的基本教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。
HyperViperToolkit for Hyper-V security research项目地址:https://gitcode.com/gh_mirrors/hy/HyperViper