Talk:Kernel32

jeh's changes
Since I just made some pretty drastic changes I thought I'd better proactively describe them here:

interrupts —No. kernel32.dll is user mode and has absolutely nothing to do with interrupt handling.

When Windows boots up, kernel32.dll is loaded into a protected memory space so other applications do not take that space over. —No. kernel32.dll is mapped into user mode address space of processes that need it; it is not mapped into processes that don't need it (for example, those running native images).

On occasion, though, users may encounter the "invalid page fault" error. —Sure, but this has little to do with kernel32.dll.

''This error occurs when a program or application tries to access kernel32.dll's protected memory space. Windows will deny any such requests, and as a result, the program will crash and the user will retrieve an error message.'' —No. Applications have read access to kernel32.dll - as they must, in order to call its routines and execute its code! If you attempt write access you won't get an "invalid page fault" either. It's code, so it's set up as copy on write: You get a process-private copy of the now-modified page, other processes keep using the original, shared, read-only page. That's how it works when you set a breakpoint on an entry point in kernel32.dll, for example.

Many Kernel32.dll errors are documented in the Microsoft Knowledge Base. —Yes, but with the above deletions there's no point in this statement.

Alas the article is now even stubbier than before. I'm not sure though that kernel32.dll, user32.dll, etc., needs its own article in the first place. Jeh (talk) 23:44, 5 December 2008 (UTC)

More erroneous information:

The kernel32.dll file is like an organic kernel, it contains the operating system’s fundamental processes. -No it doesn't. kernel32.dll runs in user mode, not kernel, and merely exposes certain Win32 APIs to Win32 apps. Native images execute just fine without using kernel32.dll.

The number 32 denotes a 32-bit operating system, -originally yes, but on the 64-bit versions of Windows one of the "kernel32.dll"s contains 64-bit code but is still called kernel32.dll. This is at least misleading.

and the file extension .dll stands for dynamic link library. -yes it does, but the fact that kernel32.dll is a dynamic link library is already stated in the first sentence. Jeh (talk) 19:09, 22 December 2008 (UTC)

Proposal for deletion
This little stub of an article should be merged into Windows library files. The most I can see this article growing to is a few paragraphs (anything more is beyond WP's scope, more the province of books like Windows Internals) and those can be in the Windows library files article. Discuss? Jeh (talk) 08:24, 2 February 2010 (UTC)


 * seeing no dissent, I've turned this into an indirect to Windows library files Jeh (talk) 23:06, 12 February 2010 (UTC)