Inter-manycore Communication via Service Manager Shared Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In a manycore architecture of a microkernel operating system, communication between a user process and a system service process requires multiple context switches, leading to low efficiency.
Innovation Solution
The implementation of an inter-manycore communications method using a Service Manager process that maps shared memory to virtual address spaces, allowing direct communication between user and system service processes by sharing memory addresses, thereby reducing the need for context switches.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If IPC inter-manycore communication mechanism is used for communication between user process and system service process on different microkernels, then communication between processes on different microkernels is enabled, but multiple context switches are required leading to low communication efficiency
Solution Approach 1:
The patent introduces a Monitor as an intermediary component running on each microkernel to manage inter-manycore communication. The Monitor handles message routing and coordination between user processes and system services across different microkernels, reducing the need for multiple context switches by providing a centralized communication management layer that can operate efficiently across microkernel boundaries.
Solution Approach 2:
The Monitor is designed as a universal component that handles multiple functions including message routing, service registration, and inter-manycore coordination. This multi-functional approach allows a single component to manage various aspects of inter-microkernel communication, reducing overall system complexity and improving efficiency by eliminating the need for separate dedicated mechanisms for each communication function.
2Reliability
If multiple context switches are performed for inter-manycore communication, then complete communication protocol is maintained, but communication time increases
Solution Approach 1:
The patent implements service registration in advance where system services register themselves with the Monitor before actual communication occurs. This preliminary action allows the Monitor to have pre-established knowledge of service locations and communication paths, enabling faster message routing without requiring multiple context switches during actual communication operations.
Solution Approach 2:
The Monitor maintains copies of service registration information and communication metadata in memory on each microkernel. These copies allow the system to quickly retrieve communication information without requiring repeated context switches to access centralized storage, thus maintaining protocol compliance while reducing communication time.
Data Source
AI summary
An inter-manycore communications method includes applying, by a service manager process, to a microkernel operating system for shared memory, and mapping shared memory, which is allocated by the microkernel operating system, to virtual address space of the service manager process; receiving and recording a service identifier of a system service process and a second shared memory address that corresponds to the service identifier; searching, according to a service identifier carried by a system service request, for the second shared memory address that corresponds to the service identifier carried by the system service request; and sending the service identifier carried by the system service request, a first shared memory address, and the second shared memory address that corresponds to the service identifier to a user process. According to the method, a problem that communication between a user process and a system service process needs multiple context switches can be solved.


