checkpointhtml
官方網站:http://crd.lbl.gov/departments/computer-science/CLaSS/research/BLCR/
下載最新版本:blcr-0.8.5.tar.gzapp
執行命令: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*
,安裝完成以後,繼續編譯安裝的操做。測試
將安裝在全局文件系統上的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加載生效網站
執行命令:find / -name blcr_imports.ko
,查看內核模塊放置的位置爲:ui
/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
插入內核模塊rest
建立testblcr.c,內容以下:code
#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
,生成可執行文件testblcrhtm
執行命令:cr_run ./testblcr
blog
注:若上述操做未將blcrt的lib目錄添加至系統環境中,而且ldconfig加載,則測試會報錯:ERROR: ld.so: object 'libcr_run.so.0' from LD_PRELOAD cannot be preloaded: ignoredci
而後經過ps -ef | grep cr_run
,獲取到該程序的pid;而後重開新窗口,執行命令:cr_checkpoint pid
,該命令會在當前目錄下,生成程序的快照文件。
殺掉查到的pid,在新窗口執行cr_restart context.pid
,便可使程序繼續運行