Program running method, device, equipment and storage medium

By deploying the OAM working path designed by the differential fault tolerance method in a small base station, automatically replacing corrupt files and processing alarm information, the problem of poor operation reliability of OAM programs is solved, and the reliability and user experience of the device are improved.

CN117493072BActive Publication Date: 2024-12-27CHINA TELECOM CORP LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202210878280.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-25
Publication Date
2024-12-27
Estimated Expiration
2042-07-25

AI Technical Summary

Technical Problem

The reliability of OAM programs when running in small base stations is poor, resulting in high maintenance costs and poor user experience when equipment failures, and the existing technology adopts single-path deployment, resulting in the device being unable to start normally when file corruption or disk partition failures.

Method used

Using differential fault tolerance method to design OAM application work paths, deploy two OAM working paths as master-slave working directories, and automatically replace them with backup files if the first path file is damaged, prevent path failure caused by single path storage and share them Memory reads file corruption information to generate alarm information and perform alarm processing.

Benefits of technology

Improves the reliability of OAM program operation, prevents application unavailability caused by single-path storage of files, reduces maintenance costs, and ensures normal operation of small base station equipment in case of fatal errors.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117493072B_ABST
    Figure CN117493072B_ABST
Patent Text Reader

Abstract

The present disclosure provides a program running method, device, equipment and storage medium, which relate to the field of computer technology. The method includes: a first detection program obtains first file damage information of an operation, maintenance and management OAM program, and the first file damage information includes a first path of the damaged first file; the first detection program obtains a second path of a backup file of the first file according to the first path; the first detection program copies the backup file of the first file to the first path according to the second path to replace the first file with the backup file of the first file, so that the OAM program can perform operations on the backup file of the first file when it is running. This method can prevent the unavailability of the OAM application caused by path failure when the program file is stored in a single path, thereby improving the reliability of the OAM program operation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to a program running method, device, electronic device, and readable storage medium. Background Art

[0002] At present, the fifth generation mobile communication technology (5th Generation Mobile Communication Technology, 5G) is developing rapidly, and the coverage of 5G networks is gradually expanding. With the expansion of 5G networks, mobile data traffic and applications have shown explosive growth. As a solution for mainstream scenarios, small base stations have become an indispensable part of 5G network construction. Compared with other solutions, small base stations have obvious advantages. In the construction of 5G networks, small base stations can not only enhance indoor deep coverage, accelerate 5G network deployment and reduce construction costs, but also provide continuous and consistent 5G experience and enable diversified industry applications. In small base stations, Operation Administration and Maintenance (OAM) is mainly responsible for processing various professional messages from the network side and the physical layer, data link layer and other professional messages inside the small base station, which is a very important part of ensuring the normal operation of small base station equipment.

[0003] The reliability of OAM programs is crucial to the reliability of small base station equipment. How to improve the reliability of OAM program operation has become an urgent problem to be solved.

[0004] The above information disclosed in this Background section is only for enhancement of understanding of the background of the present disclosure and therefore it may contain information that does not constitute the prior art that is already known to one of ordinary skill in the art. Summary of the invention

[0005] The purpose of the present disclosure is to provide a program running method, device, electronic device and readable storage medium, which can improve the reliability of OAM program running to at least a certain extent.

[0006] Other features and advantages of the present disclosure will become apparent from the following detailed description, or may be learned in part by the practice of the present disclosure.

[0007] According to one aspect of the present disclosure, a program running method is provided, including: a first detection program obtains first file damage information of an operation, maintenance and management (OAM) program, the first file damage information including a first path of the damaged first file; the first detection program obtains a second path of a backup file of the first file according to the first path; the first detection program copies the backup file of the first file to the first path according to the second path to replace the first file with the backup file of the first file, so that the OAM program performs operations on the backup file of the first file when running.

[0008] According to one embodiment of the present disclosure, the first path is directed to the first partition of the first disk, and the second path is directed to the second partition of the first disk; wherein the root directory of the first partition is the same as the root directory of the second partition, and the next-level directory of the root directory of the first partition is different from the next-level directory of the root directory of the second partition.

[0009] According to an embodiment of the present disclosure, the structure of the next level directory of the root directory of the first partition is the same as the structure of the next level directory of the root directory of the second partition.

[0010] According to one embodiment of the present disclosure, the next-level directory of the root directory of the first partition and the next-level directory of the root directory of the second partition store the same startup file of the OAM program in the same structure; the method also includes: if the second detection program detects that the first process of the OAM program exits abnormally, then the first process of the OAM program is restarted, and whether the first process of the OAM program exits abnormally is detected again; the second detection program determines that a first error has occurred in the OAM program based on the number of times the first process of the OAM program is detected to exit abnormally; if the startup directory of the first process of the OAM program is the next-level directory of the root directory of the first partition, then the second detection program uses the next-level directory of the root directory of the second partition as the startup directory to start the second process of the OAM program.

[0011] According to one embodiment of the present disclosure, the second detection program determines that a first error has occurred in the OAM program based on the number of times the first process of the OAM program is detected to have exited abnormally, including: if the second detection program detects that the first process of the OAM program has exited abnormally again, then it is determined that the first process of the OAM program has exited abnormally continuously; and the number of times the first process of the OAM program has exited abnormally continuously is counted, and if the number of times the first process of the OAM program has exited abnormally continuously exceeds a preset number threshold, then the second detection program determines that a first error has occurred in the OAM program.

[0012] According to one embodiment of the present disclosure, the file path of the second detection program is directed to the third partition of the first disk; wherein the root directory of the third partition is the same as the root directory of the first partition and the root directory of the second partition, and the next-level directory of the root directory of the first partition, the next-level directory of the root directory of the second partition, and the next-level directory of the root directory of the third partition are different.

