컴퓨팅의 영원한 나선형이 또 다른 루프를 맞이했습니다. Apple은 2020년에 자체 Arm 기반 칩을 선보이며, 특히 높은 전력 대비 와트 비율(power-to-watt ratio)을 가진 일련의 SoC(System on Chip)로 세계에 놀라움을 안겨주었고, 이는 회사의 고품질 휴대용 기기에 완벽하게 들어맞았습니다. 디자인이 순수한 성능 면에서 개선되면서 Apple은 Intel 기반 Mac에서 벗어났습니다. 이는 macOS를 자신의 PC에서 구동하던 열정적인 해커들이 더 이상 그렇게 할 수 없다는 것을 의미했습니다. — 하지만 오늘, Stela Apple Silicon translation layer 덕분에 다시 가능해졌습니다.
Stela는 Tyler Smith가 만든 신선한 프로젝트이며 이제 막 시작된 단계로, 첫 0.1 버전이 나온 지 불과 반나절 만에 세 번의 릴리스가 이루어졌습니다. 작성자는 “느리고 안정적이지 않다”고 경고하지만, 이 경고는 새로운 장난감을 시험해보는 테크니들을에게는 어쩐지 보이지 않는 것 같습니다. 실질적인 목적으로 Stela는 macOS 27을 로드하기 위한 Linux 기반의 _UEFI 애플리케이션_이며, 운영체제에 가상 M2 Mac Mini를 제시합니다.
개발자는 프로젝트의 Discord 서버에서 몇 가지 질문에 답하며, 사용되는 macOS 이미지는 전혀 수정되지 않았다고 언급했습니다. “Stela는 번역과 하드웨어 동작을 아래에서 제공하여, macOS가 실제 Mac에서 수행할 수 있는 것과 정확히 동일한 복원 과정을 거치도록 합니다.”
해당 서버에는 상당한 수의 사용자들이 유입되었으며, 많은 이들이 부팅 직전의 자신의 PC 사진을 게시하고 있습니다. 예상대로 대부분의 질문은 자신들의 특정 하드웨어 지원에 관한 것이었지만, 흥분된 분위기는 역력합니다.
시작하려면 릴리스 페이지에서 Stela를 다운로드하고, PC 부팅에 사용할 USB 스틱을 준비하며, 당연히 자신만의 macOS 사본이 필요합니다. Stela는 AArch 명령어를 x86-64로 번역하는 역할을 합니다. 이 번역 계층은 CPU용으로 ahead-of-time(AOT) 및 just-in-time (JIT) 컴파일을 조합하여 사용하며, Apple의 Metal 그래픽 레이어 호출을 Mesa의 NIR 명령어로 번역합니다.
하드웨어 요구 사항은 기본적으로 매우 낮은 수준이며, x86-64-v2(2008년 Intel Core 칩) 또는 2011년 구형 AMD FX 프로세서만 필요합니다. 저자는 AVX2와 AVX-512가 "존재할 때 사용된다"고 언급하지만, 애초에 프로세서 자체가 너무 오래되었다면 큰일입니다. 8GB의 RAM, UEFI 지원, GPT 파티션 또는 전체 드라이브, 그리고 16xx 시리즈부터 현재의 5000 모델까지의 Nvidia 카드가 필요합니다.
아직 Wi-Fi 지원은 없고 블루투스는 제한적이지만, 작동하는 이더넷 컨트롤러 목록은 광범위하여 Intel, Realtek, Broadcom, Aquantia, Atheros 모델뿐만 아니라 USB 이더넷 스틱까지 다룹니다. 저자는 Stela가 궁극적으로 리눅스 커널이 지원하는 모든 하드웨어를 지원할 계획이라고 말합니다.
순전히 가설적으로만 보자면, AI 자동화 기술을 통해 macOS의 상당 부분이 x86-64로 사전 번역될 수 있다고 생각하는 것은 완전히 미친 짓은 아닙니다. 하지만 이러한 시도는 많은 주의할 점이 있습니다. 예를 들어, 브라우저의 JIT JavaScript 컴파일과 같은 많은 코드가 애초에 디스크 이미지에 존재하지 않는다는 사실입니다.
또한 번역 계층이 아무리 효율적이라 하더라도, 운영체제(OS)는 여전히 이를 암호학적으로 수락하고 실행해야 하며, 아마도 추가적인 수정이 필요할 수도 있습니다. 하지만 우리는 실제로 비싸고 거의 수리 불가능한 Apple의 하드웨어에 얽매이지 않고 Windows 대신 macOS를 사용할 꿈을 꿀 수 있습니다.