お前ら*BSDのカーネルをハックしますか? (378レス)
1-

250: 210 ◆s3Xr4zlrpU 03/08/18 21:46 AAS
>>222
禿同

話は変わるけど、携帯ゲーム機"プレイステーションポータブル(PSP)

 久夛良木氏は,“PSPはゲーム業界が待ち望んだ究極の携帯機”として説明。「ここまでやるかと言われるスペックを投入した」という。
 発表によれば「PSP」は,曲面描画エンジン機能を有し,3Dグラフィックでゲームが楽しめる。
7.1chによるサラウンド,E3での発表以来,クリエイターたちにリクエストが高かった無線LANも搭載(802.11)。
MPEG-4(ACV)による美しい動画も楽しめるという。これによりゲーム以外の映画などでのニーズも期待する。
省7
251: 03/08/19 00:48 AAS
カーネルソースをいじって printfでパラメータを表示しながら
状況を把握したいんですが、typescriptもパイプでファイルに
保存することもできないのですが、カーネルをイジっているひとは
どうやってプログラミングしてるんですか?

カーネルを扱うに当たって便利なやり方や、アプリケーションがあれば教えてください。
252: 03/08/19 00:52 AAS
出力先をシリアルポートやら、メモリやら。
253: 03/08/19 01:35 AAS
最近だとsimokawaさん謹製dconsって奴があるね。
特定のメモリに書いておいてIEEE1394 OHCI
ホストコントローラが勝手にDMAしにくるってやつ。
シリアルコンソールはシリアルコンソールでも
IEEE1394シリアルだから速い。
254
(2): 03/08/20 01:17 AAS
別に機器を買う必要があるということですか。

kgdbはカーネルのコンパイル時にしか使えないのですか?

なんとかgdbなどのデバッグツールでカーネル関数の動きを追っていきたいのですが。。。

よろしくお願いします。
255: 03/08/20 01:33 AAS
>>254
( ´д)ヒソ(´д`)ヒソ(д` )
256: あぼーん [あぼーん] AAS
あぼーん
257: あぼーん [あぼーん] AAS
あぼーん
258: 03/08/20 02:48 AAS
知らなかったよ。kgdbを使ってカーネルのコンパイルができるのか.....
259: 03/08/20 05:30 AAS
>>254
通常のgdbのように扱えるよ
gdbのカーネルモードだからね

基本的に大きな違いはないはず。ただ、カーネルをデバッグしているから
端末が二つあった方がいいね

もし一台でデバッグできる方法があったら教えてくれ。
260: 03/08/20 05:37 AAS
誰も自分の死体を見ることはできないというお話ですた。
261: 03/08/20 05:41 AAS
死体は見れるよ。来世で。
できないのは、自分自身の解剖。
262: 03/08/20 05:58 AAS
いや、自分の癌の摘出をやった外科医はいたし、ある程度は可能だろう
263: 03/08/20 13:19 AAS
最近のはやりだとbochsやvmwareなどの仮想マシン上でデバッグする
という手もあるな。bochsにも一応デバッグ支援のための機能はある
ようだ。もっともエミュレーションに起因する問題が出る可能性は
あってどんな場合でも使えるわけじゃない。
動きを追うぐらいならそこそこ使えるかもね。

ま、詰めなきゃならん所は昔ながらのメモリ上に値を置く、かな。
264: 03/08/21 00:34 AAS
*BSDで、一台でもある程度はできるよ。Linuxでも最近できるかな。
options DDBを入れてCtl-Alt-Breakを押すと
ddbのモードに入る。ここで、命令ごとのステップ実行
callの終了までの実行、シンボルで指定できるブレークポイント設定
変数参照、レジスタ参照、等々。ddb(8)は印刷しといたほうがいいな。
265: netnice 03/08/28 10:19 AAS
i heard that you can use /dev/kmem, instead of /var/crash/vmcore.*,
fore core-file argument of kgdb, though i've never tried.
just fyi.
266: 03/10/11 12:05 AAS
カーネルモジュールはどうやってデバッグするんでしょうか?
特にインターフェース部分。
デバッグ用のシンボルはどうやっていれれば?
267
(1): 03/10/11 12:22 AAS
>>1
これは実際に重要なことである。
開いたソースはあなたのためになり私のためになり、可能性をもたらす。
多くの危惧の中の一つは、しばしば現実となるが、世界の協力はそれを直すだろう。
もしあなたやあなたの友人が開いたソースを悪意で使うなら、それは停止して欲しい。
268: 03/10/12 17:57 AAS
>>267

