Gurus, a silly question for preemptive behavior

From: jesse
Date: Mon Dec 20 2004 - 21:44:56 EST



As i know, in linux, user space application is
preemptive at any time. however, linux kernel is NOT
preemptive, that means, even some event is finished,
Linux kernel scheduler itself still can't have
opportunity to interrupt the current user application
and switch it out. it is called scheduler latency.
normally , the latency is about 88us in mean , maximum
: 200ms. Thus, the short latency shouldn't impact user
applications too much and is not a problem. It is an
issue in those embedded voice processing systems by
introducing jitters, thus smart people came up with
two kernel schedule patch: preemptive patch and low
latency patch.

My application which has nice value as 10 of low
priority, however, it holds the CPU and excludes other
applciations that have higher priority (nice 0) to
run, my application causes CPU pegging.

Thus, I am wondering: why user space application
can't be effectively interrupted? why there is CPU
pegging? Could you please educate me
on this particular issue and shed me some light to
address it?

my system:
[root@sa-c2-7 proc]# uname -a
Linux sa-c2-7 2.4.21-15.ELsmp #1 SMP Thu Apr 22
00:18:24 EDT 2004 i686 i686 i386 GNU/Linux

thanks!
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/