流程属性

您可以获取与 AIX 7.2 TL3中正在运行的上下文不同的进程的属性。 ProbeVue 提供了以下接口来访问属性。
get_proc(<process identifier>, PROCESS_ATTRIBUTE_NAME, <variable>);
进程标识
要收集其属性信息的进程的进程标识。
进程属性名
要收集其属性信息的进程的进程属性名称。
变量 (variable)
保存操作结果的 ProbeVue 变量。
get_thread(<thread identifier>, THREAD_ATTRIBUTE_NAME, <variable>);
线程标识
请求其属性的线程的线程标识。
线程属性名
要收集其属性的线程的线程属性名称。
变量 (variable)
保存操作结果的 ProbeVue 变量。
get_ublock(<process/thread identifier>, UBLOCK_ATTRIBUTE_NAME,<variable>);
进程/线程标识
进程/线程标识。
属性名
ublock 属性名称。
保存操作结果的 ProbeVue 变量。
get_cwd(<process> identifier , <variable>);
进程标识
进程标识。
变量 (variable)
保存操作结果的 ProbeVue 变量。
ProbeVue 变量的类型必须为 string ,长度必须大于或等于 1024。
注: 所有 ublock 属性的类型均为 string ,但 CWD 属性除外。 所有其他属性的类型均为 long long

返回值

这些接口在成功时返回 0 ,并在错误场景中返回以下错误代码。
SL 号 错误 描述
1 ERR_INTR_UBLOCK_ACCESS 无法在当前环境中访问 Ublock
2 ERR_INTR_CWD_ACCESS 无法在此环境中访问 CWD
3 ERR_INVALID_PROC 提供的进程标识无效
4 ERR_INVALID_THREAD 提供的线程标识无效
5 ERR_PROC_INVALID_STATE 进程处于无效状态
6 ERR_THREAD_INVALID_STATE 线程处于无效状态
7 ERR_VMATTACH 连接 VM 段时迂到错误
8 ERR_INVALID_STORAGE 提供的存储器无效
9 ERR_INVALID_ATTR 请求的属性无效
10 ERR_SHORT_STRING 提供的字符串是短字符串
11 ERR_GET_PATH 访问 PATH 时迂到错误
12 ERR_INSUFF_SORAGE 内部 EVM 存储空间不足
注意:
  • 在 Java 时间间隔探测器管理器或系统跟踪探测器管理器中不允许使用 get_ublockget_cwd
  • Java 探测器管理器 (JPM) 中不允许使用 get_procget_thread

流程属性

您可以使用以下进程属性来访问接口。

表 1。
进程属性名 描述
PID 进程标识
PPID 父进程标识
PGID 进程 froup 标识
PUID 实际用户标识
SUID 已保存的用户标识
PRI 进程优先级
NICE 处理尼斯值
CPU 处理器使用率
ADSPACE 进程地址空间
MAJFLT I/O 缺页故障
MINFLT 非 I/O 缺页故障
SIZE 映像的大小(以页数计)
SIGPEND 进程中暂挂的信号
SIGIGNORE 进程忽略的信号
SIGCATCH 进程捕获的信号
FORKTIME 进程的创建时间

线程属性

您可以使用以下线程属性来访问接口。

表 2。
线程属性名 描述
TPID 进程标识
POLICY 线程调度策略
TPRI 线程优先级
CPUUSAGE 按线程列出的 CPU 使用率
CPUID 运行线程的 CPU 标识
SIGMASK 线程上阻塞的信号
LOCKCOUNT 线程获取的内核锁定数
PTID 线程的 Pthread 标识
HOMESRAD 线程的 HOMESRAD
HOMECPU 线程的 HOMECPU

ublock 属性

您可以使用以下 ublock 属性来访问接口。

表 3。
ublock 属性名称 描述
TEXT 流程文本的开始
TSIZE 进程的文本大小
DATA 进程的数据开始
SDATA 当前数据大小
MDATA 进程的最大数据大小
STACK 哪一节的开始 STACK
STKMAX 堆栈的最大大小
EUID 有效用户标识
UUID 实际用户标识
EGID 有效组标识
GID 组标识
UTIME 进程用户资源使用时间(以秒计)
STIME 进程系统资源使用时间(以秒计)
MAXFD 用户中最大 fd 值
IS64U 是 64 位进程。