メモリーオブジェクトのコマンドは、Solaris X86 または SPARC システム上で正確なカウンタに対してデフォルトで、または明示的にメモリー領域データが記録されたハードウェアカウンタ実験にのみ適用できます。詳細は、collect(1) のマニュアルページを参照してください。
メモリーオブジェクトは、キャッシュライン、ページ、メモリーバンクなどの、メモリーサブシステム内のコンポーネントです。このオブジェクトは、記録されている仮想または物理アドレスから計算されたインデックスから決定されます。仮想および物理ページに対して、8K バイト、64K バイト、512K バイト、および 4M バイトのサイズのメモリーオブジェクトが事前に定義されています。その他のオブジェクトは、memobj_define コマンドで定義できます。
所定のタイプのメモリーオブジェクトと現在のメトリックのリストを出力します。メトリックはデータ領域のリストとして、ソートされ表示されます。名前 mobj_type を直接、コマンドとして使用することもできます。
memobj コマンド内で mobj-type に使用する、既知のタイプのメモリーオブジェクトのリストを書き込みます。
新しいタイプのメモリーオブジェクトを、index-exp で指定されたオブジェクトへの VA/PA のマッピングを使用して定義します。式の構文については、式の文法に説明があります。
mobj-type は定義されていないものであり、既存のどのコマンド、またはどのインデックスオブジェクトタイプ (下記を参照) にも一致していないものにする必要があります。その名前は、すべて英数字または「_」文字で構成されている必要があり、1 文字目は英字である必要があります。
index-exp は、構文的に正しいものである必要があります。構文的に正しくない場合はエラーが返され、定義は無視されます。
<Unknown> メモリーオブジェクトのインデックスは -1 です。また、新しいメモリーオブジェクトを定義するために使用される式では、<Unknown> の認識をサポートしている必要があります。たとえば、VADDR ベースのオブジェクトの場合、式は次の形式である必要があります。
VADDR>255?expression :-1
PADDR ベースのオブジェクトの場合、式は次の形式である必要があります。
PADDR>0?expression:-1
指定されたタイプのメモリーオブジェクトを削除します。
指定されたマシンモデルで定義されているメモリーオブジェクトを作成します。model_name は、ユーザーの現在のディレクトリまたはユーザーのホームディレクトリ内のファイル名か、あるいはこのリリースで定義されているマシンモデルの名前です。マシンモデルのファイルは、.ermm の接尾辞で格納されています。machinemodel コマンドにある model_name がその接尾辞で終わらない場合は、.ermm が付加された model_name が使用されます。model_name が / で始まる場合、それは絶対パスであると見なされ、そのパスのみが (必要に応じて、.ermm を付加して) 試行されます。model_name に / が含まれている場合は、現在のディレクトリまたはユーザーのホームディレクトリを基準にしたそのパス名のみが試行されます。
マシンモデルのファイルには、コメントと mobj_define コマンドを含めることができます。その他のコマンドはすべて無視されます。machinemodel コマンドは、.er.rc ファイル内に指定できます。マシンモデルが (コマンドによって、またはマシンモデルが中に記録されている実験を読み取ることによって) ロードされた場合、以降の machinemodel コマンドは以前のマシンモデルからの定義をすべて削除します。
model_name がない場合は、すべての既知のマシンモデルのリストを出力します。model_name が長さ 0 の文字列である場合は、ロードされたマシンモデルをすべてアンロードします。