《RISC-V 体系结构编程与实践(第2版)》阅读心得之二--搭建RISC-V实验环境
[复制链接]
本帖最后由 goldjack 于 2024-12-2 22:19 编辑
因为手头没有RISC-V开发板,所以就借助奔跑吧Linux社区提供的VMware镜像在Windows上搭建了模拟的测试环境,并做了该书第二章中的主要实验。
首先根据奔跑吧Linux社区提供的网址下载了rlk_vmware_image_第二版_v1.5.2压缩包,把它加压后备用。
接着下载了VMware-player-full-17.5.0-22583795-win11用这个版本.exe文件,在 Win11上安装。
启动VMware Workstation 17 Player之后,导入上面已解压的虚拟机rlk_image_v2。
当你启动虚拟机的时候,可能会遇到一些问题:
1)提示你运行虚拟机时启用了侧通道缓解。
解决办法:VMware Workstation Player本身不含“高级”选项,你可以忽略或安装VMware Workstation。
2) 此平台不支持虚拟化的Intel VT-x/EPT,模块”HV””启动失败。
解决办法:你可以通过从Windows控制面板-->程序-->程序和功能-->启用或关闭Windows功能中,关闭Hyper-V功能。
该书的大部分试验是基于一个简单的小型操作系统试验平台BenOS,这个平台可以运行在QEMU和NEMU上。QEMU(Quick EMUlator)和NEMU是两种开源的模拟器。
实验一:在QEMU上运行BenOS:
QEMU输出“Welcome RISC-V!”说明成功运行了BenOS。
关闭QEMU的方法是先按CTRL+A,然后松手、快速按X键。
实验二:单步调试BenOS和MySBI(运行在M模式下的固件):
先在第一个终端(Terminal)中启动QEMU虚拟机的gdbserver:
再在第二个终端(Terminal)中启动GDB工具:
cd /home/rlk/rlk/riscv_programming_practice/chapter_2/benos
gdb-multiarch -tui benos.elf
执行如上命令就可以用工具对BenOS进行单步调试了。
同理,也可以用同样的方法用GDB工具单步调试MySBI固件的elf文件。
先在第一个终端(Terminal)中启动QEMU虚拟机的gdbserver:
cd /home/rlk/rlk/riscv_programming_practice/chapter_2/benos
make debug
再在第二个终端(Terminal)中启动GDB工具调试MySBI:
cd /home/rlk/rlk/riscv_programming_practice/chapter_2/benos
gdb-multiarch -tui mysbi.elf
初步的模拟实验环境搭好了,后面可以边学边做实验了。
To be continued......
|