下面详细介绍在Ubuntu14.04 32位系统中安装DiskSim4.0
Ubuntu 14 32位系统。注意:当前DiskSim目前还没有64位的,所以为了避免复杂的操作,本文只介绍在32位操作系统下安装。
DiskSim 4.0:https://www.pdl.cmu.edu/DiskSim/index.shtml 如下图所示:
SSD Extension for DiskSim Simulation Environmen:https://www.microsoft.com/en-us/download/confirmation.aspx?id=52332
下载完毕后放在同一路径下,应该有disksim-4.0-with-dixtrac.tar.gz 、 ssd-add-on.zip 两个压缩包。
sudo apt install bison flex
以上源代码包下载完毕后,在以上两个压缩包所在的路径下进行解压。
tar xfz disksim-4.0-with-dixtrac.tar.gz
cd disksim-4.0
unzip ../ssd-add-on.zip
解压后如下图所示:
在disksim-4.0目录下,执行下面的命令:
patch -p1 < ssdmodel/ssd-patch
1.(当前在disksim-4.0路径下)修改memsmodel/Makefile(推荐使用gedit打开文本编辑器修改)
gedit memsmodel/Makefile
第81行,将$(LDFLAGS)放到最后,如下图所示:
2. 修改dixtrac/Makefile 的 60行 LDFLAGS部分如下所示。
gedit dixtrac/Makefile
……
LDFLAGS = -L. -l$(LIBNAME) -ldxtools \
$(LIBDISKSIM_LDFLAGS) \
$(MEMSMODEL_LDFLAGS) \
$(DISKMODEL_LDFLAGS) \
$(SSDMODEL_LDFLAGS) \
$(LIBPARAM_LDFLAGS) \
$(LIBDDBG_LDFLAGS) \
$(ST_LDFLAGS) -lm
3.在dixtrac/.paths文件末尾添加如下语句。
# path to ssdmodel
export SSDMODEL_PREFIX=../ssdmodel
export SSDMODEL_INCL=$(SSDMODEL_PREFIX)/include
export SSDMODEL_CFLAGS=-I$(SSDMODEL_INCL)
export SSDMODEL_LDPATH=$(SSDMODEL_PREFIX)/lib
export SSDMODEL_LDFLAGS=-L$(SSDMODEL_LDPATH) -lssdmodel
4.修改src/Makefile,第37行,将-lm放到最后,如下图所示
在disksim-4.0路径下,执行make语句
make
会出现很多内容,但是如果没有error就说明编译成功。make的最后几行如下图所示:
(1)验证DiskSim:当前在disksim-4.0路径下,执行下列语句:
cd valid
./runvalid
正常情况下应该如下图所示:
可以看到runvalid程序里面其实就是一系列DiskSim命令语句,如下图所示:
(2)验证SSD extension:当前在disksim-4.0路径下,先为ssdmodel/valid/runvalid添加可执行权限,再运行runvalid程序。
chmod a+x ./ssdmodel/valid/runvalid
cd ./ssdmodel/valid
./runvalid
运行结果应如下所示:
本文参考以下两篇博客:感谢大佬的分享
[1] http://cighao.com/2015/09/09/disksim-with-ssdmodel-source-analysis-001-how-to-install/
[2] https://blog.csdn.net/Alieon/article/details/111327633
安装过程中我也踩了一些坑,比如系统不是32位、编译出错等,这都是难免会遇到的。本人建议大家在虚拟机上进行安装,这样的话即使出错也可以从头再来,耐心、仔细一些一定会攻克这些问题的!最近本人也是刚入坑DiskSim,经验不足,欢迎各位批评、交流、分享经验!!