学习开发一个RISC-V上的操作系统(汪辰老师) — 环境配置

前言

(1)此系列文章是跟着汪辰老师的RISC-V课程所记录的学习笔记。
(2)该课程相关代码gitee链接
(3)PLCT实验室实习生长期招聘:招聘信息链接
(4)在学习汪辰老师的视频教程中,环境是需要自己配置的。老师是使用的VirtualBox虚拟机,而我是使用的VMware,因为懒得再去下载一个别的虚拟机了,所以本文章将会以Vmware虚拟机如何配置环境。
(5)注意:虚拟机不一样,只会导致安装Ubuntu略有不同,后续在Linux中操作是一致的。

Ubuntu 20.04环境安装

VMware的Ubuntu 20.04环境安装

(1)因为全网已经有很多非常详细的安装教程了,所以我就不在此赘述。个人是根据VMware虚拟机安装Ubuntu20.04详细图文教程这篇博客进行的环境安装,讲的非常详细。
(2)需要注意的一点是,这篇博客分配的磁盘大小为30GB,个人建议40GB以上。

磁盘分配不足问题

(1)因为担心有些同学磁盘不小心分配小了,或者后续还需要进行增加磁盘大小。可以按照如下流程增加磁盘。
<1>选中安装好的Ubuntu 20.04—>编辑虚拟机

在这里插入图片描述

<2>按照如下步骤进行磁盘扩展。因为我的磁盘已经是40GB了,为了做实验,我就增大1GB。点击扩展之后,只需要等待扩展虚拟磁盘完成。

在这里插入图片描述

<3>点击两个确定即可。

在这里插入图片描述

<4>播放虚拟机

在这里插入图片描述

<5>进入虚拟机之后,打开命令行输入gparted进入磁盘管理

sudo gparted

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

<6>按照上述操作完成之后,重启

reboot

在这里插入图片描述

<7>重启之后,重新打开gparted。我们将会看到扩展内存成功了。
但是可能会有同学问,我们明明扩展到的最大内存是41GB呀,为什么这里是40.5GB呢?看上面,还有一个小的磁盘需要512GB,也就是0.5GB。至于为什么需要分配出来这0.5GB,我也不太清楚。

sudo gparted

在这里插入图片描述

RISC-V环境搭建

课程环境搭建

(1)因为Linux和Windows的换行符是不一样的,所以建议所有操作在Linux中进行。而不是Windows中完成之后,传给Linux。深刻的教训!!!
(2)拉取课程仓库 —> 使用官方提供的 GNU工具链和 QEMU 模拟器

git clone https://gitee.com/unicornx/riscv-operating-system-mooc.git
sudo apt update
sudo apt install build-essential gcc make perl dkms git gcc-riscv64-unknown-elf gdb-multiarch qemu-system-misc

环境测试

(1)执行完上述操作之后,进入拉取的riscv-operating-system-mooc目录

cd riscv-operating-system-mooc

在这里插入图片描述

(2)执行make等待出现finished successfully。

make

在这里插入图片描述

(3)进入git仓库的riscv-operating-system-mooc/code/os/00-bootstrap目录中

cd code/os/00-bootstrap
make run

在这里插入图片描述

关于课程中的hello.c无法打印问题

(1)在汪辰老师的课程中,第四章的20分钟。他编译了一个hello.c。

在这里插入图片描述

(2)如果你也和视频一样输入如下指令,大概率会显示找不到stdio.h文件。

riscv64-unknown-elf-gcc -march=rv32ima -mabi=ilp32 hello.c

在这里插入图片描述

(3)你可以安装gcc-riscv64-linux-gnu,然后使用交叉编译工具链即可编译通过。
(4)但是在使用qemu运行环境的时候,如果出现和我一样的提示,就可以执行复制命令。

sudo apt install gcc-riscv64-linux-gnu
riscv64-linux-gnu-gcc hello.c
# 如果运行qemu显示找不到目录,就执行如下语句
sudo cp /usr/riscv64-linux-gnu/lib/* /lib/

在这里插入图片描述

参考文章

(1)qemu-riscv64: could not open ‘/lib/ld-linux-riscv64-lp64d.so.1‘
(2)VMware虚拟机安装Ubuntu20.04详细图文教程
(3)riscv-operating-system-mooc仓库的README_zh.md
(4)QQ 学习群976125506的 课程环境搭配教程.docx文档。
(5)riscv-operating-system-mooc仓库的errata.pdf;

猜你喜欢

转载自blog.csdn.net/qq_63922192/article/details/133486731