lkml.org 
[lkml]   [2004]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectLinux scheduler (scheduling) questions
Date
Hello Everyone,

I have "general" Linux OS scheduling questions, especially with regards
as those apply to the (latest) Linux 2.6 scheduler features (would really
appreciate if whether/when/while answering those questions listed below,
you could pinpoint differences between Linux 2.6 and Linux 2.4 !):

0. I was told that the Linux kernel could be configured with one of the 3
(? ) different scheduling policies - could someone describe
those to me in details ?

1. How rescheduling is "induced" in above scheduling policies ?
Does at least one of above mentioned scheduling policies uses "clock
tick" as a scheduling event ?
Also, releasing mutex lock (semaphore) in Linux application/user-space
task - is it considered (by the sched) as a
"rescheduling event" ? - (in addition to "clock tick" event) - this is
true for PSOS / VxWorks RTOSes.

2. Linux 2.6 (I was told it is the same for Linux 2.4.21-15) has priorities
0-99 for RT priorities and 100-139 for normal (SCHED_NORMAL) tasks.

> I presume that priorities 0-99 are "recommended" (or enforced ?) for
> Linux kernel "native" tasks ... and "out or reach" for application
> tasks (unless one dares to merge application into the Linux kernel,
> masquerading it as a "system level command" - did anyone tried this ? -
> I presume it is not recommended ... ) ?
>
Under what priority the OS system calls are executed ?

3. Is priority inversion and its prevention (priority inheritance or
priority ceilings) applicable to Linux ) for application/user-space tasks (
with priorities in the range 100-139) ?
> Similar question for the situation when the "application" process
> executes "OS system call" in the kernel address space ?
> Similar question for the RT tasks (which I presume are Linux kernel
> "native" tasks, always executing in the kernel address space ? ) ?
>
4. What about scheduling threads ? - as I have understood (from the FAQ on
http://www.tux.org/lkml/ ), threads in Linux are implemented in the kernel
space - is this information up to date, i.e. - is it applicable to Linux 2.6
? and what it actually means
(does it mean that threads are always running in the kernel space ? - that
sounds a bit strange ...).
With what priorities threads are running ? - do those priorities depend on
the priority of the application/user space process from which the clone
system call was made ?).
5. Deviating from the scheduling line of questions (but staying with threads
issues): is there an option in clone(2) to make threads
not to run in the same address space but rather act as independent
process(es).

> Thanks,
> Best Regards,
> Alex Povolotsky
-----Original Message-----
From: Ingo Molnar [mailto:mingo@elte.hu]
Sent: Monday, June 28, 2004 10:40 AM
To: Povolotsky, Alexander
Subject: Re: Any differences (between 2.4 and 2.6) in Linux kernel
scheduling

Alexander,

you might want to post your questions to linux-kernel@vger.kernel.org
(or some other, RT related mailing list). The scheduler is described in
a rudimentary way in Documentation/sched-design.txt, sched-coding.txt,
with no focus on RT though.

Ingo

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

\
 
 \ /
  Last update: 2005-03-22 14:04    [W:0.652 / U:0.136 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site