Initialization Order

Each virtual device has an initialization order value that specifies when the VMM should initialize the virtual device. The VMM initializes the virtual machine with the lowest value first and highest value last. If two or more devices have the same value, the VMM may initialize them in the order they appear in the SYSTEM.INI file; however, a specific order is not guaranteed.

The initialization order is important for virtual devices that need to call services in other virtual devices, or that need to intercept specified interrupts before other virtual devices. If a virtual device needs to be initialized before or after a standard virtual device, its initialization order value is created by adding or subtracting a small value from the standard virtual device's predefined initialization order symbol (defined in the VMM.INC file).

If a virtual device does not require a specific initialization order, it should use the Undefined_Init_Order symbol for its initialization order value.