68user's page 掲示板

Prev< No. 910〜918> Next  [最新発言に戻る] [過去ログ一覧]
No. 910 # 68user 2000/06/09 (金) 22:35:15
すいません、Xt のつもりで書いてました。Motif なんですよね。
Xt* のくだりは無視して下さい。その他は後ほどまた書きます。

No. 911 # 68user 2000/06/11 (日) 00:58:18
> X-windowsのプログラムはXlibだけでもコーディング出来るのですか?
> XツールキットとかMotifルーチンとかが無くても出来るのですか?
> XツールキットとかMotifルーチンは簡単にコーディングするための
> ライブラリーなのですか?
答えは全て YES です。Xt も Motif も最終的には Xlib の API を呼びます。
    http://www.ainet.or.jp/~inoue/im/basic.html#api
が参考になるでしょうか。ただし、Xlib だけでやろうとすると
入力フォーム一つ作るのにも相当苦労するでしょう。

# この方のページはとても質が高いので、UNIX を使う人は
# 一通り目を通しておいた方がよいと思います。

ちなみに、
> 極端な話、Xlibを使わずソケットプログラミングで直接 X protocol を
> 話すXクライアントアプリケーションを作ることも原理的には可能です。
というのは、/tmp/.X11-unix/X0 に対して UNIX ドメインソケット経由で
X プロトコルを話すとか、ポート 6000 に対して X プロトコルを話す、
ということです。

> ほかにOpenGLとかXveiwとかも聞きますがそれらの位置関係が全く
僕もわかってません。なので、偉い人に聞いてきました。
    http://www.energy.ee.ehime-u.ac.jp/~flathill/FreeBSD/chat/log/200006/20000610.html
の (Jun 10 00:26)[go] を読んで下さい。
# …全然わかってなかったんだなぁ。

あと、OpenGL は 3D を描画するためのライブラリです。

> 最後に、マニュアルは、地方にいるので書店にいってもX-windowsの
> マニュアルなんてほとんど皆無です。
こっちも
    http://www.energy.ee.ehime-u.ac.jp/~flathill/FreeBSD/chat/log/200006/20000611.html
をどうぞ (6/11 07:00 あたりにならないと作成されません)。

> 次に、XtOpenApplicationを使ってコーディングしてみましたが
やはり Motif であっても XtOpenApplication を使うべきだとは
思いますが、お使いの openwin が X11R6.3 より古い規格に準拠して
いるのではないかと思います。

> 内のX11のバージョンは分かりません。
man X とすると、最後に
    X Version 11     Release 6.3
などと書いてあると思います。

以下、ひとりごと。Perl/Tk 800.xxx 系の日本語化パッチ。
    http://opinion.nucba.ac.jp/~tsutomu/perltk/jp-patch.html
やっと見付けられた…。

No. 912 # kasuga 2000/06/13 (火) 03:34:40
グラデゥウスの基盤手に入ったがどうしても無敵技で来ません
教えてください
4面でフォースフィールドつけながらクリアーして
そのあとまたはりなおすんですか??

赤色の文字は 「Windows 機種依存文字」か、いわゆる「半角カナ」です。 この掲示板では自動変換されますが、今後は使用しないで下さい

No. 913 # 参考になりました。 2000/06/13 (火) 14:36:51
私は課題研究という授業で
ゲーム業界についてというテーマで
いろいろ調べています。
その中で、ここが検索に引っかかりました。

日付から見てかなり前のものだったようですが、
中古ゲーム販売についての論争、
とても参考になりました。
当然、こんなテーマで調べているのですから
私自身ゲームもやりますし、
中古店も利用しています。
いろいろ考えさせられました。

参考といってもあの内容をそのまま引用したり
するわけではありません。
調べる範囲に中古市場を加えることを
視野に入れて・・・変な文章・・
とにかく、それを加えることを決めました。

報告書作成まで、日にちが余りないのですが
がんばってみようと思います。
勝手ながら少しばかりご挨拶をさせて
いただきました。

No. 914 # へにか@箇条書き [URL] 2000/06/14 (水) 23:02:08
おひさしぶりです。いつぞやは、お世話になり、ありがとうございます。

早速ですが、質問がございます。
echo-3.htmlには、
> このように SOMAXCONN を指定すると、 OS が許す最大値を意味します。
とあって、且つ、
> FreeBSD2.2.7 では /usr/include/sys/socket.h で
> #define SOMAXCONN 128
>と定義されているので、
とあります。

で、以下の1)と2)のどちらに解釈していいのか悩んでいます。
1) この例の128は、クライアントや言語に依らず(?)、OSによって
    一意に決定されるもの。
2) この例の128は、クライアントや言語に依って、決定されるもの。
    (∵128と書くということは、減らすのはもちろん、増やすのも可能?)
    (これが真なら、いじる方法はありうるでしょうか?)
なぜ、このような質問をするかというと、
a) 事の発端は、自作proxy( http://henika.virtualave.net/view.cgi?0 )
    で、 http://henika.virtualave.net/japanese/browsers.htm
    (厳密に言うとローカルマシン上でテストしてます)見に行くと、画像の
    枚数が多いせいか、全ての要求を受付てくれない(logで確認済み)。
b) でも、自作proxyを経由しないと、ちゃんと表示される。
c) そこで、SOMAXCONNをいじれないか?
と、思ったからです。

多分、いじれそうにないな、とは思っているのですが、もし、いじる
方法(perlのコンパイルを除く)をご存知でしたら、ご教授願いたく、
よろしくお願いします。

