Linux on ARM Cortex-M3 series
Regarding the ARM Cortex-M3:

Linux requires an MMU (Memory Management Unit). The ARM Cortex-M3 does not have one. It is impossible to run the mainline Linux kernel on the ARM Cortex-M3.

However, there is a variant of the Linux kernel for MMUless processors called uCLinux.

Linux on M3 Guide

ST's Application Note on uCLinux

However, as others have noted, Linux is unlikely to be practical on the M3. It won't run without external RAM. I believe that even the largest Cortex-M3 parts only have 1MB flash, so you'll likely need extra storage too.