0%

本文分析riscv AIA的基本逻辑。目前,相关的代码还在社区review,分析使用的代码为, qemu使用v7.1.50主线代码,kvmtool使用https://github.com/avpatel/kvmtool riscv_aia_v1分支, 内核使用https://github.com/avpatel/linux riscv_kvm_aia_v1分支。

阅读全文 »

本文分析CPU多核启动的基本逻辑,我们分析基于riscv的qemu虚拟机,固件基于opensbi, 内核采用Linux。各个分析内容的版本是:qemu v7.1.50, opensbi v1.0, Linux v6.0。

阅读全文 »

本文分析Linux内核里initramfs的代码逻辑。分析基于的内核版本是v6.0,qemu版本是v7.1.50。

阅读全文 »

本文分析riscv内存管理相关的指令,主要包括,内存序、TLB无效化以及cache无效化 的相关指令。分析使用的内核版本是v6.0,qemu版本是7.1.50,opensbi的版本是v1.1, riscv privilige ISA的版本是20211203,CMO的版本是20220513。

阅读全文 »

本文主要分析riscv aclint的定义和内核实现。aclint使用https://github.com/riscv/riscv-aclint 上发布的版本,内核使用v5.19-rc8,qemu使用7.1.50。

阅读全文 »

本文介绍Linux内核里软中断的基本逻辑,分析基于内核代码v5.19-rc8,体系结构基于 riscv。目前,没有实际案例帮助继续分析细节。

阅读全文 »