User Mode To Kernel Mode Switching

Windows operating system is divided into user mode and kernel mode space. Applications can run either in user mode or in the kernel mode in the form of a driver.  Applications running in user mode have huge stack space and most of the times drivers are implemented in kernel mode.

The applications can communicate to the drivers either

  • Calling a dynamic link library ( dll )
  • Calling a win32 API


When an application call one of the routine exposed by the dynamic link library , the dll in-turn communicates with win32 API and then the API calls the appropriate kernel mode subroutines . When we break down more in-detail , win32 API calls kernel mode client driver which communicates to class drivers provided by Microsoft.

When performing application testing , test engineers have to consider

  • Application interfaces being debugged
  • Memory usage
  • Operating system performance
  • Calls made to the kernel mode drivers
  • Context switch rate

There might be chances that application is waiting for the instruction to complete at the driver end , but the engineer end up debugging the application



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s