Программируемый таймер: различия между версиями
[отпатрулированная версия] | [отпатрулированная версия] |
Создано переводом страницы «Programmable interval timer» |
викификация |
||
Строка 1: | Строка 1: | ||
⚫ | '''Программируемый таймер''', '''программируемый интервальный таймер''' ({{Lang-en|'''programmable interval timer'''}}''',''' {{Lang-en2|'''PIT'''}}) — в [[Центральный процессор|вычислительной технике]] и во [[Встраиваемая система|встроенных компьютерных системах]] представляет собой [[Счётчик (электроника)|счетчик]], который генерирует сигнал при достижении запрограммированного значения. Выходной сигнал {{Lang-en2|PIT}} может вызвать [[прерывание]]. |
||
⚫ | '''Программируемый таймер''', '''программируемый интервальный таймер''' ({{Lang-en|'''programmable interval timer'''}}''',''' {{Lang-en2|'''PIT'''}} |
||
== Общие черты == |
== Общие черты == |
||
Строка 8: | Строка 7: | ||
== PIT в IBM PC и совместимых с ним компьютерах == |
== PIT в IBM PC и совместимых с ним компьютерах == |
||
В [[IBM-PC-совместимый компьютер|компьютерах, совместимых с IBM PC]] |
В [[IBM-PC-совместимый компьютер|компьютерах, совместимых с IBM PC]], первым {{Lang-en2|PIT}} был таймер в [[Intel 8253]]. Это было оригинальное устройство синхронизации, которое использовало [[тактовый сигнал]] 1,193182 [[Герц (единица измерения)|МГц]] (это 1/3 частоты {{Iw|цветовая синхронизация видеосигнала|цветовой синхронизации|en|color burst}} видеосигнала [[NTSC]], 1/12 частоты системного [[Кварцевый генератор|кварцевого генератора]]<ref>{{Cite web|url=http://www.osdever.net/bkerndev/Docs/pit.htm|title=The Programmable Interval Timer|website=Bran's Kernel Development Tutorial|date=|publisher=Osdever.net|access-date=2013-10-30}}</ref>, а также одна четверть тактовой частоты процессора 4,77 МГц) и содержит три таймера. Таймер 0 используется в [[Windows|Microsoft Windows]] (однопроцессорный) и [[Linux]] в качестве системного таймера, таймер 1 исторически использовался для [[DRAM|динамического обновления оперативной памяти,]] а таймер 2 — для [[Динамик ПК|динамика ПК]]<ref>{{Cite web|url=http://wiki.osdev.org/Programmable_Interval_Timer|title=Programmable Interval Timer|lang=en|website=OSDev Wiki|date=2012-06-26|access-date=2013-10-30}}</ref>. |
||
[[APIC|LAPIC]] в новых компьютерных системах Intel предлагает таймер с более высоким разрешением (одна микросекунда)<ref name="timer">''Walter U.'' [http://telematics.tm.kit.edu/publications/Files/61/walter_ibm_linux_challenge.pdf μ-second precision timer support for the Linux kernel]. / Uwe Walter, Vincent Oberle. |
[[APIC|LAPIC]] в новых компьютерных системах Intel предлагает таймер с более высоким разрешением (одна микросекунда)<ref name="timer">''Walter U.'' [http://telematics.tm.kit.edu/publications/Files/61/walter_ibm_linux_challenge.pdf μ-second precision timer support for the Linux kernel]. / Uwe Walter, Vincent Oberle. — 4 p.</ref>. Этот таймер используется вместо таймера PIT в [[Ядро Linux|ядрах Linux,]] начиная с версии 2.6.18<ref>[http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1005802 Determining and changing the rate of timer interrupts a guest operating system requests] : KB1005802. / [[VMware]].</ref>. |
||
== См. также == |
== См. также == |
||
* [[HPET|Высокоточный таймер событий]] |
* [[HPET|Высокоточный таймер событий]] |
||
* [[Мультивибратор|Моностабильный мультивибратор]] |
* [[Мультивибратор|Моностабильный мультивибратор]] |
||
Строка 22: | Строка 20: | ||
== Ссылки == |
== Ссылки == |
||
* {{Публикация|статья|заглавие=High Performance Windows Timers|ссылка=http://www.luxford.com/high-performance-windows-timers|год=2022|ref=Luxford|язык=en|издание=Luxford Development Knowledgebase}} |
* {{Публикация|статья|заглавие=High Performance Windows Timers|ссылка=http://www.luxford.com/high-performance-windows-timers|год=2022|ref=Luxford|язык=en|издание=Luxford Development Knowledgebase}} |
||
* {{Cite web|url=https://stackoverflow.com/questions/10567214/what-are-linux-local-timer-interrupts|title=What are Linux Local timer interrupts?|lang=en|author=Manuel Selva|website=Stack Owerflow Questions|date=2012-05-12}} |
* {{Cite web|url=https://stackoverflow.com/questions/10567214/what-are-linux-local-timer-interrupts|title=What are Linux Local timer interrupts?|lang=en|author=Manuel Selva|website=Stack Owerflow Questions|date=2012-05-12}} |
Версия от 07:35, 9 июня 2024
Программируемый таймер, программируемый интервальный таймер (англ. programmable interval timer, PIT) — в вычислительной технике и во встроенных компьютерных системах представляет собой счетчик, который генерирует сигнал при достижении запрограммированного значения. Выходной сигнал PIT может вызвать прерывание.
Общие черты
PIT могут быть однократными (одноразовыми) или периодическими. Одноразовые таймеры подадут сигнал только один раз, а затем прекратят отсчет. Периодические таймеры сигнализируют каждый раз, когда они достигают определенного значения, а затем перезапускаются, таким образом создавая периодический сигнал через равные промежутки времени. Периодические таймеры обычно используются для запуска действий, которые должны выполняться регулярно через равные промежутки времени.
Счетчики PIT обычно программируются с фиксированными интервалами, которые определяют, как долго таймер будет считать, прежде чем выдаст сигнал.
PIT в IBM PC и совместимых с ним компьютерах
В компьютерах, совместимых с IBM PC, первым PIT был таймер в Intel 8253. Это было оригинальное устройство синхронизации, которое использовало тактовый сигнал 1,193182 МГц (это 1/3 частоты цветовой синхронизации[англ.] видеосигнала NTSC, 1/12 частоты системного кварцевого генератора[1], а также одна четверть тактовой частоты процессора 4,77 МГц) и содержит три таймера. Таймер 0 используется в Microsoft Windows (однопроцессорный) и Linux в качестве системного таймера, таймер 1 исторически использовался для динамического обновления оперативной памяти, а таймер 2 — для динамика ПК[2].
LAPIC в новых компьютерных системах Intel предлагает таймер с более высоким разрешением (одна микросекунда)[3]. Этот таймер используется вместо таймера PIT в ядрах Linux, начиная с версии 2.6.18[4].
См. также
Примечания
- ↑ The Programmable Interval Timer . Bran's Kernel Development Tutorial. Osdever.net. Дата обращения: 30 октября 2013.
- ↑ Programmable Interval Timer (англ.). OSDev Wiki (26 июня 2012). Дата обращения: 30 октября 2013.
- ↑ Walter U. μ-second precision timer support for the Linux kernel. / Uwe Walter, Vincent Oberle. — 4 p.
- ↑ Determining and changing the rate of timer interrupts a guest operating system requests : KB1005802. / VMware.
Ссылки
- High Performance Windows Timers : [англ.] // Luxford Development Knowledgebase. — 2022.
- Manuel Selva. What are Linux Local timer interrupts? (англ.). Stack Owerflow Questions (12 мая 2012).
- Timing on the PC family under DOS