Thursday, January 20, 2011

Temp plan on a new hacking into the kernel

1. use breakpoints
2. page remapping review
3. use them together to see if the breakpointing works or not

Wednesday, January 19, 2011

Interesting Tools

PowerTop ... shows context switching
turbostat ... new stat collecting tool since 2.6.38+

Tuesday, March 17, 2009

working with awk

Let's see how it goes, i am still not sure ... will update this post.

Monday, March 16, 2009

notes on linux scheduling

(ref: PLKA_CH02)

each task has a scheduling entity embedded inside it. scheduling mechanism used that entity. this is helpful for group scheduling.

5 policies: normal, batch, idle, rr, fifo

generic scheduler is a hub of individual scheduling methods. the scheduler has become modular in newer kernel version.

there is no mechanism to add new scheduler classes dynamically at run time.

'run_queue' can have different shapes. for example, a round-robin scheduling class has a straight queue of processes as the run queue. but a completely fair scheduler uses a red-black tree as its run queue.

scheduler implementation is based on two functions: the periodic scheduler [scheduler_tick()] and the main scheduler [schedule()].

run queue contains only the runnable tasks. the currently running task is not on the run queue.

nr_running counter keeps track of currently available runnable tasks in the run queue (or rb tree).

CFS = complete fair scheduling