Peripheral Device Driver Initialization via Virtual Data Structure

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for connecting electronic devices to peripherals without a matching device driver require hardware-specific drivers and physical connection, limiting the ability to initialize devices without pre-installed drivers or signed software.

Innovation Solution

A method to create and initialize a device driver setup information file that can be modified and used to create a data structure for the peripheral bus driver, allowing device object binding and hot-plug notification without physical connection, enabling the use of unsigned drivers and transferring features from compatible devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If hardware-specific drivers are required for peripheral device connection, then device compatibility and reliability are improved, but device complexity and installation difficulty increase

Engineering Contradiction:
Improvedevice compatibilityVSAvoiddriver installation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates a virtual copy of the peripheral device by generating a device information data structure that mimics the actual device's characteristics, identifiers, and capabilities. This virtual device object allows the operating system to recognize and initialize the device without requiring physical connection or pre-installed hardware-specific drivers, thereby reducing installation complexity while maintaining compatibility through accurate device representation

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces a driver setup information file as an intermediary component that bridges the gap between the peripheral device and the operating system. This intermediate data structure contains device identifiers, compatibility information, and driver configuration data, enabling the system to match devices with appropriate drivers automatically without requiring manual installation of hardware-specific drivers

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If physical connection is required for device initialization, then device identification accuracy is improved, but ease of operation and setup time worsen

Engineering Contradiction:
Improvedevice identification accuracyVSAvoiddevice setup ease
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The patent performs preliminary device identification and configuration by creating the device information data structure before the actual peripheral device is physically connected to the system. The device identifiers, capabilities, and driver requirements are predetermined and stored in the driver setup information file, allowing the operating system to prepare device initialization in advance, thereby maintaining identification accuracy while enabling hot-plug functionality and simplifying user operation

Inventive Principle:
Principle #10Preliminary action

3Reliability

If signed drivers are required for device operation, then system security and reliability are improved, but adaptability and ease of manufacture worsen

Engineering Contradiction:
Improvesystem securityVSAvoiddriver flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent enables the system to self-configure device drivers by automatically matching device identifiers from the created device information data structure with available drivers in the operating system. The driver setup information file contains sufficient device characteristics and compatibility data to allow the system to autonomously select and initialize appropriate drivers without requiring pre-signed or pre-approved driver packages, thereby maintaining security through system-controlled driver verification while improving adaptability

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10445258B1Method for creation of device drivers and device objects for peripheral devices
Publication Date: 2019.10.15 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10445258B1 patent drawing
  • US10445258B1 patent drawing
  • US10445258B1 patent drawing

AI summary

All steps required to create and operate a peripheral device of an electronic device can be performed without the need to plug in the peripheral device to the electronic device. Setup information for a peripheral device is extracted, modified and stored to fit to a physical existent peripheral device. The modified setup information is used to create a data structure that is passed to the peripheral bus driver. As the data structure contains a hot plug notification the reception causes the peripheral bus driver to initiate the setup process for the peripheral device. As the data structure is built from setup information that is available at the electronic device no additional user action is required. The invention also allows the creation of a device object for existing signed driver packets that may not be altered.