lkml.org 
[lkml]   [2009]   [Oct]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: How to add scheduler
On 27/10/09 17:30, Pankaj Parakh wrote:
> On Sat, Oct 24, 2009 at 6:07 AM, Peter Williams<pwil3058@bigpond.net.au> wrote:
>> On 24/10/09 01:10, Pankaj Parakh wrote:
>>>
>>> Hi Peter,
>>>
>>> Thanks for showing your interest, I am student and I am working on a
>>> project similar to yours i.e. to have a facility where in one can swap
>>> scheduler in run-time, but I am in very initial state of learning so I
>>> wanted to try a simple RR scheduler, objective of doing it is to learn
>>> about different interfaces in modular design(introduced from 2.6.23
>>> with CFS). I do not have any constraint with version of linux. I am
>>> ready to take part with you provided you do not have any issue.
>>
>> No. That's good.
>>
>> I've attached two patches which contain the work I've done so far. They
>> should be applied in the following order:
>>
>> define_prelim_cpu_pisch_drv.patch
>> implement_spbrr_cpu_pisch_dvr.patch
>>
>> and will result in two schedulers: the default CFS 'fair' (cfs_fair)
>> scheduler and a simple priority based round robin (spbrr) scheduler; being
>> available for selection at boot time and run time.
>>
>> To select a scheduler at boot time just add 'cpu_pisch=cfs_fair' or
>> 'cpu_pisch=spbrr' to the boot command line.
>>
>> To select a scheduler at run time (as root) do:
>>
>> echo -n 'cfs_fair'> /sys/kernel/cpu_pisch/name
>>
>> or
>>
>> echo -n 'spbrr'> /sys/kernel/cpu_pisch/name
>>
>> The first step in adding your own scheduler would be to make a copy of the
>> file kernel/cpu_pisch_spbrr.c and then modify it. You will also need to
>> modify:
>>
>> kernel/sched.c
>> kernel/cpu_pisch_drv.c
>> kernel/Kconfig.cpu_pisch
>>
>> Hopefully, the required changes are obvious. If not don't hesitate to ask
>> questions. Also if you feel the need to modify the scheduler interface
>> (defined in include/linux/cpu_pisch_drv.h) feel free BUT think very
>> carefully about it and try not to make things too complex.
>>
>> I am working on another scheduler (a simple entitlement based round robin
>> (sebrr) scheduler) which I hope to have finished before I publicly release
>> the patches.
>>
>> If you wish to have your scheduler included just send it to me as a patch
>> which applies on top of the ones that I've attached.
>>
>> Cheers
>> Peter
>> --
>> Peter Williams pwil3058@bigpond.net.au
>>
>> "Learning, n. The kind of ignorance distinguishing the studious."
>> -- Ambrose Bierce
>>
>
> Hi Peter,
>
> To which version of Linux Kernel should I apply the given patch.
>
>

Those patches were against 2.6.32-rc5 but they may also apply cleanly to
later versions.

--
Peter Williams pwil3058@bigpond.net.au

"Learning, n. The kind of ignorance distinguishing the studious."
-- Ambrose Bierce


\
 
 \ /
  Last update: 2009-10-28 07:03    [W:0.293 / U:0.076 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site