From: Ingo Molnar <mingo@elte.hu>
To: "Povolotsky, Alexander" <Alexander.Povolotsky@marconi.com>
Cc: "'linux-kernel@vger.kernel.org'" <linux-kernel@vger.kernel.org>,
"'andrebalsa@altern.org'" <andrebalsa@altern.org>,
"'Richard E. Gooch'" <rgooch@atnf.csiro.au>,
"'rml@tech9.net'" <rml@tech9.net>,
"'akpm@osdl.org'" <akpm@osdl.org>,
"'Con Kolivas'" <kernel@kolivas.org>
Subject: Re: Preemption of the OS system call due to expiration of the time-sl ice for: a) SCHED_NORMAL (aka SCHED_OTHER) b) SCHED_RR
Date: Wed, 30 Jun 2004 12:35:31 +0200 [thread overview]
Message-ID: <20040630103531.GA24347@elte.hu> (raw)
In-Reply-To: <313680C9A886D511A06000204840E1CF08F42FAE@whq-msgusr-02.pit.comms.marconi.com>
* Povolotsky, Alexander <Alexander.Povolotsky@marconi.com> wrote:
> Con - thanks for your kind answers !
>
> Preemption (due to the expiration of the time-slice) of the process,
> while it executes OS system call, - by another process (of equal or
> higher priority) when running under following scheduling policies:
>
> a) SCHED_NORMAL (aka SCHED_OTHER)
> b) SCHED_RR
>
> Is it possible in Linux 2.6 ? Linux 2.4 ?
this is possible in 2.6 in CONFIG_PREEMPT is on. There's no guaranteed
latency due to non-preemptability of interrupts and critical sections
but the practical latencies are well below 1 msec. A bad driver or some
rare codepath we missed could introduce long latencies - but these are
usually easy to fix.
The core 2.6 kernel itself is very latency-friendly, in a very
controlled hardware environment utilizing well-reviewed userspace code,
a slimmed down kernel, no block IO and no high-rate interrupt source
(other than the interrupt source the application cares about) i'd say
it's quite close to hard-RT: all kernel functions have bound latency,
'all' you have to take care of are latencies introduced by hardware
interrupts.
in 2.4 kernel-preemption is done too in lots of places conditionally
(cooperatively), by kernel code. Unlike 2.6 there's no forced preemption
of kernel code.
Ingo
next prev parent reply other threads:[~2004-06-30 10:34 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-06-30 9:50 Preemption of the OS system call due to expiration of the time-sl ice for: a) SCHED_NORMAL (aka SCHED_OTHER) b) SCHED_RR Povolotsky, Alexander
2004-06-30 10:35 ` Ingo Molnar [this message]
2004-06-30 10:50 ` Oliver Neukum
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=20040630103531.GA24347@elte.hu \
--to=mingo@elte.hu \
--cc=Alexander.Povolotsky@marconi.com \
--cc=akpm@osdl.org \
--cc=andrebalsa@altern.org \
--cc=kernel@kolivas.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rgooch@atnf.csiro.au \
--cc=rml@tech9.net \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.