예제 #1
0
 internal HalClockApic(Apic apic, RTClockApic rtClock, PMClock pmClock)
 {
     this.apic      = apic;
     this.rtClock   = rtClock;
     this.pmClock   = pmClock;
     this.hpetClock = null;
     this.spinLock  = new SpinLock(SpinLock.Types.MpHalClock);
 }
예제 #2
0
        internal HalClockApic(Apic apic, RTClockApic rtClock, PMClock /* ! */ pmClock)
        {
            this.apic          = apic;
            this.rtClock       = rtClock;
            this.pmClock       = pmClock;
            this.hpetClock     = null;
            this.tscSnapshot   = 0;
            this.ticksSnapshot = 0;
            int ticksPerKernelTick =
                (int)(Processor.CyclesPerSecond / 10000000);

            this.tickScale  = (1 << tickRoll) / ticksPerKernelTick;
            lastKernelTicks = InternalGetKernelTicks();
        }