OS Driver Template Assembly Across Linux Kernel Versions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing security systems in Linux operating systems face challenges in adapting drivers to different kernel versions, leading to discontinuous protection against information security threats due to the need for recompilation and the lack of continuous support for new kernel versions.

Innovation Solution

A method and system for loading a driver into an OS by generating a driver template and a configuration file that includes necessary information for each kernel version, allowing the driver to be assembled and loaded across various OS kernel versions, ensuring continuous protection.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a driver is compiled for a specific OS kernel version, then the driver can be loaded into that specific kernel version, but the driver cannot be loaded into other kernel versions and requires recompilation when kernel version changes

Engineering Contradiction:
Improvedriver compatibilityVSAvoidkernel version adaptability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The driver is divided into two separate components: a driver template (containing the compiled code) and a configuration file (containing version-specific parameters). This segmentation allows the template to remain universal while the configuration file adapts to different kernel versions, resolving the contradiction between compatibility and adaptability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of recompiling the entire driver for each kernel version, only the configuration file parameters are changed to match the target kernel version. The driver template remains unchanged, and only version-specific parameters in the configuration file are modified, enabling adaptation without full recompilation.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If multiple driver versions are stored for different kernel versions, then each kernel version can have its compatible driver, but the memory allocation requirement increases significantly

Engineering Contradiction:
Improvecontinuous protectionVSAvoidmemory allocation
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

A single driver template serves multiple kernel versions by combining it with different configuration files. The template contains universal code that can work across versions, while the configuration file provides version-specific adaptations. This multi-functionality eliminates the need to store multiple complete driver versions, significantly reducing memory requirements.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

Instead of storing multiple complete driver copies for different kernel versions, the system stores one driver template and multiple lightweight configuration files. The configuration files act as lightweight copies containing only the necessary version-specific information, dramatically reducing the total storage and memory requirements compared to storing full driver versions.

Inventive Principle:
Principle #26Copying

3Reliability

If the driver is recompiled for each kernel version update, then the driver remains compatible with the latest kernel, but the time and expertise required for adaptation increases

Engineering Contradiction:
Improvedriver compatibilityVSAvoidadaptation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The driver template is pre-compiled once for a base kernel version, and the configuration file is prepared with placeholders for version-specific parameters. When adapting to a new kernel version, only the configuration file needs to be updated with new version information, rather than recompiling the entire driver. This preliminary preparation significantly reduces adaptation time and required expertise.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If behavior detection components are implemented at the kernel level, then protection against information security threats is improved, but the complexity of adapting to different kernel versions increases

Engineering Contradiction:
Improvesecurity protectionVSAvoidadaptation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The version-specific adaptation logic is extracted from the kernel-level driver code and placed into a separate configuration file. This extraction separates the security-critical driver functionality from the version-dependent parameters, reducing the complexity of adapting kernel-level components while maintaining their protective function.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS20260086824A1System and method for loading a driver into an operating system
Publication Date: 2026.03.26 AO KASPERSKY LAB
  • US20260086824A1 patent drawing
  • US20260086824A1 patent drawing
  • US20260086824A1 patent drawing

AI summary

Disclosed are systems and methods for loading an operating system (OS) driver. An example method comprises: receiving, by a server, at least one version of the OS kernel; compiling the driver for each version of the OS kernel; generating a driver template by removing from at least one compiled driver information necessary to load said compiled driver into an OS; generating a configuration file that includes necessary information to load the driver on at least one version of the OS kernel, wherein the necessary information is extracted from the compiled drivers; and transmitting, by the server, the driver template and the configuration file to a OS of the client which assembles a resulting driver from the driver template and the configuration file and loads at least one resulting driver into the OS of the client.