During the Basic Open Operations, Device Path Exerciser repeatedly opens (creates) instances of the specified devices or the devices exported by the specified driver by using different methods and options.
Device Path Exerciser always performs the Basic Open Operations. You do not need to select them and you cannot exclude them from a Device Path Exerciser test session.
Device Path Exerciser performs all open operations in user mode by calling system services (ZwXxx Routines) that are appropriate to the device. If an open call returns a handle to the device, Device Path Exerciser uses the handle to perform the other device tests selected for the test session.
There are five types of Basic Open Operations:
This operation determines how the driver or file system manages open requests in its namespace. In particular, if the device does not support open requests in its namespace, the driver must prevent unauthorized access, either by failing the requests, or by setting the FILE_DEVICE_SECURE_OPEN device characteristic when it calls IoCreateDevice or IoCreateDeviceSecure to create the device object.
The parameters used in the open calls vary to accommodate the characteristics of the device and make it likely that the calls succeed. For example, if a basic open operation fails because the call did not meet the security requirements of the device, Device Path Exerciser repeats the open operation with a request for lesser access. For example, if an open operation that requested write access returns a security violation error, the open is repeated with a request for read access.