Xウィンドウシステム

ウィキペディアから、無料の百科事典
ナビゲーションにジャンプ 検索にジャンプ

Xウィンドウシステム
X.Org Logo.svg
Twm.png
原作者プロジェクトアテナ
開発者X.Org Foundation
初回リリース1984年6月; 37年前 (1984-06
安定リリース
X11R7.7 [1] [2] ウィキデータでこれを編集する / 2012年6月6日
オペレーティング・システムUnixUnixライクMVS OpenVMSDOS
プラットホームクロスプラットフォーム
前任者Wウィンドウシステム
タイプウィンドウシステム
ライセンスMITライセンス
Webサイトx .org ウィキデータでこれを編集する

X Window SystemX11、または単にX)は、Unixライクなオペレーティングシステム で一般的なビットマップ表示用ウィンドウシステムです。

Xは、GUI環境の基本的なフレームワークを提供します。つまり、ディスプレイデバイス上でウィンドウを描画および移動し、マウスとキーボードを操作します。Xはユーザーインターフェイスを義務付けていません–これは個々のプログラムによって処理されます。そのため、Xベースの環境の視覚的なスタイルは大きく異なります。プログラムが異なれば、根本的に異なるインターフェースを提示する可能性があります。

Xは、1984年マサチューセッツ工科大学(MIT)のプロジェクトアテナの一部として発足しました。 [3] Xプロトコルは1987年9月からバージョン11(したがって「X11」)になっています。X.OrgFoundationはXプロジェクトを主導しています。現在のリファレンス実装であるX.OrgServerは、 MITライセンスおよび同様の許可ライセンス の下で無料オープンソースソフトウェアとして利用できます。

目的と能力

Xは、リモートのグラフィカルユーザーインターフェイスと入力デバイス機能のためのアーキテクチャに依存しないシステムです。ネットワーク端末を使用する各ユーザーは、任意のタイプのユーザー入力デバイスを使用してディスプレイを操作できます。

その標準配布では、ほとんどのUnixライクなオペレーティングシステムとOpenVMSでグラフィカルユーザーインターフェイスを構築するための標準ツールキットプロトコルスタックを提供する、完全でありながらシンプルな表示およびインターフェイスソリューションであり、他の多くの現代的な汎用オペレーティングに移植されています。システム

Xは、このようなGUI環境を構築するための基本的なフレームワーク、つまりプリミティブを提供します。ディスプレイ上でウィンドウを描画および移動し、マウス、キーボード、またはタッチスクリーンを操作します。Xはユーザーインターフェイスを義務付けていません; 個々のクライアントプログラムがこれを処理します。プログラムは、ユーザーインターフェイスなしでXのグラフィック機能を使用できます。そのため、Xベースの環境の視覚的なスタイルは大きく異なります。プログラムが異なれば、根本的に異なるインターフェースを提示する可能性があります。

以前のほとんどのディスプレイプロトコルとは異なり、Xは、一体型または接続されたディスプレイデバイスではなく、ネットワーク接続を介して使用するように特別に設計されました。Xはネットワーク透過性を備えています。つまり、ネットワーク上のどこかのコンピューター(インターネットなど)で実行されているXプログラムは、ネットワーク上の他のコンピューターで実行されているXサーバー上でユーザーインターフェイスを表示できます。Xサーバーは通常、グラフィックリソースとキーボード/マウスイベントをXクライアントに提供します。つまり、Xサーバーは通常、人間のユーザーの前のコンピューターで実行され、Xクライアントアプリケーションはネットワーク上の任意の場所で実行され、グラフィックコンテンツのレンダリングを要求し、キーボードやマウスなどの入力デバイスからイベントを受信するためのユーザーのコンピューター。

「サーバー」という用語がユーザーの前のソフトウェアに適用されるという事実は、リモートコンピューター上のサービスのクライアントであるプログラムに慣れているユーザーにとっては驚くべきことです。ここでは、リモートデータベースがローカルアプリのリソースではなく、ユーザーのグラフィック表示と入力デバイスが、ユーザーのグラフィックと入力デバイスを共有する必要があるローカルとリモートでホストされているXクライアントプログラムの両方でローカルXサーバーによって利用可能になるリソースになります。ユーザーと通信します。

Xのネットワークプロトコルは、Xコマンドプリミティブに基づいています。このアプローチにより、別のコンピューターで実行されている可能性のあるXクライアントアプリケーションによる2D操作と(GLXなどの拡張機能を介した)3D操作の両方を、Xサーバーのディスプレイで完全に高速化できます。たとえば、従来のOpenGL(バージョン3.0より前)では、リモートXクライアントプログラムによって多数のオブジェクトを含むディスプレイリストを作成してXサーバーに完全に格納し、それぞれを1つのglCallList(which)を送信することでレンダリングできます。通信網。

Xはオーディオのネイティブサポートを提供しません。このニッチを埋めるためにいくつかのプロジェクトが存在し、いくつかは透過的なネットワークサポートも提供します。

ソフトウェアアーキテクチャ

簡単な例:Xサーバーは、ローカルのキーボードとマウスから入力を受け取り、画面に表示します。Webブラウザーとターミナルエミュレーターはユーザーのワークステーションで実行され、ターミナルエミュレーターはリモートコンピューターで実行されますが、ユーザーのマシンから制御および監視されます。

Xはクライアントサーバーモデルを使用します。Xサーバーはさまざまなクライアントプログラムと通信します。サーバーは、グラフィカル出力(Windows)の要求を受け入れ、ユーザー入力(キーボード、マウス、またはタッチスクリーンから)を送り返します。サーバーは次のように機能する場合があります。

  • 別のディスプレイシステムのウィンドウに表示するアプリケーション
  • PCのビデオ出力を制御するシステムプログラム
  • 専用のハードウェア

このクライアント/サーバーの用語(ユーザーの端末がサーバーであり、アプリケーションがクライアントである)は、用語が逆になっているように見えるため、新しいXユーザーを混乱させることがよくあります。ただし、Xはエンドユーザーの視点ではなく、アプリケーションの視点を取ります。Xはアプリケーションに表示およびI / Oサービスを提供するため、サーバーです。アプリケーションはこれらのサービスを使用するため、クライアントです。

サーバーとクライアント間の通信プロトコルは、ネットワーク透過的に動作します。クライアントとサーバーは、同じマシンまたは異なるマシンで実行される場合があり、アーキテクチャやオペレーティングシステムが異なる場合があります。クライアントとサーバーは、暗号化されたネットワークセッションを介して接続をトンネリングすることにより、インターネットを介して安全に通信することもできます。

Xクライアント自体は、他のクライアントに表示サービスを提供することにより、Xサーバーをエミュレートする場合があります。これは「Xネスティング」として知られています。XnestやXephyrなどのオープンソースクライアントは、このようなXネスティングをサポートしています。

リモートデスクトップ

