Következő: 15.60.6 FÁJLOK
Fel: 15.60 hwclock(1)
Előző: 15.60.4 OPCIÓK
  Index
Órák egy Linux rendszerben. Egy Linux rendszerben két fő óra van:
- A Hardveróra
- Ez egy olyan óra, ami bármely programtól függetlenül fut,
még akkor is, ha a gép ki van kapcsolva. Az ISA szabvány részeként van
meghatározva. Egy vezérlő program ki tudja ezt az órát olvasni, vagy be tudja
állítani. Lehetséges az 1 másodperces impulzusok kezdetének érzékelése, így az
órának látszólag végtelen lehet a pontossága. Ezt az órát nevezik
hardverórának, 'real time clock'-nak, 'RTC'-nek, valós idejű órának, BIOS
órának, vagy CMOS órának is.
- A Rendszeróra
- Ez az az idő, amit a Linux kernelen belüli óra mutatni
tud, és az ISA időzítő megszakítása vezérli. Csak akkor van értelmezve, ha a
Linux fut. A Rendszeridő az 1970. január 1. 00:00:00 óta eltelt időt
tartalmazza másodpercekben. Ennek ellenére a Rendszeridő nem egész szám, így a
pontossága tetszőlegesen javítható.
A Rendszeróra tartalmazza azt az időt, ami fontos számunkra. A Hardveróra
alapvető feladata bármely rendszerben az, hogy az óra akkor is fusson, amikor
a gép ki van kapcsolva. Amikor elindul a Linux rendszer, beállítja a
Rendszerórát a Hardverórához, így a Hardverórát ezután nem használjuk.
Megjegyezzük, hogy a DOS operációs rendszerekben (illetve az arra épülő egyéb
rendszerekben) - amihez az ISA tervezve lett - a Hardveróra az egyetlen valós
idejű óra. Fontos, hogy a date(1L) használatával ne okozzunk időugrást a
Rendszerórában, amikor a rendszer fut. Ezzel szemben a Hardverórát
tetszőlegesen lehet állítani, mialatt a rendszer fut. Mint programozó,
használhatod az adjtimex(8) programot is a Rendszeróra beállításához.
Az 'Adjust', vagyis 'Beállítás' funkció
A Hardveróra általában nem túl pontos. Azonban a pontatlanság nagyrészt jól
kezelhető, mert az óra azonos mértékű időt siet vagy késik minden nap. Ezt
rendszeres időeltérésnek nevezhetjük. A hwclock program 'adjust'
funkciója teszi lehetővé azt, hogy rendszeres kiigazítást végezzünk ennek
a rendszeres időeltérésnek a kiküszöbölésére.
Röviden : A hwclock a /etc/adjtime fájlban tárol néhány
információt, ami az óra pontosításához szükséges. Tegyük fel kiindulásként,
hogy nincs 'adjtime' fájlunk. Ekkor kiadhatjuk a
hwclock -set -date=... parancsot, hogy a Hardverórát beállítsuk
a megadott időhöz. A hwclock program létrehozza az adjtime fájlt
és beleírja az aktuális időt. Ez egyúttal az óra beállításának az utolsó ideje
is lesz. Tegyük fel, hogy mondjuk 5 nap alatt az óra 10 másodpercet siet, így
újból kiadjuk a hwclock -set -date=... parancsot, hogy
visszaállítsuk a 10 másodpercet. A hwclock program frissíti az
adjtime fájlt, beleírja az utolsó órabeállítás időpontját, és rögzíti
benne, hogy az óra napi 2 másodpercet siet. 24 óra elteltével újból kiadhatjuk
a hwclock -adjust parancsot. A hwclock program megnézi az
adjtime fájlt, látja benne, hogy az óránk napi 2 másodpercet siet, és
most már éppen eltelt egy nap. Igy kivon 2 másodpercet a Hardverórából.
Rögzíti a fájlban az aktuális időt, mint az utolsó beállítás időpontját.
Minden alkalommal, amikor beállítjuk az órát a -set opcióval, a
hwclock újra kiszámolja a rendszeres idő-eltérés mértékét, figyelembe
véve, hogy mikor volt utoljára pontosítva az óra, milyen idő-eltérés volt
korábban kiszámolva, és hogy jelenleg mennyivel tér el az óra. Egy kis hiba
az óra beállításába mindig becsúszik, amikor a hwclock programmal
szeretnénk pontosítani az órát, így a hwclock nem hajtja végre azokat
a beállításokat, amikor az eltérés kevesebb 1 másodpercnél. Hasznos egy
hwclock -adjust parancsot kiadni közvetlenül a
hwclock -hctosys parancs előtt a rendszer indításakor, illetve
akkor is, ha a cron segítségével végeztetjük a beállítást.
Az /etc/adjtime fájl formátuma:
- 1.
- sor: 3 számból áll:
- rendszeres idő-eltérés másodperc / nap mértékegységben, lebegőpontos,
decimális kijelzéssel;
- az utolsó beállítás ideje 1970. jan. 1. óta, másodpercekben, decimális
egész szám;
- nulla, a clock programmal való kompatibilitás miatt.
- 2.
- sor: 1 számból áll :
A legelső beállítás ideje másodpercben 1970. jan. 1. óta.
Használhatod a hwclock programhoz azt az 'adjtime' fájlt, amit
előzőleg a clock programmal hoztál létre.
Következő: 15.60.6 FÁJLOK
Fel: 15.60 hwclock(1)
Előző: 15.60.4 OPCIÓK
  Index
1999-09-17