CN118503033A - Method for monitoring data of application in IMA partition and IMA core computing module - Google Patents
Method for monitoring data of application in IMA partition and IMA core computing module Download PDFInfo
- Publication number
- CN118503033A CN118503033A CN202310120177.4A CN202310120177A CN118503033A CN 118503033 A CN118503033 A CN 118503033A CN 202310120177 A CN202310120177 A CN 202310120177A CN 118503033 A CN118503033 A CN 118503033A
- Authority
- CN
- China
- Prior art keywords
- data
- ima
- computing module
- core computing
- partition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3013—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
- G06F11/3093—Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
The application discloses a method and an IMA core computing module for monitoring data of an application in an IMA partition. A method for monitoring data of an application in an IMA partition, comprising: receiving a request for monitoring data of an application in an IMA partition of an IMA core computing module; obtaining data from a memory location in a memory of the IMA core computing module specified by the request by performing a data monitoring task in a module operating system layer of the IMA core computing module in response to the request; and outputting the data.
Description
Technical Field
The present invention relates generally to Integrated Modular Avionics (IMA) systems, and in particular to Data Monitoring (DM) in IMA systems.
Background
IMA architecture is widely used by avionics systems of aircraft. The IMA architecture is a hierarchical architecture in which the reliability of the overall system operation is ensured by partitioning (partition) for the program portion including code and data.
Fig. 1 shows a block diagram of a typical IMA core computing module 100. The IMA core computing module 100 may, for example, conform to the ARINC653 standard. The IMA core computing module 100 may include a plurality of partitions (partition 1 120a, partition 2 120b, …, partition n 120 n), each of which is isolated from each other by an isolation mechanism 110. Each partition is isolated from each other meaning that each partition has independent memory space, is able to independently use the processing resources of the IMA core computing module 100, and has independent running context, i.e., each partition's data and its operations are independent of each other. Partition 1 120a may include application 1 125a, partition 2 120b may include application 2 125b, and partition N120N may include application N125N. Application 1 125a, application 2 125b, …, application N125N may constitute the application layer of the IMA core computing module 100. The various partitions are in user mode for the IMA core computing module 100. The IMA core computing module 100 may also include a module operating system (Modular Operating System, mos) layer component 140 that constitutes the Mos layer of the IMA core computing module 100. The Mos layer component 140 may include a modular operating system (Mos) and may also include some extended function components. The Mos layer assembly 140 may interact with each partition through the first interface 130. The IMA core computing module 100 may also include a module support layer component 160 that constitutes a module support layer of the IMA core computing module 100. The Mos layer component 140 may manage the module support layer component 160 through the second interface 150. The module support layer component 160 may include hardware components and hardware support components. The Mos layer component 140 and the module support layer component 160 are in kernel mode for the IMA core computing module 100.
In aircraft avionics applications it is often desirable to monitor data of applications in the partitions of the IMA core computing module 100 to ensure safe and reliable operation of the entire avionics system. Existing methods of monitoring data for applications in partitions of the IMA core computing module 100 are implemented at the application layer. Chinese patent application publication No. CN 109377589a discloses a system and method for monitoring resident application data in an IMA system, which implements data monitoring by configuring data monitoring applications specifically at the application layer of the IMA system. However, due to the partitioning nature of the IMA architecture, configuring a dedicated data monitoring application at the application layer means that memory space and timing resources (corresponding to exclusive use of processing resources) of the IMA core computing module 100 need to be additionally allocated for that data monitoring application, which not only results in occupation of valuable resources of the IMA core computing module 100, but also necessitates modification of the IMA configuration. Furthermore, there is a need to allocate communication resources for the data monitoring application, which means that network ports need to be defined in advance, which further increases complexity. For example, if a664P7 network is used for communication, a communication link needs to be defined in advance.
Therefore, there is a need in the art for an application data monitoring technique that has little resource occupation of the IMA core computing module, little modification to the IMA configuration, flexibility, and ease of deployment.
Disclosure of Invention
The invention provides an application data monitoring technology which has the advantages of less resource occupation of an IMA core computing module, small change of IMA configuration, flexibility and easy deployment.
Some embodiments provide a method for data of an application in an IMA partition, the method comprising: receiving a request for monitoring data of an application in an IMA partition of an IMA core computing module; in response to the request, obtaining data from a memory location in a memory of the IMA core computing module specified by the request by performing a data monitoring task in a module operating system layer of the IMA core computing module; and outputting the data.
The method as described above, wherein obtaining data from a memory location in a memory of the IMA core computing module specified by the request comprises: a specified memory location in the memory is determined based on the monitoring item information included in the request.
The method of any of the above claims, wherein determining the specified memory location in the memory based on the monitoring item information included in the request comprises: determining a physical memory address of the data based on the monitoring item information; and obtaining data from a memory location in a memory of the IMA core computing module specified by the request comprises: data is obtained from the physical memory address.
The method of any one of the preceding claims, wherein the monitoring item information includes a partition ID of the IMA partition to be monitored and a virtual memory address of the data to be monitored in the IMA partition, wherein determining the physical memory address of the data based on the monitoring item information includes: the physical memory address is determined based on the partition ID and the virtual memory address.
The method of any of the above claims, wherein the monitoring item information further comprises a data size of the data to be monitored, and wherein obtaining the data from the physical address comprises: content within a range starting at a physical memory address and extending over a data size is obtained from the memory as data.
A method as claimed in any preceding claim, wherein the monitoring item information included in the request comprises IMA core computing module location information, wherein the IMA core computing module for which the request is intended is determined based on the IMA core computing module location information.
The method of any of the preceding claims, wherein receiving the request comprises: receiving the request through an ethernet port of the IMA core computing module, and outputting the data includes: the data is output through the ethernet port.
The method of any of the preceding claims, wherein receiving the request comprises: a request is received from a data monitoring tool.
The method of any of the preceding claims, wherein outputting the data comprises: outputting the data to a data monitoring tool, and wherein the method further comprises: the data is decoded by the data monitoring tool.
The method of any of the above claims, wherein the data monitoring task is run as a loadable item through a debug routine entry of the module operating system; and/or the data monitoring task has the lowest priority among all tasks performed by the IMA core computing module.
Some embodiments provide a machine-readable storage medium having stored thereon instructions which, when executed by a processing device of an IMA core computing module, perform a method as claimed in any preceding claim.
Some embodiments provide an apparatus for data of an application in an IMA partition, comprising means for performing a method as claimed in any one of the preceding claims.
Some embodiments provide an IMA core computing module that includes a plurality of IMAs, hardware resources, and module operating system layer components. Each IMA partition includes an application. The hardware resources include: a processor; and a memory comprising a respective memory space allocated for each IMA partition. The module operating system layer component is for interacting with the plurality of IMA partitions via the first interface and for providing support for hardware resources via the second interface, the module operating system layer component comprising data monitoring tasks for execution in the module operating system layer, wherein the data monitoring tasks are executed to: in response to receiving a request to monitor data of an application in an IMA partition of an IMA core computing module, obtaining data from a memory location in a memory of the IMA core computing module specified by the request; and instructing the IMA core computing module to output the data.
An IMA core computing module as described above wherein the data monitoring task is performed to determine a specified memory location in the memory based on the monitoring item information included in the request.
An IMA core computing module according to any preceding claim, wherein the data monitoring task is performed to: determining a physical memory address of the data based on the monitoring item information; and obtaining data from the physical memory address.
An IMA core computing module according to any one of the preceding claims, wherein the monitoring item information further comprises a partition ID of the IMA partition to be monitored and a virtual memory address of data to be monitored in the IMA partition, wherein the data monitoring task is performed to determine the physical memory address based on the partition ID and the virtual memory address.
An IMA core computing module according to any preceding claim wherein the monitoring item information further comprises a data size of data to be monitored, wherein the data monitoring task is performed to obtain from memory content starting at the physical memory address and continuing within the range of data sizes as data.
An IMA core computing module according to any preceding claim, wherein the monitoring item information included in the request comprises an IMA core computing module location, wherein the IMA core computing module for which the request is directed is determined based on the IMA core computing module location information.
An IMA core computing module according to any preceding claim, further comprising an ethernet port for receiving requests and outputting data.
An IMA core computing module according to any preceding claim, wherein the data monitoring task is run as a loadable item through a debug routine entry of the module operating system; and/or the data monitoring task has the lowest priority among all tasks performed by the IMA core computing module.
The technique for monitoring data of an application partition according to an embodiment of the invention is less resource intensive, less configuration change, and flexible and easy to configure for an IMA core computing module.
Drawings
For a better understanding of embodiments of the present invention, a more particular description of the summary of the invention outlined above is presented with reference to examples, some of which are illustrated in the accompanying drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments and are therefore not to be considered limiting of its scope.
Fig. 1 shows a block diagram of a typical IMA core computing module.
Fig. 2 shows a block diagram of the architecture of an IMA core computing module with data monitoring capabilities according to an embodiment of the invention.
Figure 3 illustrates interactions and associated workflows between an IMA core computing module and a DM tool for monitoring data of a partitioned application of the IMA core computing module according to an embodiment of the present invention.
Fig. 4 illustrates an example format of monitoring item information included in a data monitoring request according to an embodiment of the present invention.
Fig. 5 shows the allocation of memory resources to partitions in an IMA core computing module.
Fig. 6 shows the allocation of timing resources to partitions in an IMA core computation module.
Fig. 7 shows a flow chart of a method for monitoring data of an application in an IMA partition according to an embodiment of the invention.
Fig. 8 illustrates a machine-readable medium according to an embodiment of the invention.
Detailed Description
In the present application, some english acronyms are used to simplify the description. Specifically, in the present application, IMA refers to integrated modular avionics (INTEGRATED MODULAR AVIONICS), mos refers to modular operating system (Module operating system), DM refers to Data Monitoring (Data Monitoring), and APEX service refers to application execution (Application EXecutive) service.
In the present application, the term "component" may refer to hardware, software, firmware, or any combination thereof.
In the present application, related embodiments are described primarily in connection with the ARINC653 standard. However, those skilled in the art will appreciate that embodiments may be implemented under other relevant open system architecture standards, such as, for example, ISO7498 (information handling system—open systems interconnect—basic model), SAEAS4893 (generic open architecture (GOA) framework), ASAAC, etc. standards.
According to one aspect of the invention there is provided an IMA core computing module having data monitoring capabilities.
Fig. 2 shows a block diagram of the architecture of an IMA core computing module 200 with data monitoring capabilities according to an embodiment of the invention. The IMA core computing module 200 shown in fig. 2 is similar to the IMA core computing module 100 in fig. 1, but contains further details.
The IMA core computing module 200 may include a plurality of partitions (partition 1 220a, partition 2 220b, …, partition N220N), a Mos layer component 240, and a module support layer component 260. Wherein each partition is in user mode of the IMA core computing module 200 and the Mos layer component 240 and the module support layer component 260 are in kernel mode of the IMA core computing module 200.
Each partition may include a respective application. For example, partition 1 220a may include application 1 222a, partition 2 220b may include application 2 222b, and so on, and partition N220N may include application N222N. The various applications 222a, 222b, …, 222n of the partition may constitute an application layer of the IMA core computing module 200.
The various partitions 220a, 220b, …, 220n are isolated from each other by an isolation mechanism 210. Isolating the partitions from each other means that separate memory space of the IMA core computing module 200 can be allocated for each partition, and each partition monopolizes the timing of processing resources (e.g., processors) of the IMA core computing module 200; at the same time, the running environment (e.g., operating system) and running context of the applications within the partition may also be independent of each other. This partitioned isolation mechanism of the IMA core computing module 200 ensures the stability and reliability of operation of the IMA core computing module 200 and the overall avionics system.
The partitions may communicate via channels (i.e., inter-partition communication). For example, partition 1220 a and partition 2 220b may communicate over channel 228-1, partition 2 22-0b and partition N220N may communicate over channel 228-2, and partition N220N and partition 1220 a may communicate over channel 228-3. Inter-partition communication may, for example, conform to the APEX service interface standard.
The Mos layer component 240 may constitute a Mos layer of the IMA core computation module 200. The Mos layer component 240 may interact with the partitions through the interface 230. As an example, the interface 230 may be an APEX service interface. The Mos layer component 240 may provide scheduling and management of various resources of the IMA core computing module 200, such as partition loading, system reconfiguration, partition management, partition scheduling, time management, channel management, and the like.
The Mos layer assembly 240 may include a module operating system (Mos). In some embodiments, mos may provide all or a portion of the scheduling and management described above. In some embodiments, mos layer assembly 240 may also include additional extension components to provide at least some of the scheduling and management described above. In some embodiments, the Mos layer assembly 240 may include a Data Monitoring (DM) task 244. Some embodiments avoid many of the drawbacks of setting up specialized DM applications at the application layer by executing DM tasks 244 in the Mos layer (e.g., in the Mos layer component 240) to monitor the data of the applications in the partition, as will be discussed in more detail below. In addition, most IMA core computing modules' Mos are reserved with debug routine entries, so the DM task 244 can be run by designing a separate dynamic loadable item.
The module support layer component 260 may constitute a module support layer of the IMA core computing module 200. The module support layer assembly 260 can be managed and scheduled by the Mos layer assembly 240 through the interface 250.
In some embodiments, module support layer component 260 may include hardware support component 262 and hardware resources 264. The hardware support component 262 can be used to provide support for scheduling and management of the underlying hardware resources 264. By way of example, hardware support component 262 may provide CPU support, bus/device drivers, system boot, board level support packages, and the like.
In some embodiments, hardware resources 264 are scheduled and managed by support provided by hardware support component 262. In some embodiments, hardware resources 264 may also be directly scheduled and managed by Mos layer assembly 240 through interface 250. In some embodiments, hardware resources 264 may include processing resources 264-1, storage resources 264-2, and input/output (I/O) resources 264-3. The processing resource 264-1 may comprise a processor. The scheduling and management of the processing resources 264-1 by the IMA core computing module 200 is accomplished by scheduling the timing at which components (and in particular, partitions) within the IMA core computing module 200 enjoy exclusive rights to the processing resources 264-1, as will be discussed further below in connection with fig. 6. Storage resources 264-2 may comprise memory, such as Random Access Memory (RAM). The management of storage resources 264-2 by the IMA core computing module 200 is accomplished by allocating separate memory space for each partition, as will be discussed further below in connection with fig. 5. The I/O resources 264-3 may comprise various ports for communication of the IMA core computing module 200 with the outside. Those of ordinary skill in the art will appreciate that the hardware resources 264 may include more or fewer hardware components than are shown in FIG. 2, depending on the particular application.
Fig. 3 illustrates interactions and associated workflows 390 between the IMA core computing module 300 and the DM tool 380 for monitoring data of a partitioned application of the IMA core computing module 300 according to an embodiment of the present invention. In particular, the top half of fig. 3 shows interactions between the IMA core computing module 300 and the DM tool 380, and the bottom half shows a workflow 390 between related components.
The IMA core computing module 300 in fig. 3 may be the IMA core computing module 200 shown in fig. 2. Partition application 1 320a, partition application 2 320b, …, partition application N320N may be application 1 222a, application 2 222b, …, application N222N shown in fig. 2. DM task 342 may be DM task 244 shown in fig. 2. Memory 360 may be storage resource 264-2 shown in fig. 2. For clarity, other components of the IMA core computing module 300 are not shown in fig. 3, but those skilled in the art will appreciate that the components of the IMA core computing module 200 described above in connection with fig. 2 may all be present in the IMA core computing module 300 and operate in the manner described.
In the IMA core computing module 300 shown in fig. 3, the memory 360 is further shown to include a first memory space 362, a second memory space 364, …, an nth memory space 366, which may be separate memory spaces allocated for partition application 1 320a, partition application 2 320b, …, partition application N320N, respectively, as indicated by the dashed lines in fig. 3. The allocation of memory space in memory 360 for each partition is done at the time of configuration of the IMA core computing module 300. The IMA core computing module 300 may also include a port 370. In some embodiments, the port 370 may be an ethernet port.
In the scenario illustrated in fig. 3, a DM request may be sent to the IMA core computing module 300 by the DM tool 380 and the requested data received from the IMA core computing module 300. DM tool 380 may include port 375. In some embodiments, the port 375 may comprise an ethernet port. The DM request and response procedure between the DM tool 380 and the IMA core computing module 300 may be implemented through a communication link between the port 375 and the port 370.
Further referring to the workflow 390 in fig. 3, an interaction process between the DM tool 380, DM task 342, and the memory 360 is illustrated. For data monitoring, a DM request is first sent by the DM tool 380 to a DM task 342 in the Mos layer of the IMA core computing module 300, as shown at 391. In some embodiments, the DM tool 380 may send the request through an ethernet port and the IMA core computing module 300 may receive the request through an ethernet port paired therewith. By passing the request via the ethernet port, defining the communication port in the application layer can be avoided, thereby reducing implementation complexity.
The running DM task 342 residing in the Mos layer in the IMA core computing module 300 may analyze the request, as shown at 392. The request may include monitoring item information indicating the location of the data of the partition application to be monitored.
In some embodiments, the monitoring item information may include IMA core computing module location information. An IMA core computing module for which the request is directed may be determined based on the core computing module location information. The DM tool 380 may communicate with a plurality of IMA core computing modules and send requests to the IMA core computing modules for which based on IMA core computing module location information. In some embodiments, the DM tool 380 may send a request to each IMA core computing module in a "broadcast" mode, determine, by each IMA core computing module receiving the request, whether the request is directed thereto based on IMA core computing module location information contained in the request, and in response to determining that the request is directed thereto, continue to retrieve the requested data by the IMA core computing module based on monitoring item information contained in the request, otherwise, the IMA core computing module does not perform further processing. In some embodiments, the DM tool 380 may send requests directly to the targeted IMA core computing module based on the IMA core computing module location information via a "point-to-point" mode, with the corresponding IMA core computing module receiving the requests and retrieving the requested data.
In some embodiments, the monitor item information may include a partition ID and a virtual memory address. By running the DM task 342, information about the memory location in the memory 360 of the data of the partition application to be monitored can be parsed out. In some embodiments, this information may include a partition ID and a virtual memory address. The physical memory address where the requested data is located may be determined by running the DM task 342 based on the partition ID and the virtual memory address.
The data of the requested partition application is then retrieved from memory 360 by running DM task 342, as shown at 393. Based on the determined physical memory address of the requested data in memory 360, data is obtained from memory 360. In some embodiments, the monitoring item information in the request may also include a data size. Accordingly, obtaining data from the determined physical memory address of the memory 360 may be accomplished by retrieving from the memory 360 the contents of the range starting at the determined physical memory address and extending the data size as the requested data.
The requested data is then returned from the memory 360 to the DM task 342 as shown at 394. In the example shown in fig. 3, the requested data is shown returned from the second memory space 364 of the memory 360 to the DM task 342.
Subsequently, by running the DM task 342, data can be output from the IMA core computing module 300 to the DM tool 380, as shown at 395. The DM tool 380 may then decode the data, as shown at 396. In some embodiments, the IMA core computing module 300 may output data through an ethernet port and the DM tool 380 may receive the data through a paired ethernet port. By passing the requested data via the ethernet port, defining the communication port in the application layer can be avoided, thereby reducing implementation complexity.
Fig. 4 illustrates an example format of monitoring item information included in a data monitoring request according to an embodiment of the present invention.
In some embodiments, the monitoring item information may include IMA core computing module location information 410. By providing this IMA core computing module location information 410, the IMA core computing module for which the request is directed can be determined as described above in connection with fig. 3. In some embodiments, request item information including IMA core computing module location information 410 may be sent to each IMA core computing module via "broadcast mode". In some embodiments, the IMA core computing module for which the request is directed may be determined based on the IMA core computing module location information 410, and the request is sent directly to the determined IMA core computing module via a "point-to-point" mode.
In some embodiments, the monitoring item information may include partition ID 420 and virtual memory address 430. From the partition ID 420 and virtual memory address 430, the physical memory address of the requested data in the memory of the IMA core computing module can be determined.
In some embodiments, the monitoring item information may include a data size 440. To obtain the requested data, the requested data may be obtained by determining a physical memory address of the requested data in the memory of the IMA core computing module and retrieving, as the requested data, a range of contents extending the data size starting from the physical memory address.
Those skilled in the art will appreciate that depending on the particular addressing scheme, more or less information may be included in the monitored item information included in the request.
Fig. 5 shows the allocation of memory resources to partitions in an IMA core computing module.
In particular, FIG. 5 illustrates a memory 500, which memory 500 may be the storage resource 264-2 described above with reference to FIG. 2 or the memory 360 described above with reference to FIG. 3. Memory 500 may include memory space 1 510, memory spaces 2 520, …, and memory space N530. As an example, memory space 1 510 may be allocated for partition 1 220a in fig. 2, memory space 2 520 may be allocated for partition 2 220b in fig. 2, and memory space N530 may be allocated for partition N220N in fig. 2. The allocation may be done at the time of configuration of the IMA core computing module.
For data monitoring by DM applications in the application layer in the prior art, a memory space (e.g., memory space N530 in fig. 5) must be allocated specifically for the DM application. The method not only occupies precious storage resources of the IMA core computing module, but also needs to change the configuration of the IMA core computing module. In addition, DM applications executing at the application layer need to communicate data through inter-partition communication between the partitions where the application is located (e.g., see fig. 2, through channels 228-1, 228-2, 228-3), which further increases the communication overhead of the application layer, and in this way can only passively receive data communicated from other partitions (because the application layer has no access to memory)). In contrast, the data monitoring according to the embodiments of the present invention can directly retrieve the requested data in the memory by running the DM task in the Mos layer, without additional allocation of memory space and without making changes to the configuration of the memory allocation. And because the Mos layer assembly can access the memory, the mode can directly retrieve the data from the memory through the memory address information of the requested data, thereby further avoiding the communication overhead of an application layer.
Fig. 6 shows the allocation of timing resources to partitions in an IMA core computation module.
Specifically, a complete time frame 600 is shown in FIG. 6, which includes time windows 610, 620, 630, …, 640. The time in fig. 6 may correspond to the timing of the allocation of processing resources of the IMA core computing module. As an example, the time window 610 may be allocated for partition 1 220a in fig. 2, meaning that within the time window 610, partition 1 220a may monopolize the processing resources of the IMA core computing module. Similarly, time window 620 may be allocated for partition 2 220b in fig. 2, meaning that within time window 620, partition 2 220b may monopolize the processing resources of the IMA core computing module. The time window 630 may be an idle window (i.e., processing resources are not occupied). The time window 640 may be allocated for the partition N220N in fig. 2, meaning that within the time window 640, the partition N220N may monopolize the processing resources of the IMA core computing module. In operation, each partition may synchronize its respective clock to the clock of the IMA core computing module such that each partition occupies processing resources only within the time window to which it is allocated, thereby achieving isolation of the partition in terms of processing resources. The allocation of the time window is also done at the time of configuration of the IMA core computing module.
For data monitoring by DM applications in the application layer in the prior art, a special time window (e.g., time window 640 in fig. 6) must be allocated to the DM application, thereby occupying valuable processing resources of the IMA core computing module and increasing the time for task execution, and requiring changes to the original timing allocation of the IMA core computing module. In contrast, DM tasks according to embodiments of the present invention may even be performed within an idle time window (e.g., time window 630) where the original resources are not occupied by any partitions. This may correspond to the DM task having the lowest priority among all tasks of the IMA core computing module (since the idle time window 630 corresponds to the lowest priority). In this way, the execution of the DM task occupies little additional processing resources at the IM core computing module, and only small changes to the timing allocation need be made (i.e., the DM task is configured to execute within an idle time window).
According to another aspect of the invention there is provided a method for monitoring data of an application in an IMA partition.
Fig. 7 shows a flow chart of a method 700 for monitoring data of an application in an IMA partition according to an embodiment of the invention. The method may be performed, for example, by the IMA core computing module 200 described above in connection with fig. 2 or by the IMA core computing module 300 and DM tool 380 described above in connection with fig. 3.
The method 700 may include: at step 710, a request to monitor data of an application in an IMA partition of an IMA core computing module is received. In some embodiments, the request may be received through an ethernet port of the IMA core computing module. In some embodiments, the request may be received from a DM tool.
The method 700 may further include: at step 730, in response to the request, data is obtained from a memory location in a memory of the IMA core computing module specified by the request by performing a monitoring task in the module operating system layer. In some embodiments, this may include: at step 735, a specified memory location in the memory is determined based on the monitored item information included in the request.
In some embodiments, determining the specified memory location in the memory based on the monitoring item information included in the request may include: determining a physical memory address of the requested data based on the monitored item information; and obtaining data from a memory location in a memory of the IMA core computing module specified by the request may include: the data is obtained from the physical memory address. In some embodiments, the monitoring item information may include a partition ID of the IMA partition to be monitored and a virtual memory address of the data to be monitored in the IMA partition; and determining the physical memory address of the data based on the monitoring item information includes: the physical memory address is determined based on the partition ID and the virtual memory address. In some embodiments, the monitoring item information further includes a data size of the data to be monitored; and obtaining data from the physical address includes: content starting at the physical address and extending over the range of data sizes is obtained from the memory as data.
In some embodiments, the monitoring item information may include IMA core computing module location information. An IMA core computing module for which the request is directed may be determined based on the core computing module location information. For example, in the embodiment shown in fig. 3, the DM tool 380 may communicate with a plurality of IMA core computing modules and send requests to the IMA core computing modules for which it is intended based on IMA core computing module location information. In some embodiments, the DM tool 380 may send a request to each IMA core computing module in a "broadcast" mode, determine, by each IMA core computing module receiving the request, whether the request is directed thereto based on IMA core computing module location information contained in the request, and in response to determining that the request is directed thereto, continue to retrieve the requested data by the IMA core computing module based on monitoring item information contained in the request, otherwise, the IMA core computing module does not perform further processing. In some embodiments, the DM tool 380 may send requests directly to the targeted IMA core computing module based on the IMA core computing module location information via a "point-to-point" mode, with the corresponding IMA core computing module receiving the requests and retrieving the requested data.
The method 700 may further include: at step 750, the data is output. In some embodiments, this may include: and outputting data through an Ethernet port of the IMA core computing module. In some embodiments, this may include: the data is output to the DM tool.
The method 700 may further include: at step 770, the received data is decoded by the DM tool. In some embodiments, this step 750 may be omitted.
In some embodiments, the DM task may be run as a loadable item, through the debug routine entry of the Mos. In some embodiments, the DM task may have the lowest priority among all tasks performed by the IMA core computing module, e.g., may be allocated an idle time window of the IMA core computing module to be performed.
According to yet another aspect of the present invention, a machine-readable medium is provided.
Fig. 8 illustrates a machine-readable medium 800 according to an embodiment of the invention.
The machine-readable medium 800 may include instructions 850. The instructions 850 may constitute a DM task (e.g., DM task 244 in fig. 2) in an embodiment in accordance with the invention. A method according to an embodiment of the invention (e.g., method 700 in fig. 7) is performed in response to the instruction being executed by a processing device of an IMA core computing module.
Various aspects of the invention have been described in connection with the embodiments. It should be understood that the embodiments are merely illustrative and not limiting.
Claims (20)
1. A method for monitoring data of an application in an integrated modular avionics IMA partition, the method comprising:
Receiving a request for monitoring data of an application in an IMA partition of an IMA core computing module;
In response to the request, obtaining the data from a memory location in a memory of the IMA core computing module specified by the request by performing a data monitoring task in a module operating system layer of the IMA core computing module; and
And outputting the data.
2. The method of claim 1, wherein obtaining the data from a memory location in a memory of the IMA core computing module specified by the request comprises: a specified memory location in the memory is determined based on monitoring item information included in the request.
3. The method of claim 2, wherein,
Determining a specified memory location in the memory based on monitoring item information included in the request includes: determining a physical memory address of the data based on the monitored item information, and
Obtaining the data from a memory location in a memory of the IMA core computing module specified by the request includes: and obtaining the data from the physical memory address.
4. The method of claim 3, wherein the monitoring item information includes a partition ID of the IMA partition to be monitored and a virtual memory address of the data to be monitored in the IMA partition,
Wherein determining the physical memory address of the data based on the monitoring item information comprises: the physical memory address is determined based on the partition ID and the virtual memory address.
5. The method of claim 3, wherein the monitoring item information further comprises a data size of the data to be monitored,
Wherein obtaining the data from the physical memory address comprises: content from the memory within a range starting at the physical memory address and extending over the data size is obtained as the data.
6. The method of claim 1, wherein the monitoring item information included in the request includes IMA core computing module location information, wherein an IMA core computing module for which the request is directed is determined based on the IMA core computing module location information.
7. The method of claim 1, wherein,
Receiving the request includes: receiving the request through an ethernet port of the IMA core computing module, and
Outputting the data includes: and outputting the data through the Ethernet port.
8. The method of claim 1, wherein receiving the request comprises: the request is received from a data monitoring tool.
9. The method of claim 1, wherein outputting the data comprises: outputting said data to said data monitoring tool,
Wherein the method further comprises:
the data is decoded by the data monitoring tool.
10. The method of claim 1, wherein the data monitoring task is run as a loadable item through a debug routine entry of the module operating system; and/or
The data monitoring task has the lowest priority among all tasks performed by the IMA core computing module.
11. A machine readable storage medium having stored thereon instructions which, when executed by a processing device monitoring an integrated modular avionics IMA core computing module, perform the method of any one of claims 1-10.
12. An apparatus for monitoring data of an application in an integrated modular avionics IMA partition, comprising means for performing the method of any one of claims 1-10.
13. An integrated modular avionics IMA core computing module comprising:
a plurality of IMA partitions, each IMA partition comprising an application;
hardware resources, the hardware resources comprising:
A processor; and
The memory comprises a corresponding memory space allocated for each IMA partition;
a module operating system layer component for interacting with the plurality of IMA partitions via a first interface and for providing support for the hardware resources via a second interface, the module operating system layer component comprising data monitoring tasks for being performed in the module operating system layer,
Wherein the data monitoring task is performed to:
in response to receiving a request to monitor data of an application in an IMA partition of the IMA core computing module, obtaining the data from a memory location in a memory of the IMA core computing module specified by the request; and
And instructing the IMA core computing module to output the data.
14. The IMA core computing module of claim 13, wherein the data monitoring task is performed to:
a specified memory location in the memory is determined based on monitoring item information included in the request.
15. The IMA core computing module of claim 14, wherein the data monitoring task is performed to:
Determining a physical memory address of the data based on the monitoring item information;
And
And obtaining the data from the physical memory address.
16. The IMA core computing module of claim 15, wherein the monitoring item information further includes a partition ID of an IMA partition to be monitored and a virtual memory address of data to be monitored in the IMA partition,
Wherein the data monitoring task is performed to:
The physical memory address is determined based on the partition ID and the virtual memory address.
17. The IMA core computing module of claim 15, wherein said monitoring item information further comprises a data size of data to be monitored,
Wherein the data monitoring task is performed to:
Content from the memory within a range starting at the physical memory address and extending over the data size is obtained as the data.
18. An IMA core computing module according to claim 13 wherein the monitoring item information included in the request includes an IMA core computing module location, wherein the IMA core computing module for which the request is directed is determined based on the IMA core computing module location information.
19. The IMA core computing module of claim 13, further comprising an ethernet port to receive the request and output the data.
20. The IMA core computing module of claim 13, wherein the data monitoring task is run as a loadable item through a debug routine entry of the module operating system; and/or
The data monitoring task has the lowest priority among all tasks performed by the IMA core computing module.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310120177.4A CN118503033A (en) | 2023-02-14 | 2023-02-14 | Method for monitoring data of application in IMA partition and IMA core computing module |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310120177.4A CN118503033A (en) | 2023-02-14 | 2023-02-14 | Method for monitoring data of application in IMA partition and IMA core computing module |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN118503033A true CN118503033A (en) | 2024-08-16 |
Family
ID=92230131
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202310120177.4A Pending CN118503033A (en) | 2023-02-14 | 2023-02-14 | Method for monitoring data of application in IMA partition and IMA core computing module |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN118503033A (en) |
-
2023
- 2023-02-14 CN CN202310120177.4A patent/CN118503033A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8032899B2 (en) | Providing policy-based operating system services in a hypervisor on a computing system | |
| US20050251806A1 (en) | Enhancement of real-time operating system functionality using a hypervisor | |
| US7865689B2 (en) | Parallel installation of logical partitions | |
| US8713582B2 (en) | Providing policy-based operating system services in an operating system on a computing system | |
| US11347546B2 (en) | Task scheduling method and device, and computer storage medium | |
| CN114168271B (en) | Task scheduling method, electronic device and storage medium | |
| JP2008186136A (en) | Computer system | |
| EP3637252A1 (en) | Virtual machine deployment method and omm virtual machine | |
| GB2473136A (en) | Allocating resources to partitions in a data processing system at start up according to a configuration profile | |
| CN111625293A (en) | Terminal dual system based on linux kernel and hardware access management method thereof | |
| US20250165309A1 (en) | System and method for managing namespace of offloading card and processing input/output request | |
| US11734083B1 (en) | Systems and methods for inter-partition communication | |
| CN114546587A (en) | A method for expanding and shrinking capacity of online image recognition service and related device | |
| KR20180044579A (en) | System and method for managing container-based distributed application | |
| CN114296808A (en) | Pin configuration method and device, electronic equipment and storage medium | |
| EP3193253A1 (en) | Method, apparatus and system for displaying names of virtual machine | |
| CN118503033A (en) | Method for monitoring data of application in IMA partition and IMA core computing module | |
| US10528397B2 (en) | Method, device, and non-transitory computer readable storage medium for creating virtual machine | |
| CN117742890A (en) | Virtual machine creation method, device, equipment and storage medium | |
| EP2113841A1 (en) | Allocating resources in a multicore environment | |
| JP2011221634A (en) | Computer system, logic section management method and logic division processing program | |
| US11954512B2 (en) | Control device and control method | |
| EP3811210B1 (en) | Method and supporting node for supporting process scheduling in a cloud system | |
| EP3791274B1 (en) | Method and node for managing a request for hardware acceleration by means of an accelerator device | |
| CN112416566A (en) | IMA general processing module resource scheduling analysis method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination |