eBOX-3310でWEC7:カーネルトラッカ
今日はWindows Embedded Compact 7のリモートツール、特にカーネルトラッカの使い方について説明します。なお今回から使用すベースのBSPはPlatform Builder 7に標準添付されているeBox3300を使用します。
さてこれまでもPBにはリモートツールというランタイムの動作状況を確認するためにリモートツールという便利なものが含まれていました。WEC7も同様で、PB7にリモートツールが含まれています。「Tools」-「Remote Tools」を選択するように、選択できるリモートツールが表示れます。ここでWEC7から追加になったのはTimeline Viewer(Kernel Tracker、Performance Monitor、Power Monitor)です。またPB6からドロップしたものとしてSpyがあります。
さてこのリモートツールはTimeline Viewerを除き、基本的にこれまでと同様の使い方です。例えばターゲットデバイスのスクリーンショットを表示する「Zoom」を使ってみます。「Tools」-「Remote Tools」-「Zoom」を選択すると、接続するターゲットデバイスの選択画面が表示されます。ここでは「Windows CE」を開き、「(auto)Ether1」を選択します。
しばらくすると、ホストPC上にターゲットデバイスのスクリーンショットが以下のように表示されます。
次にカーネルトラッカを表示してみます。Zoomと同様に「Tools」-「Remote Tools」-「Kernel Tracker」を選択します。するとターゲットデバイスとの接続確認のダイアログは表示されずに以下のようなRemote Tools Frameworkウィンドウが表示され、PB6までは見たことのない画面が表示されます。そしてファイル入力を要求するダイアログが表示されるだけです。実はPB7からはカーネルトラッカはTimeline Viewerという事で、出力されたデータを表示するだけのツールになってしまったようです。
このカーネルトラッカに状態遷移のデータを表示するためには、PB6までとはビルド時に異なる設定が必要です。「Project」-「Properties」を選択し、開いたダイアログボックスから「Configuration Properties」を開き、「Build Options」を選択します。オプションの中から「Flush tracked events to release directory」をYesにします。そしてmakeimgコマンドを実行し、新しいNk.binを作ります。これで準備は終了です。
カーネルトラッカのログを取るためには、ここでビルドしたNk.binをダウンロードし、実行します。この時、カーネルトラッカのログとして%_FLATRELEASEDIR%にcelog.clgというファイルが出力されます。本当であれば、実行時にこのcelog.clgを参照できればいいのですが、どうもデバイスをデタッチしてからでないと読むことができないようです。ここは注意点ですね。
さてある程度動作させてから、「Target」-「Detach Device」を選択し、ターゲットデバイスを停止した後、カーネルトラッカを起動します。そしてcelog.clgを選択すると、以下のようにログを読み込み、スレッド、イベント等の遷移を見ることができるようになります。
なおeBox3310はシングルコアですので、このスクリーンショットではわかりませが、マルチコアの場合はコアを選択するタブが現れます。異なるコアを選択することで、一画面に複数のコアを表示できることは確認済みです。
« Windows Embedded Compact 7の参考書 | Main | eBOX-3310でWEC7:SDKのビルド »
The comments to this entry are closed.
« Windows Embedded Compact 7の参考書 | Main | eBOX-3310でWEC7:SDKのビルド »
Comments