在Windows中一个正在被执行的程序被称作是一个进程。每一个应用程序(EXE)都将以一个单独的进程运行,每一个进程都有一个4GB的地址空间。一个进程中的一个地址同另外一个进程中的某个地址是不同的。由于指针在不同的地址空间中不起作用,因此不能将一个指针从一个进程穿到另一个进程。为理解这一点,可以类比一下街道地址。例如某大街369,它可能位于北京某个区,也可能位于杭州。若没有指定城市名字,这个地址实际上是没有意义的。计算机中的进程相当于城市。两个不同进程中的指针可以包含相同的地址值,但它们实际上指向的是不同的物理内存。
所幸的是,动态链接库将驻留在所链接的应用程序的地址空间中,由于DLL和EXE共享同一进程,因此它们也可以共享同一地址空间。由于这个原因,DLL经常被称作是进程中服务器。