我正在努力寻找如何检查[vsyscall]表如何配置( native 或仿真)的方法。该设置应在名为vsyscall_mode的变量中进行设置。谁能阐明如何检查此设置?

通过重新运行cat /proc/self/maps,我观察到[vsyscall]的内存映射区域没有更改,[vdso]却如此。这是否意味着vsyscall的设置被设置为native?

最佳答案

vsyscall模式是在内核配置中设置的,因此您可以在 native 和仿真之间进行选择。

对于鱼 shell :

cat /usr/src/linux-headers-(uname -r)/.config | grep VSYSCALL

对于bash:
cat /usr/src/linux-headers-$(uname -r)/.config | grep VSYSCALL

在debian 8上的输出(例如):
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_X86_VSYSCALL_EMULATION=y

关于linux - 如何检查vsyscall模式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29377245/

10-08 21:30