窓辺の小石 第62回 Windowsの名前
拡大する(全1枚)
たいていのコンピューティング・プラットフォームには、自身のOS名やバージョンを得るための機能が搭載されている。たとえば、Linuxなら、unameコマンドでカーネルのバージョンやOS名を得ることができ、/etc/os-releaseでディストリビューションに関連する情報を得ることができる。

Androidでは「設定」アプリの「電話情報」などで、Androidのビルド番号やハードウェアに関する情報を、プログラムからはandroid.os.Buildクラスでバージョン情報を得ることができる。Linuxから派生したAndroidでは、デバッグ用シェル(adb shell)内ではunameや/proc/versionが使える。

Windowsにもバージョンを表示するWinVer.exeや設定 ⇒ システム ⇒ 詳細情報 ⇒ Windowsの仕様、といった機能がある。しかし、Windowsでは、それ以外にもさまざまな方法でWindowsのバージョンなどを調べる方法がある(表01)。これが全てではなく、現在でも利用できるが、Windows 10で非推奨と決定したVersion Helper APIなどは前記の表からは省いてある。

ところがWindows 11でバージョン情報を取得しようとすると、いくつかの方法ではバージョン番号として“10”が返ってくる。場合によっては、もっと前のWindows 8のバージョンが返ってくることもある。こうした「混乱」は、今に始まったことではない。MS-DOSの時代からMicrosoftはバージョン番号で苦しんできており、バージョン情報を取得する機能は、さまざまな形式で提供され、その結果、複数の方法が残り、さまざまなバージョンを返すようになった。