Attesor : Rétro-ingénierie assistée par l'IA de Rosetta 2 pour machine virtuelle Linux

✍️ OpenClawRadar📅 Publié: February 24, 2026🔗 Source
Attesor : Rétro-ingénierie assistée par l'IA de Rosetta 2 pour machine virtuelle Linux
Ad

Attesor est un dépôt GitHub contenant un projet de rétro-conception axé sur le système de traduction binaire Rosetta 2 d'Apple. Le projet vise à comprendre et documenter comment Rosetta 2 permet aux applications x86_64 de fonctionner sur le matériel Apple Silicon ARM64, avec des implications potentielles pour la virtualisation Linux.

Contexte du projet

Le projet documente les transitions d'architecture d'Apple : 1994 (Motorola 68000 vers PowerPC), 2006 (PowerPC vers Intel x86_64) et 2020 (Intel x86_64 vers Apple Silicon ARM64). Rosetta 2 est la solution de traduction binaire de troisième génération d'Apple, succédant au Rosetta original (2006-2011) qui permettait aux applications PowerPC de fonctionner sur les Mac Intel.

Architecture de Rosetta 2

Selon le matériel source, Rosetta 2 fonctionne comme une couche de traduction entre les applications utilisateur x86_64 et le noyau macOS ARM64. L'architecture comprend :

  • Traducteur (AOT/JIT) : Gère la traduction à la fois anticipée et juste-à-temps
  • Bibliothèque d'exécution : Fournit des fonctions de support d'exécution
  • Traduction des appels système : Convertit les appels système x86_64 en équivalents ARM64

Technologies clés

  • Traduction anticipée (AOT) : Traduit les binaires x86_64 en ARM64 au moment de l'installation, stockant le code traduit dans un cache
  • Traduction juste-à-temps (JIT) : Traduit les blocs de code à la demande pendant l'exécution, gérant le code chargé dynamiquement
  • Traduction du jeu d'instructions : Mappe les instructions x86_64 vers ARM64, les instructions vectorielles SSE/AVX vers NEON, et les drapeaux x86_64 vers les codes de condition ARM64
  • Traduction des appels système : Gère les différentes conventions d'appel et l'état des registres à travers les limites des appels système
Ad

Détails d'implémentation

Rosetta 2 se trouve à /Library/Apple/usr/libexec/oah/ (où "oah" signifie "Old Architecture Hardware"), contenant :

  • rosetta - Binaire principal du traducteur
  • rosettad - Démon Rosetta
  • librosetta.* - Bibliothèques d'exécution

Sur les Mac Apple Silicon, Rosetta 2 n'est pas installé par défaut. L'installation est déclenchée soit par la première invite de lancement d'une application Intel, soit via la ligne de commande avec softwareupdate --install-rosetta.

Structure du projet

Le dépôt contient plusieurs fichiers incluant :

  • ExportDecomp.java et export_decomp.py pour l'exportation et la décompilation
  • rosetta_decomp.c et rosettad_decomp.c pour les composants décompilés
  • rosetta_function_map.h et divers fichiers C refactorisés
  • rosetta.TODO.md documentant le travail restant

Le projet représente un effort continu pour documenter les détails internes de Rosetta 2, ce qui pourrait éclairer le développement de couches de traduction similaires pour les environnements de virtualisation Linux.

📖 Lire la source complète : HN AI Agents

Ad

👀 See Also

Phaselock : Un système de contrôle d'agent IA inspiré des techniques parentales
Tools

Phaselock : Un système de contrôle d'agent IA inspiré des techniques parentales

Phaselock est une compétence d'agent open-source qui implémente quatre mécanismes de contrôle pour les agents d'IA de codage : des portes explicites avant l'action, un retour immédiat sur les erreurs, des choix contraints et l'application mécanique de règles. Il fonctionne avec Claude Code, Cursor, Windsurf et tout outil prenant en charge les hooks.

OpenClawRadar
Le serveur MCP connecte les agents IA aux sessions Chrome existantes avec les cookies et l'authentification.
Tools

Le serveur MCP connecte les agents IA aux sessions Chrome existantes avec les cookies et l'authentification.

@playwright-repl/mcp est un serveur MCP qui connecte les agents d'IA à votre navigateur Chrome existant via l'extension Dramaturg, offrant ainsi l'accès à votre véritable session de navigation, y compris les cookies et l'authentification. Il prend en charge l'intégralité de JavaScript Playwright, les assertions, et fonctionne avec Claude Desktop, Claude Code, Cursor ou tout client MCP.

OpenClawRadar
js-notepad : Un Bloc-notes Scriptable avec Serveur MCP Intégré pour Claude Code
Tools

js-notepad : Un Bloc-notes Scriptable avec Serveur MCP Intégré pour Claude Code

js-notepad est une application de bloc-notes scriptable gratuite et open-source, construite avec l'assistance de Claude Code. Elle dispose d'un serveur MCP intégré, permettant à Claude Code d'interagir directement avec l'application pour lire/écrire des pages, exécuter des scripts, créer des tâches et pousser des résultats.

OpenClawRadar
Agent Forge : Un outil open source échafaude des pipelines multi-agents pour Claude Code
Tools

Agent Forge : Un outil open source échafaude des pipelines multi-agents pour Claude Code

Agent Forge est une compétence Claude Code qui génère des pipelines multi-agents complets à partir de descriptions de cas d'utilisation. Il crée des fichiers de prompt, des scripts d'orchestration, des répertoires de flux de données et des configurations GitHub Actions basées sur des modèles observés dans les systèmes multi-agents existants.

OpenClawRadar