RPi จะได้รับผลกระทบจากข้อผิดพลาด Y2K38 หรือไม่


12

เพิ่งเกิดจากความอยากรู้จะเกิดอะไรขึ้นกับ RPis Model A และ B ในวันที่ 19 มกราคม 2038 ใน 3:14:07 AM GMT พวกเขาได้รับผลกระทบจากข้อผิดพลาด Y2K38หรือไม่


มีกี่คนที่คุณคาดหวังว่าจะยังคงใช้งานอยู่?
Thorbjørn Ravn Andersen

1
@ ThorbjørnRavnAndersenบอกตามตรงฉันเชื่อว่า RPi มีอนาคตที่ยิ่งใหญ่และจะมีอีกหลายคนที่ยังคงทำงานอยู่ (ในที่สุดก็เป็นรุ่น C หรือสูงกว่า แต่ .. )
DaGhostman Dimitrov

5
ในกรณีนั้นให้ตั้งนาฬิกาและดู
Thorbjørn Ravn Andersen

1
ยังไม่ได้ลองทำเช่นนั้น .. : D
DaGhostman Dimitrov

1
ไม่ว่าอนาคตของ pi จะเป็นอย่างไรโอกาสก็ไม่ได้อยู่ที่อะไรและจะยังใช้โปรเซสเซอร์ 32 บิตใน 25 ปี ตามวิกิพีเดียระบบ 64 บิตใช้ 64 บิตtime_tเปลี่ยนสิ่งนี้เป็นปัญหาY292Gซึ่งทั้งเราและดวงอาทิตย์จะมีชีวิตอยู่เพื่อดู
goldilocks

คำตอบ:


10

ใช่.

นี่คือผลลัพธ์ของเซสชัน SSH ไปที่ Pi ของฉันที่ใช้ OpenELEC

มันค้างหลังจากถึง Y2K38 ไม่เพียง แต่เซสชัน SSH เท่านั้นที่จะหยุดการตอบสนอง แต่ OpenELEC ก็หยุดเช่นกัน

ฉันคาดหวัง (และหวังว่า!) ว่าภายในปี 2038 การแก้ไขจะได้รับการเผยแพร่

นั้นหรือคำถามของคุณจะได้รับจำนวนมากของ upvotes ใน 24 ปีที่ผ่านมา

ป้อนคำอธิบายรูปภาพที่นี่


ฉันประหลาดใจที่คุณสามารถเปิดเซสชัน SSH ด้วยเครื่องจักรที่มีวันที่ไม่ดี +1 สำหรับการลองใช้งานจริง
einnocent

@einnocent ทำไมฉันถึงไม่สามารถทำได้? มีการเปรียบเทียบเวลากับสเป็คการจับมือแบบ SSH ที่จะป้องกันหรือไม่ นอกจากนี้ฉันได้เปลี่ยนเวลาหลังจากสร้างการเชื่อมต่อ นอกจากนี้นาฬิกา Pi ก็ผิดอยู่ดี (ไม่กี่เดือน, ปี, จำไม่ได้): P
Guy บราซิลนั่น

การเปลี่ยนการเชื่อมต่อล่วงหน้าฉันเข้าใจว่าความแตกต่างของเวลาเป็นจำนวนมากอาจทำให้เกิดปัญหากับการจับมือการรักษาความปลอดภัยบางอย่าง แต่ฉันไม่รู้เกี่ยวกับ SSH โดยเฉพาะ ด้วยการเปลี่ยนแปลงหลังการเชื่อมต่อฉันสามารถนึก SSH ก็ประหลาดใจเมื่อค้นพบว่ามีการเชื่อมต่อเปิด 34 ปี ฉันคิดว่ามีโอกาสเล็กน้อย (แต่ไม่ใช่ศูนย์) ที่ SSH เพียงแค่ยุติการเชื่อมต่อในเวลามหัศจรรย์นั้น แต่จริงๆผมเชื่อกับคำตอบของคุณ :)
einnocent

@ ไม่บริสุทธิ์มันไม่ได้เกิดขึ้นกับฉันที่ SSH คิดว่ามันเป็น "เปิด 24 ปีแล้ว" และแขวน ฉันจะลองอีกครั้งด้วยพูด 22 ปี แต่ผมคิดว่ามันไม่ได้เป็นสาเหตุเพราะมันแฮงค์ว่าเมื่อมาถึง Y2K38
ที่บราซิลผู้ชาย

4

ที่จริงแล้ว Raspberry Pi (ฮาร์ดแวร์) จะใช้ได้ มันไม่มี RTC ดังนั้นมันจะขึ้นอยู่กับระบบปฏิบัติการที่คุณใช้

แต่ IIRC Linux รุ่น 32 บิตทั้งหมดมีปัญหานี้ บางครั้งที่ผ่านมา (10 ปีหรือมากกว่านั้น) Linus บอกว่าเขาไม่ได้สนใจในการแก้ไขสิ่งนี้บนแพลตฟอร์ม 32 บิตและแพลตฟอร์ม 64 บิต Linux ทั้งหมดในเวลานั้นมี 64 บิต time_t เขาอาจจะเปลี่ยนเป็นความคิดตั้งแต่นั้นมา ลิงค์ที่ดีที่สุดสำหรับสิ่งนี้ที่ฉันสามารถหาได้คือ http://permalink.gmane.org/gmane.linux.kernel/1184914 - ซึ่งไม่เหมือนกัน แต่แสดงออกถึงเจตนาที่คล้ายกัน

มันจะไม่เป็นเรื่องยากที่จะเปลี่ยนแปลง แต่จะบังคับให้มีการเปลี่ยนแปลงในเคอร์เนล ABIs ซึ่งเป็นปัญหาในตัวเอง

แต่ RiscOs ใช้เวลา 40 บิต (centisecond) แต่ด้วยยุคที่แตกต่างกัน ( https://www.riscosopen.org/wiki/documentation/show/OS_Word%2014_3 ) - ฉันทำสิ่งที่ผิดพลาดบางครั้งในปี 2318 - [คำนวณเดิม: 1970 + (2 ^ 40) / 100) / (60 * 60 * 24 * 365.25)]

แน่นอนว่า Android ใช้เคอร์เนล Linux และฉันแน่ใจว่าฉันพลาดตัวเลือกอื่น ๆ


1

ตามที่มีการใช้งานในปัจจุบัน Raspberry Pi จะประสบชะตากรรมของบั๊กที่ระบุไว้หากไม่มีการเปลี่ยนแปลงในซอฟต์แวร์

เครื่องจักรที่ทันสมัยส่วนใหญ่กำลังทำการข้ามไปยังตัวประมวลผล 64 บิต แต่ฉันไม่แปลกใจเลยที่ยังคงเห็นตัวประมวลผลหลัก 32 บิต ณ จุดนั้น มีโซลูชันซอฟต์แวร์ที่สามารถและจะต้องแก้ปัญหา

มันดูเหมือนว่าฉันว่าการแก้ไขส่วนใหญ่มีแนวโน้มจะมีการอัปเดต Epoch เวลาที่จะเริ่มต้นที่บางอย่างเช่นวันที่ 1 มกราคม 2000 ในขณะนี้จะไม่ล่าช้าข้อผิดพลาดก็แน่นอนจะรีเซ็ตมันสำหรับอนาคตอันใกล้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.