Gem5 for Ubuntu20.04

news2025/7/17 11:31:05

一、安装Ubuntu

 

参考教程:史上最全最新Ubuntu20.04安装教程(图文) - 知乎 (zhihu.com)

1. 查看Ubuntu版本号命令:

lsb_release -a

        显示如下:

Distributor ID:    Ubuntu     //类别是ubuntu
Description:    Ubuntu 22.04.1 LTS  //22年4月发布的稳定版本,LTS是Long Term  Support:长时间支持版本,支持周期长达三至五年
Release:    22.04     //发行日期或者是发行版本号
Codename:    jammy   //ubuntu的代号名称

2. 如何实现虚拟机和本机的直接复制黏贴:

sudo apt-get autoremove open-vm-tools
sudo apt-get install open-vm-tools
sudo apt-get install open-vm-tools-desktop

3. 如何设置字体和分辨率:

鼠标右键选择显示display settings,再根据本机分辨率自行调整

 4.如何更换镜像源:仅适用于Ubuntu20.04

(22条消息) ubuntu20.04更换清华源_PisaYu的博客-CSDN博客_ubuntu20.04换清华源


二、搭建gem5环境

基本配置:Ubuntu20.04    2GB内存   20G硬盘   VMware15.5

1.安装依赖软件。使用官方指南的命令行一站式配置gem5所需要的环境:

sudo apt install build-essential git m4 scons zlib1g zlib1g-dev \
    libprotobuf-dev protobuf-compiler libprotoc-dev libgoogle-perftools-dev \
    python3-dev python-is-python3 libboost-all-dev pkg-config

2.获取源码。克隆gem5代码仓库,如果直接使用官网的方法,那就会从GitHub下载,下载速度捉急,这里建议改用Gitee下载:

git clone https://gitee.com/koverlu/gem5.git

从gitee中获取的源码和gem5官方代码库的最新版本是一致的。若想使用以前的版本可以通过git进行版本回调。

3.设置swap交换区。Swap分区是什么?Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。Linux Swap交换分区设置教程:关闭分区、创建分区文件、设置开机启动等 - VPS GO

fallocate:fallocate失败:文本文件在Ubuntu 17.04中忙吗? | 码农俱乐部 - Golang中国 - Go语言中文社区 (mlog.club)

dd if=/dev/zero of=/var/swapfile bs=1M count=4096  //bs*count是文件大下,此命令会创建一个4G的文件

4.编译Gem5。仓库克隆完之后家目录下应该会多一个gem5目录,进入gem5目录,然后按照官网的指示编译X86内核(本次实验用X86内核,如果有需要,也可以使用别的,具体需要看官网)

cd gem5   //切换到克隆下来的gem5源码目录
scons build/X86/gem5.opt -j N

其中X86可以替换为thumb、arm、sparc、arm64、riscv,j表示开启多线程,N为线程数,一般等于核心数+1,编译过程用时可能较长两三个小时,需要耐心等待。出现如下信息表示编译正常结束:

到此为止,gem5的环境和实验用的CPU内核就全部准备好了!接下来可以按照官网指南搭建自己的脚本并尝试运行。

5.测试

./build/X86/gem5.opt ./configs/example/se.py -c ./tests/test-progs/hello/bin/x86/linux/hello

出现如下结果表示正确:


参考链接:

(22条消息) Linux:安装Debian最新10.x操作系统(超详细)_HowieXue的博客-CSDN博客

史上最全最新Ubuntu20.04安装教程(图文) - 知乎 (zhihu.com)

gem5学习笔记一:模拟器安装与使用 (qq.com)

(22条消息) Ubuntu 20.04 LTS 安装gem5_OlivePlum的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/18510.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode力扣刷题——指针三剑客之二:树

树 一、数据结构介绍 作为(单)链表的升级版,我们通常接触的树都是二叉树(binary tree),即每个节点最多有 两个子节点;且除非题目说明,默认树中不存在循环结构。LeetCode 默认的树表示…

树的孩子兄弟链存储表示创建、遍历等算法

【实验目的】 1. 掌握树的孩子兄弟链存储表示。 2. 掌握树的创建、遍历等算法。 【问题描述】 树的创建及其操作。 【基本要求】 1. 创建树的孩子兄弟链式存储表示。假设以二元组(F,C)的形式输入一颗树的诸边,其中F表示双亲结点标识,C表示孩子结点…

python的opencv操作记录(九)——图像清晰度计算

文章目录图像清晰度计算的一般思路图像梯度图像梯度绝对值与梯度角度基于梯度的方式计算梯度算子1——Sobel算子计算梯度算子2——Laplacian算子梯度统计评分平均梯度梯度总和Demo图像清晰度计算的一般思路 定义图像清晰度是一个比较定制化,或者说比较偏业务属性的…

MySql面试

0. InnoDB与MyISAM的区别 1)InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提 交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事务&…

【Vue3+TS】Axios拦截器封装及跨域 [cors] 解决方案

