Thursday, May 25, 2006

Windows programming Interview Questions and Answers

What is the purpose of Process Handle Table?

When a process is initialized, the system allocates a handle table for it. This handle table is used only for kernel objects, not for User objects or GDI objects. When a process first initializes, its handle table is empty. Then when a thread in the process calls a function that creates a kernel object, such as CreateFileMapping , the kernel allocates a block of memory for the object and initializes it; the kernel then scans the process’s handle table for an empty entry

Name few functions that create Kernel Objects?

HANDLE CreateThread(…),HANDLE CreateFile(..),HANDLE CreateFileMapping(..)HANDLE CreateSemaphore(..)etcAll functions that create kernel objects return process-relative handles that can be used successfully by any and all threads that are running in the same process.

1 What is handle?

Handle value is actually the index into the process’s handle table that identifies where the kernel object’s information is stored.


More ......

No comments: