news 2026/6/25 2:10:17

【linux期末大作业】在Ubuntu22.04上通过XQUME安装RISC-V架构的linux系统并写hello world进行测试

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【linux期末大作业】在Ubuntu22.04上通过XQUME安装RISC-V架构的linux系统并写hello world进行测试

这里记录一次linux期末实验作业的过程:

实验作业要求如下:
1.选择一个嵌入式CPU的模拟器下载并安装。推荐但不限于以下几个模拟器:
GEM5
QEMU
Spike
Sail
在该模拟器中运行RISCV(从零开始手写一个RISCV模拟器也可以)或LA64(Loongarch)或其他嵌入式cpu。

2.选择目标指令集架构:
RISCV(RV32 / RV64)
LA64(LoongArch 64 位)
或其他你感兴趣且有工具链支持的嵌入式架构。
3.在宿主机上安装所需软件环境:
对应架构的交叉编译工具链(如 riscv64-linux-gnu-gcc 等);
源码管理与构建工具(git、make等);
4.在模拟器上启动 Linux 内核
观察并记录启动日志。
若启动失败,进行排错:
5.编写并运行 “Hello World” 程序
在宿主机上编写一个简单的 C 语言 “Hello World” 程序
使用交叉编译工具链,为目标架构编译该程序:
在模拟器中启动 Linux,登录到 shell 或进入命令行环境,执行该 “Hello World” 程序

我选择的是,在虚拟机的Ubuntu22.04上通过XQUME安装RISC-V架构的linux系统并写helloworld进行测试;

最终效果图如下所示:

文章目录

      • 步骤0:准备环境
      • 步骤 1:选择并安装模拟器
        • 选择:QEMU
      • 步骤 2:选择目标架构
        • 选择:RISC-V 64位 (RV64)
      • 步骤 3:获取并编译 Linux 内核
      • 步骤 4:制作根文件系统(rootfs)
      • 步骤 5:在 QEMU 中启动 Linux
      • 步骤 6:编写并运行 Hello World 程序

步骤0:准备环境

在虚拟机的ubuntu22.04上进行以下配置:

  1. 更新系统
    sudo apt update
    sudo apt upgrade -y

  2. 安装必要的基础工具:编译和运行模拟器所需的基础开发工具

sudoaptinstall-y\build-essential\git\wget\curl\vim
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/25 1:33:27

案例解读 | 运维驱动业务,护航中国银行数字化转型

PART 01 项目背景 01客户简介 案例客户是中国银行某市分行。 02痛点分析 在金融行业数字化转型加速推进的背景下,该银行客户的数据中心系统架构日益复杂,业务多样性与服务连续性要求不断提升,亟需一套高效、智能化运维监控平台,以…

作者头像 李华
网站建设 2026/6/24 20:33:28

Mac 快捷键使用指南

Mac 电脑的快捷键可以极大提高工作效率,无论是日常办公、设计、编程还是浏览网页。本文整理了一些必备快捷键和实用技巧,帮助你更高效地使用 Mac。Finder 右键菜单复制路径打开 Finder,找到需要复制的文件夹右键点击文件夹 → 按住 Option (⌥…

作者头像 李华
网站建设 2026/6/25 1:44:58

选择排序--自学笔记

选择排序 学习目标: 1.选择排序的基本思想 2.二元选择排序 3.冒泡排序和选择排序的异同 4.复杂度分析 1.选择排序的基本思想 1.1基本思想 双重循环遍历数组,每经过一轮比较,找到最小或最大元素的下标,将其换至首位! 经过…

作者头像 李华
网站建设 2026/6/25 12:47:57

开发改了接口,经常忘通知测试,有什么好的解决方案吗?

不知道大家有没有同感,做接口测试麻烦的不是测试本身,而是接口它会变,更麻烦的不是接口变了,而是它变了而你不知道。等到你测完,开发才悠悠跟你说 ——“那个接口我改了点东西,你再看一眼哈”。 我那是看一…

作者头像 李华
网站建设 2026/6/25 14:55:42

掌握这4个VSCode Azure QDK项目模板,轻松迈入量子编程大门

第一章:掌握VSCode Azure QDK项目模板的意义使用 Visual Studio Code(VSCode)结合 Azure Quantum Development Kit(QDK)为量子计算开发提供了高效、集成的环境。通过预设的项目模板,开发者能够快速初始化符…

作者头像 李华
网站建设 2026/6/24 22:26:47

Blender Launcher:彻底解决多版本管理难题的智能方案

Blender Launcher:彻底解决多版本管理难题的智能方案 【免费下载链接】Blender-Launcher Standalone client for managing official builds of Blender 3D 项目地址: https://gitcode.com/gh_mirrors/bl/Blender-Launcher 在3D创作和开发工作中,B…

作者头像 李华