このページの本文へ

前へ 1 2 次へ

Windows Info 第446回

Windows 11のフォトアプリがUWPからWin32アプリになったことで今更わかるUWPの問題点

2024年08月25日 10時00分更新

文● 塩田紳二 編集● ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

UWPにはセキュリティを高めるためさまざまな制限がある
Desktopアプリになったことで動作が速くなった

 UWPにはセキュリティを高めるためにさまざまな制限が加えられている。これを低整合性(lowIL。Low Integrity Level)と言い、その実行環境をAppContainerと呼ぶ。ここでは、利用できるAPIが制限され、プログラムと分離された状態で実行される。これに対して、従来のWin32/Desktopアプリケーションの実行環境は、midleILと呼ばれ、その実行環境をMSIX Containerという。midleILでは、lowILよりも制限が少なく、システムへのアクセスも大部分が許される。

 UWPではフォルダのアクセスには、ユーザーの許可が必要になる。しかし、従来の画像ビューアーや写真アプリケーションでは、ユーザーが画像を保存しているさまざまなフォルダをスキャンしており、フォトアプリも同程度の使い勝手を実現する必要がある。また、フォルダやファイルのアクセスに対して強いセキュリティチェックがなされ、実行環境が分離されることから、UWPアプリ用に用意されたファイル関連のAPIは、あまり性能が高くなかった。

 そもそも、WinRTやWinUIは、Win32の上に高いセキュリティを持たせて実装されているため、同等のAPIは、速くてもWin32と同程度、場合によっては遅くなってしまう。

 このために、フォトアプリはWin32/Desktopアプリをサービスとして動作させ、Win32APIでファイルのスキャンなどをさせていた。

フォトアプリ

UWP時代のフォトアプリは、UWPアプリとC++で作成したWin32プログラムがセットになっていて、IPC(Inter Process Communication。プロセス間通信)で接続していた(画像はWindows Developer Blogから引用 https://blogs.windows.com/windowsdeveloper/2024/06/03/microsoft-photos-migrating-from-uwp-to-windows-app-sdk/)

 パッケージにWin32プログラムを入れるには、Full-trustと呼ばれる許可を付けないと、Microsoftストアで配布できない。Microsoft社内からのMicrosoftストア登録がどうなっているのかは知らないが、サードパーティの開発者がFull-trustを得るのは敷居が高い。筆者も、ストアにDesktopプログラムを申請しようとしたとき、条件などを理解しないままFull-trustになってしまい、開発や申請を進めることができなかった

 とまあ、最終的にはあまり行儀の良くないUWPアプリになってしまったフォトアプリだが、それでも高いパフォーマンスが出せなかったという。

 Desktopアプリとなったフォト(Photos.exe)は、Windows本来の速さで動作できる。ただし、Photos.exeは、画像ファイルを表示させるごとに自分自身を起動する。画像表示ウィンドウは、別のプロセスになっている。何も画像を表示させていないときもビューアー用のプロセスが起動しており、画像ウィンドウが開くたびにプロセスが増える。タスクマネージャーでPhotos.exeを探すとわかるが、常に2つのPhotos.exeが起動しており、コマンドラインを表示させると、2つ目のPhotos.exeには、「ms-photos:spareprocess-viewer」というオプションが付いている。

フォトアプリ

現在のフォトアプリ(Photos.exe)は起動すると、自分自身をもう1つビューアーウィンドウ用に起動する。画像は、ビューアーウィンドウ用プロセスの子プロセスが表示する。すでにプログラムはメモリ中に読み込まれているため、高速に画像を表示することが可能

 2つ目以降のPhotos.exeのビューアープロセスは、最初のビューアープロセスの子プロセスとなっている(Process Explorerなどで見るとわかる)。これは、画像ウィンドウを開くのを高速化するためだ。プロセスは簡単に自分自身を子プロセスとして起動できる。しかも、プログラムコード部分はすでにメモリにあり、これを共有するため、実行ファイルをメモリに読み込み実行環境を構築する必要がなく、起動時間が短くなる。

 また、フォトレガシー(UWP版フォト)では、Win32別プロセスとして動作していたモジュール側とプロセス間通信を使ってデータを交換していたが、Photos.exeでは、同一プロセス内での処理となるため、メモリ共有などで高速なデータ交換が可能になる。このあたりも、フォトアプリが高速動作できる原因だ。

 Windows 10から、標準搭載アプリのUWP化が進んだが、Windows 11からWinUI 3アプリ化に切り替わった。WinUI 3化により、フォトアプリは多くのメリットが得られた。フォトアプリはこうした方向性の“代表作”ともいえる。

 誰もが、「トロ」いアプリより「スカッ」と動くアプリを好むのは当たり前の話。Windows 10から、ここに至るまで、壮大な「遠回り」があり、ようやく「本道」に戻ってきた感じがある。もっとも、Microsoftとしては、まだ「マルチプラットフォーム」アプリ自体は諦めていないようだが……。

前へ 1 2 次へ

カテゴリートップへ

本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥2,535
2
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥740
3
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥1,680
4
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
¥1,899
5
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
6
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
¥6,910
7
【Amazon.co.jp限定】 ロジクール ワイヤレスマウス 無線 マウス M185CG 小型 電池寿命最大12ケ月 M185 グレー 国内正規品
【Amazon.co.jp限定】 ロジクール ワイヤレスマウス 無線 マウス M185CG 小型 電池寿命最大12ケ月 M185 グレー 国内正規品
¥1,233
8
Anker PowerLine lll Flow USB-C & ライトニング ケーブル MFi認証 Anker絡まないケーブル USB PD対応 シリコン素材採用 iPhone 14 / 14 Plus / 14 Pro / 14 Pro Max / 13 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine lll Flow USB-C & ライトニング ケーブル MFi認証 Anker絡まないケーブル USB PD対応 シリコン素材採用 iPhone 14 / 14 Plus / 14 Pro / 14 Pro Max / 13 各種対応 (1.8m ミッドナイトブラック)
¥2,290
9
NIMASO ガラスフィルム iPad 第11世代(A16) 2025用/iPad 10.9インチ 第10世代 2022用 衝撃吸収 強化 ガラス 保護フィルム 指紋防止 ガイド枠付き NTB22I574
NIMASO ガラスフィルム iPad 第11世代(A16) 2025用/iPad 10.9インチ 第10世代 2022用 衝撃吸収 強化 ガラス 保護フィルム 指紋防止 ガイド枠付き NTB22I574
¥1,599
10
Verbatim バーベイタム 1回録画用 ブルーレイディスク BD-R 25GB 50枚+3枚増量パック インクジェットプリンタ対応 ホワイト 片面1層 1-6倍速
Verbatim バーベイタム 1回録画用 ブルーレイディスク BD-R 25GB 50枚+3枚増量パック インクジェットプリンタ対応 ホワイト 片面1層 1-6倍速
¥2,480

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン