Container-Based Kernel Driver Updates Without Privileged Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for updating kernel drivers on self-service terminals and POS terminals require privileged access, leading to security risks and inefficiencies, and lack flexibility across varying operating systems and kernel versions.

Innovation Solution

A software container utilizing a Dynamic Kernel Make System (DKMS) within an INIT container dynamically builds and installs target drivers without privileged access, ensuring compatibility and up-to-date drivers across different environments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If privileged access is used to install kernel drivers, then driver installation capability is improved, but security is worsened

Engineering Contradiction:
Improvedriver installation capabilityVSAvoidsecurity risk
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The patent introduces a kernel module as an intermediary component that runs with privileged access to facilitate driver installation, while the main container process operates without privileged access. This mediator kernel module handles the secure communication and driver installation operations, allowing the container to gain driver installation capability without requiring the entire container process to have privileged access, thus resolving the security contradiction.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If drivers are pre-built for specific kernels, then installation speed is improved, but adaptability to different kernel versions is worsened

Engineering Contradiction:
Improveinstallation speedVSAvoidcompatibility across kernel versions
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements a dynamic driver building mechanism where the kernel module detects the running kernel version and dynamically builds or selects the appropriate driver version. Instead of requiring pre-built drivers for every kernel version, the system adapts to the specific kernel environment and builds the suitable driver on-demand, maintaining both installation efficiency and broad kernel compatibility.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of driver version based on the detected kernel version. The kernel module queries the running kernel and adjusts the driver building parameters accordingly, selecting or compiling the appropriate driver version that matches the kernel. This parameter adaptation allows the system to maintain compatibility across different kernel versions without requiring manual pre-building for each version.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If manual driver updates are performed, then control over installation process is improved, but automation level is worsened

Engineering Contradiction:
Improvecontrol over installationVSAvoidautomation level
Core Design Contradiction:
Ease of operationVSExtent of automation

Solution Approach 1:

The patent implements a self-service mechanism where the kernel module automatically detects the need for driver updates, queries the appropriate driver version, builds the driver, and installs it without requiring manual intervention. The system monitors the kernel and driver status autonomously, performing the entire driver update lifecycle automatically while maintaining security through the container architecture.

Inventive Principle:
Principle #25Self-service

4Object-affected harmful factors

If containers are isolated from kernel access, then security is improved, but driver installation capability is worsened

Engineering Contradiction:
Improvesecurity isolationVSAvoiddriver installation capability
Core Design Contradiction:
Object-affected harmful factorsVSEase of operation

Solution Approach 1:

The patent segments the driver installation functionality into two separate components: an isolated container process that maintains security through isolation, and a privileged kernel module that handles driver installation operations. The container process communicates with the kernel module through secure interfaces, allowing the container to request driver installation without breaking its isolation boundary. This segmentation enables both security isolation and driver installation capability to coexist.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12498911B2Updated driver installation
Publication Date: 2025.12.16 NCR VOYIX CORP
  • US12498911B2 patent drawing
  • US12498911B2 patent drawing
  • US12498911B2 patent drawing

AI summary

At least one software container element contains executable software that is executable on one or more processors of a computing device and which receives, from a kernel of the computing device, first data that is indicative of at least one active driver installed on the kernel, compares the first data with second data that is indicative of at least one predetermined target driver that should be installed on the kernel, and responsive to the comparing, determines if at least one of the predetermined target drivers is not installed on the kernel.