Airborne data automatic monitoring parameter acquisition method
By creating a core data monitoring agent at the operating system layer and using mapped memory space, the possible functional and performance impact of data monitoring software on resident application memory access is solved, and the security monitoring and data integrity of resident application memory is achieved.
Patent Information
- Application Number
- CN202411957037.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-29
- Publication Date
- 2025-04-25
AI Technical Summary
Direct access to the resident application memory by data monitoring software may destroy the integrity and security of data and affect the normal functions and performance of IMA resident applications.
By creating an independent data monitoring core agent at the operating system layer, using mapped memory space to store resident application memory data, ensuring that the access to the data monitoring software does not affect the normal operation of the resident application.
It realizes security monitoring of the resident application memory, avoids the negative impact of data monitoring software on application functions and performance, and improves the security of data monitoring functions.
Smart Images

Figure CN119883840A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the field of integrated avionics technology, and in particular provides a method for acquiring parameters of airborne data automatic monitoring. Background Art
[0002] In the Integrated Modular Avionics (IMA) system, the data monitoring mechanism provides the ability to monitor the operating status and locate problems of IMA resident applications during avionics test laboratories, flight tests and aviation operations. The mechanism can collect and analyze application operation process data and variables, provide read-only access to the entire address range of the physical RAM storage location of the general processing module containing resident application data, collect data from any application running on the resident module, and support data collection from multiple resident applications at the same time. However, the direct access of the data monitoring software to the resident application memory will destroy the integrity and security of the partition data, and further affect the normal function and performance of the IMA resident application. Summary of the invention
[0003] The purpose of this application is to solve the problem mentioned in the background technology that the access of data monitoring software to the data storage device may affect the function and performance of the resident application, and propose a method for obtaining automatic data monitoring parameters.
[0004] In order to achieve the above object, the present invention adopts the following technical solution: a method for obtaining parameters of airborne data automatic monitoring, the method comprising:
[0005] S1: Prepare for automatic data monitoring parameter acquisition;
[0006] S2: The operating system layer data monitoring core agent obtains storage monitoring data, data error information, and a data storage offset address list;
[0007] S3: The application layer data monitoring software obtains and sends monitoring data.
[0008] The method for automatically monitoring parameters of airborne data provided by the present invention also has the following technical features: S1 comprises:
[0009] S1.1: Configure the memory and permissions of the mapped memory space;
[0010] S1.2: extract the data monitoring loadable database from FLASH and store it in the mapped memory space;
[0011] S1.3: The operating system creates a data monitoring core agent task;
[0012] S1.4: The operating system creates a semaphore indicating that the data monitoring core agent is running;
[0013] S1.5: The operating system adds a partition switching hook and adds a semaphore release function to the partition switching hook;
[0014] S1.6: Set the data monitoring core agent task priority to be higher than the data monitoring software main process and periodic process priority;
[0015] S1.7: Set the cycle of the data monitoring software cycle process to be consistent with the data monitoring software execution cycle defined in the loadable database.
[0016] The method for obtaining parameters of airborne data automatic monitoring provided by the present invention also has the following technical features: S1.1 includes:
[0017] S1.1.1: Configure the mapped memory space address and size;
[0018] S1.1.2: Configure the operating system layer's read and write permissions for the mapped memory space;
[0019] S1.1.3: Configure the data monitoring software to have read-only access to the mapped memory space.
[0020] The method for acquiring parameters of airborne data automatic monitoring provided by the present invention also has such a technical feature that the condition for releasing the semaphore in the semaphore release function in S1.5 is that the next execution window of the partition is a data monitoring software time window.
[0021] The method for automatically monitoring parameters of airborne data provided by the present invention also has the following technical features: S2 comprises:
[0022] S2.1: After the data monitoring core agent obtains the semaphore released by the partition switching hook, it executes the data monitoring core agent task;
[0023] S2.2: Determine the number of times the current data monitoring core agent task is executed. If it is the first execution, proceed to S2.3. If it is not the first execution, proceed to S2.4:
[0024] S2.3: Data monitoring core agent performs initialization;
[0025] S2.4: The data monitoring core agent obtains and stores monitoring data, data error information, and a data storage offset address list.
[0026] The method for obtaining parameters of airborne data automatic monitoring provided by the present invention also has such a technical feature that S2.3 includes:
[0027] S2.3.1: The data monitoring core agent obtains the mapped memory space address. If the address is obtained successfully, S2.3.2 is executed. If the address is obtained unsuccessfully, the information that the data monitoring core agent fails to obtain the mapped memory space address is stored in the fault log, and the data monitoring core agent task is stopped;
[0028] S2.3.2: The data monitoring core agent reads and parses the data monitoring loadable database from the mapped memory space;
[0029] S2.3.3: Check the existence of the loadable database by judging whether the parsed database name meets the specified identifier. If it exists, execute S2.3.4. If it does not exist, store the information that the loadable database does not exist in the fault log and stop the data monitoring core agent task.
[0030] S2.3.4: Determine the integrity of the loadable database by performing a CRC check on the loadable database. If the CRC check passes, execute S2.3.5. If the CRC check fails, store the incomplete information of the loadable database in the fault log and stop the data monitoring core agent task.
[0031] S2.3.5: Determine the validity of the database by verifying the version of the loadable database. If the validity check passes, execute S2.3.6. If the validity check fails, store the invalid information of the loadable database in the fault log and stop the data monitoring core agent task.
[0032] S2.3.6: Determine whether the number of monitoring data items is greater than 0. If so, load the parameter list of each monitoring data according to the number of data items and enter S2.3.7. Otherwise, store the information that there is no monitoring data item in the fault log and stop the data monitoring core agent task.
[0033] S2.3.7: Establishing a data error information and a data storage offset address list, wherein the data error information includes a data item ID and error tag information;
[0034] S2.3.8: Check whether the partition number of each input monitoring data item is within the partition range resident on the general processing module. If so, execute S2.3.10. If not, store the information of the monitoring variable partition number error in the fault log, mark the corresponding data item data error information list, and execute S2.3.9;
[0035] S2.3.9: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.3.10. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task.
[0036] S2.3.10: Check whether the data item address that is not marked with error information is within the legal address range. If so, execute S2.3.12. If not, store the information that the monitored variable access address is out of bounds in the fault log, mark the corresponding data item data error information list, and execute S2.3.11;
[0037] S2.3.11: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.3.12. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task;
[0038] S2.3.12: Check whether the size of the data item that is not marked with error information exceeds the maximum capacity of the message to be sent. If not, execute S2.3.14. If it exceeds, store the information of the monitored variable size error in the fault log, mark the data error information list of the corresponding data item, and execute S2.3.13;
[0039] S2.3.13: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.3.14. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task.
[0040] S2.3.14: Calculate the address range of the data items that are not marked with error information to prohibit access outside the specified legal address range. If the test passes, execute S2.3.16. If the test fails, store the information of the monitored variable access address out of bounds in the fault log, mark the data error information list of the corresponding data item, and execute S2.3.15;
[0041] S2.3.15: Filter out data that is not marked with error information. If the number of filtered data is greater than 0, execute S2.3.16. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task;
[0042] S2.3.16: Check whether the monitoring variable rate of the data item that is not marked with error information is within the specified monitoring rate range. If it passes the test, execute S2.4. If it fails the test, store the monitoring rate error information in the fault log, mark the data error information list of the corresponding data item, and execute S2.3.17;
[0043] S2.3.17: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.4. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task.
[0044] The method for obtaining parameters of airborne data automatic monitoring provided by the present invention also has the following technical features: S2.4 includes:
[0045] S2.4.1: Obtain the corresponding resident application memory data of the data items that are not marked with error information in sequence according to the partition number, virtual address and size information. If the data acquisition is successful, execute S2.4.3. If the data acquisition fails, store the information of the failure to obtain the data in the fault log, mark the data error information list of the corresponding data item, and execute S2.4.2;
[0046] S2.4.2: Filter out data that is not marked with error information. If the number of filtered data is greater than 0, execute S2.4.3. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task;
[0047] S2.4.3: Store the resident application memory data of the data item that is not currently marked with an error message into the mapped memory space;
[0048] S2.4.4: Fill the offset address of the resident application memory data stored in S2.4.3 in the mapped memory space into the data storage offset address list of the corresponding data item;
[0049] S2.4.5: Store the data error information and the data storage offset address list into the first address of the mapped memory space and enter S2.1.
[0050] The method for automatically monitoring parameters of airborne data provided by the present invention also has the following technical features: S3 includes:
[0051] S3.1: After the high-priority data monitoring core agent task is executed, the main process of the data monitoring software obtains the mapped memory space address. If the address is obtained successfully, S3.2 is executed. If the address is obtained unsuccessfully, the information that the data monitoring software fails to obtain the mapped memory space address is stored in the fault log, and the data monitoring software suspends the main process;
[0052] S3.2: The main process of the data monitoring software reads and parses the data monitoring variable configuration parameters from the mapped memory space data monitoring loadable database;
[0053] S3.3: Check the existence of the loadable database by judging whether the parsed database name meets the specified identifier. If it meets the requirements, execute S3.4. If it does not meet the requirements, store the information that the loadable database does not exist in the fault log, and the data monitoring software suspends the main process.
[0054] S3.4: The main process of the data monitoring software checks the integrity of the loadable database by performing a CRC check on the loadable database. If the CRC check passes, S3.5 is executed. If the CRC check fails, the incomplete information of the loadable database is stored in the fault log, and the data monitoring software suspends the main process;
[0055] S3.5: Determine the validity of the database by verifying the version of the loadable database. If the validity verification passes, execute S3.6. If the validity verification fails, the invalid information of the loadable database is stored in the fault log, and the data monitoring software suspends the main process.
[0056] S3.6: The main process of the data monitoring software determines whether the number of monitored data items is greater than 0. If so, it enters S3.7. Otherwise, the information that there is no monitored data item is stored in the fault log, and the data monitoring software suspends the main process;
[0057] S3.7: The main process of the data monitoring software calculates whether the total length of the data item output data exceeds the maximum capacity of the message sending. If not, S3.8 is executed. If it exceeds, the information of the data item size overload is stored in the fault log, and the data monitoring software suspends the main process;
[0058] S3.8: The main process of the data monitoring software creates and starts the periodic process;
[0059] S3.9: The data monitoring software selects a list of target output data items to be output in the current cycle of process execution;
[0060] S3.10: The data monitoring software reads the data error information and the data storage offset address list from the first address of the mapped memory space;
[0061] S3.11: The data monitoring software cycle process reads the resident application memory data in the mapped memory space according to the data item ID of the correct data in the target output data item list and its corresponding data storage offset address list;
[0062] S3.12: The data monitoring software cycle process sends the target output data item content composition message to the AFDX network;
[0063] S3.13: The data monitoring software suspends the cycle process. If the suspension of the cycle process is successful, it enters S3.14. If the suspension of the cycle process fails, the information of the cycle process scheduling failure is stored in the fault log, and the data monitoring software stops the cycle process;
[0064] S3.14: The data monitoring software waits for the periodic process scheduling. After the high-priority data monitoring core agent task is executed, the periodic process starts to execute and returns to S3.9.
[0065] The method for obtaining parameters of airborne data automatic monitoring provided by the present invention also has such a technical feature that S3.9 includes:
[0066] S3.9.1: If there is a data monitoring rate error, set the corresponding data monitoring rate to 0;
[0067] S3.9.2: The data monitoring software cycle process filters out a list of target output data items that need to be output during the current cycle of the process execution based on the software cycle information and the data monitoring rate.
[0068] Beneficial Effects
[0069] The method for automatically monitoring airborne data parameters provided by the present invention uses an independent data monitoring core agent at the core operating system layer to support monitoring of the resident application memory on the general processing module, thereby ensuring that the data monitoring software's access to the resident application memory does not affect the normal functions and performance of the resident application, thereby improving the security of the data monitoring function.
[0070] The present invention proposes a format definition of a data monitoring loadable database, which involves database existence, integrity and validity verification, as well as a monitoring data parameter list. The format architecture is highly versatile and can be easily extended to the format definition process of other airborne software databases. BRIEF DESCRIPTION OF THE DRAWINGS
[0071] In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0072] Figure 1 A schematic diagram of the overall architecture of the method for automatically monitoring parameters of airborne data provided by an embodiment of the present invention;
[0073] Figure 2 A schematic diagram of a process flow for preparing for obtaining automatic data monitoring parameters provided by an embodiment of the present invention;
[0074] Figure 3 A schematic diagram of a process for an operating system layer data monitoring core agent provided in an embodiment of the present invention to obtain and store monitoring data, data error information and a data storage offset address list;
[0075] Figure 4 A schematic diagram of the process of obtaining and sending monitoring data by the application layer data monitoring software provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0076] The present application is further described in detail below in conjunction with the accompanying drawings and examples, but it should be noted that these implementation methods are not limitations of the present application, and equivalent changes or substitutions in functions, methods, or structures made by ordinary technicians in the field based on these implementation methods are all within the scope of protection of the present application.
[0077] In the description of the embodiments of the present application, it should be understood that the terms "center", "longitudinal", "lateral", "up", "down", "front", "back", "left", "right", "vertical", "horizontal", "top", "bottom", "inside", "outside", etc., indicating the orientation or position relationship, are based on the orientation or position relationship shown in the accompanying drawings, and are only for the convenience of describing the creation of the present application and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the creation of the present application.
[0078] In addition, the terms "first", "second", "third", etc. are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first", "second", etc. may explicitly or implicitly include one or more of the features. In the description of the invention of this application, unless otherwise specified, the meaning of "plurality" is two or more.
[0079] The terms "installed", "connected" and "connected" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, or it can be the internal communication of two components. For ordinary technicians in this field, the specific meanings of the above terms in the invention of this application can be understood by specific circumstances.
[0080] The ACoreOS653 operating system is specially developed for the new generation of avionics systems. It supports an embedded real-time operating system for integrated avionics systems. The operating system supports three levels: module support layer, operating system layer and application layer.
[0081] like Figure 1-4 As shown, a method for acquiring parameters of airborne data automatic monitoring is provided, which implements a data sharing strategy between the operating system layer and the application layer based on the ACoreOS653 operating system. A matching data monitoring core agent is designed based on the data monitoring software. The data monitoring software runs at the application layer, and the data monitoring core agent is different from the data monitoring software. It runs at the operating system layer. A mapped memory space is designed between the application layer and the operating system layer for storing resident application memory data, so that the data monitoring function can securely access the resident application data.
[0082] The running time and cycle of the resident application of the general processing module are determined by the time schedule. The schedule has the time window configuration of each partition. After the general processing module is started, the software of each partition will run according to the time window cycle of each partition configured in the schedule. Bind the execution window of the data monitoring core agent task to the data monitoring partition window.
[0083] The method comprises:
[0084] S1: Prepare for automatic data monitoring parameter acquisition;
[0085] S2: The operating system layer data monitoring core agent obtains storage monitoring data, data error information, and a data storage offset address list;
[0086] S3: The application layer data monitoring software obtains and sends monitoring data.
[0087] In some embodiments, the S1 includes:
[0088] S1.1: Configure the memory and permissions of the mapped memory space;
[0089] S1.2: Extract the data monitoring loadable database from FLASH and store it in the mapped memory space. The loadable database structure is shown in Table 1:
[0090] Table 1 Data monitoring loadable database structure
[0091]
[0092]
[0093] S1.3: The operating system creates a data monitoring core agent task;
[0094] S1.4: The operating system creates a semaphore indicating that the data monitoring core agent is running;
[0095] S1.5: The operating system adds a partition switching hook and adds a semaphore release function to the partition switching hook;
[0096] S1.6: Set the data monitoring core agent task priority to be higher than the data monitoring software main process and periodic process priority, to ensure that the data monitoring core agent runs first in the data monitoring partition window and updates the content of the automatic monitoring data before the data monitoring software obtains the data;
[0097] S1.7: Set the cycle of the data monitoring software cycle process to be consistent with the data monitoring software execution cycle defined in the loadable database.
[0098] In some embodiments, the S1.1 includes:
[0099] S1.1.1: Configure the mapped memory space address and size;
[0100] S1.1.2: Configure the operating system layer's read and write permissions for the mapped memory space;
[0101] S1.1.3: Configure the data monitoring software to have read-only access to the mapped memory space.
[0102] In some embodiments, the condition for releasing the semaphore in the semaphore release function in S1.5 is that the next execution window of the partition is a data monitoring software time window.
[0103] In the above embodiment, the partition hook function is called when the context of the scheduling table partition window is switched. When the next running partition is the data monitoring software, the semaphore indicating the running of the data monitoring core agent task is released. After the data monitoring core agent obtains the semaphore, it executes the task. After the execution is completed, it waits for the arrival of the next semaphore and continues the above operations.
[0104] In some embodiments, the S2 includes:
[0105] S2.1: After the data monitoring core agent obtains the semaphore released by the partition switching hook, it executes the data monitoring core agent task;
[0106] S2.2: Determine the number of times the current data monitoring core agent task is executed. If it is the first execution, proceed to S2.3. If it is not the first execution, proceed to S2.4:
[0107] S2.3: Data monitoring core agent performs initialization;
[0108] S2.4: The data monitoring core agent obtains and stores monitoring data, data error information, and a data storage offset address list.
[0109] In some embodiments, the S2.3 includes:
[0110] S2.3.1: The data monitoring core agent obtains the mapped memory space address. If the address is obtained successfully, S2.3.2 is executed. If the address is obtained unsuccessfully, the information that the data monitoring core agent fails to obtain the mapped memory space address is stored in the fault log, and the data monitoring core agent task is stopped;
[0111] S2.3.2: The data monitoring core agent reads and parses the data monitoring loadable database from the mapped memory space;
[0112] S2.3.3: The normal operation of the monitoring function depends on the loadable database. Therefore, the data monitoring core agent first checks the existence of the loadable database and determines the existence of the database by judging whether the parsed database name conforms to the specified identifier (FIDODB). If it exists, S2.3.4 is executed. If it does not exist, the information that the loadable database does not exist is stored in the fault log, and the data monitoring core agent task is stopped.
[0113] S2.3.4: Determine the integrity of the loadable database by performing a CRC check on the loadable database. If the CRC check passes, execute S2.3.5. If the CRC check fails, store the incomplete information of the loadable database in the fault log and stop the data monitoring core agent task.
[0114] S2.3.5: The data monitoring core agent checks the validity of the loadable database. If the loadable database is changed, its corresponding version number must be changed accordingly. The validity of the database is determined by verifying the version of the loadable database to ensure that the loadable database is compatible with the data monitoring function. If the validity check passes, S2.3.6 is executed. If the validity check fails, the invalid information of the loadable database is stored in the fault log, and the data monitoring core agent task is stopped.
[0115] S2.3.6: Determine whether the number of monitoring data items is greater than 0. If so, load the parameter list of each monitoring data according to the number of data items and enter S2.3.7. Otherwise, store the information that there is no monitoring data item in the fault log and stop the data monitoring core agent task.
[0116] S2.3.7: Establish data error information and data storage offset address list, the data error information includes data item ID and error mark information (the default is 0, if the data is wrong, the corresponding error code is marked);
[0117] S2.3.8: Check whether the partition number of each input monitoring data item is within the partition range resident on the general processing module. If so, execute S2.3.10. If not, store the information of the monitoring variable partition number error in the fault log, mark the corresponding data item data error information list, and execute S2.3.9;
[0118] S2.3.9: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.3.10. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task.
[0119] S2.3.10: Check whether the data item address that is not marked with error information is within the legal address range. If so, execute S2.3.12. If not, store the information that the monitored variable access address is out of bounds in the fault log, mark the corresponding data item data error information list, and execute S2.3.11;
[0120] S2.3.11: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.3.12. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task;
[0121] S2.3.12: Check whether the size of the data item that is not marked with error information exceeds the maximum capacity of the message to be sent. If not, execute S2.3.14. If it exceeds, store the information of the monitored variable size error in the fault log, mark the data error information list of the corresponding data item, and execute S2.3.13;
[0122] S2.3.13: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.3.14. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task.
[0123] S2.3.14: Calculate the address range (virtual address + data item size) of the data items that are not marked with error information at present, so as to prohibit access outside the specified legal address range. If the test passes, execute S2.3.16. If the test fails, store the information of the monitored variable access address out of bounds in the fault log, mark the data error information list of the corresponding data item, and execute S2.3.15.
[0124] S2.3.15: Filter out data that is not marked with error information. If the number of filtered data is greater than 0, execute S2.3.16. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task;
[0125] S2.3.16: Check whether the monitoring variable rate of the data item that is not marked with error information is within the specified monitoring rate range. If it passes the test, execute S2.4. If it fails the test, store the monitoring rate error information in the fault log, mark the data error information list of the corresponding data item, and execute S2.3.17;
[0126] S2.3.17: Filter out data without marked error information. If the number of filtered data is greater than 0, execute S2.4. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task.
[0127] In some embodiments, the S2.4 includes:
[0128] S2.4.1: Obtain the corresponding resident application memory data of the data items that are not marked with error information in sequence according to the partition number, virtual address and size information. If the data acquisition is successful, execute S2.4.3. If the data acquisition fails, store the information of the failure to obtain the data in the fault log, mark the data error information list of the corresponding data item, and execute S2.4.2;
[0129] S2.4.2: Filter out data that is not marked with error information. If the number of filtered data is greater than 0, execute S2.4.3. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task;
[0130] S2.4.3: Store the resident application memory data of the data item that is not currently marked with an error message into the mapped memory space;
[0131] S2.4.4: Fill the offset address of the resident application memory data stored in S2.4.3 in the mapped memory space into the data storage offset address list of the corresponding data item;
[0132] S2.4.5: Store the data error information and the data storage offset address list into the first address of the mapped memory space and enter S2.1.
[0133] In some embodiments, S3 includes:
[0134] S3.1: After the high-priority data monitoring core agent task is executed, the main process of the data monitoring software obtains the mapped memory space address. If the address is obtained successfully, S3.2 is executed. If the address is obtained unsuccessfully, the information that the data monitoring software fails to obtain the mapped memory space address is stored in the fault log, and the data monitoring software suspends the main process;
[0135] S3.2: The data monitoring software main process reads and parses the data monitoring variable configuration parameters (including the number of data items, data item ID, data item size, data item monitoring rate, and data monitoring software cycle information) from the mapped memory space data monitoring loadable database;
[0136] S3.3: The normal operation of the data monitoring function depends on the loadable database. Therefore, the main process of the data monitoring software first checks the existence of the loadable database. The existence of the database is determined by judging whether the parsed database name conforms to the specified identifier (FIDODB). If it conforms, S3.4 is executed. If it does not conform, the information that the loadable database does not exist is stored in the fault log, and the data monitoring software suspends the main process.
[0137] S3.4: The main process of the data monitoring software checks the integrity of the loadable database by performing a CRC check on the loadable database. If the CRC check passes, S3.5 is executed. If the CRC check fails, the incomplete information of the loadable database is stored in the fault log, and the data monitoring software suspends the main process;
[0138] S3.5: The main process of the data monitoring software checks the validity of the loadable database. If the loadable database is changed, its corresponding version number must be changed accordingly. The validity of the database is determined by verifying the version of the loadable database to ensure that the loadable database is compatible with the data monitoring function. If the validity check passes, S3.6 is executed. If the validity check fails, the invalid information of the loadable database is stored in the fault log, and the data monitoring software suspends the main process.
[0139] S3.6: The main process of the data monitoring software determines whether the number of monitored data items is greater than 0. If so, it enters S3.7. Otherwise, the information that there is no monitored data item is stored in the fault log, and the data monitoring software suspends the main process;
[0140] S3.7: The main process of the data monitoring software calculates whether the total length of the data item output data (including the correct data content and the error code of the error data) exceeds the maximum tolerance of the message sending. If not, S3.8 is executed. If it exceeds, the information of the data item size overload is stored in the fault log, and the data monitoring software suspends the main process;
[0141] S3.8: The main process of the data monitoring software creates and starts the periodic process;
[0142] S3.9: The data monitoring software selects a list of target output data items to be output in the current cycle of process execution;
[0143] S3.10: The data monitoring software reads the data error information and the data storage offset address list from the first address of the mapped memory space;
[0144] S3.11: The data monitoring software cycle process reads the resident application memory data in the mapped memory space according to the data item ID of the correct data in the target output data item list and its corresponding data storage offset address list;
[0145] S3.12: The data monitoring software cycle process sends the target output data item content (including correct data content and error data error code) to the AFDX network as a message;
[0146] S3.13: The data monitoring software suspends the cycle process. If the suspension of the cycle process is successful, it enters S3.14. If the suspension of the cycle process fails, the information of the cycle process scheduling failure is stored in the fault log, and the data monitoring software stops the cycle process;
[0147] S3.14: The data monitoring software waits for the periodic process scheduling. After the high-priority data monitoring core agent task is executed, the periodic process starts to execute and returns to S3.9.
[0148] In some embodiments, the S3.9 includes:
[0149] S3.9.1: If there is a data monitoring rate error, the monitoring rate of the corresponding data is set to 0 (a rate of 0 represents a one-time output, which is only output when the periodic process sends a message for the first time);
[0150] S3.9.2: The data monitoring software cycle process filters out a list of target output data items (including correct data and error data) that need to be output during the current cycle of the process execution based on the software cycle information and the data monitoring rate.
[0151] The above is only a preferred embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent replacements and improvements made within the spirit and principles of the present application shall be included in the protection scope of the present application. The above is only a preferred implementation of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and variations can be made without departing from the technical principles of the present application, and these improvements and variations should also be regarded as the protection scope of the present application.
Claims
1. A method for obtaining airborne data automatic monitoring parameters, characterized in that: The method comprises: S1: Prepare for automatic data monitoring parameter acquisition; S2: The operating system layer data monitoring core agent obtains storage monitoring data, data error information, and a data storage offset address list; S3: The application layer data monitoring software obtains and sends monitoring data.
2. The method for acquiring airborne data automatic monitoring parameters according to claim 1, characterized in that: The S1 includes: S1.1: Configure the memory and permissions of the mapped memory space; S1.2: extract the data monitoring loadable database from FLASH and store it in the mapped memory space; S1.3: The operating system creates a data monitoring core agent task; S1.4: The operating system creates a semaphore indicating that the data monitoring core agent is running; S1.5: The operating system adds a partition switching hook and adds a semaphore release function to the partition switching hook; S1.6: Set the data monitoring core agent task priority to be higher than the data monitoring software main process and periodic process priority; S1.7: Set the cycle of the data monitoring software cycle process to be consistent with the data monitoring software execution cycle defined in the loadable database.
3. The method for acquiring airborne data automatic monitoring parameters according to claim 2, characterized in that: The S1.1 includes: S1.1.1: Configure the mapped memory space address and size; S1.1.2: Configure the operating system layer's read and write permissions for the mapped memory space; S1.1.3: Configure the data monitoring software to have read-only access to the mapped memory space.
4. The method for acquiring airborne data automatic monitoring parameters according to claim 2, characterized in that: The condition for releasing the semaphore in the semaphore release function in S1.5 is that the next execution window of the partition is the data monitoring software time window.
5. The method for acquiring airborne data automatic monitoring parameters according to claim 1, characterized in that: The S2 includes: S2.1: After the data monitoring core agent obtains the semaphore released by the partition switching hook, it executes the data monitoring core agent task; S2.2: Determine the number of times the current data monitoring core agent task is executed. If it is the first execution, proceed to S2.
3. If it is not the first execution, proceed to S2.4: S2.3: Data monitoring core agent performs initialization; S2.4: The data monitoring core agent obtains and stores monitoring data, data error information, and a data storage offset address list.
6. The method for acquiring airborne data automatic monitoring parameters according to claim 5, characterized in that: The S2.3 includes: S2.3.1: The data monitoring core agent obtains the mapped memory space address. If the address is obtained successfully, S2.3.2 is executed. If the address is obtained unsuccessfully, the information that the data monitoring core agent fails to obtain the mapped memory space address is stored in the fault log, and the data monitoring core agent task is stopped; S2.3.2: The data monitoring core agent reads and parses the data monitoring loadable database from the mapped memory space; S2.3.3: Check the existence of the loadable database by judging whether the parsed database name meets the specified identifier. If it exists, execute S2.3.
4. If it does not exist, store the information that the loadable database does not exist in the fault log and stop the data monitoring core agent task. S2.3.4: Determine the integrity of the loadable database by performing a CRC check on the loadable database. If the CRC check passes, execute S2.3.
5. If the CRC check fails, store the incomplete information of the loadable database in the fault log and stop the data monitoring core agent task. S2.3.5: Determine the validity of the database by verifying the version of the loadable database. If the validity check passes, execute S2.3.
6. If the validity check fails, store the invalid information of the loadable database in the fault log and stop the data monitoring core agent task. S2.3.6: Determine whether the number of monitoring data items is greater than 0. If so, load the parameter list of each monitoring data according to the number of data items and enter S2.3.
7. Otherwise, store the information that there is no monitoring data item in the fault log and stop the data monitoring core agent task. S2.3.7: Establishing a data error information and a data storage offset address list, wherein the data error information includes a data item ID and error tag information; S2.3.8: Check whether the partition number of each input monitoring data item is within the partition range resident on the general processing module. If so, execute S2.3.
10. If not, store the information of the monitoring variable partition number error in the fault log, mark the corresponding data item data error information list, and execute S2.3.9; S2.3.9: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.3.
10. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task. S2.3.10: Check whether the data item address that is not marked with error information is within the legal address range. If so, execute S2.3.
12. If not, store the information that the monitored variable access address is out of bounds in the fault log, mark the corresponding data item data error information list, and execute S2.3.11; S2.3.11: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.3.
12. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task; S2.3.12: Check whether the size of the data item that is not marked with error information exceeds the maximum capacity of the message to be sent. If not, execute S2.3.
14. If it exceeds, store the information of the monitored variable size error in the fault log, mark the data error information list of the corresponding data item, and execute S2.3.13; S2.3.13: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.3.
14. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task. S2.3.14: Calculate the address range of the data items that are not marked with error information to prohibit access outside the specified legal address range. If the test passes, execute S2.3.
16. If the test fails, store the information of the monitored variable access address out of bounds in the fault log, mark the data error information list of the corresponding data item, and execute S2.3.15; S2.3.15: Filter out data that is not marked with error information. If the number of filtered data is greater than 0, execute S2.3.
16. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task; S2.3.16: Check whether the monitoring variable rate of the data item that is not marked with error information is within the specified monitoring rate range. If it passes the test, execute S2.
4. If it fails the test, store the monitoring rate error information in the fault log, mark the data error information list of the corresponding data item, and execute S2.3.17; S2.3.17: Filter out data without error information. If the number of filtered data is greater than 0, execute S2.
4. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task.
7. The method for acquiring airborne data automatic monitoring parameters according to claim 5, characterized in that: The S2.4 includes: S2.4.1: Obtain the corresponding resident application memory data of the data items that are not marked with error information in sequence according to the partition number, virtual address and size information. If the data acquisition is successful, execute S2.4.
3. If the data acquisition fails, store the information of the failure to obtain the data in the fault log, mark the data error information list of the corresponding data item, and execute S2.4.2; S2.4.2: Filter out data that is not marked with error information. If the number of filtered data is greater than 0, execute S2.4.
3. Otherwise, store the information that there is no valid monitoring data item in the fault log and stop the data monitoring core agent task; S2.4.3: Store the resident application memory data of the data item that is not currently marked with an error message into the mapped memory space; S2.4.4: Fill the offset address of the resident application memory data stored in S2.4.3 in the mapped memory space into the data storage offset address list of the corresponding data item; S2.4.5: Store the data error information and the data storage offset address list into the first address of the mapped memory space and enter S2.
1.
8. The method for acquiring airborne data automatic monitoring parameters according to claim 1, characterized in that: The S3 includes: S3.1: After the high-priority data monitoring core agent task is executed, the main process of the data monitoring software obtains the mapped memory space address. If the address is obtained successfully, S3.2 is executed. If the address is obtained unsuccessfully, the information that the data monitoring software fails to obtain the mapped memory space address is stored in the fault log, and the data monitoring software suspends the main process; S3.2: The main process of the data monitoring software reads and parses the data monitoring variable configuration parameters from the mapped memory space data monitoring loadable database; S3.3: Check the existence of the loadable database by judging whether the parsed database name meets the specified identifier. If it meets the requirements, execute S3.
4. If it does not meet the requirements, store the information that the loadable database does not exist in the fault log, and the data monitoring software suspends the main process. S3.4: The main process of the data monitoring software checks the integrity of the loadable database by performing a CRC check on the loadable database. If the CRC check passes, S3.5 is executed. If the CRC check fails, the incomplete information of the loadable database is stored in the fault log, and the data monitoring software suspends the main process; S3.5: Determine the validity of the database by verifying the version of the loadable database. If the validity verification passes, execute S3.
6. If the validity verification fails, the invalid information of the loadable database is stored in the fault log, and the data monitoring software suspends the main process. S3.6: The main process of the data monitoring software determines whether the number of monitored data items is greater than 0. If so, it enters S3.
7. Otherwise, the information that there is no monitored data item is stored in the fault log, and the data monitoring software suspends the main process; S3.7: The main process of the data monitoring software calculates whether the total length of the data item output data exceeds the maximum capacity of the message sending. If not, S3.8 is executed. If it exceeds, the information of the data item size overload is stored in the fault log, and the data monitoring software suspends the main process; S3.8: The main process of the data monitoring software creates and starts the periodic process; S3.9: The data monitoring software selects a list of target output data items to be output in the current cycle of process execution; S3.10: The data monitoring software reads the data error information and the data storage offset address list from the first address of the mapped memory space; S3.11: The data monitoring software cycle process reads the resident application memory data in the mapped memory space according to the data item ID of the correct data in the target output data item list and its corresponding data storage offset address list; S3.12: The data monitoring software cycle process sends the target output data item content composition message to the AFDX network; S3.13: The data monitoring software suspends the cycle process. If the suspension of the cycle process is successful, it enters S3.
14. If the suspension of the cycle process fails, the information of the cycle process scheduling failure is stored in the fault log, and the data monitoring software stops the cycle process; S3.14: The data monitoring software waits for the periodic process scheduling. After the high-priority data monitoring core agent task is executed, the periodic process starts to execute and returns to S3.
9.
9. The method for acquiring parameters of airborne data automatic monitoring according to claim 8, characterized in that: The S3.9 includes: S3.9.1: If there is a data monitoring rate error, set the corresponding data monitoring rate to 0; S3.9.2: The data monitoring software cycle process filters out a list of target output data items that need to be output during the current cycle of the process execution based on the software cycle information and the data monitoring rate.