リモートマシンでXクライアントアプリケーションを実行するには、ユーザーは次の手順を実行できます。

  • ローカルマシンで、ターミナルウィンドウを開きます
  • コマンドを使用ssh -Xしてリモートマシンに接続します
  • ローカル表示/入力サービスを要求します(たとえば、X転送が有効になっているSSHを使用していない場合)export DISPLAY=[user's machine]:0

次に、リモートXクライアントアプリケーションはユーザーのローカルXサーバーに接続し、ユーザーに表示と入力を提供します。

または、ローカルマシンが、リモートマシンに接続してクライアントアプリケーションを起動する小さなプログラムを実行する場合もあります。

リモートクライアントの実際的な例は次のとおりです。

  • リモートマシンをグラフィカルに管理する(リモートデスクトップの使用と同様ですが、単一のウィンドウを使用します)
  • クライアントアプリケーションを使用して、共同ワークグループ内の他の多数の端末ユーザーと参加する
  • リモートマシンで計算量の多いシミュレーションを実行し、ローカルデスクトップマシンで結果を表示する
  • 単一のディスプレイ、キーボード、およびマウスによって制御される、複数のマシンで一度にグラフィックソフトウェアを実行する

ユーザーインターフェイス

GNOMEグラフィカルユーザーインターフェイス
Xfceグラフィカルユーザーインターフェイス

Xは、主にプロトコルとグラフィックスプリミティブを定義します。ボタン、メニュー、ウィンドウのタイトルバースタイルなど、アプリケーションのユーザーインターフェイスデザインの仕様は意図的に含まれていません。代わりに、ウィンドウマネージャー、GUIウィジェットツールキット、デスクトップ環境、またはアプリケーション固有のグラフィカルユーザーインターフェイスなどのアプリケーションソフトウェアが、そのような詳細を定義して提供します。その結果、典型的なXインターフェースはなく、いくつかの異なるデスクトップ環境がユーザーの間で人気を博しています。

ウィンドウマネージャは、アプリケーションウィンドウの配置と外観を制御します。これにより、MicrosoftWindowsまたはAppleMacintoshのデスクトップインターフェイス(GNOME 2、KDE、Xfceなど)を連想させるデスクトップインターフェイスや、根本的に異なるコントロール(wmiiやRatpoisonなどのタイル型ウィンドウマネージャーなど)が作成される可能性があります。SugarやChromeOSなどの一部のインターフェースは、デスクトップメタファーを完全に避け、特殊なアプリケーション向けのインターフェースを簡素化します。ウィンドウマネージャーは、必要最低限​​のもの(たとえば、Xで提供される基本的なウィンドウマネージャーであるtwm、または非常に軽いウィンドウマネージャーであるevilwm)から、Enlightenmentなどのより包括的なデスクトップ環境、さらにはアプリケーション固有のものまで、洗練された複雑さの範囲にあります。ポイントオブセールなどの垂直市場向けのウィンドウマネージャー。

多くのユーザーは、ウィンドウマネージャー以外に、一貫したユーザーインターフェイスを使用するさまざまなアプリケーションを含むデスクトップ環境でXを使用します。人気のあるデスクトップ環境には、GNOMEKDE ​​PlasmaXfceなどがあります。UNIX 98の標準環境は、共通デスクトップ環境(CDE)です。freedesktop.orgイニシアチブは、デスクトップと競争力のあるXデスクトップに必要なコンポーネント間の相互運用性に対応しています。

実装

X.Orgの実装は、Xの標準的な実装です。リベラルなライセンスにより、フリー、オープンソース、プロプライエタリの両方のバリエーションが数多く登場しています。商用のUnixベンダーは、リファレンス実装を採用してハードウェアに適合させる傾向があり、通常はそれをカスタマイズして独自の拡張機能を追加します。

2004年まで、XFree86は無料のUnixライクなシステムで最も一般的なXバリアントを提供していました。XFree86は、Xから386互換のPCへの移植として始まり、1990年代の終わりまでに、Xの技術革新とX開発のデファクトスタンダードの最大の源になりました。ただし、2004年以降、XFree86のフォークであるX.OrgServerが主流になりました。

XをUnixに関連付けることは一般的ですが、Xサーバーは他のグラフィック環境内にもネイティブに存在します。VMS Software Inc.のOpenVMSオペレーティングシステムには、標準デスクトップ環境として、DECwindowsと呼ばれる共通デスクトップ環境(CDE)を備えたバージョンのXが含まれています。AppleはもともとXをX11.appの形式でmacOSに移植しましたが、XQuartzの実装を支持して非推奨になりました。1990年代のAppleの古いオペレーティングシステム、System 7、Mac OS 8および9のサードパーティサーバーには、AppleのMacXとWhite PineSoftwareのeXodusが含まれていました。

Microsoft WindowsにはXのサポートは付属していませんが、 Cygwin / Xなどの無料のオープンソースソフトウェアや、Exceed、MKS X / Server、Reflection X、X-Win32、Xmingなどのプロプライエタリ製品として、多くのサードパーティ実装が存在します。

XサーバーのJava実装もあります。WeirdXは、Swing 1.1をサポートする任意のプラットフォームで実行され、ほとんどのブラウザー内でアプレットとして実行されます。Android X Serverは、Androidデバイスで実行されるオープンソースのJava実装です。

ネイティブウィンドウシステムを備えたオペレーティングシステムがさらにXをホストする場合、Xシステムは別のホストウィンドウで独自の通常のデスクトップを使用するか、ルートレスで実行できます。つまり、Xデスクトップは非表示になり、ホストウィンドウ環境がジオメトリを管理します。ホスト画面内のホストされたXウィンドウの外観。

X端末

X端末は、Xサーバーのみを実行するシンクライアントです。このアーキテクチャは、多くのユーザーが同じ大型コンピューターサーバーを同時に使用して、各ユーザーのX端末のクライアントとしてアプリケーションプログラムを実行するための安価なターミナルパークを構築するために普及しました。この使用法は、MITプロジェクトの当初の意図と非常に一致しています。

X端末は、 Xディスプレイマネージャー制御プロトコルを使用してネットワーク(ローカルブロードキャストドメイン)を探索し、クライアントとして許可されている使用可能なホストのリストを生成します。クライアントホストの1つは、Xディスプレイマネージャーを実行する必要があります。

X端末とほとんどのシンクライアントの制限は、キーボード、マウス、およびディスプレイ以外の入力または出力ができないことです。関連するすべてのデータはリモートサーバー上にのみ存在すると想定され、X端末ユーザーにはローカル周辺機器からデータを保存またはロードするための方法がありません。

専用(ハードウェア)X端末は使用されなくなりました。Xサーバーを備えたPCまたは最新のシンクライアントは、通常、同じまたはより低いコストで同じ機能を提供します。

制限と批判

Unix-Haters Handbook(1994)は、Xの問題に全章を捧げました。 [4] Gajewska、Manasse、McCormackによる Xが理想的なウィンドウシステムではない理由(1990)は、プロトコルの問題を詳細に説明し、改善のための推奨事項を示しています。

ユーザーインターフェイスの問題

Xに設計ガイドラインがないため、インターフェイスが大きく異なり、アプリケーションが常にうまく機能するとは限りません。クライアントの相互運用性に関する仕様であるInter-ClientCommunication Conventions Manual(ICCCM)は、正しく実装するのが難しいという評判があります。MotifCDEなどのさらなる標準化の取り組みは、問題を軽減しませんでした。これはユーザーとプログラマーを苛立たせました。[5]現在、グラフィックプログラマーは、特定のデスクトップ環境または特定のウィジェットツールキットにコーディングすることで 、アプリケーションのルックアンドフィールと通信の一貫性に対処しています。これにより、ICCCMを直接処理する必要もなくなります。

Xには、 NeWSのように、Xサーバー上のユーザー定義のストアドプロシージャのネイティブサポートも ありません。チューリング完全なスクリプト機能はありません。したがって、さまざまなデスクトップ環境が独自の(通常は相互に互換性のない)機能を提供する場合があります。

コンピュータアクセシビリティ関連の問題

Xに基づいて構築されたシステムには、右クリックダブルクリックミドルクリックマウスオーバーフォーカススティールなど、障害のあるユーザーがコンピューターを利用するのを困難にするアクセシビリティの問題がある場合があります。一部のX11クライアントは、他のクライアントよりもアクセシビリティの問題にうまく対処するため、アクセシビリティの問題を抱えている人がX11の使用を制限されることはありません。ただし、X11のアクセシビリティ標準またはアクセシビリティガイドラインはありません。X11標準プロセス内には、アクセシビリティに関するワーキンググループはありませんが、Xに加えてこれらの機能を提供するために、ソフトウェアプロジェクトによってアクセシビリティのニーズに対応しています。

Orcaプロジェクトは、API(AT-SPI [6])の実装を含め、X WindowSystemにアクセシビリティサポートを追加します。これをGNOMEのATKと組み合わせることで、GNOME / GTKAPIを使用してユーザー補助機能をXプログラムに実装できるようになります。[7] KDEは、テキスト読み上げコンバーターや画面拡大鏡など、さまざまなユーザー補助ソフトウェアのセットを提供します。[8]他の主要なデスクトップ(LXDE、Xfce、Enlightenment)はATKとの互換性を試みています。

ネットワーク

SSH経由でX11アプリケーションをトンネリングする例

Xクライアントは通常、そのコードが特に提供しない限り、あるサーバーから切り離して別のサーバーに再接続することはできません(Emacsはこの機能を備えた数少ない一般的なプログラムの1つです)。そのため、セッション全体を1つのXサーバーから別のXサーバーに移動することは一般的に不可能です。ただし、Virtual Network Computing(VNC)、NXXpraなどのアプローチでは、異なるXサーバーから仮想セッションに到達でき(端末に関してはGNU Screenと同様の方法で)、他のアプリケーションやツールキットが関連機能を提供します。[9] x11vncVNC:0ビューア)のような回避策)、XpraのシャドウモードとNXのnxagentシャドウモードも存在し、現在のXサーバー画面を利用できるようにします。この機能により、実行中のアプリケーションのユーザーインターフェイス(マウス、キーボード、モニター)を、アプリケーションを停止して再起動することなく、ある場所から別の場所に切り替えることができます。

