お前ら*BSDのカーネルをハックしますか? (378レス)
お前ら*BSDのカーネルをハックしますか? http://mevius.5ch.net/test/read.cgi/unix/1003311346/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
149: 名無しさん@お腹いっぱい。 [] 02/06/26 01:08 >>148 他の*BSDでは使ってないです。 でもSMPngっていったらFreeBSDでしょ。 リポジトリのブラウズならここでどうぞ。 http://people.freebsd.org/~peter/p4db/ 手元に置きたければ http://people.freebsd.org/~peter/p4cookbook.txt に取り方が書いてある。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/149
150: 名無しさん@お腹いっぱい。 [] 02/07/03 03:05 FreeBSDのブートについて質問させてください。 sys/boot/common/load_elf.c を読んでるんですが、 /kernelのエントリアドレス(当方では0xc012b130)に0xff000000をマスクして 符号反転してオフセット(off)を0x40000000にしている意味がわからないです。 コメントの「i386 relocates after locore」っていうのも呪文ですし… で、結局/kernelのプログラムヘッダの仮想アドレス(当方では0xc0100000)と さっきのoffを加算して桁あふれさせて0x100000にして、 最終的にはこのアドレスに/kernelをロー
ドしてるようなんですが、 なんかえらくまわりくどくないですか?私の読みが浅いだけでしょうか。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/150
151: @夜勤雀棟 ◆YaKINcTg [sage] 02/07/03 05:48 >>150 sys/boot/common/load_elf.c > off = - (off & 0xff000000u); /* i386 relocates after locore */ offの最上位の1バイトをクリアするだけだと。 e.g. 0xc012b130 -> 0x0012b130 >/* i386 relocates after locore */ boot2内で/kernelを16MB以下のリニアアドレス(0x00100000-)へ展開しておき、 locore.sにおいて適切なアドレス(0xc0100000-)へmapするのだと思われます。 (locore.s内でページングをenableにしている) #ざっと眺めただけなので保証はしません
が :-p http://mevius.5ch.net/test/read.cgi/unix/1003311346/151
152: 名無しさん@お腹いっぱい。 [age] 02/07/03 21:52 良サイト宣伝中〜〜。 http://www.interone.jp/~game-k/ 注)私はサイト関係者とは無関係ですよ。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/152
153: 名無しさん@お腹いっぱい。 [sage] 02/07/04 03:20 >>152 BSD カーネルのハックに関する良サイトかと思って見に行っちゃったよ :-) http://mevius.5ch.net/test/read.cgi/unix/1003311346/153
154: 名無しさん@お腹いっぱい。 [sage] 02/07/04 05:05 アドレスの最後の方のgameがgmakeに見えて、見に行っちゃったよ。。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/154
155: 名無しさん@お腹いっぱい。 [] 02/07/06 20:57 >>151 その通り。なぜ、&= ~(0xff000000)じゃないのかよう分からんけど。 で、じゃあ何故ELFヘッダの開始番地が0x100XXXなんかじゃ無くて 0xc01000XXになってるかっていうと、paging開始後はカーネル仮想メモリ アドレスは全て0xc0000000以降になっていて、 カーネルで使用している メモリアドレスは全てそこにマップされるから。(リンカとELFフォーマット の機能を使えばそういう状況にも実は対応できたりするような気もするけど) 特にkernelとISAメモリ空間は(物理アドレス+0xc0000000)の
位置にマップされます。 locore.sでページングを開始するまでに絶対アドレッシングが必要な 時は #define R(foo) ((foo)-KERNBASE) 定義されるマクロを使ってアクセスしてます。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/155
156: 150 [] 02/07/06 21:47 >>151, >>155 お二人のレスを見ると自分がはずしまくってるのかニアミスなのか すげぇ悩みます。 load_elf.cに↓のようにコード追加して -- 228行目あたり if (kernel) { printf("before [%p]\n", (void *)off); ←これを追加 #ifdef __i386__ off = - (off & 0xff000000u); /* i386 relocates after locore */ printf("after [%p]\n", (void *)off); ←これを追加 -- # make # make install として祭起動すると before [0xc012b130] after [0x40000000] となるんで、あぁそうかと思ってたんですけど、
お二人は 最上位の1バイトをクリアしてるとおっしゃてますし。 でも/kernelを0x100000へマップするのはあってるんですよね? http://mevius.5ch.net/test/read.cgi/unix/1003311346/156
157: @夜勤雀棟 ◆YaKINcTg [sage] 02/07/06 22:25 >>156 > off = - (off & 0xff000000u); /* i386 relocates after locore */ スマソ。コードを読み違えました。 off -= (off & 0xff000000u); だったら最上位バイトのクリアですね。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/157
158: 150 [sage] 02/07/06 23:16 >>157 まぁ「保証はしない」っておっしゃってましたしね =) さてすっきりしたところでつぎはbtx.sでものぞいてみますか… http://mevius.5ch.net/test/read.cgi/unix/1003311346/158
159: 名無しさん@お腹いっぱい。 [] 02/07/18 02:40 せっかくだから俺は、ed0からtcpパケットがユーザランドまで行くまでを追って見るぜ edintr-> ed_rint(dev/ed/if_ed.c)-> ether_input ->ether_demux(net/if_ethersubr.c)->(queueへ) (queueからnetisrで)->ipintr->ip_input(netinet/ip_input.c)-> tcp_input->(順序を組み立てる為のqueueへ?) ぐらいまで読めましたが、そっからどうなってるのかわかりますか? http://mevius.5ch.net/test/read.cgi/unix/1003311346/159
160: 名無しさん@お腹いっぱい。 [sage] 02/07/19 00:02 上から来るぞ! 気をつけろ! TCP は置いといてとりあえず UDP 追ってみては? http://mevius.5ch.net/test/read.cgi/unix/1003311346/160
161: 名無しさん@お腹いっぱい。 [] 02/07/21 04:14 おい、>>160,見習いデーモン,生きてるか? udpの場合ip_inputの後 udp_input@udp_usrreqで配送先のプロセスを探して、sowakeupで起こす そうすると、sbwait()で待ってた soreceive()(uipc_socket.c)->recvit()でcopyoutされ、 recvitからはrecvfromに戻ってシステムコール完了と言った感じですか。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/161
162: 名無しさん@お腹いっぱい。 [] 02/07/29 19:56 ここなかなか良さそう。ただしSimplified Chinese。 http://opensource.zjonline.com.cn/ http://mevius.5ch.net/test/read.cgi/unix/1003311346/162
163: 150 [FreeBSD 4.6R です。] 02/07/30 09:23 おはようございます。 PICの解説で参考になるページ見つけたんで貼っておきます。 http://www.asahi-net.or.jp/~WR7S-NKMR/BeOS/Documents/IRQ.html http://www.cqpub.co.jp/column/books/2001a/34331PC_Legacy/default.htm で、また質問させてください。 sys/boot/i386/btx/btx/btx.s を読んでるんですが、 220行目あたりの「Launch user task」からがサッパリわかりません。 TSSの働きとタスク切替えがよく理解できてないからだと思うんですが、 248行目のiret命令で何が起こるのかわかりません。
(コメントには「To user mode」って書いてあるんですが…) iretでタスクを切替える場合はフラグレジスタにNTビットがセットされて なければならない、とインテルのマニュアルにも「はじめて読む486」にも 書いてあるんですが、248行目に到達するまでにNTビットがセットされたような 様子もないんですが… 何かヒントだけでもお願いします。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/163
164: 名無しさん@お腹いっぱい。 [] 02/07/30 10:45 基本的にはbtxではタスク切替え使ってない筈。(そんな豪勢なことする ほどのサイズも無いし)単純に、EFLAGSもPOPすることで、 特権を切替えてbtx_hdrにあるモニタルーチンのエントリーへ 飛んでるだけのことと思う。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/164
165: @夜勤雀棟 ◆YaKINcTg [sage] 02/07/30 15:06 >>163 この場合はTSSは関係ないですね。(V86用に使うだけ) 割り込みが起こったことにしてiretしているだけです。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/165
166: 150=163 [sage] 02/07/31 19:46 レスどうもです。 はやとちりしてました。iretはタスク切替えだけで使うものではなかったんですね。 インテルのマニュアルの命令リファレンスで確認しました。 でも、pushしておいたEIP(btx_hdr+0xc)がiretで特権を切替えたあと 実行される番地みたいですけど、btx_hdr+0xcって btx_hdr: .byte 0xeb # Machine ID .byte 0xe # Header size .ascii "BTX" # Magic .byte 0x1 # Major version .byte 0x1 # Minor version .byte BTX_FLAGS # Flags
.word PAG_CNT-MEM_ORG>>0xc # Paging control .word break-start # Text size .long 0x0 # Entry address ←ここですか? 特権を切替えて、また同じコードを辿ってくってこと??? http://mevius.5ch.net/test/read.cgi/unix/1003311346/166
167: @夜勤雀棟 ◆YaKINcTg [sage] 02/07/31 20:21 >>166 >でも、pushしておいたEIP(btx_hdr+0xc)がiretで特権を切替えたあと >実行される番地みたいですけど >pushl btx_hdr+0xc# Set EIP これは間接参照でbtx_hdr+0xc番地の内容(long)をpushするという意味です。 # operandに'$'が付いていないことに留意。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/167
168: 150 [sage] 02/08/03 14:17 >>これは間接参照でbtx_hdr+0xc番地の内容(long)をpushするという意味です。 にしても、特権切替えたあとはどのコードが走るのか全然わからないです。 EIPが0x0なんですよね?0x0番地のコードって…? http://mevius.5ch.net/test/read.cgi/unix/1003311346/168
169: 名無しさん@お腹いっぱい。 [sage] 02/08/03 18:45 実際のバイナリをhexdumpしないとダメっすよ。ローダがいじるに決まってるでしょ。 /boot/boot2より 00000200 eb 0e 42 54 58 01 01 80 f6 0f 80 07 00 10 00 00 |..BTX...........| <eb> btx_hdr: . byte 0xeb <0e> . byte 0xe <42 54 58 > . ascii "BTX" <01> .byte 0x1 <01> . byte 0x1 <80>
.byte BTX_FLAGS <f6 0f> .word PAG_CNT-MEM_ORG>>0xc <80 07> .word break-start <00 10 00 00> .long 0x00001000 簡単にするならコメントを信じて次のbtxクライアント(boot2又は/boot/loader本体) へ進めってことです。ちなみに/boot/loaderは更にbtxldrが走ったりするっす。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/169
170: 名無しさん@お腹いっぱい。 [] 02/08/03 19:30 >>実際のバイナリをhexdumpしないとダメっすよ。ローダがいじるに決まってるでしょ。 おぉ、盲点でした。 こういうのはMakefileを丁寧に追っていけばわかることですか? 今ちらっとsys/boot/i386/boot2/Makefileを見たら ORG2に代入された0x1000がbtxldコマンドのオプションとかに使われてて 「ほうほう」と思ってたんですけど。 ソースにとらわれすぎて本質を見失ってました。 でも>>169さんのおかげでまた少し前進できそうです。ありがとうございました。 http://mevius.5ch.net
/test/read.cgi/unix/1003311346/170
171: 150=170 [sage] 02/08/03 19:31 sage忘れ欝だ死のう… http://mevius.5ch.net/test/read.cgi/unix/1003311346/171
172: 名無しさん@お腹いっぱい。 [] 02/08/04 22:06 sageなくても良いんじゃない? まぁ、強いていえば「特殊なローダを必要とする」「0x0なんて番地に飛ぼうとする」 という2点から勘を働かせた結果かな。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/172
173: 見習デーモンへ [] 02/09/09 04:58 スレ キトク スグカエレ 〜ハハヨリ〜 http://mevius.5ch.net/test/read.cgi/unix/1003311346/173
174: 名無しさん@お腹いっぱい。 [sage] 02/09/11 00:13 >>173 知らなかったのか?見習いデーモンは 半年前に勇者に殺されたんだぞ。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/174
175: 名無しさん@お腹いっぱい。 [] 02/09/15 00:10 もし!毒蛇に噛まれたら、 切り口を素早くナイフでえぐり、 急いで口で吸え! ほら、言ってみろ!! http://mevius.5ch.net/test/read.cgi/unix/1003311346/175
176: 名無しさん@お腹いっぱい。 [sage] 02/09/15 00:37 虫歯がある時にそれやったら死んでしまう罠。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/176
177: 名無しさん@お腹いっぱい。 [] 02/09/15 01:44 ごめんなさい クックロビンを殺したのは私です。。。。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/177
178: 名無しさん@お腹いっぱい。 [] 02/09/15 01:44 boot0.sコードので分らない部分があるのですが、 61 movw $LOAD,%sp # stack 66 movw %sp,%si # Source 67 movw $start,%di # Destination 68 movw $0x100,%cx # Word count 69 rep # Relocate 70 movsw # code この部分は、MBRを再配置するコードだと考えているのですが、 アドレスLOAD(0x7c00)からの512バイトの領域を、現在実行して いるstartで表されるアドレスからの512バイトの領域にコピーする という意味なのでしょうか? http://mevius.5ch.ne
t/test/read.cgi/unix/1003311346/178
179: 名無しさん@お腹いっぱい。 [sage] 02/09/15 07:34 >>178 MBRが読み込み・実行される際のセレクタの値 引用してるコードの上の方で設定してるセレクタの値 セレクタとオフセットから得られる実効アドレス について調べましょう。 # 個人的には、今さらIA32の16bitモードについて勉強しても # 得る物はあまり多くない気がする。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/179
180: 見習いデーモン [sage] 02/09/21 18:19 むしょうにデバイスドライバを書いてみたくなって、 http://www.jp.freebsd.org/www.FreeBSD.org/doc/en_US.ISO8859-1/books/developers-handbook/x10069.html ↑やってみたらすげー簡単でびっくりしました。 秋月のLCDキットとかをシリアルかなんかでつなげて、 echo "Hello" > /dev/mylcd とかできるようになりたいんですけど、あとは↓ http://www.daemonnews.org/200010/blueprints.html とか読んどけばできるようになりますか? 実際のドライバってどんななんだろうと思って/sys/dev/fxp/if_fxp
.c なんかのぞいてみて頭から煙だしたりしてます… http://mevius.5ch.net/test/read.cgi/unix/1003311346/180
181: 名無しさん@お腹いっぱい。 [sage] 02/09/21 23:15 おまえの見てるのデバドラのつくり方じゃねぇじゃん。(藁 http://mevius.5ch.net/test/read.cgi/unix/1003311346/181
182: 見習いデーモン [sage] 02/09/21 23:34 うお、もしかして空回りですか… でもKLDでカーネル領域に自分のコード置けるとおもうとワクワクするんですが http://mevius.5ch.net/test/read.cgi/unix/1003311346/182
183: 名無しさん@お腹いっぱい。 [sage] 02/09/22 23:32 カーネルを再構築しても自分のコードは置けますが何か? http://mevius.5ch.net/test/read.cgi/unix/1003311346/183
184: 名無しさん@お腹いっぱい。 [] 02/09/24 00:43 >>181 ハンドブックで解説されている部分は部分はデバイスドライバ (ツリーを形成する実デバイスを叩くもの)ではデフォルトで呼ばれる ものがあるので気にしなくていいです。 おまいさんの目的ではどう見てもfxpを見るのは間違いだと 思いますし、そもそもシリアルならsio使ってtermios 叩いたほうが....... で、ご希望にそえるものなら例えば、spic(4)あたり簡単そうかな? http://mevius.5ch.net/test/read.cgi/unix/1003311346/184
185: 名無しさん@お腹いっぱい。 [sage] 02/09/29 01:58 spic は デバイスの仕様が不明なので、 読んでもあまりピンとこないのでは。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/185
186: 鬼軍曹 [] 02/11/01 04:36 ============ お知らせ ================== あー、只今よりこのスレは、見習デーモンの学習を見張るスレになりました。 ==================================== http://mevius.5ch.net/test/read.cgi/unix/1003311346/186
187: 名無しさん@お腹いっぱい。 [] 02/12/16 05:14 保守 http://mevius.5ch.net/test/read.cgi/unix/1003311346/187
188: 名無しさん@お腹いっぱい。 [] 02/12/26 15:56 NETBSD入れたらまずカーネルハックするぞぉ! http://mevius.5ch.net/test/read.cgi/unix/1003311346/188
189: 名無しさん@お腹いっぱい。 [sage] 02/12/26 16:13 おまえのいうハックってカーネルの再構築のことだろ?ぷ http://mevius.5ch.net/test/read.cgi/unix/1003311346/189
190: 名無しさん@お腹いっぱい。 [sage] 02/12/26 23:09 千里の道も一歩から http://mevius.5ch.net/test/read.cgi/unix/1003311346/190
191: 名無しさん@お腹いっぱい。 [sage] 02/12/26 23:34 千里の道を一歩だけ http://mevius.5ch.net/test/read.cgi/unix/1003311346/191
192: 名無しさん@お腹いっぱい。 [sage] 02/12/27 01:01 千里を歩き通すのは大変だよ……。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/192
193: 名無しさん@お腹いっぱい。 [sage] 02/12/29 14:10 千里ちゃんって誰? http://mevius.5ch.net/test/read.cgi/unix/1003311346/193
194: 名無しさん@お腹いっぱい。 [sage] 02/12/29 15:51 http://homepage3.nifty.com/senri/ http://mevius.5ch.net/test/read.cgi/unix/1003311346/194
195: 193 [sage] 02/12/29 16:57 >>194 そんなの僕の千里ちゃんじゃないやい。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/195
196: 名無しさん@お腹いっぱい。 [sage] 03/01/07 22:31 >>193 千里中央に行くには新御堂筋に一歩踏み出せばあとは 北上するだけで着くので解りやすいと言う諺だよ。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/196
197: 名無しさん@お腹いっぱい。 [sage] 03/01/09 16:29 >>196 それはちとローカルではないかと。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/197
198: 名無しさん@お腹いっぱい。 [sage] 03/01/10 08:36 なかおくんだろ? http://mevius.5ch.net/test/read.cgi/unix/1003311346/198
199: 山崎渉 [(^^)sage] 03/01/15 13:10 (^^) http://mevius.5ch.net/test/read.cgi/unix/1003311346/199
200: 山崎渉 [(^^)sage] 03/01/16 03:35 (^^) http://mevius.5ch.net/test/read.cgi/unix/1003311346/200
201: 名無しさん@お腹いっぱい。 [sage] 03/01/18 12:17 >>194 大江千里も随分としけたもんだね。オフィシャルサイトが niftyとは。。。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/201
202: 山崎渉 [age] 03/02/24 10:15 (^^)オレダッテ タマニハ マジデ ホシュ スルyo!! http://mevius.5ch.net/test/read.cgi/unix/1003311346/202
203: 山崎渉 [(^^)] 03/04/17 12:29 (^^) http://mevius.5ch.net/test/read.cgi/unix/1003311346/203
204: あぼーん [あぼーん] あぼーん http://mevius.5ch.net/test/read.cgi/unix/1003311346/204
205: あぼーん [あぼーん] あぼーん http://mevius.5ch.net/test/read.cgi/unix/1003311346/205
206: 名無しさん [] 03/06/04 18:51 カーネル内で、擬似的ではないランダムな値を使うにはどうすればいいですか?? http://mevius.5ch.net/test/read.cgi/unix/1003311346/206
207: 名無しさん@お腹いっぱい。 [sage] 03/06/04 19:01 ガイガーカウンタをつないでカウントして乱数を発生させる http://mevius.5ch.net/test/read.cgi/unix/1003311346/207
208: 名無しさん@お腹いっぱい。 [sage] 03/06/05 00:53 ガイガーカウンタは計数するんじゃなくて時間を測るんだよね。 線源なしのバックグラウンドが相手だとパルス数が少なすぎて ちょっとトロい。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/208
209: 名無しさん@お腹いっぱい。 [sage] 03/06/05 01:09 つーか、Intelチップセットの乱数ジェネレータとか使えばいいんでないの? OpenBSDがサポートしてるのは知ってるけど、他はどう? http://mevius.5ch.net/test/read.cgi/unix/1003311346/209
210: 名無しさん [] 03/06/05 01:52 カーネル内で擬似的ではないランダムな値を使うためにはどうしたらいいですか?? http://mevius.5ch.net/test/read.cgi/unix/1003311346/210
211: 名無しさん [] 03/06/05 01:53 すいません、ダブってしまいました。m(_ _)m http://mevius.5ch.net/test/read.cgi/unix/1003311346/211
212: 名無しさん@お腹いっぱい。 [sage] 03/06/05 02:34 NetBSD の場合、キーボードやシリアルその他のデバイスから エントロピーを集めている。 この結果から得られた乱数は rnd_extract_data(9) で取得できる。 例えば sys/netinet/tcp_subr.c では、TCP の初期シーケンス番号 を、この乱数源から得るようになってるので、ここを見てみれば 使い方は分かる筈だ。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/212
213: 名無しさん [] 03/06/06 00:25 当方FreeBSDで「TCPの初期シーケンス番号」からヒントを得て、 そこからip識別子(ip_id)の初期化の手順へ行き、そこからシステムクロックをとるtime.tv_secを 知ることができました。 ありがとうございました。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/213
214: 名無しさん@お腹いっぱい。 [sage] 03/06/06 00:30 それちがうやろ.... http://mevius.5ch.net/test/read.cgi/unix/1003311346/214
215: 名無しさん [] 03/06/06 02:30 確かに違いました。^^; 利用したい値の有効桁数が少なかったのでこれでも乱数として利用できるかと思ったんですが、 他の関数に利用する場合も考えてTCPの初期シーケンス番号の関数を利用したいと思います。 ご指摘ありがとうございました。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/215
216: 名無しさん@お腹いっぱい。 [sage] 03/06/06 02:31 >>210 どういう目的に使うの? http://mevius.5ch.net/test/read.cgi/unix/1003311346/216
217: 名無しさん@お腹いっぱい。 [sage] 03/06/06 02:38 >>212 「エントロピーを集める」という表現は気持ち悪いな。NetBSDの世界では普通に使うのか? http://mevius.5ch.net/test/read.cgi/unix/1003311346/217
218: 名無しさん@お腹いっぱい。 [sage] 03/06/06 02:43 別に NetBSD に限らず、乱数のセキュリティ方面への利用では、 普通に使います。試しに "collect entropy" でググってみるべし。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/218
219: 名無しさん [] 03/06/06 03:14 マルチキャスト通信においてNAKにより信頼性を持たせようと思っているのですが、 そのとき全ての受信者がNAKを出すタイミングが重なるとトラフィックが一気に 増大するのでそのタイミングをずらすために乱数が必要となりました。 アプリケーションプログラムと違い、カーネルでの乱数の求め方がわかりませんでした。^^; http://mevius.5ch.net/test/read.cgi/unix/1003311346/219
220: 名無しさん@お腹いっぱい。 [age] 03/06/08 05:50 ただいまBSDのKernel SoruceをReadしてるので Context Switchするわけにはいかぬ。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/220
221: 名無しさん@お腹いっぱい。 [sage] 03/06/10 01:05 擬似的でない乱数って… http://mevius.5ch.net/test/read.cgi/unix/1003311346/221
222: 名無しさん@お腹いっぱい。 [] 03/06/15 00:29 自分でnumerical recipe使って書け http://mevius.5ch.net/test/read.cgi/unix/1003311346/222
223: [sage] 03/06/15 04:05 プ > numerical recipe http://mevius.5ch.net/test/read.cgi/unix/1003311346/223
224: *BSDハックさん [] 03/06/17 05:58 UDPのudp_inputにおいて ユニキャストとマルチキャスト・ブロードキャストで 処理が分かれいるところで、ユニキャストの方は分かるのですが、 マルチキャスト・ブロードキャストの方でUDPPCBをfor文でスキャンして いくのはなぜですか? 同じPCBは複数存在するのですか? http://mevius.5ch.net/test/read.cgi/unix/1003311346/224
225: あぼーん [あぼーん] あぼーん http://mevius.5ch.net/test/read.cgi/unix/1003311346/225
226: あぼーん [あぼーん] あぼーん http://mevius.5ch.net/test/read.cgi/unix/1003311346/226
227: 名無しさん@お腹いっぱい。 [sage] 03/06/17 11:44 >>224 ブロードキャストの方はaliasついてりゃ、それぞれ同じポートつかえる。 マルチキャストは良くわからない。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/227
228: *BSDハックさん [] 03/06/18 01:42 >>227 http://mevius.5ch.net/test/read.cgi/unix/1003311346/228
229: *BSDハックさん [] 03/06/18 01:50 >>227 もしよろしければブロードキャストにおける同じポートを使える クライアントサーバのプログラムをいただけないでしょうか? http://mevius.5ch.net/test/read.cgi/unix/1003311346/229
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 149 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.010s