[全文無料] Surface Pro Xに見るMicrosoftの未来戦略

この記事はバックスペースリスナーKeizouさんによる寄稿記事です。

どうも初めましてKeizouと申します。

普段はPodcastのBackspace.fmがリスナーとの交流を深めるために設置したガジェット系Mastodonサーバ mstdn.guru (通称グルドン)でLinux芸人として日々ドッカンドッカン笑いを得てい(ると思い込んで)ます。

イノベーターばかりのグルドンと言っても、やはり主流はWindows OSやmacOSが主流です。そんな中でLinux芸人の私がBackspace Magazineへ寄稿するというのはまさに時代の変わり目・節目たる令和元年に相応しいのではないでしょうか!

はい!ゴメンナサイ!調子乗りました!すみません!🙏

発端

今回、寄稿に至ったのはBackspace.fmの主幹を務めているドリキンさんによるTwitterでのツイートが発端。

これは本当に驚愕すべきことで私も大興奮。

いやもうホントにビックリ仰天。

いつものようにLinuxネタへ(たった1人で勝手に)グルドンで興奮していたらドリキンさんから「BSM寄稿しませんか?w」と誘われ、私の脳内に「……きこえますか…獣の数字viviviを好む者Keizouよ…Emacs教会の聖イグヌチウスです……今… あなたの…心に…直接… 呼びかけています… 書くのです…BSMへ寄稿をするのです…」という啓示も得た気がしたので場違いでありながらも寄稿をさせて頂いております。

Surface Pro Xは不便なのか?

Surface Pro X2019年10月2日に行われたMicrosoftの講演で発表された新しいノートPCです。

サイズ感は13インチで重さが約774グラム、2880×1920ピクセルというWQHD以上4K UHD未満なMicrosoft PixelSenceブランドの美麗かつ高耐久なタッチ対応高解像度ディスプレイが搭載されています。

注目したくなるのが4G LTE SIMが刺さること。ある程度の周波帯がカバーされており※3大キャリアを使っていれば困ることがなさそう。

※ 対応LTE周波帯:1、2、3、4、5、7、8、12、13、14、19、20、25、26、28、29、30、38、39、40、41、46、66

キーボードはカバー型脱着式でSurface Slim Penを収納可能なのが良いですね。

ストレージは128GBまたは256GBそして512GBです。どうやらSSDが取り外せる※そうで、将来的なストレージアップデートへも期待が持てます。

※ ユーザによる交換は認められていない。

ワーキングメモリは8GBもしくは16GBです。

つらつらとスペックを並べていきましたがモダンな仕様で、GPUをバリバリ使うようなことをしなければ至って普通に使えそう。

ただ、通常のノートPCと違う点がプロセッサはMicrosoft SQ1と呼ばれるArmアーキテクチャを採用した64Bitプロセッサであるということ!これが非常に重要な点なのです!

ソフトウェアの基礎知識として、ソフトウェアというものは各アーキテクチャへ向けて生成されるというものがあります。

厳密に言えば違いますが、アーキテクチャというものは「言葉」と理解するとよく、例えば日本語と英語は別の言葉です。

日本語と英語は確かに相互の翻訳が可能ですが、日本語では「超」と訳される英語の「Super」「Hyper」「Ultra」はニュアンスがあります。アーキテクチャでも似たようなプロセッサ命令でも細かな部分で違ったりします。

これが実際のコンピュータともなればこの微妙なニュアンスの違いは大きく現れ、現在のWindows OSが主流として採用しているIntel x86アーキテクチャ向けに生成されたソフトウェアはArmアーキテクチャ環境では動作しないのです。

実際にMicrosoftはSurface Pro Xのページへ以下のように記しています。

現時点では、Surface Pro XはArm64にポートされていない64ビットアプリケーション、一部のゲームとCADソフトウェア、一部のサードパーティドライバーまたはウイルス対策ソフトウェアをインストールしません。

つまり、Surface Pro Xの仕様として従来幅広く使われていたIntel x86アーキテクチャ向けに生成されたソフトウェアはインストールできないと明言しているのです。

どういうことかと言えば、例えばAdobeはオンラインを除くとWindows OS向けにはx86アーキテクチャ向けに生成されたPhotoshopしか提供していないので、Armアーキテクチャ環境であるSurface Pro Xではインストールできません。

はい解散!となったそこのキミ!ちょっと待って!ここからが大切なんですよ!

意外と豊富なArmアーキテクチャ向けソフトウェア