XサーバーとリモートXクライアント間のネットワークトラフィックは、デフォルトでは暗号化されていません。パケットスニファを持っている攻撃者はそれを傍受して、ユーザーの画面に表示されたり、画面から送信されたりしたものをすべて表示することができます。Xトラフィックを暗号化する最も一般的な方法は、通信用のSecure Shell(SSH)トンネルを確立することです。

すべてのシンクライアントと同様に、ネットワーク全体でXを使用する場合、帯域幅の制限により、3Dアニメーションや写真編集など、画面の大部分を低遅延で迅速に更新する必要があるビットマップを多用するアプリケーションの使用が妨げられる可能性があります。比較的小さい非圧縮640x480x24ビット30fpsビデオストリーム(〜211 Mbit / s)でも、単一クライアントの100 Mbit / sネットワークの帯域幅を簡単に超えることができます。対照的に、Xの最新バージョンには、一般にMESAなどの拡張機能があり、ローカルプログラムのグラフィックのローカル表示を最適化して、ネットワークモデルをバイパスし、ビデオカードを直接制御して、フルスクリーンビデオ、レンダリングされた3Dアプリケーションなどを使用できます。そのようなアプリケーション。

クライアント/サーバー分離

Xの設計では、クライアントとサーバーを別々に動作させる必要があり、デバイスの独立性とクライアントとサーバーの分離にはオーバーヘッドが発生します。オーバーヘッドのほとんどは、プロトコル自体ではなく、クライアントとサーバー間のネットワークラウンドトリップ遅延時間(遅延)に起因します。パフォーマンスの問題に対する最善の解決策は、効率的なアプリケーション設計に依存します。[10] Xに対する一般的な批判は、そのネットワーク機能がローカルでのみ使用された場合、過度の複雑さとパフォーマンスの低下をもたらすということです。

最新のX実装では、同じホスト上で効率的に接続するためにUnixドメインソケットを使用しています。さらに、共有メモリ( MIT-SHM拡張機能を介して)を使用して、クライアントとサーバー間の通信を高速化できます。[11]ただし、プログラマーは共有メモリ拡張機能を明示的にアクティブ化して使用する必要があります。また、古い実装との互換性を維持し、非ローカルXサーバーと通信するために、フォールバックパスを提供する必要があります。

競合他社

一部の人々は、Xの代替および代替を書き込もうとしました。歴史的な代替には、SunNeWSおよびNeXTDisplay PostScriptが含まれます。どちらも、Xにはないユーザー定義可能な表示側手順をサポートするPostScriptベースのシステムです。現在の代替案は次のとおりです。

  • macOS(およびそのモバイル版であるiOS )は、 Quartzとして知られるウィンドウシステムを実装しています。Apple Inc.がNeXTを購入し、NeXTSTEPを使用してMac OS Xを構築したとき、DisplayPostScriptをQuartzに置き換えました。Quartzの作者の1人であるMikePaquetteは、AppleがX11に含めたいすべての機能のサポートを追加した場合、X11とあまり似ておらず、他のサーバーとの互換性もないと説明しました。[12]
  • Linuxカーネル上で実行されるAndroidは、 SurfaceFlingerと呼ばれるユーザーインターフェイスを描画するために独自のシステムを使用します3DレンダリングはEGLによって処理されます。
  • Waylandは、Xの将来の代替として、いくつかのX.Org開発者によって開発されています。これは、 DRIを介してGPUハードウェアと直接連携します。Waylandは、X.orgサーバーをクライアントとして実行できます。これはルートレスである必要があります。[13] [より良いソースが必要] Raspberry PiへのWaylandバックエンドのプロプライエタリポートは2013年に完成しました。[14]プロジェクトは2012年にバージョン1.0に到達しました。Androidと同様に、WaylandはEGLベースです。
  • Mirは、 Waylandと同様の目標を持つCanonicalLtd。のプロジェクトでした。[15] Mirは、ARMチップセット(Androidデバイスドライバーとの互換性が目標でした)とx86デスクトップを使用するモバイルデバイスで動作することを目的としていました。Androidと同様に、Mir / UnityNextはEGLベースでした。Xクライアントアプリケーションとの下位互換性は、Xmirを介して達成されました。その後、プロジェクトは代替のディスプレイサーバーではなく、 Waylandコンポジターに移行しました。[16]
  • 他の方法では、ハードウェアを直接操作してXのオーバーヘッドを回避しようとします。そのようなプロジェクトにはDirectFBが含まれます。[ 17]フレームバッファーに信頼性の高いカーネルレベルのインターフェイスを提供することを目的としたダイレクトレンダリングインフラストラクチャ( DRI )は、これらの取り組みを冗長にする可能性があります。)

