これから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見習デーモン
NGNG166150=163
NGNG レスどうもです。
はやとちりしてました。iretはタスク切替えだけで使うものではなかったんですね。
インテルのマニュアルの命令リファレンスで確認しました。
でも、pushしておいたEIP(btx_hdr+0xc)がiretで特権を切替えたあと
実行される番地みたいですけど、btx_hdr+0xcって
btx_hdr: .byte 0xeb # Machine ID
.byte 0xe # Header size
.ascii "BTX" # Magic
.byte 0x1 # Major version
.byte 0x1 # Minor version
.byte BTX_FLAGS # Flags
.word PAG_CNT-MEM_ORG>>0xc # Paging control
.word break-start # Text size
.long 0x0 # Entry address ←ここですか?
特権を切替えて、また同じコードを辿ってくってこと???
はやとちりしてました。iretはタスク切替えだけで使うものではなかったんですね。
インテルのマニュアルの命令リファレンスで確認しました。
でも、pushしておいたEIP(btx_hdr+0xc)がiretで特権を切替えたあと
実行される番地みたいですけど、btx_hdr+0xcって
btx_hdr: .byte 0xeb # Machine ID
.byte 0xe # Header size
.ascii "BTX" # Magic
.byte 0x1 # Major version
.byte 0x1 # Minor version
.byte BTX_FLAGS # Flags
.word PAG_CNT-MEM_ORG>>0xc # Paging control
.word break-start # Text size
.long 0x0 # Entry address ←ここですか?
特権を切替えて、また同じコードを辿ってくってこと???
167@夜勤雀棟 ◆YaKINcTg
NGNG >>166
>でも、pushしておいたEIP(btx_hdr+0xc)がiretで特権を切替えたあと
>実行される番地みたいですけど
>pushl btx_hdr+0xc# Set EIP
これは間接参照でbtx_hdr+0xc番地の内容(long)をpushするという意味です。
# operandに'$'が付いていないことに留意。
>でも、pushしておいたEIP(btx_hdr+0xc)がiretで特権を切替えたあと
>実行される番地みたいですけど
>pushl btx_hdr+0xc# Set EIP
これは間接参照でbtx_hdr+0xc番地の内容(long)をpushするという意味です。
# operandに'$'が付いていないことに留意。
168150
NGNG >>これは間接参照でbtx_hdr+0xc番地の内容(long)をpushするという意味です。
にしても、特権切替えたあとはどのコードが走るのか全然わからないです。
EIPが0x0なんですよね?0x0番地のコードって…?
にしても、特権切替えたあとはどのコードが走るのか全然わからないです。
EIPが0x0なんですよね?0x0番地のコードって…?
NGNG
実際のバイナリをhexdumpしないとダメっすよ。ローダがいじるに決まってるでしょ。
/boot/boot2より
00000200 eb 0e 42 54 58 01 01 80 f6 0f 80 07 00 10 00 00 |..BTX...........|
<eb> btx_hdr: . byte 0xeb
<0e> . byte 0xe
<42 54 58 > . ascii "BTX"
<01> .byte 0x1
<01> . byte 0x1
<80> .byte BTX_FLAGS
<f6 0f> .word PAG_CNT-MEM_ORG>>0xc
<80 07> .word break-start
<00 10 00 00> .long 0x00001000
簡単にするならコメントを信じて次のbtxクライアント(boot2又は/boot/loader本体)
へ進めってことです。ちなみに/boot/loaderは更にbtxldrが走ったりするっす。
/boot/boot2より
00000200 eb 0e 42 54 58 01 01 80 f6 0f 80 07 00 10 00 00 |..BTX...........|
<eb> btx_hdr: . byte 0xeb
<0e> . byte 0xe
<42 54 58 > . ascii "BTX"
<01> .byte 0x1
<01> . byte 0x1
<80> .byte BTX_FLAGS
<f6 0f> .word PAG_CNT-MEM_ORG>>0xc
<80 07> .word break-start
<00 10 00 00> .long 0x00001000
簡単にするならコメントを信じて次のbtxクライアント(boot2又は/boot/loader本体)
へ進めってことです。ちなみに/boot/loaderは更にbtxldrが走ったりするっす。
170名無しさん@お腹いっぱい。
NGNG >>実際のバイナリをhexdumpしないとダメっすよ。ローダがいじるに決まってるでしょ。
おぉ、盲点でした。
こういうのはMakefileを丁寧に追っていけばわかることですか?
今ちらっとsys/boot/i386/boot2/Makefileを見たら
ORG2に代入された0x1000がbtxldコマンドのオプションとかに使われてて
「ほうほう」と思ってたんですけど。
ソースにとらわれすぎて本質を見失ってました。
でも>>169さんのおかげでまた少し前進できそうです。ありがとうございました。
おぉ、盲点でした。
こういうのはMakefileを丁寧に追っていけばわかることですか?
今ちらっとsys/boot/i386/boot2/Makefileを見たら
ORG2に代入された0x1000がbtxldコマンドのオプションとかに使われてて
「ほうほう」と思ってたんですけど。
ソースにとらわれすぎて本質を見失ってました。
でも>>169さんのおかげでまた少し前進できそうです。ありがとうございました。
171150=170
NGNG sage忘れ欝だ死のう…
172名無しさん@お腹いっぱい。
NGNG sageなくても良いんじゃない?
まぁ、強いていえば「特殊なローダを必要とする」「0x0なんて番地に飛ぼうとする」
という2点から勘を働かせた結果かな。
まぁ、強いていえば「特殊なローダを必要とする」「0x0なんて番地に飛ぼうとする」
という2点から勘を働かせた結果かな。
173見習デーモンへ
NGNG スレ キトク スグカエレ
〜ハハヨリ〜
〜ハハヨリ〜
NGNG
175名無しさん@お腹いっぱい。
NGNG もし!毒蛇に噛まれたら、
切り口を素早くナイフでえぐり、
急いで口で吸え!
ほら、言ってみろ!!
切り口を素早くナイフでえぐり、
急いで口で吸え!
ほら、言ってみろ!!
NGNG
虫歯がある時にそれやったら死んでしまう罠。
177名無しさん@お腹いっぱい。
NGNG ごめんなさい
クックロビンを殺したのは私です。。。。
クックロビンを殺したのは私です。。。。
178名無しさん@お腹いっぱい。
NGNG boot0.sコードので分らない部分があるのですが、
61 movw $LOAD,%sp # stack
66 movw %sp,%si # Source
67 movw $start,%di # Destination
68 movw $0x100,%cx # Word count
69 rep # Relocate
70 movsw # code
この部分は、MBRを再配置するコードだと考えているのですが、
アドレスLOAD(0x7c00)からの512バイトの領域を、現在実行して
いるstartで表されるアドレスからの512バイトの領域にコピーする
という意味なのでしょうか?
61 movw $LOAD,%sp # stack
66 movw %sp,%si # Source
67 movw $start,%di # Destination
68 movw $0x100,%cx # Word count
69 rep # Relocate
70 movsw # code
この部分は、MBRを再配置するコードだと考えているのですが、
アドレスLOAD(0x7c00)からの512バイトの領域を、現在実行して
いるstartで表されるアドレスからの512バイトの領域にコピーする
という意味なのでしょうか?
NGNG
>>178
MBRが読み込み・実行される際のセレクタの値
引用してるコードの上の方で設定してるセレクタの値
セレクタとオフセットから得られる実効アドレス
について調べましょう。
# 個人的には、今さらIA32の16bitモードについて勉強しても
# 得る物はあまり多くない気がする。
MBRが読み込み・実行される際のセレクタの値
引用してるコードの上の方で設定してるセレクタの値
セレクタとオフセットから得られる実効アドレス
について調べましょう。
# 個人的には、今さらIA32の16bitモードについて勉強しても
# 得る物はあまり多くない気がする。
180見習いデーモン
NGNG むしょうにデバイスドライバを書いてみたくなって、
http://www.jp.freebsd.org/www.FreeBSD.org/doc/en_US.ISO8859-1/books/developers-handbook/x10069.html
↑やってみたらすげー簡単でびっくりしました。
秋月のLCDキットとかをシリアルかなんかでつなげて、
echo "Hello" > /dev/mylcd
とかできるようになりたいんですけど、あとは↓
http://www.daemonnews.org/200010/blueprints.html
とか読んどけばできるようになりますか?
実際のドライバってどんななんだろうと思って/sys/dev/fxp/if_fxp.c
なんかのぞいてみて頭から煙だしたりしてます…
http://www.jp.freebsd.org/www.FreeBSD.org/doc/en_US.ISO8859-1/books/developers-handbook/x10069.html
↑やってみたらすげー簡単でびっくりしました。
秋月のLCDキットとかをシリアルかなんかでつなげて、
echo "Hello" > /dev/mylcd
とかできるようになりたいんですけど、あとは↓
http://www.daemonnews.org/200010/blueprints.html
とか読んどけばできるようになりますか?
実際のドライバってどんななんだろうと思って/sys/dev/fxp/if_fxp.c
なんかのぞいてみて頭から煙だしたりしてます…
NGNG
おまえの見てるのデバドラのつくり方じゃねぇじゃん。(藁
182見習いデーモン
NGNG うお、もしかして空回りですか…
でもKLDでカーネル領域に自分のコード置けるとおもうとワクワクするんですが
でもKLDでカーネル領域に自分のコード置けるとおもうとワクワクするんですが
NGNG
カーネルを再構築しても自分のコードは置けますが何か?
184名無しさん@お腹いっぱい。
NGNG >>181
ハンドブックで解説されている部分は部分はデバイスドライバ
(ツリーを形成する実デバイスを叩くもの)ではデフォルトで呼ばれる
ものがあるので気にしなくていいです。
おまいさんの目的ではどう見てもfxpを見るのは間違いだと
思いますし、そもそもシリアルならsio使ってtermios
叩いたほうが.......
で、ご希望にそえるものなら例えば、spic(4)あたり簡単そうかな?
ハンドブックで解説されている部分は部分はデバイスドライバ
(ツリーを形成する実デバイスを叩くもの)ではデフォルトで呼ばれる
ものがあるので気にしなくていいです。
おまいさんの目的ではどう見てもfxpを見るのは間違いだと
思いますし、そもそもシリアルならsio使ってtermios
叩いたほうが.......
で、ご希望にそえるものなら例えば、spic(4)あたり簡単そうかな?
NGNG
spic は デバイスの仕様が不明なので、
読んでもあまりピンとこないのでは。
読んでもあまりピンとこないのでは。
186鬼軍曹
NGNG ============ お知らせ ==================
あー、只今よりこのスレは、見習デーモンの学習を見張るスレになりました。
====================================
あー、只今よりこのスレは、見習デーモンの学習を見張るスレになりました。
====================================
187名無しさん@お腹いっぱい。
NGNG 保守
188名無しさん@お腹いっぱい。
NGNG NETBSD入れたらまずカーネルハックするぞぉ!
NGNG
おまえのいうハックってカーネルの再構築のことだろ?ぷ
NGNG
千里の道も一歩から
NGNG
千里の道を一歩だけ
NGNG
千里を歩き通すのは大変だよ……。
NGNG
千里ちゃんって誰?
NGNG
NGNG
>>196
それはちとローカルではないかと。
それはちとローカルではないかと。
NGNG
なかおくんだろ?
199山崎渉
NGNG (^^)
200山崎渉
NGNG (^^)
NGNG
202山崎渉
NGNG (^^)オレダッテ タマニハ マジデ ホシュ スルyo!!
203山崎渉
NGNG (^^)
204あぼーん
NGNGあぼーん
205あぼーん
NGNGあぼーん
206名無しさん
NGNG カーネル内で、擬似的ではないランダムな値を使うにはどうすればいいですか??
NGNG
ガイガーカウンタをつないでカウントして乱数を発生させる
NGNG
ガイガーカウンタは計数するんじゃなくて時間を測るんだよね。
線源なしのバックグラウンドが相手だとパルス数が少なすぎて
ちょっとトロい。
線源なしのバックグラウンドが相手だとパルス数が少なすぎて
ちょっとトロい。
NGNG
つーか、Intelチップセットの乱数ジェネレータとか使えばいいんでないの?
OpenBSDがサポートしてるのは知ってるけど、他はどう?
OpenBSDがサポートしてるのは知ってるけど、他はどう?
210名無しさん
NGNG カーネル内で擬似的ではないランダムな値を使うためにはどうしたらいいですか??
211名無しさん
NGNG すいません、ダブってしまいました。m(_ _)m
NGNG
NetBSD の場合、キーボードやシリアルその他のデバイスから
エントロピーを集めている。
この結果から得られた乱数は rnd_extract_data(9) で取得できる。
例えば sys/netinet/tcp_subr.c では、TCP の初期シーケンス番号
を、この乱数源から得るようになってるので、ここを見てみれば
使い方は分かる筈だ。
エントロピーを集めている。
この結果から得られた乱数は rnd_extract_data(9) で取得できる。
例えば sys/netinet/tcp_subr.c では、TCP の初期シーケンス番号
を、この乱数源から得るようになってるので、ここを見てみれば
使い方は分かる筈だ。
213名無しさん
NGNG 当方FreeBSDで「TCPの初期シーケンス番号」からヒントを得て、
そこからip識別子(ip_id)の初期化の手順へ行き、そこからシステムクロックをとるtime.tv_secを
知ることができました。
ありがとうございました。
そこからip識別子(ip_id)の初期化の手順へ行き、そこからシステムクロックをとるtime.tv_secを
知ることができました。
ありがとうございました。
NGNG
それちがうやろ....
215名無しさん
NGNG 確かに違いました。^^;
利用したい値の有効桁数が少なかったのでこれでも乱数として利用できるかと思ったんですが、
他の関数に利用する場合も考えてTCPの初期シーケンス番号の関数を利用したいと思います。
ご指摘ありがとうございました。
利用したい値の有効桁数が少なかったのでこれでも乱数として利用できるかと思ったんですが、
他の関数に利用する場合も考えてTCPの初期シーケンス番号の関数を利用したいと思います。
ご指摘ありがとうございました。
NGNG
>>210
どういう目的に使うの?
どういう目的に使うの?
NGNG
>>212
「エントロピーを集める」という表現は気持ち悪いな。NetBSDの世界では普通に使うのか?
「エントロピーを集める」という表現は気持ち悪いな。NetBSDの世界では普通に使うのか?
NGNG
別に NetBSD に限らず、乱数のセキュリティ方面への利用では、
普通に使います。試しに "collect entropy" でググってみるべし。
普通に使います。試しに "collect entropy" でググってみるべし。
219名無しさん
NGNG マルチキャスト通信においてNAKにより信頼性を持たせようと思っているのですが、
そのとき全ての受信者がNAKを出すタイミングが重なるとトラフィックが一気に
増大するのでそのタイミングをずらすために乱数が必要となりました。
アプリケーションプログラムと違い、カーネルでの乱数の求め方がわかりませんでした。^^;
そのとき全ての受信者がNAKを出すタイミングが重なるとトラフィックが一気に
増大するのでそのタイミングをずらすために乱数が必要となりました。
アプリケーションプログラムと違い、カーネルでの乱数の求め方がわかりませんでした。^^;
NGNG
ただいまBSDのKernel SoruceをReadしてるので
Context Switchするわけにはいかぬ。
Context Switchするわけにはいかぬ。
NGNG
擬似的でない乱数って…
222名無しさん@お腹いっぱい。
NGNG 自分でnumerical recipe使って書け
224*BSDハックさん
NGNG UDPのudp_inputにおいて ユニキャストとマルチキャスト・ブロードキャストで
処理が分かれいるところで、ユニキャストの方は分かるのですが、
マルチキャスト・ブロードキャストの方でUDPPCBをfor文でスキャンして
いくのはなぜですか? 同じPCBは複数存在するのですか?
処理が分かれいるところで、ユニキャストの方は分かるのですが、
マルチキャスト・ブロードキャストの方でUDPPCBをfor文でスキャンして
いくのはなぜですか? 同じPCBは複数存在するのですか?
225あぼーん
NGNGあぼーん
226あぼーん
NGNGあぼーん
NGNG
228*BSDハックさん
NGNG229*BSDハックさん
NGNG230227
NGNG >ブロードキャストの方はaliasついてりゃ
これ嘘。複数使えるけどブロードキャスト宛を受信できなかった。
↓ブロードキャストアドレス宛は受信できるけど、ユニキャストアドレス宛は受信できない。
foreach (リモートアドレス) {
udpソケット作る。
SO_REUSEADDRする。
ローカルアドレスとしてブロードキャストアドレスにbindする。
リモートアドレスにコネクトする。
}
これ嘘。複数使えるけどブロードキャスト宛を受信できなかった。
↓ブロードキャストアドレス宛は受信できるけど、ユニキャストアドレス宛は受信できない。
foreach (リモートアドレス) {
udpソケット作る。
SO_REUSEADDRする。
ローカルアドレスとしてブロードキャストアドレスにbindする。
リモートアドレスにコネクトする。
}
231あぼーん
NGNGあぼーん
232名無しさん@お腹いっぱい。
NGNG FreeBSD4.7のカーネル内の関数についてお聞きしたいんですが、
timeout(ftn, arg, to_ticks)
timeout_t *ftn;
void *arg;
register int to_ticks;
において ftnの引数の数を任意の数にしたいのですが
やり方がわかりません。どなたか教えてください。よろしくお願いします。
timeout(ftn, arg, to_ticks)
timeout_t *ftn;
void *arg;
register int to_ticks;
において ftnの引数の数を任意の数にしたいのですが
やり方がわかりません。どなたか教えてください。よろしくお願いします。
NGNG
マルチuzeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee!!!!!!!!!!!!!!!!!!!!!!!!!
234名無しさん@お腹いっぱい。
NGNG >>232
できませんが、構造体を定義して、それを確保してポインタで渡すというのは
だめですか。こんな感じ
struct example_arg {
int arg1;
char *arg2;
};
void example_ftn(void *arg)
{
struct example_arg *ea = arg;
/*Some useful stuff*/
}
できませんが、構造体を定義して、それを確保してポインタで渡すというのは
だめですか。こんな感じ
struct example_arg {
int arg1;
char *arg2;
};
void example_ftn(void *arg)
{
struct example_arg *ea = arg;
/*Some useful stuff*/
}
235あぼーん
NGNGあぼーん
236あぼーん
NGNGあぼーん
NGNG
ついに
キタ━━━━━━( )(゚ )(∀゚ )(゚∀゚)( ゚∀)( ゚)( )━━━━━━ !!!!!
【4.4BSDの設計と実装】
アスキー ISBN: 4-7561-4346-6
価格: \5,800 発売日: 2003/9/18
キタ━━━━━━( )(゚ )(∀゚ )(゚∀゚)( ゚∀)( ゚)( )━━━━━━ !!!!!
【4.4BSDの設計と実装】
アスキー ISBN: 4-7561-4346-6
価格: \5,800 発売日: 2003/9/18
NGNG
NGNG
自分で調べてみたけど、確かに出るみたいだね。
http://www.fukkan.com/sell/index.php3?mode=detail&i_no=14024728
http://www.fukkan.com/sell/index.php3?mode=detail&i_no=14024728
NGNG
復刊??
241名無しさん@お腹いっぱい。
NGNG 【4.4BSDの設計と実装】
記念あげ
記念あげ
242名無しさん@お腹いっぱい。
NGNG おまえら、洩れが書いたカーネルをハックしてどうするつもり???
243みのる様
NGNG みのるの超流行語では、
流行語大将になりそうな言葉を紹介していきたいと思います(^‥^)。
オヒャヒャ 僕、みのる様が使用している笑い方です。
(^‥^) 僕、みのる様が愛用している顔文字です。
トライブット 僕、みのる様のサイトがある所の偉い所の人。
みのる様ファン倶楽部 会員数がもう100億人超えた超えてます。
マヨネーズ 僕様の大好きなマヨネーズの一種です
スペシャルギニア 世界共通語で、誰でも分かります
応援ありがとう!!! 皆が僕様を応援してくれるから、僕様も返信します
俺様の素晴らしいサイト↓
http://minoru_god.tripod.co.jp/
UNIX板のバカドモはこっちに来て勉強しな
BYE みのる様
流行語大将になりそうな言葉を紹介していきたいと思います(^‥^)。
オヒャヒャ 僕、みのる様が使用している笑い方です。
(^‥^) 僕、みのる様が愛用している顔文字です。
トライブット 僕、みのる様のサイトがある所の偉い所の人。
みのる様ファン倶楽部 会員数がもう100億人超えた超えてます。
マヨネーズ 僕様の大好きなマヨネーズの一種です
スペシャルギニア 世界共通語で、誰でも分かります
応援ありがとう!!! 皆が僕様を応援してくれるから、僕様も返信します
俺様の素晴らしいサイト↓
http://minoru_god.tripod.co.jp/
UNIX板のバカドモはこっちに来て勉強しな
BYE みのる様
NGNG
訳が糞だって聞いたけど、そのへんも直して出るのかね?
NGNG
それはむりだろう
英語読め
英語読め
246244
NGNG 改訂するって書いてるから直るかと思ったんだけど。
http://www.fukkan.com/column/?msgdate=msg030815
で、だれかこれ読んだ人いない?
http://www.amazon.co.jp/exec/obidos/ASIN/1589950046/ref=sr_aps_eb_/249-5632084-1864337
http://www.fukkan.com/column/?msgdate=msg030815
で、だれかこれ読んだ人いない?
http://www.amazon.co.jp/exec/obidos/ASIN/1589950046/ref=sr_aps_eb_/249-5632084-1864337
NGNG
砂ちゃん監訳だから、翻訳しなおしたんじゃないか?
248あぼーん
NGNGあぼーん
249あぼーん
NGNGあぼーん
250210 ◆s3Xr4zlrpU
NGNG >>222
禿同
話は変わるけど、携帯ゲーム機"プレイステーションポータブル(PSP)
久夛良木氏は,“PSPはゲーム業界が待ち望んだ究極の携帯機”として説明。「ここまでやるかと言われるスペックを投入した」という。
発表によれば「PSP」は,曲面描画エンジン機能を有し,3Dグラフィックでゲームが楽しめる。
7.1chによるサラウンド,E3での発表以来,クリエイターたちにリクエストが高かった無線LANも搭載(802.11)。
MPEG-4(ACV)による美しい動画も楽しめるという。これによりゲーム以外の映画などでのニーズも期待する。
外部端子で将来,GPSやデジタルチューナーにも接続したいとする。
また,久夛良木氏は,繰り返し「コピープロテクトがしっかりしていること」と力説。会場に集まった開発者たちにアピールしていた。
さらに,ボタン設定なども明らかにされ,PS同様「○△□×」ボタン,R1・L1,アナログスティックが採用される。
この際、スク・エニもGBAからPSPに乗り換えたらどうでしょう。スク・エニの場合、PSPの方が実力を出しやすいような気がするんですが。
任天堂が携帯ゲーム機で圧倒的なシェアをもってるなら、スク・エニがそれを崩してみるのもおもしろいですし。かつて、PS人気の引き金となったFF7のように。
突然変なこと言い出してスマソ・・
GBAと比較してみてどうですかね?(シェアの事は抜きで)
禿同
話は変わるけど、携帯ゲーム機"プレイステーションポータブル(PSP)
久夛良木氏は,“PSPはゲーム業界が待ち望んだ究極の携帯機”として説明。「ここまでやるかと言われるスペックを投入した」という。
発表によれば「PSP」は,曲面描画エンジン機能を有し,3Dグラフィックでゲームが楽しめる。
7.1chによるサラウンド,E3での発表以来,クリエイターたちにリクエストが高かった無線LANも搭載(802.11)。
MPEG-4(ACV)による美しい動画も楽しめるという。これによりゲーム以外の映画などでのニーズも期待する。
外部端子で将来,GPSやデジタルチューナーにも接続したいとする。
また,久夛良木氏は,繰り返し「コピープロテクトがしっかりしていること」と力説。会場に集まった開発者たちにアピールしていた。
さらに,ボタン設定なども明らかにされ,PS同様「○△□×」ボタン,R1・L1,アナログスティックが採用される。
この際、スク・エニもGBAからPSPに乗り換えたらどうでしょう。スク・エニの場合、PSPの方が実力を出しやすいような気がするんですが。
任天堂が携帯ゲーム機で圧倒的なシェアをもってるなら、スク・エニがそれを崩してみるのもおもしろいですし。かつて、PS人気の引き金となったFF7のように。
突然変なこと言い出してスマソ・・
GBAと比較してみてどうですかね?(シェアの事は抜きで)
251名無しさん@お腹いっぱい。
NGNG カーネルソースをいじって printfでパラメータを表示しながら
状況を把握したいんですが、typescriptもパイプでファイルに
保存することもできないのですが、カーネルをイジっているひとは
どうやってプログラミングしてるんですか?
カーネルを扱うに当たって便利なやり方や、アプリケーションがあれば教えてください。
状況を把握したいんですが、typescriptもパイプでファイルに
保存することもできないのですが、カーネルをイジっているひとは
どうやってプログラミングしてるんですか?
カーネルを扱うに当たって便利なやり方や、アプリケーションがあれば教えてください。
NGNG
出力先をシリアルポートやら、メモリやら。
253名無しさん@お腹いっぱい。
NGNG 最近だとsimokawaさん謹製dconsって奴があるね。
特定のメモリに書いておいてIEEE1394 OHCI
ホストコントローラが勝手にDMAしにくるってやつ。
シリアルコンソールはシリアルコンソールでも
IEEE1394シリアルだから速い。
特定のメモリに書いておいてIEEE1394 OHCI
ホストコントローラが勝手にDMAしにくるってやつ。
シリアルコンソールはシリアルコンソールでも
IEEE1394シリアルだから速い。
254名無しさん@お腹いっぱい。
NGNG 別に機器を買う必要があるということですか。
kgdbはカーネルのコンパイル時にしか使えないのですか?
なんとかgdbなどのデバッグツールでカーネル関数の動きを追っていきたいのですが。。。
よろしくお願いします。
kgdbはカーネルのコンパイル時にしか使えないのですか?
なんとかgdbなどのデバッグツールでカーネル関数の動きを追っていきたいのですが。。。
よろしくお願いします。
NGNG
>>254
( ´д)ヒソ(´д`)ヒソ(д` )
( ´д)ヒソ(´д`)ヒソ(д` )
256あぼーん
NGNGあぼーん
257あぼーん
NGNGあぼーん
NGNG
知らなかったよ。kgdbを使ってカーネルのコンパイルができるのか.....
NGNG
>>254
通常のgdbのように扱えるよ
gdbのカーネルモードだからね
基本的に大きな違いはないはず。ただ、カーネルをデバッグしているから
端末が二つあった方がいいね
もし一台でデバッグできる方法があったら教えてくれ。
通常のgdbのように扱えるよ
gdbのカーネルモードだからね
基本的に大きな違いはないはず。ただ、カーネルをデバッグしているから
端末が二つあった方がいいね
もし一台でデバッグできる方法があったら教えてくれ。
NGNG
誰も自分の死体を見ることはできないというお話ですた。
NGNG
死体は見れるよ。来世で。
できないのは、自分自身の解剖。
できないのは、自分自身の解剖。
NGNG
いや、自分の癌の摘出をやった外科医はいたし、ある程度は可能だろう
NGNG
最近のはやりだとbochsやvmwareなどの仮想マシン上でデバッグする
という手もあるな。bochsにも一応デバッグ支援のための機能はある
ようだ。もっともエミュレーションに起因する問題が出る可能性は
あってどんな場合でも使えるわけじゃない。
動きを追うぐらいならそこそこ使えるかもね。
ま、詰めなきゃならん所は昔ながらのメモリ上に値を置く、かな。
という手もあるな。bochsにも一応デバッグ支援のための機能はある
ようだ。もっともエミュレーションに起因する問題が出る可能性は
あってどんな場合でも使えるわけじゃない。
動きを追うぐらいならそこそこ使えるかもね。
ま、詰めなきゃならん所は昔ながらのメモリ上に値を置く、かな。
264名無しさん@お腹いっぱい。
NGNG *BSDで、一台でもある程度はできるよ。Linuxでも最近できるかな。
options DDBを入れてCtl-Alt-Breakを押すと
ddbのモードに入る。ここで、命令ごとのステップ実行
callの終了までの実行、シンボルで指定できるブレークポイント設定
変数参照、レジスタ参照、等々。ddb(8)は印刷しといたほうがいいな。
options DDBを入れてCtl-Alt-Breakを押すと
ddbのモードに入る。ここで、命令ごとのステップ実行
callの終了までの実行、シンボルで指定できるブレークポイント設定
変数参照、レジスタ参照、等々。ddb(8)は印刷しといたほうがいいな。
265netnice
NGNG 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.
fore core-file argument of kgdb, though i've never tried.
just fyi.
レスを投稿する
ニュース
- 自民 国会議員の歳費 月額5万円引き上げ 今国会での成立目指す [どどん★]
- 志らく、高市首相を批判する人々は「日本人じゃないの?」SNSで賛否 野党議員が一斉批判「差別発言」「非国民扱いするコメンテーター」 [muffin★]
- 【サッカー】2026年W杯組み合わせ抽選 。日本は初のポット2確定! 欧州PO4チームはポット4へ [阿弥陀ヶ峰★]
- 相次ぐ中国公演中止に、シンガーソングライターらが続々高市首相に怒り表明「隣国の仲間たちに対して申し訳ない」★3 [muffin★]
- 東京・足立区の盗難車死亡ひき逃げ事件 11人死傷のうち死亡した男女の身元を発表 80代の男性と20代フィリピン国籍の女性 警視庁 [どどん★]
- 《降板の申し出が》「平手友梨奈は出ません」ムロツヨシの「弁護士ドラマ」から“バディ”が消える!連ドラ撮影中にも遅刻、欠席… [Ailuropoda melanoleuca★]
- 【おじさんのワードセンス】マツコDXが『鉄道路線の愛称がダサすぎる』と嘆いた次の日、『新サービス』が発表 [454313373]
- 小田原城行ってみようかな
- 千晴起きた
- ユニクロしゃちょーってなんか影薄いよね
- 【画像】ワイの“背中”って汚いのか?【撮りたてホヤホヤ】
- 【悲報】統一教会幹部「安倍官房長官(2005年~06年)はうちの教義を知っている。我々の味方だ」山上に話す [115996789]
