Remix.run Logo
▲ Arelius 3 hours ago

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 2 hours ago | parent [-]

> I suspect that hardware without an MMU is not super likely to be able to support XIP.

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.

▲ranger_danger 40 minutes ago | parent [-]

> Don't most microcontrollers support executing directly from flash?

Yes... I presume they meant XIP for multiple programs at once, since you're need an MMU for that.

▲actionfromafar 33 minutes ago | parent [-]

Or the program use relative addressing.