This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| dev:crosscompiler:backend:linker32 [2018/01/04 15:31] – created ursgraf | dev:crosscompiler:backend:linker32 [2022/12/20 10:00] (current) – ursgraf | ||
|---|---|---|---|
| Line 25: | Line 25: | ||
| When the system ist starting up, the [[dev: | When the system ist starting up, the [[dev: | ||
| - | In the compiler the constant block is modeled as linked list of '' | + | In the compiler the constant block is modeled as linked list of '' |
| * **'' | * **'' | ||
| * **'' | * **'' | ||
| Line 56: | Line 56: | ||
| ===== Calculate Size and Offsets ===== | ===== Calculate Size and Offsets ===== | ||
| [{{ dev: | [{{ dev: | ||
| - | Before the memory map can be fixed, a couple sizes and offsets must be calculated for each class: | + | Before the memory map can be fixed, a couple |
| - | * '' | + | * '' |
| * '' | * '' | ||
| Line 64: | Line 64: | ||
| - The system runs from the flash | - The system runs from the flash | ||
| - The system runs from the RAM. | - The system runs from the RAM. | ||
| - | - The base system is in the flash. Further classes are later loaded into the RAM. This case needs two system tables. The flash holds a system table which contains only classes which are present in the flash. The system table in the RAM must hold all classes. | + | - The base system is in the flash. Further classes are later loaded into the RAM. This case needs two system tables. The flash holds a system table which contains only classes which are present in the flash. The system table in the RAM must hold all classes. |
| In the compiler the system table is modeled as list. as elements it uses the same blocks as for the constant block. Additionally '' | In the compiler the system table is modeled as list. as elements it uses the same blocks as for the constant block. Additionally '' | ||