points by Arelius 5 hours ago | 0 comments
Generally, running in a MMU without static task config would require relocatable binaries. I'm not sure why it'd preclude execute-in-place. As a relocatable binary should be executable from generally any address space. However I suspect that hardware without an MMU is not super likely to be able to support XIP.
It is based on FreeRTOS, so it should be fairly well documented.
[–] dvdkon 5 hours ago
[–] ranger_danger 3 hours ago
> Don't most microcontrollers support executing directly from flash?
Yes... I presume they meant XIP for multiple programs at once, since you'd need an MMU for that.
[–] actionfromafar 3 hours ago
Or the program use relative addressing.
This seems strange to me. Don't most microcontrollers support executing directly from flash? Some even can't execute from RAM.
Though I agree with the main point, you can compile code as "PIC" - position independent code, and not bother with (ELF) relocations except for linking.