グラフィックサービスのネットワーク伝送性を介して、Xの「ネットワーク透過性」機能の機能形式を実現するための追加の方法には、次のものがあります。

  • 仮想ネットワークコンピューティング(VNC)、ネットワーク全体に圧縮されたビットマップを送信する非常に低レベルのシステム。Unix実装にはXサーバーが含まれています
  • リモートデスクトッププロトコル(RDP)。これは目的はVNCに似ていますが、Unixライクなシステムに移植される前にMicrosoftWindowsで作成されました。cf NXGotoMyPcなど。
  • Citrix XenApp、MicrosoftWindows用のXのようなプロトコルおよびアプリケーションスタック
  • Tarantellaは、Webブラウザで使用するためのJavaベースのリモートGUIクライアントを提供します

歴史

前任者

Xの前にいくつかのビットマップ表示システムがありました。XeroxからAlto1973)とStar(1981)が登場しました。Apollo Computerから、Display Manager(1981)が登場しました。AppleからLisa(1983)とMacintosh(1984)が登場しました。Unix世界には、Andrew Project(1982)とRob PikeBlitターミナル(1982)がありました。

カーネギーメロン大学は、Xerox Altoで重複するウィンドウを表示するAltoTerminalと呼ばれるリモートアクセスアプリケーションを作成し、リモートホスト(通常はUnixを実行するDEC VAXシステム)にウィンドウ露出イベントの処理と必要に応じたウィンドウコンテンツの更新を任せました。

Xは、 W英語のアルファベットでXの前にある文字)と呼ばれる1983年以前のウィンドウシステムの後継としてその名前に由来しますVオペレーティングシステムで実行されましたWは、端末とグラフィックウィンドウをサポートするネットワークプロトコルを使用し、サーバーはディスプレイリストを維持していました。

起源と初期の開発

差出人:rws @ mit-bold(Robert W. Scheifler)
宛先:window @ athena
件名:ウィンドウシステムX
日付:1984年6月19日0907-EDT(火曜日)

私はここ数週間ウィンドウを書くのに費やしました
VS100用のシステム。かなりの量のコードを盗んだ
Wから、非同期ではなくそれを囲みました
同期インターフェースよりも、それをXと呼びました。全体的に
パフォーマンスはWの約2倍のようです。
コードはこの時点ではかなり堅実に見えますが、
まだ修正されるべきいくつかの欠陥。

私たちLCSはWの使用をやめ、現在は
X上で積極的にアプリケーションを構築しています。
Wは切り替えを真剣に検討する必要があります。これはではありません
究極のウィンドウシステムですが、良いと思います
実験の出発点。現時点で
XへのCLU(およびArgus)インターフェースがあります。交流
インターフェイスは現在作業中です。既存の3つ
アプリケーションは、テキストエディタ(TED)、Argus I / Oです。
インターフェイス、およびプリミティブウィンドウマネージャー。がある
ドキュメントはまだありません。クレイジーな人は誰でも
ボランティア?私は最終的にそれを回避するかもしれません。

デモを見たい人は誰でも立ち寄ることができます
NE43-531、ただし3-1945に電話することもできます
最初。コードが欲しい人は誰でも
テープ。欠陥をハッキングすることに興味がある人は誰でも、感じます
自由に連絡してください。

Xが1984年6月にMITのProjectAthenaコミュニティに紹介された電子メール[18]

Sunマシンで実行されているX11R1

Xの元々のアイデアは、1984年にMITでJim GettysProject Athenaの)とBob ScheiflerMITコンピューターサイエンス研究所の)のコラボレーションとして登場しましたScheiflerは、Argusシステムをデバッグするための使用可能な表示環境を必要としていました。Project Athena (すべての学生にコンピューティングリソースへの簡単なアクセスを提供するためのDEC、MIT、IBMの共同プロジェクト)には、異種のマルチベンダーシステムをリンクするためのプラットフォームに依存しないグラフィックシステムが必要でした。カーネギーメロン大学AndrewProjectで開発中のウィンドウシステムライセンスを利用可能にしなかったし、代替手段は存在しなかった。

プロジェクトは、ローカルアプリケーションを実行し、リモートリソースを呼び出すことができるプロトコルを作成することで、これを解決しました。1983年半ば、WからUnixへの最初の移植は、Vの下でその速度の5分の1で実行されました。1984年5月、ScheiflerはWの同期 プロトコルを非同期プロトコルに置き換え、ディスプレイリストをイミディエートモードグラフィックスに置き換えてXバージョン1を作成しました。Xは、真のハードウェア非依存性とベンダー非依存性を提供する最初のウィンドウシステム環境になりました。

Scheifler、Gettys、Ron Newmanが仕事に取り掛かり、Xは急速に進歩しました。彼らは1985年1月にバージョン6をリリースしました。DECは最初のUltrixワークステーションをリリースする準備をしており、Xが時間内に利用可能になる可能性が高い唯一のウィンドウシステムであると判断しました。DECのエンジニアは、X6をMicroVAX上のDECのQVSSディスプレイに移植しました

1985年の第2四半期に、XはDEC VAXstation -II / GPXで 機能するカラーサポートを取得し、バージョン9になりました。

ブラウン大学のグループがバージョン9をIBMRT PCに移植しましたが、RTでアラインされていないデータの読み取りに問題があったため、互換性のないプロトコルが変更され、1985年後半にバージョン10になりました。1986年までに、外部組織がXを要求し始めました。 1986年1月にリリースされ、1986年2月にX10R3がリリースされました。MITはX6を一部の外部グループに有料でライセンス供与していましたが、現時点では、Xをさらに普及させ、 、その見返りとして、さらに多くのアプリケーションが利用可能になることを期待しています。X10R3は、DECとHewlett-Packardの両方がそれに基づく製品をリリースし、幅広い展開を実現した最初のバージョンになりました。X10をに移植した他のグループApolloSunワークステーション、さらにはIBM PC / ATへ。Xの最初の商用アプリケーション(VAXで実行され、JimFultonとJanHardenberghによって移植されたXサーバーを実行しているPCにリモートで表示されるCognitionInc。の機械式コンピューター支援エンジニアリングシステム)のデモンストレーションが、そのAutofactトレードショーで行われました。時間。X10の最後のバージョンであるX10R4は、1986年12月に登場しました。仮想ネットワークコンピューティング(VNC)で後でデスクトップを共有できるようになるのと同様に、Xサーバーをリアルタイムコラボレーションデバイスとして有効にする試みが行われました。そのような初期の取り組みの1つは、Philip J.GustのSharedXツールでした。

X10は興味深く強力な機能を提供しましたが、Xプロトコルが広く展開される前に、よりハードウェアに依存しない再設計を使用できることが明らかになりましたが、MITだけでは、そのような完全な再設計に利用できるリソースがありません。たまたま、DECのWestern Software Laboratoryは、経験豊富なチームとのプロジェクトの合間に自分自身を見つけました。DECWSLのSmokeyWallaceとJimGettysは、DEC WSLがX11を構築し、X9およびX10と同じ条件で自由に利用できるようにすることを提案しました。このプロセスは1986年5月に開始され、プロトコルは8月に完成しました。ソフトウェアのアルファテストは1987年2月に開始され、ベータテストは5月に開始されました。X11のリリースは、1987年9月15日にようやく行われました。

