Newshot
Account

面向x86-64 PC的通用Apple Silicon兼容层

AI summary

有开发者发布了一个通用兼容层,让x86-64 PC能够运行Apple Silicon相关代码。原文未披露具体实现方式与兼容范围。

Translation(model translation, not the source's own text)

Stela

题图
题图

一个面向 x86-64 PC 的通用 Apple Silicon 层。它是一个 UEFI 启动程序,包含 arm64 到 x86-64 的翻译器、面向 NVIDIA GPU 的 Metal 驱动以及 Apple silicon 硬件的模型。macOS 和大多数应用可以启动,但速度很慢,且截至 v0.1.0 仍需大量测试。

Stela 仍处于开发阶段。目前它成功启动的几率很低,重大硬件支持与修复正在推进中。

Translator

一个提前编译(ahead-of-time)与即时编译(just-in-time)编译器将 arm64e 代码翻译为 x86-64。它覆盖超过 3,000 种 AArch64 指令编码,将客户机寄存器映射到主机寄存器,并缓存翻译后的代码。它可在任意 x86-64-v2 CPU 上运行,Intel 或 AMD 均可。

NVIDIA driver

该 Metal 驱动支持 GTX 16 和 RTX 20 系列及更新的 GPU。它将 AIR(Metal 的着色器 IR)直接编译为 NIR(Mesa 的 IR),并支持 Metal3 和 Apple7 GPU 家族。

Requirements

  • 一个 x86-64-v2 CPU(约 2011 年或更新),关闭 Secure Boot 的 UEFI,8 GB 内存。
  • 一块 NVIDIA GTX 16 或 RTX 20 系列或更新的 GPU。
  • 一个 8 GB 或更大的 USB 盘。
  • 一个至少 60 GB 的空 GPT 分区。
  • 安装期间需要网络访问,用于下载 macOS。

Stela 目前模拟 Mac mini (M2),运行 macOS 27。

Install

  • 从 releases 页面下载 stela。
  • 运行 sudo ./stela setup(Linux、macOS)或双击 stela.exe(Windows)。
  • 选择 USB 盘、macOS 版本和 Mac 机型,然后确认。安装程序会擦除 USB 盘。
  • 从 USB 盘启动 PC。

要更新用旧版本制作的 USB 盘,请下载新的 stela,插入该盘并运行 sudo ./stela setup update stela(Linux、macOS)或 stela.exe setup update stela(Windows)。

Build

你需要 Rust 以及 Clang 21 或更新版本的 LLVM。


        git clone https://github.com/tylertms/Stela
cd Stela
cargo xtask dist
      

这会生成 target/release/stela。首次构建会获取并编译 Linux、Mesa 和 LLVM 源码,耗时较长。

Legal

Stela 不包含任何 Apple 软件。你有责任遵守 Apple 的软件许可协议和使用条款。

Stela 的代码采用 GPL-2.0-or-later。参见 LICENSE 和 NOTICE。

Community

Discord Server

The translation is machine-generated and individual terms may be off. Nothing is rewritten or cut; the original is authoritative.

Published by Hacker News
This site only summarises and aggregates; copyright stays with the original author. Headlines and summaries follow the source — where they differ, the original wins.
Read the original ↗