269: 03/10/23 21:10 AAS
BSDのソース読んでみようと思うんだけど、NetBSDがいいかな?
270: 03/10/23 21:23 AAS
(´-`).。oO(でっかい釣り針がぶら下がっております…)
271: 03/10/23 22:15 AAS
inferno
272: 03/10/23 22:16 AAS
inferno
273: 03/10/23 22:22 AAS
くだ質スレからの流れでしょう。
274
(1): くだ質の534 03/10/24 17:08 AAS
漏れじゃネーよ(w カーネルくらい黙って読むし

でもって、NetBSDをちらっと読んでるんだけど、なんか得体の知れない
マクロだらけ…。ちゃんとヘッダファイルから読まなきゃダメか。

あと、NetBSDのカーネルハック本(和訳)って全然出てないよね?
おおまかな構造を理解してからソース読まないとサッパリだよ。
この前出た4.4BSD赤本じゃあ古すぎるような気がするので読んで
ないけど…
275: 03/10/24 17:20 AAS
>>274
今までどんなの読んでたの?
得体の知れないマクロってのはbus_spaceとかの事かな。
276
(1): 03/10/24 18:08 AAS
ヘッダファイルこそがソースの肝なのに。。。
277: 03/10/24 20:59 AAS
NetBSD のカーネルハック本(和訳)って、
BSD Magazine の Vol.13 のことじゃないのか?
278: 03/10/25 02:44 AAS
>>276
そうなんだよね。本当に。
279
(1): 03/10/26 10:15 AAS
/usr/includeの下は丸暗記するぐらいの勢いで読みまくった。
これはいきなりカーネル読み始めるよりも、効率的だし、
実用的だったよ。
280
(3): 03/10/26 13:48 AAS
へたれプログラマなんですが、なんでそんなにヘッダファイルが重要なのか
わからないんですが、理由を教えていただけませんか?
281
(1): 03/10/26 14:31 AAS
>>280
これは計算機科学の教科書の練習問題だと思うぞ。
こんなものかな。採点キボンヌ(配点20点)

ヘッダファイルにはデータ構造、関数定義など、モジュール間のインターフェイスと
なるものが記述されており実装の詳細を見ずに全体を把握する事が可能である。
また、一つのプロジェクト内のモジュールのインターフェイスというだけでなく、
異なるシステムとの間の相互運用性を確保するためにも必要である。
282: 03/10/26 19:07 AAS

俺の採点だと20点満点。素直に。
敢えてアラ探しやればできるだろが、練習問題という設定なら十分な回答だろ。

2ch的でない(奇をてらわない保守的な)回答だけど、そういう地味さにも好感。
283: 280 03/10/27 08:00 AAS
>>281
ありがとうございます。
なんか目から鱗でした。
284: くだ質の534 03/10/27 14:29 AAS
そうか、ヘッダファイルってそんなに重要なんだ…。言われて
みればたしかに。

漏れも>>279みたいに凄い勢いでヘッダ読んでみまつ。勉強に
なったサンクスコ。
285: 03/10/27 16:22 AAS
重要は重要だけど、本で言えば目次だけ読むようなもんだから
偏食にならないようにネ
286: 03/10/28 11:09 AAS
>>280
頭(head)だからです。
頭だけとか体だけとかは駄目なんです。
287: 03/11/04 23:33 AAS
sys/kernel.h --

#defineSYSINIT(uniquifier, subsystem, order, func, ident)\
C_SYSINIT(uniquifier, subsystem, order,\
(sysinit_cfunc_t)(sysinit_nfunc_t)func, (void *)(ident))

funcを2重にキャストする意味って何?
288: 03/11/19 22:40 AAS
興味ありあげ
289: 03/11/23 13:51 AAS
BSDがSCOによって血祭りにあげられるまであと何日ですか?
290
(1): 03/11/23 19:47 AAS
BSDによってSCOが血祭り、なんだろうな
291
(1): 03/11/23 20:15 AAS
というか既に血まみれで死にそうなSCOが
あちこちに血しぶきを撒き散らして嫌がらせしてるんだろ。
292
(1): 03/11/23 22:11 AAS
>>290-291
おまいら何もわかってないな
技術泥棒なんだよ
ギ ジ ュ ツ ド ロ ボ ウ
わかるか?
293: 03/11/23 22:21 AAS
>>292 煽り乙。どうせなら犬板のSCOスレ逝った方が人多くて楽しいと思われ
294: 03/11/25 00:18 AAS
同感
295: 03/12/01 01:14 AAS
BSDのカーネル読むにはどのBSDのソースがとっつきやすいですか?
296: 03/12/01 03:31 AAS
あなたの使っているものが一番じゃない?
297
(1): 03/12/06 12:38 AAS
ソースなんて綺麗とか汚いとかほざくまえに、
動いてるコードなんだから黙って読むんだよ!
今じゃろくなコード書けない人間までコードが
云々なんて言い出す始末だからな。もうブチキレですよ。
298
(2): 03/12/09 18:58 AAS
カーネルによって違うのかもしれませんが、
各種スレッドというのは、スタックセグメントだけを
スレッドごとに固有にもち、それ以外のセグメントは
プロセス内の全てのスレッドで共有するという感じなのでしょうか?
そうすると、ページディレクトリテーブルも共有で、
スタックセグメントだけを仮想メモリの機能として
別々の物理ページに割り当てるといった感じになっているのでしょうか?
省2
299: 03/12/09 19:45 AAS
>>298
実装にもよるんだろうけど、スタックも含め、スレッドがいくつあろうと
アドレス空間は1プロセスで同じもの。スタックはスレッド毎に
切り替えて違うアドレスを指してあるだけ。
300: 03/12/09 22:30 AAS
>>298
コンテクストスイッチ発生させると、プロセスのコンテクストスイッチと
変わらんし...それじゃあ、スレッドの意味がない...
301: 03/12/09 23:19 AAS
>>297
逆だよ。ろくにコード組めないから、綺麗なコード読みたいんだよ。
まぁ清濁併せ呑む度量があれば一番なんだが、そんな人間は黙って
読んでるよ。
302
(1): 03/12/19 20:33 AAS
おまいらカーネル**ckしてますね。
303
(1): 03/12/19 21:11 AAS
>>302
そんなタイトルの日記があったな…
304: Win厨 [sage ぉ、刺身にしよか?] 03/12/19 23:11 AAS
>>303
あ、それ書いてたの、おれっちです。
最近NetBSDも忙しくて触って無いからカーネルファックもご無沙汰です。
厨房でもカーネルぐらい気合で理解できること証明したかったけど、
自分にはちょっと厳しかったです。また再開したときはよろしくです。
305: [からあげ] 04/01/14 17:37 AAS
あげてみる
306: 04/02/13 00:25 AAS
バッファをたくさんとれるようにカーネルイジってたら、

All mbuf clusters exhausted, please see tuning(7).

と出るんですが、クラスタ数を多く割り当てたり、
別の目的で利用されている、クラスタを借りたりすることはできないでしょうか?
307: 04/02/13 03:27 AAS
a.具体的に何をしていたのかを書いてみよう。
(たとえばkern.ipc.nmbclustersをほにゃららにしてみたとか
options NMBCLUSTERS = ほげ したら config におこられるとか)
b.もし、具体的な目的があるのであればそれも書いてみよう。
(たとえば 負荷が高いWebサーバーをなんとかしたいとか。)

あと環境もちゃんと書いてみよう。
308
(1): 04/02/16 05:49 AAS
一度の関数呼び出しで何回もパケットを
送出しようとするときインタフェースカードで
データパケットが落とされることってありますか??
もし落とされたときは、ip_outputの返値は返ってきますか?
また、それは「0」以外の値ですか?

ループバック関数で戻ってきたパケットは欠如していません。
別のマシンでキャプチャーすると欠落しています。
省1
309
(1): 04/02/16 06:11 AAS
>>308
当然あるだろ。ip_output は if_output 呼んでるだけだから、
あとはネットワークインターフェイス依存。
etherなら、netinet/ip_output.c、net/if_ethersubr.c、
と追いかけていって、NICのデバドラまで読んでけ。

まぁ単に送信バッファ溢れてるだけだろうがな。
310
(1): 04/02/16 06:39 AAS
>>309
なるほど。。。参考になりました。
しかし、送信バッファがあふれても ip_outputの返値が0になるというのは問題なのでは??
ソケットバッファの場合はちゃんと制御できるのに。。。
311
(1): 04/02/16 07:20 AAS
>>310
ぜんぜん問題じゃない。君の考え方のほうが問題。
ソケットは到達保証するが、IPは到達保証しない。
まだわからない?
312: 04/02/16 08:20 AAS
>>311
ソケットが送信保証をするためには、ip_outputの返値が0である必要があるし、
ip_outputの返値で0を返すためには、ether_outputの返値が0である必要がある。

ちなみに、ネットワークに出力されたあとは、ソケットも到達保証しないよ。
仮にできるのなら、何も苦労しない。。。
313: 04/02/22 01:46 AAS
PF_ROUTEソケットについて調べてるんですがどうもいまいち…
(いまいちなのはもちろん自分)
4.4BSDの本見てから、ソース見たけど????です

PF_ROUTEソケットを調べだしたのは。rtadvdで受けている
メッセージを見ていたところ、ioctl()などのリクエストでkernelから生成してるはずの
メッセージ数と合わない、こんなところからです。

外部リンク[c]:orange.kame.net
省4
314: 04/05/24 19:37 AAS

315: 04/06/12 00:45 AAS
二年半前のスレか・・・
見習いデーモンは一人前になったのだろうか。
316
(1): 04/06/12 01:22 AAS
現在、まだ半人前とみた。
317
(1): 04/08/11 20:10 AAS
>>1 の参考
...半分ぐらい読むには読んだけど、むつかし。
ので、いったん撤退して、こっち↓に着手。

Commentary on the Sixth Edition UNIX Operating System
外部リンク:www.lemis.com

そのうちリベンジの予定。
318: 04/08/12 00:25 AAS
>>317
よし!俺が今から
「The Design and Implementation of the 4.4BSD Operating System」
を読んで>>317を追い抜いてやるぜ!!
319: 04/08/18 08:41 AAS
しかし、"こっち"も...

-- m40.s --
/ initialize systems segments

mov $KISA0,r0
mov $KISD0,r1
mov $200,r4
clr r2
省6
320: 04/08/18 08:43 AAS
~~
0619:
KISA0 and KISD0 are the high core addresses
of the rst pair of kernel mode segmentation
registers. The first six kernel descriptor
registers are initialised to 077406,
which is the description of a full size, 4K word,
省11
321: 04/09/07 03:06 AAS
スタック
--interrupted routine--
ps : old PS
pc : old PC
--vector--
r0 : old r0
--trap(assembler version)--
省18
322: 05/01/28 11:37 AAS

323
(1): 2005/07/29(金)01:02 AAS
お前らXenのdom0に*BSDタンを担ぎ上げてください。
324: 2005/07/29(金)01:03 AAS
お前らdomUはなんでもいいとおもいませんか。
325
(1): 2005/10/24(月)01:11 AAS
「BSDカーネルの設計と実装 --FreeBSD詳解--」
外部リンク[html]:www.ascii.co.jp
326: 2005/11/13(日)16:17 AAS
>>325
よーし、俺のコレクションに加えちゃうぞー。
積読用に。
327: 見習デーモン [age] 2006/07/19(水)15:21 AAS
ひさしぶりに来ました。

>>316
半人前どころか四半人前ぐらいです。

スレたてたの約5年前なんですね…全く成長してないのに
自分でもショック。
仕事終わったら『BSDカーネルの設計と実装』買って帰ります…
328: 見習デーモン 2006/07/24(月)15:25 AAS
こんにちは。

上の本、順調に読み進めてます。
Netgraphハッカーになりてーなんて思ってたら
Netgraphがカーネルの中で一番ボリュームが多いって知って
さっそく挫けそうです。

OSMでバリバリ記事書く佐藤広生さんSUGEEEEEEE
329: 2006/07/26(水)02:45 AAS
ん?多分ソースツリーの構成上だけの問題だと思うけど?
今netgraph関係は一部のモジュールを除いて、
ほとんどフラットに展開されてるから。それなりに数もあるし。
見る必要があるのはng_sample.cぐらいじゃない?
330: 見習いデーモン 2006/12/28(木)17:49 AAS
緊急浮上。

2007年はこれ
外部リンク:www.packetmischief.ca
と、OpenBSDのtcpdumpのpfに関連した拡張をFreeBSDに移植します。
1-
あと 48 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.017s