RPi, Y2K38 hatasından muzdarip olacak mı?


12

Sadece meraktan, 19 Ocak 2038'de 3:14:07 GMT'de RPis Model A ve B'ye ne olacak? Y2K38 hatasından etkileniyorlar mı?


O zaman hala kaç kişinin çalışmasını bekliyorsunuz?
Thorbjørn Ravn Andersen

1
@ ThorbjørnRavnAndersen dürüst olmak gerekirse RPi'nin büyük bir geleceği olduğuna inanıyorum ve birçoğu hala çalışıyor olacak (sonunda C veya daha büyük modeller ama ..)
DaGhostman Dimitrov

5
Bu durumda saati ayarlayın ve bakın.
Thorbjørn Ravn Andersen

1
Bunu
düşünmedim

1
Pi'nin geleceği ne olursa olsun, 25 yıl içinde 32 bit işlemci kullanmaya devam edemez. Vikipedi'ye göre, 64 bit sistemler 64 bit kullanır time_tve bunu Y292G problemine dönüştürür, ne biz ne de güneş görmeyecektir.
goldilocks

Yanıtlar:


10

Evet.

İşte OpenELEC çalıştıran Pi'ye bir SSH oturumu çıktısı.

Y2K38'e ulaştıktan sonra takılıyor. Yalnızca SSH oturumunun kendisi yanıt vermiyor, aynı zamanda OpenELEC de donuyor.

2038 yılına kadar bir düzeltme yayınlanacağını umuyorum (ve umarım!).

Bu, ya da sorunuz 24 yıl içinde çok fazla oy alacak.

resim açıklamasını buraya girin


Böylesine çılgınca bir tarihe sahip bir makineyle bir SSH oturumu açabildiğinize şaşırdım. Aslında denemek için +1.
einnocent

@einnocent Neden yapamıyorum? SSH el sıkışma özellikleri üzerinde bunu engelleyecek herhangi bir zaman karşılaştırması var mı? Ayrıca, bağlantı kurulduktan sonraki zamanı değiştirdim . Ayrıca, Pi saati zaten yanlıştı (birkaç ay, yıllar hatırlayamıyor): P
Brezilyalı Adam

Bağlantı öncesi zaman değiştiğinde, saat zamanlarındaki büyük farklılıkların bazı güvenlik anlaşmalarıyla ilgili sorunlara neden olabileceğini anlıyorum, ancak özellikle SSH'yi bilmiyorum. Bağlantı sonrası bir değişiklikle, SSH'nin 34 yıl boyunca açık bir bağlantısı olduğunu keşfettikten sonra aniden çıldırdığını hayal edebiliyorum. Sanırım SSH'nin bu sihirli zamanda bağlantıyı sonlandırması için küçük (ama sıfır olmayan) bir şans var. Ama gerçekten cevabınıza ikna oldum :)
einnocent

@einnocent SSH'nin "24 yıl boyunca açık" olduğunu ve asılabileceğini düşünmüyordu. 22 yıl sonra tekrar deneyeceğim. Ama bence sebep bu değil, çünkü tam olarak Y2K38'e ulaştığında asılı duruyor
Brezilyalı Adam

4

Aslında Raspberry Pi (donanım) iyi olacak. Bir RTC içermediğinden, kullandığınız işletim sistemine bağlı olacaktır.

Ancak IIRC'nin tüm 32bit Linux sürümlerinde bu sorun var. Bir süre önce (10 yıl kadar) Linus, bunu 32 bit platformlarda düzeltmek konusunda ilginç olmadığını ve o zamanki 64bit Linux platformlarının hepsinin 64bit time_t olduğunu söyledi. O zamandan beri değişmiş olabilir. Bulabileceğim en iyi bağlantı http://permalink.gmane.org/gmane.linux.kernel/1184914 - aynı değil, ancak benzer bir niyet ifade ediyor.

Değiştirilmesi özellikle zor bir şey olmayacak, ancak çekirdek ABI'lerinde bir değişikliği zorlayacaktır. Bu kendi içinde bir sorundur.

Ancak, RiscOs 40bit (santisaniye) zaman kullanır, ancak farklı bir Döneme sahiptir. ( https://www.riscosopen.org/wiki/documentation/show/OS_Word%2014_3 ) - 2318'de bir zamanlar başarısız oluyorum - [hesap: 1970 + ((2 ^ 40) / 100) / (60 * 60 * 24 * 365,25)]

Android, elbette Linux çekirdeğini kullanıyor. Ve eminim diğer seçenekleri kaçırdım.


1

Şu anda uygulandığı gibi, yazılımda herhangi bir değişiklik yapılmazsa, Raspberry Pi listelenen hatanın kaderini çekecektir.

Modern makinelerin çoğu 64 bit işlemcilere atlıyor, ancak o noktada 32 bit ana işlemcileri hala görmek beni şaşırtmayacaktı. Sorunu çözmek için gerekli olabilecek ve çözülmesi gereken yazılım çözümleri vardır.

Bana öyle geliyor ki, en muhtemel düzeltme Epoch zamanını 1 Ocak 2000 gibi bir şeyle başlamak için güncellemek olacak. Bu, hatayı geciktirmezken, kesinlikle öngörülebilir gelecek için sıfırlayacaktır .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.