6.13 アプリケーションの巻き戻しについて

アプリケーションの巻き戻しは、Linux アプリケーションを実行することで、順方向だけでなく逆方向にもデバッグできるようにする DS-5デバッガ 機能です。

DS-5デバッガ のアプリケーション巻き戻し機能は、ライセンス管理されています。この機能の詳細については、サポート担当者にお問い合わせください。
逆方向のデバッグは、アプリケーションが特定の状態になった経緯を、アプリケーションを最初から繰り返し再実行することなく追跡できるので便利です。この機能を使用すると、ブレークポイントとウォッチポイントのヒットを含む、実行およびステップが可能です。アプリケーションの実行中、記録されたメモリ、レジスタ、変数の内容をいつでも表示することができます。

  • アプリケーション巻き戻しは、フォークプロセスには従いません。
  • 逆方向のデバッグでは、記録されたメモリ、レジスタ、または変数の内容の表示のみ可能です。編集または変更することはできません。
  • アプリケーション巻き戻しは、64 ビット ARMv8 アーキテクチャを除くアーキテクチャ ARMv5TE ターゲット以降をサポートしています。
アプリケーション巻き戻しは、カスタムデバッグエージェントを使用して実行中のアプリケーションを記録します。カスタムデバッグエージェントは、ターゲットにバッファを実装して、記録された実行履歴を保存します。デフォルトはストレートバッファです。このバッファは、バッファの制限に到達するまでイベントを記録し、到達したら実行を停止します。その時点で、バッファのサイズを増加させるか、バッファを循環型に変更することができます。循環バッファでは、制限に到達すると、実行が停止するのではなく、データがラップアラウンドして古いコンテンツに上書きされます。循環バッファを使用すると、バッファが制限に到達しても実行は停止されませんが、データがラップアラウンドされた位置を超えた実行履歴は失われます。

アプリケーション巻き戻しを使用してアプリケーションをデバッグすると、ターゲットのメモリ消費は増加し、アプリケーションの処理速度は低下します。正確な影響は、アプリケーションの動作によって異なります。通常、大量の I/O を実行するアプリケーションの場合、プロセスの記録中にメモリ消費が増大します。
関連する作業
2.8.1 既存のアプリケーションへの接続とアプリケーション巻き戻しセッションの開始
2.8.2 アプリケーションとアプリケーション巻き戻しサーバのターゲットシステムへのダウンロード
2.8.3 アプリケーション巻き戻しサーバの起動およびターゲット常駐アプリケーションのデバッグ
関連する参考文書
2.1 概要:DS-5デバッガにおけるデバッグ接続
非機密扱いPDF file icon PDF 版ARM DUI0446WJ
Copyright © 2010-2015 ARM.All rights reserved.