【RISC-V】解决链接器加入全局变量优化后操作系统无法启动的问题

问题描述:我想在构建操作系统内核本身的链接器脚本中加入全局变量优化,于是我在脚本中加入了小数据段,又在操作系统的汇编代码中初始化了全局寄存器,然后我的操作系统就无法启动了(卡住了)

问题:操作系统的入口是S模式的0x80200000,但我在链接脚本中把 .sdata 段放在了 .text.boot 前面,导致 CPU 从 0x80200000 开始执行的是数据段而非代码,系统立即崩溃,因此"没有输出"。

解决:将新添加的段放在它该在的位置

相关推荐
一枝小雨20 小时前
RISC-V架构的中断与异常处理机制学习笔记
单片机·架构·嵌入式·risc-v·内核原理·中断与异常
一枝小雨1 天前
什么是标准C函数:以RISC-V架构下的C函数为例
c语言·risc-v·内核原理
咕咚.萌西2 天前
RISCV AS汇编器
risc-v
嵌入式小企鹅2 天前
UiPath推出AI编程“总指挥台”,SiFive发布RISC-V第三代猛兽
人工智能·学习·google·程序员·ai编程·risc-v·开源工具
阿祖_in_coding5 天前
RISC-V ACT测试
risc-v
yusur5 天前
开芯院院长唐丹一行来访中科驭数 共探RISC-V与DPU算力协同创新之路
risc-v
加强洁西卡5 天前
【RISC-V】RVV选摘
risc-v
加强洁西卡6 天前
【RISC-V】fclass数值类型对照表
risc-v
国科安芯7 天前
空间辐射环境下电机伺服系统的抗扰动控制:AS32S601 抗辐射 MCU 在航天机电执行机构中的多场景应用与可靠性评估
单片机·嵌入式硬件·mcu·cocos2d·risc-v
国科安芯7 天前
AS32S601 抗辐射 MCU 在星载高速光通信链路的集成设计与性能验证
网络·单片机·嵌入式硬件·risc-v·安全性测试