[关闭]
@dyk 2016-01-29T08:05:30.000000Z 字数 2291 阅读 421

RollBack Workspace

系统设计框架

本文档主要介绍系统的模块,与功能。目前许多的功能仍然在测试当中。
Xen的通用介绍

Mini-OS and Stubdom

抗回滚监控域

环境配置 通用性

目前的构想是用一个mini kernel在Xen上面启动一个虚拟域,这个虚拟域只进行single任务,既安全监控程序。

目前mini-os所支持的库仍然较少,polarssl gmp tpmemu libxc xenstore。
实验所用的LibVMI需要使用Gnome lib,Glib需要使用pthread库,然而这个库mini-os是不支持的,无法安装。

在xen-devel mail-list[1]当中得到答案:
- 使用rump kernels[2]进行替换mini-os
- 由于libVMI其实只是使用Glist部分也不需要其他的库,将GLib进行简化编译然后添加库。
- 对mini-os的构建进行优化,使用GNU libc库替换原有的redhat newlibc 库,加入POSIX pthread头文件。

由于系统是要做到支持通用的解决方案,如果只是采用mini kernel那么很难做到通用
采用rump kernel当作mini-os进行处理,简化内核,提供足够的底层支撑环境。

快照与回滚

目前的mini-os这一系列的配置并不支持suspend操作,由于回滚的前提是拥有快照,无法挂起也无法拍摄快照。

任务

mini-os无法进行suspend,可能是由于mini-os内部没有实现suspend相关的系统调用或者是超级调用。这一点需要对xl库的实现过程进行了解后才能进行相应的代码修改。

  1. ifeq ($(CONFIG_LIBXC_MINIOS),y)
  2. # Save/restore of a domain is currently incompatible with a stubdom environment
  3. override CONFIG_MIGRATE := n
  4. endif

LibVMI on Mini-os & Recording

由于系统设计的时候回滚之后的恢复日志记录是由LibVMI进行完成的。
由于mini-os内核较小,内核变量也都能够从源码获得。

抗回滚数据域

本模块的设计初衷是为了对无法被libvmi监控到的数据流进行监控,以及提供类似版本控制之类的功能。并且提供对敏感数据的处理。

恢复 Replay

这一部分主要是为了弥补丢失的状态以及数据。这一部分

对于rvTPM的扩展

考虑原有的rvTPM是否需要进行扩充,满足现有的使用需求。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注