Basit Bir Yazılım Hatasının Nelere Mal Olacağını Gösteren 6 Tarihi Bug


Bilgisayar kullanıcıları oldukça yaygın olan bug kelimesiyle en az bir kere karşılaşmıştır. Bilgisayar programlarında, çeşitli yazılımlarda ve özellikle oyunlarda gördüğümüz buglar, genelde ortaya çıkan küçük çaplı yazılım hatalarına denir ve küçük düzenlemeler veya güncellemelerle ortadan kaldırılabilir. Peki bu tür buglar yalnızca oyunlarda bulunup küçük hatalara mı yol açıyor? Cevap hayır.

Bu içeriğimizde sizler için internet tarihine geçen, yıkıcı etkileri olan bug örneklerini derledik. Listenin arasında felaket olarak adlandırılabilecek bug örneklerinin yanı sıra oldukça ilginç ve komik örnekler de bulunuyor. Dilerseniz lafı daha fazla uzatmadan tarihe geçen bug örneklerine birlikte göz atalım.

Dünya tarihine geçen 6 bug örneği:

  • Ariane 5 roketinin havaya uçması
  • Aşırı dozda radyasyon yayan Therac-25
  • Dakikalar içinde kaybedilen 460 milyon dolar
  • Amerikan üssünde patlayan füze
  • Mars Climate Orbiter kazası
  • Bilgisayar tarihindeki ilk bug

Ariane 5 roketinin havaya uçması:

NASA, 4 Haziran 1996’da fırlatılması planlanan Ariane 5 uzay aracını kodlarken, Ariane 4 roketinin kodlarını kopyalayarak bir hata yaptığının farkında değildi. O gün fırlatma için geri sayım yapıldı ve roketin motorları ateşlenerek kalkış başladı. Hızlanarak yoluna 37 saniye boyunca devam eden Ariane 5 roketi o saniyeden sonra yanlış yöne doğru 90 derece dönmeye başladı. Bu durum, roketin kendini imha etme mekanizmasını tetikledi ve uzay aracı, dünyanın en pahalı havai fişeği olarak akıllara kazındı.

Bu kaza, NASA’ya aşağı yukarı 370 milyon dolara mal oldu. Tarihteki en pahalı yazılım hatalarından biri arasına giren bu kazanın sebebi, yazılımda oluşan bir bugdı. Bu bug, milyarlarca potansiyel değeri temsil edebilen 64 bit değişkeni, yaklaşık 65 bin değer alabilen 16 bit değişkene sığdırmaya çalışmasına sebep oldu. Roketler hızlandıkça kodlarda ortaya çıkan bu bug işleri sarpa sardırdı ve roket patladı.

Aşırı dozda radyasyon yayan Therac-25:

Therac-25 bug

Therac-25 olarak bahsedilen makine, kanser hastalarının tedavisinde kullanılmak yapılması için tasarlanmıştı. Önceki modelini temel alan Therac-25’te “geliştirilmiş” bir terapi sistemi bulunuyordu ve bu sistem iki farklı türde radyasyon yayabiliyordu. Birincisi, düşük güçte elektron ışını (beta parçacıkları), bir diğeri ise çok daha güçlü elektronlar yayan X ışınları.

Therac-25, X ışınlarını elektron tabancası ve hastanın arasında bulunan metal bir plakayla parçacıkları çarpıştırarak tedaviyi uyguluyordu. Bir diğer geliştirme ise Therac-20’de güvenlik önlemi olarak bulunan elektromekanik güvenlik kilitlerinin yazılımsal güvenlik önlemleriyle değiştirilmesiydi. Ne yazık ki gelişim olarak görülen bu hata, Therac-20’nin kodlarında bulunan ancak fark edilemeyen hatanın Therac-25’te ortaya çıkmasına sebep oldu.

Race condition olarak bilinen bir hata, Therac-25’in yüksek güç modunda çalıştırılmasına sebep oldu. Operatörlerin bilmediği şey ise cihazın bu modda çalıştığıydı, dolayısıyla metal plakayı yerine koymadılar. Bu bug yüzünden yaklaşık 5 hastanın ağır dozda radyasyon sebebiyle hayatını kaybettiği raporlandı. Diğer hastalar ise ciddi bir şekilde yaralanarak tedavi altına alındı.

Dakikalar içinde kaybedilen 460 milyon dolar:

Knight Capital Group bug

Yazılım denen konunun üstünde çok fazla kafa yorulması gerektiğini ve en ufak bir hatanın bir şirkete mal olabileceğini gösteren bir vaka ile karşı karşıyayız. Knight Capital Group, 1 Ağustos 2012’de yeni bir yazılım güncellemesi yapma kararı aldı. Yaptıkları yazılım güncellemesiyle otomatik olarak stok alım satımı yapmayı planlayan şirket bir anda kendisini hiç ummadığı şekilde iflasın eşiğinde buldu.

