Re: gradual timeofday overhaul

From: George Anzinger
Date: Thu Oct 21 2004 - 16:28:28 EST


Perez-Gonzalez, Inaky wrote:
From: Richard B. Johnson

You need that hardware interrupt for more than time-keeping.
Without a hardware-interrupt, to force a new time-slice,

for(;;)
;

... would allow a user to grab the CPU forever ...


But you can also schedule, before switching to the new task, a local interrupt on the running processor to mark the end of the timeslice. When you enter the scheduler, you just need to remove that; devil is in the details, but it should be possible
to do in a way that doesn't take too much overhead.

Well, that is part of the accounting overhead the increases with context switch rate. You also need to include the time it takes to figure out which of the time limits is closes (run time limit, profile time, slice time, etc). Then, you also need to remove the timer when switching away. No, it is not a lot, but it is way more than the nothing we do when we can turn it all over to the periodic tick. The choice is load sensitive overhead vs flat overhead.

--
George Anzinger george@xxxxxxxxxx
High-res-timers: http://sourceforge.net/projects/high-res-timers/

-
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/