Backtrack

Resim
Backtrack Nedir? Ubuntu(->Debian) tabanlı bir Linux dağıtımıdır. Güvenlik uzmanlarının ihtiyaç duyabileceği hemen her tür açık kaynak kod yazılım hazır kurulu olarak gelir. Linux üzerinde KDE/GNOME ya da benzeri masaüstü kullandıysanız Backtrack kullanırken zorluk çekmezsiniz. Masaüstü kullanarak erişilebilecek programların çoğu, komut satırından çalışan program/scriptlerin düzenli menüler haline getirilmiş halidir. Backtrack Linux üç farklı şekilde kullanılabilir; o Hazır CD den çalışma yöntemi(Live CD) o Hard disk ’e kurulum yöntemi o Sanallaştırma  imajları(Vmware, VirtualBox)kullanım yöntemi Tavsiye edilen yöntem; o Backtrack ’i diske kurmak veya sanallaştırma platformlarında çalıştırmaktır. Vulnerability Assesment( Zafiyet Taraması) O Zafiyet taraması bir sistemdeki muhtemel tüm açıkların belirlenmesine yönelik tasarlanmış bir testtir. O Zafiyet taramasında amaç taranan sistemin genel güvenlik görüntüsünü almaktadır. O Zafiyet taraması muhtemel tüm güve