Scheiflerが主導するX11プロトコルの設計は、USENETニュースグループに橋渡しされた初期のインターネット上のオープンメーリングリストで広く議論されました。Gettysはカリフォルニアに移り、DECのシステムリサーチセンターからWSLでのX11開発作業を主導しました。そこでは、PhilKarltonとSusanAngebrandtがX11サンプルサーバーの設計と実装を主導しました。したがって、Xは、最初の非常に大規模な分散型フリーおよびオープンソースソフトウェアプロジェクトの1つを表しています。

MITXコンソーシアムおよびXコンソーシアム株式会社

1980年代後半までにXは、1989年に「アテナのこれまでで最も重要な単一の成果」と書いています伝えられるところによると、DECは、その開発だけで、MITへの会社の寄付は価値のあるものになったと信じていました。GettysはVAXstation2000の設計チームに加わり、DECがDECwindowsと呼んでいるXが確実に実行されるようにし、同社は1,200人の従業員をUltrixとVMSの両方にポートXに割り当てました。[19] [20] 1987年、X11の成功が明らかになり、MITはXの管理を放棄したいと考えましたが、1987年6月の9つのベンダーとの会議で、ベンダーはMITに中立的なパーティーの必要性を信じていると語りました。 Xが市場で断片化するのを防ぐため。1988年1月、MITXコンソーシアムScheiflerをディレクターとする非営利ベンダーグループとして結成され、商業的および教育的利益を含む中立的な雰囲気の中でXの将来の開発を指揮します。

ジム・フルトンは1988年1月に、キース・パッカードは1988年3月に上級開発者として参加し、ジムはXlibフォント、ウィンドウマネージャー、ユーティリティに焦点を当てています。キースはサーバーを再実装しました。Donna Converse、Chris D. Peterson、Stephen Gildeaがその年の後半に参加し、ツールキットとウィジェットセットに焦点を当て、MIT ProjectAthenaのRalphSwickと緊密に協力しました。MIT Xコンソーシアムは、1988年2月に最初の(リリース2 – X11R2)X11にいくつかの重要な改訂を作成しました。JayHershは1991年1月にスタッフに加わり、PEXに取り組みました。およびX113D機能。その後すぐに、ラルフ・モー(PEXにも携わった)とデイブ・スターンリヒトが続いた。1993年、MIT XコンソーシアムがMITを離れる準備をしていたとき、スタッフにはR. Gary Cutbill、Kaleb Keithley、DavidWigginsが加わりました。[21]

1993年、MIT Xコンソーシアムの後継として、Xコンソーシアム社(非営利法人)が設立されました。1994年5月16日にX11R6をリリースしました。1995年には、MotifツールキットとUnixシステム用の共通デスクトップ環境の開発に着手しました。Xコンソーシアムは1996年の終わりに解散し、最終改訂版X11R6.3と、開発における商業的影響力の増大という遺産を生み出しました。[22] [23]

オープングループ

1997年1月、XコンソーシアムはXのスチュワードシップをThe Open Groupに渡しました。TheOpenGroupは、1996年の初めにOpen SoftwareFoundationX / Openの合併によって形成されたベンダーグループです。

Open Groupは1998年の初めにX11R6.4をリリースしました。物議を醸すのは、Open GroupがXの開発のための資金を確保しようとしたため、X11R6.4は従来のリベラルなライセンス条項から逸脱し、XFree86がXに大きく貢献していないことを具体的に挙げました。 [ 24]新しい条件により、Xはもはやフリーソフトウェアではなくなりました。非商用利用の場合はゼロコストですが、それ以外の場合は料金がかかります。XFree86が分岐する準備ができているように見えた後 [ 25] OpenGroupは1998年9月に従来のライセンスの下でX11R6.4を再ライセンスしました。 [26] OpenGroupの最後のリリースはX11R6.4パッチ3として提供されました。

X.OrgおよびXFree86

XFree86は、1992年にX11R5に含まれるIBM PC互換機用のX386サーバーから始まり、ThomasRoellとMarkW。Snitilyによって作成され、Snitily Graphics Consulting Services(SGCS)によってMITXコンソーシアムに寄付されました。XFree86は、Xの1つのポートから、主要で最も人気のある実装、およびXの開発の事実上の標準へと時間とともに進化しました。[27]

1999年5月、オープングループはX.Orgを設立しました。X.Orgは、バージョンX11R6.5.1以降のリリースを監督しました。この時点でのX開発は瀕死状態になりました。[28] Xコンソーシアムが解散して以来のほとんどの技術革新は、XFree86プロジェクトで行われた。[29] 1999年、XFree86チームは名誉(無料)メンバーとしてX.Orgに加わり、[30] LinuxでXFree86を使用することに関心のあるさまざまなハードウェア企業[31] [検証に失敗]に奨励されました。 Xの最も人気のあるバージョン。

2003年までに、Linux(したがってXのインストールベース)の人気が急上昇しましたが、X.Orgは非アクティブのままであり[32]、アクティブな開発は主にXFree86内で行われました。しかし、XFree86内でかなりの異議が唱えられました。XFree86プロジェクトは、大聖堂のような開発モデルの認識に苦しんでいました。開発者はCVSコミットアクセスを取得できず[33] [34]、ベンダーは広範なパッチセットを維持する必要がありました。[35] 2003年3月、XFree86組織は、元のMITXコンソーシアムの終了後にXFree86に参加していたKeithPackardをかなりの気分で追放した。[36] [37] [38]

X.OrgとXFree86は、Xの開発を適切に育成するのに適した再編成について議論し始めました。[39] [40] [41] Jim Gettysは、少なくとも2000年以来、オープンな開発モデルを強く求めていました。[42] Gettys、Packard、他の何人かは、オープン開発によるXの効果的なガバナンスの要件について詳細に議論し始めました。

最後に、X11R6.4のライセンス紛争の反響で、XFree86は2004年2月にバージョン4.4をより制限的なライセンスの下でリリースしましたが、Xに依存する多くのプロジェクトは受け入れられないと判断しました。[43]ライセンスに追加された条項は、元のBSDライセンスの広告条項に基づいていました。これは、Free SoftwareFoundationDebianによってGNUGeneral PublicLicenseと互換性がないと見なされていました[44]他のグループは、それを元のXの精神に反していると見なしました。たとえば、OpenBSDのTheo de Raadtは、ライセンスの懸念を理由にXFree86をフォークすると脅迫しました。[45]ライセンスの問題は、変更を加えることの難しさと相まって、多くの人にフォークの時期が熟していると感じさせました。[46]

X.Org Foundation

