全系统(full system)的模拟比较麻烦,需要下载和配置磁盘镜像。以下以X86系统为例
准备
首先新建一个文件夹用于存储disk image
mkdir full_system_images
cd full_system_images
下载image解压
下载X86的disk image, 并解压
wget http://www.m5sim.org/dist/current/x86/x86-system.tar.bz2
tar jxvf x86-system.tar.bz2
下载alpha对应的全系统文件
这是因为后面会用到里面解压出来的一个文件
wget http://www.m5sim.org/dist/current/m5_system_2.0b3.tar.bz2
tar jxvf m5_system_2.0b3.tar.bz2
转移文件
将alpha解压后disks目录下的linux-bigswap2.img放到x86-system解压后的disks目录下
编译x86架构
进入gem5目录下,编译X86架构
scons build/X86/gem5.opt
修改配置
进入gem5文件夹,修改两个配置文件:
SysPaths.py
和
Benckmarks.py
打开
SysPaths.py
配置disk image的完整路径(本文以
/home/full_system_images
为例):
vim ./configs/common/SysPaths.py
修改前:
path = [ '/dist/m5/system', '/n/poolfs/z/dist/m5/system' ]
修改后:
path = [ '/dist/m5/system', '/home/full_system_images' ]
打开
Benchmarks.py
,修改image文件名:
vim ./configs/common/Benchmarks.py
修改前:
elif buildEnv['TARGET_ISA'] == 'x86':
return env.get('LINUX_IMAGE', disk('x86root.img'))
修改后:
elif buildEnv['TARGET_ISA'] == 'x86':
return env.get('LINUX_IMAGE', disk('linux-x86.img'))
运行
输入如下命令:
./build/X86/gem5.opt ./configs/example/fs.py
连接
打开另一个终端,用于连接FS模拟的全系统。这里使用的是m5term,先编译安装这个工具,在gem5的目录下有
cd util/term/
make
sudo make install
用如下命令连接,注意3456是个端口,是在上图里出现的端口3456,默认情况下启动的第一个端口都是这个,再接着开启第二个就会是3457
sudo ./m5term 127.0.0.1 3456
连接完成
版权声明:本文为qq_17614297原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。