首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在gem-5中编译和运行一个C可执行文件,它使用文本文件作为输入和输出,在gem5 SE模式下使用se.py?

如何在gem-5中编译和运行一个C可执行文件,它使用文本文件作为输入和输出,在gem5 SE模式下使用se.py?
EN

Stack Overflow用户
提问于 2019-06-07 02:49:25
回答 1查看 1.2K关注 0票数 2

我有一个C代码,它从两个输入文件中取值,计算乘法,并将时间写入另一个文本文件。首先,我用GCC编译并制作可执行文件,名为Method1_X86_BINARY_。

gcc十多倍量测.c decContext.c decDouble.c decQuad.c -o Method1_X86_BINARY_

该可执行文件正在工作。/Method1 1_X86_二进制_ file!现在,我想通过下面的命令使用gem5 SE模式编译

./build/X86/gem5.opt信托/示例/se.py -c -c

在此之后,我收到以下错误

GEM5模拟启动问题阅读inputA.txt文件退出@ tick 9053500,因为退出与上一个活动线程上下文模拟退出代码不是0!出口代码为1

Message GEM5模拟启动问题读取inputA.txt文件显示在my C代码中,如下所示:

代码语言:javascript
复制
>FILE *ptr_file_read, *ptr_file_readB,*ptr_file_write , *Mptr_file_write;
 char fileNameA [40] = "final_result_a.txt";
 char fileNameB [40] = "final_result_b.txt";
 printf("GEM5 SIMULATION START");
ptr_file_read = fopen(fileNameA, "r"); //Name of the input file
if (!ptr_file_read)
{
     printf("problem reading inputA.txt file");
      return 1;
 }

因此,message GEM5模拟启动表明,当消息问题发生时,读取inputA.txt文件表明问题发生在读取表单文本文件期间,可执行文件是可以执行的。

我的问题是,我如何能够运行的文件,在宝石-5模拟器。

在这里,我上传完整的项目,几乎没有描述在自述。github.com/riazcseiu/DecimalMultiplication.git

EN

回答 1

Stack Overflow用户

发布于 2019-10-14 07:13:20

一般编译和运行如:如何在gem5系统模拟模式下用se.py编译和运行可执行文件?所示

然后,我在gem5 211869e950f3cc3116655f06b1d46d3fa39fb3a(2019年10月)中测试它,打开和关闭或普通文件正常工作:文件可以从主机读取,并通常写入主机文件系统。

我已经用这个最小的C文件写/读示例测试过这个。

文件src/doc/se-files.txt记录了此特性的实现。

我相信gem5会特别处理一些特殊的Linux文件,例如在/proc/sys下,因为这些文件需要与gem5在SE中模拟的内核进行更复杂的交互。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56487389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档