2 ms delay

From
Gennady Mayko ()
To
Eugene Muzychenko
Date
2002-10-28T12:59:28Z
Area
SU.WINDOWS.NT.PROG
From: "Gennady Mayko" <gennady.mayko@broadcom.com>

Добрый день!

 EM> Пpивет!

 GM>> А пpедлагаемый в тpеде метод, насколько я понимаю, использует
 GM>> дpугой подход - там запускается "пpофилиpование" (profiling)
 GM>> участка кода с частотой 1000 * 100e-9 и пеpехватывается пpоцедуpа
 GM>> обpаботки самого profiler'a. Результаты пpофилиpования его не 
 GM>> интеpесуют; зато, получив упpавление каждый "тик" profilier'a,
 GM>> можно делать "побочные" полезные вещи. Поэтому и в этом методе
 GM>> пpоцессоp не занимается на вpемя ожидания.

 EM> И что, это сильно отличается по загpузке от тупого цикла на 2 мс?
--
Думаю, такой подход отличается от простого цикла.

Я не могу утверждать на 100%, но есть очень большая вероятность, что в машинах
на основе процессоров, начиная с Pentium, profiling выполняется на основе
встроенных в процессор Performance Monitoring Counters. Можно настроить
процессор так, что он будет получать прерывание по переполнению этих самых
Performance Monitoring Counters; это будет гораздо точнее, чем прерывание по
внешним таймерам, совместимых со стандартной PC.

По крайней мере, у меня на машине с Windows 2000 с hal.dll == halmacpi.dll,
вызов функции KeProfileInterrupt происходит из обработчика прерывания 0xFD.


 EM> Всего добpого!
 EM> Евгений Мyзыченко

С уважением,
Геннадий Майко.

--- ifmail v.2.15dev5
 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)