[0013] According to an embodiment of the present disclosure, the method further includes: the first detection program reads the first shared memory at a first preset frequency; the first detection program obtains the first file damage information of the operation, maintenance and management (OAM) program, including: if the first detection program reads the first file damage information of the OAM program in the first shared memory, then obtains the first file damage information of the OAM program, wherein the first file damage information of the OAM program is information written to the first shared memory by the OAM program if the OAM program fails to perform a first operation on the first file; the method further includes: if the first detection program reads the first file damage information of the OAM program in the first shared memory, then generates first alarm information, the first alarm information includes a first alarm identifier, a first alarm state and a first alarm reason, wherein the first alarm state is a new alarm generation state, and the first alarm reason is obtained according to the first file damage information of the OAM program; if the first detection program detects that the OAM program successfully performs the first operation on the first file, then according to the first alarm identifier, the first alarm state in the first alarm information is modified to a second alarm state, wherein the second alarm state is an alarm elimination state.

[0014] According to another aspect of the present disclosure, a program running device is provided, including: a first obtaining module, used by a first detection program to obtain first file damage information of an operation, maintenance and management (OAM) program, the first file damage information including a first path of the damaged first file; a second obtaining module, used by the first detection program to obtain a second path of a backup file of the first file according to the first path; and a processing module, used by the first detection program to copy the backup file of the first file to the first path according to the second path to replace the first file with the backup file of the first file, so that the OAM program can perform operations on the backup file of the first file when running.

[0015] According to one embodiment of the present disclosure, the first path is directed to the first partition of the first disk, and the second path is directed to the second partition of the first disk; wherein the root directory of the first partition is the same as the root directory of the second partition, and the next-level directory of the root directory of the first partition is different from the next-level directory of the root directory of the second partition.

[0016] According to an embodiment of the present disclosure, the structure of the next level directory of the root directory of the first partition is the same as the structure of the next level directory of the root directory of the second partition.

[0017] According to one embodiment of the present disclosure, the next-level directory of the root directory of the first partition and the next-level directory of the root directory of the second partition store the same startup file of the OAM program in the same structure; the device also includes: a process module, which is used to restart the first process of the OAM program and detect again whether the first process of the OAM program exits abnormally if the second detection program detects that the first process of the OAM program exits abnormally; a determination module, which is used for the second detection program to determine that a first error has occurred in the OAM program based on the number of times the first process of the OAM program exits abnormally; the process module is also used for, if the startup directory of the first process of the OAM program is the next-level directory of the root directory of the first partition, the second detection program uses the next-level directory of the root directory of the second partition as the startup directory to start the second process of the OAM program.

[0018] According to one embodiment of the present disclosure, the determination module is also used to determine that the first process of the OAM program has exited abnormally continuously if the second detection program detects that the first process of the OAM program has exited abnormally again; and to count the number of times the first process of the OAM program has exited abnormally continuously, and if the number of times the first process of the OAM program has exited abnormally continuously exceeds a preset number threshold, the second detection program determines that a first error has occurred in the OAM program.

[0019] According to one embodiment of the present disclosure, the file path of the second detection program is directed to the third partition of the first disk; wherein the root directory of the third partition is the same as the root directory of the first partition and the root directory of the second partition, and the next-level directory of the root directory of the first partition, the next-level directory of the root directory of the second partition, and the next-level directory of the root directory of the third partition are different.

[0020] According to an embodiment of the present disclosure, the device further includes: a reading module, which is used for the first detection program to read the first shared memory at a first preset frequency; the first obtaining module is also used to obtain the first file damage information of the OAM program if the first detection program reads the first file damage information of the OAM program in the first shared memory, wherein the first file damage information of the OAM program is information written to the first shared memory by the OAM program if the OAM program fails to perform a first operation on the first file; the device further includes: an alarm module, which is used to generate first alarm information if the first detection program reads the first file damage information of the OAM program in the first shared memory, the first alarm information including a first alarm identifier, a first alarm state and a first alarm reason, wherein the first alarm state is a new alarm generation state, and the first alarm reason is obtained according to the first file damage information of the OAM program; if the first detection program detects that the OAM program successfully performs the first operation on the first file, the first alarm state in the first alarm information is modified to a second alarm state according to the first alarm identifier, wherein the second alarm state is an alarm elimination state.

[0021] According to another aspect of the present disclosure, an electronic device is provided, comprising: a memory, a processor, and executable instructions stored in the memory and executable in the processor, wherein the processor implements any of the above methods when executing the executable instructions.

[0022] According to another aspect of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, and when the executable instructions are executed by a processor, any of the above methods is implemented.

[0023] The program running method provided by the embodiment of the present disclosure obtains the first file damage information of the first path of the OAM program including the damaged first file through a first detection program, and obtains the second path of the backup file of the first file according to the first path, and then copies the backup file of the first file to the first path according to the second path, so as to replace the first file with the backup file of the first file, so that the OAM program can perform operations on the backup file of the first file when running, so that when the first file of the first path is damaged, the damaged first file can be automatically replaced with the undamaged backup file, which can prevent the OAM application from being unavailable due to path failure when the program file is stored in a single path, thereby improving the reliability of the OAM program operation.

[0024] It is to be understood that the foregoing general description and the following detailed description are exemplary only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] The above and other objects, features and advantages of the present disclosure will become more apparent by describing in detail example embodiments thereof with reference to the attached drawings.

[0026] Figure 1 A schematic diagram showing a system structure in an embodiment of the present disclosure.

[0027] Figure 2 is based on Figure 1 The figure shows an overall working block diagram of a small base station application software.

[0028] Figure 3 A flowchart of a program running method in an embodiment of the present disclosure is shown.

[0029] Figure 4 is based on Figure 3 A flowchart of another program running method is shown.

[0030] Figure 5 The figure is a schematic diagram of a disk partition according to an exemplary embodiment.

[0031] Figure 6 is based on Figure 4 A schematic diagram of a process flow for processing a non-fatal error in OAM is shown.

