109得票2回答
什么是vdso和vsyscall?

我运行了sudo cat /proc/1/maps -vv我正在尝试理解输出结果。我看到许多共享库被映射到内存映射段,这是符合预期的。7f3c00137000-7f3c00179000 r-xp 00000000 08:01 21233923 /lib/x8...

55得票2回答
文件系统中的linux-vdso.so.1位于哪里?

我正在学习VDSO,并编写了一个调用gettimeofday()函数的简单应用程序。#define _GNU_SOURCE #include <sys/syscall.h> #include <sys/time.h> #include <stdio.h> #...

13得票2回答
gettimeofday系统调用是如何工作的?

gettimeofday是x86-86的系统调用,可以在此页面中搜索gettimeofday来查看:int gettimeofday(struct timeval *tv, struct timezone *tz); 我本以为反汇编应该很容易,只需要准备两个指针并调用相关的syscall,但它...

13得票4回答
系统CPU使用率过高是因为system.currentTimeMillis()函数。

我正在调试我们的一个Storm监督者(Wheezy机器)的高系统CPU使用率(不是用户CPU使用率)。以下是我的观察: 相关进程的perf输出: Events: 10K cpu-clock 16.40% java [kernel.kallsyms] [k] system_call_...

10得票1回答
捕获strace中的vDSO

我想知道是否有一种方法可以在strace中捕获(即观察)像gettimeofday这样的vDSO调用。 此外,是否有一种方法可以在不加载linux-vdso.so.1(使用标志或环境变量)的情况下执行二进制文件? 最后,如果我编写一个程序从辅助向量中删除linux-vdso.so.1地址,...

7得票1回答
Linux系统调用、libc、VDSO和实现解析

我解析了最后一个libc中的系统调用调用: git clone git://sourceware.org/git/glibc.git 我在sysdeps/unix/sysv/linux/i386/sysdep.h文件中发现了下面的代码: # define INTERNAL_SYSC...