メインコンテンツ

グローバル変数リストのエクスポート

コードに含まれるグローバル変数のリストを、タブ区切りのテキスト ファイルまたは MATLAB® table にエクスポートできます。テキスト ファイルまたは table には、Polyspace® ユーザー インターフェイスの [変数アクセス] ペインと同じ情報が含まれます。

テキスト ファイルを使用すると、次のことができます。

  • グローバル変数に関するグラフや統計を生成する。たとえば、同時アクセスから保護されていない共有されるグローバル変数の割合を表示できます。

  • 範囲情報を使用してグローバル変数の外部制約を作成する。たとえば、グローバル変数の抽出された範囲についてのみ、コードに特定のランタイム エラーがないことをレポートできます。

    また、この範囲を使用して、以降の検証または他のモジュールの検証に対する外部制約を指定できます。Polyspace 解析の外的制約の指定を参照してください。

変数リストのテキスト ファイルへのエクスポート

ユーザー インターフェイスまたはコマンド ラインから結果をエクスポートできます。

ユーザー インターフェイスコマンド ライン
  1. 検証結果を開きます。

  2. [レポート][エクスポート][変数アクセスのエクスポート] を選択します。Polyspace Platform ユーザー インターフェイスを使用している場合は、[レポート][変数アクセスのエクスポート] を選択します。

  3. テキスト ファイルを保存する場所を選択し、[OK] をクリックします。

polyspace-report-generator コマンドと適切なオプションを使用します。

以下は使用可能なオプションです。

  • -generate-variable-access-file:テキスト ファイルを生成しなければならないことを指定します。

  • -results-dir folder_paths:解析結果が保存されているフォルダーへのパス。フォルダー パスを指定しない場合は、現在のフォルダーにある解析結果が使用されます。

    複数の解析に対してテキスト ファイルを生成するには、コンマの後ろにスペースを配置しないコンマ区切りのリストとして folder_paths を指定します。以下に例を示します。

    C:\My_project\Module_1\results,C:\My_project\Module_2\Results

    テキスト ファイルをマージするには、関数 join を使用します。

  • -set-language-english:既定のレポートが別の言語の場合に英語のレポートを生成するには、このオプションを使用します。オペレーティングシステムの表示言語 (Windows®) またはロケール (Linux®) によってレポートの既定の言語が決まります。

変数リストの MATLAB table へのエクスポート

テキスト ファイルの代わりに、Polyspace の解析結果を MATLAB table に読み取ることができます。variableAccessを参照してください。

エクスポートした変数リストの表示

テキスト ファイルまたは table には、ユーザー インターフェイスの [変数アクセス] ペインで使用可能な結果情報が含まれます。

たとえば、[変数アクセス] ペインに、変数 SHR が次の情報と一緒に表示されるとします。

タブ区切りのテキスト ファイルにこの情報をエクスポートして Excel® で開いた場合、同じ情報が表示されます。一部の情報を以下に示します。

変数データ型アクセス の値読み取り数書き込み数書き込み元タスク読み取り元タスク保護ファイル関数拡張子
SHRint32集計0 または 2212server1 server2tregulateクリティカル セクション3011tasks1.c c
SHR 書き込み0     3011tasks1.c_init_globals()c
SHR 書き込み22     818tasks1.cTserver()c
SHR 読み取り0 または 22     5314tasks1.cinitregulate()c

Polyspace デスクトップ ユーザー インターフェイスの [変数アクセス]も参照してください。

[変数アクセス] ペインとテキスト ファイル (または MATLAB table) の間の表示の違いを以下にいくつか示します。

  • テキスト ファイルの [アクセス] 列は、その行に示すのが変数に関する情報 ([集計]) なのか、変数に対する操作 ([書き込み] または [読み取り]) なのかを表す。

  • テキスト ファイルの [関数] 列は、その変数を読み取る関数またはその変数に書き込む関数を示す ([変数アクセス] ペインの および )。

  • タスクからの読み取り操作および書き込み操作 ([変数アクセス] ペインの および ) に対応する行はない。この情報は、テキスト ファイルの [書き込み元タスク] 列および [読み取り元タスク] 列 (MATLAB table の Tasks_Write 列と Tasks_Read 列) で参照できる。

  • [変数アクセス] ペインの色は、[到達不能] 列と [保護] 列を通じて次のように表される。

    • 共有される変数が複数のタスク内で共通の保護を使わずにアクセスされる場合、その変数は [変数アクセス] ペインでオレンジで色付けされる。テキスト ファイルでは、[保護] 列に [非保護] が示される。

    • 共有される変数が複数のタスク内でアクセスされるが共通の保護を使用する場合、その変数は [変数アクセス] ペインでグリーンで色付けされる。テキスト ファイルでは、[保護] 列に [保護] が示される。

    • 共有される変数がまったくアクセスされない場合、その変数は [変数アクセス] ペインでグレーで色付けされる。テキスト ファイルでは、[到達不能] 列に [到達不能] が示される。

  • テキスト ファイルの [可能性] 列は、ポインターによる読み取り操作または書き込み操作を示す ([変数アクセス] ペインの または )。ポインターによる操作については、列に [可能なアクセス] が示される。

参考

トピック