회로기판 위에 놓인 마이크로컨트롤러 칩을 확대 촬영한 모습

인텔용 앱이 애플 실리콘에서 «그냥」 돌아가는 이유 — 로제타 2의 번역 원리

참고자료 · 자료 시점
핵심 출처 — Apple Developer, 「About the Rosetta Translation Environment」 기술 설명 자료 https://developer.apple.com/documentation/apple-silicon/about-the-rosetta-translation-environment, Apple Developer News, 「Upcoming changes to Rosetta support for Intel-based macOS apps」(2026) — macOS 26.4 알림·macOS 27 마지막 지원·레거시 게임 예외 https://developer.apple.com/news/?id=w5ngl9k2, 2006년 파워PC→인텔 전환기에 도입된 로제타 1(구 로제타)의 목적과 역사
자료 시점 — 애플 실리콘 맥 전환기(2020년~) 이후 현재까지, macOS 27(2026년 가을) 지원 종료 예정 포함
정리 — Inkpipes 편집팀 · 2026.9

애플 실리콘 맥과 인텔 맥은 «명령어»를 알아듣는 방식 자체가 다릅니다. 인텔용으로 만들어진 프로그램을 애플 실리콘 맥에 그대로 가져다 놓으면, 원칙적으로는 실행될 수 없어야 합니다.

그런데 실제로는 대부분 그냥 열립니다. 속도가 눈에 띄게 느려지지도 않습니다. 이 사이에서 조용히 일하는 것이 로제타 2입니다. 사용자는 번역이 일어나고 있다는 사실조차 눈치채지 못하는 경우가 많습니다. 다만 이 «그냥 열리는» 상태가 영구히 이어지지는 않습니다 — 이 글 마지막에 그 시한을 짚었습니다.

«그때그때 번역」이 아니라 «미리 번역」입니다

번역이라고 하면 보통 실행하는 «그 순간» 한 줄씩 바꿔 가며 돌아갈 것 같습니다. 그러면 매번 열 때마다 느려야 자연스럽습니다.

로제타 2의 핵심은 다릅니다. 앱을 설치하는 시점(또는 맨 처음 여는 시점)에 앱의 실행 코드 «전체»를 미리 인텔 명령어에서 애플 실리콘 명령어로 번역해 둡니다. 이것을 «사전 번역(AOT, ahead-of-time)»이라고 부릅니다.

⇒ ★★번역이 끝난 결과물은 디스크에 따로 저장해 둡니다. 그래서 두 번째로 그 앱을 열 때는 번역을 다시 하지 않고, 이미 번역해 둔 것을 그냥 불러오기만 합니다. 처음 설치·첫 실행 때 살짝 시간이 걸리는 이유이자, 그 다음부터는 거의 체감이 안 되는 이유입니다.

확대경으로 회로기판을 들여다보며 작업하는 기술자
회로기판을 정밀하게 들여다보며 작업하는 모습입니다. ⚠️로제타 2의 작업 장면이 아니며, 「한 형식을 다른 형식으로 하나하나 바꾸는 정밀 작업」이라는 이 글의 개념을 보여 주려고 실었습니다. 사진: United States Navy / Wikimedia Commons (Public domain)

그런데 «미리」 번역이 안 되는 경우도 있습니다

모든 코드를 미리 번역할 수 있는 것은 아닙니다. 어떤 프로그램은 실행되는 «그 순간»에야 어떤 코드를 돌릴지 결정됩니다. 이런 코드는 설치 시점에는 아직 존재하지 않으므로 미리 번역해 둘 수가 없습니다.

⇒ ⚠️이런 경우를 위해 로제타 2는 실시간 번역(JIT, just-in-time)도 함께 갖추고 있습니다. 코드가 만들어지는 바로 그 순간에 번역해서 실행합니다. 사전 번역보다는 느리지만, 이런 코드는 앱 전체 중 일부라서 체감 속도에 큰 영향을 주지는 않습니다.

⇒ ★즉 로제타 2는 하나의 방식만 쓰는 게 아니라 «미리 할 수 있는 건 미리, 그때 가서만 알 수 있는 건 그때» 식으로 상황에 맞춰 두 방식을 섞어 씁니다.

「처음엔 느리고 그다음부터 빠르다」는 체감의 정체

인텔용 앱을 처음 설치하고 실행할 때 살짝 버벅이다가, 이후로는 별문제 없이 돌아가는 경험을 한 적이 있을 것입니다.

⇒ ★★이것이 바로 사전 번역이 일어나는 순간을 체감한 것입니다. 첫 실행 때 앱 전체를 번역하느라 시간이 들고, 그 결과물이 저장된 뒤로는 다시 번역할 필요가 없어 빨라집니다. 매번 느리다면 그건 사전 번역이 아니라 매번 새로 번역하는 것이므로, 오히려 뭔가 잘못됐다는 신호로 볼 수 있습니다.

이름에 «2」가 붙은 이유

로제타 2라는 이름에서 짐작할 수 있듯, 애플이 이런 종류의 번역 계층을 만든 것은 이번이 처음이 아닙니다.

