Rosetta は Windows を実行する x86 仮想化アプリをサポートしない
Apple は昨日、独自のカスタム シリコン チップを搭載した将来の Mac を構築する 計画を発表し 、Intel プロセッサからの移行を容易にするために、PowerPC から Intel への移行中に PowerPC アプリを Intel プロセッサ上で実行できるようにする「Rosetta」機能を復活させました。
復活した Rosetta により、ユーザーは Apple シリコン上で x86_64 命令を含むアプリを実行できるようになります。これは、Intel ベースのアプリがカスタム Apple チップを使用して Mac 上で動作し続けることを意味します。
Rosetta は、開発者にアプリのネイティブ バージョンを作成する時間を提供することを目的としていますが、注意すべき 制限がいくつかあります 。今週共有された開発者ドキュメントで概要が説明されているように、Rosetta はほとんどの Intel ベースのアプリを変換できますが、x86_64 コンピューター プラットフォームを仮想化する仮想マシン アプリでは機能しません。
これは、Apple が設計したチップを搭載した Apple の将来の Mac では、仮想化ソフトウェア内で x86 Windows を実行するための VMWare や Parallels などのソフトウェアの現行バージョンの実行をネイティブにサポートしないことを意味します。他のネイティブ ソリューションが登場する可能性もありますが、サードパーティ開発者の努力が必要になります。
現在、Mac には Windows を実行できる Boot Camp 機能がありますが、Apple は Apple シリコンを搭載した Mac について同様の機能を発表していません。カーネル拡張機能も、Rosetta では翻訳できません。
Rosetta は、ジャストインタイム (JIT) コンパイラーを含むアプリを含む、ほとんどのインテルベースのアプリを翻訳できます。ただし、Rosetta は次の実行可能ファイルを翻訳しません。
![]()
– カーネル拡張機能
– x86_64 コンピューター プラットフォームを仮想化する仮想マシン アプリRosetta はすべての x86_64 命令を変換しますが、AVX、AVX2、AVX512 ベクトル命令など、一部の新しい命令セットやプロセッサ機能の実行はサポートしていません。これらの新しい命令をコードに含める場合は、それらが使用可能であることを確認した後にのみ実行してください。たとえば、AVX512 ベクトル命令が使用可能かどうかを判断するには、sysctlbyname 関数を使用して hw.optional.avx512f 属性を確認します。
Apple は、Rosetta とともに、macOS Big Sur 向けユニバーサル アプリのテストと最適化のための「ツール、リソース、サポート」を提供する、開発者向けの 新しいユニバーサル アプリ クイック スタート プログラム を開始しました。
開発者はこのプログラムへの参加を申請でき、 Mac mini に似た見た目ながら iPad Pro のA12Z Bionicチップ、16GB RAM、512GB SSDなどの機能を搭載した開発者移行キットが提供される。
DTK により、開発者は Intel チップと Apple シリコンの両方で動作するアプリの作成を開始できるようになり、Rosetta は移行期間中のサポートを提供します。 Appleは、カスタムチップを搭載した初のMacを2020年に発売する予定で、Macのラインナップ全体を自社チップに移行するには2年かかると述べた。
Rosetta の詳細、その仕組み、除外事項 については、Apple の開発者 Web サイトを参照して ください。










