Information processing device, time-out monitoring method, and program

The information processing device dynamically adjusts timeout periods based on hardware resource usage and past timeout data to prevent unexpected interruptions, improving operational stability and application health.

JP2025078403AActive Publication Date: 2025-05-20NEC PERSONAL COMPUTERS LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2023190948
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-11-08
Publication Date
2025-05-20
Estimated Expiration
2043-11-08

AI Technical Summary

Technical Problem

Conventional timeout periods are set as fixed values, leading to unexpected interruptions in processes that could finish within a shorter time, causing operational instability due to incorrect termination.

Method used

An information processing device that monitors hardware resource usage to dynamically set timeout times based on resource usage status and adjusts these times using correction values derived from past timeout occurrences, thereby improving operational soundness.

Benefits of technology

The solution effectively avoids unnecessary timeouts by adapting timeout periods to current system conditions, enhancing application stability and operational health.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025078403000001_ABST
    Figure 2025078403000001_ABST
Patent Text Reader

Abstract

To improve soundness in operation of an application.SOLUTION: An information processing device 10 includes: a resource monitoring part 21 for monitoring a use state about each of a plurality of hardware resources; a time setting part 22 for setting a time-out time according to the use state of a hardware resource of execution object processing being executed on the basis of time-out time information obtained by associating the use state of the hardware resource with the time-out time in each processing type; and a time-out monitoring part 24 for performing time-out monitoring on the basis of the set time-out time.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to an information processing device, a timeout monitoring method, and a program. [Background technology]

[0002] In information processing devices such as desktop PCs and notebook PCs, a timeout period is set when various processes such as file access and data transfer are executed, and if the process does not end after the timeout period has elapsed, a timeout process is performed to forcibly terminate the process being executed (see, for example, Patent Document 1). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent No. 3268978 Summary of the Invention [Problem to be solved by the invention]

[0004] Conventionally, the timeout period is set as a fixed value. For example, in an application, the timeout period is set as a fixed value for each session, and if the time from the start to the end of the session exceeds the timeout period, the application performs control to forcibly terminate the process. However, because the execution time of a process varies depending on the operating environment and hardware configuration, if the timeout time is set as a fixed value, even processes that would normally finish if they waited a short time after the fixed value would be treated as timeouts, which could cause unexpected interruptions to the operation. Such unexpected interruptions to the operation could lead to a deterioration in the soundness of the application.

[0005] The present invention has been made in consideration of the above circumstances, and has an object to provide an information processing device, a timeout monitoring method, and a program that can improve the operational soundness of an application. [Means for solving the problem]

[0006] One aspect of the present invention is an information processing device comprising: a resource monitoring means for monitoring the usage status of each of a plurality of hardware resources; a time setting means for setting a timeout time according to the usage status of the hardware resources of a target process currently being executed based on timeout time information that associates the usage status of the hardware resources with a timeout time for each process type; and a timeout monitoring means for monitoring the timeout based on the set timeout time.

[0007] One aspect of the present invention is a timeout monitoring method executed by a computer, which includes a resource monitoring process for monitoring the usage status of each of a plurality of hardware resources; a time setting process for setting a timeout time corresponding to the usage status of the hardware resources of a target process currently being executed, based on timeout time information that associates the usage status of the hardware resources with a timeout time for each process type; and a timeout monitoring process for performing timeout monitoring based on the set timeout time.

[0008] One aspect of the present invention is a program for causing a computer to function as the information processing device described above. Effect of the Invention

[0009] The present invention allows for improved operational health of applications. [Brief description of the drawings]

