RPi는 Y2K38 버그로 고통 받습니까?


12

호기심으로 2038 년 1 월 19 일 오전 3시 14 분 7 초 (GMT)에 RPis 모델 A와 B는 어떻게됩니까? Y2K38 버그의 영향을 받 습니까?


그때까지 몇 명이나 계속 달리기를 기대하십니까?
Thorbjørn Ravn Andersen 님이

1
@ ThorbjørnRavnAndersen 내가 RPI 큰 미래를 가지고 있다고 생각합니다 정직하고 그들 중 많은 사람들이 여전히 실행이있을 것 (결국 모델 C 이상하지만를 ..)
DaGhostman 디미트로프

5
이 경우 시계를 설정하고 참조하십시오.
Thorbjørn Ravn Andersen 님이


1
파이의 미래가 어떻든 25 년 동안 32 비트 프로세서를 사용할 가능성도 없습니다. 위키 백과에 따르면 64 비트 시스템은 64 비트 time_t를 사용하여 Y292G 문제 로 전환합니다 .
금발 미녀

답변:


10

예.

다음은 OpenELEC을 실행하는 Pi에 대한 SSH 세션의 출력입니다.

Y2K38에 도달하면 정지합니다. SSH 세션 자체가 응답을 중지 할뿐만 아니라 OpenELEC도 중지됩니다.

2038 년까지 수정 프로그램이 릴리스 될 것으로 기대합니다.

또는 귀하의 질문은 24 년 안에 많은 찬사를 받을 것 입니다.

여기에 이미지 설명을 입력하십시오


날짜가 매우 짧은 머신에서 SSH 세션을 열 수 있다는 것에 놀랐습니다. 실제로 시도해 본 결과 +1입니다.
einnocent

@einnocent 왜 안될까요? SSH 핸드 쉐이킹 사양에서이를 방지 할 수있는 시간 비교가 있습니까? 또한 연결이 설정된 시간 변경했습니다 . 게다가, Pi 시계는 어쨌든 이미 잘못되었습니다 (몇 달, 몇 년 동안, 기억할 수 없습니다) : P
그 브라질 가이

사전 연결 시간을 변경하면 시계 시간의 큰 차이로 인해 일부 보안 핸드 셰이크에 문제가 발생할 수 있지만 SSH에 대해서는 잘 모르는 것으로 알고 있습니다. 연결 후 변경으로 인해 SSH가 34 년 동안 연결이 열려 있음을 발견하면 SSH가 갑자기 놀라게된다고 상상할 수 있습니다. SSH가 마법의 시간에 단순히 연결을 종료했을 가능성은 작지만 0이 아닌 것으로 가정합니다. 그러나 정말로 나는 당신의 대답에 확신합니다 :)
einnocent

@einnocent SSH가 "24 년 동안 열려있다"고 생각할 수 있다는 것은 나에게 일어나지 않았다. 22 년 후에 다시 시도하겠습니다. 이 달려 있기 때문에하지만, 그것이 원인이 아니라고 생각 정확히 도달 Y2K38에
그 브라질 가이

4

실제로 Raspberry Pi (하드웨어)는 괜찮을 것입니다. RTC가 포함되어 있지 않으므로 사용하는 OS에 따라 다릅니다.

그러나 IIRC의 모든 32 비트 버전의 Linux에는이 문제가 있습니다. 얼마 전 (10 년 정도 정도) Linus는 32 비트 플랫폼에서이 문제를 해결하는 데 흥미가 없으며 당시의 모든 64 비트 Linux 플랫폼에는 64 비트 time_t가 있다고 말했습니다. 그는 그때부터 마음이 바뀌었을지도 모른다. 내가 찾을 수있는 가장 좋은 링크는 http://permalink.gmane.org/gmane.linux.kernel/1184914- 동일하지 않지만 비슷한 의도를 나타냅니다.

변경하기가 특히 어렵지는 않지만 커널 ABI를 강제로 변경합니다. 그 자체로 문제가 있습니다.

그러나 RiscO는 40 비트 시간 (센티 초)을 사용하지만 Epoch는 다릅니다. ( https://www.riscosopen.org/wiki/documentation/show/OS_Word%2014_3)-2318 년에 언젠가 실패한 것으로 만듭니다-[calc은 1970 년 + ((2 ^ 40) / 100) / (60 * 60 * 24 * 365.25)]

안드로이드는 물론 리눅스 커널을 사용합니다. 그리고 다른 옵션을 놓친 것 같습니다.


1

현재 구현 된대로 소프트웨어를 변경하지 않으면 Raspberry Pi에 나열된 버그가 발생할 수 있습니다.

대부분의 최신 컴퓨터는 64 비트 프로세서로 뛰어 들지만 그 시점에서 여전히 32 비트 메인 스트림 프로세서를 보더라도 놀라지 않을 것입니다. 문제를 해결할 수있는 소프트웨어 솔루션이 있습니다.

가장 가능성있는 수정은 2000 년 1 월 1 일과 같은 시점에서 시작하도록 Epoch 시간을 업데이트하는 것 같습니다. 이것이 버그를 지연 시키지는 않지만 , 가까운 미래에 확실히 재설정 할 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.