ntdll.dll vs. ntoskrnl.exe

Jan Kratochvil short at ucw.cz
Sat Sep 14 18:52:22 CDT 2002


On Sun, 15 Sep 2002 01:36:36 +0200, Steven Edwards wrote:
> Jan Kratochvil wrote:
> > What are the differences between "ntdll.dll" and "ntoskrnl.exe"?
> If you are talking about Rtl and Zw functions I think that ntdll should 
> still export the same things that ntoskrnl.exe does but under a differnt 
> name. What functions are you speaking of that are missing from ntdll but 
> are in ntoskrnl?

Out of 101 functions imported from "ntoskrnl.exe" only 21 are found also in
"ntdll.dll". Missing ones are IoReleaseVpbSpinLock, IoAcquireVpbSpinLock,
KeInitializeSpinLock, MmProbeAndLockPages etc.

But I was more interested in the backround - how it is ever possible that
Windows system at all has two basic libraries from one vendor with similiar
function name interfaces with function name colliding each other?
OK, there is no technical problem as it has different namespaces but just why
they did it? And do behave functions in these two libraries on the native W32
system exactly the same? It is described just once in the documentation.  :-?

Jan Kratochvil

More information about the wine-devel mailing list