[0032] Figure 7 is based on Figure 3 A flowchart of another program running method is shown.

[0033] Figure 8 Shows Figure 6 FIG. 5 is a schematic diagram of the processing process of step S604 in one embodiment.

[0034] Fig. 9 is based on Figure 6 and Figure 7 A schematic diagram of a process flow of processing a fatal error in OAM is shown.

[0035] Fig.10 A block diagram of a program running device in an embodiment of the present disclosure is shown.

[0036] Fig.11 A block diagram showing another program running device in an embodiment of the present disclosure.

[0037] Fig.12 A schematic structural diagram of an electronic device in an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0038] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that the disclosure will be more comprehensive and complete and will fully convey the concepts of the example embodiments to those skilled in the art. The accompanying drawings are only schematic illustrations of the disclosure and are not necessarily drawn to scale. The same reference numerals in the figures represent the same or similar parts, and thus their repeated description will be omitted.

[0039] In addition, the described features, structures or characteristics may be combined in one or more embodiments in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present disclosure. However, those skilled in the art will appreciate that the technical solutions of the present disclosure may be practiced while omitting one or more of the specific details, or other methods, devices, steps, etc. may be adopted. In other cases, well-known structures, methods, devices, implementations or operations are not shown or described in detail to avoid obscuring various aspects of the present disclosure.

[0040] In addition, the terms "first", "second", etc. are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of the present disclosure, the meaning of "plurality" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined. The symbol " / " generally indicates that the objects associated with each other are in an "or" relationship.

[0041] In this disclosure, unless otherwise clearly specified and limited, terms such as "connection" should be understood in a broad sense, for example, it can be an electrical connection or can communicate with each other; it can be directly connected or indirectly connected through an intermediate medium. For ordinary technicians in this field, the specific meanings of the above terms in this disclosure can be understood according to specific circumstances.

[0042] As mentioned above, the reliability of the OAM program is crucial to the reliability of the small base station equipment. According to the investigation, in the related technology, the OAM program is usually deployed with a single working path, that is, there is only one OAM executable program and related attached files. During the operation of OAM, once the relevant files are damaged or the disk partition fails, the OAM operation will be abnormal. In severe cases, OAM will not be able to start normally, which will cause the small base station equipment to work abnormally. In this case, the maintenance personnel either need to remotely debug the equipment to solve the fault, or they must go to the site to solve the problem, which will increase a lot of maintenance costs. More importantly, the user experience of the product will be very poor. Therefore, this OAM deployment method makes OAM have the disadvantage of poor reliability during operation.

[0043] To this end, the present disclosure proposes a program running method to address the problem of poor reliability in the relevant OAM running process. When the first file of the OAM program in the first path is damaged, the damaged first file is automatically replaced with a backup file of the first file in the second path. This can prevent the OAM application from being unavailable due to path failure when the program file is stored in a single path, thereby improving the reliability of the OAM program running.

[0044] Figure 1 An exemplary system architecture 10 is shown to which the program execution method of the present disclosure may be applied.

[0045] like Figure 1 As shown, the system architecture 10 may include a core network 102, a gateway 104, a base station 106, a network management cloud 108, a terminal device 110, and a wireless router 112. The gateway 104 provides protocol conversion between the core network 102 and the base station 106, and the network management cloud 108 may be used to perform OAM on the base station 106 through a cloud computing intelligent network management platform. The base station 106 may be, for example, a small base station, which is an interface device for the terminal device 110 and the wireless router 112 to access the core network 102. Once the small base station device fails to work properly, the mobile terminal will be unable to access the Internet, which will have a significant negative impact on the production and life of modern people. Therefore, improving the reliability of the operation of the small base station device is still a very worthy research work.

[0046] It should be understood that Figure 1 The number of terminal devices and wireless routers in the embodiment is only for illustration. Any number of terminal devices and wireless routers may be provided according to the implementation requirements.

[0047] Figure 2 is based on Figure 1 The small base station application software is shown in the figure. The small base station application software can be run on the network management cloud 108, for example. Figure 2 As shown, the small base station application software can be divided into two parts: OAM 1062 and protocol stack 1064. OAM 1062 can be responsible for operating, managing, and maintaining the protocol stack 1064, while also being responsible for docking with the small base station equipment management unit (i.e., the network management system). Therefore, the reliability of the OAM 1062 during operation directly affects the reliability of the small base station equipment.

[0048] Figure 3 FIG. 1 is a flowchart of a program running method according to an exemplary embodiment. Figure 3 The method shown can be applied, for example, to Figure 1 and Figure 2 The base station 106 shown may be operated by Figure 1The first detection program of the network management cloud 108 shown in is executed, and the first detection program can work inside the OAM.

[0049] refer to Figure 3 , the method 30 provided in the embodiment of the present disclosure may include the following steps.

[0050] In step S302, first file damage information of the OAM program is obtained, where the first file damage information includes a first path of the damaged first file.

[0051] In some embodiments, the first file damage information may be information about non-fatal file damage errors (hereinafter referred to as "non-fatal errors"), such as database file damage, device information file damage, etc.

[0052] In some embodiments, the first file damage information may include the name of the damaged first file, the first path of storage, etc. For example, the first file damage information is oam / om1 / 1.txt, where the name of the damaged file is "1.txt" and the first path is "oam / om1 / 1.txt".

[0053] In some embodiments, the first file damage information of the OAM program can be read from the first shared memory. For specific implementations, refer to Figure 4 .

[0054] In step S304, a second path of a backup file of the first file is obtained according to the first path.

