EmbeddedRelated.com
Forums
Memfault Beyond the Launch

[troll] Fine, so what is a "complete" RTOS?

Started by Tim Wescott May 29, 2010
Vladimir Vassilevsky wrote:
> > > Chris H wrote: >> In message <hts8be$oig$1@speranza.aioe.org>, D Yuniskis >> <not.going.to.be@seen.com> writes >> >>> I see the basic services that an *embedded* OS should support >>> to include: >>> - memory management >>> - CPU management >>> - time management >> >> >> Yes to the above. > > A C/C++ compiler should provide built-in interrupt safe functions to > create and switch contexts. Everything else you do yourself or use > libraries of your preference. >
That would be /very/ nice. It's not quite enough, though. It should also provide an atomic compare-and-swap instruction (or built-in function, if the cpu does not have a CAS instruction). That would let you build atomic accesses, semaphores, mutexes, etc., as a standard C library. Memory barrier and interrupt enable, disable, save and restore built-ins would also be useful - these normally have to be done using inline assembly.

Memfault Beyond the Launch