|
(Liz の講演メモ。 Dirk Hohndel 氏の XFree86 の講演)
運悪く私はこの講演の最初の20分を逃してしまいました。これは致命的でした。なぜなら出席率が高過ぎてホールから人々が溢れ出て立ち見をしていたからです。
私は部屋に入ることはできるということを実証してはみましたが、スライドは見えないし講演者の声も聞こえないしといった状況だったので、周りの人に話しかけまくったり、ホールの後ろのドアの周りを犬のようにフンフンかぎ回ったりして情報を収集して、ステージのカーテンの後ろに座ったりしながら、スライドは見えないにしても、やっとのこと Dirk Hohndel 氏の話を聞けたのでした。
私のこの講演の記録は、そういう訳で最初の20分間とスライドが見えなかったことにより少し偏っているかも知れません。
講演のテープを買おうかと思ったのですが、私が確認した時にはまだ売られていませんでしたし、あったとしてもホテルのレンタルカーまで戻らないと再生できないので、、、
聞いたところによると、次のリリースの XFree86 4.0 の主な目的は新しい機能の追加ではないそうです。(将来的には新しい機能を追加するかもしれませんが。)主な目的は、次の2つの目的のため XFree86 を抜本的に設計し直すことだそうです。
- (ビデオカード)ベンダーが彼ら自身の手によるオープンソースドライバをWindows 用のドライバと同時にリリースすることを促進するような機能をサポートすること。
- コード(現在150万行)に取り掛かるために必要な大量のスピンアップサイクル※を減らし、XFree86 の開発をもっと楽しいものにすること。
※訳注:実際的な仕事ができるようになるまでの準備期間。
2つめについては私は初めて聞きました。彼らは開発者を見つけるのに苦労しているのです。巷には彼らのコード開発はオープンでないという誤解した印象がありますが、これは間違いです。もしあなたが XFree86 の開発に興味があれば、彼らに連絡を取って自分が何をしたいのかを告げる必要がありますが、彼らはあなたを喜んでチームに迎え入れるでしょう。
彼らのリストには 470人の開発者がいますが、コードの難解さと貢献できるくらい熟知するまでにはかなりの(時間的)投資が必要になるため、実際に新しいコードを提供している開発者は 10%もいないのです。
XFree86 の新しい設計によってそのような投資が減り、おそらく熱意を再び焚き付けることになって、新しい開発者を呼び入れることになるでしょう。
ベンダー自身の手による(ハードウェアの)ドライバ開発を促進させるための機能については、その動機はかなり容易に理解できます。新しいハードウェアはあまりに迅速なスケジュールに基づいてリリースされるため、ベンダーが新しいカードのためのドライバを作成するよう留まる動機付けが薄いのです。
ボードが出てからドライバが用意されるまでは3ヶ月かかります。この時点で既に新しいハードウェアがリリースされていて、あなたがその前のカードに対して書いたドライバはありがたく思われることはあるでしょうが、実際には人々のドライバに対する欲求を減らすのには役に立ちません。なぜなら、人々は既により新しいカードのドライバを欲しがっているからです。これを改善する唯一の方法は、ベンダ自身にドライバを作成してもらうことです。
ベンダー自身によるドライバの作成を促進するために、公表済 API のコンパイルに続いて小さなモジュールとしてコンパイルすることができ、実際の X サーバを再構築しなくても、それらをXサーバに統合することができるようになります。もちろん、このことはベンダも開発者も支援することになります。何百万行ものコードがコンパイルされるのを待たなくていいのですから、、、
彼は他の機能についても言及しましたし、(今すぐには見に行けませんが)おそらく彼らのウェブサイトにはもっと多くの情報が載っているでしょう。パフォーマンスモードの切り替えをエンドユーザが簡単にできる機能を提供する予定です。また、(ビデオカードが全く同一のものでなくても良い)マルチヘッドディスプレイのサポートの予定もあります。さらに、アプリケーションの要求に応じて X サーバを通してハードウェアのもっと多くの機能を利用することができるようになる予定です。
以下、質疑応答。
[注:ここから最後までは、講演をそのまま書き取ったかのように書かれてい
ますが、言葉通りでは「ありません。」私はそんなに速くタイプできません!
話者の言ったことから少々偏向していることもあるでしょう。]
聴衆の方からの質問がありますか?
- Q.
- 将来的な計画は?
- A.
- 現在、4.0 を出したいと思っています。8月の LinuxWorld で XFree86 4.0 のチュートリアルをしたいと思っています。
- Q.
- インテル以外のハードウェアのためのドライバについては?
- A.
- すでにサポートされているのは、Alpha と PowerPPC と Intel です。現在 Sparc に取り掛かっています。ハードウェアさえ入手できればドライバをポートする方針です。人気のあるハードはサポートされると思います。
- Q.
- これから出るカードについて、もしベンダがドライバをバイナリのみで提供するとしたら、インテル以外のハードウェアもサポートする可能性があるのでしょうか?
- A.
- 私達は、広くソフトウェアが用意されていればハードウェアも売れるのだということをベンダに理解させて、彼らが情報を公開しドライバをオープンソースにするよう説得しています。
- Q.
- カラーマネジメントの発展は?
- A.
- 私が知る限り答えは「ノー」です。しかし、まったく無いというわけではありません。ただ現在は 4.0 をリリースすることに焦点を当ています。
- Q.
- ドライバ開発に対するベンダーの協力を考えたとき、あなたはどのビデオカード会社を推薦しますか? 特にドライバを長期に渡りサポートすることに関して。
- A.
- その質問に答えるのは私には困難です。なぜなら、一つのベンダを挙げてしまうと、他の潜在的なベンダとの関係に影響するかもしれませんので。もしベンダがチップセットを変えたら、私達に情報を公開してくれないかも知れません。あなた自身の必要に応じて今現在動作するカードをご覧になってみて、その中から20個くらい買って下さい :-)
- Q.
- オープンソース開発モデルへの移行について、お考えになっていますか?
- A.
- 私達の開発モデルはオープンです。あなたがどういう方なのか、そして何がしたいのかを教えて下されば、開発に参加していただけます。ベンダは大規模な国際的な開発チームについての理解はありますが、窓口となる所は一つだけにしてしまいたいと思っているのです。
ベンダーからサポートの質問を受け付けることは、私達にとって非常に時間的重荷になっています。すべてを自分達でやっているので。開発を自分達の管理下にあるものだけに制限することによって、自分達が作ったものではない、あるいは変更の施されたバイナリについての質問や連絡を減らしたいと思っているのです。
- Q.
- ラップトップについては?
- A.
- ラップトップについては非常に難しいです。IBM 等のベンダにハードウェアへの早期のアクセスを頼んではいます。彼らから $25 のボードを寄付してもらうのは簡単ですが、$4,000 のラップトップを 12 台寄付してもらうのは、ずっと難しいことです。東芝は明らかに難しい状況です。「メッセージ」を受け取っていただけないので。
- Q.
- GGI プロジェクトとは活発に意見交換などしますか?
- A.
- いいえ。私は、グラフィックドライバはカーネルに属さないと思います。おそらく、特別な目的に対しては、とてもとても小さなつながりはあるでしょうが。
- Q.
- デジタルフラットパネルについては?
- A.
- デジタルフラットパネルについては、やや難しいです。取り扱うのに特別なチップセットがあり、それらをプログラムする方法についての標準がないからです。仕様を公開するようベンダに頼んでいますが、いつ公開が実現されるかはまだわかりません。
- Q.
- 回転するディスプレイは?
- A.
- 一見するより実際は難しいです。画像を回転するのはとても簡単なのですが、フォントを回転させるのは実際非常に困難なのです。XV エクステンションのサポートはできる予定です。これらをまとめてくれる開発者を探しています。(なにげに開発者を募集しています。)
- Q.
- DVD プレーヤーは?
- A.
- まだです。
- Q.
- 入力装置は?
- A.
- どんな入力装置のサポートも追加することは可能です。当面はマウスをサポートします。
- Q.
- マルチヘッドディスプレイについては先ほど述べられていましたが、マルチキーボードについてはどうですか?
- A.
- マルチキーボードのサポートは無いと思います。もしあなたがキーボードごとに違うサーバを走らせたとして、それぞれが正しいカード、正しいキーボード、正しいマウスを捉えたとして、、、なぜそんなことを?
- Q.
- OLE は? グラフィックオブジェクトのコピーやペーストは? 今のようにアプリケーションが独自に実装しても、アプリケーション間のやりとりはできませんよね。
- A.
- それは、X がサポートするべきではありません。デスクトップ※の問題ですから。
※Gnomeや KDEのこと。
- Q.
- ユーザにハードウェア機能を公開するということでしたが、ハードウェアアクセラレーションについてはどうですか?アルファ・トランスペアレンシーは含まれていますか?
- A.
- いいえ。それは 3D の機能ですから。X サーバは 2D のサーバです。
- Q.
- リリースまでたった4ヶ月? 一部不完全でも、ということですか?それともユーモアか何かですか?
- A.
- それは、本当のリリースの締切です。今までも私達はスケジュールを立てて、そのスケジュールを実際に守ってきました。私は間に合うと思っています(もちろん私は去年は楽観視し過ぎていましたが、それ以来いろいろと学びました。)
- Q.
- SGI の Visual ワークステーションへのサポートは?
- A.
- 1台送っていただけますか? もしそうしていただければ、サポートしましょう。
- Q.
- マルチヘッドディスプレイをサポートするということですが、すべてのディスプレイが同じ解像度でないといけませんか?
- A.
- いいえ、マルチヘッドディスプレイは同じ解像度である必要はありません。しかし、低い解像度のスクリーンにはユーザに見えない部分が生じるので、その部分ではドラッグ&ドロップができません。実際には役に立ちませんね。
- Q.
- 設定ファイルの設定間違いによる黒い画面から逃れる方法は?
- A.
- サーバが「ハング」したらリブートしなければなりません。グラフィックカードがサルのうんこになってしまったら、リセットするのはめちゃくちゃ難しいです :-)
- Q.
- 現在のプロセスを kill するためのキーバインドを実装するために、カーネルにフックがありますか?
- A.
- それは意味が無いです。グラフィックカードが未定義の状態にあると、それらを修正するのは困難です。リセットするための文字列があるカードもありますが、大抵の文字列はできることは何もありません。私はこの理由のためだけに、自分のファイルはすべて NFS 経由で提供されるようなシステムを使っています。こうしておくと、マシンの電源を切らなくてはならなくなったとしてもファイルは生き残るからです。(そうしないと)ディスクに情報が書き込まれるよりも、マシンがあまりにも早くハングしてしまうからです。('fsck'さん、こんにちは。:-)
- 誰かが存在しない機能について質問しました。Dirk の回答は「ノー」でしたが、簡単に追加できるということです。「ご自分でやってみて下さい。もし Windows98 に新しい機能を希望するのなら、祈ってみて下さい。」ということだそうです。
- Q.
- 速く走らせるために、サーバにコードをリンクすることについてどう思われますか?
- A.
- それはすぐには答えられません。動くでしょうが、セキュリティの問題があるので。原理的には可能です。しかし、それによって得られるパフォーマンスの向上はそんなには無いでしょう。パフォーマンスを向上させたいのなら、他の場所をチューニングしてみた方が良いと思います(Dirk は例をいくつか挙げました。)。C の関数へのアクセスを制限する方が良いかもしれません。
- Q.
- 16 bit カラーと 24 bit カラーを同じスクリーン、同じディスプレイで混在させて、16 bit をパフォーマンスのために、24 bit を色数のために使うということについてはどう思われますか?
- A.
- 理論上は可能ですが、それをサポートするハードウェアについては知りません。つまり、ソフトウェアで実装しなければならないということです。ハードウェアの方が速く、ソフトウェアでは遅くなるでしょうから、やる価値はないでしょう。
- Q.
- X サーバを立ち上げ直さないで色の深さ(色数)を変更することはできますか?
- A.
- いいえ。オンザフライでそれをリスタートする方法があっても良いのですが、私は好きじゃありません。もっと良い方法がありますから。例えば、デスクトップ経由で状態を保存する、など。この方が良い方法だと言えるでしょう。
- Q.
- X ウィンドウシステムと X プロトコルの将来について、どう思われますか?(注:質問者は標準化関係の人だったと思います。)
- A.
- X の開発は資金的に困難な状況にあります。X を維持するのに興味を示している大企業はいくつかありますが、彼らは「ただ乗り」が出てくることに気を揉んでいます。つまり、多くの企業がそれにより利益を得るのに資金的には自社しか負担しないということに対してです。私は楽観的で X の開発は続くと思います。もしダメになったら、私達が引き継ぐつもりです。
|