[0055] In some embodiments, the first path is directed to the first partition of the first disk, and the second path is directed to the second partition of the first disk; wherein the root directory of the first partition is the same as the root directory of the second partition, and the next-level directory of the root directory of the first partition is different from the next-level directory of the root directory of the second partition. Taking the first path of the first file "1.txt" as "oam / om1 / 1.txt" as an example, the directory "oam / om1" is located in the first partition of the first disk, and the name of the backup file of the first file can also be "1.txt", and om1 can be, for example, the main working directory (that is, under normal circumstances, the small base station device only runs the OAM program file under om1); the second path of the backup file of the first file can be "oam / om2 / 1.txt", and the directory "oam / om2" is located in the second partition of the first disk, and om2 can be, for example, a slave working directory; the names of the root directories of the first partition and the second partition are both "oam", which is the root directory of OAM.

[0056] In some embodiments, the structure of the next level directory of the root directory of the first partition is the same as the structure of the next level directory of the root directory of the second partition. For example, the directory structures under om1 and om2 are the same to facilitate management.

[0057] In some embodiments, a second detection program for detecting fatal errors may also be deployed in the network management cloud. For specific implementations, see Figures 7 to 9 The file path of the second detection program and the OAM working directory can be located in different partitions of the disk, such as Figure 5 As shown, Figure 5 The figure is a schematic diagram of a disk partition according to an exemplary embodiment. Figure 5 Three disk partitions are shown as an example: OAM process status monitoring program partition 5022 (corresponding to the third partition of the embodiment of the present disclosure), main OAM program working directory disk partition 5024 (corresponding to the first partition of the embodiment of the present disclosure) and slave OAM program working directory disk partition 5026 (corresponding to the second partition of the embodiment of the present disclosure). The root directories of the three partitions are the same, namely OAM root directory 502, for easy management. The size of each partition can meet the requirements of normal operation of each program, and the specific value can be allocated according to the actual situation of the project. For example, the name of OAM root directory 502 is oam, the path of OAM process status monitoring program partition 5022 is oam / mon / ..., the main OAM program working directory path (i.e., the first path) is oam / om1 / ..., the slave OAM program working directory path (i.e., the second path) is oam / om2 / ..., and the directory structure under om1 and om2 is consistent for easy management.

[0058] In step S306, the backup file of the first file is copied to the first path according to the second path to replace the first file with the backup file of the first file, so that the OAM program performs operations on the backup file of the first file when running.

[0059] In some embodiments, after the first detection program obtains the first file damage information of the OAM program, for example, by discovering that there is non-fatal error information in the non-fatal error information shared memory, the second path can be obtained according to the first path in the first file damage information, and then the backup file of the first file under the second path is copied to the first path to replace the damaged first file with its backup file, so that the OAM program can perform operations on the backup file of the first file when running. For specific implementations, please refer to Figure 4 Step S410.

[0060] According to the program running method provided by the embodiment of the present disclosure, by drawing on the working principle of the hardware differential circuit, the differential fault tolerance method is used to design the working path of the OAM application program, and two OAM working paths are deployed as the main working directory and the slave working directory. The two working directories have the same structure but belong to different disk partitions, so that if the first file of the first path is detected to be damaged, the second path of the backup file of the first file can be obtained according to the first path, and then the backup file of the first file can be copied to the first path according to the second path to replace the first file with the backup file of the first file, so that the backup file of the first file can be operated when the OAM program is running. The disk partition and path planning method under the OAM root directory is adopted to facilitate the OAM path management, prevent the failure of a single disk partition from affecting the OAM applications of other partitions, and greatly improve the reliability of the operation of the base station equipment.

[0061] Figure 4 is based on Figure 3 A flowchart of another program running method is shown. Figure 4 and Figure 3 The difference is that, Figure 4 The method shown shows the processing process of step S302 in one embodiment, and describes the processing process of the alarm information. Figure 4 It can also be executed by the first detection program.

[0062] refer to Figure 4 , the method 40 provided in the embodiment of the present disclosure may include the following steps.

[0063] In step S402, the first shared memory is read at a first preset frequency.

[0064] In some embodiments, after the OAM program is started, a shared memory, such as a first shared memory, may be allocated to store non-fatal error information, i.e., first file damage information. The first shared memory may also be referred to as non-fatal error information shared memory. When the OAM calls a file read / write tool to perform operations such as opening, reading, and writing on a file, if it is found that the file cannot be opened and read / written normally, the file is considered to be damaged, and the first file damage information is written to the non-fatal error information shared memory.

[0065] In step S403, it is determined whether first file damage information of the OAM program is read in the first shared memory.

[0066] In some embodiments, the first detection program may be a timed execution thread, which may read the non-fatal error information shared memory at a first preset frequency to determine whether there is first file damage information therein, wherein the first preset frequency may be 1 minute, 2 minutes, 3 minutes, 1 second, etc.

[0067] In some embodiments, if the first file damage information of the OAM program is not read in the first shared memory, the process may return to step S402.

[0068] In step S404, if the first file damage information of the OAM program is read in the first shared memory, the first file damage information of the OAM program is obtained, wherein the first file damage information of the OAM program is information written to the first shared memory by the OAM program if the OAM program fails to perform the first operation on the first file.

[0069] In step S406, if the first file damage information of the OAM program is read in the first shared memory, the first alarm information is generated, and the first alarm information includes a first alarm identifier, a first alarm state and a first alarm cause, wherein the first alarm state is a new alarm generation state, and the first alarm cause is obtained according to the first file damage information of the OAM program.

[0070] In some embodiments, when an alarm of abnormal OAM operation occurs, that is, after the first alarm information is generated, the generated first alarm information is saved to the local database and uploaded to the network management. The alarm is cleared after the error is eliminated. The alarm can be cleared by referring to step S412.

