Real-Time Dedicated Thread for Non-Real-Time OS Time-Critical Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Non-real-time operating systems struggle to meet the real-time requirements of time-critical processing in applications like power systems, where immediate responses are necessary for emergency situations, due to their non-preemptive nature and lack of interrupt mechanisms.
Innovation Solution
A method and device that utilize a packet capturing tool to analyze messages, preprocess data units, and trigger a real-time dedicated thread for time-critical processing by writing preprocessed data units into a dedicated buffer, allowing for real-time execution of tasks such as sample value acquisition, processing, and protection decision making, even in non-real-time operating systems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If a non-real-time operating system is used, then software development and debugging can be performed without hardware dependencies, but the system cannot meet real-time requirements for time-critical processing
Solution Approach 1:
The patent segments the processing system into multiple threads with different priorities: a real-time dedicated thread for time-critical processing and other threads for non-critical tasks. This segmentation allows the non-real-time OS to handle software development conveniently while the real-time thread ensures timely processing of sample value messages, resolving the contradiction between development accessibility and real-time reliability.
Solution Approach 2:
The patent introduces an intermediary mechanism in the form of a real-time dedicated thread that acts as a mediator between the non-real-time OS and time-critical processing requirements. This thread intercepts and prioritizes sample value messages, ensuring they receive immediate processing attention regardless of the OS's non-preemptive nature, thus maintaining real-time capability while using a developer-friendly OS.
2Reliability
If a real-time operating system is used, then time-critical processing can be executed in real-time, but hardware development and debugging may be obstructed
Solution Approach 1:
By segmenting the system into a real-time dedicated thread for critical processing and allowing the use of non-RTOS for general software development, the patent eliminates the need for hardware dependency during development while maintaining real-time processing capability through the dedicated thread.
3Adaptability or versatility
If non-real-time operating system is used, then hardware dependencies are reduced, but interrupt mechanisms and preemptive scheduling are unavailable
Solution Approach 1:
The real-time dedicated thread serves as an intermediary that compensates for the lack of interrupt mechanisms and preemptive scheduling in non-RTOS. It manually ensures that sample value messages are processed immediately when received, mimicking real-time behavior without requiring the complex interrupt infrastructure of a traditional RTOS.
4Ease of manufacture
If sample value messages are processed in non-real-time OS, then development can proceed without hardware, but processing delays may occur
Solution Approach 1:
The patent makes the thread scheduling dynamic by creating a real-time dedicated thread that dynamically responds to incoming sample value messages. When messages arrive, this thread immediately processes them with highest priority, adapting to the real-time requirements dynamically rather than following fixed non-preemptive scheduling, thus minimizing processing delays while maintaining development flexibility.
Data Source
AI summary
Method and device for executing time critical processing in a non-real-time operating system. The method includes capturing a message by a packet capturing tool; analyzing whether the message is a sample value message associated with the time critical processing, and when the message is a sample value message associated with the time critical processing, writing a data unit included in the sample value message into a first buffer; preprocessing the data unit, the preprocessing includes arranging and combining bytes of the data unit so that the bytes indicate sample value is located at specific position; writing the preprocessed data unit from the first buffer into a second buffer and triggering a real-time dedicated thread at the same time, in response to the preprocessed data unit in the first buffer reaching the predetermined number; and executing the time critical processing by reading the preprocessed data unit from the second buffer.


