みねっちょのマイコン関係ブログ

組込開発系フリーソフトやハードの情報発信ブログ

Windows 10 用の無償な X Window サーバの比較

サイト内 Google 検索:


最終更新: 2021-03-24

Unix (Linux) 系の GUI を動かすのに必須な X Window サーバについて、Windows 用の無償ソフト VcXsrv、XmingCygwin/X に関する使用経験を元にした比較記事です。X-Windows サーバは、MinGW や WSL 等の GUI や、リモートで動いて居る Unix (Linux) の画像を表示するソフトです。結論として、2021年現在の無償の X サーバのお薦めは VcXsrv です。各ダウンロードサイトや使いこなしのノウハウも紹介します。

目次:


 


X Window サーバとは:

X Window System は、Unix (Linux) 系の OS において標準的に利用されているウィンドウ システムです。使用しているコンピュータ自体、あるいはリモートのコンピュータで実行されている、個別アプリケーション プログラムからの GUI 画像を表示するシステムです。

サーバとクライアントの概念が普通と逆で分かりにくいのですが、画像を見ている操作者の端末側がサーバ、アプリケーションを実行して画像を送り出す側がクライアントと呼ばれます。つまり、御自身でパソコンを操作してリモートの Unix 系環境のアプリケーション画面を操作する場合、御自身のパソコンで動かすのがサーバ、リモートの Unix 環境で動いて居るのがクライアントとなります。

サーバ ソフトウェアは、X Server とも呼ばれます。


 


無償の X-Window サーバ ソフトウェア比較:

さて、本題の無償で利用可能な Windows 用の X Window サーバですが、私が使ったことの有るのは次の3つです。有償製品は除きます。

ソフト名 概要
VcXsrv

安定している。未だ使い込んではいないが、現在のお薦め
完全無償Xming とほぼ同じソースコードとの噂。
2019年頃から Windows 10 で使用。

Xming

Web Site Release 版は非常に安定している。

Web Site Release: 最新の安定版。PayPal による寄付と引き換え。
Public Domain: 無償だが、古い。(2007年5月版、Ver. 6.9)

Web Site Release 版を2010年代前半から Windows 7 で使用。

Cygwin/X

まともに動作した記憶が無い。Cygwin 自体が既に時代遅れ?
完全無償。Cygwin の付随プロジェクト。元は Cygnus Solutions 開発。
2000年頃から Windows 98、2000、XP で使用。

VcXsrv:

公式サイト

sourceforge.net


 


Xming:

公式サイト: Web Site Release と Public Domain の両方の版が有る

www.straightrunning.com

別サイトの日本語自動翻訳: Public Domain (無償) 版 Ver. 6.9 のみ

ja.osdn.net


 


Cygwin/X:

公式サイト

x.cygwin.com

使いこなしのノウハウ (Tips):

  • X-Terminal の画面を飛ばす為に使うべきではない (メモリの無駄使い) 。
    CLI はローカルのターミナル エミュレータから sshtelnet で使用する。
  • Windows上で Unix (Linux) 系のデスクトップ環境用のウィンドウ マネージャ (GNOME、Unity、LXDEKDE、mwm、twm 等) を動かす意味は無い。
    アプリケーションの画像のみを転送すること。
  • X サーバは通常、Windows のタスクバーの通知領域に常駐する。
    右クリックで詳細メニューが開く。
  • ローカルホスト以外からのアクセスは許可制。WSL 2 ではこの設定が必要。
    VcXsrv で Unix (Linux) の「xhost +」(全許可、access control 無効) に相当する機能は起動画面3つ目の、赤で囲ったチェックボックス (Disable access control) 。
     (画像はクリックすると拡大します)

    f:id:minettyo:20210219233129j:plain

  • 画面を飛ばすクライアント側で、DISPLAY 環境変数を設定する。
    • bash の場合: 「export DISPLAY=ホスト名:0.0」または「export DISPLAY=IPアドレス:0.0」。
    • cshtcsh の場合:「setenv DISPLAY ホスト名:0.0」または「setenv DISPLAY IPアドレス:0.0」。
    • ローカルホストなら「:0」だけで良い。(WSL1ならこれで可。WSL2は仮想化で不可。詳細は【こちらの別記事】に記載。)
    • 後続の「.0」はサーバの画面が2つ以上の場合用で、1つなら省略可。

【X-Window の目次へ戻る】