Author
Topic: Tiny Core with Real Time Kernel? (Read 10971 times)

If so, then you wouldn't be able to get lower times than 1ms on any distro's RT kernel. 1000Hz is the max in linus' tree. Only Con's allows higher base timing than that, and even then many things break.

I am just reporting what I have observed. My CRO does not lie. I can not get a square wave out of the port pin that I am monitoring with a half period of less than 3.333ms. I am using a call to clock_nanosleep() to establish the port write delay. Even with a time set of only 50000 nanoseconds I still get a 3.333ms delay.

The rt-patch is definetely working as the wave form on the port pin is indeed square as I expect. If I resort back to the standard TC kernel then the wave form moves all over the place with system activity as I would expect.

There must be a setting in the rt-patch config files that have been used with TC (or in the original TC build itself) that establish these timing limits.

After I have worked with many Linux distributions (Debian, RedHat, SuSE, Finnix, Sidux, Slitaz - to mention some of them) and tried -rt patched kernel attempting to use Linux in real-time applications, I definitively attached to Tiny Core.I must say many thanks to Robert and Team for their work. They gave us a clean and flexible platform which, among many other things, can effectively be used in solving the real-time problems.

At this occasion I would like to add some suggestions to help using a real-time kernel in the Tiny Core.Very good support for preemptable rt-patched kernel can be found on the http://www.osadl.org/Latest stable real-time kernel is 2.6.33.7 with 2.6.33.7.2-rt30 patch. As can be seen on this site, since kernel 2.6.39 - all real-time stuff will be included in mainline Linux . Regarding 3.333ms problem, in a standard kernel config file CONFIG_HZ_1000=y option can be used, which will increase task repetition frequency to 1 kHz.For experimenting with higher frequency tasks, "ck" patches available on the http://www.kernel.org/pub/linux/kernel/people/ck/patches/2.6/ can be used. Those patches rise CONFIG_HZ up to 10000.I have succsesfuly tried 2.6.39.1 with hz-raise_max.patch.

After playing around a bit. It appears that Tiny Core with RT should do what I want, even if my hardware is limited to 3.33ms jiffie times. Yes I could change this, but it will be a bit of a compromise performance vs latency. The 3.33ms seems to work ok at present.