スマホもXbox Oneも全部Windows 10
その名称の理由は共通のアプリ実行環境を持つため
Windows 10は従来のPCだけではなく、Windows PhoneやXbox Oneなどでも動作する「マルチプラットフォーム」のOSだ。これまで、マイクロソフトのOS製品は、Windowsのカーネルをベースに開発されてきたが、Windows 10からは、名称がすべて同じになる。公式ブログなどで発表された情報によれば、全部で7つの「エディション」があるというが、実際にはもう少しあるようだ。

これらのエディションは、対応プラットフォームなどにより、いくつかの「カテゴリ」に分類できる。1つはPCプラットフォーム向けのWindows 10 Desktop、もう1つはスマートフォン/タブレット向けのWindows 10 Mobile、そして組み込み機器向けのWindows 10 IOTだ。
さらにはXbox OneやSurface Hub、HoloLensなどにもWindows 10が搭載される。こちらはそれぞれが専用ハードウェアであり、「エディション」としては別になると思われる。
なぜ、これらが全部Windows 10なのかというと、共通のアプリケーション実行環境である「UWP」(Universal Windows Platform)があり、共通の実行形式(APPXと呼ばれる)、共通のAPIセットがあるからだ。
また、GUIを持つプラットフォームでは、Adaptive UXと呼ばれる共通のアプリケーションスタイルが利用できる。これは解像度に合わせて画面レイアウトを自動的に変更する機能を持ち、解像度に影響されることなくアプリケーションを実行できるようにする。
CPUアーキテクチャなどの違いは、仮想コードを使う「.NETフレームワーク」、あるいはC++の開発環境であるVisual Studioなどが対応することで、依存性を減らしている。
基本的にはWindows 10は共通の実行環境を持ち、共通のAPIを持つが、プラットフォームやシステム構成などにより、ハードウェアの違いは存在し、APIの中でも特定のハードウェア機能(たとえば、モバイル通信、無線LAN、Bluetoothといった通信機能の有無など)に依存したアプリケーションを作ることができてしまうため、すべてのUWPアプリがすべてのWindows 10で動作するわけではない。
しかし、スマートフォンでもタブレットでもノートPCでも動作するアプリケーションの開発自体は容易であり、開発者はプラットフォームを特定することなく開発が可能なのだ。
過去のバージョンとの互換性は
同じプラットフォームでのみ対応
Windowsに限らず、すべてのOSに重要なのは、過去のバージョンとの互換性だ。そもそもOSを使う理由の1つは、一定のアプリケーション実行環境があり、過去に開発したアプリケーションも動作できるためだ。
今回、これまで別製品だったOS(たとえばWindows PhoneとWindows)を1つにしてしまったために、そのあたりがわかりにくくなっている。しかし、原則として、前述のカテゴリごとに、過去のバージョンとの互換性を持つ。
たとえば、Windowsのデスクトップアプリは、Windows 10 Desktopでしか動作しない。マイクロソフトは、デスクトップアプリをクラシックWindowsアプリと呼び始めたので、この記事でもこの用語を使うことにする。
このため、同じWindows 10でも、クラシックWindowsアプリは、Windows 10 Mobileでは動作しない。逆にWindows Phone用アプリは、Windows 10 Mobileでは動作するが、Windows 10 Desktopでは動作しない。
なんともややこしい話だが、Windows 8までのストアアプリも、実はWindows 10 Desktopでしか動作しないのだが、2014年のBuildで発表されたUWA(Universal Windows Apps)は、Windows 8ストアアプリとWindows Phone 8.1アプリを組み合わせて同時に開発できるようにしたものなので、これはWindows 10 DesktopでもWindows 10 Mobileでも動作する。このあたりをまとめたのが下の図だ。

この連載の記事
-
第470回
PC
Windows用のパッケージマネージャー「Winget」 プレビュー版で機能が充実してきた -
第469回
PC
Windows Updateの27年 悪役だった頃から改良が進んで、徐々に目立たない存在に -
第468回
PC
2025年のWindowsどうなる!? Windows Insider Programの状況をあらためて見る -
第467回
PC
Copilot+ PCのNPUでカメラを処理する「Windows Studio Effects」 その内容や効果は? -
第466回
PC
PowerToysの最近の新機能には、複数アプリを指定位置に起動する「ワークスペース」や新規作成のカスタマイズがある -
第465回
PC
WindowsのPowerShellからBluetoothデバイスを調べる -
第464回
PC
Windows 10のサポート切れまで1年を切った さてWindows 10マシンをどうする? -
第463回
PC
Windows Terminal Preview版でSixelグラフィックスを実際に表示させてみる -
第462回
PC
Windows Terminal Preview版でSixelグラフィックスを扱う -
第461回
PC
Copilot+ PCを買ってみたが、「今焦って買う必要はない」のかもしれない -
第460回
PC
Windowsでsftpを使う - この連載の一覧へ