お前ら*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
2: 2 [sage] 01/10/17 20:24 2 http://mevius.5ch.net/test/read.cgi/unix/1003311346/2
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
4: 見習デーモン [] 01/10/17 20:38 >>3 アセンブラはちょっとしんどいかな、と思って。(もちろん理解する努力はしますが) とりあえずカーネルの動きの概要がしりたいんで、init_main.cからかな?と思って読んでます。 #GLOBALでタグ作るのに意外と時間かかった・・・ http://mevius.5ch.net/test/read.cgi/unix/1003311346/4
5: [] 01/10/17 21:46 >>1 そんな根性があるんだったら、フリーのエロゲー作ってよ。 OpenGLバリバリ使って動くやつをお願い。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/5
6: 見習デーモン [sage] 01/10/17 21:49 >>5 http://piza2.2ch.net/test/read.cgi/tech/996199538/l50 http://mevius.5ch.net/test/read.cgi/unix/1003311346/6
7: 見習デーモン [] 01/10/17 23:13 VM_*の定義追いかけてたらCPU寄りなところまできてしまった・・・ 結局>>3さんが言う通り機種依存なところも目を通してみたり。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/7
8: 名無しさん@お腹いっぱい。 [] 01/10/17 23:57 デバドラ書きたい君です 手っ取り早く書けるようになるには何を読むべきですか? sys 以下、書籍、URL 問わず。 ターゲットは NetBSD/i386 http://mevius.5ch.net/test/read.cgi/unix/1003311346/8
9: 名無しさん@お腹いっぱい。 [sage] 01/10/18 00:22 > 手っ取り早く書けるようになるには何を読むべきですか? 似たような種類のデバイスドライバのソース。 で、ハードウェア仕様的に違う部分だけ書き換える。 できるだけ移植物じゃなくて、NetBSD で書き下ろされたデバイス、 それもバス依存部と、バス独立部がちゃんと分離されている奴を 参考にすると良い。 ただし、既にサポートされているデバイスの中に、仕様的に似たチップがある かどうか (同じチップメーカからの新版とか、メーカは違うけど、互換品があ るとか) を、まず最初に調べるべき。そもそもデバイスドライバを書かなくて 済むとか、既存のドライバに処理を付け加えるだけで済むことも多いので。 あと、悪魔本は全く読まくてもなんとかなる気もするけど、Bach 本 ("UNIX カーネルの設計"、Maurice J.Bach、共立出版) くらいは常識として、ざっと 流し読みしておいた方がいいと思われ。もはや実装は全然違うので、細かい部 分は全く違うんだけど、それなりに役にたつぞ。 あとは、section 9 の man page と、一般的な基礎知識と、気合いがあれば なんとかなるだろう。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/9
10: 名無しさん@お腹いっぱい。 [] 01/10/18 00:54 >>8 鶏と卵になるけど、とりあえず書いちゃえば、書けますよ。 仮想デバイスとか小一時間あればできちゃうし、思ったより 敷居は低いと思います。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/10
11: 見習デーモン [] 01/10/18 01:08 >>9 man 9 盲点でした。見てみたら情報の宝庫だ・・・ (日本語訳されてるともっとうれしいんだけど) man のあるsectionの一覧を得る方法ってあります? とりあえず本家サイトに一覧あったんでそれでみたんですけど、 ローカルでも何かコマンドで見れそうな気が・・・ http://mevius.5ch.net/test/read.cgi/unix/1003311346/11
12: sage [sage] 01/10/18 01:13 ところで、「お前ら○○しますか?」というフレーズが 微妙に流行ってるのか? http://mevius.5ch.net/test/read.cgi/unix/1003311346/12
13: 名無しさん@お腹いっぱい。 [sage] 01/10/18 01:44 >>12 すでに微妙に流行遅れ。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/13
14: login:Penguin [sage] 01/10/18 01:44 こっちにも飛び火してます http://mentai.2ch.net/test/read.cgi/network/1003037538/ http://mevius.5ch.net/test/read.cgi/unix/1003311346/14
15: 名無しさん@お腹いっぱい。 [sage] 01/10/18 01:46 >>11 /usr/manとかそのあたり探してみれば? http://mevius.5ch.net/test/read.cgi/unix/1003311346/15
16: 見習デーモン [sage] 01/10/18 01:55 >>15 鬱だ・・・単純に覗けばいいんだった・・・ init_main.c:start_init()がなんとなくわかってきた。 prepare_usermode()の定義が見つからないのが鬱だけど、そろそろ寝よう http://mevius.5ch.net/test/read.cgi/unix/1003311346/16
17: あへあへ [] 01/10/23 22:25 あへ http://mevius.5ch.net/test/read.cgi/unix/1003311346/17
18: 見習デーモン [] 01/10/23 23:36 #先日の情報処理試験のためハック休んでました。今日から再開。 /sbin に myinit を作って(へろーわーるどの後whileで停止するだけ)、 start_init() の init 探すパスを myinit 指すように書き換えてみたけど、 kern_exit.c の exit1() で止まるねぇ。 どういう経路でここまで来たのかまだちょっとわからん。 global + Namazu 駆使して頑張ります。おー http://mevius.5ch.net/test/read.cgi/unix/1003311346/18
19: 見習デーモン [sage] 01/10/25 03:59 kern_exec.c: execve() の exit1() で止まることがわかった。 vmspace_destroyedフラグがたっちゃってるのね。 image_params にセットされる値追いかけなくちゃ・・・ http://mevius.5ch.net/test/read.cgi/unix/1003311346/19
20: [] 01/10/25 20:20 おやおや、こんなスレが。僕もちょうど読もうとしてた(のに2ヶ月間ほ ったらかしてた)から参加しよう。 arch/include/pmap.h 以外で、全arch共通の pmap インタフェースを記述 した文書なりファイルってありますか? http://mevius.5ch.net/test/read.cgi/unix/1003311346/20
21: 名無しさん@お腹いっぱい。 [あげ] 01/10/26 18:02 あげ http://mevius.5ch.net/test/read.cgi/unix/1003311346/21
22: 名無しさん@お腹いっぱい。 [] 01/10/26 22:27 man page に pmap(9) がある。(NetBSD-current の場合) http://mevius.5ch.net/test/read.cgi/unix/1003311346/22
23: 名無しさん@お腹いっぱい。 [] 01/10/30 17:50 BSDマガジンの第4号はカーネル初心者必携です。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/23
24: nana4 [] 01/10/30 18:31 ソフトウェアRAIDなのですが /dev/hda5 7GB (/home) /dev/hdb1 7GB (linuxraid) としたばあいで RAID0を組みたいのですが 詳しいページご存知無いでしょうか? 赤帽7.1を使っているのですが… /etc/raidtabが変なようで 起動時にこけます raidtabを一旦削除した後の再起動でまともに起動しますが RAID0は手動でしか動きません http://mevius.5ch.net/test/read.cgi/unix/1003311346/24
25: [] 01/10/30 18:34 >>22 おお、ありがとう。でもこれってuvmのやつだよね。 http://cvsweb.netbsd.org/bsdweb.cgi/sharesrc/share/man/man9/pmap.9?rev=1.9&content-type=text/x-cvsweb-markup NetBSDを読む機会があったら参考にするよ。 >>24 板&スレ違い。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/25
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
27: 名無しさん@Emacs [] 01/10/31 01:14 >>19 あのー、ルートファイルシステムは切ってあります? 切ってあればld-elf.so並びに共有ライブラリにアクセス できてないんじゃないの? http://mevius.5ch.net/test/read.cgi/unix/1003311346/27
28: 名無しさん@お腹いっぱい。 [sage] 01/11/01 15:22 ttp://unix.za.net/~kobz/freebsd.jpg デーモン萌え http://mevius.5ch.net/test/read.cgi/unix/1003311346/28
29: 名無しさん@お腹いっぱい。 [] 01/11/01 20:42 そういやビルくんを f*** する画像もどっかにあったな... しかしスレ違いでは。 GNUのウシ http://pc.2ch.net/test/read.cgi/unix/1002725230/ が適切か?(w http://mevius.5ch.net/test/read.cgi/unix/1003311346/29
30: 名無しさん@お腹いっぱい。 [sage] 01/11/03 01:52 で〜もん君のイラストって、キモくないですか? BSD関連のよさげな本には(よさげでない本にもですが)必ずあれが あって鬱になるんですけど。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/30
31: 名無しさん@お腹いっぱい。 [] 01/11/13 12:40 >>30 オレもそう思う。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/31
32: 名無しさん@お腹いっぱい。 [sage] 01/11/13 15:39 8頭身のデーモンはキモい! http://mevius.5ch.net/test/read.cgi/unix/1003311346/32
33: 名無しさん@お腹いっぱい。 [] 01/11/13 17:03 確かになー Linuxのペンギンのがかわいいよなぁ http://mevius.5ch.net/test/read.cgi/unix/1003311346/33
34: 名無しさん@お腹いっぱい。 [sage] 01/11/13 17:17 僕は linux user だがデーモン君の方が好きだな. http://mevius.5ch.net/test/read.cgi/unix/1003311346/34
35: login:Penguin [sage] 01/11/14 00:53 netbsdのサイトのメイン画面は好きだよ http://mevius.5ch.net/test/read.cgi/unix/1003311346/35
36: 名無しさん@お腹いっぱい。 [sage] 01/11/14 02:08 >>35 あれは誰かがバタくさいといってて笑った. http://mevius.5ch.net/test/read.cgi/unix/1003311346/36
37: 名無しさん@お腹いっぱい。 [sage] 01/11/15 03:03 >>36 あれはアメリカ軍の硫黄島占領をパクったもので、だいぶ前に 「他にいい絵があったら差し替えてもいいよー」 という話になってますが、いまだに代わりになる「いい絵」がないようです。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/37
38: 名無しさん@お腹いっぱい。 [sage] 01/11/17 11:18 >>37 これか。 ttp://shinkiro.com/paro/191/ ttp://www.fsinet.or.jp/~news101/usa11.htm ttp://www.ne.jp/asahi/hp/sumei/anno/art/m_iwojima.htm http://mevius.5ch.net/test/read.cgi/unix/1003311346/38
39: 名無しさん@お腹いっぱい。 [] 01/11/18 07:07 >>37 なんかのパロディっぽいとは思ってたけど、勉強になりました。 アメリカ人ならみんな知ってる有名な銅像なのだろうか。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/39
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 339 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.005s