1. 概述

checkpoint

2. 部署过程

2.1 源码下载

官方网站:http://crd.lbl.gov/departments/computer-science/CLaSS/research/BLCR/

下载最新版本:blcr-0.8.5.tar.gz

2.2 解压安装

执行命令:tar -zxvf blcr-0.8.5.tar.gz -C /tmp

进入到/tmp/blcr-0.8.5,执行命令:./configure --prefix=/usr/local/globle/softs/blcr/0.8.5/

【报错信息】:configure: error: Directory /boot/ does not appear to contain a Linux kernel build

【原因分析】:由于是在虚拟机console编译安装,console并没有安装内核软件包,因此会造成上面的报错。

【解决方式】:执行命令:yum -y install kernel*,安装完成之后,继续编译安装的操作。

2.3 添加库环境

将安装在全局文件系统上的blcr库目录,/usr/local/globle/softs/blcr/0.8.5/lib,添加至系统库环境中。

执行命令:echo "/usr/local/globle/softs/blcr/0.8.5/lib" > /etc/ld.so.conf.d/blcr.conf

然后执行命令:ldconfig加载生效

2.4 插入内核模块

执行命令:find / -name blcr_imports.ko,查看内核模块放置的位置为:

/usr/local/globle/softs/blcr/0.8.5/lib/blcr/2.6.32-431.el6.x86_64/blcr_imports.ko

执行命令:

insmod /usr/local/globle/softs/blcr/0.8.5/lib/blcr/2.6.32-431.el6.x86_64/blcr_imports.ko

insmod /usr/local/globle/softs/blcr/0.8.5/lib/blcr/2.6.32-431.el6.x86_64/blcr.ko

插入内核模块

3. 测试

3.1 创建测试程序

创建testblcr.c,内容如下:

#include <stdio.h>
int main()
{
int number = 0,i;
printf("start process\n");
for (i = 0; i < 100; i++) {
printf("%d\n", number);
sleep(1);
number++;
}
return 0;
}

执行命令:gcc testblcr.c -o testblcr,生成可执行文件testblcr

3.2 功能测试

执行命令:cr_run ./testblcr

注:若上述操作未将blcrt的lib目录添加至系统环境中,并且ldconfig加载,则测试会报错:ERROR: ld.so: object 'libcr_run.so.0' from LD_PRELOAD cannot be preloaded: ignored

然后通过ps -ef | grep cr_run,获取到该程序的pid;然后重开新窗口,执行命令:cr_checkpoint pid,该命令会在当前目录下,生成程序的快照文件。

杀掉查到的pid,在新窗口执行cr_restart context.pid,即可使程序继续运行

4. 参考博客

参考博客地址:https://www.cnblogs.com/Blue-Moon/p/3865737.html

