前面已经讲了gem5的SE(系统调用)模式,FS模式虽然慢了很多,但是功能强大些。下面开始介绍如何把环境弄好,以X86架构下的FS模式为例,在Ubuntu14.04 LTS环境下。
建议全程用root身份~
1.进入gem5目录下,编译X86架构
root@ubuntu14:/home/zzh/gem5# scons build/X86/gem5.opt
2.下载X86架构对应的全系统文件,也就是disk
wget http://www.m5sim.org/dist/current/x86/x86-system.tar.bz2
3.下载alpha对应的全系统文件,这是因为后面会用到里面解压出来的一个文件。
wget http://www.m5sim.org/dist/current/m5_system_2.0b3.tar.bz2
4.gem5目录下新建个文件夹fs-image,进入该目录,解压x86-system.tar.gz
root@ubuntu14:/home/zzh/gem5# mkdir fs-image
root@ubuntu14:/home/zzh/gem5# cd fs-image
root@ubuntu14:/home/zzh/gem5/fs-image# tar -xjf x86-system.tar.bz2
5.我第三步下载的alpha对应的全系统文件——m5_system_2.0b3放在Download目录下,将其解压,并将disks目录下的linux-bigswap2.img放到x86-system解压后的disks目录下。
root@ubuntu14:/home/zzh/gem5/fs-image# cp /home/zzh/Downloads/m5_system_2.0b3/disks/linux-bigswap2.img disks/
6.修改.bashrc文件,添加下面的环境变量
root@ubuntu14:~# ls -a
. .. .bash_history .bashrc .profile .viminfo
root@ubuntu14:~# vim .bashrc
export M5_PATH=$M5_PATH:/home/zzh/gem5/fs-image/
7.使环境变量生效
root@ubuntu14:~# source .bashrc
8.进入gem5目录下,启动X86架构的FS模式
root@ubuntu14:~# cd /home/zzh/gem5
root@ubuntu14:/home/zzh/gem5# build/X86/gem5.opt configs/example/fs.py
9.报了下面的错误:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/home/zzh/gem5/src/python/m5/main.py", line 400, in main
exec filecode in scope
File "configs/example/fs.py", line 341, in <module>
test_sys = build_test_system(np)
File "configs/example/fs.py", line 96, in build_test_system
options.ruby, cmdline=cmdline)
File "/home/zzh/gem5/configs/common/FSConfig.py", line 620, in makeLinuxX86System
makeX86System(mem_mode, numCPUs, mdesc, self, Ruby)
File "/home/zzh/gem5/configs/common/FSConfig.py", line 545, in makeX86System
disk0.childImage(mdesc.disk())
File "/home/zzh/gem5/configs/common/Benchmarks.py", line 60, in disk
return env.get('LINUX_IMAGE', disk('x86root.img'))
File "/home/zzh/gem5/configs/common/SysPaths.py", line 44, in disk
system()
File "/home/zzh/gem5/configs/common/SysPaths.py", line 69, in system
raise IOError, "Can't find a path to system files."
IOError: Can't find a path to system files.
错误:Can’t find a path to system files.
解决办法:修改gem5目录下的configs/common/SysPath.py,将目录改成你现在的目录