2004年の初めに、X.Orgとfreedesktop.orgのさまざまな人々がX.Org Foundationを設立し、OpenGroupがx.org ドメイン名の管理を許可しましたこれは、Xのガバナンスに根本的な変化をもたらしました。1988年以降のXのスチュワード(以前のX.Orgを含む)はベンダー組織でしたが、財団はソフトウェア開発者によって主導され、バザールモデルに基づくコミュニティ開発を使用しました。 [引用必要な]外部の関与に依存しています。メンバーシップは個人に開放され、企業メンバーシップはスポンサーシップの形をとっています。Hewlett-Packardなどのいくつかの主要企業は、現在X.OrgFoundationをサポートしています。

財団はX開発を監督する役割を果たします。技術的な決定は、コミュニティメンバー間で大まかなコンセンサスを達成することにより、そのメリットに基づいて行われます。技術的な決定は取締役会によって行われません。この意味で、技術的に非介入的なGNOMEFoundationをモデルにしています財団は開発者を雇用していません。Foundationは、X11R6.6の変更をマージしたXFree86 4.4RC2に基づいて、2004年4月にX.OrgサーバーであるX11R6.7をリリースしました。GettysとPackardは、古いライセンスの下でXFree86の最後のバージョンを採用し、オープンな開発モデルを強調し、GPLの互換性を維持することで、古いXFree86開発者の多くを参加させました。[44]

X11は1990年代にOpenGLサポートなどの拡張機能を受け取りましたが、そのアーキテクチャは10年間基本的に変更されていませんでした。しかし、2000年代の初めに、「欠陥のある」フォントアーキテクチャ、「常に拡張することを目的としていた2Dグラフィックシステム」など、長年にわたって表面化した多くの問題を解決するためにオーバーホールされました。 /または置換」、および遅延の問題。[47] X11R6.8は2004年9月にリリースされました。半透明のウィンドウやその他の高度な視覚効果、画面拡大鏡やサムネイル作成機能の予備サポート、SunのProject LookingGlassなどの3D没入型ディスプレイシステムと統合する機能など、重要な新機能が追加されました。そしてそのクロケットプロジェクトコンポジットウィンドウマネージャーと呼ばれる外部アプリケーションは、外観のポリシーを提供します。

2005年12月21日、[48] X.Orgは、レガシーユーザー向けのモノリシックソースツリーであるX11R6.9と、同じソースコードが独立したモジュールに分離されたX11R7.0をリリースしました。[49] Foundationは、7.0から約4か月後の2006年5月22日にX11R7.1をリリースし、機能が大幅に改善されました。[50]

XFree86の開発はさらに数年間続き、2008年12月15日に4.8.0がリリースされました。[51]

命名法

システムの適切な名前は、マニュアルページにXとしてリストされています。Xウィンドウシステム; Xバージョン11; X Window System、バージョン11; またはX11。[52]

「X-Windows」という用語(その後リリースされる「MicrosoftWindows」のように)は公式には承認されていません。XコンソーシアムのリリースマネージャーであるMatt Landauは、1993年に「「XWindows」や「X」のようなものはありません。 Window '、貿易雑巾によるフォームの繰り返しの誤用にもかかわらず」[53]  – Xの歴史の初期から一般的に非公式に使用されており[54]、挑発的な効果のために意図的に使用されてきました。Unix-Hatersハンドブック[4]

重要な用語

X Window Systemは、一般的な使用法、特に「ディスプレイ」と「画面」と比較すると、多くの用語の微妙な使用法があります。これらのサブセットは、便宜上ここに示されています。

デバイス
コンピュータグラフィックスカードやコンピュータマザーボードの統合グラフィックスチップセットなどのグラフィックスデバイス。
モニター
CRTやフラットスクリーンコンピュータディスプレイなどの物理デバイス。
画面
VNCのようにソフトウェアのみを介してシステムメモリに、またはグラフィックスデバイス内のいずれかでグラフィックスをレンダリングできる領域。グラフィックスデバイスの一部は、同時にまたは交換可能に、複数の画面に同時にレンダリングできます。交換可能な画面は、多くの場合、概念的に相互に左右に設定され、マウスポインターがモニターの端に到達すると、画面が次々と反転します。
仮想画面
この用語には、次の2つの異なる意味が関連付けられています。
  • モニターが現在表示しているよりも高い解像度で実行されている画面の周りでモニターをパンできるようにする手法。
  • 画面よりも大きな座標系でウィンドウ位置情報を維持し、ユーザーに応じてウィンドウを移動するだけでパンできるようにすることで、ウィンドウマネージャーによってシミュレートされた効果。
画面
多くの場合、複数のモニターを含む画面のコレクション。通常、マウスがポインターを画面内の任意の位置に移動できるように構成されています。Linuxベースのワークステーションは通常、複数のディスプレイを持つことができ、その中でユーザーはcontrol-alt- function-keyなどの特別なキーボードの組み合わせで切り替えることができ、同時にすべてのモニターを1つのディスプレイの画面から別のディスプレイの画面に切り替えることができます。

「ディスプレイ」という用語は、より専門用語である「 Zaphodディスプレイ」と混同しないでください後者はまれな構成であり、1台のコンピューターの複数のユーザーが、別々のコンピューターを使用しているかのように、ディスプレイ、マウス、およびキーボードの独立したセットをそれぞれ持つことができますが、シートあたりのコストは低くなります。

リリース履歴