【Vue3TS】Axios拦截器封装及跨域 [cors] 解决方案简述封装过程文件路径拦截器封装 —— Interceptor.tsAPI请求管理前端跨域的解决方案后端跨域的解决方案效果结语简述 我的项目采用 Vue3TypeScriptViteElement Plus 的组合,这个组合也是Vue版本退出3.x后官方推荐版…

记一次服务宕机、优化全流程(以后也可以装X了)

视频地址: https://www.bilibili.com/video/BV1924y1y7jN 221115上午10点的时候客户反应进入小程序慢,打开监控发现服务pv已经超过了历史之最(印象中最高的是100w),这次到了400w。原因是因为推广了一个发红包的活动。 …

Java练习题第二十七期:幸运的袋子

作者:有只小猪飞走啦 博客地址:文章目录前言一,题目二,解析三,代码前言 本博客是小博主在做Java算法题的过程中一些觉得可以分享的题目,希望对你们有帮助,如果哪里写错了或者有更好的解法&…

详解Unity中的Nav Mesh新特性|导航寻路系统 (一)

前言 之前我们讲解过Unity的Nav Mesh系统,其中提到过这个新版的Nav Mesh,它解决现有Nav Mesh的几个缺陷,比如无法动态烘焙,无法按照Agent的半径和高度适当的判断可行路径。现在新版Nav Mesh可以彻底解决这个问题!某种…

实验送样、数据分析样品、组名命名规范

俗话说巧妇难为无米之炊,而样品就是“米”,没有样品,就无法开展实验,无法获得数据,无法毕业,无法发文章。鉴于样品的重要性,非常有必要对样品进行详细且规范的记录,方便他人也方便自…

Java 线上机器 CPU 100 的一次排查过程

文章目录1. 问题发生2. 数据库连接关闭问题排查3. 问题的进一步排查4. 解决方法1. 问题发生 日常敲代码突然收到生产环境异常告警,线上有一台机器 CPU 使用率飙升到 100 触发扩容,工作群里一下子鸡飞狗跳。 出现问题,首先当然是查看监控和日…

在群晖NAS上搭建导航页_通过Web Station搭建

一、业务需求 1.1、需求说明 我们在使用群晖NAS的过程中,随着时间的推移会安装各种各样的软件内容和管理工具,而这些内容又都是一些网页界面(特别是一些在Docker中搭建的工具)时间久了我们也记不住那么多工具的Web界面地址&#…

激活Windows时出现错误代码0xC004C003怎么办?

Windows是我们最常见的电脑操作系统,那么如果我们在尝试激活Windows时出现错误代码0xC004C003,应该如何解决? 什么是Windows激活错误0xC004C003,出现该错误的原因是什么? Windows操作系统为了抑制盗版软件&#xff0c…

3D建模就业前景如何?加班多吗?值不值得入行

加班其实都还好🤔,因为这个岗位是按照项目进度考核(算钱)的,老手做一个模型要5,6个小时,新手可能需要10个小时,新人刚入行,做东西效率跟不上😰需要加班来弥补是肯定有的事…

SpringMVC-整合详解

SpringMVC-整合详解 MVC 什么是MVC? 它是一种开发模式,它是模型视图控制器的简称。所有的web应用都是基于MVC开发的 M: 模型层,它是模型视图控制器的简称。所有的web应用都是基于MVC开发 V: 视图层,html、javascript、vue等都是视图层,用…

高校实验室设备管理系统设计与实现-计算机毕业设计源码+LW文档

数据库代码: /* Navicat MySQL Data Transfer Source Server : mysql5 Source Server Version : 50562 Source Host : localhost:3306 Source Database : ssmgxsyssbglxthsg3511cg ​ Target Server Type : MYSQL Target Server Versio…

Linux磁盘分区和管理

文章目录一 添加硬盘,创建Linux分区1.首先准备一块新的硬盘2.检查系统是否识别了硬盘3.对磁盘进行分区3-1 创建MBR磁盘分区3-2 创建文件系统3-3 挂载文件系统二 创建交换空间2-1 创建分区2-2 设置分区类型2-3 格式化交换空间2-4 激活交换空间三 删除磁盘的分区3-1 备…

【GPU】Nvidia CUDA 编程高级教程——利用蒙特卡罗法求解近似值(CUDA-Aware MPI)

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

11.24直播预告 | AIGC,看热闹不如看门道

如果把AI比作既富含能源,又无限神秘的海域,那么AIGC这条近半年内流经学术界和创投圈的支流,也无疑既带来了无数机遇,又蕴藏未知风险。 几天前,将门-TechBeat社区的专题(《AIGC的八大前沿创新》)…

Allegro基本规则设置指导书

Allegro基本规则设置指导书 下面介绍基本规则设置指导书之Analysis Modes 点击set-up-constrains-Modes 调出Analysis Modes,这个是所有DRC的总开关 下面介绍常用的一些开关设置 Design Options (Soldermask) 从上往下 阻焊到阻焊的间距 阻焊到pad和走线间距 阻焊到shape…

leecode #加一#二进制求和

题目描述: 给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 分析:对数…