作者powertodream (The Beginning)
看板C_and_CPP
标题[问题] vma vs lma linker
时间Mon Sep 20 20:40:10 2010
不太知道这个问题该在哪边问
不过跟linker 有点关系, 还请板上先进解答
**
VMA: virtual memory address
LMA: load memory address
在读的一些文件上, 都是说明 VMA 是在执行时期section 被设置的位址
LMA 是 section 被放置的位址
一般在ROM/RAM 的嵌入式系统下,
如果某些section一般时期被存在ROM而执行时期需要被放到RAM, 会设置不同的LMA与VMA
(像是.data)
我的疑问是, 在code里面连结的位址像是变数, 跳转, 都是以VMA下去计算的
那什麽时候会使用到LMA呢?
在relocation(把资料从ROM搬到RAM)的时候, 或者是在make ROM 的时候呢?
谢谢
--
人类从历史得到的教训就是人类不曾从历史得到教训
(黑格尔).
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.147.15.66
※ powertodream:转录至看板 ASM 09/20 22:29