Kendini Tamir Eden Programlar Aralık 2009 | Sayı : 9

Selamlar sevgili okurlar. Bu ay bir an önce gerekli işlemlerden geçip piyasaya sürülmesini - e tabii bir de pahaca azalmasını beklersek “Ohoo daha çok var, çok!” dediğim  - dilediğim bir sistemden bahsedeceğim. Keyifli okumalar.

 

Kendi Kendini Düzelten (Ölmeyen) Yazılım

Yeni bir yöntemle kitlenen, çöken vb. nedenlerle insanın asabını bozan programlar kapatılıp açılmadan da düzeltilebilecek!

 MIT Bilgisayar Bilimlerinden Profesör Martin Rinard ve grubunun üzerinde çalıştığı bu proje Ekim ayında SOSP’09, (ACM Symposium on Operating Systems Principles) Montana’ da görücüye çıkarıldı.

Güvenlik şirketi Symantec‘ in 2006’da yayımladığı rapora göre, yazılımın bir parçasında hata oluşturabilecek bir dayanıksızlık tespit edildiğinde mühendislerin bu soruna en uygun çözümü bulup uygulamaları çoğunlukla aylar alıyor. (Tabii burada bahsedilen yazılımlar fazlasıyla ileri düzey ve hataları ölümcül türden) ”Determina”  grubu altında bir araya gelen araştırmacılar, ClearView denen ve tüm bu süreci hızlandırıp yazılımın çökme ya da ataklara karşı daha esnek olmasını sağlayacak bir proje tasarlıyorlar.

Kabataslak ifade etmek gerekirse; ClearView, bir programda herhangi bir hata meydana geldiğinde kendince yama yapan bir yazılım. Herhangi bir komut dosyasına ya da insan kontrolüne ihtiyaç duymadan sadece üzerinde çalıştığı programın işleyişini ve uyduğu kuralları izleyerek çalışıyor.

 

ClearView’a daha yakından bakalım

ClearView:  Uygulandığı programda oluşan hataları, kendiliğinden düzelten sistemi kuruyor. Herhangi bir kaynak kodundan, giriş ya da çıkış bilgilerinden veya diğer insan etkilerinden bağımsız, 32 bitlik Windows sistemlerinde çalışıyor.

Çalışma prensibi ise adım adım şu şekilde gerçekleşiyor:

  • Üzerinde çalıştığı uygulamanın sabit kurallarını öğrenip onu tanımak için uygulamanın olağan çalışmasını izler.
  • Birtakım hata dedektörleri kullanarak hatalı ve düzgün çalışmaları ayırt eder.
  • Öğrendiği sabit çalışma prensiplerinden hangilerinin hatalı çalışma sırasında ihlal edilmiş olduğunu tanımlar.
  • İhlal edilen kuralı düzeltmek için bir ya da birden fazla yama oluşturur. (Bu yamalar sisteme hiçbir kaynak koduna gerek duyulmadan uygulanır. Yani bir nevi kendi kendine de diyebiliriz.)
  • Oluşturduğu bu tedavilerin etkilerini izleyip en etkili olanı seçer. (Eğer bir yama sistemin çökmesine neden oluyorsa ya da daha iyisini bulma şansı varsa ClearView onu kaldırıp başka birini deniyor.)

ClearView oluşma olasılığı fazla olan yazılım hatalarını tespit etmek için tasarlanmıştır. Fakat bu tek cümleyi biraz açarsak şunu söyleyebiliriz: ClearView, çoğu zaman hata veren ya da çöken bir programın tamiri için gerekli olan “restart” ya da bunun gibi sinir bozucu aktivitelere gerek duymadan programı -en etkili ve verimli şekilde tabii- düzeltme işini yapar.

ClearView, özellikle bir grup makinenin aynı yazılımı çalıştırdıkları zaman etkili oluyor. Çünkü bu şekilde ClearView bir makinede oluşan hatadan öğrendiklerini diğer makinelerdeki hataları düzeltmek için de kullanıyor. Büyük bir ağımız olduğunu düşünürsek -mesela bir banka ya da devlet kurumu gibi- bu olay büyük bir zaman ve para kaybını önlüyor.

ClearView, Firefox çalıştıran ve Firefox’un devamlı olarak bağımsız bir hacking takımının saldırısına uğradığı bir grup bilgisayar üzerinde test edilmiş. Takım, malware kodlar içeren 10 farklı saldırıda bulunmuş ama ClearView bu 10 saldırılardan 7 tanesini, program malware kodlardan etkilenip kendini kapatmadan bloke etmeyi başarmış. İlk atağa ortalama 5 dakika içerisinde bir yama ile karşılık vermiş. Diğer 3 tanesi ise diğerlerinden farklı. Bunlar, ClearView’un işlemesine yönelik zararlı kodlar olarak gönderilmiş. Yani ClearView’un, kendi kendine istenmeyen yamalar oluşturarak Firefox’u çökertmesi durumu sağlanmak istenmiş ama bu durumda da ClearView’un yama değerlendirici mekanizması devreye girip istenmeyen yamayı yok etmiş.

“Bu araştırmada bize öncülük eden, yazılımın kendi kendine ya da hatalar yüzünden hassaslaşmadığına inanmak oldu. Yazılımlar hassas ve kırılganmış gibi davranıyor çünkü çoğu kullanıcı programlarına bir şey olmasından korktuğu için onlara hassas muamelesi yapıyor, üstelik bu düşünceyi paylaşan yazılım mühendisleri de mevcut.”  diyor Martin Rinard.

Bunun yanında “ClearView çok iyi bir başlangıç noktası.”  diyor California Üniversitesi Bilgisayar Bilimlerinden Profesör Yuanyuan Zhou. (Kendisi aynı zamanda yazılım güvenilirlik araştırmaları üzerine de çalışıyor.) Zhou, araştırmacıları ve ClearView deneme sürecini överken, bu teknolojiyi daha geniş bir test üzerinde görmek istediğini söylüyor.

Görüşmek üzere!

 

Kaynaklar :

      Neslişah ÇELİK
İ.Ü. Bilgisayar Mühendisliği 2. Sınıf
- Aralık 2009 -
Editörden... | H. Can ÇOBANOĞLU Nedir Bu FTTH Dedikleri | Özgür Can TURNA Online Yer İmleri Deponuz | İsmail DURU Bu Dalgaya Kapılın! | Alp ALTINTÜRK Hız Kazandıran Yöntemler | Serkan AKDEMİR Teknolojiden Gelişmeler | Cihat GÜZEL Kendini Tamir Eden Programlar | Neslişah ÇELİK Mobil Dünya ve Mobil Platformlar | Özkan AKGÜL Bilgisayarlar Güçlerini Birleştiriyor | Sümeyra HAŞLAMAN Oyun Tanıtımı | Erman TEPE MySQL ile Trigger Oluşturma | Muhammed Ali KOŞAN Phi Sayısı | Özge ATASEVEN
« önceki sayfa - 6 - sonraki sayfa »

ana sayfa | arşiv | dergimiz | künye | iletişim | yazarlar için...
© 2009-2010 Bilisimdergi.Com Tasarım - Kodlama : İU BİLGİSAYAR

Creative Commons License
Bilişim Dergi içeriği  Creative Commons  lisansı ile korunmaktadır.
Kaynak göstermek ve link vermek şartıyla yazılarımızı kullanabilirsiniz.