Software distributed compiling method and device, electronic equipment and storage medium

By establishing projects for the operating system, platform software and application software separately, and compiling them into VxWorks programs and lib libraries or executable programs, the problems of poor independence and maintenance caused by unified compilation in the existing technology are solved, and independent distributed compilation under the cert version is realized, which improves the independence and maintenance of software products.

CN120335812APending Publication Date: 2025-07-18CRSC URBAN RAIL TRANSIT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510219482.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-26
Publication Date
2025-07-18

AI Technical Summary

Technical Problem

Under the cert version, the operating system, platform software and application software need to be compiled uniformly, resulting in poor independence and maintenance of software products.

Method used

The operating system, platform software and application software are separately established. The operating system is compiled into VxWorks program, the platform software is compiled into lib library, and the application software is compiled into executable programs to realize distributed compilation of the operating system, platform software and application software.

Benefits of technology

Under the cert version, independent distributed compilation of operating system, platform software and application software is realized, improving the independence and maintenance of software products.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120335812A_ABST
    Figure CN120335812A_ABST
Patent Text Reader

Abstract

The invention provides a software distributed compiling method and device, electronic equipment and a storage medium, and relates to the technical field of software developing.The method comprises the steps that when a project is established, a project is independently established for an operating system, platform software and application software; the operating system is a Cert version VxWorks operating system; an operating system is compiled into a VxWorks program, platform software is compiled into a lib library, and application software is compiled into an executable program. According to the method, under the cet version, the limitation that the operating system, the platform software and the application software can only be compiled in a unified mode is eliminated, independent distributed compiling of the operating system, the platform software and the application software is achieved and does not affect one another, and the independence and maintainability of software products are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of software development, and particularly to a software distributed compilation method, device, electronic device, and storage medium. Background Art

[0002] The system software of the general security platform runs under the VxWorks operating system, and the VxWorks operating system is divided into a cert version (security certification version) and a non-cert version (without security certification).

[0003] The design principle of the general security platform is as follows: Use the secure computers A and B of the cert version (security certification version), and use the non-secure computer C of the non-cert version (without security certification).

[0004] In the existing general security platform system that has been released and used, under the cert version, it only supports compiling the operating system, platform software, and application software into an executable program and deploying it to computers A and B. When in use, restart the industrial control computer program to run automatically.

[0005] However, when facing actual product applications, for example, when only the application software is modified (such as interlocking software), it is necessary to provide the source codes of the operating system, platform software, and application software for unified compilation, resulting in poor independence and maintainability of software products. Summary of the Invention

[0006] The present invention provides a software distributed compilation method, device, electronic device, and storage medium, which are used to solve the defect in the prior art that under the cert version, the operating system, platform software, and application software need to be uniformly compiled, resulting in poor independence and maintainability of application software, and realize the distributed compilation of the operating system, platform software, and application software under the cert version, improving the independence and maintainability of software products.

[0007] The present invention provides a software distributed compilation method, including: When establishing a project, separately establish a project for the operating system, platform software, and application software; the operating system is the cert version VxWorks operating system; Compile the operating system into a VxWorks program, compile the platform software into a lib library, and compile the application software into an executable program.

[0008] In some embodiments, the step of, when establishing a project, separately establishing a project for the operating system, platform software, and application software includes: Separate a VxWorks project for the operating system, separate an RTP project for the platform software, and separate an RTP project for the application software.

[0009] In some embodiments, the method further includes: When compiling the application software, link the application software to the lib library.

[0010] In some embodiments, the operating system is used for: Use the rtpSpawn function to fix the name and placement path of the application software; Based on the name and placement path of the application software, call the application software.

[0011] In some embodiments, the architecture of the general security platform is a 2-by-2-take-2 security hardware architecture built using a general computer.

[0012] The present invention also provides a software distributed compilation device, including: A project establishment module, which is used to separately establish a project for the operating system, platform software, and application software when establishing a project; the operating system is the cert version VxWorks operating system; A compilation module, which is used to compile the operating system into a VxWorks program, compile the platform software into a lib library, and compile the application software into an executable program.

[0013] In some embodiments, the project establishment module is specifically used for: Separate ly establish a VxWorks project for the operating system, a RTP project for the platform software, and a RTP project for the application software.

