2团日志

rCore学习——建立跳板页面

1.jr和call指令的区别 1.1 pc指令 在计算机体系结构中,程序计数器(Program Counter,简称PC)寄存器用于存储当前正在执行的指令的地址。PC寄存器的工作机制如下: 1.1.1 指令执行周期 取指(Fetch): 从PC寄存器中读取当前指令的地址。 将该地址发送到内存或指令缓

2团 2团 Published on 2024-08-29

rCore学习—RISC-V的SV39多级页表机制下的虚拟地址和物理地址转换

1.前言 1.1 虚拟地址页码和物理地址页码定义 SV39 分页机制被启用后,所有 S/U 特权级的访存被视为一个 39 位的虚拟地址,它们需要先经过 MMU 的地址转换流程,如果顺利的话,则会变成一个 56 位的物理地址来访问物理内存。

2团 2团 Published on 2024-08-23

rCore学习—链接文件内容解析

1.前言 在 ELF(Executable and Linkable Format)文件中,常见的段(Sections)包括: .text:包含可执行代码(指令)。 .rodata:包含只读数据,如字符串字面量和常量。 .data:包含已初始化的全局和静态变量。 .bss:包含未初始化的全局和静态变

2团 2团 Published on 2024-08-15

rCore学习—Trap汇编内容解析

1.前言知识 1.1 CSR 在RISC-V架构中,CSR代表控制和状态寄存器(Control and Status Register)。这些寄存器用于存储处理器的控制和状态信息。CSR指令用于读取和写入这些寄存器,以便控制处理器的行为或获取处理器的状态信息。 常见的CSR指令包括: csrrw:读

2团 2团 Published on 2024-08-15

rCore学习—任务切换switch.S汇编解析

1. 前言 RISC-V 体系结构定义了以下寄存器: 通用寄存器 (General Purpose Registers): x0 - 硬编码为零 x1 - 返回地址 (ra) x2 - 栈指针 (sp) x3 - 全局指针 (gp) x4 - 线程指针 (tp) x5 - 临时寄存器 (t0)

2团 2团 Published on 2024-08-15