JAVA TEKNOLOJİLERİ


  1. Hot Spot teknolojisi
    Java sanal makinesi HotSpot adı verilen özel bir teknolojiyi içinde barındırır. HotSpot yani sıcak nokta , bir yazılımda sürekli olarak tekrarlanan ve üzerinden geçilen kod bölümlerine verilen bir isimdir. Java sanal makinesi bir kod çalışmaya başladıktan sonra sİklıkla kullanılan kod bloklarını gözler ve bir süre sonra bu bytecode bloklarının çalışılan sistemdeki gerçek işlemci komut karşılıklarını bir tür cep bellege yazar ve zaman ilerledikçe artık byte kod üzerinden değil doğrudan sistemin öz komutlarını kullanarak yazılımın o bölümlerini işletmeye başlar. Bu şekilde ciddi performans avantajı sağlanmıştır.
  2. JIT
    Java ilk çıktığında bytecode işletme hızı çok iyi değildi. yerine göre sistemin öz yazılımlarından 5-10 kat yavaş çalışıyordu. Bu nedenle bazı yazılım geliştirme şirketleri JIT yanı "Just-in-time compile", "anında derleme" araçları üretmeye başladılar. Yapılan şey byte kodu sanal makinenin kurulu olduğu gerçek sistemin diline anında derleme yaparak dönüştürmesiydi. Bu sayede performansta ciddi artışlar sağlandı. Ama 2000 yılından sonra HotSpot teknolojisinin gelişmesi ile JIT'in işlevi VM'içinde yer almaya başlamış, işlemci hızı ve bellek miktarının dramatik biçimde artması ile dış JIT yazılımları popülerliğini kaybetmiştir. Bugün halen bir kaç ürün pazarda bulunsa da genellikle bu yöndeki ihtiyaç yok olmuş gibi gözükmektedir.
  3. Java API
    Java API, java yazılımlarında kullanılıan yazılım kütüphanelerine genel olarak verilen isimdir. Java API ile disk, grafik, ag, veri tabani, güvenlik gibi yüzlerce konuda kullanıcılara erişim imkanı sunulur. Java API J2SDK'nin bir parçasıdır.
  4. Çöp toplayıcı (Garbage Collector)
    Çöp toplayıcı java'nın en belirgin özelliklerinden birisidir. C++, C gibi dillerin en büyük handikaplarından birisi dinamik bellek yönetimidir. yazılımda işaretçi (pointer) kullanarak dinamik olarak bellek ayırdıktan sonra o bellek ile işiniz bittiğinde mutlaka ayrılan belleği bellek yöneticiye özel metodlar yardımıyla (delete, destructor vs.) iade etmeniz gerekir. Yoksa bellek sizintisi (Memory Leak) oluşur ve bu bir süre sonra yazılımın ve işletim sisteminin beklenenden farklı davranmasına yol açar. Bugünün tüm büyük C ve C++ yazılımları az da olsa bellek sizintisi içerir (işletim sistemleri dahil). sızıntıların tespiti oldukça güçtür ve bulunması zor hatalara yol açar. Çöp toplayıcı sayesinde Java'da bir nesne oluşturulduktan sonra o nesne ile işiniz bittiğinde hiç bir şey yapmanız gerekmez. Sanal makine akıllı bir biçimde kullanılmayan bellek bölümlerini belirli aralıklarla ya da adaptif metodlarla sisteme otomatik olarak temizler ve sisteme iade eder. Bu işleme çöp toplama, ya da "garbage collection" adı verilir. Çöp toplama sistemlerinin yapısı oldukça karmaşıktır ve geçen yıllar içinde büyük gelişmeler kaydedilmiştir. Çöp toplayıcının varlığı java'da bellk sizintisi olmayacağı anlamına gelmez, ama bellek sızıntıları daha ender olarak ve farklı şekillerde karşınıza çıkar ve genellikle tedavi edilmesi daha kolaydır.
  5. Jar
    Jar, aslında bir tür sıkıştırma formatıdır. Jar ile derlenen java kodları ile oluşan yazılımın paketlenip taşınması kolay bir hale getirilir. Jar dosyaları temelde bytekod blokları içerir. Jar dosyaları genellikle kütüphane oluşturmada ya da uygun biçimde hazırlanırsa işletim sisteminden doğrudan çalıştırılabiliecek bir şekilde kullanılabilir (Executable jar, işletilebilir jar) jar dosyalarının içeriğini sıkışıtırma yazılımları ya da java yazılım geliştirme araçları ile inceleyebilirsiniz. Java 1.5 ile yeni bir tür jar oluşturma metodu da kullanıma girecek. Pack200 adı verilen hiper-compression algoritması ile jar dosyaları 8 kata varan oranlarda daha az yer kaplayacak. Bunun özellikle uzak uygulamaların kullanımını ciddi biçimde kolaylaştırması bekleniyor.
  6. AWT ve Swing
    AWT, ilk java ile birlikte geliştirilen temel grafik arayuz oluşturma kütüphanesine verilen isimdir. Ancak Java 2 platformu ile birlikte AWT'nın yetersiz görülmüş ve çok daha geniş ve gelişmiş özelliklere sahip Swing kutuhanesi sisteme eklenmiştir. Özellikle çok platform destekleyen yazılımlarda kullanıcı arayüzü geliştirme aracı olarak swing halen önemini korumaktadır. Swing önceleri işletim sisteminin kullandığı donanım grafik hızlandırma araçlarını kullanmadığından yavaşlığı ile eleştirilere hedef olmuştu. Özellikle Java 1.4 ile Swing, hem genel olarak sanal makinenin hızlanması ve kısmen donanım hızlandırmayı kullanması ile bu kötü şöhretinden sıyrılmaya başladı. Java 1.5 ile donanım özellikle OpenGL kullanımı ve yeni arayuz gösterim şekli ile java'nin masaüstü uygulama geliştirmede popülerleşmesi bekleniyor. AWT halen swingin bir alt katmanında, temel 2 boyutlu grafik işlemlerinde kullanılmaya devam ediyor.
  7. SWT
    SWT swing'e bir alternatif olarak IBM tarafından geliştirilen bir gösterim sistemidir. Swing'den en büyük farkı çalıştığı işletim sistminin grafik kütüphanesi ve komutlarını kullanmasıdır. Bu nedenle SWT uygulamaları Swing'e göre çoğu yerde daha hızlı ve işletim sistemindeki diğer uygulamaları andıran bir şekilde çalışmasını sağlar. Ancak yapı itibari ile SWT kullanımı Swing kadar efektif olamayabiliyor (özellikle olay mekanizması, tablo ve ağaç yapılarındaki yavaşlığı, ayrıca linux performansı ile SWT eleştirilmiştir). Swingin Java 1.5 ile performans açığını kapatacağı iddia edilse de SWT'nin de artık java camiasında kabul görmüş bir sistem olduğu aşıkardır. SWT'nin dezavantajı ise java'nin bir parçası olmamasıdır. yanı SWT uygulamaları SWT kütüphanesi ile birlikte dağıtılmaktadır. En bilinen SWT uygulaması ünlü java yazılım geliştirme aracı Eclipse'tir. Bununla birlikte son yıllarda Swing ile profesyonel derecede arayuza sahip masaüstü yazılımları da ortaya çıkmıştır. Sonuçta herşey yazılımcının aracı ne kadar efektif kullandığına bakıyor.
  8. Applet
    Applet, uzaktaki sistem üzerinden indirilip internet tarayıcı üzerinde çalıştırılabilien java uygulamalarına verilen isimdir. Java'nin son kullanıcılar tarafından tanınması applet sayesinde olmuştur dersek yanlış olmaz. Applet'ler sisteme zarar veremeyecek bir şekilde tasarlanmıştır ve bugün özellikle oyun sitelerinde halen yaygın olarak kullanılmaktadır. İçerisinde applet olan bir sayfayı açmaya çalıştığınızda tarayıcınız otomatik olarak java sanal makinesini çalıştırıp ekranın applet'e ayrılan bölümünde uygulamanın çalışmasını sağlar.
  9. WebStart
    Webstart teknolojisi Windows ve Linux sistemlerinin baş belası olan uygulama kurulum, güncelleme ve silme dertlerine deva olmak üzere tasarlanmış bir sistemdir. Özellikle Java 1.5 ile daha yaygın kullanılmaya başlayacağı tahmin edilen webstart teknolojisi kısaca yazılımların uzaktan yerel sisteme güvenli olarak kurulmasını ve korumalı bir alanda çalıştırılmasını sağlar. Appletlerin bir sonraki adımı olarak görülebilir. Bir webstart uygulamasını kurmak için internet üzerindeki özel bir bağlantıya tıklamak yeterli. Sistem otomatik olarak webstart sistemini çalıştırıp yazılımı java cep belleğine indirir. isterseniz masaüstüne kısayol koymasını da sağlar. Daha sonra sistem off-line ya da on-line olsa bile uygulama çalıştırılabilir, ve uzaktaki yazılım güncellendiğinde otomatik olara -istenirse- yerel makinedeki yazılımın da güncelenmesi sağlanabilir. Kullanıcının özel olarak izin vermesi halinde uygulama yerel sisteme erişim hakkı kazanabilir. Aksi taktirde webstart uygulamaları sisteme yazma işlemi gerçekleştiremezler (yanı virüs ve zararlı yazılım tehlikesini son derece aza indirger.)

Yorumlar

Bu blogdaki popüler yayınlar

C# formda kayan yazı oluşturma

Java SE Ders 3 Matematiksel İşlemler

Java SE Ders 1 Ekrana yazma