[0014] In some embodiments, the device further includes: A linking module, which is used to link the application software to the lib library when compiling the application software.

[0015] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the computer program, the software distributed compilation method as described in any one of the above is implemented.

[0016] The present invention also provides a non-transitory computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the software distributed compilation method as described in any one of the above is implemented.

[0017] The present invention also provides a computer program product, including a computer program. When the computer program is executed by a processor, the software distributed compilation method as described in any one of the above is implemented.

[0018] The software distributed compilation method, device, electronic device and storage medium provided by the present invention realize the separation of the operating system, platform software and application software by separately establishing a project for the operating system, platform software and application software. When implementing the project application, the development manufacturer or developer of the operating system only needs to provide an independent VxWorks program, the development manufacturer or developer of the platform software only needs to provide an independent lib library, and the application software manufacturer or developer only needs to compile the software they are responsible for into an executable program and place it in the same directory as the operating system and platform software to finally run. Under the cert version, it breaks away from the limitation that the operating system, platform software and application software can only be compiled together, realizes the independent distributed compilation of the operating system, platform software and application software, and does not affect each other, improving the independence and maintainability of software products. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the drawings in the following description are some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.

[0020] Figure 1 It is a schematic flowchart of the software distributed compilation method provided by the present invention.

[0021] Figure 2 It is a schematic hardware architecture diagram of a general security platform.

[0022] Figure 3 It is a schematic structural diagram of the software distributed compilation device provided by the present invention.

[0023] Figure 4 It is a schematic structural diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0024] To make the objectives, technical solutions and advantages of the present invention clearer, the following will clearly and completely describe the technical solutions in the present invention with reference to the accompanying drawings in the present invention. Obviously, the described embodiments are some, but not all, of the embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts fall within the scope of protection of the present invention.

[0025] To facilitate a clearer understanding of the present invention, some relevant technical knowledge is introduced as follows.

[0026] (1) Railway signal: A general term for technical equipment that ensures the safety of train operation and shunting operation, improves the passing capacity of stations and sections and the train marshalling and unmarshalling capacity, and improves the working conditions of operating personnel.

[0027] (2) 2-by-2 take-2 structure: The 2-by-2 take-2 safety platform combines fault masking technology and fault switching technology, and is composed of two subsystems with exactly the same functions, namely Channel A and Channel B. Channels A and B form a primary and standby redundancy relationship. Each channel uses 2 independent computers to independently operate on the system input signal, and the operation results are compared. If the results are the same, the system output is performed; if the results are different or a self-checking failure occurs, the channel failure is judged. When the other channel is working properly, it automatically switches to the other channel to work. (Note: Most of the railway signal safety products used in China currently are of the 2-by-2 take-2 structure designed with special computers.) (3) General safety platform: Here it refers to a safety platform that meets the SIL4 safety requirements built with general-purpose computers in the field of railway signals.

[0028] (4) General-purpose computer: That is, the general computer in the market. (Note: However, the general safety platform has certain requirements for the hardware and operating system of the general-purpose computer.) In the logic of this article, the general-purpose computer is opposed to the special computer.

[0029] (5) VxWorks operating system: An embedded real-time operating system with characteristics such as real-time performance, modular design, multi-task processing, scalability, and cut-ability.

[0030] Figure 1 It is a flow chart of the software distributed compilation method provided by the present invention. As Figure 1 shown, the present invention provides a software distributed compilation method, which is applied to a general safety platform and includes: Step 110, when establishing a project, separately establish a project for the operating system, platform software, and application software; the operating system is the cert version of the VxWorks operating system; Step 120, compile the operating system into a VxWorks program, compile the platform software into a lib library, and compile the application software into an executable program.

[0031] Specifically, when establishing a project, the operating system, platform software, and application software are divided into 3 projects for establishment, that is, the operating system corresponds to one project, the platform software corresponds to one project, and the application software corresponds to one project, realizing the separation of the operating system, platform software, and application software. The operating system is the cert version of the VxWorks operating system used by the general safety platform.