Saat 09.00 sularında New York Borsası işlemler için açıldı ve Knight Capital’ın ilk perakende yatırımcısı varlıklarını satın almak veya satmak için talimat verdi. Yalnızca 45 dakika sonra Knight Capital’ın sunucuları 4 milyon işlem gerçekleştirdi ve şirkete 460 milyon dolar kaybettirerek iflasın eşiğine getirdi. NYSE’deki bazı hisseler %300’ün üzerinde arttı. Bunun sebebi, diğer firmaların algoritmaları Knight Capital’ın bu hatasını sömürmeye başladı.

Amerikan üssünde patlayan füze:

Amerikan üssünde patlayan füze

1991 yılının şubat aylarında gerçekleşen Körfez Savaşı sırasında Amerika Birleşik Devletleri’nin Suudi Arabistan’ın Zahran şehrindeki üssünde bir patlama yaşandı. Al Hussein Scud ismi verilen kısa menzilli bir balistik füze hedefini tutturmayı başararak Amerikan üssünde patlamıştı. Patlamanın sebebi ise üste bulunan anti balistik füze sisteminin doğru çalışmamasıydı.

Yapılan sorgulamaların ve araştırmaların sonucunda patlama sebebinin üste bulunan anti balistik füze sisteminin bir yazılım hatası yüzünden ateşlenmemesi olduğu anlaşıldı. Orta mesafe havadan gelen füzeleri yok etmesi gereken MIM-104 Patriot, 100 saati aşkın süredir çalışıyordu ve geçen her saatte dahili saat birkaç milisaniye ileri gidiyordu.

Bir insan için inanılmaz küçük olan 0,33 saniye, Al Hussein füzesini takip etmek için yapılan bir sistem için inanılmaz büyük bir hataydı. MIM-104 Patriot, havada bir cisim olduğunu algılamayı başardı ancak bug yüzünden cismi takip edemedi ve bunun bir füze olduğunu anlayamadı. Engellenemeyen füze yüzünden üste bulunan 28 asker hayatını kaybetti.

Mars Climate Orbiter kazası:

Mars Climate Orbiter

1998 yılında fırlatılan Mars Climate Orbiter uzay aracının amacı, Mars’taki iklimi kontrol etmek ve dünyaya iletmekti ancak ne yazık ki kodlarındaki bir bug yüzünden bu görevi hiç tamamlayamadı. Birkaç ay boyunca uzayda yoluna devam eden Mars Climate Orbiter, yönlendirme hatası yüzünden tahrip oldu.

Uzay aracını Dünya üzerinde kontrol eden takımlar, imperial birimi parametrelerini kullanıyorlardı. Uzay aracının yazılımı ise hesaplamaları metrik sisteme göre yapıyordu. Bu yanlış kodlama yüzünden Mars Climate Orbiter olması gerektiği rotadan saptı ve çarpışma yaşadı. Bunun sonucunda ise Mars atmosferinde çok fazla sürtünme yaşayan araç tahrip oldu.

Bilgisayar tarihindeki ilk bug

Bilgisayar ilk bug

Bilgisayar hatalarında kullandığımız bug kelimesinin nereden geldiğini biliyor musunuz? Tarihe geçen ilk bilgisayar bugı, gerçek bir böceğin bir bilgisayarın içine girmesiyle ortaya çıktı. 9 Eylül 1947 tarihinde gerçekleşen bu olay, böceği bulan kişinin rapor defterine bilgisayar sisteminde ilk defa bir bug bulunduğunu yazmasıyla tarihe geçti. Bir güve, Amerikan Donanması’na ait Harvard Mark II isimli bilgisayarın içine girerek işlevini bozmuştu.

Bug kelimesi ilk kez o zaman kullanılmamıştı ancak Harvard Mark II’de böceği bulan kişilerin bu kelimeyi raporlara geçirmesi, bugün bilgisayar ve yazılım hatalarında bug kelimesini daha çok kullanmamıza sebep oldu. Bu olay biraz dalga konusu oldu ancak zaman geçtikçe bug kelimesi bilgisayar ve yazılım kusurlarının ortaya çıkmasıyla daha yaygın hale geldi. Dolayısıyla fotoğrafta gördüğünüz böceğe, bugün karşımıza çıkan tüm bugların anası diyebiliriz.

İnternet tarihine geçen 6 bug örneğini derlediğimiz içeriğimizin sonuna gelmiş bulunuyoruz. Dilerseniz bug ne demek, ilk olarak ne zaman ortaya çıkmıştır sorularına cevap verdiğimiz içeriğimize buraya tıklayarak ulaşabilirsiniz. Eğer sizlerin de daha önce karşılaştığınız bu tür bug örnekleri varsa yorumlar bunları bizlerle paylaşabilirsiniz. Bu ve bunun gibi içeriklerimizin devamı gelecek. Kaçırmamak için bizleri takipte kalın.