Thread Management System Shared Memory Logging
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In systems using multiple types of memory, errors can be difficult to diagnose because only loggable memory can be reviewed, which may only show part of the problem, as other types of memory like heap memory are not easily loggable.
Innovation Solution
A thread management system (TMS) that allocates both scheduler threads and native threads from shared memory, allowing for the generation of detailed logs and call stacks that include all executed processes, even those using heap memory.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If multiple types of memory are used in the system, then the system can execute diverse computations and processes, but only loggable memory can be reviewed when an error occurs, which may only show part of the problem
Solution Approach 1:
The patent introduces thread IDs as an intermediary mechanism that links processes across different memory types. When an error occurs, the thread ID serves as a key to retrieve and correlate execution information from both loggable and non-loggable memory types, enabling complete error diagnosis without losing information from any memory type.
2Ease of manufacture
If only loggable memory is reviewed for error analysis, then the logging process is simple, but the error analysis is incomplete as it misses processes from non-loggable memory
Solution Approach 1:
The patent implements preliminary action by assigning unique thread IDs to processes before they execute on different memory types. This pre-identification allows the system to later retrieve and correlate execution information from all memory types using the thread ID as a key, ensuring complete error analysis without complicating the logging process.
3Measurement precision
If detailed logs of all processes are generated, then error analysis becomes more accurate, but the system complexity increases due to managing multiple memory types
Solution Approach 1:
The patent changes the parameter of process identification from memory-type-specific to thread ID-based. This parameter change allows the system to uniformly track and log processes across different memory types using a single identification mechanism, reducing memory management complexity while maintaining high error analysis accuracy.
Data Source
AI summary
Various embodiments for a thread management system are described herein. An embodiment operates by determining that one or more scheduler threads of a server are allocated from a shared memory. A request to spawn a native thread at the server is received. The request is intercepted and an override for the request in which the resources for spawning the native thread are requested from the shared memory is executed. An allocation of resources for spawning and executing the native thread is received from the shared memory. An error on the server is detected. The shared memory is dumped into a dump file responsive to determining the error. The dump file includes an indication of what threads were allocated from the shared memory. The one or more scheduler threads and the native thread are restarted after the dumping.


