学習キット
タスクコントロールブロック(TBC)をメモリ上で確認したいのですが、どこを参照すればよいのですか?
タスクコントロールブロックは、kernel_tcb_tableというシンボル名で定義されています。
kernel_tcb_tableが定義されているファイルは、“make depend”時に生成されるkernel_tcb_cfg.cファイルです。
kernel_tcb_tableのメモリアドレスについては、他のオブジェクトによって変化するため、リンク時に生成されるMAPファイルにて kernel_tcb_tableアドレスを確認します。一部のサンプルプログラムでは、MAPファイルを出力しないようにMAKEファイルを設定 してあるため、MAPファイルの出力を有効に設定する必要があります。
MAPファイルを出力させるためには、MAKEファイルを以下のように修正してください。
修正前:
#
# 共通コンパイルオプションの定義
#
|省略
LDFLAGS:=-nostdlib $(LDFLAGS)
|省略
修正後:(LDFLAGSに-WI,-Map.jsp.mapを追加します)
#
# 共通コンパイルオプションの定義
#
|省略
LDFLAGS:=-nostdlib $(LDFLAGS)-WI,-Map.jsp.map
|省略
-WI,-Map.jsp.mapは、MAPファイルjsp.mapを生成させるオプションです。