[0032] Compile the operating system into a VxWorks program (consistent with the existing VxWorks program). Compile the platform software into a lib library. In programming, a lib library refers to a kind of library file, which is a set of compiled codes for other programs to use to avoid rewriting the same code. For example, compile it into a lib library file in the form of.a. Compile the application software into an executable program (e.g., App_RTP.vxe).

[0033] The software distributed compilation method provided by the embodiments of the present invention realizes the separation of the operating system, platform software, and application software by separately creating a project for the operating system, platform software, and application software. When implementing the project application, the operating system developer or developer only needs to provide an independent VxWorks program, the platform software developer or developer only needs to provide an independent lib library, and the application software manufacturer or developer only needs to compile the software they are responsible for into an executable program and place it in the same directory as the operating system and platform software to finally run. Under the cert version, it breaks away from the limitation that the operating system, platform software, and application software can only be compiled together, realizes the independent distributed compilation of the operating system, platform software, and application software, and does not affect each other, improving the independence and maintainability of software products.

[0034] In some embodiments, when creating a project, separately creating a project for the operating system, platform software, and application software includes: Create a separate VxWorks project for the operating system, a separate RTP project for the platform software, and a separate RTP project for the application software.

[0035] Specifically, create a separate VxWorks project for the operating system, a separate Real-Time Transport Protocol (RTP) project for the platform software, and a separate RTP project for the application software.

[0036] In some embodiments, the software distributed compilation method provided by the present invention further includes: When compiling the application software, link the application software to the lib library.

[0037] Specifically, when compiling the application software, link the application software to the lib library of the platform software to realize the call of the platform software interface by the application software.

[0038] In some embodiments, the operating system is specifically used for: Use the rtpSpawn function to fix the name and placement path of the application software; Call the application software based on the name and placement path of the application software.

[0039] Specifically, the rtpSpawn function is a function used to create RTP in the VxWorks operating system. The operating system uses the rtpSpawn function to fix the name and placement path of the application software, and realizes the call of the application software through the name and placement path of the application software.

[0040] In some embodiments, the architecture of the general security platform is a 2-by-2 take-2 security hardware architecture built with general-purpose computers. Specifically, Figure 2 is a schematic diagram of the hardware architecture of the general security platform, as Figure 1 shown, the general security platform uses 6 general-purpose computers to build a 2-by-2 take-2 security hardware architecture. The specific hardware architecture is as follows: 6 general-purpose computers form two systems (System I and System II), and each system includes three devices, which are defined as Machine A, Machine B, and Machine C respectively; the 2-by redundancy hot standby function is realized through the two systems, and the Machine A and Machine B within the system realize the 2-take-2 security logic operation function, and Machine C is used as the communication machine. The three devices within the system and the corresponding devices between the systems are connected through redundant Ethernet (as Figure 1 shown by the solid and dashed lines in), and all communication interfaces of external devices are connected to the Machine C of the two systems only through Ethernet.

[0041] The software distributed compilation device provided by the present invention will be described below. The software distributed compilation device described below can be correspondingly referred to the software distributed compilation method described above.

[0042] Figure 3 is a schematic diagram of the structure of the software distributed compilation device provided by the present invention, as Figure 3 shown, the present invention provides a software distributed compilation device, including: The project establishment module 310 is used to separately establish a project for the operating system, platform software, and application software when establishing a project; the operating system is the cert version VxWorks operating system; The compilation module 320 is used to compile the operating system into a VxWorks program, compile the platform software into a lib library, and compile the application software into an executable program.

[0043] In some embodiments, the project establishment module 310 is specifically used for: Separate a VxWorks project for the operating system, separate an RTP project for the platform software, and separate an RTP project for the application software.

[0044] In some embodiments, the device further includes: A linking module, configured to link the application software to the lib library when compiling the application software.

[0045] In some embodiments, the operating system is configured to: Use the rtpSpawn function to fix the name and placement path of the application software; Based on the name and placement path of the application software, call the application software.

[0046] In some embodiments, the architecture of the general security platform is a 2-by-2-take-2 security hardware architecture built with a general computer.

[0047] It should be noted here that the above software distributed compilation device provided by the present invention can implement all the method steps implemented by the above method embodiments and can achieve the same technical effects. The same parts and beneficial effects as those in the method embodiments will not be specifically described in this embodiment.

