これから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より伝統あるはずなのに。
お前ら*BSDのカーネルをハックしますか?
1見習デーモン
NGNG22
NGNG 2
NGNG
> これから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 でも、
だいたい似たような場所でしょ。
つーか、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 でも、
だいたい似たような場所でしょ。
4見習デーモン
NGNG >>3
アセンブラはちょっとしんどいかな、と思って。(もちろん理解する努力はしますが)
とりあえずカーネルの動きの概要がしりたいんで、init_main.cからかな?と思って読んでます。
#GLOBALでタグ作るのに意外と時間かかった・・・
アセンブラはちょっとしんどいかな、と思って。(もちろん理解する努力はしますが)
とりあえずカーネルの動きの概要がしりたいんで、init_main.cからかな?と思って読んでます。
#GLOBALでタグ作るのに意外と時間かかった・・・
5
NGNG7見習デーモン
NGNG VM_*の定義追いかけてたらCPU寄りなところまできてしまった・・・
結局>>3さんが言う通り機種依存なところも目を通してみたり。
結局>>3さんが言う通り機種依存なところも目を通してみたり。
8名無しさん@お腹いっぱい。
NGNG デバドラ書きたい君です
手っ取り早く書けるようになるには何を読むべきですか?
sys 以下、書籍、URL 問わず。
ターゲットは NetBSD/i386
手っ取り早く書けるようになるには何を読むべきですか?
sys 以下、書籍、URL 問わず。
ターゲットは NetBSD/i386
NGNG
> 手っ取り早く書けるようになるには何を読むべきですか?
似たような種類のデバイスドライバのソース。
で、ハードウェア仕様的に違う部分だけ書き換える。
できるだけ移植物じゃなくて、NetBSD で書き下ろされたデバイス、
それもバス依存部と、バス独立部がちゃんと分離されている奴を
参考にすると良い。
ただし、既にサポートされているデバイスの中に、仕様的に似たチップがある
かどうか (同じチップメーカからの新版とか、メーカは違うけど、互換品があ
るとか) を、まず最初に調べるべき。そもそもデバイスドライバを書かなくて
済むとか、既存のドライバに処理を付け加えるだけで済むことも多いので。
あと、悪魔本は全く読まくてもなんとかなる気もするけど、Bach 本 ("UNIX
カーネルの設計"、Maurice J.Bach、共立出版) くらいは常識として、ざっと
流し読みしておいた方がいいと思われ。もはや実装は全然違うので、細かい部
分は全く違うんだけど、それなりに役にたつぞ。
あとは、section 9 の man page と、一般的な基礎知識と、気合いがあれば
なんとかなるだろう。
似たような種類のデバイスドライバのソース。
で、ハードウェア仕様的に違う部分だけ書き換える。
できるだけ移植物じゃなくて、NetBSD で書き下ろされたデバイス、
それもバス依存部と、バス独立部がちゃんと分離されている奴を
参考にすると良い。
ただし、既にサポートされているデバイスの中に、仕様的に似たチップがある
かどうか (同じチップメーカからの新版とか、メーカは違うけど、互換品があ
るとか) を、まず最初に調べるべき。そもそもデバイスドライバを書かなくて
済むとか、既存のドライバに処理を付け加えるだけで済むことも多いので。
あと、悪魔本は全く読まくてもなんとかなる気もするけど、Bach 本 ("UNIX
カーネルの設計"、Maurice J.Bach、共立出版) くらいは常識として、ざっと
流し読みしておいた方がいいと思われ。もはや実装は全然違うので、細かい部
分は全く違うんだけど、それなりに役にたつぞ。
あとは、section 9 の man page と、一般的な基礎知識と、気合いがあれば
なんとかなるだろう。
10名無しさん@お腹いっぱい。
NGNG11見習デーモン
NGNG >>9
man 9 盲点でした。見てみたら情報の宝庫だ・・・
(日本語訳されてるともっとうれしいんだけど)
man のあるsectionの一覧を得る方法ってあります?
とりあえず本家サイトに一覧あったんでそれでみたんですけど、
ローカルでも何かコマンドで見れそうな気が・・・
man 9 盲点でした。見てみたら情報の宝庫だ・・・
(日本語訳されてるともっとうれしいんだけど)
man のあるsectionの一覧を得る方法ってあります?
とりあえず本家サイトに一覧あったんでそれでみたんですけど、
ローカルでも何かコマンドで見れそうな気が・・・
12sage
NGNG ところで、「お前ら○○しますか?」というフレーズが
微妙に流行ってるのか?
微妙に流行ってるのか?
NGNG
>>12
すでに微妙に流行遅れ。
すでに微妙に流行遅れ。
NGNG
NGNG
>>11 /usr/manとかそのあたり探してみれば?
16見習デーモン
NGNG >>15
鬱だ・・・単純に覗けばいいんだった・・・
init_main.c:start_init()がなんとなくわかってきた。
prepare_usermode()の定義が見つからないのが鬱だけど、そろそろ寝よう
鬱だ・・・単純に覗けばいいんだった・・・
init_main.c:start_init()がなんとなくわかってきた。
prepare_usermode()の定義が見つからないのが鬱だけど、そろそろ寝よう
レスを投稿する
ニュース
- 高市首相、円安・物価高で利上げ容認 昨年「あほ」と批判も…就任後は財政拡張批判も意識 ★2 [蚤の市★]
- 【野球】メジャー挑戦・村上宗隆 22日に期限迫るも市場沈黙… 三振率や変化球対応を懸念 「日本Uターン」悪夢が現実味 米報道 [冬月記者★]
- 松村沙友理「いい女っていっぱいおるけどいい男あんまおらんくない?30オーバーでいい男性ってみんな結婚してる」★2 [muffin★]
- TBS系「クレイジージャーニー」来年3月終了へ ゴールデン昇格当初は高視聴率も最近は低迷 [jinjin★]
- 人気YouTuberヒカル、進撃のノアとの離婚を発表! 「0日婚」からわずか6か月、スピード離婚の真相を激白 [冬月記者★]
- 【メモリー高騰】「言葉もない」3カ月で5倍も AIブームで企業取り合い PCも価格上昇か ★2 [ぐれ★]
- 36歳ママ、自宅で16歳の長男と11歳の二男と9歳の三男を斧などで殺した後に子殺し自殺 夕方帰宅したパパが家に入れず110番して発覚 東京 [597533159]
- __マッシー議員、エプスタイン全資料公開で少なくとも20人の顧客が明かされる、名前が出なければ資料は未公開 [827565401]
- 【速報】“バキ童”ぐんぴぃ、彼女ができた事をYouTubeで報告 [322239926]
- 【速報】日英GDP逆転、世界6位の経済規模に転落 [237216734]
- 【高市】処方箋1100品目を自費負担にすることを自民と維新が合意、来年実施へ「解熱剤、湿布、アレルギー、アトピー薬など」 [817260143]
- 生活保護を受けている私だけど、ふと疑問が沸いたのだがお前らさんって日々の目標とかあるの?