バージョン 発売日 最も重要な変更
古いバージョン、メンテナンスされていません:X1 1984年6月 「X」という名前の最初の使用。製品とWを区別する基本的な変更
古いバージョン、メンテナンスされていません:X6 1985年1月 少数の外部企業にライセンス供与された最初のバージョン。
古いバージョン、メンテナンスされていません:X9 1985年9月 色。MITライセンスの下での最初のリリース
古いバージョン、メンテナンスされていません:X10 1985年11月 IBM RT PC、AT(DOSを実行)など。
古いバージョン、メンテナンスされていません:X10R2 1986年1月
古いバージョン、メンテナンスされていません:X10R3 1986年2月 最初の自由に再配布可能なXリリース。以前のリリースでは、ログインをサポートするためのinit / gettyへのコード変更をカバーするためにBSDソースライセンスが必要でした。uwmは標準のウィンドウマネージャーを作成しました。
古いバージョン、メンテナンスされていません:X10R4 1986年12月 X10の最後のバージョン。
古いバージョン、メンテナンスされていません:X11 1987年9月15日 現在のプロトコルの最初のリリース。
古いバージョン、メンテナンスされていません:X11R2 1988年2月 Xコンソーシアムの最初のリリース。[55]
古いバージョン、メンテナンスされていません:X11R3 1988年10月25日 XDM
古いバージョン、メンテナンスされていません:X11R4 1989年12月22日 XDMCPtwm(最初からトムのウィンドウマネージャーとして知られていました)は、標準のウィンドウマネージャー、アプリケーションの改善、形状拡張、新しいフォントとして導入されました。
古いバージョン、メンテナンスされていません:X11R5 1991年9月5日 X386 1.2PEX、Xcms(カラーマネジメント)、フォントサーバーXビデオ拡張
古いバージョン、メンテナンスされていません:X11R6 1994年5月16日 ICCCM v2.0; クライアント間交換; Xセッション管理; X同期拡張; X画像拡張; XTEST拡張; X入力; Xビッグリクエスト; XC-MISC; XFree86の変更。
古いバージョン、メンテナンスされていません:X11R6.1 1996年3月14日 Xダブルバッファ拡張。Xキーボード拡張; Xレコード拡張。
古いバージョン、メンテナンスされていません:X11R6.2
X11R6.3
1996年12月23日 Web機能、LBXXコンソーシアムの最後のリリース。X11R6.2は、X11R6.3(Broadway)のサブセットのタグであり、R6.1の新機能は、XPrintと、垂直方向の書き込みおよびユーザー定義の文字サポートのXlib実装のみです。[56]
古いバージョン、メンテナンスされていません:X11R6.4 1998年3月31日 Xinerama[57]
古いバージョン、メンテナンスされていません:X11R6.5 2000 X.orgの内部リリース。公開されていません。
古いバージョン、メンテナンスされていません:X11R6.5.1 2000年8月20日
古いバージョン、メンテナンスされていません:X11R6.6 2001年4月4日 バグ修正、XFree86の変更。
古いバージョン、メンテナンスされていません:X11R6.7.0 2004年4月6日 XFree864.4rc2を組み込んだ最初のX.OrgFoundationリリース。完全なエンドユーザー配布。XIEPEX、およびlibxml2の削除。[58]
古いバージョン、メンテナンスされていません:X11R6.8.0 2004年9月8日 ウィンドウの半透明性、XDamage、Distributed Multihead X、XFixes、Composite、XEvIE
古いバージョン、メンテナンスされていません:X11R6.8.1 2004年9月17日 libxpmのセキュリティ修正
古いバージョン、メンテナンスされていません:X11R6.8.2 2005年2月10日 バグ修正、ドライバーアップデート。
古いバージョン、メンテナンスされていません:X11R6.9
X11R7.0
2005年12月21日 XServer 1.0.1EXA、主要なソースコードのリファクタリング[59]同じソースコードベースから、モジュラーオートツールバージョンは7.0になり、モノリシックイマケバージョンは6.9でフリーズしました。
古いバージョン、メンテナンスされていません:X11R7.1 2006年5月22日 XServer 1.1.0、EXAの機能強化、KDrive統合、AIGLX、OSおよびプラットフォームサポートの機能強化。[60]
古いバージョン、メンテナンスされていません:X11R7.2 2007年2月15日 XServer 1.2.0、LBXと組み込みのキーボードドライバーの削除、X-ACE、XCB、自動構成の改善、クリーンアップ。[61]
古いバージョン、メンテナンスされていません:X11R7.3 2007年9月6日 XServer 1.4.0、入力ホットプラグ、出力ホットプラグ(RandR 1.2)、DTraceプローブ、PCIドメインサポート。[62]
古いバージョン、メンテナンスされていません:X11R7.4 2008年9月23日 XServer 1.5.1、XACE、PCIリワーク、EXAスピードアップ、_X_EXPORT、GLX 1.4、より高速な起動とシャットダウン。[63]
古いバージョン、メンテナンスされていません:X11R7.5 2009年10月26日[64] XServer 1.7.1、Xi 2、XGE、E- EDIDサポート、RandR 1.3、MPX、予測可能なポインターアクセラレーション、DRI2メモリマネージャー、SELinuxセキュリティモジュール、廃止されたライブラリと拡張機能のさらなる削除。[65]
古いバージョン、メンテナンスされていません:X11R7.6 2010年12月20日[66] X Server 1.9.3、XCB要件。[67] [68]
現在の安定バージョン: X11R7.7 2012年6月6日 Xサーバー1.12.2; 同期拡張3.1:Fenceオブジェクトのサポートを追加します。Xi2.2マルチタッチのサポート。XFixes 5.0:ポインターバリア。[69] [70]
伝説:
古いバージョン
古いバージョン、まだ維持されています
最新バージョン
最新のプレビューバージョン
将来のリリース

将来のバージョンの見通しについて、X.orgWebサイトは次のように述べています。[71]

X.Orgは、X WindowSystemソフトウェアコンポーネントの開発とリリースを続けています。

これらは、X Window Systemの全体的な「katamari」リリーススケジュールを待たずに、各コンポーネントの準備ができたときに個別にリリースされます。ダウンロードについては、個々のX.Orgリリースディレクトリを参照してください。含まれる変更の詳細については、xorg-announceアーカイブまたはgitリポジトリを参照してください。

X11R7.8ロールアップカタマリリリースのリリース計画は提案されていません。

も参照してください

