Any virtual device can provide real-mode initialization procedures to carry out initialization tasks before Windows switches to protected mode. The VMM calls the procedure as it loads the virtual device. The procedure typically checks the Windows environment, including relevant settings in the initialization files, to determine whether the virtual device should be loaded. The procedure may also return information to Windows to specify physical pages to reserve for the device's exclusive use and addresses of data items to instance for each virtual machine.