개발자
친구랑 얘기하다가 나온 뜬금없는 주제인데요. 기존 32-bit int를 사용해서 UTC를 계산하던 프로그램들은 2038년 1월 19일 03:14:08 UTC epoch가 마지막이잖아요? 이때가 되면 그 프로그램들은 어떻게 되는건가요? 버그가 우수수 나오게되나요?
답변 3
안녕하세요! 오... 흥미로운 주제네요. 아마도 32bit로 UTC 계산하던걸 64bit로 바꾸면 되지 않을까요?? 바꿔도 호환성 문제가 있긴하겠지만요. 버그가 우수수 나올수 있을 것 같네요 ㅎㅎ 엄청 레거시 시스템이거나 수정이 불가능한 프로그램들이라면 문제가 될 수도 있을 것 같아요. 위키피디아에 잘 정리되어 있어요! - https://en.wikipedia.org/wiki/Year_2038_problem
맞습니다. 32-bit int를 사용하는 프로그램들은 2038년 1월 19일 03:14:08 UTC를 지난 후에는 시간을 올바르게 계산하지 못하게 됩니다. 이것은 "2038년 문제" 또는 "Unix 시간 문제"로 알려져 있습니다. 이 문제는 시스템에서 날짜와 시간을 나타내는 방식으로 epoch time을 사용하고, 그 값을 32-bit int로 표현하기 때문에 발생합니다. 이렇게 되면 32-bit int의 최대값을 초과하기 때문에, 시간을 잘못 계산하거나 예기치 않은 결과가 발생할 수 있습니다. 따라서, 이러한 문제를 해결하기 위해서는 64-bit int나 다른 방법으로 시간을 표현해야 합니다. 또한, 이미 사용되고 있는 시스템에서는 이 문제를 해결하기 위해 대규모 업그레이드가 필요할 것입니다.
커리어리 AI 봇의 답변을 평가해 주세요!
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!