Device Proxy Multicore Isolation for OS Stability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Device-drivers, which are programs designed for specific devices and OS combinations, can occupy system resources and cause instability by integrating device control into the OS kernel, leading to increased processing loads on CPUs.
Innovation Solution
A device-proxy system utilizing a multicore microprocessor with separate processor cores for OS management and device control, where device configuration information is shared between cores via inter-processor communication, allowing the OS kernel to be notified of device status without direct CPU intervention, thereby reducing processing loads.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If device-driver is integrated into OS kernel to enable device control, then device recognition and communication capability is improved, but CPU processing load increases and system stability deteriorates
Solution Approach 1:
The system divides the device control functionality into a separate device-proxy module that runs independently from the OS kernel. The device-proxy contains the device-driver code and executes on a separate processor or processor core, segmenting the monolithic kernel structure into modular components. This allows device control capability to be maintained while preventing device-related instability from affecting the entire OS.
Solution Approach 2:
The device-driver functionality is extracted from the OS kernel and placed into a separate device-proxy execution environment. By taking out the device control code from the kernel space, the system maintains device recognition and communication capabilities while reducing the burden on the kernel and improving overall system stability.
2Adaptability or versatility
If device-driver is integrated into OS kernel to enable device control, then device control functionality is improved, but CPU processing load increases
Solution Approach 1:
The system segments CPU workload by assigning device control tasks to a separate device-proxy execution environment running on dedicated processor cores. This segmentation allows the main OS CPU to focus on high-level operations while device-specific processing is handled independently, reducing overall CPU processing load and energy consumption.
Solution Approach 2:
The device-proxy enables device control functionality to serve itself independently without requiring continuous intervention from the main OS CPU. The separate execution environment handles device communication and control autonomously, reducing the processing burden on the main CPU and improving energy efficiency.
Data Source
AI summary
A device is provided with a multicore microprocessor unit (21) capable of inter-processor communication, storage (22) for storing a file describing device configuration information, and a device interface (23). Threads of the microprocessor unit are separated: a first processor core drives the OS, and meanwhile, a second processor core drives the device driver for controlling the device interface. While sharing the device configuration information by inter-processor communication, a notification driver interface for notifying the operating system kernel of configuration information on the basis of the device configuration information is loaded and the second processor core controls the device connected to the device interface by reading a scenario sequence file into the notification driver.