メモ

  1. ^ http://www.x.org/wiki/Releases/7.7/
  2. ^ https://www.x.org/releases/current/
  3. ^ ジェニファーG.シュタイナー; Daniel E. Geer Jr.(1988年7月21日)。「アテナ環境におけるネットワークサービス」。1988年冬のUsenix会議の議事録CiteSeerX10.1.1.31.8727 _
  4. ^ a b "X-WindowsDisaster"Art.Net 2009年11月10日取得
  5. ^ Re:Xは1996年11月15日痛い
  6. ^ 「Orca」wiki.gnome.org2011年11月24日2012年11月7日取得
  7. ^ 「ATK-アクセシビリティツールキット」developer.gnome.org 2012年11月7日取得
  8. ^ 「KDEAccessibility」KDEeV 2013年1月6日取得
  9. ^ 2010年6月26日にWaybackMachine 2005でアーカイブされたSNAPコンピューティングとXウィンドウシステム (セクション4.6、 xmoveプログラム)
  10. ^ 2001年1月24日のLBX事後分析
  11. ^ MIT-SHM拡張機能のXFree86ドキュメント2009年5月14日
  12. ^ AppleがウィンドウシステムにXを使用しなかった理由2007年8月19日
  13. ^ Darxus(2010年11月27日)。「」nouveauの「ホストされた」パッチ– X underwayland」。Intelビデオカードを使用している場合は、ルートレスかどうかに関係なく、X.orgをウェイランドのクライアントとして実行できます
  14. ^ Diavatis、Alex(2013年6月11日)。「ラズベリーのウェイランド¦GNOMEのウェイランド」ノームの世界2013年6月15日にオリジナルからアーカイブされました。{{cite web}}:CS1 maint:不適切なURL(リンク
  15. ^ 「MirSpec– UbuntuWiki」Wiki.ubuntu.com。2013年6月17日にオリジナルからアーカイブされました2013年3月6日取得
  16. ^ 「正規のミールデータセット」(PDF)2018年12月20日。
  17. ^ フレームバッファコンソールのDRI 2009年12月15日
  18. ^ 「Xのデビュー」お守り。1984年6月19日2012年11月7日取得
  19. ^ ガーフィンケル、シムソンL.(1988年11月〜12月)。「アテナの第二の風」(PDF)テクノロジーレビュー2016年1月25日取得
  20. ^ ガーフィンケル、シムソンL.(1989年5月〜6月)。「アカデミック市場全体の波紋」(PDF)テクノロジーレビューpp。9–13 2016年1月25日取得
  21. ^ Robert W.ScheiflerおよびJamesGettys:Xウィンドウシステム:コアおよび拡張プロトコル:Xバージョン11、リリース6および6.1、Digital Press 1996、 ISBN 1-55558-148-X 
  22. ^ 資金調達ボランティアの自由ソフトウェアプロジェクト2005年6月10日
  23. ^ オープンソース2000について学んだ教訓
  24. ^ Xステートメント1998年4月2日
  25. ^ 「XFree86(TM):プレスリリース」1998年12月6日。1998年12月6日のオリジナルからアーカイブ2017年2月7日取得
  26. ^ ブラウン、クリストファー。「X11R6.4サンプル実装の変更と懸念」クリストファーブラウンのウェブページ2008年6月1日にオリジナルからアーカイブされました。
  27. ^ ゲッティーズ、ジム(2004年2月2日)。「Re:アナウンス:ベースXFree86(TM)ライセンスの変更」[email protected](メーリングリスト)。2005年9月7日にオリジナルからアーカイブされました2021年6月26日取得
  28. ^ Swales、Steve(2002年2月4日)。「Q&A:Xファクター」Computerworld(インタビュー)。ミッチェル、ロバートによるインタビュー。IDGコミュニケーションズ。2021年6月26日にオリジナルからアーカイブされました。Xのスチュワードは、約5〜6年前にほとんど何もしませんでした。それは実際にはテクノロジーと歩調を合わせていませんでした。
  29. ^ パッカード、キース(1999)。「Xサーバーアーキテクチャの進化」2021年6月26日にオリジナルからアーカイブされました。
  30. ^ Wexelblat、David(2003年3月23日)。「X開発のオープンガバナンスの呼びかけ」[email protected](メーリングリスト)。2005年2月12日にオリジナルからアーカイブされました2021年6月26日取得
  31. ^ 「XFree86は名誉会員としてX.Orgに参加します」スラッシュドット1999年12月1日。2021年6月26日のオリジナルからアーカイブ。
  32. ^ ハリス、マイク(2003年4月13日)。「別の電話会議の部分的に編集されたトランスクリプト」[email protected](メーリングリスト)。2005年2月12日にオリジナルからアーカイブされました2021年6月26日取得
  33. ^ ノルデン、ラルフ(2003年3月20日)。「キースパッカード号」[email protected](メーリングリスト)。2005年2月12日にオリジナルからアーカイブされました2021年6月26日取得
  34. ^ ハント、ハロルド(2003年10月27日)。「Cygwin / XFree86-XFree86.orgに関連付けられなくなりました」[email protected](メーリングリスト)。2021年6月26日にオリジナルからアーカイブされました2021年6月26日取得
  35. ^ ハリス、マイク(2003年1月9日)。「2003年1月9日」2009年2月14日にオリジナルからアーカイブされました。
  36. ^ Dawes、David ; カットショー、ロビン; エヴァンス、マーク; マーフィー、リッチ; 墓、ジョン; Wexelblat、David(2003年3月20日)。「Xの未来についての公開討論への招待」[email protected](メーリングリスト)。2005年2月12日にオリジナルからアーカイブされました2021年6月26日取得
  37. ^ パッカード、キース(2003年3月21日)。「X開発のオープンガバナンスの呼びかけ」[email protected](メーリングリスト)。2005年2月12日にオリジナルからアーカイブされました2021年6月26日取得
  38. ^ パッカード、キース(2003年4月3日)。「2003年3月27日に開催された電話会議からのメモ」[email protected](メーリングリスト)。2005年2月12日にオリジナルからアーカイブされました2021年6月26日取得
  39. ^ Swales、Steve(2003年3月24日)。「X開発のオープンガバナンスの呼びかけ」[email protected](メーリングリスト)。2004年12月22日にオリジナルからアーカイブされました2021年6月26日取得
  40. ^ Wexelblat、David(2003年3月23日)。「X開発のオープンガバナンスの呼びかけ」[email protected](メーリングリスト)。2005年1月6日にオリジナルからアーカイブされました2021年6月26日取得
  41. ^ ペニントン、ハボック(2003年4月14日)。「問題について話し合う」[email protected](メーリングリスト)。2004年12月27日にオリジナルからアーカイブされました2021年6月26日取得
  42. ^ ゲッティーズ、ジム(2000年6月22日)。オープンソースについて学んだ教訓USENIX年次技術会議。2021年6月27日にオリジナルからアーカイブされました。
  43. ^ 「XFree864.4:拒否するディストリビューターのリストが成長する」スラッシュドット2004年2月18日。2021年6月27日のオリジナルからアーカイブ。
  44. ^ a b Wheeler、David A.(2014年2月16日)[2002年5月6日]。「オープンソースソフトウェアをGPL互換にする。またはそれ以外の場合」2021年1月26日にオリジナルからアーカイブされました。
  45. ^ de Raadt、Theo(2004年2月16日)。「XFree86ライセンス」openbsd-misc(メーリングリスト)。2019年1月18日にオリジナルからアーカイブされました2009年12月8日取得
  46. ^ ボイキン、オスカー(2004年2月25日)。「Xはスポットをマークします:過去1年間のX11開発を振り返って」OSNews2021年6月27日にオリジナルからアーカイブされました。
  47. ^ ゲティス、ジェームズ; パッカード、キース(2004)。Xウィンドウシステムの(再)アーキテクチャ(PDF)Proc。Linuxシンポジウム。1.1。
  48. ^ X11R6.9およびX11R7.0は2005年12月21日
  49. ^ モジュール化の提案2005年3月31日
  50. ^ X11R7.1の提案された変更2006年4月21日
  51. ^ 「現在のXFree86リリース:4.8.0」xfree86.org
  52. ^ X –ポータブルでネットワーク透過的なウィンドウシステム2005年2月
  53. ^ ランダウ、マット(1993年4月23日)。「Re:非同期Xウィンドウ?」ニュースグループ:  comp.windows.xUsenet:1rccdq [email protected] 2013年3月6日取得 
  54. ^ 例: 「XWindows FAQ」、Usenetニュースグループcomp.windows.xのFAQ。
  55. ^ Xウィンドウシステム:歴史とアーキテクチャ1999年9月1日
  56. ^ XFree86およびX11R6.3 1999年12月
  57. ^ オープングループがインターネット対応のXウィンドウシステムX11R6.4を発表1998年3月31日
  58. ^ X.OrgFoundationがXWindow SystemX11R6.7をリリース2004年4月7日
  59. ^ R6.8以降の変更点2005年10月21日
  60. ^ X11R7.1のリリースノート2006年5月22日
  61. ^ X.Org Foundationは2007年2月15日に7.2.0(別名X11R7.2)をリリースしました
  62. ^ Xサーバーバージョン1.4のリリース計画2007年8月25日取得。
  63. ^ 「FoundationReleasesX7.4」X.org 2009年11月10日取得
  64. ^ 「7.5リリースの発表」X.org 2009年11月10日取得
  65. ^ 「Wiki–7.5リリースプラン」X.org 2009年11月10日取得
  66. ^ 「7.6リリースの発表」X.org。2010年12月20日2010年12月21日取得
  67. ^ 「xcbを含む7.6カタマリに向けて考える」Lists.x.org 2009年11月10日取得
  68. ^ 「Wiki–7.6リリース計画」X.org 2010年12月21日取得
  69. ^ "[ANNOUNCE] X11R7.7"Lists.x.org 2012年6月7日取得
  70. ^ 「リリース/7.7」X.org 2012年6月7日取得
  71. ^ 「リリース/7.8」X.org 2014年5月6日取得

参考文献

外部リンク