[0071] In some embodiments, the format of the first alarm information can be designed as "alarm ID (eg, first alarm identifier) ​​+ alarm status (eg, first alarm status) + alarm reason (eg, first alarm reason) + reporter + timeout period". Among them, the alarm ID (Identification) range can be set by yourself, such as 60001~99999. For example, the alarm ID of 70000 indicates a non-fatal error alarm, and the alarm ID of 80000 indicates a fatal error alarm. The alarm status can include New, Cleared and Change. New means that a new alarm is generated (i.e., a new alarm generation state), Cleared means clearing the alarm (i.e., an alarm elimination state), and Change means changing the alarm content. The alarm cause can be used to describe the cause of the alarm, such as database operation failure (Database operate fail); the reporter indicates the module that generates the alarm, such as the data management module (DataMgmt); the timeout time indicates whether the server (such as the network management) needs to respond after the alarm is reported. For example, the default threshold can be set to 3 seconds, 4 seconds, or 5 seconds. If the timeout time exceeds the default threshold, it means that the alarm does not require a response.

[0072] In step S408, a second path of a backup file of the first file is obtained according to the first path.

[0073] In step S410, the backup file of the first file is copied to the first path according to the second path to replace the first file with the backup file of the first file, so that the OAM program performs an operation on the backup file of the first file when running.

[0074] In step S411, it is determined whether it is detected that the OAM program successfully performs the first operation on the first file. If it is not detected that the OAM program successfully performs the first operation on the first file, the process returns to step S402.

[0075] In some embodiments, the first detection program will periodically read the non-fatal error information shared memory. When it is found that there is non-fatal error information in the non-fatal error information shared memory, the damaged file path (i.e., the first path of the first file) is read from the non-fatal error information shared memory, and then the corresponding undamaged file under the directory (i.e., from the OAM program working directory) is copied to the original path of the damaged file (the main OAM program working directory path, i.e., the first path), thereby replacing the damaged file. For example, if the path of the damaged file is oam / om1 / 1.txt, and the path of the corresponding 1.txt file under the directory is oam / om2 / 1.txt, then oam / om2 / 1.txt is copied to oam / om1 / 1.txt. Then the first detection program can determine whether the file is restored to normal by judging whether it can be opened and / or read and written normally.

[0076] In step S412, if it is detected that the OAM program successfully performs the first operation on the first file, the first alarm state in the first alarm information is modified to a second alarm state according to the first alarm identifier, wherein the second alarm state is an alarm elimination state.

[0077] The program running method provided by the embodiment of the present disclosure monitors whether there are non-fatal errors regularly through the first detection program working inside the OAM. If there are, an alarm message can be generated, and the corresponding damaged file in the slave directory is copied to the master directory to complete the differential processing of the master and slave directories; then detect whether the file has restored normal reading and writing. If normal, the alarm message is cleared, otherwise the alarm message is not cleared, and then continue to monitor regularly whether there are non-fatal errors. In the related technology, OAM of small base stations generally adopts a single path deployment. Once OAM is abnormal, if the maintenance personnel do not maintain it in time, the small base station will not be able to work normally. The method provided by the embodiment of the present disclosure draws on the hardware differential circuit design principle, and adopts master and slave paths to deploy OAM. The differential function output of master and slave OAM ensures that the small base station can work normally and uninterruptedly during the maintenance period when the master OAM is abnormal, which greatly improves the fault tolerance rate during the OAM operation process and significantly enhances the reliability of the small base station equipment.

[0078] The alarm mechanism provided by the embodiment of the present disclosure can realize the unification of the alarm information format, so that it can be presented to maintenance personnel in a simple and efficient manner.

[0079] Figure 6 is based on Figure 4 FIG. 1 is a schematic diagram showing a process flow of processing a non-fatal error in OAM. Figure 6 As shown, first start the first detection program (S602), and then initialize (S604), for example, initialize the first detection program for the first preset frequency of the timed detection, etc.; the first detection program regularly monitors whether there is a non-fatal error in OAM according to the first preset frequency (S606), and if so, first generates an alarm message (S608), and then copies the corresponding damaged file in the slave directory to the main directory (S610), and finally detects whether the file has restored normal reading and writing (S612), if normal, clears the alarm message (S614), otherwise, does not clear the alarm message, and then returns to the regular monitoring to see if there is a non-fatal error.

[0080] Figure 7 is based on Figure 3 A flowchart of another program running method is shown. Figure 7 and Figure 3 The difference is that, Figure 7 The method shown shows a process of handling fatal errors in OAM in one embodiment, which can be performed by the second detection program.

[0081] Fatal errors of OAM may include fatal file corruption errors, such as executable file corruption, disk partition corruption, etc., which will cause OAM to fail to start normally. In the case of fatal errors, OAM cannot start. The fatal error monitoring program, i.e., the second detection program, can be designed as a process independent of OAM. The design language of the process can be the same as or different from the design language of OAM and can meet the following requirements:

[0082] (1) The second detection program and related auxiliary files are not in the same partition as the primary and secondary partitions of the OAM, which can prevent the OAM partition abnormality from affecting the function of the program. For example, the file path of the second detection program is directed to the third partition of the first disk, wherein the root directory of the third partition is the same as the root directory of the first partition and the root directory of the second partition, and the next level directory of the root directory of the first partition, the next level directory of the root directory of the second partition, and the next level directory of the root directory of the third partition are different;

[0083] (2) The second detection program can monitor in real time whether the OAM process exits abnormally, and has the ability to restart it after detecting that the OAM process exits abnormally.

[0084] refer to Figure 7, the method 70 provided in the embodiment of the present disclosure may include the following steps.

[0085] In step S701, it is determined whether it is detected that the first process of the OAM program exits abnormally.

[0086] In step S702, if it is detected that the first process of the OAM program exits abnormally, the first process of the OAM program is restarted, and it is detected again whether the first process of the OAM program exits abnormally.

[0087] In some embodiments, the second detection program can determine whether the OAM process exits abnormally through a heartbeat detection method with the OAM process. For example, the OAM process can be set to send a message to the second detection program every preset time (for example, 1 second, or 3 seconds, or 5 seconds, etc.), such as the OAM process sends a number 1 to the fatal error detection program every 3 seconds through TCP (Transmission Control Protocol) or UDP (User Datagram Protocol) communication method. If the fatal error detection program does not receive the heartbeat signal (i.e., number 1) of the OAM process for three consecutive times (for example, 9 seconds), it is considered that the OAM process has stopped executing, and the second detection program will restart the OAM process. The so-called restart means re-executing the OAM process. For example, in the Linux environment, the OAM process name is oam, then you only need to execute the . / oam command to start the OAM process.

