HPET: различия между версиями

[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Строка 10:
== Применение ==
HPET способен создавать прерывания существенно большей точности, чем [[RTC]] и часто используется для синхронизации мультимедиа-приложений для обеспечения плавного воспроизведения и снижения необходимости рассчитывать временные отметки (например, с использованием инструкции [[RDTSC]]).
<br />Но, это применимо только для простых ОС вроде ДОС и возможно примитивных многозадачных real-time ОС, в более навороченных - либо не используется, либо даже просто теоретически - эффект минимален, по целому ряду технических причин, в сравнии с старыми методами, тем более RDTSC, при грамотной его реализации.
 
Но,<br это/>Точнее применимоэфеект только для простых ОС вроде ДОС и возможно примитивных многозадачных real-time ОС, в более навороченных - либо не используется, либо даже просто теоретически - эффект минимален, по целому ряду технических причин, в сравнии с старыми методами, тем более RDTSC, при грамотной его реализации. Точнее даже отрицателен - в связи с худшей точности чем rdstsc, не требующей обращения к ОС KERNEL и обработки прерывания; большей CPU-нагрузкой при использовании вместо RDTSC - даже тот же QueryPerformanceCounter() в HPET режиме по заявлению MS<ref>[http://www.microsoft.com/whdc/system/sysinternals/mm-timer.mspx Guidelines For Providing Multimedia Timer Support<!-- Заголовок добавлен ботом -->]</ref> всего на 23% быстрее PM реализации - т.е.ничто, в сравнении с разрекламированными увеличениями производительности, учитывая сумашедший overhead в том же PM режиме (<small>всего 6301 calls/s ...причём это ещё на очень "неслабом" оборудовании</small>); для разработчиков ОС и затем их пользователей ещё и головную боль с драйверами; потерей совместимости с предыдущими версиями ОС(<small>тем более в сл.MS - это не просто версии, а "отдельно продаваемые ОС"</small>) не поддерживающими HPET; либо повышением времени разработки для обеспечения этой совместимости; ...
 
== Точность ==