linux: vdso:-爱代码爱编程
参考
https://man7.org/linux/man-pages/man7/vdso.7.html
简介
所有的概念无一避免,都需要吃透,才能使用起来如鱼得水。
"vDSO(virtual dynamic shared object)虚拟动态库是一个小巧的共享库,内核会自动将其映射到所有的用户态进程的地址空间。就是一次加载,然后大家都可以使用。当然应用并不需要关系太多的vDSO的细节,这些调用通常是由C的库函数完成。这样应用只需调用C的标准库,就可以是由vDSO提供的功能。
那vDSO为什么会存在呢?存在这么一些内核提供的系统调用,用户侧调用的频率非常的高,这样就会导致一些性能问题的考虑,因为存在上下文的切换问题,导致额外的负担。