[0088] In step S704, it is determined that a first error occurs in the OAM program according to the number of times the first process of the OAM program is detected to exit abnormally.

[0089] In some embodiments, the specific implementation of detecting the number of abnormal exits of the first process of the OAM program can refer to Figure 8 .

[0090] In step S705, it is determined whether the startup directory of the first process of the OAM program is a directory at a lower level than the root directory of the first partition.

[0091] In step S706, if the startup directory of the first process of the OAM program is a directory one level below the root directory of the first partition, the directory one level below the root directory of the second partition is used as the startup directory to start the second process of the OAM program.

[0092] In step S708, if the startup directory of the first process of the OAM program is a directory one level below the root directory of the second partition, the second process of the OAM program is started with the directory one level below the root directory of the first partition as the startup directory.

[0093] In some embodiments, the next level directory of the root directory of the first partition and the next level directory of the root directory of the second partition store the same OAM program startup file in the same structure. For example, when it is determined that the main OAM cannot be started due to a fatal error, the monitoring program can switch the OAM main working directory to the slave working directory, such as completely switching the OAM working directory from om1 to om2; when it is determined that the slave OAM cannot be started due to a fatal error, the monitoring program can switch the OAM slave working directory to the main working directory, such as completely switching the OAM working directory from om2 to om1.

[0094] The program running method provided by the embodiment of the present disclosure can completely switch the OAM working directory to the backup working directory when a fatal error occurs in OAM and OAM cannot be started normally, thereby ensuring the normal operation of OAM with a high probability.

[0095] Figure 8 Shows Figure 6 The processing process of step S604 in one embodiment is shown in FIG. Figure 8 As shown, in the embodiment of the present disclosure, the above step S604 may further include the following steps.

[0096] Step S802: If it is detected again that the first process of the OAM program exits abnormally, it is determined that the first process of the OAM program exits abnormally continuously.

[0097] Step S804 , counting the number of consecutive abnormal exits of the first process of the OAM program. If the number of consecutive abnormal exits of the first process of the OAM program exceeds a preset threshold, the second detection program determines that a first error occurs in the OAM program.

[0098] In some embodiments, the number of consecutive abnormal exits of OAM can be counted. If it exceeds a preset threshold value N (the value of N can be determined according to the actual situation of the project), it can be determined that the main OAM cannot be started due to some fatal error (ie, the first error).

[0099] Fig. 9 is based on Figure 6 and Figure 7 FIG. 1 is a schematic diagram showing a process flow of processing a fatal error in OAM. Fig. 9As shown, first start the second detection program (S902), and then start the main OAM process (S904), for example, start the first process of the OAM program under the first partition; the second detection program periodically monitors whether the main OAM process runs normally according to the second preset frequency (S906), for example, whether it exits abnormally. If it does not exit abnormally, the number of OAM startup failures is reset to zero (S908) and returns to the scheduled monitoring; if it exits abnormally, the number of OAM startup failures is increased by 1 (S910), and the number of consecutive abnormal exits of OAM is counted (S912). If it exceeds N times, it can be determined that the main OAM cannot be started due to some fatal error, then the directory of the current OAM process is determined (S914). If the directory of the current OAM process is the main working directory, switch to the slave working directory (S916), otherwise end the process.

[0100] An alarm can also be issued when the process ends. For example, a second alarm message can be generated in the format of the first alarm message in step S406, and the maintenance personnel can promptly find the second alarm message in the local network management or network management cloud. An alarm can also be issued in step S916. Through the design and implementation of the error detection program workflow, OAM can quickly resume normal operation and correctly switch from the main OAM to OAM; the accuracy of the alarm information can be guaranteed, and the maintenance personnel can perform repairs in time before the program in the slave OAM directory has problems, so as to achieve uninterrupted and normal operation of OAM, greatly improving the fault tolerance rate during the OAM operation process and reducing the possibility of abnormal operation of small base station equipment due to OAM failures.

[0101] The embodiment of the present disclosure proposes a fault-tolerant operation design method that can be used for a small base station OAM program, which can be deployed and implemented in relevant small base stations. The specific implementation content may include:

[0102] (1) Define the OAM root directory and partition the disk into the monitor partition (mon), the master OAM partition (om1), and the slave OAM partition (om2), and set the size of each partition according to the discussion results of the project team;

[0103] (2) Develop and deploy the OAM status monitoring program to the disk partition mon;

[0104] (3) Design and package the OAM and its attached files according to the requirements of the directory structure, and then decompress them into the disk partitions om1 and om2 respectively, ensuring that the directory structures of om1 and om2 are the same;

[0105] (4) Deployment of protocol stack program and its attachments;

[0106] (5) After completing steps (1), (2), (3), and (4), start the OAM monitoring program under the disk partition mon;

[0107] (6) Observe whether OAM is started normally. Check the alarm content in real time through the network management cloud or local network management system. Pay attention to whether OAM can quickly recover from the abnormality when the above non-fatal errors and fatal errors occur.

[0108] The results show that after deploying OAM using the above differential fault tolerance method, when a non-fatal error occurs, OAM is likely to recover to normal on its own without human intervention; when a fatal error occurs, maintenance personnel can promptly discover alarm information in the local network management or network management cloud, and perform repairs in time before OAM has problems, thus achieving uninterrupted and normal operation of OAM, greatly improving the fault tolerance rate during OAM operation, and reducing the possibility of abnormal operation of small base station equipment due to OAM failures.