因みに、環境はwindows98, perl -vでは、
This is perl, version 5.005_03 built for MSWin32-x86-object
と表示されます(失礼ながら、windowsをご存知ではないのは、過去ログ
から、承知しておりますので、perlでいじれる方法、ということで、
お願いします)。

・・・とかいいつつ、delegateのように、delimiter(但し/-_-ではなく/)で
imgタグをproxy経由させないように改定してしまいましたが、気になって
気になって仕方がない・・・

No. 915 # へにか [URL] 2000/06/14 (水) 23:12:17
すいません、先の自作proxyは、あれ単体では動作しないので、
もし、眺めるのでしたら、お手数ですが、
http://henika.virtualave.net/view.cgi?0 を適当な名前に、
http://henika.virtualave.net/view.cgi?1 をfilter.plに、
http://henika.virtualave.net/view.cgi?2 をhtrans.plに
してください。

宜しくお願いいたします。

参照 http://henika.virtualave.net/japanese/proxy.htm

No. 916 # 68user 2000/06/14 (水) 23:24:55
> グラデゥウスの基盤手に入ったがどうしても無敵技で来ません
わからないです。というか、無敵技があったのか。
# ちなみに基盤じゃなくて基板です。

> 参考になりました。
と言っても、僕が書いた文章ではないので扱いには
お気をつけ下さい。まぁ、
> 参考といってもあの内容をそのまま引用したりするわけではありません。
ということなので、心配はしておりませんけど。


> 1) この例の128は、クライアントや言語に依らず(?)、OSによって
>  一意に決定されるもの。
です。

(FreeBSD では) この数はカーネル内部に書かれており、動的に数を
変更する仕組みもないので、一般ユーザでも root でも変えられません。
どうしてもというならカーネルの再コンパイルでしょうか。

とはいえ、他の UNIX 系 OS では動的に変更できたりする *可能性* はあります。
# ioctl とかで変更できても不思議ではないけど、できなくても不思議ではない。

> 画像の枚数が多いせいか、全ての要求を受付てくれない(logで確認済み)。
なお、FreeBSD では SOMAXCONN は128で、128*1.5=192 なので、待たせて
おけるクライアント数は最大 192 になります。しかし、本当にそれくらいの
コネクションが張られているのでしょうか? netstat で見ると ESTABLISHED に
なっているのが そんなにたくさんありますか?

あと、お使いの環境での最大接続数を調べるには、1つのポートにがんがん
接続してみればわかると思います。

なお、http://X68000.startshop.co.jp/~68user/net/echo-3.html には
> もし backlog 以上のクライアントが同時に connect してきた場合は、
> サーバは接続を拒否するか、何もレスポンスを返しません。
とありますが、おそらくこれは間違いで、拒否することはありません。
カーネルレベルで無視するだけで、サーバプログラム側はクライアントが
やってきたことすら検知できません。

一方クライアントからは TCP の 3way handshake の1発目の SYN に対する
返事が返ってこないので、そのうち SYN を再送、という挙動をすると思います。

No. 917 # 68user 2000/06/14 (水) 23:25:53
> ioctl とかで変更できても不思議ではないけど、できなくても不思議ではない。
ioctl はありえないですね。デバイスじゃないんだから。

No. 918 # へにか [URL] 2000/06/15 (木) 22:29:25
ご回答、ご指導、どうもありがとうございます。

>カーネルの再コンパイルでしょうか。

こ、この時点で、止めが刺された気がしました。A^^;
多分、windowsでもあてはまるのでしょう。

>しかし、本当にそれくらいのコネクションが張られているのでしょうか?
> netstat で見ると ESTABLISHED になっているのが そんなにたくさんありますか?

早速、試してみました。
netstatで、ESTABLISHEDとなった本数(数回やった場合の最大)を以下に示します。

Local Address = n:80 は、 2
Local Address = n:8080 は、 5
Local Address = n:15xx は、 7 (15xx=1500番台)

http://henika.virtualave.net/japanese/browsers.htm には、このページ+36枚画像
あるので、ブラウザと思われる1500番台が、想像ですが、20近くないとおかしいような
気がします。この時点で、SOMAXCONNの値は1桁台と推測しました。

この時点で、自動的に、
>あと、お使いの環境での最大接続数を調べるには、1つのポートにがんがん
>接続してみればわかると思います。
を、満たしてしまっているような気がします・・・

因みに、SOMAXCONNをperlで表示させると、 5 でした(以下を実行)。
use IO::Socket;
print SOMAXCONN;
(思いつきで試したので、あまり意味がないかもしれません・・・)
これが正しければ、待たせておけるクライアント数は、5+alphaで、先の推測には
合致してるなぁ、と思い込んでいます。

う〜ん、windowsって、少ないのかなぁ? なんかうそっぽいなぁ。

>カーネルレベルで無視するだけで、サーバプログラム側はクライアントが
>やってきたことすら検知できません。

なるほど。windowsでも同様であれば、当方の現象(全ての要求を受付てくれない)
も納得いきます(logにクライアントから要求されるはずのイメージ・ファイルが
要求されていないようになっている)。

>一方クライアントからは TCP の 3way handshake の1発目の SYN に対する
>返事が返ってこないので、そのうち SYN を再送、という挙動をすると思います。

申し訳ないのですが、このあたりは、まだよくわからないので、確かめられません。
今後の課題・勉強材料とさせてください。

Prev< No. 910〜918> Next  [最新発言に戻る] [過去ログ一覧]