nyari idoszamitas
Maulis Adam <maulis@ludens.elte.hu>
Kedves kollegak,
Elerkezett a nyari idoszamitas atallitasa. Ujbol. Ez tobb problemat
is felvet, nevezetesen, hogy hol, milyen modszerrel, mit kell
atallitani, hol szarmazhatnak hibak belole, es mire kell figyelni.
Nem sikerult teljes koruen osszeszednem, hogy melyik program
melyik verziojanal mit kell csinalni, igy felkeszen kozszemlere
adom, legyszives javitsatok, potoljatok ki.
Egy kis attekintes, ami osszejott ;)
A mi idoszamitasunk nevei:
CET Central Europian Time
MET Middle Europian Time
Az idozona forrasa megtalalhato az ujabb rendszereknel a
SYS$COMMON:[SYS$ZONEINFO.SYSTEM.SOURCES]EUROPE.;1
fileban, ez egy echte unixos athozatal.
( forditoprogram: $ ZIC )
Teli ido szerint a magyar idozona-kulonbseg: "+0100"
masodpercekben: "3600"
Nyari idoszamitas szerint (angolul: daylight saving) "+0200"
masodpercekben: "7200"
A gond elsosorban a unixbol portolt, illetve C -ben irt
alkalmazasoknal van, lasd a C dokumentaciot:
DEC C Run-Time Library Reference Manual
11.1 Date/Time Support Models
Beginning with OpenVMS Version 7.0, the DEC C RTL
changed its date/time support model from one based on
local time to one based on Universal Coordinated Time
(UTC). This allows the DEC C RTL to implement ANSI C
/POSIX functionality that previously could not be imple-
mented. A UTC time-based model also makes the DEC C
RTL compatible with the behavior of the DIGITAL UNIX
time functions.
Tehat maskepp mukodnek ugyanazok a programok a regi,
es az uj rendszerekben.
Ha valami regi alkalmazas (tipikusan network alkalmazas)
regebbi rendszerben sajat maga szamolgatta az idozonakat,
akkor hibazhat az uj rendszereken.
---------------------------------------------------------------------
Programok, verziok
VMS 6.2 -ig:
eddig a verzioig nem volt kotelezo a rendszerszintu idozona
konfiguracio, altalaban nem is hasznaltak. A legtobbszor
a legtobben siman atallitottak a rendszeridot.
Bár a VMS 6.2-ben mar megvan a SYS$TIMEZONE_DIFFERENTIAL
logikai nev, de hasznalat kozben meg nem lattam.
Ajanlott idoatallitasi modszer:
$ mc sysman
SYSMAN> CONFIGURATION SET TIME "12:38:00"
Ez megoldja azt a problemat, ami a cluster sok VAX tagjanak
idoallitasabol kovetkezne, tehat ez az ajanlott, nem a dcl "set time".
UCX 4.x
Mint a legtobb network produkt, ez is hasznalja az idozona
fogalmat. Ha helyesen lett installalaskor beallitva, (CET, vagy MET)
akkor inditas utan a UCX$TDF (Timezone-DiFerential) logicalt
az aktualis erteknek megfeleloen beallitja "1" vagy "2" -re.
A tcp/ip alkalmazasok ebbol a logikai nevbol veszik (vagy nem?)
Ezt a logikai nevet semmi nem valtoztatja meg menet kozben, tehat
az tavaszi idoatallitaskor ezt is novelni kell "1" -rol "2"-re,
vagy ujrainditani az egesz tcp/ip alrendszert. (van ezzel kapcsolatban
valakinek tapasztalata?)
UCX 5.x
Eleve a VMS 7-es rendszerekhez lett kifejlesztve, igy hasznalja az
oprendszer informacioit, kulon beallitani nem kell.
MatGoat freeware programok: (mx, mgftp)
MDM_TIMEZONE logikai nev, a helyes szintaxis telen "+0100" es
nyaron "+0200".
DecNet phase V (decnet+, decnet-osi)
Rendelkezik sajat idozona-allitasi alrendszerrel, (DTSS) jol
meg tudja kavarni a dolgokat, sajnos nincs ilyen iranyu tapasztalatom.
Masvalaki?
VMS 7.1
Mi van VAX eseteben? Mi van cluster eseteben? Mi van vegyes
cluster eseteben?
Ne allitsd direkt ($ define) a sys$timezone_differential
logikai nevet, ugyanis ekkor senki nem jegyzi fel a rendszerdiszkre
az atallitast, tehat a kovetkezo bootnal csodalkozni fogsz.
Hivatalos ut:
$ @sys$manager:UTC$TIME_SETUP.COM
Ami meghivja tobbek kozott az UTC$CONFIGURE_TDF.COM -ot,
ha jol emlekszem.
Interaktiv, de lehet batch-ban is, lasd
SYS$EXAMPLES:DAYLIGHT_SAVINGS.COM
Az a kerdese, hogy
"Is daylight savings in effect?" nagyjabol azt jelenti, hogy:
"most eppen nyari idoszamitas van?"
Cluster:
Jo esellyel hibas eredmenyre vezet a dokumentacio szerinti
megoldas, ha kozos rendszerdiszku tobb vax gep van a clusterban.
Tapasztalat?
VMS 7.2
Lasd mint fenn. A doksi szerint a ket verzio ebbol a szempontbol
megegyezik, azonban nelem valami kulonbseg remlik, csak nem emlekszem
mi is volt az. Valakinek van tapasztalata ez ugyben?
VMS 7.3
A "konyebb hasznalhatosag vegett" kiemeltek a decnet phaseV -bol
az automatikus teli-nyari idoatallitot, es rendszerszolgaltatassa
tettek.
Javaslom akovetkezo parancsot:
$ @SYS$MANAGER:UTC$TIME_SETUP SHOW
Itt van egy sysgen parameter ( AUTO_DLIGHT_SAV ) amivel
vezerelni lehet, hogy az oprendszer automatikusan atalljon-e
a nyari idoszamitasra, vagy ne. Van valakinek negativ tapasztalata
ez ugyben? Az alkalmazasokat, amennyiben nem alapulnak
a rendszer idozona-informaciojan, ugy is at kell allitani.
Hogy mukodik ez egyutt a tcp/ip csomag NTP (netwotk time protokol)
rendszerevel?
Udv,
Maulis Adam
es elnezest a kisse osszeszedetlen kinezetert.