checkpoint-BLCR部署和测试(源码)的更多相关文章

  1. Slurm任务调度系统部署和测试(源码)(1)

    1. 概述1.1 节点信息2. 节点准备3. 部署NTP服务器4. 部署LDAP服务器5. 部署Munge认证服务6. 部署Mysql数据库服务7. 部署slurm7.1 创建slurm用户7.2 挂 ...

  2. Linux下使用FreeTDS访问MS SQL Server 2005数据库(包含C测试源码)

    Linux下使用FreeTDS访问MS SQL Server 2005数据库(包含C测试源码) http://blog.csdn.net/helonsy/article/details/7207497 ...

  3. IO系列测试源码

    //IO系列测试源码(需要自取) using System; using System.CodeDom; using System.Collections.Generic; using System. ...

  4. 18个示例详解 Spring 事务传播机制(附测试源码)

    什么是事务传播机制 事务的传播机制,顾名思义就是多个事务方法之间调用,事务如何在这些方法之间传播. 举个例子,方法 A 是一个事务的方法,方法 A 执行的时候调用了方法 B,此时方法 B 有无事务以及 ...

  5. 使用Jenkins+Pipline 持构建自动化部署之安卓源码打包、测试、邮件通知

    一.引言 Jenkins 2.x的精髓是Pipeline as Code,那为什么要用Pipeline呢?jenkins1.0也能实现自动化构建,但Pipeline能够将以前project中的配置信息 ...

  6. 使用Jenkins+Blue Ocean 持构建自动化部署之安卓源码打包、测试、邮件通知

    什么是BlueOcean? BlueOcean重新考虑了Jenkins的用户体验.BlueOcean由Jenkins Pipeline设计,但仍然兼容自由式工作,减少了团队成员的混乱,增加了清晰度. ...

  7. Jenkins插件及 测试源码

    Jenkins 插件: https://updates.jenkins-ci.org/download/plugins/ 小米的一份android源码,测试工具,用于抢红包: https://gith ...

  8. 使用sqlserver搭建高可用双机热备的Quartz集群部署【附源码】

    一般拿Timer和Quartz相比较的,简直就是对Quartz的侮辱,两者的功能根本就不在一个层级上,如本篇介绍的Quartz强大的序列化机制,可以序列到 sqlserver,mysql,当然还可以在 ...

  9. 使用Salt-ssh部署Salt-minion之源码安装(二)

    二.源码安装篇 使用salt-ssh功能要求客户端系统python版本2.6+ 1.salt-minion端环境: 系统:SUSE SP3 64bit python版本:2.6.6 RPM包:pcre ...

随机推荐

  1. 洗礼灵魂,修炼python(33)--面向对象编程(3)—特殊类方法__init__,公有属性,私有属性

    在上一篇博文里,传入参数时,是在实例化对象后且在调用方法时才传入参数,感觉是不是有点繁琐对吧?可以在实例化的时候就传入参数吗?可以的,这就是本篇博文的要讲到的构造器——__init__(两边双下划线) ...

  2. [VMWARE] [CENTOS7] 安装VMware-Tools

    安装VM-Tools 先使用yum install 安装Perl与net-tools# sudo yum install net-tools# sudo yum install perl 加载CDRO ...

  3. 01LaTeX学习系列之---TeX的介绍与认识

    目录 01TeX的介绍与认识 目录 前言 (一)TeX 的宣传 TeX - Beauty and Fun 1. TeX 是什么? 2. TeX 是哪家公司生产的? 3. 我们今天主角的名字怎么念啊?& ...

  4. ajaxForm和ajaxSubmit 粘贴就可用

    <!--To change this template, choose Tools | Templatesand open the template in the editor.-->&l ...

  5. C++11多线程のfuture,promise,package_task

    一.c++11中可以在调用进程中获取被调进程中的结果,具体用法如下 // threadTest.cpp: 定义控制台应用程序的入口点. // #include "stdafx.h" ...

  6. python第四十九课——对象序列化与反序列化

    person.py class Person: def __init__(self,*args,**kwargs): print('我是Person类的构造...') # self.name=name ...

  7. 使用OPEN XML SDK 读取EXCEL中的超链接Hyperlink

    使用OPEN XML SDK 读取EXCEL中的超链接Hyperlink 原理 先创建一个包括全部EXCEL单元格中超链接Hyperlink数据的表,再定位单元格通过列头(如A1,B1)获取超链接信息 ...

  8. [TJOI2018]教科书般的亵渎

    嘟嘟嘟 题面挺迷的,拿第一个样例说一下: 放第一次亵渎,对答案产生了\(\sum_{i = 1} ^ {10} i ^ {m + 1} - 5 ^ {m + 1}\)的贡献,第二次亵渎产生了\(\su ...

  9. IDEA多线程下多个线程切换断点运行调试的技巧

    多线程调试设置可以参考:http://www.cnblogs.com/leodaxin/p/7710630.html 1 断点设置如图: 2 测试代码,然后进行debug package com.da ...

  10. go标准库的学习-crypto/sha256

    参考:https://studygolang.com/pkgdoc 导入方式: import "crypto/sha256" sha256包实现了SHA224和SHA256哈希算法 ...