Surfaceで普通のWindowsアプリが動かないのはなぜ?

Surfaceって、元々はSurface RTという名前でして、オペレーティングシステム(つまり、OS)はWindows RTです。Windows RTって、名前にWindowsと付くにもかかわらず、普通のWindowsで動くアプリケーション(つまり、アプリ)を使うことはできません。これは、Surface 2が登場して、Windows RT 8.1にバージョンアップしても同じです。

初代Surface 64GB 黒のタッチカバーを付けました

Surface RTとSurface 2(以降、Surface RTとSurface 2をひっくるめて、Surfaceと呼びます)って、ARMって言う、携帯電話やスマートフォンでよく使われているCPUを積んでいるんです。一方、PCってIntelって会社が作ったi386、またはi386と同じ命令を持つCPU(以降、x86と呼びます)を積んでいるんです。

OSにしても、アプリにしても、CPUへの命令の集まりなんです。ところが、困ったことにCPUによって命令の種類が違うんです。命令の種類が違う以上、同じOS・同じアプリを動かすことができないんです。だから、ARMとx86ではOSは別、アプリも別なのです。

早い話が、SurfaceってARMってCPUを積んでいて、CPUが普通のPCと異なるので、普通のWindowsを動かすわけにはいかず、Windows RTって言う、ARM専用のWindowsを作ったってわけなんです。でもって、見た目をWindowsそっくり、使い方をWindowsそっくりにすることはできても、Windowsと同じアプリを動かすことができないんです。(でも、やっぱりSurfaceでWindowsと同じアプリを使いたい方は、この記事をご覧ください)

 Windows RT 8.1のスタート画面

「じゃあ、Windowsストアアプリだったら、Windows RTでも動くのはなぜ?」

はい。いいところに気付きました。Windows 8からは、通常のWindowsアプリとは別に、Windowsストアからインストールするアプリ(いわゆる、Windowsストアアプリ)というのがあるんです。Windowsストアアプリってハードウェアへのアクセスが厳しく制限される上、マイクロソフトの審査を受けてWindowsストアから配布しなければいけません。なので、普通のWindowsよりもセキュリティが高いんです。

Windowsストアへ行くは、スタート画面から「ストア」をクリックします。

Windowsストア ARMと書いてあればWindows RTでも動きます

で、「詳細」の「サポートされているプロセッサ」欄にARMと書いてあれば、WIndows RTで動きます。また、x86と書いてあれば、普通のPCで動くWindows(・・・と言ってもWindows 8以降ですが)でも動きます。CPUの種類が異なれば、異なるOS・異なるアプリのはず。なのに、なぜWindowsストアアプリって、普通のPCでもSurfaceでも動くのか。理由は、Windowsストアアプリって.NETフレームワーク(こう書いて、「どっとねっとふれーむわーく」と読む)っていう仕組みを使って動いているからなのです。

.NETフレームワークには、実行時コンパイル機能と言うのがありまして、アプリを実行するときに、CPUの種類に合わせて命令を翻訳しなおす機能があるんです。これは人間に例えると、「この記事は誰が読むかわからないから、とりあえず英語で書いておこう。日本人が読むんだったら、頭の中で日本語に翻訳してね」ってことができるんです。なので、Windowsストアアプリって、実行するときに、PCだったらi386の命令に、SurfaceだったらARMの命令に翻訳してから実行しているというわけなんです。

Windows RT 8.1のデスクトップ画面

実行時コンパイル機能を使うと、CPUの種類を問わず実行できるアプリを作ることができる反面、どうしても実行速度は遅くなります。これは、「日本人が読む記事だったら、最初っから日本語で記事を書いた方がいい」のと同じです。

Windows 8が登場したころ、Surface RT以外にもWindows RTマシンってのがあったんです。しかし、普通のWindowsアプリが動かないというのがネックになったのか、今ではほぼSurfaceのみになってしまいました。Windows RTって、Windowsを標的にしたウイルスに感染しないので、セキュリティが高いってメリットもあるんですけどねぇ。

ぴえんのイラスト 女性

最後までご覧いただきまして、ありがとうございました。この記事を気に入っていただけましたら、ぜひtwitterへのフォローをお願いします

Surface RT
フォローする

高額×エンド直案件なら

