实际上所有程序执行都依赖于库。在包括Linux的大多数现代类Unix系统中,程序缺省使用动态连接库(DLL)进行编译。这样就可以更新某个库,所有使用该库的程序如果可能的话,都将使用新的(希望有所改进的)版本。动态连接库通常被放在若干特殊目录下。通常这些目录包括/lib、/usr/lib、有关PAM模块的/lib/security、有关X-windows的/usr/X11R6/lib和/usr/local/lib。