多くの人々はおそらく「Armアーキテクチャ向けWindowsってあれだろ?早い話がWindows RTだろ?」とMicrosoftの黒歴史を思い出しているかも知れません。

確かにWindows RTはダメな子でした。フル機能Windowsと比較して機能が制限されているしソフトウェアも少なかった。

でも違うんです!Surface Pro Xへ搭載されているのはフル機能Windowsなんです!Windows 10 Proなんです!

Windows RTはArmアーキテクチャ向けに新設計されたWindows OSでした。しかし今回Surface Pro Xへ搭載されているのはArmアーキテクチャへ対応できるよう移植したWindows 10 Proなのです!機能制限なしです!

ただ、当然ながら前述したとおりSurface Pro Xに搭載されたArm版Windows 10 Proでもx86アーキテクチャ向けに生成されたソフトウェアは動きません。

しかし、世の中にはソフトウェアのプログラミングソースコードを公開する人々が居て、それらオープンソースソフトウェアにはArmアーキテクチャ向けに生成されたものも存在します。

有名どころで言えばオープンなPhotoshopと呼ばれているGIMPや、無料でありながら高度な3DCGレンダリングが可能なBlender、多数の動画形式に対応したエンコーダ・デコーダを搭載しているVLC Media PlayerなどはArmアーキテクチャ向けに生成されています。

実はここにも問題がないわけではなく、オープンソースソフトウェアの開発って基本的にLinux向けが主流なんです。

もちろんWindows OS向けでもオープンソースソフトウェア開発が盛んなのですが、Linux向けと比較してしまうと規模が落ちます。そもそもLinux自体がオープンソースソフトウェアですしね。

オープンソースソフトウェア開発がLinuxを志向していることもあり、パフォーマンスの最適化もLinuxで進んでいることが多く、前述したGIMPはその最たるものと考えられ、実はWindows OSで動作しているGIMPとLinuxで動作しているGIMPはパフォーマンスが1割2割ほど違います。LinuxのGIMPのほうが軽快に動くんです。

WindowsでダメならLinuxを動かせば良いじゃない

ここで活躍するのがWSLってわけです。

ドリキンさんは現在CUIソフトウェアを中心に環境構築をテストしているようですが、すでにWSLに関する様々な報告によりWSLではLinuxのGUI環境の元となっているX Window Systemが動作することがわかっており、LinuxのGUIソフトウェアも利用することが可能です。おそらくはArm版Windows 10 Proでも可能。

更にX Window Systemの後継にあたるWayland※も動作すると思われ比較的モダンなGUIソフトウェアも軽快に動作すると考えることができ、早い話がLinuxへ最適化されたフルパフォーマンスのGIMPなどのGUIアプリケーションがWindows上で使っているかのような運用が出来ます。

※ WaylandはX Window Systemの後継なのでX Window Systemを用いたソフトウェアも動作する。

LinuxにはX Window Systemを前提としたGUIソフトウェアが沢山あります。X Window System自体もオープンソースソフトウェアなのでWindows向けのものもありますが、やはりWindows向けのGUIソフトウェアはMicrosoftが提供した機能でGUIソフトウェアを作るのが一般的なのでLinux以外ではあまり知られていません。

ドリキンさんはITエンジニアなのでIT開発環境を作ってしまいますが、何もCUIソフトウェアだけがWSLではないんですね。

WSLってそもそも何なの……?

IT開発などで日常的にLinuxを用いている人々からするとほぼ常識的な知識で誰もが知っている前提で話を進めてしまいましたが、BSMの読者は知らない可能性もあるので、わかりやすさを重視しつつ多少の誤魔化しに目をつむりながらザックリとWSLとは何か?を解説したいと思います。

早い話が、これまでMicrosoft Windows環境でWindows OSでない他のOS(Linuxディストリビューション)を動作させるにはWindows OSの根幹を成すWindows NTカーネル上へ仮想環境を構築して他のOSを動作させる必要がありました。

当然ながらWindows OSと同様にLinuxディストリビューション(正確性を廃するとLinux OSという理解で良い)を動作させるにはLinuxディストリビューションの根幹を成すLinuxカーネルを動作させる必要があります。

つまり、ハードウェアの上にWindows NTカーネルが乗り、Windows NTカーネルの上へ仮想環境を実行するための機能が乗り、その機能の上にLinuxカーネルが乗り、更にその上へLinuxディストリビューションが乗るという5層構造だったわけです。

画像2

しかもここで搭載されるLinuxカーネルはエミュレーション、つまりLinuxカーネルに似せて作られたほぼ別物といって良いものです。

