比较多的RISC-V SOC Linux开发环境使用CMake/Makefile,虽然也知道些怎么用,但有没完整系统的这方面学习资料?如语法、脚本链接结构等,可以分享下深入学习
2024-03-31 12:48
页表创建源码分析 RISC-V Linux启动,经历了两次页表创建过程,第一次使用C函数 setup_vm() 创建临时页表,第二次使用C函数 setup_vm_final() 创建最终页表。 具体
2023-10-08 11:22
临时页表分析 MMU开启前,需要建立好kernel、dtb、trampoline等页表。以便MMU开启后,并且在内存管理模块运行之前,kernel可以正常初始化,dtb可以正常地被解析。这部分页表都是临时页表,最终的页表在setup_vm_final()建立。 临时页表创建顺序: 首先为fixmap创建早期的PGD、PMD,这时PGD使用 early_pg_dir 。然后对从kernel开始的前2M内存建立二级页表,此时PGD使用 trampoline_pg_dir ,为这2M建立的页表也叫作 superpage 。再然后,对整个kernel创建二级页表,此时PGD使用 ear
2023-10-08 11:14
冯诺依曼架构、处理器市场体系都在受到冲击,浪潮的该项专利在RISC-V处理器迅速发展的背景下,介绍了基于该处理器架构的linux系统移植方法。
2020-01-08 10:52
配置和编译 OpenSBI的配置选项位于不同平台下的 config.mk 文件,例如 platform/generic/config.mk : # Blobs to build FW_TEXT_START=0x80000000FW_DYNAMIC=yFW_JUMP=yFW_PAYLOAD=y ifeq ( $(PLATFORM_RISCV_XLEN) , 32) # This needs to be 4MB aligned for 32-bit system FW_JUMP_ADDR= $( shell printf "0x%X" $$(( $(FW_TEXT_START) + 0x400000) )) else # This needs to be 2MB aligned for 64-bit system FW_JUMP_ADDR= $( shell printf "0x%X" $$(( $(FW_TEXT_START) + 0x200000) )) endif FW_JUMP_FDT_ADDR= $( shell printf "0x%X" $$(( $(FW_TEXT_START) + 0x2200000) )) ifeq ( $(PLATFORM_RISCV_XLEN) , 3
2023-10-08 14:24
鹭岛论坛 开源芯片系列讲座第07期 「 基于RISC-V的Linux发行版及软件生态」 | 直播信息 报告简介 首先总结几年来 Linux发行版在 RISC-V
2022-12-08 08:40
直播回放: https://t.elecfans.com/live/2240.html直播课件:*附件:基于RISC-V的Linux发行版及软件生态.pdf报告摘要 :首先总结几年来Linux发行版
2022-12-27 10:06