内存对象命令仅适用于在其中指定了主动回溯的硬件计数器实验,以及使用 -xhwcprof 选项(该选项在 SPARC 平台上可用)编译的文件中的对象。有关详细信息,请参见《Sun Studio 12:Fortran 用户指南》、《Sun Studio 12:C 用户指南》或《Sun Studio 12:C++ 用户指南》。
内存对象是内存子系统中的组件,如高速缓存行、页面和内存区。对象是通过从所记录的虚拟地址或物理地址计算的索引确定的。为虚拟页面和物理页面预定义了内存对象,其大小为 8KB、64KB、512KB 和 4 MB。可以使用 mobj_define 命令定义其他内存对象。
以下命令控制内存对象列表。
使用当前度量写入给定类型的内存对象的列表。所用度量和排序方式与数据空间列表相同。还可以将名称 mobj_type 直接用作命令。
写入已知类型的内存对象的列表,用法与 memobj 命令中的 mobj_type 相同。
通过将 VA/PA 映射到由 index_exp 提供的对象,定义新的内存对象类型。表达式的语法在表达式语法中介绍。
不应先定义 mobj_type。其名称必须完全由字母数字字符或 "_" 字符组成,且以字母字符开头。
index_exp 必须在语法上是正确的。如果它在语法上不正确,则将返回错误并忽略定义。
<Unknown> 内存对象的索引是 -1,而且用于定义新内存对象的表达式应该支持识别 <Unknown>。例如,对于基于 VADDR 的对象,表达式应该采用以下格式:
VADDR>255?expression :-1
而对于基于 PADDR 的对象,表达式应该采用以下格式:
PADDR>0?expression:-1