public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Karim Yaghmour <karim@opersys.com>
To: ganzinger@mvista.com
Cc: Geoff Levand <geoffrey.levand@am.sony.com>,
	high-res-timers-discourse@lists.sourceforge.net,
	linux-kernel@vger.kernel.org, Philippe Gerum <rpm@xenomai.org>
Subject: Re: [ANNOUNCE] high-res-timers patches for 2.6.6
Date: Sun, 20 Jun 2004 23:14:39 -0400	[thread overview]
Message-ID: <40D6529F.6060305@opersys.com> (raw)
In-Reply-To: <40CE1128.8030806@mvista.com>


George Anzinger wrote:
> I don't see how this delivers any added value to the user.  I suppose 
> code running at the kernel level might gain something, but at the user 
> level we still have to deal with preemption latencies, which are the 
> biggest problem (and, aside from messing up the accuracy of the timers, 
> are NOT timer issues at all).

Actually I think the point I'm trying to make can't be fairly conveyed
without providing a lot of background of what can be done with Adeos. I
would suggest that those interested do some digging. Among other things,
you may want to read about RTAI/fusion:
http://www.fdn.fr/~brouchou/rtai/rtai-doc-prj/rtai-fusion.html
http://www.fdn.fr/~brouchou/rtai/modules.php?name=Content&pa=showpage&pid=1

Here's a quote from Philippe on how this compares to HRT:
> Last time I checked (i.e. two days ago on a 2.6.6), hi-res timers were
> not capable of providing 1Khz periodic timings for 10mn with no overrun
> through clock_nanosleep(), even with no additional load on the machine.
> fusion is able to do that directly through a plain nanosleep(); in fact
> it is able to sustain 10Khz periodic timings with a compilation, disk
> I/O and interrupt flooding in the background. Frankly, IMHO, determinism
> with really hi-res timing in user-space is a territory which will remain
> ruled by RTAI for quite a long time; vanilla Linux will always look
> miserable at some point in this respect unless, e.g. stuff like that
> (which is otherwise perfectly sound for a GPOS) disappears from its code
> base:
> 
> kernel/softirq.c:
> 
> /*
>  * We restart softirq processing MAX_SOFTIRQ_RESTART times,
>  * and we fall back to softirqd after that.
>  *
>  * This number has been established via experimentation.
>  * The two things to balance is latency against fairness -
>  * we want to handle softirqs as soon as possible, but they
>  * should not be able to lock up the box.
>  */
> #define MAX_SOFTIRQ_RESTART 10
> 
> asmlinkage void __do_softirq(void)
> 
> --
> 
> But, hey! I WANT to be able to lock up this box! :o)

Unfortunately, there's no sustained vendor push behind this kind of stuff
as their is for HRT, but my experience has been that this is for lack of
understanding of what Linux can/should be able to provide as a GPOS then
anything else (i.e. a lot of "embedded"/"carrier-grade" vendors seem to
somehow believe that eventually plain vanilla Linux could become hard-rt
simply by virtue of adding more and more features on top of it ...
preemption, HRT, interrupt threading, etc.etc.etc. While the fact of the
matter is that Linux is a GPOS and that it really should catter for the
average case and leave the hard-rt part to something built with that in
mind.) For having been involved with the use of Linux in real-time systems
for over 5 years now, I firmly believe any potential solution to determinism
in Linux goes through something like Adeos. The example of RTAI/fusion is
just one out of many of what can be achieved with such an approach while
making it simple for application developers to create applications built
on "standard" APIs.

Karim
-- 
Author, Speaker, Developer, Consultant
Pushing Embedded and Real-Time Linux Systems Beyond the Limits
http://www.opersys.com || karim@opersys.com || 1-866-677-4546


  reply	other threads:[~2004-06-21  3:18 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-10  1:49 [ANNOUNCE] high-res-timers patches for 2.6.6 Geoff Levand
2004-06-10  2:40 ` William Lee Irwin III
2004-06-10  8:40   ` eric.piel
2004-06-10  9:08     ` William Lee Irwin III
2004-06-10 10:04 ` Arjan van de Ven
2004-06-11  0:02   ` George Anzinger
2004-06-11  6:22     ` Arjan van de Ven
2004-06-11 22:11       ` George Anzinger
2004-06-11 22:33       ` George Anzinger
2004-06-12 14:01         ` Arjan van de Ven
2004-06-14 15:28         ` Mark Gross
2004-06-14 20:48           ` George Anzinger
2004-06-14 22:20             ` Mark Gross
2004-06-15  0:21               ` George Anzinger
2004-06-15 16:04                 ` Mark Gross
2004-06-16 22:33                   ` George Anzinger
2004-06-17 19:35                     ` Mark Gross
2004-06-21 22:50           ` Geoff Levand
2004-06-21 23:17             ` George Anzinger
2004-06-22 17:37               ` Geoff Levand
2004-06-22 18:05                 ` Stephen Hemminger
2004-06-22 23:07                 ` George Anzinger
2004-06-23  0:15                   ` Geoff Levand
     [not found]                   ` <40D8CF88.4050608@am.sony.com>
2004-09-03  1:35                     ` [ANNOUNCE] high-res-timers patch Geoff Levand
2004-11-04 20:41                     ` Geoff Levand
2004-06-23 16:23                 ` [ANNOUNCE] high-res-timers patches for 2.6.6 Mark Gross
2004-06-21 23:29             ` Mark Gross
2004-06-12  0:24 ` Karim Yaghmour
2004-06-14 20:57   ` George Anzinger
2004-06-21  3:14     ` Karim Yaghmour [this message]
2004-06-21 21:33       ` George Anzinger
2004-06-22  4:50         ` Karim Yaghmour
2004-06-21 23:13 ` Stephen Hemminger
2004-06-21 23:22   ` Randy.Dunlap
  -- strict thread matches above, loose matches on Subject: below --
2004-06-10 12:46 Dave Hylands

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=40D6529F.6060305@opersys.com \
    --to=karim@opersys.com \
    --cc=ganzinger@mvista.com \
    --cc=geoffrey.levand@am.sony.com \
    --cc=high-res-timers-discourse@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rpm@xenomai.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox