Next: Sparclet Remote, Previous: Hitachi Remote, Up: Remote
GDBは、 MIPSのリモート・デバッグ用のプロトコルを使って、 シリアル回線に接続されたMIPSボードと通信することができます。 これは、 GDBを‘--target=mips-idt-ecoff’によって構成することによって、 利用することができます。
ターゲット・ボードとの接続を指定するには、 以下のGDBコマンドを使用します。
target mips
portgdb
を起動します。
ボードに接続するには、
‘target mips port’コマンドを使用します。
portは、
ボードに接続されているシリアル・ポートの名前です。
プログラムがまだボードにダウンロードされていないのであれば、
load
コマンドを使ってダウンロードすることができます。
その後、
通常利用できるすべてのGDBコマンドを使うことができます。
例えば以下の手順では、 デバッガを使うことによって、 シリアル・ポートを経由してターゲット・ボードに接続した後に、 progと呼ばれるプログラムをロードして実行しています。
host$ gdb prog GDB is free software and ... (gdb) target mips /dev/ttyb (gdb) load prog (gdb) run
target mips
hostname:
portnumbertarget pmon
porttarget ddb
porttarget lsi
portGDBは、 MIPSターゲットに対して、 以下の特別なコマンドもサポートしています。
set processor
argsshow processor
set processor
コマンドを使ってMIPSプロセッサの種類を設定します。
例えば、
set processor r3041
は、
3041チップで有効なCPOレジスタを使うよう、
GDBに対して通知します。
GDBが使っているMIPSプロセッサの種類を知るには、
show processor
コマンドを使います。
GDBが使っているレジスタを知るには、
info reg
コマンドを使います。
set mipsfpu double
set mipsfpu single
set mipsfpu none
show mipsfpu
以前のバージョンでは、 有効な選択肢は、 倍精度浮動小数コプロセッサを使う設定と浮動小数点コプロセッサを使わない設定だけでした。 したがって、 ‘set mipsfpu on’で倍精度浮動小数コプロセッサが選択され、 ‘set mipsfpu off’で浮動小数点コプロセッサを使わないという設定が選択されていました。
他の場合と同様、
mipsfpu
変数に関する設定は、
‘show mipsfpu’によって問い合わせることができます。
set remotedebug
nshow remotedebug
remotedebug
変数を設定することによって、
ボードとの通信に関するいくつかのデバッグ用の情報を見ることができます。
‘set remotedebug 1’によって値1
を設定すると、
すべてのパケットが表示されます。
値を2
に設定すると、
すべての文字が表示されます。
‘show remotedebug’コマンドによって、
いつでも現在の設定値を調べることができます。
set timeout
secondsset retransmit-timeout
secondsshow timeout
show retransmit-timeout
set timeout
secondsコマンドで制御することができます。
デフォルトは5秒です。
同様に、
パケットに対する確認
(ACK)
を待っている状態でのタイムアウト時間を、
set retransmit-timeout
secondsコマンドで制御することができます。
デフォルトは3秒です。
それぞれの値をshow timeout
とshow retransmit-timeout
で調べることができます
(どちらのコマンドも、
GDBが‘--target=mips-idt-ecoff’用に構成されている場合のみ使用可能です)。
set timeout
で設定されたタイムアウト時間は、
ユーザ・プログラムが停止するのをGDBが待っている間は適用されません。
この場合には、
GDBは永遠に待ち続けます。
これは、
停止するまでにプログラムがどの程度長く実行を継続するのかを知る方法がないからです。