Processor Feature Description for Kernel Adaptability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The introduction of new processor features that add additional bits to existing registers or require additional processor state for context switching poses challenges for both processor vendors and operating system developers, as it necessitates kernel updates and increases the risk of secret leakage or state corruption between partitions in virtualized environments.
Innovation Solution
A machine-readable description of the new processor feature is created, which includes sections for identifying the processor type, detecting the feature's presence, enabling its operation, managing context switching, and providing a digital signature for provenance, allowing kernel software to support the feature without requiring immediate updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a processor vendor adds a new feature that adds additional bits to existing registers or new registers to the processor, then the processor functionality is improved, but the operating system kernel must be modified to support the new feature
Solution Approach 1:
The feature information is segmented into a machine-readable description file that contains separate sections for feature identification, detection methods, enabling/disabling procedures, and context switching requirements. This segmentation allows the kernel to process only the necessary information without requiring comprehensive kernel modifications for each new feature
Solution Approach 2:
A machine-readable description file acts as an intermediary between the processor vendor and the operating system kernel. This intermediary contains structured information about the new feature, allowing the kernel to automatically detect and manage the feature without requiring vendor-specific kernel modifications
2Adaptability or versatility
If a processor vendor adds a new feature that requires additional processor state to be saved and restored across processor context switches, then the processor functionality is improved, but the risk of secret leakage or state corruption between partitions increases
Solution Approach 1:
The machine-readable description file is prepared in advance and contains predetermined information about which processor state must be saved and restored during context switches. This preliminary documentation allows the partitioning kernel to configure security measures before context switching occurs, preventing secret leakage and state corruption
Solution Approach 2:
The structured description file provides feedback to the partitioning kernel about the specific state requirements of the new feature, enabling the kernel to implement appropriate security measures for context switching without requiring advance knowledge of the feature's internal workings
3Reliability
If a partitioning kernel is updated to support a new processor feature, then the feature can be used securely across partitions, but the update process is time-consuming and gates feature availability
Solution Approach 1:
All necessary information about the new feature's security requirements is prepared in advance in the machine-readable description file, including context switching state information and detection methods. This allows the partitioning kernel to immediately support the feature upon loading the description without requiring time-consuming update cycles
Solution Approach 2:
The machine-readable description file enables the partitioning kernel to self-configure and automatically manage the new feature's security requirements without requiring vendor-provided kernel updates. The kernel reads the description and implements appropriate security measures autonomously
Data Source
AI summary
A machine readable description of a new feature of a processor is provided by a processor vendor. Control code executing on a processor, such as a traditional operating system kernel, a partitioning kernel, or the like can be programmed to receive the description of the feature and to use information provided by the description to detect, enable and manage operation of the new feature.


