"죽지도 않고 또 왔네" Y2K 밀레니엄 버그

딱 20년 전, 2000년 1월 1일 자정을 넘긴 시각으로 기억을 되돌려 보자. 전 세계 수많은 사람들이 TV를 쳐다보며 안도와 기쁨의 탄식과 환호성을 질렀다. 새로운 천년이 왔다는 사실과 함께 Y2K 버그의 공포로부터 무사히 탈출했다는 사실 때문이었다.

기억들 하시는가? Y2K 밀레니엄 버그.

돌이켜보면 1999년은 흉흉한 한 해였다. 새로운 천년을 맞이한다는 기쁨보다 대내적으로는 IMF 구제금융의 여파가 채 가시지 않은 상황에다 노스트라다무스의 예언 떡밥으로 말미암은 종말론 확산 등 세기말적인 현상이 끊이지 않던 시절. 여기에 Y2K 밀레니엄 버그마저 겹치면서 IT 업계도 뒤숭숭할 무렵이었다.

1999년 당시 Y2K 문제를 다룬 KBS 9시 뉴스, ”세상이 끝장 나는 줄 알았던가 ... ” /사진=KBS

Y2K 밀레니엄 버그

1999년 12월 31일에서 2000년 1월 1일로 넘어갈 때 날짜나 시각을 다루는 과정에서 오류가 일어나는 문제로, 대표적인 컴퓨터 설계의 오류로 지적된다. 컴퓨터 메모리가 매우 고가의 첨단 부품이었던 1960년대, 메모리를 아끼고자 연도 표기를 네자리 '1963'이 아닌 두자리 '63'으로만 저장하던 규칙으로 인해 서기 2000년이 되면 이를 1900년으로 해석해야 할지, 2000년으로 해석해야 할지 컴퓨터가 판단하지 못한다는 데에서 문제의 심각성이 대두되었다. <위키백과>

대비를 잘 한 덕분인지 별 문제 아니었던 걸로 호들갑이었던 건지 ... 어쨌든 Y2K 밀레니엄 버그는 별탈없이 지나갔다. 그런데 20년이 지난 지금 다시 한번 Y2K 문제가 불거지고 있다는 소식이 들린다.

1999년 당시 임시로 처리한 Y2K 대응 방법에서 문제가 발생한 것.
Y2K 문제를 해결하려면 (1) 코드를 완전히 변경하거나 (2) 윈도윙(Windowing)이라는 임시 방편을 사용할 수 있었다. 윈도윙은 단순히 00~20까지의 연도 숫자를 1900년이 아닌 2000년으로 인식토록 하는 방법이다.

일단 급한대로 긴급 조치를 취한 후 20년 안에 코드를 변경하거나 코드를 폐기하는 선택(설마 이 프로그램을 20년 후까지 사용하겠어?)을 하면 된다고 생각했던 것이다. 그런데 그 20년이 훌쩍 지나버렸다.

Y2K 버그 조차도 애당초 1960년대 혹은 1970년대 프로그래머들이 "설마 이 코드가 2000년까지 사용되겠어?"라는 생각으로 시작된 문제였다. 그걸 또 한 번 반복한 셈.

"인간의 어리석음은 끝이 없고 같은 실수를 반복한다"

Y2K 밀레니엄 버그와 달리 '거의' 혹은 '전혀' 대비하지 않은 2020 버그이기 때문에 실제 피해가 조금씩 발생하고 있다고 한다.

폴란드의 한 금전등록기 제품의 경우 '2020 버그'로 인해 영수증을 출력할 수 없는 사태가 발생해 긴급 수리에 나섰고, 'WWE 2K20'라는 온라인 레슬링 게임이 2020 버그로 새해 1일에 서비스가 중단되기도 했다. 빅데이터 플랫폼으로 유명한 스플렁크(Splunk)도 2020 버그에 취약한 것으로 밝혀졌다. 일부 병원 의료기기에서도 2020 버그가 발견됐다고 한다.

여기서 끝이 아니다.
전문가들에 의하면 2038 버그도 예상되고 있다. 유닉스 시간에 32비트 정수형을 쓰는 컴퓨터의 시계가 서기 2038년 1월 19일 3시 14분 7초가 되면 초기값인 0, 즉 1970년 1월 1일 0시 0분 0초로 돌아가게 되는 버그를 말한다. PC뿐만 아니라 스마트폰 등 모바일 기기에서도 발견되고 있어 Y2K 밀레니엄 버그보다 심각한 상황이 도래할 수 있다고 일부 전문가들은 경고하고 있다.

이 모든게 그 놈의 '돈'과 '귀차니즘' 때문이다.

테크잇 뉴스레터를 전해드립니다!

오피니언 기반 테크 블로그 'TechIt'
테크 비즈니스를 보는 다양한 통찰들을 이메일로 간편하게 받아 볼 수 있습니다.

About the author

5시35분
5시35분

테크 블로거 / 넷(Net)가 낚시꾼, 한물간 블로거, 단물 빠진 직장인

No more pages to load


TechIT

테크 비즈니스를 보는 다양한 통찰 '테크잇'

독자 여러분들께서 좋은 의견이나 문의 사항이 있으시면 아래 양식에 따라 문의 주시기 바랍니다.

Contact