There is no real benefit in putting Linux on an ARM7 IMO; ARM7 has no MMU and memory protection is a primary reason for using an OS such as Linux. uClinux will run on targets without an MMU, but you have lost one of the most compelling reason for using Linux, and still need the huge memory resources (A 4M flash, 16M RAM would be a sensible minimum).
Many ARM7 devices do not have external memory busses for attaching that much memory, and on chip flash and RAM typically range form 32K to 1M depending on the device.
Linux is not intrinsically "real-time". For real-time capability it is often coupled with a real-time kernel, where Linux essentially runs as the idle task, or on targets with the capability as a separate virtual machine. So if deterministic and fast response to external events is a requirement, you'll need an RTOS such as eCOS.
eCOS is great in that it has a large ecosystem of add-on features and device support that rivals most commercial offerings. However something like FreeRTOS are likely to be easier to 'bring-up' but provide no more than a thread scheduler and inter-process communication mechanisms. Stuff like a file system or TCP/IP need to be sourced from third-parties (although there equally small and free solutions suitable for embedded systems for that too).
If you use a simple Kernel such as FreeRTOS or uC/OS-III, you will not have wasted too much time, so the investment is not an inhibitor to using something else next time. Linux on the other hand may well discourage you from using something smaller and more narrowly targeted next time, and tour subsequent projects may cost considerably more than they need to just to support your OS of choice.