Communication Test Device Using Process Control Block Hooking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing communication test methods for embedded systems are inefficient as they require significant resources and interrupt system operations, making it difficult to detect defects in real-time communication between processes without causing memory or performance overhead.

Innovation Solution

A communication test apparatus and method utilizing hooking technology to test actual operating systems in real-time by inserting a test agent into the process control block, allowing for dynamic testing of communication between processes without modifying source code, and minimizing system overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional communication test methods are used for embedded systems, then communication defects can be detected, but significant memory overhead and performance overhead occur and system operations are interrupted

Engineering Contradiction:
Improvecommunication defect detectionVSAvoidmemory overhead and performance overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a test agent as an intermediary component that hooks into the process control block (PCB) of the operating system. This test agent acts as a mediator between the testing framework and the target processes, enabling communication defect detection without directly modifying or burdening the process execution. The test agent intercepts and analyzes communication events between processes through the PCB interface, thereby detecting communication defects while minimizing memory overhead and avoiding system operation interruptions.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If source code modification is performed to insert test code, then communication between processes can be tested, but the system operation is interrupted and memory overhead increases

Engineering Contradiction:
Improvecommunication testing capabilityVSAvoidsystem operation continuity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent employs preliminary action by pre-establishing a test agent that hooks into the process control block interface before any communication events occur. This test agent is prepared in advance and waits passively to intercept communication events between processes. By having the testing mechanism ready beforehand through the PCB interface, the system can detect communication defects without interrupting normal operations or requiring source code modifications during runtime.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If real-time testing of communication between processes is performed, then communication defects can be detected, but memory space overhead and performance overhead increase

Engineering Contradiction:
Improvereal-time communication defect detectionVSAvoidmemory space overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent achieves universality by designing a test agent that hooks into the process control block interface, which is a common and fundamental structure used by all processes in the operating system. This single test agent can monitor and test communication events between any multiple processes without requiring separate test code for each process. By leveraging the universal PCB interface, the system enables real-time communication defect detection across all processes while minimizing memory space overhead and avoiding performance degradation.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP2687989B1Communication test device and method
Publication Date: 2022.05.11 HYUNDAI MOTOR CO LTD
  • EP2687989B1 patent drawingFigure 1
  • EP2687989B1 patent drawingFigure 2
  • EP2687989B1 patent drawingFigure 3

AI summary

The present invention relates to a communication test apparatus. The communication test apparatus includes an insertion module configured to insert a test agent into the process control block, a hooking module configured to hook a test target to a test code using the test agent when an event-related to communication occurs between the plurality of processes, a scanning module configured to collect pieces of test information about communication between the plurality of processes when the test target is hooked to the test code, and a logging module configured to store the pieces of test information collected by the scanning module.