2006년, 애플은 맥의 프로세서를 파워PC에서 인텔로 옮기면서 «로제타»(지금은 로제타 1로 불립니다)라는 번역 계층을 처음 선보였습니다. 방향은 반대지만(그때는 파워PC→인텔, 지금은 인텔→애플 실리콘), 「예전 칩용으로 만든 프로그램을 새 칩에서도 그대로 쓰게 해 준다」는 목적은 똑같습니다.

⇒ ★두 번 모두 프로세서 자체를 완전히 바꾸는 큰 전환이었고, 그 전환 때마다 «기존 프로그램이 갑자기 못 쓰게 되는» 문제를 이 번역 계층으로 넘겼습니다. 로제타라는 이름 자체도, 서로 다른 문자 체계를 나란히 새겨 두어 고대 이집트 문자 해독의 열쇠가 된 «로제타석»에서 따온 것입니다 — 서로 다른 «언어»를 잇는다는 본래의 비유가 이번에도 그대로 이어진 셈입니다.

⇒ ⚠️두 전환의 방향이 정확히 반대라는 점도 흥미롭습니다. 2006년에는 «파워PC 프로그램을 인텔 위에서» 돌렸고, 지금은 «인텔 프로그램을 애플 실리콘 위에서» 돌립니다. 즉 한때 «번역해서 실행해야 했던 쪽»(인텔)이 이제는 «번역돼서 들어오는 쪽»이 됐습니다. 프로세서 전환이 14년의 시차(2006→2020)를 두고 두 번 일어났고, 그때마다 같은 이름의 다리가 놓인 셈입니다.

실무 적용 — 이 구조를 알면 이해되는 것들

  • ★★인텔용 앱을 오랜만에 다시 여는데 버벅인다면, 시스템이 «다시」 번역하고 있을 가능성을 생각해 보십시오. 앱 업데이트나 시스템 업데이트 이후에는 이전에 저장해 둔 번역 결과가 무효화돼 다시 사전 번역이 일어날 수 있습니다.
  • ★똑같이 «인텔용」이라고 표시된 앱이라도, 내부에서 실시간으로 코드를 만들어 내는 유형(예: 일부 개발 도구·인터프리터)은 상대적으로 더 느리게 느껴질 수 있습니다. 사전 번역만으로 끝나지 않는 코드가 섞여 있기 때문입니다.
  • ★가능하다면 «유니버설」 또는 «애플 실리콘용」으로 명시된 버전으로 업데이트하십시오. 번역이라는 단계 자체가 사라지므로 이론상 더 빠르고 안정적입니다.
  • ★★로제타 2가 영구적인 장치는 아닙니다. 애플은 macOS 26.4부터 인텔 전용 앱을 열 때 «곧 지원이 끝난다»는 시스템 알림을 띄우기 시작했고, 2026년 가을 출시되는 macOS 27을 로제타 2의 마지막 범용 지원 버전으로 못박았습니다. 오래되고 더 이상 관리되지 않는 일부 인텔 기반 게임만 예외로 계속 지원됩니다. 아직도 인텔 전용 앱에 의존하고 있다면, «유니버설» 버전이 있는지 지금 확인해 두는 편이 안전합니다.

정리하면

  • 로제타 2는 인텔 명령어를 애플 실리콘 명령어로 바꿔 주는 번역 계층입니다.
  • 핵심은 실행할 때마다 번역하는 게 아니라, 설치·첫 실행 시점에 «통째로 미리» 번역해 두는 것입니다.
  • 미리 번역할 수 없는 코드(실행 중에야 정해지는 코드)는 그 순간에 실시간으로 번역합니다.
  • ⇒ 「처음만 느리고 그다음은 빠르다」는 체감은 사전 번역이 딱 한 번 일어나고, 그 결과가 저장돼 재사용된다는 사실을 그대로 보여 줍니다.
  • 로제타 2는 기한 없는 장치가 아닙니다. macOS 26.4부터 경고가 뜨고, 2026년 가을 macOS 27이 마지막 범용 지원 버전입니다(레거시 게임 일부 제외).

본 콘텐츠는 로제타 2의 사전 번역(AOT)·실시간 번역(JIT) 구조와, Apple Developer가 공지한 로제타 지원 종료 일정(macOS 26.4 알림·macOS 27 마지막 지원)을 정리한 해설입니다. 번역 결과물의 저장 형식(Mach 오브젝트 파일)에 대한 세부 기술 사양, 앱 종류별 실시간 번역 비중의 구체 수치, macOS 27 이후 레거시 게임 예외의 정확한 범위는 이번 조사 범위 밖이라 본문에 적지 않았습니다. 최종 확인일: 2026-09-15.

작성: Inkpipes 편집팀 — 「매번 통역」이 아니라 「한 번 통번역해 두고 재사용」으로 읽었습니다.

참고

  • Apple Developer, 「About the Rosetta Translation Environment」
  • Apple Developer News, 「Upcoming changes to Rosetta support for Intel-based macOS apps」(2026)
  • 2006년 로제타 1(파워PC→인텔)의 도입 배경과 로제타석 명칭의 유래

Similar Posts