|
|
|||||||||||||
|
|
Kaos Teorisi ve İşletim Sistemi İşletim sistemi yazmak nedir? Yazılıma heveslenmiş bazı kişiler, işin daha en başında iken en az bir dönem "Ne kadar zamanımı alırsa alsın, sonunda bir işletim sistemi
yazacağım!" diye yola koyulmuştur. Devamında internetten yüzlerce kitap, belge
yüklemek ve yıllar içinde biriktirilen tüm e-kitap koleksiyonunun tek sayfasını
dahi okumamak. Gerisi malum hayal kırıklığı, hevesin, azmin kaybolması... Analitik düşünmeyi sevmeyenler için programcılık ne zor iş! Doğrusu matematiği, araştırmacılığı sevmeyen, meraklı olmayan üniversite adayı yakınlarıma bu işten özellikle uzak durmalarını tavsiye ediyorum. Onlar için Diş Hekimliği, Eczacılık ve matematiğe biraz daha yakınlarsa Ekonometri benim favorilerim arasında. Ek olarak kısmen veya tamamen yabancı dille eğitim verilen bölümlerden özellikle uzak durmalarını, ingilizce öğrenmek istiyorlarsa ingilizce derslerine girmelerini veya artık birçok okulun veya belediyenin düzenlediği yabancı dil kurslarına, okul ile paralel olarak katılmalarını tavsiye ediyorum. Yoksa ne ekonometriyi ne de ingilizceyi tam olarak öğrenebiliyorlar. (Yaygın tecrübelerle sabittir!) En azından ülkedeki bütün okullar yabancı dille eğitim verir hale getirilene kadar! Buraya kadar işletim sistemi yazmak sorusu hala aklınızda mıydı? Genellikle, söz işletim sistemlerinden açıldığında bazen eleştiri yapalım derken iş alaya dönüşse de, işletim sistemi yazmak dünyanın en zor zanaatlarından biridir.
Lisedeki Fizik hocam "Düşünmek dünyanın en zor işidir." derdi. Bunu yaşayarak öğrenmeme kadar birkaç sene geçti aradan. Yine de bolca düşünceniz, bol para verecek veya parasız çalıştıracak
programcı ordunuz varsa hayalinizi gerçekleştirmeniz veya bu işi berbat etmeniz,
evrensel yazılımcılık uzayınızı tümleyen iki ihtimal. İŞLETİM SİSTEMİ VE FELSEFECİLİK OYUNU İlk işletim sistemleri tek adamlar tarafından yazılmıştı, değil mi? Acaba günümüzde siz, sözgelimi benim yazacağım işletim sistemini kullanır mıydınız? Adı mı? "Pencereler", "Kapılar" veyahut "Surlar"... Bir işletim sistemi geliştirmek öncelikle yeni bir yorum, yeni bir yaklaşımdır. Sorun, yeni bir Türk Windows yazmanın ne kadar gerekli olduğu ve daha önemlisi ne yapacağıdır?
Önemli olan yeni sistemin sektöre farklı bir yorum getirmesi, farklı ihtiyaçları karşılayabilmesidir. Günümüzdeki Linux girişimlerinin teknolojik, ekonomik, güvenlik ve hatta sosyal ihtiyaçlar dolayısıyla gerçekleştirildiği ortadadır. Grafik özellikleri gelişmiş sistemler, ağ sistemleri, yayın işletim sistemleri, sunucu işletim sistemleri ve tabii masaüstü işletim sistemleri hep farklı ihtiyaçların karşılanması için, farklı yorumlar geliştirilerek, farklı felsefelerle ve hatta farklı paradigmalarla üretilmişlerdir. Olayı regülasyon sorunu olarak da algılayamak mümkün. Devlet kurumları ve Milli Eğitim Bakanlığına bağlı okullarda zaten pahalı Microsoft ürünlerine milyon dolarlar akıtılırken Tübitak kâr etmeyeceğini bildiği halde Pardus ile neden uğraşıyor olabilir sizce? Devletin bir kurumu, devlete ücretsiz yazılım ve teknik destek vereceğini taahhüt ettiğinde de durum değişmiyor bile! (Aselsan'ın ucuz yerli cep telefonu üretimi konusunu da araştırabilirsiniz.) İşte size "evrensel işletim sistemi problemi"nin bir başka boyutu daha...
Evet, düşünmek dünyanın en zor işlerinden. Tanıdığım çoğu programcı için ise bu zorluk, aynı şeyin ikinci kez düşünülmesiyle açığa çıkıyor. Hele uygulamayı beğenmeyen yöneticiler yüzünden aynı kodun değiştirilerek yeniden yazılması bazen moral bozukluğu, belki bazen de düşüncenin daha olgunlaştırılarak uygulamaya yeni katma değerlerle yansıtılmasıdır. Eğer siz işletim sistemi yazmayı düşünenlerdenseniz size kağıt üzerinde 2 boyutlu ve 3 boyutlu grafikler çizmeye çalışarak başlamanızı öneririm. y(x) = 2x Sonra aşağıda fonksiyonu verilen 4 boyutlu grafiği. t(x,y,z) = 4x + 3y + 2z En iyisi yalnızca eksenleri göstermeyi de deneyebilirsiniz.
Elinize kalemi aldıysanız bu "kaos"un
içine siz de yavaş yavaş girmeye başladınız demektir. KAOS TEORİSİ VE ETKİLENMEK SORUNU Kaos Teorisi dermiş ki, "Tabiat, kendi içerisinde düzensiz olan hareketlerin kaotik düzenidir. Yani düzensizliklerin düzenidir." Bununla bağlantılı pek çok fikir akımı var. Determinizm bunlardan biridir ve hatta bu teoriye aslında Deterministik Kaos Teorisi denmekteymiş. Tabiatta hiçbir şey raslantı değildir ve her olay kendinden önce gerçekleşen bir başka olayın etkisindedir. Bu durumda varlığın yani ilk hareketin başlangıcının ne olduğu sorusu ortaya çıkıyor. Buna "big-bang etkisi" deniyorsa, şöyleydi, böyleydi deniyorsa o "şey"i "şöyle" ve "böyle" haline getiren ilk olarak hangi etkiydi? Bir patlama varsa bu patlamanın da nedeni olmalıydı. Onun da nedeni, onun nedeninin de başka nedeni... Kimileriyse bing-bang'den önce bir etki olmasına gerek olmadığını da söylemektedir. İlginç tabi! Dekart'ın (Descartes) bu konuda çeşitli fikirleri var. Doğrusu düzensizliklerin düzeninden hareketle, bazı filozofların Yaratıcı'ya ulaşmasına, bazılarının da Materyalizm'e ulaşmasına şaşmamak lazım! (Sahi Dekart "düşünüyorum öyleyse varım"a nasıl ulaşmıştı?) Acaba Kaos Teorisi örneğin bilgisayarımızın rasgele(!) sayılar üretmesini veya aklımızdan rasgele(!) sayılar tutmamızı nasıl açıklıyor? Bilgisayarın rasgele ürettiğini düşündüğümüz bir sayı kendinden önceki bir olay dolayısıyla üretiliyorsa neden hala onun gerçekten rassal olduğunu düşünüyoruz?
(Microsoft'un SQL Server 2000'inde bazı yerel işlevler hazırlanırken ve kullanılırken bunların deterministik olması, yani her zaman ve her durumda aynı sonucu üretmesi şartı vardı. Bu yüzden SQL'deki UDF kullanıcı tanımlı işlevlerde rasgele sayılar üretmenizin mümkün olmadığını bilmiyorsanız tarihi öğrenmek için GetDate() işlevinin neden ısrarla çalışmak istemediğine de anlam veremeyebilirsiniz.) Tavla tepsisine attığınız zar gerçekten tesadüfi mi, yoksa bu, tutuş şekliniz ve ortam sıcaklığı gibi sonsuza yakın sayıdaki durumlardan etkilenmekte midir? Öyleyse tesadüfilik ve olasılık bunun neresinde? (Gerçi tesadüfiliğin kaos teorisi ile yakından alakası yoktur diyenler de vardır, ama kaos'u en anlaşılır şekilde hesaplayan kuramlar arasında da olasılık gösterilmektedir.) Eğer bu tesadüfilik duyular veya algılarımız tarafından kabul edilebilir ve müdahaleleri tolere edilebilir olmasaydı, piyango ve loto çekilişlerine kimsenin güveni olmazdı, değil mi? Yine bu yüzden büyük ikramiyeyi kaçıran herkes, düğmeye basan mankeni 1 saniye gecikmesi için suçlayabilirdi örneğin! O halde bu etkiler, dıştaki insanlar tarafından güvenilir raslantısal olarak kabul edilebilir niteliktedir. Ama bu, aslında kaotik etki dolayısıyla gerçekleşen, düzensizlikler içindeki bir düzenden başkası değildir. (Programcılar bilgisayara gerçekten tesadüfi olan sayılar ürettirebilmek için hala bolca ter döküyor!) Bu durumda rassallığın insan olmakla ve hatta varlığın kendisiyle çeliştiği sonucu ortaya çıkabilir. Bu, insanın zaten hileci ve güvenilmez kişiliği dolayısıyla değil, insanî özelliklerinden aldığı kusurları dolayısıyla ve yaratılmışlıkla ilgili olsa gerektir. Aklımızdan ürettiğimiz sayılar gerçekten rasgele olabilir mi? Bu, beyin hücrelerinin düzensizliklerin düzeni içindeki etkileşimi dolayısıyla açıklanabilir mi? Aklınızdan tuttuğunuz sayının, beyin dalgalarınızın tesadüfi değil de, yaratılıştan gelen ve doğa kanunlarından etkilenen düzenlere uygun olarak oluşmadığını iddia edebilir misiniz? Dün gece rüyanızda 3 koyun görmeseydiniz, aklınızdan rasgele sayı tutmanızı istediğimde yine de 333 sayısını tutacak mıydınız? Biraz önce sokakta "seksek" oynayan çocukları görmenizle şimdi aklınıza gelen "seksen" sayısı arasında bağlantı olmadığından da emin olabilir misiniz? (Kader inancını reddedenlerin bir kısmı sanırım bu görüşten de faydalanıyor.) Bu sayı sizin için ve bizim için rassal olabilecek miydi? (Eğer seksen sayısını beğenmeseydim, sizi biraz önce seksek oynayan çocuklardan etkilenmeniz dolayısıyla suçlayabilirdim hatta. Şahsen bana karşı tarafsız ve elde edeceğim sonuçlar konusunda habersiz olduğunuz sürece, seçimlerinize tarafsızlık/habersizlik rassallığı dolayısıyla güvenebiliyorum.) Bizim için tesadüfilik, tüm bu olaylara müdahale gücümüzün olmaması, olsa dahi her türlü farklı durumda bile kendi ürettiğimiz bu sayıların tümüne karşı aynı derecede güven duymamız dolayısıyla, sayımızın tarafsızlık dolayısıyla tesadüfiliğine güvenilir olduğunu kabul etmemiz mümkündür. Hayatımızın düzensizlikler içindeki düzeninde cereyan eden ve tuttuğumuz sayıyı etkileyebilecek olayların tesadüfi olduğuna tolerans göstermekteyiz. Zaten başka bir sayıyı tutsak bile bizim için farketmez, öyle değil mi? Milyarda bir ihtimalle lotoyu kaçırmak pahasına olsa da!
Tabiat'ın düzeninde yer alan düzensizlikler, kendi içlerinde gerçekten düzensiz midir? Bu düzensizlik yaratılıştan gelen bir "big-bang etkisi"nin sonucunda gerçekleşen bir düzen olamaz mı? Bu durumda kendi içinde düzenli olan bağımsız olayların, ancak diğer olaylara göre düzensiz olduğundan bahsetmek gerekir. Bu da bizi aynı düzensizlik düzenine götürmektedir. Neticede kaosta da, düzende de sonuç evrenin yaratılışından beri aynıdır: "Denge" Ve bu "Evrensel Denge" veyahut "Dengesizlikler Dengesi", dengesizlik gibi görünen zamanlarda bile hep vardır. "Üstlerindeki göğe bakmazlar mı? Onu nasıl bina ettik, nasıl donattık! Onda hiçbir düzensizlik ve eksiklik yoktur." (Kur'an-ı Kerim, Kaf/6) "Gerçekten biz, her şeyi bir ölçü ve dengede yarattık." (Kur'an-ı Kerim, Kamer/49) "Egemenlik ve heybet Tanrı'ya özgüdür, yüce göklerde düzen(denge) kuran O'dur." (İncil, Eyüp, 25/2) İşte, Kaos'tan ve felsefeden anlamayan biri olarak, kafamda
beliren pek çok sorudan ve kendi kendime verdiğim cevaplardan bazılarıydı
bunlar... İŞLETİM, SİSTEM, DÜŞÜNMEK İşletim sistemi yazanların işleri diğer programcılara göre biraz daha zor. Zira onlar hem programcılık yapıp, hem de işletim sistemi yazmak zorundadırlar!
Eğer programcılığa yeni başlıyor ve bu aralar ilerisi için iyi bir işletim sistemi yazarı olmayı düşünüyorsanız en az diğerleri kadar çalışkan ve de "sistem"li olmak zorundasınız, öyle değil mi?
Serkan ŞAHİNOĞLU |