Single Processor Router with Hyper Scheduler for Concurrent OS Instances
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional routers require multiple processors to execute separate operating systems for routing engines and interface controllers, leading to increased costs and complexity due to overlapping name spaces and disparate clock cycles, making convergence of these systems into a single operating system complex and costly.
Innovation Solution
A hyper scheduler enables a single processor to concurrently execute multiple instances of operating systems by performing context switches, storing and loading state information, and managing exception handlers to emulate both routing engine and interface controller functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple processors are used to execute separate operating systems for routing engine and interface controller, then system reliability and functional independence are improved, but device cost and complexity increase
Solution Approach 1:
The patent merges multiple separate processors into a single processor that executes multiple virtual instances of operating systems. The hyper-scheduler consolidates what would traditionally require separate physical processors, allowing the routing engine and interface controller to run as isolated virtual instances on shared hardware, thereby reducing device complexity while maintaining functional independence through virtualization boundaries.
Solution Approach 2:
The single processor is designed to perform multiple functions by executing different virtual operating system instances. The hyper-scheduler enables the processor to dynamically allocate time slices to different virtual instances (routing engine, interface controller), making one processor universal enough to replace multiple specialized processors while maintaining the functional independence required for system reliability.
2Adaptability or versatility
If separate operating systems are used for routing engine and interface controller, then functional independence and exception handling are improved, but manufacturing cost increases
Solution Approach 1:
The patent creates virtual copies of operating systems that run as isolated instances on a single processor. Instead of manufacturing routers with multiple physical processors (increasing cost), the system creates software-based copies of OS functionality through virtualization. Each virtual instance maintains independent exception handling and functional independence while sharing the same physical hardware, significantly reducing manufacturing costs.
Solution Approach 2:
The hyper-scheduler changes the operational parameters of the single processor by dynamically adjusting time slice allocation, context switching intervals, and resource allocation for each virtual OS instance. This parameter-based management allows functional independence similar to separate processors while using a single physical unit, reducing manufacturing complexity and cost.
3Device complexity
If convergence of separate operating systems is attempted, then device complexity is reduced, but development time and effort increase due to name space overlap and disparate clock cycles
Solution Approach 1:
The patent segments the single processor's execution environment into isolated virtual instances, each with its own name space and clock cycle management. The hyper-scheduler creates logical segmentation through context switching and virtual memory management, allowing each OS instance to maintain independent variables, routines, and timing without physical separation. This eliminates name space overlap issues while avoiding the need to converge disparate systems into a single monolithic OS.
Solution Approach 2:
The hyper-scheduler acts as an intermediary layer between the single processor and multiple virtual OS instances. It mediates resource allocation, context switching, and exception handling, allowing each virtual instance to operate with its own clock cycles and name spaces without direct conflict. This intermediary approach reduces device complexity compared to multiple physical processors while avoiding the development challenges of direct OS convergence.
Data Source
AI summary
A network device is described that concurrently executing more than one instance of an operating system on a single processor. Each of the instances of the operating system executes completely independent of the other instances. In this way, disparate instances may exist for the same operating system or for different operating systems. The techniques allow the processor to concurrently execute, for example, an instance of the operating system may emulate a routing engine and an instance of the operating system may emulate an interface controller. A hyper scheduler performs context switches between the operating systems to enable the processor to concurrently execute the instances of the operating system. The techniques may provide a low cost alternative to employing multiple processors within a network device, such as a router, to execute multiple independent operating systems.


