'\" te .\" Copyright (c) 1997, 2014, Oracle and/or its affiliates.All rights reserved. .TH sotruss 1 "2014 年 4 月 23 日" "SunOS 5.11" "用户命令" .SH 名称 sotruss \- 跟踪共享库过程调用 .SH 用法概要 .LP .nf \fB/usr/bin/sotruss\fR [\fB-f\fR] [\fB-F\fR \fIbindfromlist\fR] [\fB-T\fR \fIbindtolist\fR] [\fB-o\fR \fIoutputfile\fR] executable [executable arguments...] .fi .SH 描述 .sp .LP \fBsotruss\fR 执行指定的命令并对其执行的库调用生成跟踪记录。每行跟踪输出会报告在执行每个过程调用时动态目标文件之间出现的绑定。\fBsotruss\fR 通过 \fIProcedure Linkage Table\fR 跟踪动态目标文件之间发生的所有过程调用,所以将只跟踪通过 \fIProcedure\fR \fILinkage\fR \fITable\fR 绑定的那些过程调用。请参见\fI《Oracle Solaris 11.3 Linkers and Libraries Guide》\fR。 .SH 选项 .sp .ne 2 .mk .na \fB\fB-F\fR\fI bindfromlist\fR\fR .ad .RS 19n .rt 要跟踪的库的冒号分隔列表。仅会跟踪来自这些库的调用。缺省值为仅跟踪从主可执行对象发出的调用。 .RE .sp .ne 2 .mk .na \fB\fB-T\fR\fI bindtolist\fR\fR .ad .RS 19n .rt 要跟踪的库的冒号分隔列表。仅会跟踪到这些库的调用。缺省设置是跟踪所有调用。 .RE .sp .ne 2 .mk .na \fB\fB-o\fR\fI outputfile\fR\fR .ad .RS 19n .rt \fBsotruss\fR 输出会定向到 \fIoutputfile\fR。如果该选项与 \fB-f\fR 选项结合,会将执行程序的 \fIpid\fR 放置在文件名的结尾。缺省情况下,\fBsotruss\fR 输出置于 \fBstderr\fR 中。 .RE .sp .ne 2 .mk .na \fB\fB-f\fR\fR .ad .RS 19n .rt 跟随 \fBfork()\fR 创建的所有子进程,并在每个子进程中打印 \fBtruss\fR 输出。该选项还会导致在每个 \fBtruss\fR 输出行中输出 \fIpid\fR。 .RE .SH 示例 .LP \fB示例 1 \fR\fBsotruss\fR 示例。 .sp .LP 以下是显示跟踪简单 \fBls\fR 命令的简单示例: .sp .in +2 .nf % \fBsotruss ls\fR ls -> libc.so.1:*atexit(0xef7d7d1c, 0x23c00, 0x0) ls -> libc.so.1:*atexit(0x1392c, 0xef7d7d1c, 0xef621bb0) ls -> libc.so.1:*setlocale(0x6, 0x1396c, 0xef621ba8) ls -> libc.so.1:*textdomain(0x13970, 0x1396c, 0xef621ba8) ls -> libc.so.1:*time(0x0, 0xef61f6fc, 0xef621ba8) ls -> libc.so.1:*isatty(0x1, 0xef61f6fc, 0x0) ls -> libc.so.1:*getopt(0x1, 0xeffff8fc, 0x13980) ls -> libc.so.1:*malloc(0x100, 0x0, 0x0) ls -> libc.so.1:*malloc(0x9000, 0x0, 0x0) ls -> libc.so.1:*lstat64(0x23ee8, 0xeffff7a0, 0x0) \&... ls -> libc.so.1:*printf(0x13a64, 0x26208, 0x23ef0) ls -> libc.so.1:*printf(0x13a64, 0x26448, 0x23ef0) ls -> libc.so.1:*exit(0x0, 0x24220, 0x2421c) .fi .in -2 .sp .SH 属性 .sp .LP 有关下列属性的说明,请参见 \fBattributes\fR(5): .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性类型属性值 _ 可用性developer/base-developer-utilities .TE .SH 另请参见 .sp .LP \fBld.so.1\fR(1)、\fBtruss\fR(1)、\fBwhocalls\fR(1)、\fBfork\fR(2)、\fBattributes\fR(5) .sp .LP \fI《Oracle Solaris 11.3 Linkers and Libraries Guide》\fR