I think the chapter 2 of Professional Linux Kernel Architecture will
be helpful to understand the CFS. It not only describes the concept
but source code exploring.

2012/3/20 Glenn Kasten <gkas...@android.com>:
> I'm sorry but generic Linux is beyond the scope of this group. I suggest
> doing a web search for the specific topics you're interested in.  However,
> here are a few links to help you get started:
>   http://en.wikipedia.org/wiki/Completely_Fair_Scheduler
>   http://www.ibm.com/developerworks/linux/library/l-completely-fair-scheduler/
>   http://www.kernel.org/doc/Documentation/scheduler/sched-design-CFS.txt
>   http://lxr.linux.no/linux+v3.3/kernel/sched/fair.c
>
> On Monday, March 19, 2012 10:22:20 AM UTC-7, Deborah wrote:
>>
>> Glenn thanks for your reply! I'm really confused. Could you explain
>> how the CFS work?
>> Does it divide the CPU time into epochs?
>> In a single epoch, has every process a specified time quantum that is
>> computed at the beginning of each epoch?
>> If yes, is  'virtual runtime' set to zero in each epoch or is it  an
>> approximated average?
>> Help please!!! :(
>>
>>
>> On Mar 19, 4:21 pm, Glenn Kasten <gkas...@android.com> wrote:
>> > Threads voluntarily assign themselves a nice priority within the
>> > permitted
>> > range, and activity manager assigns threads of an app process to an
>> > appropriate cpuctl cgroup.
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> > On Friday, March 16, 2012 6:38:57 AM UTC-7, Deborah wrote:
>> >
>> > > I am trying to get a better understanding on ANDROID CFS. I have some
>> > > doubt on scheduler's behavior.
>> > > The difference between Android scheduler and Linux scheduler
>> > > Scheduler
>> > > — 5 files — The Android kernel also contains slight changes to the
>> > > CPU
>> > > process scheduler and time-keeping algorithms. We don’t know the
>> > > history of these changes, and the impact was not evident based on a
>> > > cursory examination.
>> > > Do you know which are this files?
>> > > If I understand, Process.THREAD_PRIORITY_DEFAULT or
>> > > Process.THREAD_PRIORITY_BACKGROUND are 'nice' value. How does Android
>> > > convert 'nice' value in 'timeslice'?
>> > > What is the initial value of 'virtual runtime' in Android and how to
>> > > calculate?
>> > > In Android, is 'cgroups' use to define scheduling classes? The
>> > > following application states: (i) Foreground process - Critical
>> > > priority; (ii) Visible process and Service process - High priority;
>> > > (iii) Background process and Empty process - Low priority; are three
>> > > scheduling classes ?
>> > > Thanks in advance,
>> > > Deborah
>> >
>> > On Friday, March 16, 2012 6:38:57 AM UTC-7, Deborah wrote:
>> >
>> > > I am trying to get a better understanding on ANDROID CFS. I have some
>> > > doubt on scheduler's behavior.
>> > > The difference between Android scheduler and Linux scheduler
>> > > Scheduler
>> > > — 5 files — The Android kernel also contains slight changes to the
>> > > CPU
>> > > process scheduler and time-keeping algorithms. We don’t know the
>> > > history of these changes, and the impact was not evident based on a
>> > > cursory examination.
>> > > Do you know which are this files?
>> > > If I understand, Process.THREAD_PRIORITY_DEFAULT or
>> > > Process.THREAD_PRIORITY_BACKGROUND are 'nice' value. How does Android
>> > > convert 'nice' value in 'timeslice'?
>> > > What is the initial value of 'virtual runtime' in Android and how to
>> > > calculate?
>> > > In Android, is 'cgroups' use to define scheduling classes? The
>> > > following application states: (i) Foreground process - Critical
>> > > priority; (ii) Visible process and Service process - High priority;
>> > > (iii) Background process and Empty process - Low priority; are three
>> > > scheduling classes ?
>> > > Thanks in advance,
>> > > Deborah
>
> --
> unsubscribe: android-kernel+unsubscr...@googlegroups.com
> website: http://groups.google.com/group/android-kernel



-- 
Regards,
Gaggery

-- 
unsubscribe: android-kernel+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-kernel

Reply via email to