[0010] [Figure 1] 1 is a schematic external view of a computer system according to an embodiment of the present invention; [Diagram 2]1 is a schematic diagram illustrating an example of a hardware configuration of an information processing device according to an embodiment of the present invention. [Diagram 3] FIG. 2 is a functional configuration diagram showing an example of functions provided in an information processing device according to an embodiment of the present invention. [Figure 4] FIG. 11 is a diagram showing an example of timeout time information according to an embodiment of the present invention. [Diagram 5] FIG. 11 is a diagram showing an example of timeout time information according to an embodiment of the present invention. [Figure 6] FIG. 4 is a diagram showing an example of first correction information according to an embodiment of the present invention. [Figure 7] FIG. 4 is a diagram showing an example of first correction information according to an embodiment of the present invention. [Figure 8] FIG. 11 is a diagram showing an example of second correction information according to an embodiment of the present invention. [Figure 9] 1 is a flowchart showing an example of a processing procedure of a timeout monitoring method according to an embodiment of the present invention. [Figure 10] 1 is a diagram for explaining a timeout monitoring method according to an embodiment of the present invention; [Figure 11] 1 is a diagram for explaining a timeout monitoring method according to an embodiment of the present invention; DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0011] An information processing device, a timeout monitoring method, and a program according to an embodiment of the present invention will be described below with reference to the drawings. In the following embodiment, a desktop PC will be described as an example of the information processing device 10.

[0012] Fig. 1 is a schematic external view of a computer system according to an embodiment of the present invention. As shown in Fig. 1, the computer system includes an information processing device 10, a display 15, an input device 16, etc. The display 15 has a display screen configured, for example, by an LCD (Liquid Crystal Display), an organic EL (Electro Luminescence), etc., and displays the results of application software programs executed by the information processing device 10, etc.

[0013] The input device 16 is a user interface for a user to give instructions to the information processing device 10. Examples of the input device 16 include a pointing device such as a mouse or a touchpad, a keyboard, and the like.

[0014] Fig. 2 is a schematic diagram showing an example of a hardware configuration of an information processing device 10 according to an embodiment of the present invention. As shown in Fig. 2, the information processing device 10 includes, for example, a CPU (Central Processing Unit: processor) 11, a main memory 12, a secondary storage (secondary storage: memory) 13, a communication interface 14, and an external interface 18. These components are connected to each other directly or indirectly via a bus 19, and cooperate with each other to execute various processes.

[0015] The CPU 11 controls the entire information processing device 10 by, for example, an OS (Operating System) stored in a secondary storage device 13 connected via a bus 19, and executes various processes by executing various programs stored in the secondary storage device 13. One or more CPUs 11 may be provided, and they may cooperate with each other to realize processes.

[0016] The main memory device 12 is composed of writable memory such as a cache memory or a RAM (Random Access Memory), and is used as a working area for reading out the execution program of the CPU 11, writing processing data by the execution program, and the like.

[0017] The secondary storage device 13 is a non-transitory computer readable storage medium. The secondary storage device 13 is, for example, a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, a semiconductor memory, or the like. Examples of the secondary storage device 13 include a ROM (Read Only Memory), a HDD (Hard Disk Drive), and a SSD (Solid State Drive) flash memory. The secondary storage device 13 stores, for example, an OS for controlling the entire information processing device such as Windows (registered trademark), iOS (registered trademark), Android (registered trademark), a BIOS (Basic Input / Output System), various device drivers for operating peripheral devices in hardware, various application software, and various data and files. In addition, the secondary storage device 13 stores programs for implementing various processes and various data required for implementing various processes. A plurality of secondary storage devices 13 may be provided, and the above-mentioned programs and data may be divided and stored in each secondary storage device 13.

[0018] The communication interface 14 functions as an interface for connecting to a network to communicate with other devices and transmitting and receiving information. For example, the communication interface 14 communicates with other devices by wire or wirelessly. Examples of wireless communication include communication through lines such as Bluetooth (registered trademark), Wi-Fi, mobile communication systems (3G, 4G, 5G, 6G, LTE, etc.), and wireless LAN. An example of wired communication includes communication through lines such as a wired LAN (Local Area Network).

[0019] The external interface 18 is an interface for connecting to an external device. The display 15 and the input device 16 are connected via the external interface 18. The external interface 18 includes, for example, appropriate input / output terminals and interfaces according to the devices to be connected.

