public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Andrew Lunn <andrew@lunn.ch>
To: R Vamshi Krishna <vamshi@cse.iitb.ac.in>
Cc: ecos-discuss@sources.redhat.com
Subject: Re: [ECOS]: Is eCos Hard Real Time OS ??
Date: Fri, 24 Jun 2005 12:38:00 -0000	[thread overview]
Message-ID: <20050624123829.GB7187@lunn.ch> (raw)
In-Reply-To: <Pine.LNX.4.61.0506241710050.5855@mars.cse.iitb.ac.in>

On Fri, Jun 24, 2005 at 05:11:47PM +0530, R Vamshi Krishna wrote:
> On Fri, 24 Jun 2005, Andrew Lunn wrote:
> 
> >On Fri, Jun 24, 2005 at 04:37:42PM +0530, R Vamshi Krishna wrote:
> >>
> >>Is eCos a Hard Real Time OS ?
> >
> >No, its a soft real time system. It never give guarantees that task X
> >will finish by time Z, which is the normal definition of hard real
> >time. eCos will do its best to ensure that the high priority task gets
> >to run before the low priority task, which for most embedded systems
> >is enough.
> >
> >       Andrew
> >
> >
> 
> 
> Then what parts do I re-write to make it hard-real time ?
> Because I want to use eCos but also I need a hard real-time
> OS.

You have to think, what exactly does hard real time mean to you?  Do
you need 80.000% and 20.000% or will 78.1% and 19.2%, plus some lost
to interrupts be OK? Does the system have to be completely
deterministic or is some randomness in timing allowed?

The scheduler is the obvious one that you need to look at.

Interrupt handling will upset hard real time, so you need to re-write
all the device drivers you want to use so that they don't use
interrupts. You need to do polled IO from within your threads.

You need to think how you handle the timer interrupt. Do you need it
at all?

You might want to consider disabling the caches. The cache gives you
none deterministic behavior.

I'm sure there are many more issues to consider, but it will largely
depend on what you actually mean by hard real time.

        Andrew

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

  parent reply	other threads:[~2005-06-24 12:38 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-24 11:07 R Vamshi Krishna
2005-06-24 11:27 ` Andrew Lunn
2005-06-24 11:41   ` R Vamshi Krishna
2005-06-24 12:32     ` Kozo Kakehi
2005-06-24 12:54       ` R. Vamshi Krishna
2005-06-24 12:38     ` Andrew Lunn [this message]
2005-06-24 12:52       ` R. Vamshi Krishna
2005-06-24 13:32         ` Andrew Lunn
2005-06-24 19:52 ` Fabian Scheler

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=20050624123829.GB7187@lunn.ch \
    --to=andrew@lunn.ch \
    --cc=ecos-discuss@sources.redhat.com \
    --cc=vamshi@cse.iitb.ac.in \
    /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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).