__curproc 内置变量
__curproc 是特殊内置变量,用户可以使用它访问当前进程的部分进程相关信息。 可以使用 __curproc 内置的 ->运算符来访问信息。 此内置变量不能用于 systrace、BEGIN 和 END 调查中。 它还可以用于时间间隔调查中,但只有在提到 PID 时。 此内置变量基本上提供类似于 getproc 的功能,但只限于当前进程。 可以访问的数据是
- pid
- 进程标识。
- ppid
- 父进程标识
- pgid
- 进程组标识
- uid
- 实用户标识
- suid
- 保存的用户标识
- pri
- Priority
- nice
- 细调值
- cpu
- 处理器利用率
- adspace
- 进程地址空间
- majflt
- I/O 缺页故障
- minflt
- 非 I/O 缺页故障
- 大小
- 映像的大小(以页数计)
- sigpend
- 进程上暂挂的信号
- sigignore
- 进程忽略的信号
- sigcatch
- 进程捕获的信号
- forktime
- 进程的创建时间
- threadcount
- 进程中没有线程
- cwd
- 当前工作目录。 如果空闲缺页故障上下文不可用,或者每 CPU 使用堆栈大小小于 96KB,或者在不允许缺页故障的调查中(例如,时间间隔调查),那么此内置函数将返回空字符串。
用法示例
Parent process id of the current process can be accessed using __curproc->ppid.