我在努力瞭解如何檢查[vsyscall]表的配置方式(本地或模擬)。該設置應該設置爲一個名爲vsyscall_mode
的變量。任何人都可以闡明如何檢查此設置?如何檢查vsyscall模式
通過重新運行cat /proc/self/maps
我觀察到[vsyscall]的內存映射區域沒有改變,[vdso]沒有改變。這是否意味着vsyscall的設置被設置爲本地?
我在努力瞭解如何檢查[vsyscall]表的配置方式(本地或模擬)。該設置應該設置爲一個名爲vsyscall_mode
的變量。任何人都可以闡明如何檢查此設置?如何檢查vsyscall模式
通過重新運行cat /proc/self/maps
我觀察到[vsyscall]的內存映射區域沒有改變,[vdso]沒有改變。這是否意味着vsyscall的設置被設置爲本地?
vsyscall模式在內核配置中設置,因此您可以選擇本地和模擬。
魚 - 殼:
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
通常在/proc/config.gz文件中可用,它將包含當前的內核配置。