h i r d e t é s

9 híres programozási hiba, ami katasztrófát okozott az űrben

Olvasási idő
3perc
Eddig olvastam
a- a+

9 híres programozási hiba, ami katasztrófát okozott az űrben

2015. július 31. - 19:03
0 komment

Bár minden fejlesztő tudja, hogy a programozási hibák mindennaposak és gyakorlatilag elkerülhetetlenek minden szoftverben, szerencsére legtöbbjük csak kisebb kellemetlenséget vagy szerény anyagi kárt okoz a szoftverek felhasználói számára.

Vannak azonban olyan alkalmazási területek is, ahol egy-egy jelentéktelennek tűnő programozói tévedés is dollármilliárdokban és munkaévek tízezreiben mérhető károkat is kiválthat - írja a prog.

Ilyen terület például az űrkutatás is, ahol már nem egyszer volt példa arra, hogy valóban súlyos károkhoz vezetett egy-egy banális hiba. A NetworkWorld egy, a héten megjelent cikkében összeszedett 9 darabot ezekből híres-hírhedt programozási hibákból. Az esetek áttekintése tanulságos lehet minden fejlesztőnek, és talán segíthet megelőzni hasonló hibák elkövetését.

Mariner 1

Mariner 1
Mariner 1

Az 1962-ben a Vénusz felderítésére indított szonda programozása során egy aprócska, ám annál súlyosabb következményekkel járó hibát követtek el a programozók: kihagytak egy felülvonást, amikor a berendezés vezérlését végző képleteket átkódolták lyukkártyákra. Ennek következményeként a szonda teljesen rossz pályán kezdett el repülni, és a katasztrófa elkerülése végett alig 5 perccel indulását követően fel kellett robbantani.

Viking 1

Viking 1
Viking 1

Az 1975-ben a Marsra induló leszállóegység ugyan sikeresen felszállt, sőt, el is jutott célállomására, ahol évekig gyűjtötte az adatokat. 1982-ben azonban egy a Földről küldött szoftverfrissítés - ami az akku töltését volt hivatott tökéletesíteni - felülírta a rádiókommunikációs kódok által használt területet a memóriában, aminek köszönhetően örökre elveszett a kapcsolat az egységgel.

Phobos 1

Phobos 1
Phobos 1

Szintén egy firmware-frissítés okozta ennek, a Mars és holdjai tanulmányozására 1988-ban indított orosz szondának a végét. A szovjet kutatók ugyanis kifelejtettek egy karaktert a feltöltött új szoftverből, aminek köszönhetően aktiválódtak az egység tesztrutinjai. Ezek megzavarták a szonda navigációját, ami a telepek lemerüléséhez, majd az egység elvesztéséhez vezetett.

Cluster műholdak

Felszáll az Ariane 5 hordozórakéta
Felszáll az Ariane 5 hordozórakéta

Teljesen hétköznapi bug: egy integer-túlcsordulás okozta összesen négy műhold elvesztését 1996-ban. Az őket pályára állítani hivatott Ariane 5 verzérlőszoftvere a hiba következtében teljesen lefagyott, így felszállás után fél perccel meg kellett semmisíteni.

Milstar 6

Milstar műhold
Milstar műhold

Az amerikai hadsereg titkos kommunikációját biztosítani hivatott műholdhálózat hatodik darabjának elvesztését szintén a hordozórakéta vezérlőszoftverének egy bugja okozta. Azt azonban, hogy ez pontosan miből következett nem lehet tudni, mert a hadsereg titkosította.

Mars Climate Orbiter

Mars Climate Orbiter
Mars Climate Orbiter

A Mars időjárásának feltérképezésére 1998-ban indított szonda sikeresen elért a vörös bolygóhoz, ahol azonban leszállás közben darabokra szakadt. A problémát az okozta, hogy a földi vezérlőrendszerek imperiális mértékegységekkel számoltak, míg a szonda fedélzeti számítógépei metrikus egységekben várták volna az adatokat.

Mars Polar Lander

Mars Polar Lander
Mars Polar Lander

Szintén a Naprendszer negyedik bolygójára indult 1999-ben ez a leszállóegység, ahova meg is érkezett, de sajnos nem a szándékolt módon. Sima leszállást helyett ugyanis nagy sebességgel a Mars felszínébe csapódott, minekután a vezérlését végző szoftver a leszállólábak süllyedés közbeni rezgését - nyilván valamilyen a jeltüskéket kiszűrő algoritmus hiányában - a felszínre érkezés jeleként értelmezte, és kikapcsolta a lassító rakétákat.

Mars Spirit

Mars Spirit
Mars Spirit

A vörös bolygó nem hozott szerencsét ennek a 2004-ben rá érkező marsjárónak sem. A Spirit problémáját fájlrendszerének egy tervezési hibája okozta, ami miatt alig két héttel aktiválását követően betelt az egység nem-felejtő memóriája - ez pedig egy végtelen újraindítási ciklusba kergette azt. Szerencsére végül a fájlrendszer formattálásával a mérnököknek sikerült úrrá lenniük a bugon, amit követően az egység még 6 éven keresztül küldte az adatokat a bolygóról.

Mars Global Surveyor

Mars Global Suveryor
Mars Global Suveryor

Ez a Mars felszínét feltérképezni hivatott szonda közel egy évtizedig kifogástalanul működött, mielőtt beütött volna rajta a krach. 2006-ban azonban ő is egy hibás szoftverfrissítést kapott, aminek következtében lebénultak napelemeinek mozgatómotorjai. Az egység - hogy továbbra is biztosítsa energiaellátását - teljes szerkezetének a Nap felé fordításával próbálta meg a problémát korrigálni. Ennek következtében azonban akkumlátora is a csillag felől érkező sugárzás által közvetlenül érintett oldalra került, ahol szó szerint megsült - így kinyírva a szondát.

 

prog.hu

 

 

Posted by SEJT on 2015. július 31.