作用: 解决linux内核与glibc的兼容问题
介绍:VDSO就是Virtual Dynamic Shared Object,即内核提供的虚拟的.so,这个.so文件不在磁盘上,而是在内核里头。内核把包含某.so的内存页在程序启动的时候映射入其内存空间,对应的程序就可以当普通的.so来使用里头的函数。比如syscall()这个函数就是在linux-vdso.so.1里头的,但是磁盘上并没有对应的文件.可以通过ldd/bin/bash看看。这样,随内核发行的libc就唯一的和一个特定版本的内核绑定到一起了。注意,VDSO只是随内核发行,没有在内核空间运行,这个不会导致内核膨胀。这样内核和libc都不需要为兼容多个不同版本的对方而写太多的代码,引入太多的bug了。