[Home]How To Implement A New Skin

Last edit: Peter Favrholdt on October 2, 2006 22:58 (2951 days, 16 hours and 41 minutes ago) (diff)
Rtai.Dk | RecentChanges | Preferences | DIAPM RTAI

From the mailinglist:

>I have some application for nucleus OS.
>> There isn't support for this OS in xenomai
>> So I'd like to develop a support for this RTOS.
>> Can I recapture the source of emulator of others OS to adapt these for this OS?

Yes. This is the way to do to make it work. When you feel comfortable
with the Xenomai services, then you can  make it fast.

>> What is the nearest RTOS ?

Not that far from VRTX/sa, with some VxWorks-like primitives too (timer
support WIND calls watchdogs).

>> what is the procedure ?

o Define the scope of the API you want to have a Xenomai skin for.
o Start crafting the task create/resume/suspend/delete services first
and make them work rock-solid over rtai-sim.
o Add the semaphores, or the events, i.e. any kind of feature that
exercises basic inter-task synchronization. Write it, test it over
rtai-sim.
o Finalize the task support over rtai-sim.
o Add an inter-task communication feature in your skin; write it,
validate it over rtai-sim.
o At that point, calm down a bit, because you will likely be hit by the
OMSCBD syndrom. You really need to be very careful with this: when you
hear yourself saying "ok, I want to finish One More System Call Before
Diner", then you've likely already coded 70 services within a day, but
you feel you need more. It's addictive, and if you don't take care, you
will end up roaming in your neighbourhood with an insane smile on your
face.

When you feel your Xenomai skin is complete and stable enough, move it
to kernel or hard VM space. It should work exactely as it did under the
virtual RT machine.

In any case: code the initial version of your skin using the simulator,
do _not_ go blindly for kernel space. This simulator runs the _actual_
Xenomai nucleus you will be able to run later in the "real" real-time
space when the dust has settled. Developing a RTOS in bare kernel space
when a reliable simulation framework is available is like wearing a
knight's armor to go swimming: all you can do is bravely...sink.

>> somebody work on this ?

Don't you yet?

Philippe Gerum

Edit text of this page | View other revisions | Download Rtai.dk
Search: