Attesor: Обратная разработка на основе ИИ Rosetta 2 для виртуальной машины Linux

✍️ OpenClawRadar📅 Опубликовано: 24 февраля 2026 г.🔗 Source
Attesor: Обратная разработка на основе ИИ Rosetta 2 для виртуальной машины Linux
Ad

Attesor — это репозиторий на GitHub, содержащий проект по реверс-инжинирингу системы бинарной трансляции Apple Rosetta 2. Проект направлен на понимание и документирование того, как Rosetta 2 позволяет приложениям x86_64 работать на оборудовании Apple Silicon с архитектурой ARM64, что может иметь значение для виртуализации в Linux.

История проекта

Проект документирует переходы архитектур Apple: 1994 (с Motorola 68000 на PowerPC), 2006 (с PowerPC на Intel x86_64) и 2020 (с Intel x86_64 на Apple Silicon ARM64). Rosetta 2 — это решение Apple для бинарной трансляции третьего поколения, следующее за оригинальной Rosetta (2006–2011), которая позволяла запускать приложения PowerPC на компьютерах Mac с процессорами Intel.

Архитектура Rosetta 2

Согласно исходным материалам, Rosetta 2 работает как слой трансляции между пользовательскими приложениями x86_64 и ядром macOS на ARM64. Архитектура включает:

  • Транслятор (AOT/JIT): Обрабатывает как заблаговременную (AOT), так и динамическую (JIT) трансляцию
  • Библиотека времени выполнения: Предоставляет функции поддержки во время выполнения
  • Трансляция системных вызовов: Преобразует системные вызовы x86_64 в эквиваленты для ARM64

Ключевые технологии

  • Заблаговременная трансляция (AOT): Преобразует бинарные файлы x86_64 в ARM64 во время установки, сохраняя переведённый код в кэше
  • Динамическая трансляция (JIT): Преобразует блоки кода по мере необходимости во время выполнения, обрабатывая динамически загружаемый код
  • Трансляция набора инструкций: Сопоставляет инструкции x86_64 с ARM64, векторные инструкции SSE/AVX с NEON, а флаги x86_64 — с кодами условий ARM64
  • Трансляция системных вызовов: Управляет различными соглашениями о вызовах и состоянием регистров на границах системных вызовов
Ad

Детали реализации

Rosetta 2 находится по адресу /Library/Apple/usr/libexec/oah/ (где «oah» означает «Old Architecture Hardware» — оборудование старой архитектуры) и содержит:

  • rosetta — Основной бинарный файл транслятора
  • rosettad — Демон Rosetta
  • librosetta.* — Библиотеки времени выполнения

На компьютерах Mac с Apple Silicon Rosetta 2 не установлена по умолчанию. Установка запускается либо при первом запросе на запуск приложения для Intel, либо через командную строку с помощью команды softwareupdate --install-rosetta.

Структура проекта

Репозиторий содержит несколько файлов, включая:

  • ExportDecomp.java и export_decomp.py для экспорта и декомпиляции
  • rosetta_decomp.c и rosettad_decomp.c для декомпилированных компонентов
  • rosetta_function_map.h и различные рефакторизованные C-файлы
  • rosetta.TODO.md, документирующий оставшуюся работу

Проект представляет собой продолжающееся усилие по документированию внутреннего устройства Rosetta 2, что может помочь в разработке аналогичных слоёв трансляции для сред виртуализации Linux.

📖 Прочитать полный источник: HN AI Agents

Ad

👀 Смотрите также

Режим контекста: MCP-сервер, который сжимает выводы инструментов для Claude Code
Инструменты

Режим контекста: MCP-сервер, который сжимает выводы инструментов для Claude Code

Контекстный режим — это сервер MCP, который находится между Claude Code и выводами инструментов, обрабатывая их в песочницах и возвращая только сводки. Он сокращает 315 КБ вывода MCP до 5,4 КБ, увеличивая время сессии до замедления с ~30 минут до ~3 часов.

OpenClawRadar
AiPayGen: Маркетплейс AI-агентов с интеграцией MCP для Claude Code
Инструменты

AiPayGen: Маркетплейс AI-агентов с интеграцией MCP для Claude Code

AiPayGen — это маркетплейс с 142 ИИ-агентами в 27 категориях, включая финансы, юриспруденцию, здравоохранение, DevOps, безопасность и маркетинг. Он функционирует как MCP-сервер для прямого использования в Claude Code, позволяя пользователям просматривать, вызывать и управлять агентами с помощью определённых команд.

OpenClawRadar
ClankerRank: Бенчмарк для оценки навыков программирования с помощью ИИ на основе Claude Haiku
Инструменты

ClankerRank: Бенчмарк для оценки навыков программирования с помощью ИИ на основе Claude Haiku

Разработчик создал ClankerRank для оценки навыков программирования с помощью ИИ, используя модель Claude Haiku 4.5. Платформа предлагает пользователям одинаковые баги, оценивает результаты с помощью скрытых тестов и выявила явные различия в навыках среди сотен участников.

OpenClawRadar
CC-Canary: Обнаружение регрессий в Claude Code с помощью локального анализа JSONL
Инструменты

CC-Canary: Обнаружение регрессий в Claude Code с помощью локального анализа JSONL

CC-Canary читает журналы сессий Claude Code и составляет судебно-медицинский отчет о дрейфе модели, включая соотношение чтения/редактирования, циклы рассуждений, тенденции затрат и автоматически определяемые даты перегиба.

OpenClawRadar