こんにちは、アキゾラです。
Surface Pro Xお気に入りで、手に入れてから色々使っております。
Surface Pro X使ってみた全体的な感想は、こちらもよろしければご覧ください。
タブレットでの使用時、タッチペンの便利さがじわじわと分かり始めて嬉しくなっているところです。
さて本日の本題ですが、ちとマニアックな話で恐縮ですが、Surface Pro X上で、x64アプリのエミュレーションを動かしてみようということで、やってみた感想です。
ちなみに、アキゾラが使っているSurface Pro XはWindows 10 Proが入っています。法人向けのUS版となります。
Windows Insider ProgramでARM64のWindows上でx64アプリを動かすエミュレーションを取得する。
2020年12月に、ARM64のWindows上でx64アプリをエミュレーションで動作させることができるWindows Insider Program Build 21277がDev Channelで公開されました。
Today, we’re releasing the first preview of x64 emulation for ARM64 devices to Windows Insiders in the Dev Channel starting with the Build 21277.
Introducing x64 emulation in preview for Windows 10 on ARM PCs to the Windows Insider Program
ちょっと年末(暇)だし、試してみようかな、ということで、Windows Insider Program 参加登録して取得してみました。
簡単にその参加方法について、載せてみます。(普通の人に需要はほぼないと思いますが)
Windows Insider Programとは?
The Windows Insider Program is a community of millions of Windows’ biggest fans who get to be the first to see what’s next. Windows Insiders run previews of the platform, called Windows 10 Insider Preview Builds, then give feedback and engage directly with our engineers to help shape the future of Windows.
What is the Windows Insider Program?
Windows Insider Program とは何ぞやというところをさらっと。
簡単に言うと、例えば、Windows UpdateなんかでWindowsの更新が常に発信されていきますが、これを公式なリリースよりも前にお試しで使うことができ、それを使った感想をフィードバックしてよりよくしていくことができるプログラムのようです。
アキゾラ別にWindowsの大ファンとかじゃないのでw、このプログラムというかコミュニティ全然知らなかったんですが、ちょっと興味が出たのでやってみることにしました。
ただ、公式リリース前のものなので、なんかバグがある可能性とかだってあるし(公式リリースされてもバグっていることもあるが。。)、その辺は自己責任というかある程度自分で対処方法が取れるとか、情報を集めることができたりする人向けで、あんまりよくわからない人が手を出すのはお勧めしないです。
やる必要がないならやらないほうがいいと思うということはお伝えしておきますw
アキゾラはSurface Pro Xを使うことになったために興味が出たってことで参加してみることに。やばくなったらクリーンインストールする所存です。
→MicrosoftのページにはARM64 WIndows 10 のISOってまだないみたいです。(2021/1/1現在)なので、UUP dumpなどから入手するしかないのかも。未確認です。
また、このページでは、アキゾラの環境ではこうなったよっていう話で、動作保証をしているわけではないということをご理解の上、お楽しみください。(なんかあってもこちらでは手に負えませんよってことです)
Windows Insider Program参加方法
これは、たいして難しい話じゃなかったです。
アキゾラがやった方法を簡単にメモっておきます。
以下から、Microsoft アカウントで登録をします。
Meet the Windows Insider Program
流れに乗って登録すると、Windowsの設定のWindows Updateところに、「Windows Insider Program」が出現します。(それとも、もともとあったw?こっちから登録を開始するということでもいいのかもw)
そして、Channelを選択することになります。
2020年12月30日現在で、ARM64のWindows上でx64アプリを動かすエミュレーションは、Dev Channelで公開されています。
Dev Channelが一番荒いというか、開発よりのチャンネルです。
このチャネルにしてビルドをインストールした場合、他のチャネルに変更する場合はクリーンインストールが必要になるとのこと。
う、、ちょっと怖いなと思いつつ、好奇心が勝っているので、えい!とDev Channelにします。
これで、再起動を促されると思いますので、再起動します。
Windows Updateを手動で行って該当のBuild 21277を取得
ここまで来たら、あとは手動でWindows Updateを実施です。
そこに、目的のBuildがあることを確認して、ダウンロードして、インストールします。
ちなみに、結構時間かかりました。1時間では終わらないと思います。
また、このビルドを適用すると、このビルドのブランチ(RS_PRERELEASE)以前のものに戻せなくなるそうです。これ以降ずっとこのブランチの更新だけを受信することになるってイメージですかね。ちなみに、ビルド適用から10日以内であればリカバリで前のバージョンに戻すことができるとのこと。
IMPORTANT NOTE: Once an Insider chooses to install a RS_PRERELEASE build, they cannot move back to receiving FE_RELEASE builds as their device will be on a higher build number. Insiders will still have the option to roll back to a previous version for up to 10 days or until you take another build.
Announcing Windows 10 Insider Preview Build 21277
ARM64のWindows上でx64アプリを動かしてみた
動かしてみたもの、どうだったかいくつか挙げてみます。
Google Chrome
まず、Google Chromeですが、通常だと、自分でダウンロードするときに、32ビット(x86)版が自動的に選択されインストールされます。
さて、これがBuild 21277を入れた後に64ビット(x64)版、入れれるようになったのかな?ということでやってみました。
The browser built by Google
おお!64ビット版ダウンロードに自動でなっていそうです。ダウンロードしてみます。
ダウンロードしてインストールしてみると、失敗。
32ビット(x86)版が入っているからっぽかったので、一度アンインストールしてから再度インストールしてみました。(ちょっとこのアンインストールが綺麗にいかなくて、手順が微妙だったっぽい感じは否めない)
一応、64ビット版入りました!
しかし、なんかChromeの更新の確認ができなくなってしまいました・・・。
ついでに、Chromeを通してのファイルダウンロードもウイルススキャンチェックで失敗してしまいます。32ビット版では問題なかったんですが、、セキュリティ関係の問題っぽいですけど、未解決。
まぁ、Chromeのアップデートやファイルダウンロード系はEdge使えばいいかな?と思ったら。。。
EdgeからChromeのダウンロードをしようとすると、32ビット版と表示が。。どうなんだろ、こっちでダウンロードすると32ビット版になってしまうのか、表示だけか・・?確実に64ビット版を手動で選びたいんだけど、手動で選択するようなページが見当たりませんね。
ま、ここに関してはいったん置いておきます。。
さぁ、このままだと今後のアップデートが不安ではありますが、一応入ったx64のChromeです、使った感じはというと。
普通に動いてます!w
32ビット版との違いは、正直分からない。
元々、32ビット版でも遅いとかそういうの感じていなかったので。
CPU使用率とか若干下がっているのかなぁ、これもChromeではほとんど分かりませんね。。
Chromeは快適です。(でも、ARM64ネイティブが出ているEdgeの方がSurface Pro X上でだったらお勧めですかね、個人的には)
Oracle Java
お次は、Oracle Javaを試してみることにしました。
まず、試したのは、まずJava8u271バージョン(JRE)です。32ビットと64ビットがあるバージョンですね。
まず、このBuild 21277になる前、64ビット版をインストールしようとすると。
x64アプリは動かせないよ的なエラーで、インストールができません。
そして、Build21277上ではというと。
こちらで何もしなくても、インストールで引っかかることなく進みました。
インストールは無事完了。これだけでもちょっと感動ですね。
Javaのバージョンなど確認してみます。
ここで、やっぱりJDK入れたい、ていうか最新版で入れよう、、と思ったので、Oracle Javaのダウンロードページから最新のJDKをダウンロードしました。
試したのはJava SE Development Kit 15.0.1(64bit)です。
インストールは目を離したすきに気づいたら終わっててw、あれ?と思って確認したらちゃんと入ったみたいです。
動くのかってところは、いわゆるHello Worldプログラムをコンパイル、実行してみます。
はい、コンパイルも実行もできました! 超絶簡単な確認ですが、64ビット(x64)のJava、動いています。
自作のコンソールアプリ
自分で作ったC++のコンソールアプリですが、これも元々は、Javaのインストール時と同じx64ビット版アプリは動かせないよエラーが出ていました。
そして、Build 21277を入れた後、実行すると。
最初のエラーは出なくなりましたが、Application Errorで落ちてしまいます。(私のプログラムに問題あるんかな・・w)
ん~32ビット版では動くし、通常のWindows上では64ビット版も動作するんだけどな~、Runtimeとかの問題?
とりあえず、以下で言われているものを入れてみます。
Additionally, to support running both ARM64 and x64 C++ applications at the same time, please install a preview version of the ARM64 C++ redistributable from https://aka.ms/arm64previewredist. These steps will not be required in future Insider Preview builds.
Introducing x64 emulation in preview for Windows 10 on ARM PCs to the Windows Insider Program
これをインストールしたところ、エラーでなくなり、無事に起動!
しかし結構遅いですw
この自作アプリは、32ビット版を使っても、ちょっとスローになるなぁという印象あるんですけど、64ビット版も結構スロー。
さらに、このアプリ(ゲームなんです)、mciSendString関数を使って音楽再生しているんですが、これが64ビット版では再生されませんでした。(通常のWindows上では64ビット版で音出ます)
まぁ、エミュレーションが嫌なら自作アプリなんだしARM64版を作ってみたらっていう話ですけどもw
x64のエミュレーションがSurface Pro Xに与える影響とは
64ビット(x64)版のエミュレーションが搭載されることで、ARM64でも使えるアプリの幅が広がるのは確かですね!
今回試したものでいうと、Javaが最新だと64ビット版しかないあたりとか、Javaを使うアプリなんかは最新版でも使えるようになるって感じだと思います。
これがいつ通常のWindows Updateに含まれて来るのか、もしくは含まれないのか、それともオプション扱いとなるのかなど行く末は不明ですが、ARM64ネイティブアプリがまだ少ないうちは、このエミュレーションが役に立つ場面はでてきそうですね。
64ビット(x64)に関してSurface Pro Xで心配することがなくなり、今までのWindowsと同じように使えるのですから。
これでドライバの問題なども結構クリアされるんでしょうかね。(どれほど障壁が出ているかよくわからないけど)
でもぶっちゃけ、今回、64ビット版しかないもので色々試したかったんですが、アキゾラはそもそも64ビット版しかないものを使うということがないので、動作確認するためのいいアプリも思い浮かばず、32ビット版が動けばやっていけるなってことが再確認できましたw
かろうじでJavaが最新だと64ビット版しかないモノ的な感じかな~でも実際使わないというw
イラレとかも、64ビット版しかないらしいんだけど、使わないもので・・。
えっと、もう戻そうかなぁ・・・w(満足した)
何はともあれ、このエミュレーション、まだ100%ではないところもありそうですので、今後に期待ではありますね!
アキゾラはこのWindows Insider Programを使っている身として、しっかりとフィードバックして少しでもお役に立てればと思います・・w
ではでは。
コメント