ZHCUAV7Z september 1995 – march 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
有时您可能希望将代码加载到存储器的一个区域,而在另一个区域运行。例如,慢速外部存储器中可能有对性能至关重要的代码。代码必须加载至慢速外部存储器,但在快速外部存储器中能够以更快的速度运行。
链接器提供了实现此目标的简单方式。您可以使用 SECTIONS 指令使链接器分配一个段两次:第一次设置其加载地址,第二次设置其运行地址。例如:
.fir: load = SLOW_MEM, run = FAST_MEM
加载地址使用 load 关键字,运行地址使用 run 关键字。
请参阅节 3.5,了解运行时重定址的概述。
应用必须将段从其加载地址复制到其运行地址;如果您另外指定了运行地址,这不会 自动发生。(TABLE 操作符指示链接器生成复制表;请参阅节 8.8.4.1。)