1 Ocak 2000 tarihinde dünya çapında birçok bilgisayar bir anda çalışmayı durdurdu. O zamanlar öngörülen bir sorun olmasına rağmen bazı noktalarda önüne geçmek mümkün olmadı. İşte bilgisayarların 2000 yılında yaşadığı sorunun bir benzeri 19 Ocak 2038 yılında yeniden yaşanabilir.
Konuya yabancı olan okurlarımız için ilk olarak 1 Ocak 2000 tarihinde yaşanan olayın tam olarak ne olduğunu, perde arkasında yaşananları açıklayalım. Sonrasında da 2038 yılında bizi bekleyen olası “felakete”(!) ve muhtemel sonuçlarına yakından bakalım.
1 Ocak 2000 tarihinde neler yaşandı?
2000 yılı öncesi zamanlarda bilgisayarlar tarihleri iki haneli sayılar üzerinden ölçerdi. Örneğin 24 Nisan 1997 tarihi için “24/04/97” değeri biçilirdi. Ay ve gün için iki haneli sayılar kullanmak yeterli olsa da sene 2000’e geldiği zaman yıllar için iki haneli sayılar kullanmak yetmeyecekti.
1 Ocak 2000 tarihinde yaşanan sorunların asıl sebebi de buydu. Bilgisayarlar “00” değerinin 1900 yılı için mi yoksa 2000 yılı için mi olduğuna karar veremeyerek bir çıkmaza düştü. 2000 yılı geldiği zaman böyle bir sorunun baş göstereceği aslında önceden biliniyordu. Hatta zamanı geldiğinde bilgisayarlar çökeceği için gökyüzündeki uçakların yere çakılacağına yönelik felaket teorileri vardı.
Teoriler tabii ki gerçekleşmedi. Çökmesi böyle faciavâri sonuçlar doğuracak sistemler güncellenerek büyük sorunlar yaşanmasının önüne geçildi. Ancak maddi sebeplerden ötürü güncellenemeyen ev bilgisayarları veya çok büyük önem arz etmeyen bazı bilgisayarlar güncellenmedi.
Bilgisayarların tarihi yanlış ölçmesi illa ki de sorunlar çıkacağı anlamına gelmiyor. Çalışması kesin bir tarihî doğruluğa dayanmayan sistemler bir sorun olmadan, yalnızca tarihi yanlış göstererek çalışmaya devam etti. 1 Ocak 2000 tarihi gelene kadar güncellenmeyen ancak tarihin doğruluğuna dayanan sistemler ise çalışmayı durdurdu.
Peki böyle bir sorun çıkacağı belli olmasına rağmen tarihler neden yine de iki haneli değerler üzerinden ölçüldü? Cevap çok basit. O zamanlar depolama çok pahalıydı. (kilobyte başına 10 dolar civarı) Yani çalışan programların depolama biriminde olabildiğince az yer kaplaması gerekiyordu.
19 Ocak 2038 tarihinde yaşanacak Y2038 problemi nedir?
19 Ocak 2038’de yaşanacak olan problem, 2000 yılında yaşanan sorunla benzer sonuçlar doğuracak. Ancak sebep biraz daha farklı. Bu sefer sebep 32 bit işlemcilerin yetersiz hesaplama kapasitesinden ötürü gerçekleşecek. 19 Ocak 2038 tarihine geldiğimiz zaman tarih, 32 bit işlemcilerin hesap kapasitesini aşacak.
Artık öyle bir dönemdeyiz ki 64 bit işlemciler yavaş yavaş mobil cihazlara bile koyulmaya başlandı. Yani tarihler 19 Ocak 2038’i gösterdiği zaman muhtemelen 32 bit işlemciler kişisel kullanım alanından iyice çekilmiş olacak.
Y2038 sorunundan hangi cihazlar etkilenecek?
2038 yılına kadar çoğu cihaz en azından 64 bit işlemcilerden güç alacağına göre, tarih geldiğinde gözler genellikle yükseltme yapmanın zor ve maliyetli olduğu bilgisayarlarda olacak. Özellikle altyapı tesislerinde ciddi bir yenileme çalışma yapılması gerekecek.
Elektrik santrallerinde bulunan bilgisayarlar konuya dair güzel bir örnek olarak verilebilir. Ancak 2038 yılına kadar yapılacak çalışmalarla birlikte sorun yaşaması muhtemel, büyük önem teşkil eden sistemlerde güncelleme çalışmaları yapıldığı müddetçe endişelenmemizi gerektiren bir durum yaşanmayacak.
Y2038 ya da Y2k38 sorununa ne sebep olacak?
32 bit işlemciler 4.294.967.295 farklı değer aralığında hesaplama yapabilir. Ancak bu değerler negatif ve pozitif olarak ikiye bölünür. Yani 2.147.483.648 tane negatif, 2.147.483.647 tane de pozitif değer bulunur.
Bilgisayarlar tarih bilgisini saniye bazında hesaplar. 1 Ocak 1970 00.00:00 tarihinden, 19 Ocak 2038 03.14:07 tarihine kadar olan saniye sayısı da 2.147.483.647. Yani 19 Ocak 2038 03.14:08 tarihi geldiği zaman 32 bit işlemcilerin pozitif yönde sayabileceği değer sınırı aşılmış olacak. O yüzden de negatif değerlere geçiş yapacak.
Bilgisayarlar negatif değerlere geçince en küçük negatif sayıdan başlayarak büyüğe doğru saymaya başlayacak. Bunun sonucu olarak da tarih sıfırlanacak. Bilgisayarların gittiği en eski tarih olan 1 Ocak 1970'ten yeniden saymaya başlayacak.
2038 habercisi niteliğinde olan Gangnam Style örneği:
2012 yılında çıkan Gangnam Style Youtube üzerinde 1 milyar görüntülenmeyi yakalayan ilk video olma özelliğine sahip. Ancak büyümesi bununla kalmayıp 2 milyarın üstüne çıktı. Videonun izlenme sayısı 2.147.483.647’nin üstüne çıktığı zaman ise Youtube’un kullandığı 32 bit sayaç yetersiz kaldı. Kısacası Youtube, Gangnam Style yüzünden sayaç teknolojisini yenilemek zorunda kaldı.
Peki 64 bit işlemcilerde benzeri bir sorun yaşanacak mı?
64 bit aralığında işlem yapabilen işlemcilerin sayabildiği değer sayısı tamı tamına 9.223.372.036.854.775.808. Bu değer 293.274.701.009 (İki yüz doksan üç milyar iki yüz yetmiş dört milyon yedi yüz bir bin dokuz) yıla tekabül ediyor. Yani 64 bit işlemcilerin yetersiz kalacakları gün için önlem alabileceğimiz çok uzun bir süre var.
Böylelikle 2038 yılında hâlâ 32 bit işlemciye sahip bilgisayarların, telefonların veya herhangi tarih ölçebilen bir cihazın karşılaşacağı Y2038 sorununun ne olduğuna yakından baktığımız yazımızın sonuna geliyoruz. Yaklaşık olarak 293 milyar yıl sonra 64 bit işlemciye sahip bilgisayarların yaşayacağı sorunları anlatacağımız yazımızda görüşmek üzere. :)