[Linux] vdso 32bit vs 64bit

不实践还真是不知道,vdso,在32位和64位之间还有差别。

https://github.com/mzhan017/dump-vdso

32bit的vdso提供的接口函数:

复制代码
mzhan017@:/mnt/d/dump-vdso$ ./dump-vdso-32 -s
Name                                     Address      Offset
----                                     -------      ------
__kernel_vsyscall                        0xf7fa1560 0x00000560
__vdso_gettimeofday                      0xf7fa1790 0x00000790
__vdso_clock_getres                      0xf7fa2520 0x00001520
__vdso_clock_gettime64                   0xf7fa2030 0x00001030
__kernel_sigreturn                       0xf7fa1580 0x00000580
__vdso_time                              0xf7fa1b40 0x00000b40
__kernel_rt_sigreturn                    0xf7fa1590 0x00000590
__vdso_clock_gettime                     0xf7fa1b80 0x00000b80
__vdso_getcpu                            0xf7fa25b0 0x000015b0

64bit提供的

复制代码
mzhan017@:/mnt/d/dump-vdso$ ./dump-vdso -s
Name                                     Address            Offset
----                                     -------            ------
clock_gettime                            0x00007fffc1f8fa70 0x00000a70
__vdso_gettimeofday                      0x00007fffc1f8f7b0 0x000007b0
clock_getres                             0x00007fffc1f8fdd0 0x00000dd0
__vdso_clock_getres                      0x00007fffc1f8fdd0 0x00000dd0
gettimeofday                             0x00007fffc1f8f7b0 0x000007b0
__vdso_time                              0x00007fffc1f8fa40 0x00000a40
__vdso_sgx_enter_enclave                 0x00007fffc1f8fe70 0x00000e70
time                                     0x00007fffc1f8fa40 0x00000a40
__vdso_clock_gettime                     0x00007fffc1f8fa70 0x00000a70
__vdso_getcpu                            0x00007fffc1f8fe40 0x00000e40
getcpu                                   0x00007fffc1f8fe40 0x00000e40

差异介绍:

https://zhuanlan.zhihu.com/p/436454953

相关推荐
旖旎夜光2 小时前
Linux(13)(上)
linux·网络
忧郁的橙子.2 小时前
26期_01_Pyhton linux基本命令
linux·运维·服务器
郝学胜-神的一滴2 小时前
深入解析Linux网络编程之bind函数:从基础到实践的艺术
linux·服务器·网络·c++·websocket·程序人生
西京刀客2 小时前
macOS 打出来的 tar 包,Linux 常见告警(tar 包里带了 macOS 的扩展属性(xattr))
linux·运维·macos
mango_mangojuice2 小时前
Linux学习笔记(角色,权限管理)1.21
linux·笔记·学习
遇见火星2 小时前
Linux综合性能监控工具dstat命令详解
linux·服务器·php·dstat
相思难忘成疾2 小时前
通向HCIP之路:第三步:动态路由协议OSPF(全)
服务器·网络·智能路由器·hcip
咕噜咕噜啦啦3 小时前
ROS入门
linux·vscode·python
我送炭你添花3 小时前
开源TR-069 ACS(自动配置服务器)GenieACS 的四个主要模块详细介绍
运维·服务器·开源