[0048] Figure 4 It is a schematic structural diagram of an electronic device provided by the present invention. As Figure 4 shown, the electronic device may include: a processor 410, a communication interface 420, a memory 430, and a communication bus 440. Among them, the processor 410, the communication interface 420, and the memory 430 communicate with each other through the communication bus 440. The processor 410 can call the logical instructions in the memory 430 to execute the software distributed compilation method, which includes: when establishing a project, separately establish a project for the operating system, platform software, and application software; the operating system is the cert version of the VxWorks operating system; compile the operating system into a VxWorks program, compile the platform software into a lib library, and compile the application software into an executable program.

[0049] In addition, when the logical instructions in the above-mentioned memory 430 are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or a part of this technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in various embodiments of the present invention. The aforementioned storage medium includes: various media such as USB flash drives, mobile hard disks, read-only memories (ROM, Read-Only Memory), random access memories (RAM, Random Access Memory), magnetic disks, or optical discs that can store program codes.

[0050] On the other hand, the present invention also provides a computer program product. The computer program product includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the software distributed compilation method provided by the above-mentioned various methods. The method includes: when establishing a project, separately establishing a project for the operating system, platform software, and application software; the operating system is the cert version of the VxWorks operating system; compiling the operating system into a VxWorks program, compiling the platform software into a lib library, and compiling the application software into an executable program.

[0051] In yet another aspect, the present invention also provides a non-transitory computer-readable storage medium with a computer program stored thereon. When the computer program is executed by a processor, it is implemented to execute the software distributed compilation method provided by the above-mentioned various methods. The method includes: when establishing a project, separately establishing a project for the operating system, platform software, and application software; the operating system is the cert version of the VxWorks operating system; compiling the operating system into a VxWorks program, compiling the platform software into a lib library, and compiling the application software into an executable program.

[0052] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated. The components shown as units may or may not be physical units, that is, they may be located in one place or distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. A person of ordinary skill in the art can understand and implement it without creative labor.

[0053] Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, it can also be implemented by hardware. Based on this understanding, the essence of the above technical solution, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.

[0054] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements for some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A software distributed compilation method, applied to a general security platform, characterized in that, Including: When establishing a project, a separate project is established for the operating system, platform software, and application software respectively; the operating system is the cert version of the VxWorks operating system; The operating system is compiled into a VxWorks program, the platform software is compiled into a lib library, and the application software is compiled into an executable program.

2. The software distributed compilation method according to claim 1, wherein When establishing a project, establishing a separate project for the operating system, platform software, and application software respectively includes: Establishing a separate VxWorks project for the operating system, establishing a separate RTP project for the platform software, and establishing a separate RTP project for the application software.

3. The software distributed compilation method according to claim 1, wherein The method further includes: When compiling the application software, linking the application software to the lib library.

4. The software distributed compilation method according to claim 1, wherein The operating system is used for: Using the rtpSpawn function to fix the name and placement path of the application software; Based on the name and placement path of the application software, calling the application software.

5. The software distributed compilation method according to claim 1, wherein The architecture of the general security platform is a 2-out-of-2 security hardware architecture built with a general computer.

6. A software distributed compilation device, applied to a general security platform, characterized in that Including: A project establishment module, which is used to establish a separate project for the operating system, platform software, and application software respectively when establishing a project; the operating system is the cert version of the VxWorks operating system; A compilation module, which is used to compile the operating system into a VxWorks program, compile the platform software into a lib library, and compile the application software into an executable program.

7. The software distributed compilation device according to claim 5, characterized in that The project establishment module is specifically used for: Establishing a separate VxWorks project for the operating system, establishing a separate RTP project for the platform software, and establishing a separate RTP project for the application software.

8. The software distributed compilation device according to claim 5, wherein The device further includes: A linking module, which is used to link the application software to the lib library when compiling the application software.

9. An electronic device, comprising a memory, a processor, and a computer program stored on the memory and running on the processor, wherein, When the processor executes the computer program, it implements the software distributed compilation method according to any one of claims 1 to 5.

10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the software distributed compilation method according to any one of claims 1 to 5.