Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Таймер

691
30 марта 2002 года
Dimitriy
1 / / 20.12.1999
Кто может подсказать, как перехватывать прерывания от таймера? Мне нужно написать резидентную программу на Assemblere, которая через 1 минуту после запуска выводила какое-нибудь сообщение на экран. Может у кого-нибудь есть похожая прграмма?
461
01 апреля 2002 года
gerard
102 / / 20.12.1999
Это довольно просто. Устанавливаете свой вектор прерывания INT 08h (через функцию 25h прерывания 21h), и оно будет вызываться 18.1 раз в секунду. Считаете число вызовов и через соответствующее время делаете то, что вам нужно. Только не забудьте после этого восстановить старый вектор (ведь прерывание могут использовать и другие программы).
Аноним
Это интересно конечно, но у меня другая проблема: про 1/18.2 с я знаю, а мне нужно где-то 10 000 - 20 000 раз в секунду... Мож кто знае как повесить такой таймер и желательно под win32. Я тут нашел счетчик тактов процессора. Но привязки к нему нет, я могу только прочитать его значение... Буду очень признателен если кто-ньть пнет меня к документации по созданию драйверов под win32 чтоб можно было повесить прерывание, которое бы вызывалость более 18.2 раз в секунду.
AlexII
572
01 апреля 2002 года
Chingachguk
29 / / 20.01.2000
Мне кажется, что величин >10000 добится не получится ...
Есть такая апи - GetTickCount. Дает весьма плавающие тики, причем сильно зависит от числа задач, но на асме работает достаточно стабильно (вызовы в цикле примерно по ~220 мкс на P120,win98). Реально эта апи - выдача значения ячейки, которую обновляет система(ф-ция Update_System_Clock) - ось и комп те же - с частотой примерно ~180мкс. Параметры, судя по всему, зависят от настройки системой таймера.
Отсюда вроде бы следует, что максимальная частота прерываний в системе вообще - около 5000 прерываний/секунду. Не думаю, что из VXD(WDM) можно перепрограммировать таймер в вин на другую частоту ... Хотя...
Инфу по написанию драйверов под win32 можно получить из DDK.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог