首页 > 系统相关 >Buildroot+RISC-V+QEMU(@Ubuntu)运行

Buildroot+RISC-V+QEMU(@Ubuntu)运行

时间:2024-05-02 21:33:39浏览次数:14  
标签:Buildroot fw qemu elf RISC QEMU rootfs

1 RISC-V相关Buildroot代码下载和编译

下载Buildroot代码并切换特定分支:

git clone https://github.com/buildroot/buildroot.git
git checkout 2024.02.1

编译RISC-V的Buildroot:

make qemu_riscv64_virt_defconfig
make -j32

2 在QEMU上运行RISC-V镜像

进入output/images目录,执行start-qemu.sh:

output/images/
├── fw_dynamic.bin
├── fw_dynamic.elf
├── fw_jump.bin
├── fw_jump.elf
├── Image
├── rootfs.ext2
├── rootfs.tar
└── start-qemu.sh

启动qemu命令如下:

qemu-system-riscv64 -M virt -bios fw_jump.elf -kernel Image -append "rootwait root=/dev/vda ro" -drive file=rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic
  • 使用fw_jump.elf作为BIOS,里面存放的是OpenSBI镜像。
  • Linux kernel镜像为Image。
  • 挂载rootfs.ext2作为rootfs分区内容。
  • 启动一个网络设备net0。

启动后输入用户名root:

如果要退出通过killall中止qemu:

killall qemu-system-riscv64

标签:Buildroot,fw,qemu,elf,RISC,QEMU,rootfs
From: https://www.cnblogs.com/arnoldlu/p/18086781

相关文章

  • 在qemu中绑定pci bus到numa node
    在多numanode的物理机中,pcibus常常是连接到其中一个numa上。如此,不同的numa节点访问该pcibus下的设备的访问速度是不同的。基于此常常要将访问该设备的负载绑定到对应的numanode上可以提供性能。对于qemu虚拟机也可以模拟pcibus与numa之间的亲和性。在x86机器中,只有pxb和pxb......
  • 躲过了ysyx没躲过学校计算机体系结构课程设计risc-v处理器
    至少学校里的简化版可能不会让我觉得太难,呜呜呜一个用于记录的log-2024/03/23DigitalLabPro2023Vivado的使用-DigitalLabPro2023(ustc.edu.cn)快说谢谢中科大-2024/04/21DigitalLab2023simulationhttps://hitsz-cslab.gitee.io/cpu/江苏大学的,非常好的实验......
  • 【翻译】RISC-V裸机编程指南(Bare metal programming with RISC-V guide)
    RISC-V裸机编程指南(BaremetalprogrammingwithRISC-Vguide)作者:Follow@popovicu94原文链接:https://popovicu.com/posts/bare-metal-programming-risc-v/今天,我们将探讨如何为RISC-V架构的机器编写一个裸机程序。为了确保可复现,目标平台选择为QEMUriscv64virt虚拟机......
  • RISCV
    RISCVriscv通用寄存器riscv通用寄存器寄存器调用名字用途x0zero常数0x1ra返回地址x2sp栈指针x3gp全局指针x4tp线程指针x5-x7t0-t2临时存储x8s0/fp保存用寄存器/帧指针(配合栈指针界定一个函数的栈)x9s1保存用寄存器x10-x11a0-a1函数参数/返回值x12-x17a2-a7函数参数x......
  • 嵌入式开发之瑞芯微RK356x-Buildroot 配置2
        目录BR2_PACKAGE_XXX从何而来手动下载文件让buildroot去编译output目录单独编译某个应用程序上一篇说......
  • 嵌入式开发之瑞芯微RK356x-Buildroot 添加自定义应用程序1
    上一篇我们说到具体如何去配置Buildroot,编译,验证本章我们需要添加自己的应用程序,我们就以helloworld为例子吧1.首先我们进入buildroot目录,并打开package/Config.in拉到最下面添加如下内容menu"NexyhoApp" source"package/Nexyho/Config.in"endmenu2.创建Nexyho文......
  • RISC-V CPU流水线仿真
    RISC-VCPU流水线仿真1.简介RISC-V是一个开源体系结构和指令集标准,源于伯克利。该项目要求您实现一个基于标准的五级管道。您将需要实现指令的子集来自RISC-V规范2.2中指定的RV32I指令集。实施完整的CPU模拟器可以有效地锻炼系统编程能力加深对建筑相关知识的理解。2.项目简介......
  • 【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(八)- 向量整数算术指令
     1.引言以下是《riscv-v-spec-1.0.pdf》文档的关键内容:这是一份关于向量扩展的详细技术文档,内容覆盖了向量指令集的多个关键方面,如向量寄存器状态映射、向量指令格式、向量加载和存储操作、向量内存对齐约束、向量内存一致性模型、向量算术指令格式、向量整数和浮点算术指......
  • 【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(七)- 向量算术指令格式
      1.引言以下是《riscv-v-spec-1.0.pdf》文档的关键内容:这是一份关于向量扩展的详细技术文档,内容覆盖了向量指令集的多个关键方面,如向量寄存器状态映射、向量指令格式、向量加载和存储操作、向量内存对齐约束、向量内存一致性模型、向量算术指令格式、向量整数和浮点算术......
  • 【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(四)- 配置和设置指令(vsetvli/vsetivli
      1.引言以下是《riscv-v-spec-1.0.pdf》文档的关键内容:这是一份关于向量扩展的详细技术文档,内容覆盖了向量指令集的多个关键方面,如向量寄存器状态映射、向量指令格式、向量加载和存储操作、向量内存对齐约束、向量内存一致性模型、向量算术指令格式、向量整数和浮点算术......