Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
X86 在完整系统模拟(gem5)中运行任何脚本时出错_X86_Gem5 - Fatal编程技术网

X86 在完整系统模拟(gem5)中运行任何脚本时出错

X86 在完整系统模拟(gem5)中运行任何脚本时出错,x86,gem5,X86,Gem5,我在gem5全系统模拟中运行脚本时遇到问题 我是gem5新手,我遵循本教程: 我试图在完整的系统模拟中运行gem5,并在其参数中传递一个脚本。模拟正常启动,如果我不传递任何脚本参数,它就会工作。但是,每当我在参数中传递任何脚本时(在本例中为教程(test.rcS)中提供的同一个runscript),我都会得到以下错误: gem5 Simulator System. http://gem5.org gem5 is copyrighted software; use the --copyright

我在gem5全系统模拟中运行脚本时遇到问题

我是gem5新手,我遵循本教程:

我试图在完整的系统模拟中运行gem5,并在其参数中传递一个脚本。模拟正常启动,如果我不传递任何脚本参数,它就会工作。但是,每当我在参数中传递任何脚本时(在本例中为教程(test.rcS)中提供的同一个runscript),我都会得到以下错误:

gem5 Simulator System.  http://gem5.org
gem5 is copyrighted software; use the --copyright option for details.

gem5 compiled Sep 16 2019 12:12:46
gem5 started Oct 10 2019 17:17:06
gem5 executing on verites-desktop, pid 3543
command line: build/X86/gem5.opt configs/learning_gem5/part4/run.py --script test.rcS

Global frequency set at 1000000000000 ticks per second
warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (4096 Mbytes)
info: kernel located at: /home/taoliveira/Downloads/Gem5/gem5/configs/learning_gem5/part4/x86_64-vmlinux-2.6.22.9
system.pc.com_1.device: Listening for connections on port 3456
      0: rtc: Real-time clock set to Sun Jan  1 00:00:00 2012
0: system.remote_gdb: listening for remote gdb on port 7000
warn: Reading current count from inactive timer.
Running the simulation
info: Entering event queue @ 0.  Starting simulation...
warn: Don't know what interrupt to clear for console.
warn: x86 cpuid: unknown family 0x8086
warn: Tried to clear PCI interrupt 14
warn: Unknown mouse command 0xe1.
warn: instruction 'wbinvd' unimplemented
panic: could not open file test.rcS
Memory Usage: 3640440 KBytes
Program aborted at tick 5106342037509
--- BEGIN LIBC BACKTRACE ---
build/X86/gem5.opt(_Z15print_backtracev+0x2c)[0x558acb71ca8c]
build/X86/gem5.opt(_Z12abortHandleri+0x4a)[0x558acb72eada]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12890)[0x7f1d67f42890]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7f1d66750e97]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x141)[0x7f1d66752801]
build/X86/gem5.opt(+0x4fe31f)[0x558aca6f031f]
build/X86/gem5.opt(_ZN10PseudoInst8readfileEP13ThreadContextmmm+0x203)[0x558acb769ee3]
build/X86/gem5.opt(_ZNK10X86ISAInst10M5readfile7executeEP11ExecContextPN5Trace10InstRecordE+0x7b)[0x558acad9e4cb]
build/X86/gem5.opt(_ZN15AtomicSimpleCPU4tickEv+0x4da)[0x558acb7abd4a]
build/X86/gem5.opt(_ZN10EventQueue10serviceOneEv+0xd9)[0x558acb724c69]
build/X86/gem5.opt(_Z9doSimLoopP10EventQueue+0x87)[0x558acb745077]
build/X86/gem5.opt(_Z8simulatem+0xcba)[0x558acb7460ca]
build/X86/gem5.opt(+0x78f42e)[0x558aca98142e]
build/X86/gem5.opt(+0x5b177e)[0x558aca7a377e]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x5f82)[0x7f1d681fc522]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f1d6832ebf8]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x6364)[0x7f1d681fc904]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f1d6832ebf8]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCode+0x19)[0x7f1d681f6409]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x68a5)[0x7f1d681fce45]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f1d6832ebf8]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x6364)[0x7f1d681fc904]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f1d6832ebf8]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCode+0x19)[0x7f1d681f6409]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyRun_StringFlags+0x76)[0x7f1d682a66d6]
build/X86/gem5.opt(_Z6m5MainiPPc+0x83)[0x558acb72d6f3]
build/X86/gem5.opt(main+0x38)[0x558aca6ad308]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7f1d66733b97]
build/X86/gem5.opt(_start+0x2a)[0x558aca6d7b1a]
--- END LIBC BACKTRACE ---
Aborted (core dumped) 
我试着以完全相同的方式运行一个简单的mergesortc程序,但遇到了同样的问题。我应该如何解决此问题?
不知道它是否相关,但我使用的是Ubuntu 18.04。

我通过一些调试解决了我的问题。有些代码无法正常工作,总是在SysPaths.py中创建空路径。由于某些原因,我的代码中没有这一行:

filepath = os.path.join(self._subdir, filename)
另外,
paths
变量中指定的路径是错误的,因为我忘记了路径开头的反斜杠(“/”)。
谢谢你的帮助,西罗。

嗨,蒂亚戈,我还没有完成那个教程,但是你能试着调试一下吗,这应该很简单。尝试在相关Python代码中添加打印,或使用PDB进行步骤调试。我想test
test.rcS
存在吗?或者,这里还有同一回购协议中的se.py和裸金属。Hi Ciro。文件test.rcS存在,它与kernel、disk image和system.py位于同一个run.py文件夹中。但是由于我是Linux新手,也许我应该问:要创建一个.rcS文件,我可以打开文本编辑器,键入代码并将其保存为“name.rcS”吗?行吗?我现在无法使用gem5访问计算机,但该教程中的run.py文件和所有其他文件都与gem5一起提供。在run.py文件中,它选择参数脚本;在文件pseudo_inst.cc中,脚本被打开并检查是否正确读取,这就是我的问题所在。“我可以打开文本编辑器,键入代码并将其保存为“name.rcS”吗?它可以工作吗?”当然可以,为什么不可以?:-)您也可以从命令行使用
触摸
。一定要花些时间熟悉最基本的Linux命令行命令。谷歌搜索Stack Overflow和Askubuntu基本上可以回答所有问题;-)