[0109] Fig.10 FIG. 1 is a block diagram of a program running device according to an exemplary embodiment. Fig.10 The device shown can be used, for example, Figure 1 and Figure 2 The base station 106 shown may be composed of Figure 1 The network management cloud 108 shown in is executed.

[0110] refer to Fig.10 The device 100 provided by the embodiment of the present disclosure may include a first obtaining module 1002 , a second obtaining module 1004 and a processing module 1006 .

[0111] The first obtaining module 1002 can be used for the first detection program to obtain first file damage information of the operation, maintenance and management (OAM) program, where the first file damage information includes a first path of the damaged first file.

[0112] The second obtaining module 1004 can be used for the first detection program to obtain the second path of the backup file of the first file according to the first path.

[0113] The processing module 1006 can be used for the first detection program to copy the backup file of the first file to the first path according to the second path to replace the first file with the backup file of the first file, so that the OAM program can perform operations on the backup file of the first file when running.

[0114] Fig.11 FIG. 1 is a block diagram of another program running device according to an exemplary embodiment. Fig.11 The device shown can be used, for example, Figure 1 and Figure 2 The base station 106 shown may be composed of Figure 1 The network management cloud 108 shown in is executed.

[0115] refer to Fig.11The device 110 provided in the embodiment of the present disclosure may include a first obtaining module 1102, a second obtaining module 1104, a processing module 1106, a process module 1108, a determination module 1110, a reading module 1112 and an alarm module 1114.

[0116] The first obtaining module 1102 can be used for the first detection program to obtain first file damage information of the operation, maintenance and management (OAM) program, where the first file damage information includes a first path of the damaged first file.

[0117] The first path is directed to the first partition of the first disk, and the second path is directed to the second partition of the first disk; wherein the root directory of the first partition is the same as the root directory of the second partition, and the next level directory of the root directory of the first partition is different from the next level directory of the root directory of the second partition.

[0118] The structure of the next level directory of the root directory of the first partition is the same as the structure of the next level directory of the root directory of the second partition.

[0119] The next level directory of the root directory of the first partition and the next level directory of the root directory of the second partition store the same OAM program startup file in the same structure.

[0120] The first acquisition module 1102 can also be used to obtain the first file damage information of the OAM program if the first detection program reads the first file damage information of the OAM program in the first shared memory, wherein the first file damage information of the OAM program is the information written by the OAM program to the first shared memory if the OAM program fails to perform the first operation on the first file.

[0121] The second obtaining module 1104 can be used for the first detection program to obtain the second path of the backup file of the first file according to the first path.

[0122] The processing module 1106 can be used for the first detection program to copy the backup file of the first file to the first path according to the second path to replace the first file with the backup file of the first file, so that the OAM program can perform operations on the backup file of the first file when running.

[0123] The process module 1108 may be used to restart the first process of the OAM program and detect again whether the first process of the OAM program exits abnormally if the second detection program detects that the first process of the OAM program exits abnormally.

[0124] The file path of the second detection program is directed to the third partition of the first disk; wherein the root directory of the third partition is the same as the root directory of the first partition and the root directory of the second partition, and the next-level directory of the root directory of the first partition, the next-level directory of the root directory of the second partition, and the next-level directory of the root directory of the third partition are different.

[0125] The determination module 1110 may be used for the second detection program to determine that a first error occurs in the OAM program according to the number of times the first process of the OAM program is detected to exit abnormally.

[0126] The process module 1108 can also be used to start the second process of the OAM program by using the next-level directory of the root directory of the second partition as the startup directory if the startup directory of the first process of the OAM program is the next-level directory of the root directory of the first partition.

[0127] The determination module 1110 can also be used to determine that the first process of the OAM program has exited abnormally continuously if the second detection program detects that the first process of the OAM program has exited abnormally again; count the number of times the first process of the OAM program has exited abnormally continuously, and if the number of times the first process of the OAM program has exited abnormally continuously exceeds a preset threshold, the second detection program determines that a first error has occurred in the OAM program.

[0128] The reading module 1112 may be used in a first detection program to read the first shared memory at a first preset frequency.

[0129] The alarm module 1114 can be used to generate first alarm information if the first detection program reads the first file damage information of the OAM program in the first shared memory, and the first alarm information includes a first alarm identifier, a first alarm state and a first alarm reason, wherein the first alarm state is a new alarm generation state, and the first alarm reason is obtained according to the first file damage information of the OAM program; if the first detection program detects that the OAM program successfully performs a first operation on the first file, then the first alarm state in the first alarm information is modified to a second alarm state according to the first alarm identifier, wherein the second alarm state is an alarm elimination state.

[0130] The specific implementation of each module in the device provided by the embodiment of the present disclosure can refer to the content of the above method, which will not be repeated here.

[0131] Fig.12 The following is a schematic diagram showing the structure of an electronic device in an embodiment of the present disclosure. It should be noted that: Fig.12 The device shown is only an example of a computer system, which should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0132] like Fig.12As shown, the device 1200 includes a central processing unit (CPU) 1201, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1202 or a program loaded from a storage part 1208 into a random access memory (RAM) 1203. In the RAM 1203, various programs and data required for the operation of the device 1200 are also stored. The CPU 1201, the ROM 1202, and the RAM 1203 are connected to each other via a bus 1204. An input / output (I / O) interface 1205 is also connected to the bus 1204.

[0133] The following components are connected to the I / O interface 1205: an input section 1206 including a keyboard, a mouse, etc.; an output section 1207 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 1208 including a hard disk, etc.; and a communication section 1209 including a network interface card such as a LAN card, a modem, etc. The communication section 1209 performs communication processing via a network such as the Internet. A drive 1210 is also connected to the I / O interface 1205 as needed. A removable medium 1211, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1210 as needed, so that a computer program read therefrom is installed into the storage section 1208 as needed.

[0134] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication part 1209, and / or installed from a removable medium 1211. When the computer program is executed by a central processing unit (CPU) 1201, the above-mentioned functions defined in the system of the present disclosure are executed.

