I am seeking to get into RTOS/embedded development for reasons of career development and general geekiness. As I look through job listings I see mostly references to embedded linux and VxWorks.
Embedded linux seems to be a natural destination if you are already into Linux, which I'm not, but I did just install it and it does seem quite useful for everyday activities (e.g. things not requiring Windows-only sw). The development environment seems abundant although I am used to Windows stuff like Visual C++ which holds your hand quite a bit of the way, and does have a number of useful features. One thing I thought would be relatively easy under Linux would be to set up a wireless MP3 player that got its media from a different server.
However, for the purposes of getting some hands-on learning in RTOS, I'm not sure that EL (for short) is a good first step. Too much is already accomplished so it's just a matter of putting together some drivers and trimming down the kernel to bare minimum for the purpose at hand.
What I'm interested in doing for the sake of education is to write some different apps, e.g. TCP/IP routing or just some do-nothing but pass data around apps to see how various changes in task priority affect interrupt latency, etc.
I also looked at freeRTOS which seems interesting, though I'd have to get a development board which also offered a C-compiler tool. freeRTOS is more of a bottom-up, start with the skeleton and write all of your own drivers for hardware, if any are needed (with rare exception for one supported NIC).
Ultimately my questions are:
If you are using EL currently, was that choice made to leverage everything that's already been accomplished for "desktop" Linux or some other reason?
What are the reasons to choose something other than EL?
Better responsiveness? More powerful development environment available? Smaller resource footprint?
I realize these are wide open questions. Btw I am running Firefox under Damn Small Linux to write this, that's pretty incredible! No hard disk required at all. Worked the first time I tried it too!
Thanks,
Gary