Program Memor file1. ob Data Memory text figured file 1 data file 1 file 2 bss text file 2 file 1 data (initialized named section) file 1 file 2 U vars data u vars (uninitialized file 1 named section) U vars table 1 file2 obi file 2 table 1 te t data bss unused (initialized nus named section) u vars (uninitialized named section) (initialized configured named section) 图5-4链接器默认的存储器分配 回本
图5-4 链接器默认的存储器分配 返回本节
524重新定位 1.链接时重新定位 将各个段定位到存储器中,每个段都从合适的地 址开始。 将符号值调整到相对于新的段地址的数值。 调整对重新定位后符号的引用
5.2.4 重新定位 1.链接时重新定位 ◼ 将各个段定位到存储器中,每个段都从合适的地 址开始。 ◼ 将符号值调整到相对于新的段地址的数值。 ◼ 调整对重新定位后符号的引用
2.运行时重新定位 将代码装入存储器的一个地方,而运行在另一个 地方。利用 SECTIONS命令选项让链接器定位两 次。一些关键的执行代码必须装入在系统的ROM 中,但希望在较快的RAM中运行。 链接器提供了一个简单的处理该问题的方法。利 用 SECTIONS命令选项让链接器定位两次。第 次使用装入关键字设置装入地址,再用运行关键 字设置运行地址。 回A
2.运行时重新定位 ◼ 将代码装入存储器的一个地方,而运行在另一个 地方。利用SECTIONS命令选项让链接器定位两 次。一些关键的执行代码必须装入在系统的ROM 中,但希望在较快的RAM中运行。 ◼ 链接器提供了一个简单的处理该问题的方法。利 用SECTIONS命令选项让链接器定位两次。第一 次使用装入关键字设置装入地址,再用运行关键 字设置运行地址。 返回本节