Časovač (počítač)

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Časovač je v informatice položka, která měří časový interval. V počítačovém kontextu se časovač používá ke generování přerušení po stanoveném časovém intervalu nebo jako číslicový časovač pro různé účely, například měření frekvence procesoru. Časovač může být implementován jako hardwarová součástka nebo softwarový inkrementální čítač. Ve většině moderních počítačů je k dispozici několik časovačů se různými funkcemi a schopnostmi. Naprogramování časovače zahrnuje inicializaci, nastavení a čtení hodnoty časovače, a také obsluhu přerušení, které vyvolá časovač. Použití časovačů je základem pro správu časových intervalů v různých aspektech počítačových systémů.

Časovač je v informatice název hardwarového zařízení v počítači, které umožňuje s vysokou přesností odměřovat čas. Časovač může být také označení softwarové implementace reakce programu na uplynutí určitého času (například timeout). Časovač obecně slouží k asynchronnímu řízení vykonávání strojového kódu. Hardwarové časovače využívá operační systém pro řízení multitaskingu a plánování dalších důležitých událostí, které jsou závislé na reálném čase. Časovač může být umístěn ve specializovaném integrovaném obvodu, v čipsetu nebo přímo v procesoru.

...

Princip

Většina počítačů obsahuje jeden nebo více hardwarových časovačů. Obvykle jsou to čítače, které program nastaví na nějakou hodnotu, která se následně automaticky snižuje. +more V okamžiku, kdy dosáhne nuly, je vyvoláno přerušení, které je doručeno procesoru. Časovač umožňuje procesoru zpracovávat během měření času jiné úlohy, čímž snižuje režii systému a zvyšuje jeho výkon. Odstraňuje tedy tzv. aktivní čekání pomocí naprogramovaného cyklu nebo specializované instrukce (například RDTSC v procesorech x86), během kterého nelze jinou činnost vykonávat. Časovač může pracovat v jednorázovém režimu, kdy je přerušení vykonáno po vypršení časovače nebo v periodickém režimu, kdy je přerušení vyvoláváno periodicky po uplynutí nastaveného fixního času (například každou 1 milisekundu).

Protože je počet hardwarových časovačů v počítači omezen a není možné předpokládat, že budou stačit pro všechny účely, je možné používat jen jeden časovač, který obsluhuje operační systém a vytváří k němu softwarovou časovou frontu. Hardwarový časovač se pak používá k odměření času zbývajícího do první události v časové frontě. +more Ve frontě jsou události řazeny podle času, takže nejbližší událost je první. Po uplynutí času nastaveného v časovači do první události je časovačem vyvoláno přerušení, které vyvolá obsluhu přerušení uvnitř operačního systému, která obsluhuje čekací frontu. V obsluze přerušení je z fronty odebrána událost, která přerušení vyvolala, časovač je nastaven na čas zbývající do následující události ve frontě a aktuální (vyřazená) událost je předána k vyřízení.

Použití

Časovač se v počítači používá pro řízení multitaskingu (přidělování časových kvant) a dalších časově závislých událostí (například vypršení času vymezeného na příjem odpovědi při komunikaci v počítačové síti). Časovač je základním mechanismem pro zajištění preemptivního multitaskingu.

Hodiny reálného času (RTC)

Obvod s RTC na základní desce počítače IBM PC (značka Dallas) Hodiny reálného času jsou integrovaný obvod, který udržuje informaci o aktuálním čase v počítačích, embedded systémech, a dalších elektronických zařízeních. +more V IBM PC kompatibilních počítačích byl na základní desce jako samostatný integrovaný obvod, který je napájen lithiovou baterií. Jeho programování je časově náročné, a proto se nepoužívá pro periodické vyvolávání přerušení (na to se používá PIT - viz dále). V současné době je RTC na základních deskách integrován do čipsetu (southbridge).

Programmable Interval Timer (PIT)

Programmable Interval Timer je nejstarší používaný časovač v počítačích IBM PC kompatibilních (obvody Intel 8253 a Intel 8254). Obsahuje tři čítače: časovač číslo 0 používají operační systémy (Microsoft Windows, Linux a další) jako systémový časovač, časovač číslo 1 je z historických důvodů použit pro obnovování paměti RAM a časovač číslo 2 pro PC speaker.

High Precision Event Timer (HPET)

High Precision Event Timer byl společně vyvinut firmami Intel a Microsoft. Původně byl označován jako Multimedia Timer a umožňuje vyšší a přesnější rozlišení času (například pro synchronizaci multimédií). +more Na rozdíl od RTC a PIT je jeho programování efektivní, takže je výhodné ho využívat i pro jednorázová přerušení. Aby ho operační systém mohl používat, musí být speciálně upraven, takže funguje jen na novějších systémech - Windows Vista, Windows 2008, x86 verzích Mac OS X, Linux 2. 6 a FreeBSD. Windows XP obsahuje nefunkční ovladač HPET. Jeden HPET blok obsahuje 3 až 32 časovačů a bloků může být až osm. Časovač přičítá a po dosažení hodnoty nastavené v registru vyvolá přerušení.

Reference

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top