An application construction method and device
By building data packages using server-side build files, the problem of cumbersome and inefficient application building processes is solved, enabling efficient building and unified management of multi-system applications, and suitable for scenarios such as cloud desktops.
Patent Information
- Application Number
- CN202010945082.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-07-02
- Filing Date
- 2020-09-09
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2040-09-09
AI Technical Summary
Existing technologies involve cumbersome application building processes, especially for applications built on multiple operating systems, which are inefficient and rely on manual operation by administrators, making it difficult to meet user needs.
The system obtains build files from the server, constructs data packages based on the target operating system and application attribute information, and saves them to the database for user devices to access, thereby achieving decoupled management of the application layer and reducing dependence on virtual machine templates.
It improves application building efficiency, supports multi-system application building, standardizes processes, meets the consistency requirements of applications across multiple devices, and reduces operation and maintenance costs.
Smart Images

Figure CN113886000B_ABST
Abstract
Description
[0001] This application claims priority from the Chinese patent application No. 202010626678.6 filed on July 2, 2020, and entitled "Method, device and server for constructing application and storage medium", the whole content of which is incorporated herein by reference. TECHNICAL FIELD
[0002] The present application relates to the technical field of computer, and in particular, to an application construction method and device. BACKGROUND
[0003] With the continuous development of computer technology, the types and quantities of application programs (application software or application program) are increasing, and the function design of application programs is becoming more and more complex. The installation, configuration and update of application software have become one of the skills that must be mastered, especially for complex application functions, the installation and configuration process is relatively cumbersome, which affects the user experience. In addition, some applications need to maintain the same configuration in multiple devices, otherwise it may affect normal use, for example, office applications, drawing applications, software development applications, etc. If the versions or configurations of the applications in two devices are different, compatibility problems may occur during use, and even a file that can be normally opened in device A may not work normally in device B.
[0004] Through virtual machine technology, the application software required by the user can be uniformly managed, such as constructing and updating the application, which can save the time spent by the user on software installation and configuration, and save the operation and maintenance cost of the administrator. Figure 1 Figure 1 is a method for constructing an application provided by an embodiment of the present application, which includes the following steps: step 1: an administrator uses an ISO (ISO 9660 standard optical disc image file format, file extension is usually iso) file to create a new virtual machine; step 2: the administrator uses a virtual network computing (VNC) protocol login method to connect the virtual machine; step 3: the administrator installs an application in the virtual machine; step 4: the administrator saves a virtual machine template using a snapshot; and step 5: the administrator creates a virtual machine in batches according to the virtual machine template. The user can use the application in the virtual machine by obtaining the virtual machine template. However, in the process of constructing the application by creating the virtual machine by the administrator, multiple virtual machine templates need to be created for different operating systems, and manual operation by the administrator is required, so the construction speed of the application is slow, which is difficult to meet the needs of the user.
[0005] Therefore, how to improve the efficiency of application construction is a hot issue that persons skilled in the art are studying. SUMMARY
[0006] Embodiments of the present application disclose an application construction method and device, which can improve the efficiency of application construction.
[0007] A first aspect of embodiments of the present application discloses an application construction method, comprising:
[0008] The server acquires a construction file, the construction file comprising information of a target operating system on which a target application runs and attribute information of the target application;
[0009] The server constructs the target application according to the attribute information under a mounting point where the target operating system is located, to obtain a data packet for deploying the target application at an application layer;
[0010] The server saves the data packet to a database for calling by a user device.
[0011] In embodiments of the present application, the server acquires a construction file, constructs a target application according to information in the construction file, and obtains a data packet, so that a user device can use the target application by mounting the data packet. On the one hand, one construction file can construct multiple applications, and one server can also construct applications of multiple systems, thus improving the efficiency of application construction. On the other hand, the construction file can standardize the process of application construction, and the administrator does not need to distribute applications by creating a virtual machine template. Moreover, the data packet is called at the application layer, which can be decoupled from the system layer, thus facilitating the management of applications. In addition, multiple user devices can use the same version of applications by acquiring the same data packet, which can be applied in scenarios such as batch distribution of cloud desktops, thus meeting the needs of users to use the same application among multiple devices.
[0012] In a possible implementation of the first aspect, the server constructs the target application according to the attribute information under the mounting point where the target operating system is located, to obtain the data packet, comprising:
[0013] The server constructs the target application according to the attribute information and the permission information under the mounting point where the target operating system is located, to obtain the data packet for calling by the target user;
[0014] The construction file comprises permission information, and the permission information is used to indicate a target user who has the permission to use the target application.
[0015] It can be seen that, by the permission information, the target user who can acquire the application can be defined or configured in advance according to the needs, so as to determine the application that can be pulled and downloaded by the user, thus improving the flexibility of constructing the application.
[0016] In one possible implementation of the first aspect, the data packet corresponds to first permission information, which is used to indicate a target user having permission to use the target application.
[0017] This allows for the determination of which applications a user can pull and download by either generating the first permission information corresponding to the data packet through the server or recording the first permission information in the database, thereby improving the flexibility of application development.
[0018] In another possible implementation of the first aspect, the server, under the mount point where the target operating system is located, constructs the target application based on the attribute information to obtain a data packet, including:
[0019] The server maps the mount directory to the mount point where the target operating system is located.
[0020] The server mounts a file system at the mount point where the target operating system is located.
[0021] The server constructs the target application based on the file system and the attribute information to obtain the data packet.
[0022] As can be seen, a server can have multiple system mount points. When the server builds an application, it can parse the build files to determine which operating system's mount point to build the application under. This file system can be used to organize build files; for example, building an application typically generates binary files, configuration files, etc. The file system can organize these various files into data packets.
[0023] In another possible implementation of the first aspect, the data packet is a data packet packaged based on the file system.
[0024] In another possible implementation of the first aspect, the file system is an overlay file system (overlayfs), also known as an overlay file system. Alternatively, it can be an advanced multi-layered unified file system (AUFS), Btrfs file system, or other file systems that can implement layered management of the application layer and the system layer.
[0025] In another possible implementation of the first aspect, the server obtains the build file, including:
[0026] The server receives the build file sent by the service node.
[0027] In another possible implementation of the first aspect, the server obtains the build file, including:
[0028] The server obtains the build files through a computer-readable storage medium.
[0029] For example, a business node can upload build files to a database (which resides on disk), and the server can retrieve the build files from the database. Alternatively, a user can copy build files to the server using computer-readable storage media.
[0030] In yet another possible implementation of the first aspect, the method further includes:
[0031] The server saves the build file to the database.
[0032] In this embodiment of the application, the information of the built application can be recorded more intuitively and clearly through the build file, avoiding the introduction of human build errors, and can be stored in the database for easy retrospective review in the future.
[0033] Secondly, embodiments of this application disclose an application construction method, including:
[0034] The service node receives the target operating system information and attribute information of the target application.
[0035] The business node generates a build file based on the target operating system information and the attribute information of the target application.
[0036] The service node sends the build file to the server; the build file is used by the server to obtain data packets for user devices to call.
[0037] In this embodiment, the business node submits a build file, and the server builds the target application according to the information in the build file, obtaining a data packet. User devices can then mount this data packet to use the target application. On one hand, multiple applications can be built at once using the build file, and a single server can build applications for multiple systems, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as bulk deployment of cloud desktops, meeting the needs of users to use the same application across multiple devices.
[0038] In one possible implementation of the second aspect, the method further includes:
[0039] The service node receives input permission information, which is used to indicate the target user who has permission to use the target application;
[0040] The business node generates a build file based on the target operating system information and the attribute information of the target application, including:
[0041] The business node generates a build file based on the target operating system information, the target application's attribute information, and the permission information.
[0042] As can be seen, by using permission information, the target users who can access the application can be predefined or configured according to their needs, thereby determining the tiered applications that users can pull and download, which improves the flexibility of application building.
[0043] Thirdly, embodiments of this application disclose an application construction method, including:
[0044] The user equipment obtains data packets from the database; wherein the data packets are obtained by the server based on a build file, the build file including information about the target operating system running the target application and the attribute information of the target application;
[0045] The user equipment mounts the data packet and uses the target application.
[0046] In this embodiment, the server obtains a build file, constructs the target application according to the information in the build file, and obtains a data packet. The user device then mounts this data packet to use the target application. On one hand, multiple applications can be built at once using the build file, and a single server can build applications for multiple systems, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as bulk deployment of cloud desktops, meeting the user's need to use the same application across multiple devices.
[0047] In one possible implementation of the third aspect, the operating system of the user equipment is the target operating system or the user equipment contains a virtual machine using the target operating system.
[0048] In another possible implementation of the third aspect, the user of the user device has permission to use the target application.
[0049] Fourthly, embodiments of this application disclose an application building apparatus, comprising:
[0050] A communication unit is used to acquire a build file, the build file including information about the target operating system running the target application and attribute information of the target application;
[0051] The processing unit is configured to construct the target application based on the attribute information at the mount point where the target operating system is located, and obtain a data packet for deploying the target application at the application layer;
[0052] The processing unit is also used to save the data packet to a database for use by user devices.
[0053] In this embodiment, the application building device obtains a build file, builds the target application according to the information in the build file, and obtains a data packet. The user device then mounts this data packet to use the target application. On one hand, multiple applications can be built at once using the build file, and applications for various systems can also be built using the application building device, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as batch deployment of cloud desktops, meeting the user's need to use the same application across multiple devices.
[0054] In one possible implementation of the fourth aspect, the processing unit is specifically used for:
[0055] Under the mount point where the target operating system is located, the target application is constructed according to the attribute information and the permission information to obtain a data package for the target user to call;
[0056] The build file includes permission information, which is used to indicate the target user who has permission to use the target application.
[0057] As can be seen, by using permission information, the target users who can access the application can be predefined or configured according to their needs, thereby determining the tiered applications that users can pull and download, which improves the flexibility of application building.
[0058] In one possible implementation of the fourth aspect, the data packet corresponds to first permission information, which is used to indicate a target user with permission to use the target application.
[0059] The application building device can generate the first permission information corresponding to the data packet, or record the first permission information in the database, thereby determining the application that the user can pull and download, which improves the flexibility of application building.
[0060] In yet another possible implementation of the fourth aspect, the processing unit is specifically used for:
[0061] Map the mount directory to the mount point where the target operating system is located;
[0062] Mount the file system at the mount point where the target operating system is located;
[0063] Based on the file system, the target application is constructed according to the attribute information to obtain the data packet.
[0064] In another possible implementation of the fourth aspect, the data packet is a data packet packaged based on the file system.
[0065] In another possible implementation of the fourth aspect, the file system is an overlayfs file system. Alternatively, it can be an advanced multi-layered unified file system (AUFS), Btrfs file system, or other file systems that can implement layered management of the application layer and the system layer.
[0066] In another possible implementation of the fourth aspect, the communication unit is specifically used to receive a build file sent by a service node.
[0067] In yet another possible implementation of the fourth aspect, the communication unit is specifically configured to acquire a build file via a computer-readable storage medium.
[0068] For example, a business node can upload build files to a database (which resides on a disk), and the application building device can then retrieve the build files from the database. Alternatively, a user can copy the build files to the application building device using a computer-readable storage medium.
[0069] In another possible implementation of the fourth aspect, the processing unit is further configured to save the build file to a build file database.
[0070] In this embodiment of the application, the information of the built application can be recorded more intuitively and clearly through the build file, avoiding the introduction of human build errors, and can be stored in the database for easy retrospective review in the future.
[0071] Fifthly, embodiments of this application disclose an application building apparatus, comprising:
[0072] The receiving unit is used to receive information about the target operating system running the target application and the attribute information of the target application.
[0073] The processing unit is configured to generate a build file based on the target operating system information and the attribute information of the target application.
[0074] The sending unit is used to send the build file to the server; the build file is used by the server to obtain data packets for use by user equipment.
[0075] In this embodiment, the application building device submits a build file, and the server builds the target application according to the information in the build file, obtaining a data packet. User devices can then use the target application by mounting the data packet. On one hand, multiple applications can be built at once using the build file, and a single server can build applications for multiple systems, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as bulk distribution of cloud desktops, meeting the needs of users to use the same application across multiple devices.
[0076] In one possible implementation of the fifth aspect, the receiving unit is further configured to receive input permission information, the permission information being used to indicate a target user having permission to use the target application;
[0077] The processing unit is specifically used to generate a build file based on the target operating system information of the target application, the attribute information of the target application, and the permission information.
[0078] As can be seen, by using permission information, the target users who can access the application can be predefined or configured according to their needs, thereby determining the tiered applications that users can pull and download, which improves the flexibility of application building.
[0079] Sixthly, embodiments of this application disclose an application building apparatus, comprising:
[0080] A communication unit is used to obtain data packets from a database; wherein the data packets are obtained by the server based on a build file, the build file including information about the target operating system running the target application and attribute information of the target application;
[0081] A processing unit is used to mount the data packet and use the target application.
[0082] In this embodiment, the server obtains a build file, builds the target application according to the information in the build file, and obtains a data packet. The application building device then mounts this data packet, allowing the target application to be used. On one hand, multiple applications can be built at once using the build file, and a single server can build applications for multiple systems, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as bulk distribution of cloud desktops, meeting the user's need to use the same application across multiple devices.
[0083] In one possible implementation of the sixth aspect, the operating system of the user equipment is the target operating system or the user equipment contains a virtual machine using the target operating system.
[0084] In one possible implementation of the sixth aspect, the user of the user device has permission to use the target application.
[0085] In a seventh aspect, embodiments of this application disclose a server, the server including a processor and a memory; the processor is configured to execute computer instructions stored in the memory, causing the server to implement the method described in the first aspect or any possible implementation of the first aspect.
[0086] Eighthly, this application discloses a service node, wherein the server includes a processor and a memory; the processor is configured to execute computer instructions stored in the memory, causing the server to implement the method described in the second aspect or any possible implementation of the second aspect.
[0087] Ninthly, embodiments of this application disclose a user equipment, the user equipment including a processor and a memory; the processor is configured to execute computer instructions stored in the memory, causing the server to implement the method described in the third aspect or any possible implementation of the third aspect.
[0088] Tenthly, embodiments of this application disclose an application building system, wherein the user equipment includes a server and a user equipment, and further includes a service node. The server includes the application building apparatus described in the fourth aspect or any possible implementation of the fourth aspect; the user equipment includes the application building apparatus described in the sixth aspect or any possible implementation of the sixth aspect; and the service node includes the application building apparatus described in the fifth aspect or any possible implementation of the fifth aspect.
[0089] Eleventhly, embodiments of this application disclose a computer-readable storage medium storing computer instructions for implementing the method described in the first aspect or any possible implementation of the first aspect; or for implementing the method described in the second aspect or any possible implementation of the second aspect; or for implementing the method described in the third aspect or any possible implementation of the third aspect. Attached Figure Description
[0090] The accompanying drawings used in the embodiments of this application are described below.
[0091] Figure 1 This is a flowchart illustrating a method for constructing an application according to an embodiment of this application;
[0092] Figure 2 This is a schematic diagram of the architecture of an application building system provided in an embodiment of this application;
[0093] Figure 3 This is a flowchart illustrating an application construction method provided in an embodiment of this application;
[0094] Figure 4 This is a schematic diagram illustrating a use case of an application construction method provided in an embodiment of this application;
[0095] Figure 5 This is a schematic diagram of the structure of an application building device provided in an embodiment of this application;
[0096] Figure 6 This is a schematic diagram of the structure of another application building device provided in the embodiments of this application;
[0097] Figure 7 This is a schematic diagram of another application building device provided in the embodiments of this application;
[0098] Figure 8 This is a schematic diagram of the structure of a server provided in an embodiment of this application;
[0099] Figure 9 This is a schematic diagram of the structure of a service node provided in an embodiment of this application;
[0100] Figure 10 This is a schematic diagram of the structure of a user equipment provided in an embodiment of this application. Detailed Implementation
[0101] The embodiments of this application are described below with reference to the accompanying drawings.
[0102] The following is an explanation of the technical terms used in this application.
[0103] I. Virtual Machine
[0104] A virtual machine (VM) is a complete computer system simulated by software, possessing full hardware system functionality and running in a completely isolated environment. Any task that can be performed on a physical computer can also be performed in a VM. When creating a VM, a portion of the physical machine's hard drive and memory capacity is used as the VM's hard drive and memory capacity. Each VM has its own independent CMOS, hard drive, and operating system, and can be operated just like a physical machine.
[0105] II. Operating System
[0106] An operating system is a computer program that manages computer hardware and software resources. The operating system handles fundamental tasks such as managing and configuring memory, determining the priority of system resource allocation, controlling input and output devices, operating the network, and managing the file system.
[0107] Windows is an operating system developed by Microsoft Corporation in the United States. It was first released in 1985. Initially, it was just a Microsoft-DOS emulation environment. Subsequent versions of the system have been continuously updated and upgraded by Microsoft, making it not only easy to use but also the most widely used operating system today.
[0108] Linux is a free and open-source Unix-like operating system. Its kernel was first released by Linus Benedict Torvalds in 1991. Primarily inspired by Minix and Unix, it is a multi-user, multi-tasking operating system based on the Portable Operating System Interface (POSIX) and supporting multi-threading and multiple central processing units (CPUs). It can run major Unix utilities, applications, and network protocols. It supports both 32-bit and 64-bit hardware. Linux inherits Unix's network-centric design philosophy and is a stable multi-user network operating system.
[0109] III. Container
[0110] Containers are a technique that effectively divides the resources of a single operating system into isolated groups in order to better balance conflicting resource usage demands among these isolated groups.
[0111] IV. Overlay File System (OverlayFS)
[0112] OverlayFS is a file system service for Linux systems that enables union mounting of other file systems. chroot is an operating system-level "virtual machine" whose function is to change the root directory where a program runs, restricting the program to a specified root directory, thereby isolating the application; this directory is called the chroot jail.
[0113] Programs running in chroot actually use the real system's kernel and resources, so there is no performance loss.
[0114] V. Layering
[0115] In this embodiment of the application, layering refers to logically dividing a traditional host into a system layer (also known as a kernel layer, operating system layer, etc. in some scenarios), an application layer, etc. Of course, in specific cases, there may also be a hardware layer, a driver layer, etc., which will not be listed here. The system layer is used for task scheduling, disk and file management, etc., while the application layer is used to implement applications, such as games, office software, email applications, etc.
[0116] Please see Figure 2 , Figure 2 This is a schematic diagram of an application building system provided in an embodiment of this application. The system includes a business node 201, a server 202, a build file database 202, a hierarchical application database 204, and a user device 205, wherein:
[0117] Business node 201 is an electronic device with data processing and data transmission / reception capabilities. It can be a physical device such as a host, laptop, or mobile phone, or a virtual device such as a virtual machine or container, used to submit build files. Specifically, the build file includes information about the target operating system running the target application and the target application's attribute information. The target operating system can include one or more of the following: Linux, Windows, Unix, etc. The target application's attribute information includes the application's name, version, data configuration, user data, etc.
[0118] Server 202 is an electronic device with data processing and data transmission / reception capabilities. It can be a physical device such as a host, rack server, or blade server, or a virtual device such as a virtual machine or container. Furthermore, server 202 can be a single server or a server cluster composed of multiple servers. Server 202 is used to parse submitted build files and build applications based on those files. Furthermore, server 202 can also package applications into data packets and save these data packets to the hierarchical application database 204.
[0119] The build file database 203 is a device with data storage capabilities. It can be a physical storage device, such as memory (including random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), etc.), or a disk (including compact disc random access memory (CD-RAM), hard disk, etc.). It can also be other electronic devices with data storage capabilities, such as Network Attached Storage (NAS) servers, or virtual storage devices, such as virtual machines, containers, etc. The build file database 203 stores submitted build files, facilitating information backtracking, statistical data collection, etc. For example, when server 202 receives a build file submitted by business node 201, it can send the build file to the build file database 203, which then stores it. Similarly, business node 201 can directly submit a build file to the build file database 203, which then stores it upon receipt.
[0120] Application database 204 is a device with data storage capabilities. It can be a physical storage device, such as memory or a disk, or other electronic devices with data storage capabilities, such as a NAS server, or a virtual storage device, such as a virtual machine or a container. Application database 204 is used to store application data packages and can also be called a tiered application database.
[0121] Optionally, the file database 203 and / or application database 204 can be a single device, a module within a device, or a cluster of devices. For example, a distributed database can be deployed across multiple storage devices. It should be noted that the term "database" is used here to emphasize the data storage function and is not limited to a database application; it could also be a file system application.
[0122] Furthermore, the server 202, the build file database 202, and the application database 204 can be deployed on the same device or in the same server cluster. Furthermore, the build file database and the hierarchical application database can belong to the same database. For example, a distributed server can be a server cluster composed of multiple servers, such as cloud computing servers, Content Delivery Network (CDN) servers, Network Time Protocol (NTP) servers, Domain Name System (DNS) servers, storage servers, etc. The cluster can also include a NAS for data storage. The various devices of the distributed server can coordinate with each other to jointly complete functions such as computing, data storage, and communication. The build file database 202 and the application database 204 can be deployed in a storage server or a NAS. As another example, server 202 is a rack-mounted server containing a processor and memory. The memory stores computer instructions, which can be used to parse submitted build files and build applications based on the build files. The memory also stores a database that can implement the functions of the build file database 203 and / or the application database 204.
[0123] User equipment 205 is an electronic device with data processing and data transmission / reception capabilities. It can be a physical device such as a host, laptop, or mobile phone, or a virtual device such as a virtual machine or container. User equipment 205 can obtain data packets from application database 204 and use the target application by mounting the data packets. Furthermore, the data packets are mounted on the application layer of user equipment 205.
[0124] Please see Figure 3 , Figure 3 This application provides a layered application construction method, which can be based on... Figure 2 The method, implemented using the framework shown, includes at least the following steps:
[0125] Step S301: The service node receives the target operating system information and attribute information of the target application.
[0126] Specifically, the target operating system information for the target application may include one or more of the following: operating system name, version information, and identification information. The target operating system may include one or more of the following: Linux, Windows, Unix, etc. The operating system version information may include classic versions, such as Gentoo Linux, CentOS Linux, Ubuntu Linux, Fedora Linux, OpenSUSE Linux, etc., and version numbers, such as Ubuntu Linux versions like ubuntu16.04, Ubuntu 18.04, Ubuntu 20.04, etc. The operating system identifier can be a number, which can be a pre-set or predefined number; for example, a predefined ID of "01" indicates a Linux Ubuntu 18.04 system. Optionally, the build file may also include permission information, which indicates the target user with the necessary permissions to use the target application. For example, this permission information may indicate the user's Internet Protocol (IP) address range; the target application can only be obtained if the user's IP address falls within the IP address range indicated in the permission information.
[0127] The target application's attribute information may include the target application's name, identification ID, version, software repository to which the target application belongs, configuration data, user data, and so on.
[0128] The target operating system information and attribute information of the target application can be input into the business node by a user (e.g., an administrator in an enterprise). Correspondingly, the business node receives the user-inputted information about the target operating system and attribute information of the target application.
[0129] Step S302: The business node generates a build file based on the target operating system information and the attribute information of the target application.
[0130] Specifically, the build file can be data in formats such as commands, type-length-value (TLV), documents, tables, strings, etc. For example, this application exemplifies a command-style build file. If the business node selects an operating system identified as "System 1" and the name of the application to be created is "app1", then the build file can be "FROM System 1 RUN install app1", where "FROM" and "RUN install" are keywords. The system identifier after "FROM" indicates the target operating system information, and the software name after "RUN install" indicates the target application information to be created.
[0131] Step S303: The business node sends the build file to the server.
[0132] Specifically, the build file includes information about the target operating system on which the target application runs and the attribute information of the target application. Understandably, the business node sends the build file to the server, and correspondingly, the server can receive the build file sent by the business node.
[0133] The communication link between the service node and the server can include various types of connection media, including wired links (fiber optic, Ethernet, etc.), wireless links, or a combination of wired and wireless links. Wired links can be short-range connection technologies such as 802.11b / g, Bluetooth, Zigbee, Radio Frequency Identification (RFID), and Ultra Wideband (UWB), or long-range connection technologies such as Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), and Universal Mobile Telecommunications System (UMTS). Of course, other communication technologies may also be used to support communication between the service node and the server.
[0134] In addition, the server can also obtain build files through storage media. For example, it can copy build files from business nodes using a portable hard drive or other disk, and the server can then retrieve the copied build files from that disk. Alternatively, business nodes can upload build files to a database (which resides on a disk), and the server can then pull the build files from the database.
[0135] Step S304: The server builds the target application based on the attribute information at the mount point where the target operating system is located.
[0136] Specifically, a server may contain one or more operating systems, and there may be one or more mount points for these operating systems. Typically, each system has a corresponding mount point, which can be considered as a root directory; that is, different operating systems have different root directories. When building an application, the server can parse the build files to determine which operating system's mount point to build the application under.
[0137] Specifically, the build file contains information about the target operating system, so the server can build the target application based on the attribute information in the build file under the mount point where the target operating system is located.
[0138] For example, see Figure 4 , Figure 4 This is a schematic diagram illustrating a usage scenario of an application building method provided in this application embodiment. Referring to area 201, server 202 receives the build file "FROM linux1 RUN install app1app2" from business node 201, meaning the target operating system is "linux1" and the target application is "app1app2". Referring to area 402, server 202 can have four mount points: mount point 1 (mounted with system linux1), mount point 2 (mounted with system linux2), mount point 3 (mounted with system linux3), and mount point 4 (mounted with system linux4). Under mount point 1 (mounted with system linux1), the server builds applications app1 and app2 according to the attribute information in the build file. See also... Figure 5 The middle area 404 and data packet 403 contain various files of the built application, such as one or more binary files, source files, configuration files, program files, etc.
[0139] Furthermore, the server can first determine the mount point of the target operating system by mapping the mount directory of the application to the mount point of the target operating system, based on the target operating system information. For example, see... Figure 5 If the current mount point in server 202 is mount point 2, then the mount point will be switched to mount point 1. Optionally, the mount point can be switched automatically based on the build file, or it can be switched manually, for example, by manually entering the "chroot" command to switch the mount point.
[0140] Specifically, a file system is mounted under the mount point of the target operating system on the server. Based on this file system, the server constructs the target application according to its attribute information, thus obtaining the data package.
[0141] Alternatively, the file system can be an overlay file system (overlayfs). It can also be an advanced multi-layered unified file system (AUFS), Btrfs file system, or other file systems that enable layered management of the application and system layers.
[0142] This data package can be obtained by packaging and / or compressing the mounted directory after the application is built. It can also be called a layered application data package, compressed data package, layered application compressed package, etc.
[0143] Optionally, if the build file also includes permission information, the server constructs the target application based on the attribute and permission information, resulting in a layered application compressed package. This layered application compressed package also includes indication information, which the layered application database uses to determine the target users who can access the package. Alternatively, this permission information can be determined by the server or a database storing the data packets. For example, the server can generate first permission information corresponding to the data packets, or the database can record this first permission information to determine which users can pull and download the data packets and use the target application.
[0144] Optionally, the server can also save the build files to a build file database for easy access to backtracking information, statistics, and so on.
[0145] Step S305: The server saves the data packet to the database for use by user devices.
[0146] Specifically, the server saves the layered application data packets to the layered application database, which then stores them.
[0147] Optionally, the layered application database can be deployed on the same device as the server, in which case the server can store the received data packets in the database.
[0148] Alternatively, if the hierarchical application database and the server are deployed on different devices, the server can send the data packet to the hierarchical application database, and the hierarchical application database will receive and save the data packet. The communication link between the service node and the server can include various types of connection media, including wired links (fiber optic, Ethernet, etc.), wireless links, or a combination of wired and wireless links.
[0149] Step S306: The user equipment obtains data packets from the database.
[0150] Specifically, the user device can download or retrieve data packets from the database. Optionally, if the build file also includes permission information, the user of the user device has permission to use the target application, and therefore can retrieve the data packet from the hierarchical application database.
[0151] Optionally, the user equipment can directly download, retrieve, or receive data packets sent by the database, or it can receive data packets from the database through a server. For example, the user equipment requests a data packet from the server, and the server responds by reading the data packet from the database and sending it to the user equipment.
[0152] Step S307: The user equipment mounts the data packet and uses the target application.
[0153] Specifically, since the data packet is a package of the mounted file system, the user device can mount the data packet to use the target application. Furthermore, the data packet is mounted on the user device's application layer; in other words, the target application is deployed on the user device's application layer.
[0154] In one design, the user device's operating system includes the target operating system, or the user device contains a virtual machine or container with the target operating system as its operating system, thereby enabling the user device to use target applications built on the target operating system. See, for example, [link to relevant documentation]. Figure 4 If the virtual machine in user equipment 205 is running the "linux1" operating system, then the acquired data packets are mounted in the user virtual machine to use the target application.
[0155] exist Figure 3 In the described method, the server obtains a build file, builds the target application according to the information in the build file, and obtains a data packet. The user device then mounts this data packet to use the target application. On one hand, multiple applications can be built at once using the build file, and a single server can build applications for multiple systems, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as bulk deployment of cloud desktops, meeting the user's need to use the same application across multiple devices.
[0156] The methods of the embodiments of this application have been described in detail above, and the apparatus of the embodiments of this application is provided below.
[0157] Please see Figure 5 , Figure 5This is a schematic diagram of the structure of an application building device 50 provided in an embodiment of this application. The application building device 50 can be... Figure 3 The server in the illustrated embodiment can also be a module within a server, such as a chip or integrated circuit. The application building apparatus 50 is used to implement the aforementioned application building method, such as... Figure 3 The illustrated embodiment describes the application construction method.
[0158] Furthermore, the application building apparatus 50 may include a communication unit 501 and a processing unit 502, wherein the detailed description of each unit is as follows:
[0159] The communication unit 501 is used to obtain a build file, the build file including information about the target operating system running the target application and attribute information of the target application;
[0160] The processing unit 502 is configured to construct the target application based on the attribute information under the mount point where the target operating system is located, and obtain a data packet for deploying the target application at the application layer;
[0161] The processing unit 502 is also used to save the data packet to a database for use by user equipment.
[0162] In this embodiment, the application building device 50 obtains a build file, builds the target application according to the information in the build file, and obtains a data packet. The user device then mounts this data packet to use the target application. On one hand, multiple applications can be built at once using the build file, and applications for various systems can also be built using the application building device 50, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as batch deployment of cloud desktops, meeting the user's need to use the same application across multiple devices.
[0163] In one possible implementation, the processing unit 502 is specifically used for:
[0164] Under the mount point where the target operating system is located, the target application is constructed according to the attribute information and the permission information to obtain a data package for the target user to call;
[0165] The build file includes permission information, which is used to indicate the target user who has permission to use the target application.
[0166] As can be seen, by using permission information, the target users who can access the application can be predefined or configured according to their needs, thereby determining the tiered applications that users can pull and download, which improves the flexibility of application building.
[0167] In one possible implementation, the data packet corresponds to first permission information, which is used to indicate a target user who has permission to use the target application.
[0168] The application building device can generate the first permission information corresponding to the data packet, or record the first permission information in the database, thereby determining the application that the user can pull and download, which improves the flexibility of application building.
[0169] In yet another possible implementation, the processing unit 502 is specifically used for:
[0170] Map the mount directory to the mount point where the target operating system is located;
[0171] Mount the file system at the mount point where the target operating system is located;
[0172] Based on the file system, the target application is constructed according to the attribute information to obtain the data packet.
[0173] In another possible implementation, the data packet is a data packet packaged based on the file system.
[0174] In another possible implementation, the file system is an overlayfs file system. Alternatively, it can be an advanced multi-layered unified file system (AUFS), Btrfs file system, or other file systems that can implement layered management of the application layer and the system layer.
[0175] In another possible implementation, the communication unit 501 is specifically used to receive the build file sent by the service node.
[0176] In yet another possible implementation, the communication unit 501 is specifically used to obtain a build file via a computer-readable storage medium.
[0177] For example, a business node can upload build files to a database (which resides on a disk), and the application building device can then retrieve the build files from the database. Alternatively, a user can copy the build files to the application building device using a computer-readable storage medium.
[0178] In another possible implementation, the processing unit 502 is further configured to save the build file to a build file database.
[0179] In this embodiment of the application, the information of the built application can be recorded more intuitively and clearly through the build file, avoiding the introduction of human build errors, and can be stored in the database for easy retrospective review in the future.
[0180] It should be noted that the specific implementation details of each module can be found by referring to [the relevant documentation / reference]. Figure 3 Detailed description of the illustrated embodiment.
[0181] It is understood that the division of multiple units or modules in the various device embodiments of this application is only a logical division based on function and does not constitute a limitation on the specific structure of the device. In specific implementations, some functional modules may be subdivided into more smaller functional modules, and some functional modules may be combined into a single functional module. However, regardless of whether these functional modules are subdivided or combined, the general process executed during application construction is the same. For example, the communication unit in the aforementioned device 50 can be further divided into a receiving unit and a sending unit. The receiving unit is used to implement the function of receiving data in communication, and the sending unit is used to implement the function of sending data in communication. Typically, each unit corresponds to its own program code (or program instructions). When the program code corresponding to each unit runs on the processor, it causes the unit to be controlled by the processing unit to execute the corresponding process and thus achieve the corresponding function.
[0182] Please see Figure 6 , Figure 6 This is a schematic diagram of the structure of an application building device 60 provided in an embodiment of this application. The application building device 60 can be... Figure 3 The service node in the illustrated embodiment can also be a module within a service node, such as a chip or integrated circuit. The application building apparatus 60 is used to implement the aforementioned application building method, such as... Figure 3 The illustrated embodiment describes the application construction method.
[0183] Furthermore, the application building apparatus 60 may include a receiving unit 601, a processing unit 602, and a transmitting unit 603, wherein the detailed description of each unit is as follows:
[0184] The receiving unit 601 is used to receive the target operating system information of the target application and the attribute information of the target application.
[0185] Processing unit 602 is used to generate a build file based on the information of the target operating system running the target application and the attribute information of the target application;
[0186] The sending unit 603 is used to send the build file to the server; the build file is used by the server to obtain data packets for use by user equipment.
[0187] In this embodiment, the application building device 60 submits a build file, and the server builds the target application according to the information in the build file, obtaining a data packet. User devices can then use the target application by mounting the data packet. On one hand, multiple applications can be built at once using the build file, and a single server can build applications for multiple systems, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as bulk distribution of cloud desktops, meeting the needs of users to use the same application across multiple devices.
[0188] In one possible implementation, the receiving unit 601 is further configured to receive input permission information, the permission information being used to indicate a target user having permission to use the target application;
[0189] The processing unit 602 is specifically used to generate a build file based on the target operating system information of the target application, the attribute information of the target application, and the permission information.
[0190] Please see Figure 7 , Figure 7 This is a schematic diagram of the structure of an application building device 70 provided in an embodiment of this application. The application building device 70 can be... Figure 3 The user equipment in the illustrated embodiment can also be a module within the user equipment, such as a chip or integrated circuit. The application building apparatus 70 is used to implement the aforementioned application building method, such as... Figure 3 The illustrated embodiment describes the application construction method.
[0191] Furthermore, the application building apparatus 70 may include a communication unit 701 and a processing unit 702, wherein the detailed descriptions of each unit are as follows:
[0192] The communication unit 701 is used to obtain data packets from the database; wherein the data packets are obtained by the server based on a build file, the build file including information about the target operating system running the target application and attribute information of the target application;
[0193] Processing unit 702 is used to mount the data packet and use the target application.
[0194] In this embodiment, the server obtains a build file, builds the target application according to the information in the build file, and obtains a data packet. The application building device 70 then mounts this data packet, allowing the target application to be used. On one hand, multiple applications can be built at once using the build file, and a single server can build applications for multiple systems, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as bulk distribution of cloud desktops, meeting the needs of users to use the same application across multiple devices.
[0195] In one possible implementation, the operating system of the user equipment is the target operating system or the user equipment contains a virtual machine that uses the target operating system.
[0196] In one possible implementation, the user of the user device has permission to use the target application.
[0197] It should be noted that the specific implementation details of each module can be found by referring to [the relevant documentation / reference]. Figure 3 Detailed description of the illustrated embodiment.
[0198] Please see Figure 8 , Figure 8 This is a schematic diagram of the structure of a server 80 provided in an embodiment of this application. The server 80 may include at least one memory 801, at least one processor 802, and a communication interface 804. Optionally, it may also include a bus 803, wherein the memory 801, processor 802, and communication interface 804 are connected through the bus 803.
[0199] The memory 801 provides storage space, which can store data such as the operating system and computer instructions. The memory 801 can be one or a combination of several of the following: random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), or compact disc read-only memory (CD-ROM).
[0200] Processor 802 is a module that performs arithmetic and / or logical operations. Specifically, it can be one or a combination of processing modules such as a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor unit (MPU), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), and a complex programmable logic device (CPLD).
[0201] The communication interface 804 is used to receive and / or transmit data to external sources. It can be a wired link interface, such as an Ethernet cable, or a wireless link interface (Wi-Fi, Bluetooth, general wireless transmission, vehicle short-range communication technology, etc.). Optionally, the communication interface 804 may also include a transmitter (such as a radio frequency transmitter, antenna, etc.) or a receiver coupled to the interface.
[0202] The processor 802 in the server 80 is used to read computer instructions stored in the memory 801 to execute the aforementioned application building method, for example... Figure 3 The application construction method described in the illustrated embodiment.
[0203] For example, server 80 can provide Figure 3 In the server shown in the embodiment, the processor 802 in the server 80 is used to read computer instructions stored in the memory 801 and to perform the following operations:
[0204] Obtain the build file, which includes information about the target operating system on which the target application runs and the attribute information of the target application;
[0205] Under the mount point where the target operating system is located, the target application is constructed according to the attribute information to obtain a data package for deploying the target application at the application layer;
[0206] The data packet is saved to the database for use by user devices.
[0207] In this embodiment, the application building device 80 obtains a build file, builds the target application according to the information in the build file, and obtains a data packet. The user device then mounts this data packet to use the target application. On one hand, multiple applications can be built at once using the build file, and applications for various systems can also be built using the application building device 80, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as batch deployment of cloud desktops, meeting the user's need to use the same application across multiple devices.
[0208] In one possible implementation, the processor 802 is specifically used for:
[0209] Under the mount point where the target operating system is located, the target application is constructed according to the attribute information and the permission information to obtain a data package for the target user to call;
[0210] The build file includes permission information, which is used to indicate the target user who has permission to use the target application.
[0211] As can be seen, by using permission information, the target users who can access the application can be predefined or configured according to their needs, thereby determining the tiered applications that users can pull and download, which improves the flexibility of application building.
[0212] In one possible implementation, the data packet corresponds to first permission information, which is used to indicate a target user who has permission to use the target application.
[0213] The application building device can generate the first permission information corresponding to the data packet, or record the first permission information in the database, thereby determining the application that the user can pull and download, which improves the flexibility of application building.
[0214] In yet another possible implementation, the processor 802 is specifically used for:
[0215] Map the mount directory to the mount point where the target operating system is located;
[0216] Mount the file system at the mount point where the target operating system is located;
[0217] Based on the file system, the target application is constructed according to the attribute information to obtain the data packet.
[0218] In another possible implementation, the data packet is a data packet packaged based on the file system.
[0219] In another possible implementation, the file system is an overlayfs file system. Alternatively, it can be an advanced multi-layered unified file system (AUFS), Btrfs file system, or other file systems that can implement layered management of the application layer and the system layer.
[0220] In another possible implementation, the processor 802 is specifically configured to receive a build file sent by a service node via a communication interface 804.
[0221] In yet another possible implementation, the communication unit is specifically used to obtain the build file via a computer-readable storage medium.
[0222] For example, a business node can upload build files to a database (which resides on a disk), and the application building device can then retrieve the build files from the database. Alternatively, a user can copy the build files to the application building device using a computer-readable storage medium.
[0223] In yet another possible implementation, the processor 802 is further configured to save the build file to a build file database.
[0224] Please see Figure 9 , Figure 9 This is a schematic diagram of the structure of a service node 90 provided in an embodiment of this application. The service node 90 may include at least one memory 901, at least one processor 902, and a communication interface 904. Optionally, it may also include a bus 903, wherein the memory 901, processor 902, and communication interface 904 are connected through the bus 903.
[0225] The memory 901 provides storage space, which can store data such as the operating system and computer instructions. The memory 901 can be one or a combination of RAM, ROM, EPROM, or CD-ROM, etc.
[0226] The processor 902 is a module that performs arithmetic and / or logical operations, and can be one or a combination of processing modules such as CPU, GPU, MPU, ASIC, FPGA, CPLD, etc.
[0227] The communication interface 904 is used to receive and / or transmit data to external sources. It can be a wired link interface, such as an Ethernet cable, or a wireless link interface (Wi-Fi, Bluetooth, general wireless transmission, vehicle short-range communication technology, etc.). Optionally, the communication interface 904 may also include a transmitter (such as an RF transmitter, antenna, etc.) or a receiver coupled to the interface.
[0228] The processor 902 in the service node 90 is used to read computer instructions stored in the memory 901 to execute the aforementioned application building method, for example... Figure 3 The application construction method described in the illustrated embodiment.
[0229] For example, service node 90 can be Figure 3 In the illustrated embodiment, the processor 902 in the service node 90 is used to read computer instructions stored in the memory 901 and to perform the following operations:
[0230] The target application receives information about its target operating system and attribute information through the communication interface 904.
[0231] Based on the target operating system information and the attribute information of the target application, a build file is generated;
[0232] The build file is sent to the server via communication interface 904; the build file is used by the server to obtain data packets for use by user devices.
[0233] In this embodiment, the application building device 90 submits a build file, and the server builds the target application according to the information in the build file, obtaining a data packet. User devices can then use the target application by mounting the data packet. On one hand, multiple applications can be built at once using the build file, and a single server can build applications for multiple systems, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as bulk distribution of cloud desktops, meeting the needs of users to use the same application across multiple devices.
[0234] In one possible implementation, the processor 802 is further configured to:
[0235] The system receives input permission information via communication interface 904, the permission information being used to indicate a target user who has permission to use the target application;
[0236] A build file is generated based on the target operating system information, the target application's attribute information, and the permission information.
[0237] As can be seen, by using permission information, the target users who can access the application can be predefined or configured according to their needs, thereby determining the tiered applications that users can pull and download, which improves the flexibility of application building.
[0238] Please see Figure 10 , Figure 10 This is a schematic diagram of the structure of a user equipment 100 provided in an embodiment of this application. The user equipment 100 may include at least one memory 1001, at least one processor 1002, and a communication interface 1004. Optionally, it may also include a bus 1003, wherein the memory 1001, the processor 1002, and the communication interface 1004 are connected through the bus 1003.
[0239] The memory 1001 provides storage space, which can store data such as the operating system and computer instructions. The memory 1001 can be one or a combination of RAM, ROM, EPROM, or CD-ROM, etc.
[0240] The processor 1002 is a module that performs arithmetic and / or logical operations, and may be one or a combination of processing modules such as CPU, GPU, MPU, ASIC, FPGA, CPLD, etc.
[0241] The communication interface 1004 is used to receive and / or transmit data to external sources. It can be a wired link interface, such as an Ethernet cable, or a wireless link interface (Wi-Fi, Bluetooth, general wireless transmission, vehicle short-range communication technology, etc.). Optionally, the communication interface 1004 may also include a transmitter (such as a radio frequency transmitter, antenna, etc.) or a receiver coupled to the interface.
[0242] The processor 1002 in the user equipment 100 is used to read computer instructions stored in the memory 1001 to execute the aforementioned application building method, for example... Figure 3 The application construction method described in the illustrated embodiment.
[0243] For example, the user equipment 100 can provide Figure 3 In the service node of the illustrated embodiment, the processor 1002 in the user equipment 100 is used to read computer instructions stored in the memory 1001 and to perform the following operations:
[0244] Data packets are obtained from the database through communication interface 1004; wherein the data packets are obtained by the server based on a build file, the build file including information about the target operating system running the target application and the attribute information of the target application;
[0245] Mount the data packet and use the target application.
[0246] In this embodiment, the server obtains a build file, builds the target application according to the information in the build file, and obtains a data packet. The application building device 100 then mounts this data packet, allowing the target application to be used. On one hand, multiple applications can be built at once using the build file, and a single server can build applications for multiple systems, improving application building efficiency. On the other hand, the build file standardizes the application building process, eliminating the need for administrators to distribute applications by creating virtual machine templates. Furthermore, since the data packet is invoked at the application layer, it can be decoupled from the system layer, facilitating application management. In addition, multiple user devices can use the same version of the application by obtaining the same data packet, which can be applied in scenarios such as bulk distribution of cloud desktops, meeting the needs of users to use the same application across multiple devices.
[0247] In one possible implementation, the operating system of the user equipment is the target operating system or the user equipment contains a virtual machine that uses the target operating system.
[0248] In one possible implementation, the user of the user device has permission to use the target application.
[0249] This application also provides a computer-readable storage medium storing computer instructions that, when executed on one or more processors, implement... Figure 3 The illustrated embodiment describes the application construction method.
[0250] This application embodiment also provides a chip system including at least one processor, a memory, and an interface circuit. The interface circuit is used to provide information input / output to the at least one processor. The at least one memory stores computer instructions, which, when executed on one or more processors, implement... Figure 3 The illustrated embodiment describes the application construction method.
[0251] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented entirely or partially in the form of a computer instruction product. This computer instruction product includes one or more computer instructions. When these computer instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application can be implemented entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in or transmitted through a computer-readable storage medium. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. Available media can be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state disks (SSDs)).
[0252] The steps in the method embodiments of this application can be adjusted, combined, or deleted according to actual needs.
[0253] The modules in the device embodiments of this application can be merged, divided, and deleted according to actual needs.
Claims
1. An application construction method, characterized in that, Applied to a server with at least one operating system mounted, the method includes: The server obtains a build file, which includes information about the target operating system on which the target application runs and the attribute information of the target application. The server, under the mount point where the target operating system is located, constructs the target application based on the attribute information to obtain a data package for deploying the target application at the application layer; The server saves the data packet to the database for use by user devices.
2. The method according to claim 1, characterized in that, The server, located at the mount point of the target operating system, constructs the target application based on the attribute information to obtain the data packet, which includes: The server, under the mount point of the target operating system, constructs the target application based on the attribute information and permission information to obtain the data packet for the target user to call; The build file includes permission information, which is used to indicate the target user who has permission to use the target application.
3. The method according to claim 1, characterized in that, The data packet corresponds to first permission information, which is used to indicate a target user who has permission to use the target application.
4. The method according to any one of claims 1-3, characterized in that, The server, located at the mount point of the target operating system, constructs the target application based on the attribute information to obtain the data packet, which includes: The server maps the mount directory to the mount point where the target operating system is located. The server mounts a file system at the mount point where the target operating system is located. The server constructs the target application based on the file system and the attribute information to obtain the data packet.
5. The method according to any one of claims 1-3, characterized in that, The data packet is a data packet packaged based on the file system.
6. The method according to claim 4, characterized in that, The file system is the upper-level file system overlayfs.
7. The method according to any one of claims 1-3, characterized in that, The server obtains the build file, including: The server receives the build file sent by the service node.
8. The method according to any one of claims 1-3, characterized in that, The server obtains the build file, including: The server obtains the build files through a computer-readable storage medium.
9. The method according to any one of claims 1-3, characterized in that, The method further includes: The server saves the build file to the database used for building the database.
10. An application construction method, characterized in that, include: The user equipment obtains data packets from the database; wherein, the data packets are obtained by the server constructing the target application based on the attribute information of the target application under the mount point where the target operating system is located, and the information of the target operating system and the attribute information are included in the construction file; The user equipment mounts the data packet and uses the target application.
11. The method according to claim 10, characterized in that, The operating system of the user equipment is the target operating system or the user equipment contains a virtual machine that uses the target operating system.
12. The method according to claim 10 or 11, characterized in that, The user of the user device has permission to use the target application.
13. An application construction apparatus, characterized in that, include: A communication unit is used to acquire a build file, the build file including information about the target operating system running the target application and attribute information of the target application; The processing unit is configured to construct the target application based on the attribute information at the mount point where the target operating system is located, and obtain a data packet for deploying the target application at the application layer; The processing unit is also used to save the data packet to a database for use by user devices.
14. The apparatus according to claim 13, characterized in that, The processing unit is specifically used for: Under the mount point where the target operating system is located, the target application is constructed based on the attribute information and permission information to obtain a data package for the target user to call; The build file includes permission information, which is used to indicate the target user who has permission to use the target application.
15. The apparatus according to claim 13, characterized in that, The data packet corresponds to first permission information, which is used to indicate a target user who has permission to use the target application.
16. The apparatus according to any one of claims 13-15, characterized in that, The processing unit is specifically used for: Map the mount directory to the mount point where the target operating system is located; Mount the file system at the mount point where the target operating system is located; Based on the file system, the target application is constructed according to the attribute information to obtain the data packet.
17. The apparatus according to any one of claims 13-15, characterized in that, The data packet is a data packet packaged based on the file system.
18. The apparatus according to claim 17, characterized in that, The file system is the upper-level file system overlayfs.
19. The apparatus according to any one of claims 13-15, characterized in that, The communication unit is specifically used to receive the build file sent by the service node.
20. The apparatus according to any one of claims 13-15, characterized in that, The communication unit is specifically used to obtain the build file through a computer-readable storage medium.
21. The apparatus according to any one of claims 13-15, characterized in that, The processing unit is also used to save the build file to the database.
22. An application construction apparatus, characterized in that, include: A communication unit is used to obtain data packets from a database; wherein the data packets are obtained by the server constructing the target application based on the attribute information of the target application under the mount point where the target operating system is located, and the information of the target operating system and the attribute information are included in the construction file; A processing unit is used to mount the data packet and use the target application.
23. The apparatus according to claim 22, characterized in that, The operating system of the application building apparatus is the target operating system, or the application building apparatus contains a virtual machine that uses the target operating system.
24. The apparatus according to claim 22 or 23, characterized in that, Users of the application building device have permission to use the target application.
25. A server, characterized in that, The server includes a processor and a memory; the processor is configured to execute computer instructions stored in the memory, causing the server to implement the method as described in any one of claims 1-9.
26. A user equipment, characterized in that, The user equipment includes a processor and a memory; the processor is configured to execute computer instructions stored in the memory, causing the user equipment to implement the method as described in any one of claims 10-12.
27. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions for implementing the method of any one of claims 1-12.
Citation Information
Patent Citations
Method and device for starting Android system, electronic equipment and storage medium
CN110780930A