Unixos rendszerek Y2K hibája
2003. december 22. 09:31, hétfő
A világon több tízezer számítógép válik használhatatlanná néhány hét múlva amiatt a meglehetősen homályos dátumhiba miatt, amelyre a fejlesztők rohammunkával készítik a javítást. A hiba bizonyára sokak számára ismerős.

Hirdetés

A tervezők és mérnökök számára termékéletciklus-kezelő alkalmazásokat fejlesztő PTC szoftvergyártó szerint ez a hiba meglehetősen emlékeztet a 2000-es év hibájára (Y2K). Itt olyan hibára keresik a megoldást, amely január 10 után működésképtelenné teszi a legtöbb terméket.

A hibát a múlt héten fedezték fel, és a PTC mérnökei azóta éjt nappallá téve készítik és tesztelik a patcheket, mondta Joe Gavaghan, a PTC szóvivője. A vállalat legelterjedtebb termékeire pénteken kiadtak két javítófoltot, a többi alkalmazásra most készül a javítás.

A hiba egyik oka a programok dátumbejegyzések kezelési módja, mondta Gavaghan. A dátum felismeréséhez a PTC programozóinak végtelen nagyra kellett állítani a dátum értékét, melyet 1970, azaz a Unix operációs rendszer kifejlesztése óta 2 milliárd másodpercre állítanak. 1970 egyébként nagyon sok unixos alkalmazás nulla éve is.

A Unix is nagyon hasonló módon kezeli a dátumot: a fejlesztők végtelen nagy értékként a 4 milliárd másodpercet választották, és ez a legnagyobb szám, melyet 32 bites operációs rendszer le tud kezelni. Ez ugyanakkor azt is jelenti, hogy a legtöbb unixos program 2038-ig lesz működőképes. "A hiba gyökerei a Pro/Engineer termékünk 20-as verziójáig, azaz 1997-ig nyúlnak vissza, és az újabb verziókban, valamint a termékek telepítéséhez használt szoftverekben is bennemaradt" - mondta Gavaghan.

A PTC ügyfeleinek nagy része pozitívumként értékelte, hogy a társaság azonnal és ködösítés nélkül értesítette őket, többen azonban nemtetszésüket fejezték ki a bejelentés időzítése miatt, mert a munkahelyeken tesztelni és telepíteni kell a javításokat, ez pedig tönkreteszi a karácsony utáni pihenést.

Gavaghan elmondása szerint a javítások a végtelen értékét 4 milliárd másodpercre módosítják, és ezáltal néhány évtizeddel meghosszabbítják a PTC termékeinek élettartamát. A későbbi verziók már dátumfüggetlenek lesznek, tette hozzá Gavaghan.
Laptopok

Már 49 900 Ft-tól!

E-book olvasók

Már 17 043 Ft-tól!

Tablet PC-k

Már 23 140 Ft-tól!

LCD monitorok

Már 19 800 Ft-tól!

részletek » részletek » részletek » részletek »
Megosztás
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
 

IT/Tech, Hardver
Tudomány, Mobil, Film, Játék
Hirdetés



Hozzászólások
A témához csak regisztrált és bejelentkezett látogatók szólhatnak hozzá!
Bejelentkezéshez klikk ide
(Regisztráció a fórum nyitóoldalán)
Ehh  
2003. dec. 29. 07:22 | válasz | #18
A végeredmény jó, de azért n2m 265,25 hanem 365,25 továbbá plusz 1 nap mivel a 2000 nem szökőév.
Továbbá az int mindig 32 bites(32 bites rendszeren).
2003. dec. 28. 11:41 | válasz | #17
Elég érdekes, hogy erre csak most kaptak a fejükhöz... Már amikor beállították, tudták, mikor áll le. Vagy ennyi időbe telik rájönniük, mi lesz majd a javítófoltban???
gaba2  
2003. dec. 23. 17:39 | válasz | #16
Azért nem olyan nehéz kiszámolni, hogy mi mennyi:

1 óra = 3600 másodperc
1 nap = 24 óra
1 év = 365,25 nap

1970 + 2^30/3600/24/265,25 = 2004.02 év

int változó:
1970 + 2^31/3600/24/265,25 = 2038.04 év

unsigned int változó:
1970 + 2^32/3600/24/265,25 = 2106.099 év

long változó (64 bit):
1970 + 2^64/3600/24/265,25 = 5.84 * 10^11 év