[0020] Fig. 3 is a functional configuration diagram showing an example of functions included in the information processing device 10. As shown in Fig. 3, the information processing device 10 includes a resource monitoring unit 21, a time setting unit 22, a time correction unit 23, a timeout monitoring unit 24, a data management unit 25, an update unit 26, a database 27, and the like.

[0021] A series of processes for realizing various functions described below is stored in the secondary storage device 13 or the like in the form of application software (programs), for example, and the CPU (processor) 11 reads out the programs into the main storage device 12 and executes information processing and arithmetic processing to realize various functions. The programs may be pre-installed in the secondary storage device 13, provided in a state stored in a non-transitory computer-readable storage medium, or distributed via wired or wireless communication means. Examples of non-transitory computer-readable storage media include magnetic disks, magneto-optical disks, CD-ROMs, DVD-ROMs, and semiconductor memories.

[0022] An example of application software is Progressive Web Apps (PWA). PWAs run on web browsers and are implemented using HTML, CSS, JavaScript (registered trademark), etc., and are a technology that allows websites and web apps to be installed like native apps, or an application that uses the technology.

[0023] The resource monitoring unit 21 monitors the usage status of each of a plurality of hardware resources. For example, the resource monitoring unit 21 monitors the usage status of hardware resources such as a CPU, memory, network, GPU, and disk. The resource monitoring unit 21 may also appropriately monitor other resources that can be monitored. The monitoring of the hardware resources may be performed, for example, by a dedicated thread or process.

[0024] The time setting unit 22 sets a timeout time corresponding to the process to be executed based on timeout time information in which the timeout time is associated with information on the usage status of the hardware resource for each process type. More specifically, the timeout time information has, for example, one or more hardware resources with a large impact registered as target resources for each process type. Examples of process types include PWA startup processing, PWA installation processing, communication establishment processing with the PWA, download processing, authentication processing, etc.

[0025] Since the startup process of a PWA is mainly affected by the CPU and memory occupancy, for example, the CPU and memory are registered as target resources.

[0026] The PWA installation process is a process in which an application installs a PWA, and as an example, timeouts such as waiting for installation to complete and determining whether installation has been interrupted are monitored. This process is mainly affected by the CPU and memory occupancy, so for example, the CPU and memory are registered as target resources.

[0027] The process of establishing communication with a PWA is, for example, a process of establishing communication between an application and a PWA, and the waiting time until the communication is established is subject to timeout monitoring. Specific examples of communication connections include WebSocket and HTTP communication connections. Since this process depends on the network situation, for example, the network is registered as a target resource.

[0028] The download process is, for example, a process of acquiring application setting files and data via the Internet. Since this process depends on the network status, the network is registered as a target resource. In addition to hardware resources, for example, the ping value of the connection destination, the response time by the fetch API, etc. may be monitored.

[0029] The authentication process is executed, for example, by a web browser, and the confirmation of a specific title displayed when the authentication is completed and the waiting time until the confirmation are the targets of timeout monitoring. For example, a CPU and a memory are registered as the target resources of this process.

[0030] The time setting unit 22 identifies a target resource corresponding to the process to be executed from the timeout time information, and sets a timeout time according to the usage status of the identified target resource. 4 and 5 are diagrams showing an example of timeout time information. In the timeout time information shown in Fig. 4, a CPU is registered as a target resource, and the CPU usage rate, which is the target resource, and the timeout time are registered in association with each other. In the timeout time information shown in Fig. 5, a CPU and a memory are registered as target resources, and a timeout time is registered for each combination of the CPU usage rate and memory occupancy rate, which are the target resources. In addition, types V to Z are assigned to the timeout time information as identification information indicating the combination of the CPU usage rate and memory occupancy rate. The timeout time information as shown in FIG. 4 and FIG. 5 is provided for each process type.

