Re: Linux timekeeping plans

MOLNAR Ingo (mingo@chiara.csoma.elte.hu)
Thu, 3 Dec 1998 17:59:00 +0100 (CET)


On Thu, 3 Dec 1998, Colin Plumb wrote:

> > this timekeeping architecture is already in place. The concept is: all
> > processors have a 'local' interrupt, which is used for profiling, process
> > time accounting and process timeslice rescheduling. And there is a global
> > external interrupt that expires timers.
>
> Yes, I have seen this. On the x86, one processor gets the timer tick
> and does the tick processing for the system. Then it signals all the
> other processors (via an inter-processor interrupt) to do per-processor
> scheduling, and falls through itself. (An alternative would be to send an
> interrupt to every processor including itself. That might be simpler
> on some systems.)

no, this has changed in 2.1. Now we use the local APIC timer interrupt
(which is synchronized with the TSC) to generate local interrupts, thus
the two types of interrupts are completely independent. It's simpler,
faster and raceless this way. (SparcLinux does it similarly, the idea came
from there originally)

-- mingo

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