お前ら*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
40: 名無しさん@お腹いっぱい。 [sage] 01/11/18 07:11 >>39 銅像より元ネタになった報道写真のほうが 著名なんではないかと。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/40
41: デフォルトの名無しさん [sage] 01/11/18 07:13 そもそも元ネタがヤラセなんだよねw? http://mevius.5ch.net/test/read.cgi/unix/1003311346/41
42: 名無しさん@お腹いっぱい。 [sage] 01/11/18 07:17 ヤラセっつーより仕込みのような。 報道写真なんてそんなもの〜♪ http://mevius.5ch.net/test/read.cgi/unix/1003311346/42
43: 名無しさん@お腹いっぱい。 [sage] 01/11/18 10:47 そんな絵を使ってるのに日本人 committer の多い NetBSD 萌え。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/43
44: 名無しさん@お腹いっぱい。 [sage] 01/11/18 14:52 そういう絵だったのか... http://mevius.5ch.net/test/read.cgi/unix/1003311346/44
45: 名無しさん@お腹いっぱい。 [sage] 01/11/18 20:38 http://www.mainichi.co.jp/life/family/syuppan/chronicle/1945_3.html http://mevius.5ch.net/test/read.cgi/unix/1003311346/45
46: 名無しさん@お腹いっぱい。 [sage] 01/12/06 11:08 >>43-44 変えようとかいう話も以前出てた気もするけどどーなったんだろ(w http://mevius.5ch.net/test/read.cgi/unix/1003311346/46
47: 名無しさん@お腹いっぱい。 [] 01/12/31 18:04 おせーてくださいませ。 caddr_t ってどーいう意味なのですか。 ヘッダファイル見たら core address ってコメントしてあったけど、 よくわかりませんです。 ってこれはカーネルの話題じゃないのかな? http://mevius.5ch.net/test/read.cgi/unix/1003311346/47
48: 名無しさん@お腹いっぱい。 [sage] 01/12/31 18:20 >>33 ペンギンかわいいか?目にまったく生気がなくてうつむいてるし、 ぐったりしてるように見えるんだけど。カモメの方が好きだった。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/48
49: 名無しさん@お腹いっぱい。 [sage] 01/12/31 22:07 正直、linuxペンギンは気持ち悪い。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/49
50: 名無しさん@お腹いっぱい。 [] 02/01/11 07:01 >>26 SYSINITの所で、つまずいたです。 出来れば簡単に説明して頂けるとうれしいのですが。。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/50
51: 名無しさん@お腹いっぱい。 [] 02/01/13 20:52 ager http://mevius.5ch.net/test/read.cgi/unix/1003311346/51
52: 26 [] 02/01/14 18:50 以下の実験は実行ファイル形式としてELFを使用しgccをコンパイラとして 利用している事が前提である。 実験1. まず以下のソースをコンパイルし結果を見よ。 --------a.c extern int __start_b; extern int __stop_b; static int a1 __attribute__((__section__("b"))) = 0; main() { int *a; for(a = &__start_b; a < &__stop_b; a++){ printf("%d\n",*a); } } ------- 実験2 上のソースと次に挙げるソースをリンクし、結果を見よ。 ----b.c int a2 __attribute__((__section__("b")))=1; int a3 __attribute__((__section__("b")))=2; ----- 実験3 /boot/kernel/kernelと、今作った実行ファイルそれぞれに対し objdump --all-headers をかけて結果を見よ。 考察欄 http://mevius.5ch.net/test/read.cgi/unix/1003311346/52
53: 名無しさん@お腹いっぱい。 [sage] 02/01/14 18:56 $ objdump --all-headers /boot/kernel/kernel /usr/libexec/elf/objdump: /boot/kernel/kernel: No such file or directory $ uname -sr FreeBSD 4.4-RELEASE http://mevius.5ch.net/test/read.cgi/unix/1003311346/53
54: 52 [sage] 02/01/14 18:59 みゅ。悪い。4系だと/kernelだね。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/54
55: 名無しさん@お腹いっぱい。 [sage] 02/01/14 22:59 Linux(ELF)でも、(おそらく)同じ結果になった。 __attribute__や__section__の定義を探して /usr/includeなんかをfind+grepしたけど見つからない。どこかなー http://mevius.5ch.net/test/read.cgi/unix/1003311346/55
56: 52 [] 02/01/15 00:31 >>55 >>26参照。 http://mevius.5ch.net/test/read.cgi/unix/1003311346/56
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 322 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.009s