![]() |
1
25
Windows上有几个选项。 Windows Performance Toolkit 可用于跟踪各种系统事件,包括文件I/O,并包括处理和查看这些事件的工具。您可以使用xperf开始跟踪各种类型的事件,并将其保存到ETL文件中,随后您可以使用相同的工具处理或查看该文件。 Process Monitor From SysInternals是另一个非常易于使用的选项,它使您能够快速看到系统上任何进程正在进行的所有文件和注册表访问。 http://blogs.msdn.com/carloc/archive/2008/10/31/how-to-automate-process-monitor.aspx 还演示了如何以自动化方式运行流程监视器。 如果您希望完全以编程方式完成此操作,可以使用ETW函数(StartTrace、EnableTrace等)来捕捉文件I/O事件并保存到ETL文件。样例代码 here . |
![]() |
2
5
在Windows上,您可以使用 process monitor 监视进程活动(IO和注册表)。如果你不想知道系统调用,我想这符合你的需要。 你可以使用 winapioverride32 监控API调用。 |
![]() |
3
4
Rohitab的API监视器非常适合系统调用 |
![]() |
5
2
另一个Windows API跟踪工具:
|
![]() |
6
2
另一种方法是 Deviare API Hook 截获您想要的所有用户模式系统调用。使用此框架,您可以为所有调用编写通用处理程序,因为可以使用COM接口读取参数(例如:每个参数都是一个inktparam,您可以使用inktparam.value获取值)。 另一种选择是使用 SpyStudio 来自同一家公司。此产品有一个命令行选项,用于收集不带GUI的日志。 |
![]() |
7
-5
怎么没人提到
open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3 fstat64(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 fcntl64(3, F_GETFD) = 0x1 (flags FD_CLOEXEC) getdents64(3, /* 18 entries */, 4096) = 496 getdents64(3, /* 0 entries */, 4096) = 0 close(3) = 0 fstat64(1, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f2c000 write(1, "autofs\nbackups\ncache\nflexlm\ngames"..., 86autofsA |
![]() |
itMaxence · 从c库调用objective-c方法 7 年前 |
![]() |
seladb · Makefile-目录不存在时失败-跨平台 7 年前 |
![]() |
Ryan · 调整StackLayout元素的高度 7 年前 |
![]() |
Sergei G · C printf跨平台格式,无警告[重复] 7 年前 |