Split Device Driver for Hot-Pluggable Peripheral Stability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems malfunction when hot-pluggable peripheral devices are disconnected during computer operation, as the removal of the device driver and virtual serial port can cause communication issues with applications that rely on constant com port connections.
Innovation Solution
The device driver is split into two parts: a com interface part and a driver port part, where the com interface part remains in memory even after the device is unplugged, allowing applications to continue communicating as if the device is still connected, while the driver port part handles disconnection notifications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of energy
If the device driver removes itself when a hot-pluggable device is unplugged, then system resources are freed, but application communication fails
Solution Approach 1:
The device driver is segmented into two independent parts: a communication interface part that handles application communication and a device control part that manages the physical device. When the device is unplugged, only the device control part is removed while the communication interface part remains in memory, allowing applications to continue communicating without failure.
2Adaptability or versatility
If the virtual serial port is removed when device is unplugged, then system cleanliness is improved, but application functionality breaks
Solution Approach 1:
The virtual serial port functionality is segmented into a persistent communication interface component and a transient device-specific component. The communication interface maintains the virtual port appearance for applications while the device-specific component is removed upon unplugging, achieving both system cleanliness and application continuity.
Solution Approach 2:
The communication interface part acts as an intermediary between applications and the physical device. It maintains the virtual serial port interface for applications while managing the actual device connection status, allowing applications to operate uninterrupted even when the physical device is removed.
Data Source
AI summary
An arrangement for installing function drivers that provide communication between computer applications and various peripheral devices employs a master driver that is loaded for each peripheral device. The master drivers receive notification of the connection of the respective peripheral devices and, in time, load the proper function drivers. Each function driver has (1) an interface part that communicates with an application and (2) a peripheral part that communicates with the peripheral device associated with that application. When a device is disconnected, the associated function driver is notified and, in response, the driver discontinues operations of its peripheral part and retains operation of its interface part.