これではパフォーマンスを確保するどころかHDDやSSDへ直接インストールする普通のLinuxディストリビューションとの互換性に不安が出てきます。

これが今までのWSL(通称WSL1)でした。

前述した通り、パフォーマンスと互換性に不安のあるWSL1とは違う新たな考えのもと次世代型のWSL2が構想されました。

それはMicrosoftが提供するハードウェア上で直接動作する仮想機械環境Hyper-V上にWindows NTカーネルと正真正銘のLinuxカーネルをそれぞれ独立して搭載するというものでした。

この方式であればHyper-Vの上にLinuxカーネルが乗り、その上にLinuxディストリビューションが乗るという4層構造で済み、互換性も確保できます。Windows NTカーネルへ依存しないのでWindows NTカーネルのパフォーマンスへ引っ張られることもありません。

画像3

動くのはLinuxディストリビューションそのものと考えてよく、Microsoftは自社のWindowsというOSを持っているのにも関わらずWSL2では本当に思い切った決断であると言えます。

なぜMicrosoftは決断したのか?

話は更にディープな世界へと突き進みますが、これを知ってるとWindowsとMacしか知らない大半のPCユーザへマウントが取れます(取れない人も居るので返り討ちに注意)。

Windowsという独自のOSを開発しているのにも関わらずMicrosoftがなぜWSLを開発し、Linuxを動作させなければならなかったのか?

それはWindows Subsystem for Linuxという名前が1つの歴史を示しています。

解りにくい答え方をあえてするならばLinuxはWindowsのサブシステムとして必要であったからなのです。

Microsoftの歴史を振り返ると、MicrosoftはWindowsの前身であるMS-DOSの前にXENIXというUNIX OSを開発・販売した会社でした。

その当時のUNIXは世界で最も先進かつ実用的なオペレーティングシステムであり、多くの企業、そして国家が採用するほど普及しています。

ただ、UNIXはあまりにも広範囲に活用されたため様々な種類の実装、いわば方言のような仕様の違いが氾濫しており、この状況に収拾を付けるためにオペレーティングシステムの実装に関する共通した仕様規格を設けるべきだという声が大きくなっていくのです。

そして生まれたのがオペレーティングシステムの実装に関する共通した仕様規格としてPOSIXが制定されることとなりました。

POSIXが制定されたことにより、UNIXを採用する企業と国家は調達・納品されるオペレーティングシステムはPOSIX準拠であることを指定するようになっていくのです。

その後MicrosoftはMS-DOSの開発を始めてXENIXを売却しますが、MS-DOSやその後に登場するWindows 9x系はXENIXとの互換性を確保するための機能が盛り込まれていました。

つまり、この頃のWindowsはPOSIXへ準拠するためPOSIX Subsystemを持っていたのです。

ここでやっとキーワードが来ましたSubsystem!

そうなんです、皆さんのご想像の通り新しく開発されたWindows NTカーネルを採用したWindows 2000以降のWindows OSではPOSIX Subsystemを持っていないという状況が生まれてしまった※。

※ Windows 7まではオプションとして提供していたがデフォルトには含まれていない。

ここで矛盾が生じます。企業や国家のオペレーティングシステム調達・納品のルールではPOSIX準拠であることが求められていたはずですが、気付かなかったことにしたり、問題を先送りにした結果、あまりにもWindows OSが世の中に広まりすぎてWindows OSから抜け出せないという状況になってしまったのです。

そしてタイミングが悪いことに世の中はどんどんIT化されインターネットが津々浦々まで広がり、更にはスマートフォンが登場し、インターネットはもはや人の世になくてはならない状況となっていく。

そのような中で起きたのが多くの企業や国家で使われている基幹システムのクラウドコンピューティングへの移行案です。

特に古くからある基幹システムはその歴史からUNIXを採用していることが多く、ここに来て突然クラウドコンピューティング移行のための競売条件にPOSIX準拠を突き付けられることが多くなってきました。

POSIXへ準拠していなければそもそも競売へ参加できないMicrosoftはWSLによってPOSIXへ準拠しているLinuxをサブシステムとして動かせばMicrosoftも競売へ参加できるという荒業を思い付くのです!

これだけでは終わらないMicrosoftの未来戦略(予想)

そしてここが凄いところなんですが、今までのWSLは基本的にIntel x86アーキテクチャでの用途が想定されていたのです。2019年11月現在にある多くのWSLの情報もIntel x86アーキテクチャ向け。

Surface Pro XでWSLが使えるというのは実はそこまで驚きはありませんでした。Surface Pro Xに搭載されているのはWindows 10 Proだからです。