[0031] The time correction unit 23 corrects the timeout time using a correction value according to the past timeout occurrence rate. For example, the time correction unit 23 has first correction information and second correction information. The first correction information is, for example, information in which the usage status of the target resource and the timeout occurrence rate are associated with each processing type. Moreover, the second correction information is information in which the timeout occurrence rate and correction data are associated with each processing type.

[0032] 6 and 7 are diagrams showing an example of the first correction information. In the first correction information shown in Fig. 6, a CPU is registered as a target resource, and the utilization rate of the CPU, which is the target resource, and the timeout occurrence rate are registered in association with each other. The first correction information shown in Fig. 7 is the first correction information for the same process type as Fig. 5, and types V to Z for identifying combinations of utilization status of the target resources are registered in association with the timeout occurrence rate. The time correction unit 23 uses the first correction information to obtain a timeout occurrence rate corresponding to the usage state of the target resource when the execution target process is being executed.

[0033] Moreover, Fig. 8 is a diagram showing an example of the second correction information. In the second correction information shown in Fig. 8, the timeout occurrence rate and the correction value are registered in association with each other. The time correction unit 23 uses the second correction information to obtain a correction value corresponding to the timeout occurrence rate obtained from the first correction information.

[0034] In this way, when the time correction unit 23 acquires the correction value from the second correction information, it uses the acquired correction value to correct the timeout time set by the time setting unit 22. The corrected timeout time is used in the timeout monitoring unit 24.

[0035] The timeout monitoring unit 24 monitors the timeout of the process to be executed based on the timeout period corrected by the time correction unit 23.

[0036] The data management unit 25 stores report data in the database 27, which associates the process to be executed, the timeout time, the usage status of each hardware resource, and whether or not a timeout occurred. The data management unit 25 stores the report data in the database 27, for example, after the process to be executed is finished, or when the process to be executed is forcibly interrupted because it is not completed within the timeout time. As a result, the database 27 accumulates the system status when a timeout does not occur and when a timeout occurs (the process to be executed, the timeout time used to monitor the timeout, the usage status of hardware resources, whether or not a timeout occurred, etc.) as report data.

[0037] The update unit 26 updates the timeout period information by executing a predetermined process using the report data stored in the database 27. Examples of the predetermined process include optimization process and statistical process. For these processes, known techniques can be appropriately adopted. In addition, by using the report data as teacher data and utilizing machine learning, an optimal timeout period according to the usage status of hardware resources for each process type may be calculated, and the timeout period information may be updated based on the calculated timeout period.

[0038] Furthermore, the update unit 26 may identify a hardware resource that is highly relevant to the target process to be executed based on the report data, and update the target resource based on the information of the identified hardware resource. For example, as shown in Fig. 4, if a CPU is registered as a target resource for a certain process type, but analysis of the report data reveals that the influence of memory occupancy is high, the timeout period information may be updated by adding memory as a target resource. Furthermore, updating the timeout period information may include not only adding a target resource, but also decreasing the target resource.

[0039] Next, a timeout monitoring method executed by an application included in the information processing device 10 according to this embodiment will be described with reference to Fig. 9. Fig. 9 is a flowchart showing an example of a processing procedure of the timeout monitoring method according to this embodiment. The series of processing described below is started, for example, when a process to be monitored for timeout is started.

[0040] First, when one of a plurality of processes (e.g., PWA startup process, PWA installation process, communication establishment process with PWA, download process, authentication process, etc.) that are preset as targets for timeout monitoring (hereinafter referred to as "target process") is started, the information processing device 10 acquires the usage status of the corresponding resource based on the timeout time information corresponding to the target process (SA1). For example, if the time information corresponding to the target process is the timeout time information exemplified in Fig. 4, the usage status of the CPU is acquired, and if the timeout time information is the timeout time information exemplified in Fig. 5, the usage status of the CPU and memory is acquired.

[0041] Next, the timeout period associated with the usage of the target resource is obtained from the timeout period information and set (SA2). For example, as shown in Fig. 10, if the process to be executed is process A and the usage of the target resource is 70% for CPU and 60% for memory, the timeout period is set to 30 seconds.

