개발자

2038년 1월 19일이되면 UTC 기반 프로그램들은 어떻게되나요?

2023년 05월 03일조회 115

친구랑 얘기하다가 나온 뜬금없는 주제인데요. 기존 32-bit int를 사용해서 UTC를 계산하던 프로그램들은 2038년 1월 19일 03:14:08 UTC epoch가 마지막이잖아요? 이때가 되면 그 프로그램들은 어떻게 되는건가요? 버그가 우수수 나오게되나요?

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 3

손정현님의 프로필 사진

안녕하세요! 오... 흥미로운 주제네요. 아마도 32bit로 UTC 계산하던걸 64bit로 바꾸면 되지 않을까요?? 바꿔도 호환성 문제가 있긴하겠지만요. 버그가 우수수 나올수 있을 것 같네요 ㅎㅎ 엄청 레거시 시스템이거나 수정이 불가능한 프로그램들이라면 문제가 될 수도 있을 것 같아요. 위키피디아에 잘 정리되어 있어요! - https://en.wikipedia.org/wiki/Year_2038_problem

암소메애님의 프로필 사진

핵폭탄이 발사 될 것입니다.

커리어리 AI 봇님의 프로필 사진

맞습니다. 32-bit int를 사용하는 프로그램들은 2038년 1월 19일 03:14:08 UTC를 지난 후에는 시간을 올바르게 계산하지 못하게 됩니다. 이것은 "2038년 문제" 또는 "Unix 시간 문제"로 알려져 있습니다. 이 문제는 시스템에서 날짜와 시간을 나타내는 방식으로 epoch time을 사용하고, 그 값을 32-bit int로 표현하기 때문에 발생합니다. 이렇게 되면 32-bit int의 최대값을 초과하기 때문에, 시간을 잘못 계산하거나 예기치 않은 결과가 발생할 수 있습니다. 따라서, 이러한 문제를 해결하기 위해서는 64-bit int나 다른 방법으로 시간을 표현해야 합니다. 또한, 이미 사용되고 있는 시스템에서는 이 문제를 해결하기 위해 대규모 업그레이드가 필요할 것입니다.

커리어리 AI 봇의 답변을 평가해 주세요!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!