(Translated by https://www.hiragana.jp/)
NeWS - Wikipedia コンテンツにスキップ

NeWS

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』

NeWSNetwork extensible Window System)は、1980年代ねんだいちゅうごろにサン・マイクロシステムズ開発かいはつしたウィンドウシステム[1]ふるくは "SunDew" とばれ[2]のちJava設計せっけいしたジェームズ・ゴスリン主任しゅにんアーキテクトとして設計せっけいたった。NeWS インタプリタは PostScriptもとづいている(Display PostScriptているが、2つのプロジェクトに関係かんけいはない)。

NeWS はプリンタとはちがって、複数ふくすうの PostScript プログラムによって生成せいせいされたウィンドウぐん同時どうじ画面がめん表示ひょうじするため、PostScript インタプリタをマルチタスクするところから出発しゅっぱつした。また、canvasesばれる表示ひょうじいきもとづいた完全かんぜん表示ひょうじ階層かいそうシステムを追加ついかした。おおくのGUIのビューシステムと同様どうよう表示ひょうじ構造こうぞう概念がいねんがあり、それにしたがってイベントがわたされる。NeWS には、タイマや自動じどうイベント、マウスキーボードなどのデバイスの入力にゅうりょくキュー、その対話たいわ処理しょり必要ひつよう機能きのうなど、完全かんぜんなイベントのモデルが構築こうちくされている。

とく興味深きょうみぶかいのは、継承けいしょうともな完全かんぜんオブジェクト指向しこうプログラミングスタイルが追加ついかされていたてんである。このため、アプリケーション構築こうちく外部がいぶのオブジェクト指向しこう言語げんご必要ひつようとしなかった。

これらの追加ついか機能きのうすべて PostScript への拡張かくちょうとして実装じっそうされたため、単純たんじゅんな PostScript のコードをくだけで、ウィンドウを表示ひょうじするインタラクティブなプログラムとして動作どうささせることができた。よくられたデモとして、やく2ページのコードでできた時計とけいのアプリケーションと、視線しせんでカーソルをいかける一対いっつい目玉めだまえがくプログラムがあった。目玉めだまのプログラムは1988ねんSIGGRAPH展示てんじされ、のち登場とうじょうした有名ゆうめいX Window System のアプリケーション xeyes影響えいきょうあたえた。

NeWS にはユーザインタフェースの要素ようそウィジェット)のライブラリがいくつかふくまれており、それら自身じしんも NeWS でかれていた。これらのウィジェットは NeWS インタプリタによって実行じっこうされ、ウィジェットが要求ようきゅうしたときだけ外部がいぶプログラム(またはのNeWSコード)と通信つうしん必要ひつようになるだけである。たとえば、トグルボタン表示ひょうじルーチンはボタンがされているかどうかの状態じょうたいわせることができ、それにしたがって表示ひょうじ変化へんかさせる。ボタンの PostScript コードは、マウスのクリックに反応はんのうすることもできる。これらはすべてウィンドウサーバないでクライアントプログラムとやりりせずにおこなわれ、ボタンのうえでマウスがリリースされたときだけ制御せいぎょのためのイベントがおくられる。

これは、X Window System のサーバモデルよりも洗練せんれんされている。X の場合ばあい、「マウスのボタンがここで押下おうかされた」、「マウスの現在げんざい位置いちはここ」、「マウスのボタンがここでリリースされた」といったイベントがクライアントにおくられ、クライアントがわでそれがボタンにかかわるイベントかどうかを判断はんだんし、状態じょうたい変更へんこうし、あらたな状態じょうたい描画びょうがをサーバに要求ようきゅうする。クライアントとサーバがおなじマシンにない場合ばあい、これらのやりりがネットワークじょうし、性能せいのう低下ていかする。

そのようなライブラリの好例こうれいとして TNT (The NeWS Toolkit) が1989ねん、サンによってリリースされた。サンはれいとしてしめすためにもっとちいさいツールキットもリリースした。

NeWS はひろ採用さいようされることはなかったが、いくつかの企業きぎょうがライセンスをけ、様々さまざま用途ようと利用りようした。SGIはこれを 4Sight とづけ、従来じゅうらい使つかっていた独自どくじの IRIS GL というウィンドウシステムの後継こうけいとした。NeWS じょう動作どうさする数少かずすくない商用しょうよう製品せいひんとしては、Frame Technology Corp. が開発かいはつしたDTPソフトである FrameMakerOPEN LOOK はんがある。その開発かいはつにはサン・マイクロシステムズNSA資金しきん提供ていきょうしていた。また、 Arthur van Hoff の開発かいはつした HyperLook は対話たいわがたアプリケーション設計せっけいシステムであった[3]

自由じゆう利用りよう可能かのうな X11 がすで一般いっぱんしつつあったため、NeWS の最初さいしょのバージョンではしを NeWS PostScript に変換へんかんすることで X11 をエミュレートしていた。性能せいのう問題もんだいがあり、X11 の正確せいかくなピクセル結果けっか依存いぞんしているプログラムがあったことから、サンはXサーバとインタプリタを並行へいこう動作どうささせるハイブリッドがたXnews をリリースした。無理むり統合とうごうをしたため、NeWS インタプリタの性能せいのう大幅おおはば低下ていかし、Xサーバもよい実装じっそうとはえなかった。サンはまた OPEN LOOK のルック・アンド・フィール実装じっそうした2種類しゅるいのツールキットを開発かいはつしている。1つは OLIT であり、Motif同様どうようXt (X Intrinsics) を使つかっている。もう1つは XView で、サンの以前いぜんのウィンドウシステム SunViewおなAPI実装じっそうしていた。