[0042] Next, the past timeout occurrence rate of the process to be executed is obtained from the first correction information based on the usage status of the target resource of the process to be executed (SA3), and a correction value associated with the obtained timeout occurrence rate is obtained from the second correction information (SA4).Then, the timeout period is corrected using the obtained correction value (SA5).

[0043] For example, as shown in FIG. 11, if the usage status of the target resource of process A, which is the process to be executed, is type "W", 15% corresponding to type "W" is obtained as the timeout occurrence rate from the first correction information, and further, a correction value of 1.03 corresponding to this timeout occurrence rate of 15% is obtained from the second correction information. Then, this correction value of 1.03 is used to correct the timeout time of 30 seconds. The correction method depends on the application specifications or each process. One possible example is to multiply the correction value by the timeout value. In that case, a timeout time of 31 seconds (30.9 seconds, for example, rounded off to the nearest integer) is obtained.

[0044] Next, timeout monitoring of the process to be executed is performed using the corrected timeout period (SA6). Then, when the process to be executed is completed, or a timeout occurs and the process to be executed is interrupted, and the timeout monitoring ends, the report data of the timeout monitoring is stored in database 27 (SA7), and the process ends. As a result, past timeout monitoring report data is accumulated in database 27.

[0045] Then, at a predetermined timing, a predetermined process such as machine learning is performed using the past report data accumulated in database 27, thereby updating the timeout time information, the first correction information, and the second correction information.

[0046] As described above, the information processing device 10 according to this embodiment includes a resource monitoring unit 21 that monitors the usage status of each of a plurality of hardware resources, a time setting unit 22 that sets a timeout time corresponding to a process to be executed based on timeout time information in which information relating to the usage status of the hardware resources is associated with a timeout time for each process type, and a timeout monitoring unit 24 that executes timeout processing based on the set timeout time. This allows the timeout period to be set according to the current system usage status, making it possible to avoid unnecessary timeouts, thereby improving the operational soundness of the application.

[0047] The information processing device 10 also includes a data management unit 25 that stores in a database 27 report data for timeout monitoring that associates the target process, the timeout time, the usage status of each hardware resource, and the presence or absence of a timeout, and an update unit 26 that updates the timeout time information by executing a predetermined process using the multiple report data stored in the database 27. This makes it possible to analyze the past timeout occurrence rate, the time when a timeout occurred, and the like, and to update the timeout time to a more optimal value.

[0048] The information processing device 10 also includes a time correction unit 23 that corrects the timeout time using a correction value according to the past timeout occurrence rate, and the timeout monitoring unit 24 executes timeout processing using the corrected timeout time. In this way, the timeout period is corrected in accordance with the timeout occurrence rate, so that unnecessary timeouts can be effectively avoided.

[0049] Although the present invention has been described above using the embodiments, the technical scope of the present invention is not limited to the scope described in the above embodiments. Various modifications or improvements can be made to the above embodiments without departing from the gist of the present invention, and the forms with such modifications or improvements are also included in the technical scope of the present invention.

[0050] Furthermore, the processing procedures described in the above embodiments are also just examples, and unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the present disclosure.

[0051] For example, in the above embodiment, the time correction unit 23 is provided, but this is not limited to this. For example, the time correction unit 23 can be omitted. In this case, timeout monitoring can be performed using the timeout time set by the time setting unit 22.

[0052] In the above-described embodiment, the information processing device 10 includes the database 27, but the present invention is not limited to this example. The database 27 may be installed on a network (for example, on a cloud) accessible to the information processing device 10. In this case, the information processing device 10 may be connected to the database 27 via the communication interface 14, and the data management unit 25 may store the report data in the database 27. In this case, the database 27 may accumulate report data received from a plurality of information processing devices 10. This makes it possible to obtain more report data, and to process the large amount of report data using known machine learning or optimization processing. As a result, it becomes possible to set the timeout time and the correction value to more appropriate values ​​depending on the processing type, the usage status of the target resource, and the like. In this case, the update unit 26 may also be installed on the network, and the information processing device 10 may acquire various information, such as the timeout time information updated by the update unit 26, via the network.

