CN116541065A - Software system construction method, device, equipment and computer readable storage medium - Google Patents
Software system construction method, device, equipment and computer readable storage medium Download PDFInfo
- Publication number
- CN116541065A CN116541065A CN202310699205.2A CN202310699205A CN116541065A CN 116541065 A CN116541065 A CN 116541065A CN 202310699205 A CN202310699205 A CN 202310699205A CN 116541065 A CN116541065 A CN 116541065A
- Authority
- CN
- China
- Prior art keywords
- information
- compiling
- software system
- software
- chain
- 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
- 238000010276 construction Methods 0.000 title claims abstract description 87
- 238000000034 method Methods 0.000 claims abstract description 51
- 230000006870 function Effects 0.000 claims description 172
- 238000004590 computer program Methods 0.000 claims description 8
- 230000002093 peripheral effect Effects 0.000 description 30
- 230000008569 process Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 230000006978 adaptation Effects 0.000 description 8
- 230000002452 interceptive effect Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008878 coupling Effects 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 238000013468 resource allocation Methods 0.000 description 5
- 240000007651 Rubus glaucus Species 0.000 description 4
- 235000011034 Rubus glaucus Nutrition 0.000 description 4
- 235000009122 Rubus idaeus Nutrition 0.000 description 4
- 238000013508 migration Methods 0.000 description 4
- 230000005012 migration Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 238000007429 general method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
The application provides a software system construction method, a device, equipment and a computer readable storage medium, wherein the method comprises the following steps: acquiring request information, wherein the request information comprises hardware platform information and/or compiling chain information applicable to a software system to be constructed; according to the request information, determining a target compiling chain from preset compiling chain resources; the compiling chain resource comprises compiling chains applicable to different hardware platforms; the target compiling chain is a compiling chain corresponding to hardware platform information and/or compiling chain information applicable to the software system to be constructed; and constructing and obtaining a software system through the target compiling chain. The scheme at least can enable the construction of the software system of the embedded real-time operating system to be compatible with different compiling chain tools, and the construction of the software system suitable for any compiling chain is realized.
Description
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a method, an apparatus, a device, and a computer readable storage medium for constructing a software system.
Background
The embedded real-time operating system is composed of a hardware system and a software system, wherein the construction of the software system is realized by means of a compiling chain, and the construction of the software system of the embedded real-time operating system is realized by the compiling chain corresponding to the hardware system configuration of different embedded real-time operating systems.
It can be seen that, when the software system of the embedded real-time operating system is built, the used compiling chain tool is coupled with the hardware environment of the embedded real-time operating system, and this coupling relationship makes it necessary for a developer to re-write the compiling chain tool to build the software system when the software system is migrated to a different hardware platform, which seriously affects the software system building efficiency of the software system in the context of migrating applications of different hardware platforms.
Disclosure of Invention
Based on the above state of the art, the present application proposes a method, an apparatus, a device and a computer readable storage medium for constructing a software system, which at least enable the construction of a software system of an embedded real-time operating system to be compatible with different compiling chain tools, so as to implement the construction of a software system applicable to any compiling chain.
In order to achieve the technical purpose, the application specifically provides the following technical scheme:
in a first aspect, the present application proposes a software system construction method, including: acquiring request information, wherein the request information comprises hardware platform information and/or compiling chain information applicable to a software system to be constructed; according to the request information, determining a target compiling chain from preset compiling chain resources; the compiling chain resource comprises compiling chains applicable to different hardware platforms; the target compiling chain is a compiling chain corresponding to hardware platform information and/or compiling chain information applicable to the software system to be constructed; and constructing and obtaining a software system through the target compiling chain.
In a second aspect, the present application proposes a software system construction device, including: the information acquisition unit is used for acquiring request information, wherein the request information comprises hardware platform information and/or compiling chain information applicable to a software system to be constructed; the resource configuration unit is used for determining a target compiling chain from preset compiling chain resources according to the request information, wherein the compiling chain resources comprise compiling chains applicable to different hardware platforms; the target compiling chain is a compiling chain corresponding to hardware platform information and/or compiling chain information applicable to the software system to be constructed; and the system construction unit is used for constructing and obtaining a software system through the target compiling chain.
In a third aspect, the present application proposes a software system construction device comprising: a memory and a processor; the memory is connected with the processor and used for storing programs; the processor is configured to implement the software system construction method by running the program in the memory.
In a fourth aspect, the present application proposes a computer readable storage medium, on which a computer program is stored, which when being executed by a processor, implements the above-mentioned software system construction method.
Based on any one of the first aspect to the fourth aspect, the software system construction scheme provided by the present application presets a compiling chain resource composed of compiling chains applicable to different hardware platforms, and on this basis, when constructing a software system, a compiling chain adapted to hardware platform information and/or compiling chain information applicable to the software system to be constructed is selected from the compiling chain resource, and then the software system is constructed based on the selected compiling chain. The scheme can support to select the compiling chain tool meeting the requirements to construct the software system suitable for different hardware platforms, thereby improving the construction efficiency of the software system, in particular improving the construction efficiency of the software system under the scene of migration application of different hardware platforms.
In some implementations, the request information further includes system configuration information, where the system configuration information includes software component information required by the software system to be built, configuration information of compiling and linking, and format and type information of building an output image file; the software system is constructed by the target compiling chain, and comprises the following components: and compiling the software system according to the system configuration information through the target compiling chain to obtain the software system. Based on the implementation mode, the user can further set the construction parameters and the system configuration information of the software system, so that the construction requirements of the software system with more diversification of the user are met.
In some implementations, compiling the software system according to the system configuration information through the target compiling chain to obtain the software system, including: determining a target software component corresponding to the software component information from the software component resources according to the software component information; cutting the target software component based on the software component information to obtain a software component to be compiled; and constructing the target compiling chain to obtain a software system based on the software component to be compiled, the configuration information of compiling and linking, and the format and type information of the image file constructed and output. Based on the implementation mode, the software components can be flexibly cut, so that redundant components in the constructed software system can be avoided, and the constructed software components meet the requirements of users.
In some implementations, the request information further includes standard function library information required by the software system to be constructed; the method further comprises the steps of: according to the request information, determining a target standard function library corresponding to the standard function library information from preset standard function library resources, wherein the standard function library resources comprise a plurality of different standard function libraries; and constructing a software system through the target compiling chain, wherein the software system comprises the following components: and constructing and obtaining a software system through the target compiling chain and the target standard function library. Based on the implementation mode, the software system construction method can be compatible with different standard function libraries, and the software system construction based on the different standard function libraries is realized.
In some implementations, the standard function library information includes a standard function library name, and at least one of an implementation, a use, and a memory allocation policy of the standard function library. Based on this implementation, the user can edit the standard function library information in a variety of ways.
In some implementations, the method further comprises: and under the condition that the compiling chain corresponding to the hardware platform information and/or the compiling chain information applicable to the software system to be constructed does not exist in the compiling chain resource, acquiring the compiling chain corresponding to the hardware platform information and/or the compiling chain information applicable to the software system to be constructed, and storing the acquired compiling chain into the compiling chain resource. Based on the implementation mode, the user can independently add the compiling chain resource, and the compatibility of the software system construction method to various compiling chains is further enhanced.
In some implementations, the method further comprises: and under the condition that the standard function library resources do not exist the standard function library corresponding to the standard function library information, acquiring the standard function library corresponding to the standard function library information, and storing the acquired standard function library into the standard function library resources. Based on the implementation mode, the user can add standard function library resources independently, and the compatibility of the software system construction method to various standard function libraries is further enhanced.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings that are required to be used in the embodiments or the description of the prior art will be briefly described below, and it is obvious that the drawings in the following description are only embodiments of the present application, and that other drawings may be obtained according to the provided drawings without inventive effort to a person skilled in the art.
Fig. 1 is a schematic structural diagram of an embedded real-time operating system according to an embodiment of the present application.
Fig. 2 is a schematic structural diagram of an embedded software according to an embodiment of the present application.
Fig. 3 is a schematic diagram of a network system according to an embodiment of the present application.
Fig. 4 is a schematic structural diagram of another embedded software according to an embodiment of the present application.
Fig. 5 is a flow chart of another software system construction method according to an embodiment of the present application.
Fig. 6 is a schematic structural diagram of a software system construction device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all, of the embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present disclosure.
First, the embodiment of the application describes an embedded real-time operating system.
An existing embedded real-time operating system generally comprises a hardware environment and a software environment, namely a hardware environment and a software system running in the hardware environment, and the overall architecture block diagram of the system is shown in fig. 1.
In the hardware environment, the control unit is used for sending control instructions to realize the working process of the microprocessor, and the control unit and a plurality of groups of registers are combined to form a processor core, so that the functions of calculation control, data storage and the like are realized under the support of a memory; the peripheral controllers (such as a 1 peripheral controller, a 2 peripheral controller, a 3 peripheral controller, a 4 peripheral controller, a 5 peripheral controller and a 6 peripheral controller in fig. 1) mainly support data exchange between the control unit and a specific type of peripheral, for example, data exchange between the control unit and a 1 input/output peripheral (network port), a 2 input peripheral (sensor), a 3 input peripheral (keyboard), a 1 output peripheral (flash memory), a 2 output peripheral (serial port) and a 3 output peripheral (screen) in fig. 1, so as to implement a specific data communication protocol. In a general implementation, the control unit and the register are integrated in a microprocessor, and the microprocessor, the on-chip memory and the peripheral controller are integrated and packaged in a system on chip (Soc); the peripheral is connected with a peripheral controller of the system on chip, wherein one part of the peripheral is integrated on a Printed Circuit Board (PCB) in an on-board mode, such as interfaces of a network port, a serial port and the like, and a storage medium such as a flash memory and the like fixed on the circuit board, and the other part of the peripheral is required to be connected with an adapter wire through a specific interface when in use, such as input equipment such as a keyboard and a mouse, and output equipment such as an LCD screen and the like.
In a software environment, a compiling chain translates a high-level language into instructions recognizable by a processor core; the processor abstraction layer encapsulates the general method of accessing processor functions through software; the hardware driver package is realized by a general method that a specific peripheral controller function is configured by software, and a general software method is provided by a functional component; the embedded real-time system kernel is the core of the software environment and is used for completing the use management of hardware resources, such as the allocation of processor time slices, the allocation and release of storage space and the like; the embedded real-time application is developed for specific application scenes and completes functions required by users.
On one hand, the variety of the hardware platform is multiple, the difference is obvious, the iteration speed is high, and the degree of the specialization of the hardware environment of the embedded real-time operating system is high, which is different from that of the general software system, so that the software system needs to be specially developed aiming at the hardware environment, and the software of the embedded real-time operating system needs to be re-developed whenever the hardware platform is replaced or iteratively updated; on the other hand, the embedded real-time operating system has high application scene fragmentation degree, in order to pursue functional compactness, the system often needs to cut hardware according to specific application requirements, and software also needs to select different real-time operating system kernels and functional components accordingly, so that the same or similar functions need to be repeatedly realized in different application scenes. The problems in the two aspects bring about a large amount of expanded software development, software testing and subsequent guarantee work, and a large amount of manpower and expense resource waste is caused.
In addition, the construction of the software system needs to be realized by means of a compiling chain, and the construction of the software system of the embedded real-time operating system needs to be realized by the compiling chain corresponding to the hardware environment configuration of different embedded real-time operating systems.
It can be seen that, when the software system of the embedded real-time operating system is built, the used compiling chain tool is coupled with the hardware environment of the embedded real-time operating system, and this coupling relationship makes it necessary for a developer to re-write the compiling chain tool to build the software system when the software system is migrated to a different hardware platform, which also seriously affects the software system building efficiency of the software system in the context of different hardware platform migration applications.
Aiming at the current state of the art, the inventor of the application finds that although the hardware environments of different embedded real-time operating systems have obvious differences, the processor cores, the peripheral controllers and the like have high similarity with the access method, the functional characteristics provided by the hardware are basically similar, and the possibility of merging the similar functions is provided; meanwhile, although the implementation and the interfaces of different embedded real-time kernels are obviously different, the functional characteristics provided by the real-time kernels are basically similar, and the functions can be combined.
Based on the above findings, the present inventors innovatively propose an embedded software that can be used to build a software system of an embedded real-time operating system, and that can be used to build a software system suitable for any hardware environment.
Fig. 2 shows a system architecture of embedded software proposed in an embodiment of the present application, and referring to fig. 2, the embedded software includes a build tool layer, a hardware platform layer, a peripheral driver layer, a functional component layer, a functional adaptation layer, a real-time operating system layer, and an embedded application layer.
Wherein the build tool layer provides interactive configuration tools, cross-compilation chains, and function library interfaces. The interactive configuration tool provides a configuration interface of the hardware platform and parameters thereof for a user; the cross compiling chain tool is used for supporting the execution mirror image compiling of different hardware platforms and is used as the basis of the whole development device; the function library interface is used for calling a standard function library or a function in the function library. Compared with the prior art, the setting of the construction tool layer can allow a user to configure different hardware environment parameters and support more customization requirements.
The hardware platform layer divides the support of the hardware platform into the support of a CPU system structure, the support of a CPU execution mode, the support of Soc (system on chip) and the support of a development board through the basic support layering of the hardware platform, and compared with the prior art, the hardware platform layer can fully integrate the similar functions of different hardware environments after the layering design.
The peripheral driver layer provides support for various hardware peripheral functions, the support for the hardware peripheral functions is used as a functional component for different hardware platforms through modularized design, and hardware realization and parameter calibration differences are shielded.
The function component layer provides support for various basic software functions, combines the basic software functions with a hardware platform and peripheral drivers, and provides the tailorable and configurable general basic software functions upwards.
The function adaptation layer is mainly used for realizing the adaptation of the functional components and the hardware platform, and the main purpose is to shield the difference of hardware realization and provide consistent functions for an upper layer.
The real-time operating system layer provides support for multiple real-time operating system kernels, different real-time operating system kernel functions are represented by a unified interface, and unified system function implementation interfaces are provided upwards.
The embedded application layer is oriented to a specific application scene to realize functions, and because components below the application layer adapt and encapsulate different hardware platforms and different operating system kernels, compared with the prior art, on the premise of hardware function support, the embedded real-time application can realize migration in different hardware environments by replacing hardware configuration in theory.
The embedded software shown in fig. 2 has the following features:
1. the hardware platform is decoupled and adapted layer by layer, from the CPU/SoC system structure, peripheral driver support is adapted to an operating system, the hardware components are multiplexed as much as possible by adopting a layer by layer adaptation mode, and the adaptation combination of different hardware components can be realized, so that the adaptation and support of various hardware environments are realized, and only a difference component is needed to be realized if new hardware needs to be supported in the follow-up process.
2. The method can adapt to various real-time operating systems, adds a real-time operating system adaptation layer between the real-time operating system and peripheral drivers and hardware platforms for interfacing different hardware platforms, adds a real-time operating system interface layer between the real-time operating system and an application layer, completely shields the difference between different operating systems and hardware platforms, supports core functions such as task scheduling, memory management, peripheral management and the like through a unified interface, facilitates the application layer to call, thereby realizing portability of embedded application and facilitating selection of proper cores of the real-time operating system according to application scenes.
3. The system support is highly flexible and configurable, supports configuration and cutting of software components for different hardware environments and application scenes, designates a hardware platform for running the system and a real-time operating system kernel for running, selects required peripheral components, modifies resource allocation and addresses of the system and the like, facilitates customizing an embedded real-time system, configures the system components, selects system functions and the like.
4. And providing various cross-coding chain tools and standard function library support, and selecting the coding chain tools and standard function libraries which are matched with the hardware environment from a construction tool layer corresponding to any hardware environment. And supports the new addition of the compilation chain tool and the standard function library, thereby being capable of supporting the construction of a software system adapting to any hardware environment.
Based on the embedded software, a software system adapting to different hardware platforms, different operating system kernels and different compiling chains and function libraries can be constructed through one set of embedded software, so that the construction of the software system is more efficient and convenient, and the constraint of the hardware platforms, the operating system kernels, the compiling chains and the function libraries on the construction of the software system can be eliminated.
The embodiment of the application provides a new software system construction scheme, so that the software system construction can be compatible with different compiling chains and function libraries.
Before describing a specific software system construction scheme, an exemplary description is first provided for a scheme application scenario.
As an example, the software system construction scheme provided in the embodiment of the present application can be applied to a hardware device with data processing capability, such as a processor, a computer, and an intelligent device. The embedded software shown in fig. 2 can be run in hardware devices such as a processor, a computer, an intelligent device and the like, a user inputs a software system construction request to the embedded software running in the device through the hardware devices, and the embedded software can realize the construction of a software system by executing the software system construction scheme provided by the embodiment of the application.
As another example, the software system construction scheme provided in the embodiment of the present application may also be applied to the network system shown in fig. 3. In the network system, the embedded software runs on cloud-side equipment, which can be a cloud server, a cloud processor and the like, and a software development platform for accessing and calling the embedded software running on the cloud-side equipment is configured on end-side equipment. The cloud side equipment and the end side equipment are connected through a network. The user logs in the software development platform at the terminal side equipment, and inputs the software system construction requirement on the platform, and the embedded software on the cloud side equipment can construct a software system meeting the user requirement by executing the software system construction scheme provided by the embodiment of the application based on the software system construction requirement input by the user on the platform.
The following describes the new software system construction scheme provided in the embodiment of the present application.
The embodiment of the application also provides a software system construction method capable of being compatible with different compiling chains and function libraries, and the method can be realized through embedded software shown in fig. 2. As an alternative implementation manner, the embodiment of the application proposes embedded software as shown in fig. 4, and implements the construction of a software system compatible with different compiling chains and function libraries through the embedded software.
The embedded software shown in fig. 4 contains resources for supporting different compilation chains and/or standard function libraries in the embedded software shown in fig. 2. Referring to fig. 4, the embedded software includes a build tool layer, a hardware platform support layer (specifically, composed of a hardware driver, a functional component, a processor abstraction layer, a compilation chain), a real-time operating system layer, and an embedded application layer.
The construction tool layer comprises an interactive configuration tool, a cross compiling chain and a function library interface.
The interactive configuration tool provides a software system configuration interface for a user, so that the user can configure different software system configuration parameters through the interactive configuration tool, and more customization requirements are supported.
The cross-compilation chain is used to support execution mirror compilation of different hardware platforms. The cross compiling chains and the hardware platform have strict adaptation relation, namely, a specific cross compiling chain is suitable for a specific hardware platform, and once the hardware platform changes, the cross compiling chains matched with the changed hardware platform need to be replaced to construct a software system suitable for the changed hardware platform. Such as requiring the user to re-write the compilation chain script.
In order to improve the construction efficiency of a software system, particularly to improve the construction efficiency of a software system crossing hardware platforms, in the embodiment of the application, a plurality of different cross compiling chains applied to different hardware platforms are arranged in the embedded software shown in fig. 4, so that the cross compiling chains can be arbitrarily selected by a user, and the workload of the user for compiling the compiling chain script when the software system is constructed for different hardware platforms is reduced.
The function library interface is used for calling a standard function library or a function in the function library, and corresponds to the standard function library. In the embedded software shown in fig. 4, a plurality of different standard function libraries are included, and these standard function libraries can be called through the function library interface.
The specific structure and function of the hardware drivers, functional components, processor abstraction layers, and compilation chains may be described with reference to the embedded software depicted in fig. 2, or with reference to the associated structure of a conventional embedded real-time operating system.
And the real-time operating system layer and the embedded application layer are used for providing an embedded real-time operating system kernel and an embedded real-time application.
The embodiment of the application proposes a software system construction method applied to the embedded software shown in fig. 4, and referring to fig. 4, in a compiling chain resource of the embedded software system, a plurality of different cross compiling chains are included. Different cross compiling chains are respectively applied to compiling software systems of different hardware platforms, so that the construction of the application and the software systems of the different hardware platforms is realized.
Based on the embedded software shown in fig. 4, referring to fig. 5, the method for constructing a software system according to the embodiment of the present application includes:
s101, acquiring request information, wherein the request information comprises hardware platform information and/or compiling chain information applicable to a software system to be constructed.
Specifically, the user may input the request information of the software system construction through the interactive configuration tool, for example, in the network system shown in fig. 3, the user may log in the software development platform at the end side device, access the interactive configuration tool port of the embedded software through the software development platform, and input the request information of the software system construction through the port. The request information includes configuration parameter information of the software system to be constructed, for example, configuration information including a hardware platform to which the software system to be constructed is applicable, compiling chain information to which the software system to be constructed is applicable, configuration information of a system kernel to which the software system to be constructed is applicable, configuration information of a system application to which the software system to be constructed is applicable, and the like.
In the embodiment of the present application, attention is focused on configuration information of a hardware platform to which a software system to be built is applicable in software system building request information input by a user, and/or compiling chain information to which the software system to be built is applicable. Therefore, after the request information is obtained, the embodiment of the application analyzes and obtains the configuration information of the hardware platform applicable to the software system to be built from the request information, and/or builds the compiling chain information applicable to the software system to be built. Because the determined adapting relation exists between the hardware platform suitable for the software system and the compiling chain suitable for constructing the software system, when the configuration information of the hardware platform suitable for the software system to be constructed is determined, the applicable compiling chain corresponding to the hardware platform configuration information can be directly determined according to the hardware platform configuration information.
Therefore, the request information may include any one or both of configuration information of a hardware platform to which the software system to be built is applied and compilation chain information to which the software system to be built is applied. Correspondingly, the embodiment of the application analyzes and acquires one or two items of configuration information of a hardware platform applicable to the software system to be constructed and compiling chain information applicable to constructing the software system to be constructed from the request information.
The user can write the software system construction request information in a configuration file mode, input the configuration file into embedded software through an interactive configuration tool, and the embedded software can acquire the hardware platform information and/or compiling chain information applicable to the software system to be constructed through analyzing the configuration file.
S102, determining a target compiling chain from preset compiling chain resources according to the request information.
The foregoing preset compiling chain resources include cross compiling chains, such as 64-bit cross compiling chains, 32-bit cross compiling chains, and the like, which can be applicable to different hardware platforms, in the build tool layer of the embedded software as shown in fig. 4.
After acquiring the software system construction request information uploaded by a user, the embedded software analyzes the request information, acquires the hardware platform information and/or the compiling chain information applicable to the software system to be constructed, and searches the compiling chain applicable to the hardware platform information and/or the compiling chain corresponding to the compiling chain information from the compiling chain resources based on the hardware platform information and/or the compiling chain information to serve as a target compiling chain.
For example, assuming that the user wants to build a software system suitable for raspberry group 4B, the user records the configuration information of the raspberry group 4B hardware platform in the uploaded software system build request. After receiving the request information, the embedded software can analyze the request information to obtain configuration information of the raspberry group 4B hardware platform, and based on the configuration information, the cross compiling chain aarch64-none-elf applicable to the raspberry group 4B hardware platform in the compiling chain resource is determined to be a target compiling chain.
S103, constructing and obtaining a software system through the target compiling chain.
After determining the target compiling chain, a software system meeting the user requirement can be constructed based on the target compiling chain, and the hardware driver, the functional components, the processor abstraction layer, the real-time operating system layer and the embedded application layer shown in fig. 4.
As can be seen from the above description, in the method for constructing a software system according to the embodiment of the present application, a compiling chain resource formed by compiling chains applicable to different hardware platforms is preset, and on this basis, when the software system is constructed, a compiling chain adapted to hardware platform information and/or compiling chain information applicable to the software system to be constructed is selected from the compiling chain resource, and then the software system is constructed based on the selected compiling chain. The scheme can support to select the compiling chain tool meeting the requirements to construct the software system suitable for different hardware platforms, thereby improving the construction efficiency of the software system, in particular improving the construction efficiency of the software system under the scene of migration application of different hardware platforms.
In some embodiments, in the software system construction request information uploaded by the user, system configuration information is further included, where the system configuration information includes software component information required for the software system to be constructed, configuration information for compiling and linking, and format and type information of the image file to be constructed and output.
The software component information required by the software system to be constructed refers to related information of software functional components required by the software system to be constructed, such as a driving component, a protocol stack component, a data acquisition component and the like required by the software system to be constructed.
The software component information required by the software system to be constructed may be the information of the software component directly recorded in the request information, or may be the information of the software component for realizing the function which is determined by analyzing the function of the software system to be constructed. For example, assuming that a software system to be built needs to implement a function of connecting to a USB camera to collect data, by parsing the function, the software system needs two software components, namely a USB controller driving component and a USB protocol stack component.
The above configuration information of compiling and linking mainly refers to parameter information for compiling and linking a software system to be built, for example, hardware floating point support is opened in the compiling process.
The above-mentioned format and type information of the image file output by construction refers to the format and type information of the image file output after compiling the software system to be constructed, for example, the image file in the ELF format is output after compiling is completed.
Based on the system configuration information, when the software system is built through the target compiling chain, the software system is compiled through the target compiling chain according to the system configuration information, and the software system is obtained.
Illustratively, first, according to the software component information in the system configuration information, a target software component corresponding to the software component information is determined from the software component resources.
The software component resources mentioned above refer to software function component resources preset in the embedded software shown in fig. 4. And selecting a software component containing the software function component corresponding to the software component information from the software component resources as a target software component. And add the target software component to the compilation build.
The target software component includes a software component corresponding to the software component information in the system configuration information, and may further include a software component having another function. In order to make the software components participating in compiling and constructing be the software components required by the software system to be constructed, the embodiment of the application also cuts the determined target software components based on the software component information, specifically, deletes the software components in the target software components, which are not included in the software component information, and the rest of the software components are taken as the software components to be compiled. For example, if the software system to be built is to implement connection with a USB camera to collect data, the support of the USB controller driver component and the USB protocol stack component is required for implementing this function, so that the software component including the USB controller driver component and the USB protocol stack component is selected from the software component resources as a target software component, and the GPIO driver component may be further included in the target software component, and since the GPIO driver component is not a software component required by the software system to be built, the GPIO driver component is deleted from the target software component, and on the basis, the remaining software components in the target software component are taken as software components to be compiled.
And then, constructing and obtaining a software system through the target compiling chain based on the software component to be compiled, the configuration information of compiling and linking and the format and type information of the image file constructed and output.
The processing process realizes automatic acquisition of software component resources and configuration parameter information required by constructing the software system based on the request information input by the user, then acquires corresponding software component resources based on the software component required by constructing the software system and compiles the software system to be constructed according to the configuration parameters.
In some embodiments, referring to fig. 4, in the embedded software for constructing the software system, a function library interface is further provided at the construction tool layer, based on which standard function libraries provided in the embedded software can be accessed and invoked, the standard function libraries constituting standard function library resources of the embedded software, in which a plurality of different standard function libraries are included.
The standard function library provides a basis for constructing the standard function library required by the software system to be constructed, namely, the standard function library required by the software system can be selected from the standard function library resources of the embedded software, so that the software system can be constructed based on the selected standard function library.
Based on the above-described setting, when the user uploads the request information for constructing the software system, standard function library information required for the software system to be constructed may be added to the request information. The standard function library information includes, but is not limited to, standard function library names, and may further include at least one of implementation, usage (such as whether the function library supports floating point operations, etc.), memory access policies (such as whether the function library supports memory misalignment access, etc.).
When the user inputs standard function library information required by the software system to be constructed into the embedded software shown in fig. 4, the embedded software determines a standard function library corresponding to the standard function library information from the preset standard function library resources according to the request information, and the standard function library is used as a target standard function library.
Based on the above processing, when a software system is constructed by the above target compilation chain, the software system can be constructed by the target compilation chain and the target standard function library.
The function library interface of the build tool layer of the embedded software described in fig. 4 may call or acquire the target standard function library, and then based on the acquired target standard function library and the target compiling chain, build the software system to be built described in the request information may be executed.
Based on the above description, the method for constructing a software system provided by the embodiment of the application not only provides a plurality of cross compiling chain tools, so that the construction of the software system adapting to any hardware platform or adapting to any compiling chain can be realized, but also provides a plurality of standard function libraries, so that the construction of the software system based on any standard function library can be realized, and the convenience and efficiency of the construction of the software system are further improved.
In some embodiments, the software system construction method provided by the application also supports a user to newly add a compiling chain and/or a standard function library.
Specifically, after the request information uploaded by the user is obtained, the corresponding compiling chain can be searched from the compiling chain resources according to the hardware platform information and/or the compiling chain information applicable to the software system to be constructed recorded in the request information.
If the compiling chain resource does not comprise the compiling chain corresponding to the hardware platform information and/or the compiling chain information applicable to the software system to be constructed, outputting the compiling chain information corresponding to the hardware platform information and/or the compiling chain information applicable to the software system to be constructed, so that a user can construct or develop the compiling chain corresponding to the compiling chain information according to the compiling chain information.
After the user builds or develops the compiling chain corresponding to the compiling chain information, inputting the compiling chain into the embedded software shown in fig. 4, acquiring the compiling chain by the embedded software, and storing the acquired compiling chain into a compiling chain resource, namely, storing the compiling chain into a building tool layer.
After the processing, the embedded software can find a compiling chain corresponding to the hardware platform information and/or the compiling chain information applicable to the software system to be built from the compiling chain resource, and build the software system meeting the user requirement based on the compiling chain.
On the other hand, after the request information uploaded by the user is obtained, the corresponding standard function library can be searched from the standard function library resources according to the standard function library information recorded in the request information.
If the standard function library resources do not comprise the standard function library corresponding to the standard function library information, outputting the related information of the standard function library corresponding to the standard function library information, so that a user can construct or develop standard containing data corresponding to the standard function library information according to the related information.
After constructing or developing a standard function library corresponding to the standard function library information, a user inputs the standard function library into the embedded software shown in fig. 4, the embedded software acquires the standard function library, and the acquired standard function library is stored in a standard function library resource.
After the processing, the embedded software can find a standard function library corresponding to the standard function library information in the request information from the standard function library resource, and construct a software system meeting the user requirement based on the standard function library.
Therefore, the software system construction method provided by the embodiment of the application can support a user to add a new compiling chain to the compiling chain resource and/or add a new standard function library to the standard function library resource in real time, so that the software system construction method can realize the software system construction based on any compiling chain and/or any standard function library, the compiling chain resource and/or the standard function library resource used by the method are more and more abundant, and the software system construction efficiency of the method in practical application is higher and higher.
In the above embodiments, after the software system is built, the function test can be performed on the built software system, if the test passes, the built software system is packaged, if the test does not pass, the configuration information or parameters can be adjusted, the software system is repeatedly built, and the whole process only needs to configure the parameters, data and adjust business logic for users, so that the efficiency and convenience of the software system building are greatly improved.
Corresponding to the software system construction method shown in fig. 5, the embodiment of the application also provides a software system construction device, which includes:
the information acquisition unit is used for acquiring request information, wherein the request information comprises hardware platform information and/or compiling chain information applicable to a software system to be constructed;
the resource configuration unit is used for determining a target compiling chain from preset compiling chain resources according to the request information, wherein the compiling chain resources comprise compiling chains applicable to different hardware platforms; the target compiling chain is a compiling chain corresponding to hardware platform information and/or compiling chain information applicable to the software system to be constructed;
and the system construction unit is used for constructing and obtaining a software system through the target compiling chain.
In some embodiments, the request information further includes system configuration information, where the system configuration information includes software component information required by the software system to be built, configuration information of compiling and linking, and format and type information of an image file to be built and output;
the software system is constructed by the target compiling chain, and comprises the following components:
and compiling the software system according to the system configuration information through the target compiling chain to obtain the software system.
In some embodiments, compiling the software system according to the system configuration information through the target compiling chain to obtain the software system, including:
determining a target software component corresponding to the software component information from the software component resources according to the software component information;
cutting the target software component based on the software component information to obtain a software component to be compiled;
and constructing the target compiling chain to obtain a software system based on the software component to be compiled, the configuration information of compiling and linking, and the format and type information of the image file constructed and output.
In some embodiments, the request information further includes standard function library information required by the software system to be constructed;
the resource allocation unit is further configured to:
according to the request information, determining a target standard function library corresponding to the standard function library information from preset standard function library resources, wherein the standard function library resources comprise a plurality of different standard function libraries;
and constructing a software system through the target compiling chain, wherein the software system comprises the following components:
and constructing and obtaining a software system through the target compiling chain and the target standard function library.
In some embodiments, the standard function library information includes a standard function library name, and at least one of an implementation manner, a use manner and a memory allocation policy of the standard function library.
In some embodiments, the resource allocation unit is further configured to:
and under the condition that the compiling chain corresponding to the hardware platform information and/or the compiling chain information applicable to the software system to be constructed does not exist in the compiling chain resource, acquiring the compiling chain corresponding to the hardware platform information and/or the compiling chain information applicable to the software system to be constructed, and storing the acquired compiling chain into the compiling chain resource.
In some embodiments, the resource allocation unit is further configured to:
and under the condition that the standard function library resources do not exist the standard function library corresponding to the standard function library information, acquiring the standard function library corresponding to the standard function library information, and storing the acquired standard function library into the standard function library resources.
The software system construction device provided in this embodiment belongs to the same application concept as the software system construction method shown in fig. 5, and can execute the software system construction method shown in fig. 5, and has the corresponding functional modules and beneficial effects of executing the method. Technical details not described in detail in this embodiment may be referred to the specific processing content of the software system construction method provided in the foregoing embodiment of the present application, and will not be described herein.
The functions implemented by the information acquisition unit, the resource allocation unit, and the system construction unit may be implemented by the same or different processors, respectively, and the embodiment of the present application is not limited.
It will be appreciated that the elements of the above apparatus may be implemented in the form of processor-invoked software. For example, the device includes a processor, where the processor is connected to a memory, and the memory stores instructions, and the processor invokes the instructions stored in the memory to implement any of the methods above or to implement functions of each unit of the device, where the processor may be a general-purpose processor, such as a CPU or a microprocessor, and the memory may be a memory within the device or a memory outside the device. Alternatively, the units in the apparatus may be implemented in the form of hardware circuits, and the functions of some or all of the units may be implemented by designing hardware circuits, which may be understood as one or more processors; for example, in one implementation, the hardware circuit is an ASIC, and the functions of some or all of the above units are implemented by designing the logic relationships of the elements in the circuit; for another example, in another implementation, the hardware circuit may be implemented by a PLD, for example, an FPGA may include a large number of logic gates, and the connection relationship between the logic gates is configured by a configuration file, so as to implement the functions of some or all of the above units. All units of the above device may be realized in the form of processor calling software, or in the form of hardware circuits, or in part in the form of processor calling software, and in the rest in the form of hardware circuits.
In the embodiment of the application, the processor is a circuit with signal processing capability, and in one implementation, the processor may be a circuit with instruction reading and running capability, such as a CPU, a microprocessor, a GPU, or a DSP, etc.; in another implementation, the processor may implement a function through a logical relationship of hardware circuitry that is fixed or reconfigurable, e.g., a hardware circuit implemented by the processor as an ASIC or PLD, such as an FPGA, or the like. In the reconfigurable hardware circuit, the processor loads the configuration document, and the process of implementing the configuration of the hardware circuit may be understood as a process of loading instructions by the processor to implement the functions of some or all of the above units. Furthermore, a hardware circuit designed for artificial intelligence may be provided, which may be understood as an ASIC, such as NPU, TPU, DPU, etc.
It will be seen that each of the units in the above apparatus may be one or more processors (or processing circuits) configured to implement the above method, for example: CPU, GPU, NPU, TPU, DPU, microprocessor, DSP, ASIC, FPGA, or a combination of at least two of these processor forms.
Furthermore, the units in the above apparatus may be integrated together in whole or in part, or may be implemented independently. In one implementation, these units are integrated together and implemented in the form of an SOC. The SOC may include at least one processor for implementing any of the methods above or for implementing the functions of the units of the apparatus, where the at least one processor may be of different types, including, for example, a CPU and an FPGA, a CPU and an artificial intelligence processor, a CPU and a GPU, and the like.
Another embodiment of the present application further proposes a software system construction apparatus, referring to fig. 6, including:
a memory 200 and a processor 210;
wherein the memory 200 is connected to the processor 210, and is used for storing a program;
the processor 210 is configured to implement the software system construction method disclosed in any one of the above embodiments by executing the program stored in the memory 200.
Specifically, the software system construction device may further include: a bus, a communication interface 220, an input device 230, and an output device 240.
The processor 210, the memory 200, the communication interface 220, the input device 230, and the output device 240 are interconnected by a bus. Wherein:
a bus may comprise a path that communicates information between components of a computer system.
Processor 210 may be a general-purpose processor such as a general-purpose Central Processing Unit (CPU), microprocessor, etc., or may be an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of programs in accordance with aspects of the present invention. But may also be a Digital Signal Processor (DSP), application Specific Integrated Circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware components.
Processor 210 may include a main processor, and may also include a baseband chip, modem, and the like.
The memory 200 stores programs for implementing the technical scheme of the present invention, and may also store an operating system and other key services. In particular, the program may include program code including computer-operating instructions. More specifically, memory 200 may include read-only memory (ROM), other types of static storage devices that may store static information and instructions, random access memory (random access memory, RAM), other types of dynamic storage devices that may store information and instructions, disk storage, flash, and the like.
The input device 230 may include means for receiving data and information entered by a user, such as a keyboard, mouse, camera, scanner, light pen, voice input device, touch screen, pedometer, or gravity sensor, among others.
Output device 240 may include means, such as a display screen, printer, speakers, etc., that allow information to be output to a user.
The communication interface 220 may include devices using any transceiver or the like for communicating with other devices or communication networks, such as ethernet, radio Access Network (RAN), wireless Local Area Network (WLAN), etc.
Processor 210 executes programs stored in memory 200 and invokes other devices that may be used to implement the various steps of any of the software system construction methods provided in the above-described embodiments of the present application.
The embodiment of the application also provides a chip, which comprises a processor and a data interface, wherein the processor reads and runs a program stored in a memory through the data interface so as to execute the software system construction method introduced by any embodiment, and the specific processing process and the beneficial effects thereof can be introduced by referring to the embodiment of the software system construction method.
In addition to the methods and apparatus described above, embodiments of the present application may also be a computer program product comprising computer program instructions which, when executed by a processor, cause the processor to perform the steps of the software system building method described in any of the embodiments described above.
The computer program product may write program code for performing the operations of embodiments of the present application in any combination of one or more programming languages, including an object oriented programming language such as Java, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device, partly on a remote computing device, or entirely on the remote computing device or server.
Furthermore, an embodiment of the present application may also be a computer-readable storage medium, on which a computer program is stored, the computer program being executed by a processor to perform the steps in the software system construction method described in any of the above embodiments.
For the foregoing method embodiments, for simplicity of explanation, the methodologies are shown as a series of acts, but one of ordinary skill in the art will appreciate that the present application is not limited by the order of acts described, as some acts may, in accordance with the present application, occur in other orders or concurrently. Further, those skilled in the art will also appreciate that the embodiments described in the specification are all preferred embodiments, and that the acts and modules referred to are not necessarily required in the present application.
It should be noted that, in the present specification, each embodiment is described in a progressive manner, and each embodiment is mainly described as different from other embodiments, and identical and similar parts between the embodiments are all enough to be referred to each other. For the apparatus class embodiments, the description is relatively simple as it is substantially similar to the method embodiments, and reference is made to the description of the method embodiments for relevant points.
The steps in the method of each embodiment of the application can be sequentially adjusted, combined and deleted according to actual needs, and the technical features described in each embodiment can be replaced or combined.
The modules and sub-modules in the device and the terminal of the embodiments of the present application may be combined, divided, and deleted according to actual needs.
In the embodiments provided in the present application, it should be understood that the disclosed terminal, apparatus and method may be implemented in other manners. For example, the above-described terminal embodiments are merely illustrative, and for example, the division of modules or sub-modules is merely a logical function division, and there may be other manners of division in actual implementation, for example, multiple sub-modules or modules may be combined or integrated into another module, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or modules, which may be in electrical, mechanical, or other forms.
The modules or sub-modules illustrated as separate components may or may not be physically separate, and components that are modules or sub-modules may or may not be physical modules or sub-modules, i.e., may be located in one place, or may be distributed over multiple network modules or sub-modules. Some or all of the modules or sub-modules may be selected according to actual needs to achieve the purpose of the embodiment.
In addition, each functional module or sub-module in each embodiment of the present application may be integrated in one processing module, or each module or sub-module may exist alone physically, or two or more modules or sub-modules may be integrated in one module. The integrated modules or sub-modules may be implemented in hardware or in software functional modules or sub-modules.
Those of skill would further appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative elements and steps are described above generally in terms of functionality in order to clearly illustrate the interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software unit executed by a processor, or in a combination of the two. The software elements may be disposed in Random Access Memory (RAM), memory, read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of computer readable storage medium known in the art.
Finally, it is further noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the application. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims (10)
1. A method of constructing a software system, comprising:
acquiring request information, wherein the request information comprises hardware platform information and/or compiling chain information applicable to a software system to be constructed;
according to the request information, determining a target compiling chain from preset compiling chain resources; the compiling chain resource comprises compiling chains applicable to different hardware platforms; the target compiling chain is a compiling chain corresponding to hardware platform information and/or compiling chain information applicable to the software system to be constructed;
and constructing and obtaining a software system through the target compiling chain.
2. The method according to claim 1, wherein the request information further includes system configuration information, the system configuration information including software component information required for the software system to be built, configuration information for compiling and linking, and format and type information for building an output image file;
the software system is constructed by the target compiling chain, and comprises the following components:
and compiling the software system according to the system configuration information through the target compiling chain to obtain the software system.
3. The method according to claim 2, wherein compiling the software system according to the system configuration information through the target compiling chain to obtain the software system comprises:
Determining a target software component corresponding to the software component information from the software component resources according to the software component information;
cutting the target software component based on the software component information to obtain a software component to be compiled;
and constructing the target compiling chain to obtain a software system based on the software component to be compiled, the configuration information of compiling and linking, and the format and type information of the image file constructed and output.
4. The method according to claim 1, wherein the request information further comprises standard function library information required by the software system to be constructed;
the method further comprises the steps of:
according to the request information, determining a target standard function library corresponding to the standard function library information from preset standard function library resources, wherein the standard function library resources comprise a plurality of different standard function libraries;
and constructing a software system through the target compiling chain, wherein the software system comprises the following components:
and constructing and obtaining a software system through the target compiling chain and the target standard function library.
5. The method of claim 4, wherein the standard function library information comprises a standard function library name, and at least one of a standard function library implementation, a standard function library usage, and a memory allocation policy.
6. The method according to claim 1, wherein the method further comprises:
and under the condition that the compiling chain corresponding to the hardware platform information and/or the compiling chain information applicable to the software system to be constructed does not exist in the compiling chain resource, acquiring the compiling chain corresponding to the hardware platform information and/or the compiling chain information applicable to the software system to be constructed, and storing the acquired compiling chain into the compiling chain resource.
7. The method according to claim 4, wherein the method further comprises:
and under the condition that the standard function library resources do not exist the standard function library corresponding to the standard function library information, acquiring the standard function library corresponding to the standard function library information, and storing the acquired standard function library into the standard function library resources.
8. A software system constructing apparatus, comprising:
the information acquisition unit is used for acquiring request information, wherein the request information comprises hardware platform information and/or compiling chain information applicable to a software system to be constructed;
the resource configuration unit is used for determining a target compiling chain from preset compiling chain resources according to the request information, wherein the compiling chain resources comprise compiling chains applicable to different hardware platforms; the target compiling chain is a compiling chain corresponding to hardware platform information and/or compiling chain information applicable to the software system to be constructed;
And the system construction unit is used for constructing and obtaining a software system through the target compiling chain.
9. A software system constructing apparatus, comprising:
a memory and a processor;
the memory is connected with the processor and used for storing programs;
the processor is configured to implement the software system construction method according to any one of claims 1 to 7 by running a program in the memory.
10. A computer-readable storage medium, on which a computer program is stored, which computer program, when being executed by a processor, implements the software system construction method according to any one of claims 1 to 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310699205.2A CN116541065A (en) | 2023-06-14 | 2023-06-14 | Software system construction method, device, equipment and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310699205.2A CN116541065A (en) | 2023-06-14 | 2023-06-14 | Software system construction method, device, equipment and computer readable storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116541065A true CN116541065A (en) | 2023-08-04 |
Family
ID=87443697
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310699205.2A Pending CN116541065A (en) | 2023-06-14 | 2023-06-14 | Software system construction method, device, equipment and computer readable storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116541065A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116931954A (en) * | 2023-09-18 | 2023-10-24 | 浙江简捷物联科技有限公司 | Built-in software package compiling construction method, device, equipment and medium |
CN117648198A (en) * | 2024-01-30 | 2024-03-05 | 北京比格大数据有限公司 | Application adaptation method, device, equipment and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105791852A (en) * | 2016-04-27 | 2016-07-20 | 南京大学 | Multimedia data processing method based on LED asynchronous control |
CN110673961A (en) * | 2018-07-03 | 2020-01-10 | 山东华软金盾软件股份有限公司 | Remote debugging method based on NFS service |
CN110933495A (en) * | 2019-12-06 | 2020-03-27 | 深圳市斯迈龙科技有限公司 | Video playing method and device based on embedded system |
CN111459490A (en) * | 2020-03-11 | 2020-07-28 | 云知声智能科技股份有限公司 | Speech recognition engine transplanting method and device for automatically adapting hardware platform |
-
2023
- 2023-06-14 CN CN202310699205.2A patent/CN116541065A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105791852A (en) * | 2016-04-27 | 2016-07-20 | 南京大学 | Multimedia data processing method based on LED asynchronous control |
CN110673961A (en) * | 2018-07-03 | 2020-01-10 | 山东华软金盾软件股份有限公司 | Remote debugging method based on NFS service |
CN110933495A (en) * | 2019-12-06 | 2020-03-27 | 深圳市斯迈龙科技有限公司 | Video playing method and device based on embedded system |
CN111459490A (en) * | 2020-03-11 | 2020-07-28 | 云知声智能科技股份有限公司 | Speech recognition engine transplanting method and device for automatically adapting hardware platform |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116931954A (en) * | 2023-09-18 | 2023-10-24 | 浙江简捷物联科技有限公司 | Built-in software package compiling construction method, device, equipment and medium |
CN116931954B (en) * | 2023-09-18 | 2023-12-19 | 浙江简捷物联科技有限公司 | Built-in software package compiling construction method, device, equipment and medium |
CN117648198A (en) * | 2024-01-30 | 2024-03-05 | 北京比格大数据有限公司 | Application adaptation method, device, equipment and storage medium |
CN117648198B (en) * | 2024-01-30 | 2024-05-10 | 北京比格大数据有限公司 | Application adaptation method, device, equipment and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107766126B (en) | Container mirror image construction method, system and device and storage medium | |
CN116541066B (en) | Software system construction method, device, equipment and computer readable storage medium | |
CN109597814B (en) | Online rapid delivery system of background management information system | |
US20200057620A1 (en) | Generation of dynamic software models using input mapping with feature definitions | |
CN116541065A (en) | Software system construction method, device, equipment and computer readable storage medium | |
US11667033B2 (en) | Systems and methods for robotic process automation | |
CN110543327A (en) | Service component multiplexing method and device, computer equipment and storage medium | |
CN114115841A (en) | Method, apparatus, device, medium and program product for dynamically arranging data stream interface | |
EP4036716B1 (en) | Method and device for acquiring mirror image file | |
CN111506314A (en) | Project development method, device, server and medium | |
CN115934093A (en) | Applet cross-terminal application method, related device and computer storage medium | |
CN114048415A (en) | Form generation method and device, electronic equipment and computer readable storage medium | |
CN115794214B (en) | Application module metadata management method, device, storage medium and apparatus | |
CN116450206B (en) | Software system construction method, device, equipment and computer readable storage medium | |
CN116562342A (en) | Model construction method, device, equipment, vehicle and storage medium | |
US20110246158A1 (en) | Method for simulating a complex system with construction of at least one model including at least one modelled router, corresponding computer software package and storage means | |
CN116227625A (en) | Intelligent model development method, medium and equipment | |
JP3045286B2 (en) | Circuit design method and apparatus, information storage medium | |
CN115328679A (en) | Automatic integration method of heterogeneous function library, computing equipment and system thereof | |
JP2003140895A (en) | Test system having recombinable software | |
CN115357240B (en) | Micro-service model construction method, device, computer equipment and storage medium | |
CN112130841B (en) | SQL development method and device and terminal equipment | |
CN117591104B (en) | Model generation method and device, electronic equipment and storage medium | |
US20240118877A1 (en) | System and method for decomposing monolith applications into software services | |
CN115437615A (en) | Data reporting method and device, computer equipment and storage medium |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20230804 |