Windows 10の最新バージョンは、Microsoftの過去のサーバ製品との識別混乱を避けるために、当初予定されていた「バージョン2003」ではなく、「バージョン2004」として提供されます。詳細なリリース時期やバージョンについて秘密主義的なMicrosoftに対して、外部の識者の中にはHyper-VのPowerShellコマンドレットを使用して予測する人がいるのですが、そのコマンドレットの出力結果は当てにならないこともあります。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Microsoftは「Windows 10 Creators Update」以降、新バージョンのビルドを3月と9月に完成させ、バージョン「YY03」または「YY09」(YYMM=YYは西暦下2桁、MMは完成月)として翌月または翌々月に一般提供を行ってきました。
また、「Windows 10(初期リリース)」「Windows 10 November Update(バージョン1511)」「Windows 10 Anniversary Update(バージョン1607)」「Windows 10 Creators Update(バージョン1703)」「Windows 10 Fall Creators Update(バージョン1709)」と、新バージョンの特徴や提供時期を示す名称を付けてきましたが、「バージョン1803」以降は「April 2019 Update」のように「<リリース月の英語表現> <4桁の西暦> Update」という名称を一貫して用いています。
バージョンとは別に命名される名称は、Windows 10のバージョン情報に含まれる情報ではありません(画面1)。Windows 10の中をいくら探しても、その名称を見つけるのは極めて難しいでしょう(後述しますが存在します)。
Windows Updateで配布される際も「Windows 10、バージョン2004の機能更新プログラム」のような表現になると思います(本稿執筆時は正式リリース前)。これは主にマーケティング的、ニックネーム的な意味合いで命名されるもので、リリース直後には公式のWebサイト(Windows 10のダウンロードサイトや公式ドキュメント)で「2019年5月の更新プログラム」(May 2019 Updateの場合)と誤訳されることもあります。Microsoftの機械翻訳は多くの場合、「Update」を「更新プログラム」と訳すからです。
「バージョン1709」からは、Windows Serverについても「半期チャネル(Semi-Annual Channel、SAC)」の提供が始まり、Windows 10とWindows ServerのSACは、同じバージョン番号で同時にリリースされます。
最新バージョンは当初、「Windows 10 バージョン2003」および「Windows Server, version 2003」を予定していたようですが、5年前(2017年7月)にサポートが終了したサーバ製品「Windows Server 2003」やその他の「バージョン2003」製品との混乱を避けるため、「バージョン2004」になることが2019年11月末に発表されています。
その次のバージョンについてはまだ発表はありませんが、当初の予定通り「バージョン2009」のままと予想しています。なぜなら、「バージョン2008」「バージョン2011」「バージョン2012」には「Windows Server 2008」「Windows Small Business Server 2011」「Windows Server 2012」がありますし、「バージョン2010」には「Office 2010」や、Officeサーバ製品である「Exchange Server 2010」や「SharePoint 2010」があるからです。誤解される可能性を最小限にするには、「バージョン2009」しか残っていないといえるでしょう。
Windows 10やWindows ServerのHyper-VのPowerShellコマンドレット(Hyper-Vモジュール)には、Windows 10の新バージョンやリリース時期の予測に利用されてきたものがあります。それは、ローカルのHyper-Vでサポートされる仮想マシンの構成バージョンと既定のバージョンを出力する「Get-VMHostSupportedVersion」コマンドレットです。
Windows 10 バージョン2004でHyper-Vを有効化し、このコマンドレットを実行すると、最新の仮想マシン構成バージョンが「Microsoft Windows 10 May 2020 Update/Server 2003」という名前のバージョン「9.2」を確認できます(画面2)。
筆者が確認した限り、Windows 10の中に見つけることができた「Windows 10 May 2020 Update」はこれが唯一のものでした。他に「Windows 10 Anniversaryリリース後」という表現を「ポリシー設定」(Gpedit.msc)の中に見つけましたが、それ以外はポリシー設定の中にバージョン番号での表現しか見つかりませんでした。
先ほど、Windows 10とWindows ServerのSACは同じバージョン番号と指摘しましたが、「Server 2003」という表現が含まれることに注目してください。Windows ServerのSACの最新バージョンの製品名は「Windows Server, version 2004」です(画面3)
実は、Get-VMHostSupportedVersionコマンドレットが間違った情報を出力することは、これまでもありました。「Windows 10 May 2019 Update(バージョン1903)」は、前年(2018年)の「Windows 10 October 2018 Update(バージョン1809)」のリリース直後に発覚した重大な問題のため、提供が停止され、2018年11月に再リリースされるという失態があったからか、リリースに慎重になり、当初の2019年4月から5月に延期されたといういきさつがあります。
しかし、Windows 10 バージョン1903のGet-VMHostSupportedVersionコマンドレットが返す情報は、修正されることがないままリリースされ、「Microsoft Windows 10 April 2019 Update/Server 1903」を返します。この状態は、OSのコア部分が共通のバージョン1909でも修正されていません(画面4)。Windows 10 バージョン2004でようやく「Microsoft Windows 10 May 2019 Update/Server 1903」に修正されました。
つまり、Get-VMHostSupportedVersionコマンドレットは、リリース時期や名称の予測に使用するには「あまり当てにならない」ということです。リリース月が確定しても修正されないこともありますし(April 2019 Update)、せっかく修正したのに完全ではなかった(Server 2003)ということもあるのです。
Get-VMHostSupportedVersionコマンドレットがどこから情報を取得しているのか、少し調べてみました。すると、Hyper-VのWMI名前空間である「root\virtualization\v2」の「Msvm_VirtualSystemSettingData」クラスに、「サポートされている仮想マシンの構成バージョン」(表示言語が英語の場合は「Supported Virtual Machine Configuration Version」)というキャプション(Caption)が付いた設定として格納されていました。PowerShellなら次のコマンドラインを実行することで、Get-VMHostSupportedVersionコマンドレットと同じ情報を取得することができます。
Get-WmiObject -Namespace root\virtualization\v2 -Query "Select * from Msvm_VirtualSystemSettingData WHERE Caption='サポートされている仮想マシンの構成バージョン'" | Select Caption, ElementName, Version
「Server 2003」を含む問題の情報だけを取得するには、次のようなコマンドラインを実行します。
$wmiobj = (Get-WmiObject -Namespace root\virtualization\v2 -Query "Select * from Msvm_VirtualSystemSettingData WHERE Version='9.2'") $wmiobj.ElementName
「Set-WmiInstance」コマンドレットや「wbemtest.exe(Windows Management Instrumentationテスト)」を使用して、「ElementName」を「Microsoft Windows 10 May 2020 Update/Server 2004」に書き換えようと試みましたが、変更することはできませんでした。設定不能な値というわけではないのですが、変更は無視される感じです(画面5)。
名称が間違っていることなんて機能に影響するわけではないので、たいしたことではありません。今回初めて、Hyper-Vに関連する重要な仕様や変更点について気が付いたことがあります。
まず、Windows 10やWindows Server SACについて仮想マシンの既定の構成バージョンは、最新のHyper-Vでサポートされる最上位のバージョンではなく、Windows Server 2016(バージョン1607)やWindows Server 2019(バージョン1809)といった最新の長期サービスチャネル(Long-Term Servicing Channel、LTSC)の構成バージョンにそろえられているということです。
もう1つは、仮想マシンの構成バージョン「8.0」よりも前のバージョンのサポートが、今回から切り捨てられたということです。仮想マシンの構成バージョンは「New-VM」コマンドレットに指定することが可能ですが、サポートされていない古いバージョンを指定するとエラーになります(画面6)。
2020年6月中旬、「20H2」として開発されている2020年秋リリース予定のWindows 10のバージョン番号は「2009」のような従来の形式ではなく、「20H2」そのものになることが発表されています。
岩手県花巻市在住。Microsoft MVP:Cloud and Datacenter Management(2019-2020)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows版Docker&Windowsコンテナーテクノロジ入門』(日経BP社)、『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。
Copyright © ITmedia, Inc. All Rights Reserved.