Kernel Module Management via Server-Side Binary Distribution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional kernel management mechanisms for commercial operating systems face security threats due to manual source code updates and exposure of APIs, and they are not suitable for closed-source systems, as they require users to write kernel module source code and export APIs, which compromises system security and confidentiality.
Innovation Solution
A method where a server distributes pre-encapsulated binary code instances of kernel modules corresponding to multiple candidate versions to a client, allowing dynamic loading based on the current kernel version and avoiding API exposure by storing API addresses during module loading, thus preventing manual source code compilation and API export.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If manual source code updates and API export are used in traditional kernel management mechanisms, then kernel modules can be updated and customized, but system security and confidentiality are compromised
Solution Approach 1:
The patent extracts the kernel module source code and API export functionality from the client system, centralizing kernel module management on the server side. The server compiles and distributes pre-compiled kernel module binaries, eliminating the need for clients to handle source code or export APIs, thus resolving the security conflict while maintaining update capability
Solution Approach 2:
The patent introduces an intermediary mechanism where the server acts as a mediator between kernel updates and client systems. The server compiles kernel modules with embedded API address tables and distributes them as pre-compiled binaries, serving as a secure intermediary that eliminates direct source code exposure and API export requirements on client systems
2Productivity
If kernel module source code is distributed to clients for manual compilation, then customization and updates are enabled, but the complexity of client-side compilation and API management increases
Solution Approach 1:
The patent applies preliminary action by having the server pre-compile kernel modules and embed API address tables before distribution. Clients receive ready-to-install binary packages, eliminating the need for on-site compilation and API configuration, thus improving update efficiency while reducing client-side complexity
Solution Approach 2:
The patent uses copying by distributing pre-compiled binary copies of kernel modules from the server to clients. Instead of transferring source code that requires compilation, the system copies optimized binary files that can be directly installed, significantly reducing client-side processing complexity and improving deployment speed
Data Source
AI summary
Embodiments of the present disclosure relate to a method, device and computer program product for kernel management. The method comprises: receiving, from a server, a plurality of instances of a kernel module to be loaded into a kernel, the plurality of instances corresponding to a plurality of candidate versions, determining a current version of the kernel in response to the kernel being started or updated, and loading, to the kernel, an instance of the plurality of instances corresponding to the current version. Embodiments of the present disclosure may improve the security of the operating system, meet close-source requirement of a commercial operating system and also simplify the process of the kernel module referring to one or more APIs.


