お前ら*BSDのカーネルをハックしますか? (378レス)
お前ら*BSDのカーネルをハックしますか? http://mevius.5ch.net/test/read.cgi/unix/1003311346/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
1: 見習デーモン [] 01/10/17 18:35 これからsys/kern/init_main.c読んでみます。 【参考】 ・「The Design and Implementation of the 4.4BSD Operating System」 の第2章 http://www.freebsd.org/doc/en_US.ISO8859-1/books/design-44bsd/index.html ・*BSDでのアセンブリ http://www.int80h.org/bsdasm/ なんか検索してみてもあんまりハックサイトひっかからないね。 Linuxより伝統あるはずなのに。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/1
3: 名無しさん@お腹いっぱい。 [sage] 01/10/17 20:33 > これからsys/kern/init_main.c読んでみます。 つーか、sys/arch/${MACHINE}/${MACHINE}/locore.s の start か、 せめて sys/arch/${MACHINE}/${MACHINE}/machdep.c の initなんとか() の 方を先に読んだほうがいいぞ。init_main.c の main() は、locore.s から 呼ばれてるわけだが、locore の初期化処理と initなんとか() の方が main() より先に走って、機種依存の低レベルの初期化を行うので。 上のパス名は NetBSD の場合だけど、FreeBSD や OpenBSD でも、 だいたい似たような場所でしょ。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/3
26: 名無しさん@Emacs [] 01/10/30 23:45 >>3 えっと、もうmain()って名前じゃなくてmi_startup()という 名前に代わってるよん>init_main.cの関数。 FreeBSDの場合だと、mi_startup()はSYSINITマクロで作られた配列を 順番に実行するように作られてます。割と追いにくいです。 /sys/sys/linker_set.h /sys/sys/kernel.h あたりに小細工があります。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/26
74: 名無しさん@お腹いっぱい。 [sage] 02/02/23 16:55 ドライバ書きより VFS いじる方が格が上だとでも? ただのレイヤ違いじゃん。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/74
98: 名無しさん@お腹いっぱい。 [] 02/04/09 19:11 勉強のため、FreeBSD 4.5-RELEASE 上で俺ファイルシステムを 作りたいと思っています。とりあえず、procfs のように、カーネルの 覗き穴的な fs がいいかなと。 が、サパーリわかりません。というわけで、fs のスケルトンが欲しい のですが、よいスケルトンはどれでしょうか。 ファイルサイズ的に miscfs/deadfs/ かなぁと思うのですが、deadfs は どういう目的の fs なのかがわかりません。ぜひアドバイスをお願いします。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/98
117: 学生 [] 02/05/08 23:19 >>116 どのくらい難しいのでしょうか 3年間くらい勉強すれば学生でもかけますか http://mevius.5ch.net/test/read.cgi/unix/1003311346/117
143: 名無しさん@お腹いっぱい。 [sage] 02/06/21 07:49 誰かハックしてる人いますかー。 BSDのkernel読み始めるとしたら、手をつけるところは どこがおすすめですかねぇ http://mevius.5ch.net/test/read.cgi/unix/1003311346/143
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
227: 名無しさん@お腹いっぱい。 [sage] 03/06/17 11:44 >>224 ブロードキャストの方はaliasついてりゃ、それぞれ同じポートつかえる。 マルチキャストは良くわからない。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/227
280: 名無しさん@お腹いっぱい。 [sage] 03/10/26 13:48 へたれプログラマなんですが、なんでそんなにヘッダファイルが重要なのか わからないんですが、理由を教えていただけませんか? http://mevius.5ch.net/test/read.cgi/unix/1003311346/280
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.017s