A method for preventing system failure based on on-board software
Patent Information
- Application Number
- CN202210965599.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-12
- Publication Date
- 2026-08-28
- Estimated Expiration
- 2042-08-12
AI Technical Summary
软件方面主要存在系统设计错误、人员操作失误和外界环境干扰等重要因素,其中系统设计错误是造成失效的主要原因
本发明针对航天软件程序的可靠性和可用性特点,根据时间冗余设计思想,提出异步虚拟容错软件架构设计思想,通过构建虚拟空间的映射程序,采用进程并行冗余、线程异步容错的设计原则,虚拟进程优先执行线程,经确认反馈线程正常后,通知实体进程完成执行,完成异步核准处理流程。
Smart Images

Figure CN115344426B_ABST
Abstract
Claims
1. A method for preventing system failure based on onboard software, characterized in that: Includes the following steps: The target program includes several parallel threads. The target program is copied into two copies, one for execution by the physical process and the other by the virtual process. The physical process and the virtual process execute the target program asynchronously, and the virtual process executes at least one thread before the physical process. The virtual process executes multiple threads synchronously. The executing threads are marked with a status. If the status is marked as normal, the execution result is recorded and the entity process is notified to execute the thread. If the status is marked as abnormal, the execution of the thread is terminated and the entity process is notified not to execute the thread. Each of the aforementioned threads contains several function blocks connected in sequence; When a virtual process executes any thread, it calls and executes the function blocks in that thread in sequence. When a function block is executed, the status is marked as thread normal, and the next function block is called and executed. This continues until all function blocks of the thread have been called and executed, and the status of all function blocks is marked as thread normal. Then, the physical process is notified to execute the thread. When a virtual process executes a certain function block and its status is marked as thread abnormal, the virtual process rolls back to the recovery point, which is the previous function block, and notifies the physical process not to execute that thread.
2. The method for preventing system failure based on onboard software according to claim 1, characterized in that: When a virtual process marks a thread as abnormal, it restarts the thread. After restarting, it continues to call and execute the next function block from the recovery point until all function blocks of the thread have been called and executed, and the status of all function blocks is marked as normal. Then, it notifies the physical process to execute the thread.
3. The method for preventing system failure based on onboard software according to claim 2, characterized in that: A thread restarted in a virtual process will also have its corresponding thread restarted in the physical process.
4. The method for preventing system failure based on onboard software according to claim 1, characterized in that: If the entity process finishes executing a thread according to the notification from the virtual process, and has not yet received a notification from the virtual process for an executable thread, the entity process enters a waiting state until it receives a notification from the virtual process for an executable thread, at which point it executes the thread that was notified.
5. The method for preventing system failure based on onboard software according to claim 1, characterized in that: After executing the thread notified by the virtual process, the entity process compares the execution result with the execution result recorded by the virtual process. If the execution results are consistent, the entity process executes the next thread notified by the virtual process; otherwise, the entity process returns to the starting point of the thread.
6. The method for preventing system failure based on onboard software according to claim 5, characterized in that: When the physical process compares the execution result with the execution result recorded by the virtual process, and the execution results are inconsistent, the process rolls back to the beginning of the thread, restarts the thread, and re-executes the thread until the execution result is consistent with the execution result of the virtual process, thus completing the execution of the thread.
Citation Information
Patent Citations
Data synchronization method and apparatus
CN106933534A