Everywhere the explanation is that the IAT of a process importing functions is filled with the addresses of the exported functions from the dll it wants them from.
But in what address space are these pointers to imported functions? If it's a virtual address, that won't make sense because the importing process has its own virtual space, and those dll functions aint in it.
But protected mode doesn't allow physical addressing, so it can't be a physical address either. What gives?