[0053] In the above embodiment, the target resource is selected in advance for each processing type in the timeout time information, but this is not limited to this. For example, all hardware resources are registered as target resources, and after the report data is accumulated, the hardware resources that are highly related to each processing type from the report data, in other words, the hardware resources whose usage status changes greatly between when each processing is executed and when it is not executed, may be identified using known statistical processing, machine learning, etc.

[0054] In addition, in each of the above-described embodiments, a desktop PC has been described as an example of the information processing device 10, but the information processing device 10 is not limited to this. The information processing device 10 may be a notebook PC, a tablet information terminal, a smartphone, or the like. The display 15 and the input device 16 may be mounted as components of the information processing device. [Explanation of symbols]

[0055] 10: Information processing device 11: CPU 12: Main memory 13:Secondary storage device 14: Communication interface 15: Display 16: Input device 18: External interface 19: Bus 21: Resource monitoring unit 22: Time setting section 23: Time correction section 24: Timeout monitoring section 25: Data Management Department 26: Update section 27: Database

Claims

1. A resource monitoring means for monitoring a usage status of each of a plurality of hardware resources; a time setting means for setting a timeout time according to the usage status of the hardware resources of a process to be executed, based on timeout time information in which the usage status of the hardware resources and the timeout time are associated with each process type; a timeout monitoring means for monitoring a timeout based on the set timeout period; An information processing device comprising:

2. In the timeout time information, one or more hardware resources are registered as target resources for each processing type, 2 . The information processing apparatus according to claim 1 , wherein the time setting means identifies a target resource corresponding to a process to be executed from the timeout time information, and sets a timeout time according to a usage status of the identified target resource.

3. a data management means for storing in a database report data of timeout monitoring in which the target process, the timeout period, the usage status of each of the hardware resources, and the occurrence or absence of a timeout are associated with each other; an update means for updating the timeout time information by executing a predetermined process using the report data stored in the database; The information processing device according to claim 2 .

4. 4 . The information processing apparatus according to claim 3 , wherein the update means identifies a hardware resource highly related to the execution target process based on the report data, and updates the target resource based on information on the identified hardware resource.

5. a time correction means for correcting the timeout time using a correction value corresponding to a past timeout occurrence rate; 2. The information processing apparatus according to claim 1, wherein the timeout monitoring means executes the timeout process using the corrected timeout period.

6. a time correction means for correcting the timeout time using a correction value corresponding to a past timeout occurrence rate; The time correction means obtaining a timeout occurrence rate corresponding to the usage state of the target resource at the time of execution of the execution target process, using first correction information in which the usage state of the target resource and the timeout occurrence rate are associated with each processing type; The information processing apparatus according to claim 2 , further comprising: a correction value obtained according to the timeout occurrence rate obtained from the first correction information, using second correction information in which a timeout occurrence rate and correction data are associated with each of the process types.

7. a data management means for storing report data in which the target process, the timeout period, the usage status of each of the hardware resources, and the presence or absence of a timeout are associated with each other; an update means for updating the first correction information and the second correction information by executing a predetermined process using the report data; The information processing device according to claim 6 .

8. a resource monitoring step of monitoring a usage status of each of a plurality of hardware resources; a time setting step of setting a timeout time according to the usage status of the hardware resources of the currently running target process based on timeout time information in which the usage status of the hardware resources is associated with the timeout time for each process type; a timeout monitoring step of performing timeout monitoring based on the set timeout period; The computer performs a timeout monitoring method.

9. A program for causing a computer to function as the information processing device according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Radio communication equipment

    JP2000261496A

  • Content delivery system, content delivery server, user terminal, and computer program

    JP2006018506A

  • Request information processing method and computer system

    JP2011095869A

  • Information processing device, resource control method of information processing device and program thereof

    JP2016115180A

  • Implementing rate controls to limit timeout-based faults

    US20140195861A1