エンジニアファクトリーでは、東京・大阪・京都にお住いのフリーランスITエンジニアの皆様にお仕事を紹介中 リモート案件ご希望の方も是非!

当サイトおすすめ
ReWorks

フルリモートの求人に特化した転職支援サイト。すべての求人がリモートワークの正社員求人なので、在宅での勤務ができる。このため、居住地に関係なく応募できる。失業・休業中の方だけでなく、未経験の方やシニア層でも正社員が可能。未経験の方のためのトレーニングを実施しているほか、トレーニング修了者を対象に就職先の斡旋を行っている。リモートワークをしたい方は、まずは登録しておくべき

工場ワークス

全国各地の工場の求人を扱っている転職サイト。工場のお仕事のメリットとして、対象年齢や地域が幅広い、未経験でも高収入が期待できる、正社員登用ありの求人を狙える点がある。その他、女性でも安心の軽作業や、寮あり、入社祝い金ありといった求人にも出会える。もちろん、勤務場所や職種、雇用形態を条件に検索することもできるので、製造業をはじめとして、工場でのお仕事に興味のある方はご登録を

アルバイトアプリ「シェアフル 」

単発バイトを探すのにオススメのアプリ。登録まではたったの1分。1日単位で稼げるバイトを探すことができる。簡単に応募できる上、履歴書の提出や面接が要らないので、すべてオンラインで完結できる。「とにかく今すぐ稼ぎたい」「メインのバイトの空き時間に稼ぎたい」「スキマ時間を利用して稼ぎたい」方はぜひダウンロードを

全部無料のe-Learning アイプラス

コメント

  1. […] Pro(Surfece Pro 2を含む)じゃないとダメ(その理由は、この記事をご覧ください)。 逆を言うと、OfficeとInternet […]

  2. […] それは、キューティー吉本がSurfaceを使っていた時のこと。Internet ExplorerでWebを見ていまして、普段だったらマウスを使っているときはデスクトップ画面版のInternet Explorerを使うのですが、今回たまたまWindowsストアアプリ版(つまり、スタート画面から起動する方)を使ってみたのでした。すると・・・ […]

  3. […] しかし、諸般の事情により、ARM系のCPUで従来のWindowsアプリは動かないので、ここは一つWindows 8とWindows RTを出して、PC・タブレット・スマートフォン共通で動くアプリを流行らせよう・・・ということを考えていたのかもしれません。確かに、Windowsストアアプリの場合、それが実現できる可能性があるんです。また、32ビット版Windowsと64ビット版Windowsの両方を開発するのは面倒なので、Windows RTが普及したら、32ビット版Windowsの開発をやめる計画だったのかもしれません。 […]

  4. […] 以前の記事にも書きましたが、初代SurfaceとSurface 2はWindows RT(または、Windows RT 8.1)搭載で、普通のWindowsアプリケーションが利用できません。このため、ウイルスに感染する確率が低い反面、使い方にはかなり制約が出てきます。また、事実上初代SurfaceとSurface 2専用と言ってもいいWindows RT 8.1が、Windows 10にアップグレードされるかどうかは、現時点では不明です。仮にWindows 10にアップグレードされたとしても、従来のWindowsアプリケーションが動かないのは同じでしょう。 […]

  5. […] RTはWindows RTマシンだったため、普通のWindowsアプリが動きませんでした。Surface […]

  6. […] デスクトップモードで起動した場合、アプリケーションはこんな感じです。一見すると何の変哲もないように見えます。実はこれもWindows 10の進化でして、Windows 8で新たに採用されたストアアプリも、デスクトップ上で動くようになっているんです。なので、どれが従来のWindowsアプリで、それがストアアプリなのか、見た目では区別がつかなくなっています。また、タッチパネルでタッチしやすいよう、タイトルバーがWindows 8以前よりも太めになっています。(ストアアプリの詳細は、この記事をご覧ください) […]

  7. […] SurfaceとSurface 2は、普通のWindowsのアプリケーションは動きません。なぜかと言うと、Windows 8.1 RTといって、正確にはWindowsじゃないんです(SurfaceはデフォルトでWindows RTがインストールされているが、無料でWindows 8.1 RTにアップデートできる)。使うことができるのは、Windowsストアアプリといって、Windowsストアからインストールして使うアプリのみです。(詳しくは、この記事をご覧ください) […]

タイトルとURLをコピーしました