Tehát 30 bites változóról van szó, ami _nem_ az int változó. Azért érdemes elgondolkozni, a Tisztelt Cikkíró miért nem számolt utána. Az UNIX rendszereknél int típusú változóban (31 bites pozitív egész tárolás) van tárolva ez a szám (Lásd Linux vagy FreeBSD kernelforrás).
2003. dec. 22. 21:24 | galéria | válasz | #15
ez megint elég zavaros .. mi az hogy a végtelen 2 milliárd meg 4 milliárd.. a végtelen az végtelen :|
Billi  
2003. dec. 22. 19:37 | válasz | #14
Kicsit figyelmetlenek a programozók :-)
Kis töblet munkával ami a teljes SW kifejlesztésének nevetségesen kis töredéke, nem lenne ilyen probléma, de ugye lusták voltak.
Illetve az idő tényező, siessünk siessünk, majd megcsináljuk, addig igy működik :-) SZVSZ ezt eltolták, de aszem ki tudják javitani :-)
Van ez igy, kell egy kis izgalom :-)
Gabest  
2003. dec. 22. 16:48 | válasz | #12
Ki tudja, lehet hogy a legutóbbi lottónyertes is csak 1 milliárdot kapott, mert túlcsordult a 32 bit... :)
2003. dec. 22. 14:46 | válasz | #11
az Y2K problema is nevetseges volt. Csak az USA multicegek hirdettek hogy mindent le kell cserelni azonnal.
Nem lattam olyan gepet ahol problemat okozott volna az Y2K.

Erre az Y2K utan persze mindenki rajott miutan ott sem voltak gondok ahol egy fillert sem koltottek az y2k-ra.
Cat  
2003. dec. 22. 14:26 | galéria | válasz | #10
azért valahol nevetséges, hogy pár éve minden média tele volt a dátumprobléma miatti gondokkal, és egy ilyen még ma is előfordulhat, ráadásul csak pár héttel a bekövetkezte előtt veszik észre...
CS  
2003. dec. 22. 13:58 | válasz | #9
Koze nincs a unix rendszereknek, hogy mi tortenik jan. 10-en. A 32 bites unixok 2038-ig korrektul mukodnek, es 2038-ra valoszinutlen, hogy barki is 32 bites architekturat hasznal. Kovetkezteteskeppen a problema nem is letezik. A cikk szinvonala == 0. Kit erdekel a PTC nevu ceg benazasa?
2003. dec. 22. 13:43 | válasz | #8
gonz ez nem igy van.

a 2004 jan 10 -es datum
a 2 milliard felet jelenti vagyis 2^30-on
ez a szam valoszinuleg alkalmazas specifikus igy nem ertem mikoze a unix-hoz.

$ date +%s -d '2038-01-19 04:14:07'
2147483647

ez az a 2038-as datum ami 2^31-et jelenti.
e folotti datum az ervenytelen.
Ha megforditjuk a konverziot akkor a 2^31 folotti szamok mind ezt a 2038-as datumot jelentik. tehat a 4 milliard is 2038-at jelent.
Somez  
2003. dec. 22. 13:42 | válasz | #7
Azt hiszem joggal mondhatom, hogy a címnek semmi köze nincsen a cikk tartalmához. Tényleg nem kéne a prog.hu színvonalát átvenni.
gonz  
2003. dec. 22. 12:57 | válasz | #6
Nem így van. A 2 milliárdosra állított jó 2004 január 10-ig, a 4 milliárdos pedig 2038-ig. Kapis?
2003. dec. 22. 10:56 | válasz | #4
Kedves Geller Ur,
Az ilyen cikkhez en az On helyeben nem adnam a nevemet.
Udv
2003. dec. 22. 10:54 | válasz | #3
valaki itt kurvára nem szereti az UNIXot úgynézki... Persze a picipuha windows tökéletes...ideje lenne felébredni :)
szipka  
2003. dec. 22. 10:48 | válasz | #2
Hogy lehet ilyen félrevezető címet adni egy ilyen egyszerű, bugnak. Bár később a cikkből kiderül, hogy ez nem is a Unixok hibája, de akkor is, sok ilyen cikk és nem olvasok több SG-t. Eddig nem nagyon volt baj a szakmai szinvonallal, de ha így folytatódik eléri a prog.hu-t, bár őket nehéz alulmúlni.

Szipka
nx  
2003. dec. 22. 09:43 | válasz | #1
2038-ig jó tehát az amelyben 2 milliárd a határ, a 4 milliárdos pedig 2106-ig. Nem érzem olyan nagy problémának. 2038-ig még 34 év van hátra nagyon extrém eset az, ha 34 évig nem frissitik a szoftvert.