发博文
个人资料
  • 博客访问:19231
  • 博文数量:9
  • 博客积分:420
  • 博客等级:民兵
  • 注册时间:2007-06-29 11:11:08
订阅我的博客
  • 订阅
  • 订阅到鲜果
  • 订阅到抓虾
  • 订阅到Google
字体大小: 博文

truss 介绍 

solaris下的truss跟linux下的strace功能一样,用来跟踪系统/库函数调用和系统接收到的信号。并把函数调用跟信号发送到标准出错上。

 

truss 使用方法

    truss  -a  -e  -f  -rall  -wall  -p  
    truss  -a  -e  -f  -rall  -wall  

    -a        显示传递给exec函数的参数
    -e        显示传递给exec函数的环境变量
    -f        显示子进程  
    -rall     显示所有读取的数据(默认32bytes)  
   -wall     显示所有写的数据(默认32bytes)  
   -p      Hook到一个已存在的进程(必须是进程的所有者或者root) 
   -d      显示跟踪进程运行的时间
   <program> 指定要运行的程序  
truss 例子
  # truss -rall -wall -f -p <PID>
  # truss -rall -wall lsnrctl start
  # truss -aef lsnrctl dbsnmp_start
 
 # truss -d date

Base time stamp:  1066157908.5731  [ Tue Oct 14 14:58:28 EDT 2003 ]
 0.0000 execve("/usr/bin/date", 0xFFBEF29C, 0xFFBEF2A4)  argc = 1
 0.0449 mmap(0x00000000, 8192, PROT_READ|PROT_WRITE|PROT_EXEC,MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFF3A0000
 0.0453 resolvepath("/usr/lib/ld.so.1", "/usr/lib/ld.so.1", 1023) = 16
 0.0457 open("/var/ld/ld.config", O_RDONLY)             Err#2 ENOENT
 0.0460 open("/usr/lib/libc.so.1", O_RDONLY)            = 3
 0.0463 fstat(3, 0xFFBEE9C4)                            = 0
 0.0464 mmap(0x00000000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xFF390000
 0.0466 mmap(0x00000000, 794624, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xFF280000
 0.0470 mmap(0xFF33A000, 24652, PROT_READ|PROT_WRITE|PROT_EXEC,MAP_PRIVATE|MAP_FIXED, 3, 696320) = 0xFF33A000
 0.0474 munmap(0xFF32A000, 65536)                       = 0
 0.0479 memcntl(0xFF280000, 113332, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
 0.0481 close(3)                                        = 0
 0.0483 open("/usr/lib/libdl.so.1", O_RDONLY)           = 3
 0.0485 fstat(3, 0xFFBEE9C4)                            = 0
 0.0487 mmap(0xFF390000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED,3, 0) = 0xFF390000
 0.0490 close(3)                                        = 0
 0.0493 open("/usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1", O_RDONLY) = 3
 0.0496 fstat(3, 0xFFBEE854)                            = 0
 0.0497 mmap(0x00000000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xFF380000
 0.0500 mmap(0x00000000, 16384, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xFF370000
 0.0502 close(3)                                        = 0
 0.0514 munmap(0xFF380000, 8192)                        = 0
 0.0521 brk(0x00022420)                                 = 0
 0.0523 brk(0x00024420)                                 = 0
 0.0526 time()                                          = 1066157908
 0.0531 open("/usr/share/lib/zoneinfo/US/Eastern", O_RDONLY) = 3
 0.0533 read(3, " T Z i f\0\0\0\0\0\0\0\0".., 8192)     = 1250
 0.0536 close(3)                                        = 0
 0.0542 ioctl(1, TCGETA, 0xFFBEEFDC)                    = 0
Tue Oct 14 14:58:28 EDT 2003
 0.0545 write(1, " T u e   O c t   1 4   1".., 29)      = 29
 0.0547 llseek(0, 0, SEEK_CUR)                          = 1829
 0.0549 _exit(0)
  

我的更多文章
亲,您还没有登录,请[登录][注册]后再进行评论