参考博客https://blog.csdn.net/u012822903/article/details/62217441

se模式需要注意,使用静态编译,单线程

step 1
新建一个自己的文档
比如说我就新建了/home/zwj/gem-code/hello文件夹
然后在文件夹中写自己想要测试的程序
vim hellozwj.c

#include <stdio.h>int main(){int x,y,count;x = 3; y = 4;count = x + y;printf("today, your lucky number is %d\n",count);
}

vim tips: vim是按i键进入插入编辑模式,按esc退出编辑模式,输入:wq保存并退出,输入:q不保存退出

step 2
静态编译自己的.c文件
gcc -o hellozwj hellozwj.c -static

  • -o为指定输出文件的名字,如果不带-o,命令则变为gcc hellozwj.c,默认会生成名为a.out的可执行文件
  • -static表示静态编译,如果不使用静态编译,那么gcc就会优先使用动态库进行编译,动态编译则会动态链接使用的库文件
  • 动态编译和静态编译的区别:动态在程序运行时被链接,静态库直接在编译时所用到的库文件链接进了可执行文件,所以静态编译出来的复杂程序会大很多

step 3
测试自己的.c文件
输入
sudo build/X86/gem5.opt configs/example/se.py -c /home/zwj/gem5-code/hello/hellozwj
不知道自己程序放到哪里的,可以使用pwd命令查看当前路径
输出结果

gem5 Simulator System.  http://gem5.org
gem5 is copyrighted software; use the --copyright option for details.gem5 compiled May 18 2021 21:53:40
gem5 started May 26 2021 18:07:27
gem5 executing on ubuntu, pid 5961
command line: build/X86/gem5.opt configs/example/se.py -c /home/zwj/gem5-code/hello/hellozwjGlobal frequency set at 1000000000000 ticks per second
warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (512 Mbytes)
0: system.remote_gdb: listening for remote gdb on port 7000
**** REAL SIMULATION ****
info: Entering event queue @ 0.  Starting simulation...
warn: readlink() called on '/proc/self/exe' may yield unexpected results in various settings.Returning '/home/zwj/gem5-code/hello/hellozwj'
info: Increasing stack size by one page.
warn: ignoring syscall access(...)
today, your lucky number is 7
Exiting @ tick 10442000 because exiting with last active thread context

测试完成

Gem5 学习 3 - 用SE模式测试自己的程序相关推荐

  1. gem5下用se模式运行自己的测试程序

    接上面的讲讲,se模式下如何运行自己的测试程序,而不是gem5自带的测试程序.看到我这部分合集,应该就可以在gem5的入门处少走很多很多弯路.我就是走了很多弯路,才摸索出来.... 比如说,我现在写了 ...

  2. 组合模式测试组合模式(Composite Pattern)

    改章节是一篇关于组合模式测试的帖子 像一个树形结构一样使用基本的对象和自己本身构建一个复杂的对象,称为组合模式. 这类模式很轻易学习以及应用到某个系统中.组合模式属于结构设计模式之一,比拟常用.经典的 ...

  3. 《Go语言圣经》学习笔记 第十一章 测试

    <Go语言圣经>学习笔记 第十一章 测试 目录 go test 测试函数 测试覆盖率 基准测试 剖析 示例函数 注:学习<Go语言圣经>笔记,PDF点击下载,建议看书. Go语 ...

  4. Gem5在全系统(FS)模式下运行自己的测试程序

    上一篇文章讲了怎么用Gem5构建和启动FS模式,这一次想看看怎么在模拟的环境中测试自己的程序. 我这里还是用的上次提到的X86的环境,整体过程是以下几个步骤: 1.挂载镜像 ypf@ypf-PC:~/ ...

  5. 设计模式学习笔记——解释器(Interpreter)模式

    设计模式学习笔记--解释器(Interpreter)模式 @(设计模式)[设计模式, 解释器模式, Interpreter] 设计模式学习笔记解释器Interpreter模式 基本介绍 解释器案例 类 ...

  6. 设计模式学习笔记——命令(Command)模式

    设计模式学习笔记--命令(Command)模式 @(设计模式)[设计模式, 命令模式, command] 设计模式学习笔记命令Command模式 基本介绍 命令案例 类图 实现代码 Command接口 ...

  7. 设计模式学习笔记——代理(Proxy)模式

    设计模式学习笔记--代理(Proxy)模式 @(设计模式)[设计模式, 代理模式, proxy] 设计模式学习笔记代理Proxy模式 基本介绍 代理案例 类图 实现代码 Printable接口 Pri ...

  8. 设计模式学习笔记——状态(State)模式框架

    设计模式学习笔记--状态(State)模式框架 @(设计模式)[设计模式, 状态模式, State] 设计模式学习笔记状态State模式框架 基本介绍 状态案例 类图 实现代码 State接口 Day ...

  9. 设计模式学习笔记——备忘录(Memento)模式

    设计模式学习笔记--备忘录(Memento)模式 @(设计模式)[设计模式, 备忘录模式, memento] 设计模式学习笔记备忘录Memento模式 基本介绍 备忘录案例 类图 实现代码 Memen ...

最新文章

  1. 无处不在的 AWS 云计算
  2. linux查找maven安装目录_Linux 安装 maven
  3. 好好学python · 内置函数(range(),zip(),sorted(),map(),reduce(),filter())
  4. vba cad 获取宏的路径_VBA批量创建文件目录及链接,建议收藏备用
  5. java ee的小程序_Java EE 8 –为更多设备提供更多应用程序
  6. 第四十六期:最近程序员频繁被抓,如何避免面向监狱编程?!
  7. 约数国王c语言,求最大公约数问题
  8. LiveNVR视频流拉转接入传统海康大华宇视安防摄像机如何获取通道视频直播流地址 RTSP/WebRTC/RTMP/HLS/HTTP-FLV/WS-FLV
  9. 【模拟考勤打卡程序vim报错分享】
  10. Type-C接口技术(一)
  11. 两位顶级社会工程学大师:凯文-米特尼克和 弗兰克-阿巴内尔
  12. 让制作APP变成搭积木
  13. java-php-python-ssm特困生服务系统计算机毕业设计
  14. 微软收购以色列触控笔技术
  15. 煮熟的鸡蛋这么用竟可治病
  16. 20单元——学习正解表达式及学习实践 Shell script
  17. LEARN_前端进阶_深浅拷贝原理
  18. 仓库管理系统(简易版)
  19. 解决方法:操作无法完成。键入的打印机名不正确,或者指定的打印机没有连接到服务器上。...
  20. FTp上传文件,创建文件夹

热门文章

  1. 织梦CMS5.7最新织梦有效防挂马清马,织梦漏洞修补全!2019-8-30更新
  2. 游戏引擎的动画系统及骨骼动画原理
  3. blockly games玩后有感
  4. PyOpenGL网络游戏应用
  5. Mac生成ssh key
  6. 点估计和区间估计——统计学概念
  7. 006-Sigle-基于blockstack去中心化博客
  8. JAVA入门[16]-form表单,上传文件
  9. 本地搭建 Overleaf
  10. 新媒体运营能做到主管级别吗