[0135] It should be noted that the computer-readable medium shown in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the above.

[0136] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0137] The modules involved in the embodiments described in the present disclosure may be implemented by software or hardware. The modules described may also be set in a processor, for example, it may be described as: a processor includes a first acquisition module, a second acquisition module and a processing module. The names of these modules do not constitute a limitation on the modules themselves in some cases, for example, the first acquisition module may also be described as a "module for obtaining OAM file damage information".

[0138] As another aspect, the present disclosure further provides a computer-readable medium, which may be included in the device described in the above embodiment; or may exist independently without being assembled into the device. The above computer-readable medium carries one or more programs, and when the above one or more programs are executed by a device, the device includes:

[0139] The first detection program obtains first file damage information of the operation, maintenance and management (OAM) program, and the first file damage information includes a first path of the damaged first file; the first detection program obtains a second path of a backup file of the first file according to the first path; the first detection program copies the backup file of the first file to the first path according to the second path to replace the first file with the backup file of the first file, so that the OAM program can perform operations on the backup file of the first file when running.

[0140] The exemplary embodiments of the present disclosure are specifically shown and described above. It should be understood that the present disclosure is not limited to the detailed structures, configurations or implementations described herein; on the contrary, the present disclosure is intended to cover various modifications and equivalent configurations included in the spirit and scope of the appended claims.

Claims

1. A program running method, characterized in that: include: The first detection program obtains first file damage information of the operation, maintenance and management (OAM) program, wherein the first file damage information includes a first path of the damaged first file; The first detection program obtains a second path of a backup file of the first file according to the first path; The first detection program copies the backup file of the first file to the first path according to the second path to replace the first file with the backup file of the first file, so that the OAM program performs an operation on the backup file of the first file when running; The first detection program reads the first shared memory at a first preset frequency; The first detection program obtains the first file damage information of the operation, maintenance and management (OAM) program, including: If the first detection program reads the first file damage information of the OAM program in the first shared memory, the first file damage information of the OAM program is obtained, wherein the first file damage information of the OAM program is the information written by the OAM program to the first shared memory if the OAM program fails to call the file reading and writing tool to perform opening and / or reading and writing operations on the first file.

2. The method according to claim 1, characterized in that The first path is directed to a first partition of a first disk, and the second path is directed to a second partition of the first disk; The root directory of the first partition is the same as the root directory of the second partition, and the next-level directory of the root directory of the first partition is different from the next-level directory of the root directory of the second partition.

3. The method according to claim 2, characterized in that The structure of the next level directory of the root directory of the first partition is the same as the structure of the next level directory of the root directory of the second partition.

4. The method according to claim 3, characterized in that The next level directory of the root directory of the first partition and the next level directory of the root directory of the second partition store the same startup file of the OAM program in the same structure; The method further comprises: If the second detection program detects that the first process of the OAM program exits abnormally, restarting the first process of the OAM program and detecting again whether the first process of the OAM program exits abnormally; The second detection program determines that a first error occurs in the OAM program according to the number of times the first process of the OAM program is detected to exit abnormally; If the startup directory of the first process of the OAM program is a directory one level below the root directory of the first partition, the second detection program uses the directory one level below the root directory of the second partition as the startup directory to start the second process of the OAM program.

5. The method according to claim 4, characterized in that The second detection program determines that a first error occurs in the OAM program according to the number of times the first process of the OAM program is detected to exit abnormally, including: If the second detection program detects again that the first process of the OAM program exits abnormally, determining that the first process of the OAM program exits abnormally continuously; The number of times the first process of the OAM program exits abnormally continuously is counted. If the number of times the first process of the OAM program exits abnormally continuously exceeds a preset number threshold, the second detection program determines that a first error occurs in the OAM program.

6. The method according to claim 4, characterized in that The file path of the second detection program is directed to the third partition of the first disk; The root directory of the third partition is the same as the root directory of the first partition and the root directory of the second partition, and the next-level directory of the root directory of the first partition, the next-level directory of the root directory of the second partition, and the next-level directory of the root directory of the third partition are different.

7. The method according to claim 1, characterized in that Also includes: If the first detection program reads the first file damage information of the OAM program in the first shared memory, a first alarm information is generated, wherein the first alarm information includes a first alarm identifier, a first alarm state and a first alarm reason, wherein the first alarm state is a new alarm generation state, and the first alarm reason is obtained according to the first file damage information of the OAM program; If the first detection program detects that the OAM program has successfully performed the first operation on the first file, the first alarm state in the first alarm information is modified to a second alarm state according to the first alarm identifier, wherein the second alarm state is an alarm elimination state.

8. A program running device, characterized in that: include: A reading module, used for a first detection program to read a first shared memory at a first preset frequency; A first obtaining module, used for a first detection program to obtain first file damage information of an operation, maintenance and management (OAM) program, wherein the first file damage information includes a first path of a damaged first file; The first obtaining module is further configured to obtain the first file damage information of the OAM program if the first detection program reads the first file damage information of the OAM program in the first shared memory, wherein the first file damage information of the OAM program is information written to the first shared memory by the OAM program if the OAM program fails to call the file reading and writing tool to perform an opening and / or reading and writing operation on the first file; A second obtaining module, used by the first detection program to obtain a second path of a backup file of the first file according to the first path; A processing module is used for the first detection program to copy the backup file of the first file to the first path according to the second path to replace the first file with the backup file of the first file, so that the OAM program can perform operations on the backup file of the first file when running.

9. An electronic device, comprising: A memory, a processor, and executable instructions stored in the memory and executable in the processor, wherein the processor implements the method according to any one of claims 1 to 7 when executing the executable instructions.

10. A computer-readable storage medium having computer-executable instructions stored thereon, characterized in that: When the executable instructions are executed by a processor, the method according to any one of claims 1 to 7 is implemented.