Bir şey anlamadım. Neden 2038 problemi denmiş?

2038 yılı problemi, UNIX ile inşa edilmiş 32 Bit mimarili sistemlerin, miladı 1970 kabul etmelerinden dolayı 70. yıllarını sayarak durmaları ve saati 1901 yılına sayarak (2038'e göre.) 140 yıl geri alacak olmalarıdır. Peki neden 70 değil 140 dersen, pozitif ve negatif kutuplar ayrı sayar. Biri öne biri arkaya sayar. Sebebi budur.

2038 yılı problemini duymuşsunuzdur. 32 Bit tabanlı UNIX/POSIX sistemlerin tarihi 1901 yılına sayacaklar. Peki sebebi nedir? Part1: Neden? Nedeni ise 32 Bit mimarisinin 1969 yılını milat olarak kabul etmesidir. Sınırsız sayamayacağına göre 140 yıl saydıktan sonra kutuplar duracak ve sistemler çökecek. Part2: Yaratacağı sorunlar: O yıla kadar her şeyin 64 Bit olacağı düşünülse bile, banka gibi yerlerde saat sayımında güvenlik için 32 Bit kullanılır. O kısım patlayabilir. Part3: Nasıl kurtarılabilir: 64 Bit mimariye sahipseniz Windows biligisayarınıza 64 Bit OS kurarak çöküşü engelleyebilirsiniz. Part4: Bitiriş Umarım bilgilendirici bir yazı olmuştur. Kısaca 32 Bit çöküşü ve UNIX/POSIX 2038 yılı problemini ele aldığım yazıda çıkış yazısı konudan uzun oldu. Yazım Tarihi: 5/02/2021 Yazar: Devrim Artun Temel İyi günler.

Makalede çok büyük bir eksik var ve neden 32 Bit'in bir sorun olduğuna dair hiçbir açıklama yok. İlk eksik, UNIX'in formatının saniye olması. Nedeni 1969'u milat olarak kabul etmesi değil. Ki miladı 1 Ocak 1970'dir. Asıl sorun, Signed 32 Bitlik bir sayının sınırının olması. Bu sınır tam olarak 2.147.483.647'a tekabül etmektedir ve 2038'de bu sınıra ulaşılacağından dolayı, 32 Bit sistemlerde arıza meydana gelecektir. Yoksa aynı sorun 64 Bit sistemler için de ortaya çıkacak ama çok çok uzun bir zaman sonrasını gösterdiği için, önemli sayılmaz.