OPEN LOOK が Motif に敗北はいぼくしたことがあきらかになり、アドビシステムズが FrameMaker を取得しゅとくすると、NeWS じょうのアプリケーション製品せいひん皆無かいむとなった。現在げんざいではおおくのUNIXシステムが(サンの製品せいひんふくめ) X Window System を使つかっている。

失敗しっぱい原因げんいん

[編集へんしゅう]

NeWS の設計せっけい色々いろいろ意味いみシンクライアントきであり、ディスプレイがわおおくの処理しょり移動いどうでき、クライアントプログラムの意味いみろんからGUIの意味いみろん分離ぶんりできる。PostScript の描画びょうがモデルを採用さいようしていたため、のグラフィックスAPIよりもはるかに使つかやすくて強力きょうりょくである。したがって、だれもが成功せいこうしんじてうたがわなかった。

NeWS が市場いちばれられなかった理由りゆうとしては、以下いかのようなことがげられる。

  • NeWS を使つかうにはサンからライセンスをける必要ひつようがあり、一方いっぽう X Window System は MIT Licenseでソースコードが配布はいふされていた。NeWS ライブラリを使つかった製品せいひん出荷しゅっかする場合ばあい、サン、アドビシステムズパロアルト研究所けんきゅうじょたいしてライセンスりょう支払しはら必要ひつようがあった。
  • X Window System の勝利しょうりあきらかとなるころまで、NeWS には頑健がんけんさい利用りよう可能かのうコードのライブラリが存在そんざいしなかった。サンはJavaではこのあやまちをかえさなかった。問題もんだいをさらに悪化あっかさせたのは、サンが様々さまざま種類しゅるいのウィジェットセットを提供ていきょうして開発かいはつしゃ混乱こんらんさせたてんである。
  • PostScript はこうおけ記法きほうとスタックをベースとしていて、数式すうしき記述きじゅつするのが苦手にがて言語げんごである。これは印刷いんさつでは問題もんだいではないが、ユーザインタフェースではたとえば、スライダーからどれだけした位置いちでマウスがクリックされたかなどを計算けいさんする必要ひつようがあり、数式すうしき重要じゅうようだった。C言語げんごふう構文こうぶんのコンパイラがいくつか登場とうじょうしたが(pdb、c2ps など)、これらは使つかいにくく、サンがサポートしたものでもなかった。
  • NeWS でアプリケーションを開発かいはつする場合ばあい、クライアントがわとサーバがわまったことなるプログラミング言語げんご必要ひつようがあり、しかもそれらのあいだ非同期ひどうき通信つうしんおこなわれる。この通信つうしん調整ちょうせいむずかしいが、サンは若干じゃっかんのサポートしか提供ていきょうしていなかった。
  • NeWS のウィンドウサーバは競合きょうごうするほかのウィンドウシステムほど安定あんていした実装じっそうになったことがない。NeWS と X11 のマージで事態じたいはさらに悪化あっかし、またそれと同時どうじにリリースされた Solaris 2 にも性能せいのう問題もんだい存在そんざいしていた。
  • 経営けいえいじんは、X11 とどう対抗たいこうしていったらいいか、NeWS にてきした市場いちばはどこかについて混乱こんらんしていた。

NeWS と Display PostScript (DPS) を比較ひかくすると、どちらもおなじイメージングモデルと言語げんごもとにしていながら、その手法しゅほうおおきくことなる。DPSでは PostScript のコマンドは描画びょうがでのみ使用しようされ、操作そうさ(ウィンドウ生成せいせいなど)はべつにシステムインタフェースとして実装じっそうされていた。DPS には NeWS のような面白おもしろ機能きのうたとえば、PostScript コードでウィンドウの形状けいじょうえがくなど)はなく、ていレベルな Xlib ライブラリを必要ひつようとし、DPS と X の調整ちょうせいのためのあつかいにくいグルーコードを必要ひつようとしていた。しかし、そのためにDPSのコードのだい部分ぶぶんはインタプリタで解釈かいしゃく実行じっこうされるのではなくコンパイルして実行じっこうされるので、作成さくせいとデバッグが容易ようい高速こうそく動作どうさした。結果けっかとして NeWS のように PostScript にもとづいた表示ひょうじであってもエンジン部分ぶぶんはかなりちいさくなり、高速こうそくされ、「自然しぜん」なプログラミング環境かんきょうになっていた。

脚注きゃくちゅう

[編集へんしゅう]
  1. ^ Don Hopkins. “NeWS - Network extensible Window System”. 2008ねん1がつ8にち閲覧えつらん
  2. ^ Gosling, James (1986ねん). “Article 5 - SunDew”. In F.R.A. Hopgood, D.A. Duce .... Methodology of Window Management (Eurographics Seminars) Proceedings of an Alvey Workshop at Cosener's House, Abingdon, UK, April 1985. UK: Springer-Verlag. ISBN 3-540-16116-3 
  3. ^ HyperLook (aka HyperNeWS (aka GoodNeWS))

外部がいぶリンク

[編集へんしゅう]