しかし、そのWSL上で動いているのはIntel x86アーキテクチャをエミュレーションして動作しているIntel x86版Linuxだと多くのITエンジニアは思い込んていたところ良い意味で裏切られました。

アーキテクチャエミュレーションといえばIntel Mac移行時に大流行したPowerPCアーキテクチャのエミュレーションですが、これはMacユーザが語り継いでいるように散々な結果となってしまいました。

パフォーマンスが落ちるならまだしもそもそも動作しないPowerPCアーキテクチャ向けに生成されたソフトウェアが非常に多かった。

しかし、Surface Pro Xで動作しているのはArm版Linuxです。

ここからは完全に私の予想となってしまいますが、WSLが如何に優れているかと言ってもやはり多くの人々からすると敷居が高いものです。

少なくとも現在のWSLはテキストコマンドを打たなければならないですし、オープンソースソフトウェアで代替できると言ってもPhotoshopを使えないと業務へ支障をきたす人々が居るのは間違いありません。

おそらくここまで読んで頂けた方々の多くも「へぇ、WSLって凄くて便利なんだな(個人的に用途が思い付かないけど)」というような結論に至っているのではないかと思います。

しかし、私たちはArm版Photoshopの存在を知っています。それはPhotoshop for iPadです。

話が変わったかのように思えますが、現在のChromeOSではAndroidアプリが動作します。

これはGoogleがChrome Webストアで公開していたARC Welderがベースとなっている技術です。

ARC WelderはIntel x86アーキテクチャ上でArmアーキテクチャ向けに生成されたAndroidアプリをエミュレーションするものですから互換性に難がある。

再三繰り返しているので耳タコですがSurface Pro Xが搭載しているプロセッサはArmアーキテクチャでありアーキテクチャエミュレーションのように互換性に関して問題はほぼ存在しません。

勘の鋭い方は察しているかと思いますが、ここで注目すべきはWindowsの標準HTML5 WebブラウザであるMicrosoft EdgeはChromeのオープンソース版Chromiumベースへ移行することが発表されていることです。

Microsoftはこれまでソフトウェア開発のコストを下げるためにWindowsユニバーサルプラットフォーム(UWP)を推進してきました。

しかし、十分な普及に至っているとは言えずUWPアプリの少なさが問題になっており、Microsoftは近年UWPアプリもAndroidアプリもiOSアプリもクロスプラットフォームで開発できるXamarinを買収し、Windowsのソフトウェア開発環境のVisual Studioと強く統合するなどWindowsだけにこだわらない積極的な動きを見せています。

そうつまり、MicrosoftはWindowsでAndroidアプリを動作させようとしていると私は予想しています。

Windowsで公式にAndroidアプリが動作すると開発のコストが著しく下がるのは明白で、更にMicrosoftはAndroid搭載端末Surface Duoを発表するなど明らかにAndroidを意識する動きを活発化させています。Android版Surfaceを想定したソフトウェアがWindowsでも動くというのは最高のシナジーです。

Surface Pro XでArm版Linuxが動いていることに興奮していたのはこういう背景があったからなのです。

だからこそ再度言わなければならないでしょう!Surface Pro Xはゲームチェンジャーだと。

プロフィール

画像1

Keizou Wakabayashi
Linux芸人

小学生の頃にPC-9801と出会いコンピュータへのめりこむ。生家は漁師、元証券マン、現在は情報技術者という謎の経歴を持つ。最近はLinuxが時代に追い付いてきてしまいLinux芸人としてのジョークが真面目に取られてしまい困惑する日々を送る。

Mastodon: keizou@mstdn.guru
PixelFed: keizou@pixelfed.tokyo


ここから先は

0字
backspace.fmで培ったバラエティーに富んだネタや人脈をフルに活かして、テキストに留まらないあらゆる媒体を駆使したコンテンツを提供していきたいと思っています。 また有料マガジンならではの内輪ネタ、ちょっと毒舌、たまにネタバレも上等な本音トークを行いたいです。 コンテンツ料金としていただいたものは、backspace.fmをより飛躍させるための運営資金と考えていて、この売り上げを活用してコンテンツをより充実させていきたいと考えています。 ぜひ応援をよろしくお願いいたします!

BS Magazine

¥1,980 / 月 初月無料

テクノロジー系ポッドキャスト番組として人気の「backspace.fm」主催者の2人(ドリキン、松尾)を中心にお届けする雑誌。 ポッドキ…

この記事が気に入ったらサポートをしてみませんか?