Anlayamadılar...

Saturday, March 19, 2011 1:39 AM
Kategoriler Şiir

Biz ince bel, ela göz, sütun bacak için sevmedik güzelim
Gümbür gümbür bir yürek diledik kavgamızda...
Ateşin yanında barut, barutun yanında ateş olasın diye! ..
Rakı sofralarında söylenip, acı tütün çiğnercesine sevdik
Anlayamadılar...


Nazım Hikmet Ran

Volatile Anahtar Sözcüğü

Tuesday, March 01, 2011 11:56 AM

Kelime anlamı olarak bir değişkenin geçici, uçucu değere sahip olmasını ifade eder.

Volatile tip tanımlayıcısı (Volatile Type Quantifier) basitçe bir değişken tanımının başında bulunup, bu değişkenin, program dışında bir etki altında bulunabileceğini ifade eder.

Örneğin geliştirdiğimiz bir programda, farklı işlem (process) veya donanımsal etkiler sonucunda değeri değişen bir değişken (variable) kullanıyorsak, bu değişkeni volatile olarak tanımlamamız gerekir. Aksi halde derleyici (compiler) bu değişkeni optimize ederek görevini yerine getiremez bir hale sokabilir.

Bu durumun çok klasik örneklerini IPC (inter process communication, işlemler arası iletişim) konularında görebiliriz.

Klasik bir bariyer kullanılacağını ve işlemin bu bariyere belirli bir amaç için takılacağını düşünelim.

C dilinde böyle bir örneği aşağıdaki şekilde kodlayabiliriz:

int bar = 0;
while(bar == 0);
Yukarıdaki iki satırda görüldüğü üzere "bar" isminde bir değişken tanımlanmış ve bu değişkenin, değeri 0 olduğu sürece sonsuz döngüye girilmiştir. Elbette bu aşamada kod sonsuz döngüye girecek ve ilerlemeyecektir.

Yukarıdaki bu bariyeri kırmak için farklı bir işlem tarafından "bar" değişkeninin değeri değiştirilmek istenirse, bu durumda değişkene müdahale edilememesi söz konusu olabilir. Kullanılan derleyicinin optimize etme seviyesine bağlı olarak, belki de derleyici bu değişken değerini hiç tutmadan ve işletim sistemi üzerinde işlemciye bile uğramadan programı bekletme şekline geçirmiş olabilir.

Derleyicinin bu seviyede bir optimizasyon yapması sonucu değişkene erişmek ve dolayısıyla değişkenin değerini değiştirip, yukarıdaki bariyeri kırmak mümkün olmaz. Bunu engellemek için değişken tanımında volatile kelimesi kullanılır.

volatile int bar= 0;
while(bar==0);
Yeni kodumuzun tek farkı, derleyicinin bu kodda bulunan "bar" değişkenini optimize etmeyecek olmasıdır. Bu sayede kod gerçekten verimsiz bir şekilde çalışacak ancak değişkenin bütün beklentileri karşılaması sağlanacaktır.

Yukarıdaki bu durum, C, C++ dilleri için geçerli ve kullanışlıdır.

JAVA ve C# dilleri için durum biraz farklıdır. Bu dillerde yukarıda anlatılan problemin çözümü için hem volatile hem de synchronized tip tanımlayıcıları (type qunatifiers) bulunur.

Bu dilleri kullanan kişilerin bu iki tip tanımlayıcısı arasındaki farkı bilmesi gerekir.

Synchronized olarak tanımlanmış bir değişken yukarıda anlatılan sorunu çözer ancak JAVA veya C# dillerinin nesne yönelimli programlama özelliğinden dolayı, bu değişkenin tanımlı olduğu sınıftan (class), birden fazla nesne tanımlanması mümkündür.

Örneğin lif (thread) özelliği taşıyan bir java sınıfından tanımlanan bütün nesneler (objects), performans kaygılarından dolayı kendi değişken kopyalarını tutarlar. Dolayısıyla her nesnede kendi değişken bilgisi durur.

Volatile olarak tanımlanan değişkenin farkı ise burada ortaya çıkar. Synchronized tanımlı bir değişkenden farklı olarak, volatile değişken sadece tek bir kopya tutar. Bu kopyaya ana kopya ismi de verilebilir. Tasarıma göre değişmekle birlikte, birden çok kopyanın, tek kopya üzerinden güncellenmesi ve hepsinin aynı olması da aslında tek kopya tutulması olarak düşünülebilir.

Etiketler Volatile

83 Yaşındaki Canan Teyze Muhteşem Değişimi Anlatıyor

Thursday, February 24, 2011 2:47 PM

Etiketler Etiket Yok

Mevlid Kandiliniz Mubarek Olsun

Monday, February 14, 2011 11:27 AM
Kategoriler Kişisel

ALLAH'ın nimet, rahmet ve mağfiretinin müminlere bol bol ihsan edildiği gece manasına gelen Mevlid Kandili'nde, bir yıllık yaşantımızı, ibadetlerimizi ve iyiliklerimizi iyi düşünecek ve ona göre hayatımıza çekidüzen vererek samimi bir teslimiyetle nefis muhasebesine gireceğiz. Bu gece haıyrlı bir gece, yüreklerimiz ibadetle çarpsın, gönüllerimiz bir olsun.. Mevlid Mevlid kandiliniz mübarek olsun!

Etiketler Mevlid Kandili

Üç Dil

Thursday, February 10, 2011 5:01 PM
Kategoriler Şiir

En azından üç dil bileceksin
En azından üç dilde
Ana avrat dümdüz gideceksin
En azından üç dil bileceksin
En azından üç dilde düşünüp rüya göreceksin
En azından üç dil
Birisi ana dilin
Elin ayağın kadar senin
Ana sütü gibi tatlı
Ana sütü gibi bedava
Nenniler, masallar, küfürler de caba
Ötekiler yedi kat yabancı
Her kelime arslan ağzında
Her kelimeyi bir bir dişinle tırnağınla
Kök sökercesine söküp çıkartacaksın
Her kelimede bir tuğla boyu yükselecek
Her kelime bir kat daha artacaksın

En azından üç dil bileceksin
En azından üç dilde
Canımın içi demesini
Canım ağzıma geldi demesini
Kırmızı gülün alı var demesini
Nerden ince ise ordan kopsun demesini
Atın ölümü arpadan olsun demesini
Keçiyi yardan uçuran bir tutam ottur demesini
İnsanın insanı sömürmesi
Rezilliğin dik alası demesini
Ne demesi be
Gümbür gümbür gümbürdemesini becereceksin

En azından üç dil bileceksin
En azından üç dilde
Ana avrat dümdüz gideceksin
En azından üç dil
Çünkü sen ne tarih ne coğrafya
Ne şu ne busun
Oğlum Mernuş
Sen otobüsü kaçırmış bir milletin çocuğusun.

BEDRİ RAHMİ EYÜBOĞLU