Processor Core Isolation for Multi-OS Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current technologies fail to enable the concurrent execution of multiple operating systems on a multicore computer system with distinct, unscheduled control over their respective cores, as conventional approaches cannot dedicate specific cores to different operating systems without resource overlap.
Innovation Solution
A computer-implemented method that boots multiple operating systems on mutually exclusive subsets of processor cores within a multicore system, using a hypervisor to initialize and partition the system, allowing each OS to control dedicated resources without shared scheduling, and leveraging UEFI and virtualization extensions for core and memory isolation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a single operating system is booted on all processor cores, then the system can execute one OS across the entire multicore system, but the ability to run multiple distinct operating systems concurrently on different cores is lost
Solution Approach 1:
The patent segments the multicore system by partitioning processor cores into distinct subsets, where each subset is dedicated to a specific operating system. The hypervisor divides the available cores among multiple OS instances, allowing each OS to run on its assigned subset of cores independently. This segmentation enables concurrent execution of multiple operating systems while maintaining clear boundaries between them.
Solution Approach 2:
The patent introduces a hypervisor as an intermediary layer between the hardware and multiple operating systems. The hypervisor manages core allocation, handles boot processes for multiple OS instances, and mediates resource access. This intermediary enables the system to support multiple operating systems without requiring complex modifications to each OS or the underlying hardware.
2Productivity
If multiple operating systems are allowed to share processor cores, then resource utilization can be improved, but core isolation and dedicated control for each OS cannot be ensured
Solution Approach 1:
The patent implements core segmentation by assigning specific subsets of processor cores to each operating system instance. Each OS is granted exclusive access to its designated cores during execution, ensuring isolation while allowing the system to utilize all available cores across multiple OS instances. This approach maintains both productivity through full core utilization and reliability through enforced isolation.
Solution Approach 2:
The patent applies local quality by giving different subsets of cores to different operating systems, allowing each OS to have dedicated control over specific hardware resources. Each OS instance experiences a customized execution environment with exclusive access to its assigned cores, ensuring reliability and isolation while the system as a whole maintains high resource utilization.
3Adaptability or versatility
If a hypervisor schedules and manages multiple operating systems, then concurrent execution can be enabled, but the hypervisor must continuously execute to maintain scheduling control
Solution Approach 1:
The patent applies preliminary action by having the hypervisor perform all necessary scheduling and core allocation decisions during the boot process. Each operating system instance is pre-configured with its designated subset of cores before execution begins. Once the hypervisor completes the boot process and establishes core assignments, it can cease execution, allowing the assigned OS instances to run independently on their dedicated cores without continuous hypervisor intervention.
Solution Approach 2:
The patent extracts the ongoing scheduling function from the hypervisor by completing all scheduling decisions during the boot phase. The hypervisor's role is extracted to仅限于 the initial configuration and allocation of cores to OS instances. After this preliminary scheduling is complete, the hypervisor is removed from the execution cycle, reducing energy overhead while maintaining the benefits of concurrent OS execution.
Data Source
AI summary
Process core isolation for execution of multiple operating systems on a multicore computer system includes booting first and second operating systems (OSs) on a computer system that includes a plurality of processor cores across physical central processing unit(s) (CPUs). Booting the first OS boots the first OS on a first subset of the processor cores. Booting the second OS, different from the first OS, boots the second OS on a second subset of the processor cores. The first and second subsets are mutually exclusive, where a first processor core of a physical CPU of the physical CPUs is included in the first subset and a second processor core of the physical CPU is included in the second subset, and where the first and second OSs execute concurrently on the computer system, and each of the first and second OS executes on only its respective subset of processor core(s).


