Linux中ltrace命令有什么用
发表于:2025-11-20 作者:千家信息网编辑
千家信息网最后更新 2025年11月20日,小编给大家分享一下Linux中ltrace命令有什么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Linux常用命令lt
千家信息网最后更新 2025年11月20日Linux中ltrace命令有什么用
小编给大家分享一下Linux中ltrace命令有什么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
Linux常用命令ltrace命令 是用来跟踪进程调用库函数的情况。
ltrace
用来跟踪进程调用库函数的情况
语法
ltrace [option ...] [command [arg ...]]
选项
-a 对齐具体某个列的返回值。 -c 计算时间和调用,并在程序退出时打印摘要。 -C 解码低级别名称(内核级)为用户级名称。 -d 打印调试信息。 -e 改变跟踪的事件。 -f 跟踪子进程。 -h 打印帮助信息。 -i 打印指令指针,当库调用时。 -l 只打印某个库中的调用。 -L 不打印库调用。 -n, --indent=NR 对每个调用级别嵌套以NR个空格进行缩进输出。 -o, --output=file 把输出定向到文件。 -p PID 附着在值为PID的进程号上进行ltrace。 -r 打印相对时间戳。 -s STRLEN 设置打印的字符串最大长度。 -S 显示系统调用。 -t, -tt, -ttt 打印绝对时间戳。 -T 输出每个调用过程的时间开销。 -u USERNAME 使用某个用户id或组ID来运行命令。 -V, --version 打印版本信息,然后退出。 -x NAME treat the global NAME like a library subroutine.(求翻译)
实例
最基本应用,不带任何参数:
[guest@localhost tmp]$ ltrace ./a.out __libc_start_main(0x80484aa, 1, 0xbfc07744, 0x8048550, 0x8048540 printf("no1:%d \t no2:%d \t diff:%d\n", 10, 6, 4no1:10 no2:6 diff:4 ) = 24 printf("no1:%d \t no2:%d \t diff:%d\n", 9, 7, 2no1:9 no2:7 diff:2 ) = 23 printf("no1:%d \t no2:%d \t diff:%d\n", 8, 8, 0no1:8 no2:8 diff:0 ) = 23 --- SIGFPE (Floating point exception) --- +++ killed by SIGFPE +++输出调用时间开销:
[guest@localhost tmp]$ ltrace -T ./a.out __libc_start_main(0x80484aa, 1, 0xbf81d394, 0x8048550, 0x8048540 printf("no1:%d \t no2:%d \t diff:%d\n", 10, 6, 4no1:10 no2:6 diff:4 ) = 24 printf("no1:%d \t no2:%d \t diff:%d\n", 9, 7, 2no1:9 no2:7 diff:2 ) = 23 printf("no1:%d \t no2:%d \t diff:%d\n", 8, 8, 0no1:8 no2:8 diff:0 ) = 23 --- SIGFPE (Floating point exception) --- +++ killed by SIGFPE +++显示系统调用:
[guest@localhost tmp]$ ltrace -S ./a.out SYS_brk(NULL) = 0x9e20000 SYS_access(0xa4710f, 4, 0xa4afc0, 0, 0xa4b644) = 0 SYS_open("/etc/ld.so.preload", 0, 02) = 3 SYS_fstat64(3, 0xbfbd7a94, 0xa4afc0, -1, 3) = 0 SYS_mmap2(0, 17, 3, 2, 3) = 0xb7f2a000 SYS_close(3) = 0 SYS_open("/lib/libcwait.so", 0, 00) = 3 SYS_read(3, "\177ELF\001\001\001", 512) = 512 SYS_fstat64(3, 0xbfbd76fc, 0xa4afc0, 4, 0xa4b658) = 0 SYS_mmap2(0, 4096, 3, 34, -1) = 0xb7f29000 SYS_mmap2(0, 5544, 5, 2050, 3) = 0x423000 SYS_mmap2(0x424000, 4096, 3, 2066, 3) = 0x424000 .............省去若干行以上是"Linux中ltrace命令有什么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
命令
时间
进程
跟踪
输出
信息
篇文章
内容
函数
开销
情况
显示系统
用户
系统
帮助
低级
最大
不怎么
事件
内核
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库检索漏检
腾讯游戏网络技术
江苏软件开发者怎么报价
数据库无法进行代码查询
衡水专业软件开发服务商
无线网络安全与对策
软件开发团队成长计划
光猫如何用usb和硬盘组建服务器
无线网络技术全部实验报告
宁夏银行软件开发工资待遇
es数据库如何配置
服务器打包报sass错误
企业发生网络安全事件原因
为局域网设置代理服务器怎么做
服务器万能驱动
南方软件怎样提取数据库
intel联合服务器
mtl社区服务器
南昌公司软件开发哪家好
国家网络安全技术委员会官网
人类一败涂地怎么连接我的服务器
网络安全信息流转
网络安全进校园视频小学生版
法院网络安全工作投入
集成测试依据软件开发的
网络安全防守方面
上位机软件开发可以做兼职吗
浅谈校园网络安全及防护措施
看尚电视网络无法连接到服务器
重庆软件开发定制公司排名