惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

雷峰网
雷峰网
月光博客
月光博客
S
Security Affairs
宝玉的分享
宝玉的分享
D
DataBreaches.Net
MongoDB | Blog
MongoDB | Blog
Cloudbric
Cloudbric
PCI Perspectives
PCI Perspectives
B
Blog RSS Feed
腾讯CDC
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Attack and Defense Labs
Attack and Defense Labs
N
News and Events Feed by Topic
T
The Blog of Author Tim Ferriss
H
Help Net Security
Vercel News
Vercel News
W
WeLiveSecurity
U
Unit 42
S
SegmentFault 最新的问题
Microsoft Azure Blog
Microsoft Azure Blog
Google Online Security Blog
Google Online Security Blog
云风的 BLOG
云风的 BLOG
Google DeepMind News
Google DeepMind News
S
Schneier on Security
The Register - Security
The Register - Security
酷 壳 – CoolShell
酷 壳 – CoolShell
Recent Announcements
Recent Announcements
博客园 - Franky
H
Hacker News: Front Page
WordPress大学
WordPress大学
I
Intezer
M
MIT News - Artificial intelligence
博客园 - 叶小钗
The Last Watchdog
The Last Watchdog
T
Troy Hunt's Blog
Stack Overflow Blog
Stack Overflow Blog
Microsoft Security Blog
Microsoft Security Blog
L
Lohrmann on Cybersecurity
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
I
InfoQ
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Schneier on Security
Schneier on Security
P
Proofpoint News Feed
V
V2EX
Help Net Security
Help Net Security
小众软件
小众软件
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
大猫的无限游戏
大猫的无限游戏
The GitHub Blog
The GitHub Blog
F
Fortinet All Blogs

博客园 - 飘啊飘

一个精简的vi源码(2000行) gdb常用命令[转] gdb中信号的处理[转] 在linux中通过进程名获得进程id busybox0.60.3源码学习开始 pygame做的贪吃蛇 python中使用struct模块处理二进制数据 使用PYGAME开发的坦克游戏[代码][思路] 一篇很好的讲/etc/inittab的文章[转] 哲学家吃空心粉问题 《代码整洁之道》笔记之函数 使用面向对象概念优化条件判断语句的一个小应用 python生成文件树的代码 深入理解软件包的配置、编译与安装[转] pygame学习之对象移动 pywin32重启电脑 - 飘啊飘 - 博客园 解决LINUX和WINDOWS时间不一置 通过状态机实现的一个配置读取函数 UNIX基础知识--《APUE》第一章笔记
dtruss 粗糙的翻译
飘啊飘 · 2012-03-15 · via 博客园 - 飘啊飘

mac下的strace。废话不说,直接看:

dtruss(1m) USER COMMANDS dtruss(1m)

NAME
dtruss - process syscall details. Uses DTrace.
dtruss - 使用DTrace来监视系统调用

SYNOPSIS
dtruss [-acdeflhoLs] [-t syscall] { -p PID | -n name | command }

DESCRIPTION
dtruss prints details on process system calls. It is like a DTrace ver-
sion of truss, and has been designed to be less intrusive than truss.

dtruss 在进程进行系统调用的时候,进行输出。它就像DTrace版的truss,和truss相比,它
插入一些信息。

Of particular interest is the elapsed times and on cpu times, which can
identify both system calls that are slow to complete, and those which
are consuming CPU cycles.

一个有意思的功能是计算时间和cpu时间,两个调用之间哪个更慢,消耗的cpu时间的比较

Since this uses DTrace, only users with root privileges can run this
command.

只有在有root权限的终端下,可以使用DTrace。

OPTIONS
-a print all details

-b bufsize
dynamic variable buffer size. Increase this if you notice
dynamic variable drop errors. The default is "4m" for 4
megabytes per CPU.

-c print system call counts
输出系统调用数

-d print relative timestamps, us
输出时间消耗

-e print elapsed times, us
输出剩余多少时间

-f follow children as they are forked
监视fork出来的进程调用

-l force printing of pid/lwpid per line

-L don't print pid/lwpid per line

-n name
examine processes with this name

-o print on-cpu times, us
输出花在cpu上的时间

-s print stack backtraces
输出栈跟踪

-p PID examine this PID
监视某个pid

-t syscall
examine this syscall only
只监视某个系统调用

EXAMPLES
run and examine the "df -h" command
# dtruss df -h


examine PID 1871
# dtruss -p 1871


examine all processes called "tar"
# dtruss -n tar


run test.sh and follow children
# dtruss -f test.sh

run the "date" command and print elapsed and on cpu times,
# dtruss -eo date


FIELDS
PID/LWPID
Process ID / Lightweight Process ID

RELATIVE
relative timestamps to the start of the thread, us (microsec-
onds)

ELAPSD elapsed time for this system call, us

CPU on-cpu time for this system call, us

SYSCALL(args)
system call name, with arguments (some may be evaluated)


DOCUMENTATION
See the DTraceToolkit for further documentation under the Docs direc-
tory. The DTraceToolkit docs may include full worked examples with ver-
bose descriptions explaining the output.

EXIT
dtruss will run forever until Ctrl-C is hit, or if a command was exe-
cuted dtruss will finish when the command ends.

AUTHOR
Brendan Gregg [Sydney, Australia]

SEE ALSO
procsystime(1M), dtrace(1M), truss(1)


version 0.80 Jun 17, 2005 dtruss(1m)