【笔记:第4课】学习开发一个RISC-V上的操作系统 - 汪辰 - 2021春

文章目录

前言

创作开始时间:2023年1月10日22:41:26

如题,学习一下RISC-V。

来源

https://www.bilibili.com/video/BV1Q5411w7z5?p=4&vd_source=73a25632b4f745be6bbcfe3c82bb7ec0

正文

在这里插入图片描述

操作系统:POSIX 标准。

LLVM有后来居上的趋势,可能会干掉Gcc。

Arm也不算开源,只是设计方案给你用,不能改。

在这里插入图片描述

美国科技牛,还是因为教育牛
RISC-V就是教学转化来的。

X86,ip问题,就是知识产权问题,要付费。
Arm,还不支持64位。

在这里插入图片描述

在这里插入图片描述
RV ###(寄存器宽度) abc…xyz(支持的指令集集合)

支持I模块,M模块,A模块。

模块化的概念

在这里插入图片描述
增量ISA

Intel X86指令集,越来越多。背着负担往前走,要不断向后兼容。
这样很不容易,
但会导致学习成本高。

在这里插入图片描述
RISC-V就没有这种问题。

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

基本指令集不变。过十年还能用。对程序员友好。

在这里插入图片描述
在这里插入图片描述
一个cpu抽象成两个cpu,hart

在这里插入图片描述

hart代表执行流。

在这里插入图片描述

类似用户态,内核态。

machine态,就是实模式,不开虚拟地址的,访问的全部是物理地址。
supervisor态,保护模式,开了mmu,支持虚拟地址。
user态,用户模式

三种模式,起到分层保护作用。

进程的概念只有在开了MMU才能实现,虚拟地址。

在这里插入图片描述

三个模式的区别其实是在:不同模式下对应的寄存器可能不让访问。

user不能访问高级别的寄存器(machine,supervisor)

在这里插入图片描述

在这里插入图片描述
异常会回到异常(处理完异常之后)
而中断是返回到下一条指令执行。

小结

2023年1月10日23:41:53

猜你喜欢

转载自blog.csdn.net/weixin_39278265/article/details/128637507