← Back to context

Comment by sedatk

1 month ago

Syscall numbers shouldn't be a problem if you link against ntdll.dll.

So now you're talking about the ntdll.dll ABI instead of the kernel ABI. ntdll.dll is not the kernel.

  • NTDLL is NT’s kernel ABI, not syscalls. Nothing on Windows uses syscalls to call the kernel.

    NTDLL isn’t some higher level library. It’s just a series of entry points into NT kernel.

    • Yes, the fact that functions in NTDLL issue a syscall instruction is a platform-specific implementation detail.

...isn't that the point of this entire subthread? The kernel itself doesn't provide the stable ABI, userland code that the binary links to does.