Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

変数アクセス

[変数アクセス] ペインにはグローバル変数 (およびローカルの静的変数) が表示されます。このペインには、各グローバル変数ごとにこの変数に対して読み取り/書き込みアクセスを実行するすべての関数およびタスクが一覧で表示され、これらの属性値である値、読み取り/書き込みアクセス、共有での使用状況なども表示されます。

このペインを開くには、Polyspace® デスクトップ ユーザー インターフェイスの [検証結果の詳細] ペインで、 ボタンを選択します。

各変数とそれぞれの読み取り/書き込みアクセスについては、[変数アクセス] ペインに関連する属性があります。変数について、さまざまな属性がこの表に一覧表示されます。

属性説明
変数

変数名

ファイル変数宣言を含むソース ファイル

変数の値 (または値の範囲)

ポインター変数の場合、この列は空です。

読み取り数変数が読み取られる回数
書き込み数変数が書き込まれる回数
書き込み元タスク変数に書き込むタスクの名前
読み取り元タスク変数を読み取るタスクの名前
保護

共有変数が同時アクセスから保護されるかどうか

([使用法] 列にエントリ [共有] がある場合にのみ設定されます)

この列の可能なエントリは次のとおりです。

  • クリティカル セクション: コードのクリティカル セクションで変数へのアクセスがある場合

  • 時間的に排他: 相互に排他的なタスクで変数へのアクセスがある場合

これらのエントリについての詳細は、マルチタスキングを参照してください。

使用法タスク間で変数が共有されている場合は Shared。そうでなければ空白
変数宣言の行番号
変数宣言の列番号 (最初の行からの文字数)
データ型変数のデータ型 (C/C++ データ型または構造体/クラス)

変数名をダブルクリックして、変数に対する読み取り/書き込みアクセス操作を表示します。[変数アクセス] ペインの矢印のシンボル および は、グローバル変数に対して読み取りおよび書き込みアクセスをそれぞれ実行している関数を示します。同様に、読み取りおよび書き込みアクセスを実行しているタスクは、シンボル および によってそれぞれ示されます。タスクの詳細は、タスク (-entry-points)を参照してください。

変数へのアクセス操作について、このペインに表示されるさまざまな属性を一覧表に示します。

属性説明
変数

変数に対して読み取り/書き込みアクセスを実行している関数 (またはタスク) の名前

読み取り/書き込みアクセスを実行する関数またはタスク内の変数の値または値の範囲

ポインター変数の場合、この列は空です。

書き込み元タスクタスクの場合のみ: 変数への書き込みアクセスを実行するタスクの名前
読み取り元タスクタスクの場合のみ: 変数への読み取りアクセスを実行するタスクの名前
関数またはタスクによる変数へのアクセスが行われる行番号
関数またはタスクによる変数へのアクセスが行われる列番号
ファイル

変数へのアクセス操作を含むソース ファイル

この列に __polyspace__stdstubs.c という名前が含まれている場合、この名前は変数が標準ライブラリ関数の内部でアクセスされていることを示します。

たとえば、グローバル変数 SHR2 を考えます。

ファイル tasks1.c 内の関数 Tserver は、SHR2 に対して 2 つの操作を実行します。これは、[変数アクセス] ペインで でマークされている、変数 SHR2 の下の Tserver() の 2 つのインスタンスによって示されています。同様に、タスク server1 および server2 による 2 つの書き込みアクセスもまた でマークされ、SHR2 の下に列挙されています。

[変数アクセス] ペインの変数の配色は以下のとおりです。

  • 黒: グローバル変数。

  • オレンジ: タスク間で共有されている、同時アクセスに対して保護されていないグローバル変数。

  • オレンジ: タスク間で共有されている、同時アクセスに対して保護されたグローバル変数。

  • グレー: 宣言されているが、到達可能コードで使用されないグローバル変数。

タスクで特定の操作がグローバル変数で実行されても、当該操作が到達不能コードにある場合、そのタスクの色はグレーになります。

[変数アクセス] ペインから取得したグローバル変数および読み取り/書き込みアクセス操作の情報は、データ ディクショナリと呼ばれます。

また [変数アクセス] ペインから次のアクションを実行できます。

  •  アクセス グラフの表示

  •  構造化された変数の表示

  •  無名関数に対する操作の表示

  •  グローバル ポインターによるアクセスの表示

  •  呼び出し元および呼び出し先の表示/非表示

  •  到達不能コードでのアクセスの非表示

  •  制限