我是 RISC-V 汇编编程的初学者,我想知道是否可以决定(或至少知道)哪些内存地址(以及多少个)分配给程序?
我在带有 64 位 RISC-V (VisionFive2) 的 debian Linux 上使用 Gnu 汇编器。
是的,但这是一个复杂的问题。 你的是什么?
您的 (ro) 程序将进入 .text 部分;你的.data部分;您的 .rodata 部分;你的 .bss 部分;一切显然都是你的。堆栈以及您从堆空间分配的内容也是如此。
但是还有其他可能是您的或共享的......那么其他(相关)流程呢?
如果你去 /proc/self 然后你会看到maps和smaps。
很多人都放弃了...