This is the mail archive of the
mailing list for the eCos project.
Re: Port to Atmel ARM9 Microcontroller SAM9G45
On 04.03.2010 10:38, Richard Rauch wrote:
> - small footprint
> - good realtime behaviour
> - very short interrupt latency times, minimal overhead for task context
> - available for small microcontrollers (arm7,cortex m3)
And last but not least: in my opinion the eCos structure
is cleaner and there is a lot less dependencies between
various parts of the operating system.
>> Maybe you can help me defending eCos ;-).
>From my experience it is nearly impossible to write
a non-trivial realtime application for Linux - in my
opinion it simply is not there yet. I tried to port
an application using realtime timers and ethernet
networking to a variant of OSADL linux
(http://www.osadl.org/). I ended hunting deadlocks
and priority inversion cases over the whole system,
had kernel softirq threads in uninterruptible sleeps
(that shouldn't happen except hardware failure).
I spoke to other developers who tried Linux for
this kind of stuff and they had similar experience.
The same application works like a charm under eCos
or without using the realtime threads.
I'd recommend Linux in following cases:
- no or soft realtime
- you need virtual memory
- you need to load code dynamically
- having separate processes instead of threads is an
- userspace/kernelspace isolation is needed
- you need something (e.g. a driver) only the linux provides
and don't have time/resources to port it
Otherwise the eCos is better bet for an embedded device.