JP2008197885A - Application abnormal end processing system method therefor and program - Google Patents

Application abnormal end processing system method therefor and program Download PDF

Info

Publication number
JP2008197885A
JP2008197885A JP2007031884A JP2007031884A JP2008197885A JP 2008197885 A JP2008197885 A JP 2008197885A JP 2007031884 A JP2007031884 A JP 2007031884A JP 2007031884 A JP2007031884 A JP 2007031884A JP 2008197885 A JP2008197885 A JP 2008197885A
Authority
JP
Japan
Prior art keywords
application
cooperation destination
processing
destination module
termination processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2007031884A
Other languages
Japanese (ja)
Inventor
Yoshinori Saida
好則 才田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2007031884A priority Critical patent/JP2008197885A/en
Publication of JP2008197885A publication Critical patent/JP2008197885A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To detect the abnormal end of an application without drastically modifying the application and an associated application, and to prevent bad influence of the abnormal end of the application on the associated application, in a computer wherein the application cooperates with other application or the like. <P>SOLUTION: Transfer of a message between the application 140 and the associated application 150 or the like necessary for the application 140 to cooperate with the application 150 or the like is relayed by a processing relay means 170 in a cooperation library 160. An end detection means 180 monitors the transfer of the message relayed in the processing relay means 170, and regards that the application 140 abnormally ends when disconnected without through a normal procedure. An end processing alternative means 190 ends the associated application through the processing relay means 170 in place of the application 140. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明はアプリケーションプログラムの異常終了検出およびその検出時の処理に関し、特にアプリケーションプログラムが他のアプリケーションプログラム等と連携動作するコンピュータ環境下でのアプリケーションプログラムの異常終了検出とその検出時の処理に関する。   The present invention relates to detection of abnormal termination of an application program and processing at the time of detection, and more particularly to detection of abnormal termination of an application program in a computer environment in which the application program operates in cooperation with other application programs and processing at the time of detection.

パーソナルコンピュータや携帯端末などのコンピュータにおける処理の形態として、アプリケーションプログラム(単にアプリケーションとも言う)が、他のアプリケーションプログラム等のモジュールと連携して、一連の処理を遂行する形態がある。例えば、アプリケーション側にはユーザインタフェースを実装し、そのユーザインタフェースを通じてユーザから要求される機能を実現する処理やサービスは連携先モジュールに実装し、アプリケーションから適宜に連携先モジュールに処理を要求することで、ユーザに対して所望の機能やサービスを提供するといった例がある。   As a processing form in a computer such as a personal computer or a portable terminal, there is a form in which an application program (also simply referred to as an application) performs a series of processing in cooperation with a module such as another application program. For example, by implementing a user interface on the application side, implementing processing and services that realize the functions requested by the user through the user interface in the cooperation destination module, and requesting processing from the application to the cooperation destination module as appropriate. There are examples of providing a desired function or service to a user.

このようにアプリケーションが連携先モジュールと連携動作するコンピュータ環境では、アプリケーションが異常終了すると、その影響は異常終了したアプリケーションのみに留まらず、連携先モジュールにも及ぶ。例えば、アプリケーションが連携先モジュールの機能をオープンしたまま異常終了すると、その機能が使用中状態のままになってしまって他のアプリケーションから利用できなくなってしまう。   In this way, in a computer environment in which an application cooperates with a cooperation destination module, when the application terminates abnormally, the effect is not limited to the abnormally terminated application, but extends to the cooperation destination module. For example, if an application terminates abnormally with the function of the link destination module open, the function remains in use and cannot be used by other applications.

そこで従来より、アプリケーションの異常終了を検出し、必要な処理を行うようにした技術が幾つか提案されている。   Thus, several techniques have been proposed in the past that detect abnormal termination of an application and perform necessary processing.

例えば特許文献1では、各アプリケーションに、起動時に監視制御プロセスとTCP/IPのコネクションを用いて接続して以後一定期間ごとに状態通知を送信する機能を実装し、監視制御プロセスにおいて、アプリケーションとのコネクションが切断された場合あるいはは状態通知を受信できなくなった場合に、そのアプリケーションに異常が発生したと判断し、正常動作中の他のアプリケーションに対して正常終了要求を送って正常終了させている。   For example, in Patent Document 1, a function for transmitting a status notification at regular intervals after connecting to each application using a monitor / control process and a TCP / IP connection at startup is implemented. When the connection is disconnected or the status notification cannot be received, it is determined that an error has occurred in the application, and a normal termination request is sent to another application that is operating normally to terminate the operation normally. .

また特許文献2では、複数のアプリケーションが連携動作を行う環境において、各アプリケーションに、システム稼動状態監視/制御部から所定期間毎に送信される稼動情報送信要求の受信に応答して自身の稼動情報を送信する機能を実装し、システム稼動状態監視/制御部において、稼動情報送信要求に対する応答がなかったアプリケーションは異常終了していると判断し、当該アプリケーションと連携動作中のアプリケーションに異常終了したことを知らせるメッセージを送信してその連携動作を終了させている。   Further, in Patent Document 2, in an environment in which a plurality of applications perform cooperative operations, each application receives its own operation information in response to reception of an operation information transmission request transmitted from the system operation state monitoring / control unit every predetermined period. The system operating state monitoring / control unit has determined that an application that has not responded to an operation information transmission request has terminated abnormally, and the application that is operating in cooperation with the application has terminated abnormally. This message is sent to terminate the cooperative operation.

特開2001-229032号公報Japanese Patent Laid-Open No. 2001-229032 特開2002-342095号公報JP 2002-342095 JP

上述した従来技術によれば、アプリケーションの異常終了を検出し、そのアプリケーションと連携中の他のアプリケーション等に対して必要な処理を行うことが可能である。しかしながら、そのためにはアプリケーション中に、特許文献1の場合には監視制御プロセスとTCP/IPのコネクションを用いて接続して以後一定期間ごとに状態通知を送信する機能を実装する必要があり、特許文献2の場合にはシステム稼動状態監視/制御部から所定期間毎に送信される稼動情報送信要求の受信に応答して自身の稼動情報を送信する機能を実装する必要がある。このため、これらの従来技術を既存のアプリケーションに適用する場合にはアプリケーションの大幅な改造が必要になる。また、アプリケーションには、連携先とメッセージの授受を行う機能とは別に、監視制御プロセスやシステム稼動状態監視/制御部に対して通信する機能が必要になるため、アプリケーションの実装工数の増加、アプリケーション稼動時の性能低下が問題となる。   According to the above-described conventional technology, it is possible to detect abnormal termination of an application and perform necessary processing on another application that is linked with the application. However, for this purpose, in the case of Patent Document 1, it is necessary to implement a function for transmitting a status notification at regular intervals after connecting with a monitoring control process and a TCP / IP connection. In the case of Document 2, it is necessary to implement a function of transmitting its own operation information in response to reception of an operation information transmission request transmitted every predetermined period from the system operation state monitoring / control unit. For this reason, when these conventional techniques are applied to an existing application, the application must be significantly modified. In addition to the function of sending and receiving messages to and from the cooperation destination, the application needs a function to communicate with the monitoring control process and the system operating state monitoring / control unit. Performance degradation during operation becomes a problem.

同様に、アプリケーションと連携する他のアプリケーション等の連携先も、監視制御プロセスやシステム稼動状態監視/制御部との通信機能が必要になるため、上述した従来技術を既存の連携先に適用する場合には連携先モジュールの大幅な改造が必要になる。また、連携先モジュールには、アプリケーションとメッセージの授受を行う機能とは別に、監視制御プロセスやシステム稼動状態監視/制御部に対して通信する機能が必要になるため、連携先モジュールの実装工数の増加、モジュール稼動時の性能低下が問題となる。   Similarly, the cooperation destination of other applications that cooperate with the application also requires a monitoring control process and a communication function with the system operation state monitoring / control unit, and therefore, when the above-described conventional technology is applied to an existing cooperation destination Requires a significant modification of the partner module. In addition to the function to exchange messages with applications, the cooperation destination module requires a function to communicate with the monitoring control process and the system operating state monitoring / control unit. Increased, performance degradation during module operation becomes a problem.

本発明の目的は、アプリケーションが他のアプリケーション等の連携先モジュールとメッセージの授受を行うことで連携して動作するコンピュータにおいて、アプリケーションおよび連携先モジュールの大幅な改造無しに、アプリケーションの異常終了の検出を可能にし、また、アプリケーションの異常終了がその連携先モジュールに悪影響を及ぼさないようにすることにある。   An object of the present invention is to detect abnormal termination of an application without significant modification of the application and the cooperation destination module in a computer that operates in cooperation with the application by exchanging messages with the cooperation destination module such as another application. It is also possible to prevent abnormal termination of an application from adversely affecting the cooperation destination module.

本発明の第1のアプリケーション異常終了処理システムは、アプリケーションプログラムが連携先モジュールとメッセージを授受して連携動作するコンピュータにおけるアプリケーション異常終了処理システムにおいて、前記アプリケーションプログラムと連携先モジュールとの間のメッセージの授受を中継する処理中継手段と、該処理中継手段で行われている前記アプリケーションプログラムと連携先モジュールとの間のメッセージの授受の中継処理が正常な手続きを経ることなく切断された場合に、前記アプリケーションプログラムが異常終了したものと判定する終了検出手段と、前記アプリケーションプログラムの異常終了が前記終了検出手段で判定された場合に、前記アプリケーションプログラムに代わって前記処理中継手段を通じて前記連携先モジュールに対する終了処理を行う終了処理代行手段とを備えたことを特徴とする。   A first application abnormal termination processing system according to the present invention is an application abnormal termination processing system in a computer in which an application program exchanges messages with a cooperation destination module to operate in cooperation with each other. When the relay process of message transmission and reception between the application program and the cooperation destination module performed by the process relay unit that relays the transfer is disconnected without passing through the normal procedure, An end detection means for determining that the application program has ended abnormally, and when the abnormal end of the application program is determined by the end detection means, the processing relay means instead of the application program Characterized in that a termination processing proxy means for performing termination processing on the cooperation destination module.

本発明の第2のアプリケーション異常終了処理システムは、第1のアプリケーション異常終了処理システムにおいて、前記処理中継手段は、前記アプリケーションプログラムによって呼び出される第1のサブモジュールと、該第1のサブモジュールとプロセス間通信によりメッセージの授受を行い且つ前記連携先モジュールを呼び出す第2のサブモジュールとを含んで構成され、前記終了検出手段は、前記第1のサブモジュールと前記第2のサブモジュールとの間のプロセス間通信が正常な手続きを経ることなく切断された場合に前記アプリケーションプログラムの異常終了と判定し、前記終了処理代行手段は、前記第2のサブモジュールを通じて前記連携先モジュールに対する終了処理を行うことを特徴とする。   According to a second application abnormal termination processing system of the present invention, in the first application abnormal termination processing system, the process relay means includes a first submodule called by the application program, the first submodule and a process. A second sub-module that exchanges messages by inter-communication and calls the cooperation destination module, and the end detection means is provided between the first sub-module and the second sub-module. When the inter-process communication is disconnected without going through a normal procedure, it is determined that the application program is abnormally terminated, and the termination processing proxy means performs termination processing on the cooperation destination module through the second submodule. It is characterized by.

本発明の第3のアプリケーション異常終了処理システムは、第1のアプリケーション異常終了処理システムにおいて、前記処理中継手段は、前記アプリケーションプログラムとその各連携先モジュールとの間に1つずつ配置されることを特徴とする。   According to a third application abnormal termination processing system of the present invention, in the first application abnormal termination processing system, the processing relay unit is arranged one by one between the application program and each cooperation destination module. Features.

本発明の第4のアプリケーション異常終了処理システムは、第1のアプリケーション異常終了処理システムにおいて、前記処理中継手段は、前記アプリケーションプログラムとその全ての連携先モジュールとの間のメッセージの授受を中継し、且つ、現在連携している連携先モジュールの情報を連携先記憶データベースに保存することを特徴とする。   According to a fourth application abnormal termination processing system of the present invention, in the first application abnormal termination processing system, the processing relay unit relays message exchange between the application program and all of the cooperation destination modules, In addition, the present invention is characterized in that information on a cooperation destination module currently linked is stored in a cooperation destination storage database.

本発明の第5のアプリケーション異常終了処理システムは、第1乃至第4の何れかのアプリケーション異常終了処理システムにおいて、前記終了処理代行手段は、異常終了したアプリケーションの連携先モジュールに対して、前記アプリケーションが終了したことを知らせるメッセージを送信することを特徴とする。   According to a fifth application abnormal termination processing system of the present invention, in any one of the first to fourth application abnormal termination processing systems, the termination processing proxy means applies the application to the cooperation destination module of the abnormally terminated application. It is characterized by transmitting a message notifying that the process has ended.

本発明の第6のアプリケーション異常終了処理システムは、第1乃至第4の何れかのアプリケーション異常終了処理システムにおいて、前記終了処理代行手段は、異常終了したアプリケーションの連携先モジュールに対して、前記アプリケーションの代わりに正常な終了手続きを代行して行うことを特徴とする。   The sixth application abnormal termination processing system according to the present invention is the application abnormal termination processing system according to any one of the first to fourth applications, wherein the termination processing proxy means applies the application to the cooperation destination module of the abnormally terminated application. Instead of the above, a normal termination procedure is performed on behalf of.

本発明の第7のアプリケーション異常終了処理システムは、第1乃至第4の何れかのアプリケーション異常終了処理システムにおいて、前記終了処理代行手段は、連携先モジュールに対応する異常終了処理用コードを予め記憶し、異常終了発生時には異常終了したアプリケーションの連携先モジュールに対して、前記記憶されている異常終了処理用コードを呼び出して実行することを特徴とする。   According to a seventh application abnormal termination processing system of the present invention, in any one of the first to fourth application abnormal termination processing systems, the termination processing proxy unit stores in advance an abnormal termination processing code corresponding to the cooperation destination module. When the abnormal termination occurs, the stored abnormal termination processing code is called and executed with respect to the cooperation destination module of the abnormally terminated application.

本発明の第1のアプリケーション異常終了処理方法は、アプリケーションプログラムが連携先モジュールとメッセージを授受して連携動作するコンピュータにおけるアプリケーション異常終了処理方法において、処理中継手段が、前記アプリケーションプログラムと連携先モジュールとの間のメッセージの授受を中継し、終了検出手段が、前記処理中継手段で行われている前記アプリケーションプログラムと連携先モジュールとの間のメッセージの授受の中継処理が正常な手続きを経ることなく切断された場合に、前記アプリケーションプログラムが異常終了したものと判定し、終了処理代行手段が、前記アプリケーションプログラムの異常終了が前記終了検出手段で判定された場合に、前記アプリケーションプログラムに代わって前記処理中継手段を通じて前記連携先モジュールに対する終了処理を行うことを特徴とする。   The first application abnormal termination processing method of the present invention is an application abnormal termination processing method in a computer in which an application program exchanges messages with a cooperation destination module and operates in cooperation with each other. Relay the message exchange between them, and the end detection means disconnects the message exchange relay process between the application program and the cooperation destination module performed by the process relay means without going through a normal procedure. If the application program is determined to have ended abnormally, and the termination processing agent means determines that the abnormal termination of the application program has been determined by the termination detection means, the processing is performed instead of the application program. And performing termination processing on the cooperation destination module via splicing means.

本発明の第2のアプリケーション異常終了処理方法は、第1のアプリケーション異常終了処理方法において、前記処理中継手段は、前記アプリケーションプログラムによって呼び出される第1のサブモジュールと、該第1のサブモジュールとプロセス間通信によりメッセージの授受を行い且つ前記連携先モジュールを呼び出す第2のサブモジュールとを含んで構成され、前記終了検出手段は、前記第1のサブモジュールと前記第2のサブモジュールとの間のプロセス間通信が正常な手続きを経ることなく切断された場合に前記アプリケーションプログラムの異常終了と判定し、前記終了処理代行手段は、前記第2のサブモジュールを通じて前記連携先モジュールに対する終了処理を行うことを特徴とする。   According to a second application abnormal termination processing method of the present invention, in the first application abnormal termination processing method, the processing relay means includes a first submodule called by the application program, the first submodule and a process. A second sub-module that exchanges messages by inter-communication and calls the cooperation destination module, and the end detection means is provided between the first sub-module and the second sub-module. When the inter-process communication is disconnected without going through a normal procedure, it is determined that the application program is abnormally terminated, and the termination processing proxy means performs termination processing on the cooperation destination module through the second submodule. It is characterized by.

本発明の第3のアプリケーション異常終了処理方法は、第1のアプリケーション異常終了処理方法において、前記処理中継手段は、前記アプリケーションプログラムとその各連携先モジュールとの間に1つずつ配置されることを特徴とする。   According to a third application abnormal termination processing method of the present invention, in the first application abnormal termination processing method, the processing relay means is arranged one by one between the application program and each cooperation destination module. Features.

本発明の第4のアプリケーション異常終了処理方法は、第1のアプリケーション異常終了処理方法において、前記処理中継手段は、前記アプリケーションプログラムとその全ての連携先モジュールとの間のメッセージの授受を中継し、且つ、現在連携している連携先モジュールの情報を連携先記憶データベースに保存することを特徴とする。   According to a fourth application abnormal termination processing method of the present invention, in the first application abnormal termination processing method, the processing relay unit relays a message exchange between the application program and all of the cooperation destination modules, In addition, the present invention is characterized in that information on a cooperation destination module currently linked is stored in a cooperation destination storage database.

本発明の第5のアプリケーション異常終了処理方法は、第1乃至第4の何れかのアプリケーション異常終了処理方法において、前記終了処理代行手段は、異常終了したアプリケーションの連携先モジュールに対して、前記アプリケーションが終了したことを知らせるメッセージを送信することを特徴とする。   According to a fifth application abnormal termination processing method of the present invention, in any one of the first to fourth application abnormal termination processing methods, the termination processing agent means applies the application to the cooperation destination module of the abnormally terminated application. It is characterized by transmitting a message notifying that the process has ended.

本発明の第6のアプリケーション異常終了処理方法は、第1乃至第4の何れかのアプリケーション異常終了処理方法において、前記終了処理代行手段は、異常終了したアプリケーションの連携先モジュールに対して、前記アプリケーションの代わりに正常な終了手続きを代行して行うことを特徴とする。   According to a sixth application abnormal termination processing method of the present invention, in any one of the first to fourth application abnormal termination processing methods, the termination processing agent means applies the application to the cooperation destination module of the abnormally terminated application. Instead of the above, a normal termination procedure is performed on behalf of.

本発明の第7のアプリケーション異常終了処理方法は、第1乃至第4の何れかのアプリケーション異常終了処理方法において、前記終了処理代行手段は、連携先モジュールに対応する異常終了処理用コードを予め記憶し、異常終了発生時には異常終了したアプリケーションの連携先モジュールに対して、前記記憶されている異常終了処理用コードを呼び出して実行することを特徴とする。   According to a seventh application abnormal termination processing method of the present invention, in any one of the first to fourth application abnormal termination processing methods, the termination processing proxy means stores in advance an abnormal termination processing code corresponding to the cooperation destination module. When the abnormal termination occurs, the stored abnormal termination processing code is called and executed to the cooperation destination module of the application that has terminated abnormally.

『作用』
本発明にあっては、アプリケーションとその連携先モジュールとが連携して処理を進めるために必要な両者間でのメッセージの授受を処理中継手段が中継するようにし、この処理中継手段で行われているメッセージの授受の中継処理を終了検出手段が監視し、この中継処理が正常な手続きを経ることなく切断(解除)された場合に、アプリケーションが異常終了したものとみなし、終了処理代行手段が連携先モジュールに対する終了処理をアプリケーションプログラムに代わって処理中継手段を通じて行うことで、アプリケーションの異常終了がその連携先モジュールに悪影響を及ばさないようにする。
"Action"
In the present invention, the process relay means relays the message exchange between the two necessary for the application and the cooperation destination module to proceed in cooperation with each other. The termination detection means monitors the relay process for sending and receiving messages, and if this relay process is disconnected (released) without going through normal procedures, the application is considered to have terminated abnormally, and the termination process proxy means The termination process for the destination module is performed through the processing relay means instead of the application program, so that the abnormal termination of the application does not adversely affect the cooperation destination module.

本発明によれば、アプリケーションが他のアプリケーション等の連携先モジュールとメッセージの授受を行うことで連携して動作するコンピュータにおいて、アプリケーションの大幅な改造無しに、アプリケーションの異常終了検出が可能になる。その理由は、アプリケーションとその連携先モジュールとが連携して処理を進めるために必要な両者間でのメッセージの授受を処理中継手段が中継するようにし、この処理中継手段で行われているメッセージの授受の中継処理を終了検出手段が監視し、この中継処理が正常な手続きを経ることなく切断された場合に、アプリケーションが異常終了したものとみなすため、従来技術のような監視制御プロセスやシステム稼動状態監視/制御部との通信機能をアプリケーションに実装する必要がないからである。   According to the present invention, an abnormal end of an application can be detected without significant modification of the application in a computer that operates in cooperation with the application by exchanging messages with a cooperation destination module such as another application. The reason is that the processing relay means relays the message exchange between the application and the cooperation destination module that is necessary for the processing to proceed in cooperation. The end detection means monitors the relay process of exchange, and when this relay process is disconnected without passing through normal procedures, it is considered that the application has ended abnormally. This is because it is not necessary to implement a communication function with the state monitoring / control unit in the application.

また本発明によれば、アプリケーションが他のアプリケーション等の連携先モジュールとメッセージの授受を行うことで連携して動作するコンピュータにおいて、連携先モジュールの大幅な改造無しに、アプリケーションの異常終了が連携先モジュールに与える悪影響を防止することができる。その理由は、アプリケーションとその連携先モジュールとが連携して処理を進めるために必要な両者間でのメッセージの授受を処理中継手段が中継するようにし、アプリケーションが異常終了した場合、終了処理代行手段が、連携先モジュールに対する終了処理を、アプリケーションプログラムに代わって処理中継手段を通じて行うため、従来技術のような監視制御プロセスやシステム稼動状態監視/制御部とのインタフェースを連携先モジュールに実装する必要がないからである。   Further, according to the present invention, in a computer that operates in cooperation with an application by exchanging messages with a cooperation destination module such as another application, the abnormal termination of the application is detected without significant modification of the cooperation destination module. The adverse effect on the module can be prevented. The reason is that the processing relay means relays the message exchange between the application and the cooperation destination module that is necessary for the processing to proceed, and if the application ends abnormally, the termination processing proxy means However, since the termination process for the cooperation destination module is performed through the process relay means instead of the application program, it is necessary to implement the monitoring control process and the interface with the system operation state monitoring / control unit as in the prior art in the cooperation destination module. Because there is no.

次に、本発明を実施するための最良の形態について図面を参照して詳細に説明する。   Next, the best mode for carrying out the present invention will be described in detail with reference to the drawings.

『第1の実施の形態』
<ハードウェア構成>
図1を参照すると、本発明を適用したコンピュータ100のハードウェア構成の一例は、表示装置101、CPU102、RAM103、ROM104、HDD105、外部メモリ106、出力装置107、通信装置108、入力装置109およびそれらを相互に接続するバス300から構成されている。ROM104は、読み取り専用のメモリであり、CPU102で実行されるオペレーティングシステム(OS)、アプリケーション管理システムなどのミドルウェア、ライブラリ関数、サービスプロセスおよび固定データなどを記憶する。RAM103は、読み書き可能なメモリであり、CPU102で実行されるアプリケーションプログラムおよび演算データなどを一時的に記憶する。HDD105および外部メモリ106は、ファイルシステム、アプリケーションプログラムおよび各種データを記憶する。表示装置101は、LCD等で構成され、アプリケーションのウィンドウ画面などを表示する。出力装置107は、スピーカ等で構成され、音声メッセージなどを出力する。入力装置109は、キー操作部などで構成され、ユーザからのデータや指示を入力する。通信装置108は、有線または無線によって音声通信やデータ通信を行う。このようなハードウェア構成を有するコンピュータ100の例としては、パーソナルコンピュータなどの一般的なコンピュータ、携帯電話機、ゲーム端末などがある。
“First Embodiment”
<Hardware configuration>
Referring to FIG. 1, examples of the hardware configuration of a computer 100 to which the present invention is applied include a display device 101, a CPU 102, a RAM 103, a ROM 104, an HDD 105, an external memory 106, an output device 107, a communication device 108, an input device 109, and the like. Are constituted by a bus 300 for mutually connecting the two. The ROM 104 is a read-only memory, and stores an operating system (OS) executed by the CPU 102, middleware such as an application management system, library functions, service processes, fixed data, and the like. The RAM 103 is a readable / writable memory, and temporarily stores application programs executed by the CPU 102, operation data, and the like. The HDD 105 and the external memory 106 store a file system, application programs, and various data. The display device 101 includes an LCD or the like, and displays an application window screen. The output device 107 is configured with a speaker or the like, and outputs a voice message or the like. The input device 109 includes a key operation unit and the like, and inputs data and instructions from the user. The communication device 108 performs voice communication and data communication by wire or wireless. Examples of the computer 100 having such a hardware configuration include a general computer such as a personal computer, a mobile phone, and a game terminal.

<ソフトウェア構成>
図2を参照すると、本発明の第1の実施の形態は、コンピュータ100上で、OS110、アプリケーション管理システム120、共通サービス130〜13n、アプリケーション140、連携対象アプリケーション150〜15n、連携用ライブラリ160が動作する。ここで、アプリケーション140が異常終了の検出対象となるアプリケーションであり、アプリケーション管理システム120、共通サービス130〜13nおよび連携対象アプリケーション150〜15nがアプリケーション140の連携先となるモジュールである。
<Software configuration>
Referring to FIG. 2, in the first embodiment of the present invention, on a computer 100, an OS 110, an application management system 120, common services 130 to 13n, an application 140, cooperation target applications 150 to 15n, and a cooperation library 160 are provided. Operate. Here, the application 140 is an application to be detected for abnormal termination, and the application management system 120, the common services 130 to 13n, and the cooperation target applications 150 to 15n are modules to which the application 140 is linked.

アプリケーション管理システム120は、コンピュータ100上で複数のアプリケーションが動作している場合に、各アプリケーションの起動、終了、中断といった実行状態の制御および管理や、各アプリケーションのウィンドウの表示切り替えを行うソフトウェアである。特に画面サイズが小さく、マウスのようなポインティングデバイスがない携帯端末では、同時に1つのアプリケーションのウィンドウのみしか表示できず、またユーザが直接アプリケーションのウィンドウを選択して切り替える手段がないため、このアプリケーション管理システム120が、現在ユーザが操作中の状態(アクティブ状態)にあるアプリケーションのウィンドウを最前面に表示する処理や、或るアプリケーションが終了した際に、直前にアクティブ状態であったアプリケーションのウィンドウを最前面に表示する処理や、或るアプリケーションAが他のアプリケーションBを呼び出した際に、最前面に表示されているウィンドウを、アプリケーションAのものからアプリケーションBに切り替える処理などを自動的に行っている。   The application management system 120 is software that controls and manages execution states such as activation, termination, and interruption of each application and switching display of each application window when a plurality of applications are operating on the computer 100. . In particular, a portable terminal having a small screen size and no pointing device such as a mouse can display only one application window at a time, and there is no means for the user to directly select and switch the application window. The system 120 displays the window of the application currently being operated by the user (active state) in the foreground, or displays the window of the application that was active immediately before a certain application is terminated. Processing to display in the front, and processing to switch the window displayed in the foreground from application A to application B when a certain application A calls another application B are automatically performed. .

共通サービス130〜13nは、コンピュータ100が備えているハードウェアおよびソフトウェアの機能を提供するサービスモジュールである。提供する機能の例としては、外部メモリ106や通信装置108等のハードウェアへアクセスする機能、日本語変換機能等のソフトウェアモジュールへアクセスする機能、動画再生機能等がある。   The common services 130 to 13n are service modules that provide functions of hardware and software included in the computer 100. Examples of functions to be provided include a function for accessing hardware such as the external memory 106 and the communication device 108, a function for accessing a software module such as a Japanese language conversion function, and a moving image playback function.

連携対象アプリケーション150〜15nは、アプリケーション140以外のコンピュータ100上で動作しているアプリケーションである。   The cooperation target applications 150 to 15n are applications running on the computer 100 other than the application 140.

連携用ライブラリ160は、ライブラリ関数としての基本的な機能に加えて、処理中継手段170〜17m、終了検出手段180〜18mおよび終了処理代行手段190〜19mを含んで構成される。1つの処理中継手段に対して、1つの終了検出手段と1つの終了処理代行手段とが組になる。   The cooperation library 160 includes processing relay means 170 to 17m, end detection means 180 to 18m, and end processing proxy means 190 to 19m in addition to the basic functions as library functions. One end detecting unit and one end processing proxy unit are paired with respect to one processing relay unit.

処理中継手段170〜17mは、アプリケーション140が連携用ライブラリ160を用いて、アプリケーション管理システム120もしくは、共通サービス130〜13nもしくは、連携対象アプリケーション150〜15nと連携処理を行っているときに、連携用ライブラリ160内部でアプリケーション140とその連携先とのやり取りをプロセス間通信等の手段により中継するように動作するモジュールである。アプリケーション140が現在連携用ライブラリ160を用いて連携中の連携先モジュールの数だけ、処理中継手段170〜17mは存在する。   The processing relay means 170 to 17m are used for cooperation when the application 140 performs cooperation processing with the application management system 120, the common services 130 to 13n, or the cooperation target applications 150 to 15n using the cooperation library 160. This is a module that operates to relay the exchange between the application 140 and its cooperation destination in the library 160 by means such as interprocess communication. There are as many processing relay units 170 to 17m as the number of cooperation destination modules with which the application 140 is currently cooperating using the cooperation library 160.

終了検出手段180〜18mは、対応する処理中継手段170〜17m内での中継処理を監視し、中継処理が正常な手続きを経ることなく切断されることにより、アプリケーション140の異常終了を検出するように動作するモジュールである。   The end detection means 180 to 18m monitor the relay processing in the corresponding processing relay means 170 to 17m, and detect the abnormal end of the application 140 by disconnecting the relay processing without passing through a normal procedure. It is a module that operates on.

終了処理代行手段190〜19mは、対応する終了検出手段180〜18mがアプリケーション140の異常終了を検出すると、アプリケーション140と連携中の連携先モジュールに対し、終了処理の代行を行うように動作するモジュールである。   When the corresponding end detection means 180-18m detects the abnormal end of the application 140, the end processing proxy means 190-19m operates to perform the end processing proxy for the cooperation destination module in cooperation with the application 140. It is.

次に、本実施の形態の動作について詳細に説明する。   Next, the operation of the present embodiment will be described in detail.

アプリケーション140は、連携用ライブラリ160を利用して、アプリケーション管理システム120や、共通サービス130〜130n、連携対象アプリケーション150〜15nと連携処理を行う。   The application 140 uses the cooperation library 160 to perform cooperation processing with the application management system 120, the common services 130 to 130n, and the cooperation target applications 150 to 15n.

アプリケーション140とアプリケーション管理システム120との連携の例としては、アプリケーション140の起動時にアプリケーション140に属するウィンドウを他のアプリケーションのウィンドウよりも表示装置101の表示画面の前面に表示させる操作や、他の優先度が高いアプリケーションが起動されたり、アプリケーション140が連携対象アプリケーション150〜15nのいずれかのアプリケーションを呼び出した際に、そのアプリケーションのウィンドウを最前面に表示するとともに、アプリケーション140のウィンドウを背後に移動させたり、非表示状態にする操作がある。   Examples of cooperation between the application 140 and the application management system 120 include an operation for displaying a window belonging to the application 140 in front of the display screen of the display device 101 over other application windows when the application 140 is activated, or other priorities. When a high-level application is started or the application 140 calls one of the cooperation target applications 150 to 15n, the window of the application is displayed in the foreground and the window of the application 140 is moved to the back. There are operations to hide or display.

アプリケーション140と共通サービス130〜13nとの連携の例としては、コンピュータ100が備えているハードウェア及びソフトウェア機能(日本語変換処理サービスや、通信機能、動画再生機能等)を利用するために、アプリケーション140が共通サービス130〜13nを呼び出すといったものがある。   As an example of cooperation between the application 140 and the common services 130 to 13n, in order to use hardware and software functions (Japanese conversion processing service, communication function, video playback function, etc.) provided in the computer 100, an application 140 calls the common services 130 to 13n.

アプリケーション140と連携対象アプリケーション150〜15nとの連携の例としては、例えばブラウザソフト上でメールアドレスをユーザが選択することにより、選択されたメールアドレスを引数としてメールソフトを起動するような例がある。   As an example of cooperation between the application 140 and the cooperation target applications 150 to 15n, for example, when the user selects a mail address on the browser software, the mail software is started with the selected mail address as an argument. .

このようにアプリケーション140は、連携用ライブラリ160を利用して、上に挙げた任意の連携先モジュールと随時連係動作を行うことができる。連携用ライブラリ160は、それぞれの連携先モジュールからは独立したライブラリとして実装されるものであり、通常のコンピュータにおけるOSやミドルウェアが備えるAPI(Application Program Interface)に相当するものである。また連携用ライブラリ160が基本的に備える機能としては、例えば処理のOPEN、CLOSE動作や、データのREAD、WRITE動作といった汎用的なものから、モジュール固有の機能といったものがある。   As described above, the application 140 can perform the linkage operation with any of the above-described cooperation destination modules using the cooperation library 160 as needed. The cooperation library 160 is implemented as a library independent of each cooperation destination module, and corresponds to an API (Application Program Interface) provided in an OS or middleware in a normal computer. The functions that the linkage library 160 basically has include, for example, general functions such as processing OPEN and CLOSE operations, data READ and WRITE operations, and module-specific functions.

処理中継手段170〜17mは、連携用ライブラリ160内部で動作し、アプリケーション140とその連携先モジュール一組の連携につき一個の処理中継手段が動作する。処理中継手段170〜17mは、例えばTCP/IP等のプロセス間通信手段を用いて、アプリケーション140と連携先モジュールとの間の連携用メッセージ(処理のタイプ、データ内容等)のやり取りを送受信する。   The processing relay means 170 to 17m operate within the cooperation library 160, and one processing relay means operates for cooperation between the application 140 and a set of cooperation destination modules. The processing relay units 170 to 17m transmit and receive exchanges of cooperation messages (processing type, data contents, etc.) between the application 140 and the cooperation destination module using, for example, interprocess communication means such as TCP / IP.

ここで、アプリケーション140及び連携先モジュールが利用するのはあくまで連携用ライブラリ160であり、その内部で動作している処理中継手段170〜17mには直接アクセスしないので、本発明のシステムを適用する場合に、従来のアプリケーションや共通サービス、アプリケーション管理システムを修正する必要はない。   Here, the application 140 and the cooperation destination module use only the cooperation library 160 and do not directly access the processing relay means 170 to 17m operating therein, so that the system of the present invention is applied. No need to modify traditional applications, common services, or application management systems.

以降、アプリケーション140が異常終了した場合の動作について説明する。   Hereinafter, an operation when the application 140 is abnormally terminated will be described.

まず、アプリケーション140が或る連携先モジュールと連携動作中に、何らかの原因により異常終了したとする(図3のステップA1)。ここでは、アプリケーション140は、アプリケーション管理システム120、共通サービス130、連携対象アプリケーション150の3つの連携先モジュールと連携動作中であったとする。この場合、それぞれとの連携に対して、連携用ライブラリ160内で処理中継手段170〜173が動作している。   First, it is assumed that the application 140 is abnormally terminated for some reason during a cooperation operation with a certain cooperation destination module (step A1 in FIG. 3). Here, it is assumed that the application 140 is operating in cooperation with the three cooperation destination modules of the application management system 120, the common service 130, and the cooperation target application 150. In this case, the processing relay units 170 to 173 operate in the cooperation library 160 for the cooperation with each of them.

アプリケーション140の異常終了により、処理中継手段170〜173内のプロセス間通信の接続がそれぞれ切断される(ステップA2)。   Due to the abnormal termination of the application 140, the connection of the interprocess communication in the processing relay means 170 to 173 is disconnected (step A2).

これにより、終了検出手段180〜183はアプリケーション140の異常終了を検知する(ステップA3)。   As a result, the end detection means 180 to 183 detect the abnormal end of the application 140 (step A3).

終了検出手段180〜183がアプリケーション140の異常終了を検知すると、終了処理代行手段190〜193は、アプリケーション140に代わって、それぞれの連携先モジュールに対して終了処理を行う(ステップA4)。   When the end detection means 180 to 183 detect the abnormal end of the application 140, the end processing proxy means 190 to 193 performs end processing on each cooperation destination module in place of the application 140 (step A4).

この終了処理の具体的内容としては、いくつか考えられる。まず一つは、連携先モジュールに対して予め決められた終了メッセージを送る終了通知手段を終了処理代行手段190〜19m内に備え、そのメッセージを受け取った連携先モジュール側で適切な終了処理をそれぞれ行うという方法である。   There are several specific contents of the termination process. First, an end notification means for sending a predetermined end message to the cooperation destination module is provided in the end processing proxy means 190 to 19m, and appropriate end processing is performed on the cooperation destination module side that has received the message. It is a method of doing.

二つ目の方法としては、終了処理代行手段190〜19m内で、それぞれの連携先モジュールに応じた終了処理を予め実装した終了手続き代行手段を備え、異常終了したアプリケーション140の代わりにこの終了手続き代行手段を用いて終了処理を行う方法である。   As a second method, in the termination processing proxy means 190 to 19m, a termination procedure proxy means in which termination processing corresponding to each cooperation destination module is mounted in advance is provided, and this termination procedure is performed instead of the abnormally terminated application 140. This is a method of performing termination processing using a proxy means.

その他の方法としては、各連携先が、自身の終了処理を記述した関数を予め準備しておき、終了処理代行手段190〜19m内に備える終了処理コード実行手段に対して登録するという手法も考えられる。この場合、アプリケーションの異常終了が検知されると、終了処理代行手段190〜19mは、終了代行処理を行う対象の連携先モジュールに応じて終了処理コード実行手段に登録されていた終了処理を呼び出すことで、終了処理の代行を実行する。   As another method, a method may be considered in which each cooperation destination prepares a function describing its own end process in advance and registers it with the end process code execution means provided in the end process proxy means 190 to 19m. It is done. In this case, when the abnormal termination of the application is detected, the termination processing proxy unit 190 to 19m calls the termination process registered in the termination processing code execution unit in accordance with the cooperation destination module that performs the termination proxy processing. Then, the termination process is performed.

次に、本実施の形態の効果について説明する。   Next, the effect of this embodiment will be described.

本実施の形態によれば、処理中継手段170〜17mと終了検出手段180〜18mが連携してアプリケーション140の異常終了を検出し、終了処理代行手段190〜19mが異常終了したアプリケーション140の代わりに正常な終了処理を行うというように構成されているため、異常終了したアプリケーション140と連係動作中のアプリケーション管理システム120や共通サービス130〜13n、連携対象アプリケーション150〜15nに対して悪影響を与えることを防ぐことができる。具体的には、画面表示がフリーズしたり、該当サービスが使用中状態のままになる等の事態を防止することができる。   According to the present embodiment, the process relay means 170 to 17m and the end detection means 180 to 18m cooperate to detect the abnormal end of the application 140, and the end processing proxy means 190 to 19m instead of the application 140 that ended abnormally. Since it is configured to perform normal termination processing, the application management system 120, the common services 130 to 13n, and the cooperation target applications 150 to 15n that are operating in cooperation with the abnormally terminated application 140 are adversely affected. Can be prevented. Specifically, it is possible to prevent such a situation that the screen display freezes or the corresponding service remains in use.

また本実施の形態によれば、さらに、連携用ライブラリ160内部に処理中継手段170〜17m、終了検出手段180〜18m、終了処理代行手段190〜19mを配置するというように構成されているため、本発明をコンピュータに適用する場合に既存のアプリケーション、共通サービス、アプリケーション管理システムに対して修正を加える必要がない。   Further, according to the present embodiment, the processing relay unit 170 to 17m, the end detection unit 180 to 18m, and the end processing proxy unit 190 to 19m are arranged in the cooperation library 160. When the present invention is applied to a computer, it is not necessary to modify existing applications, common services, and application management systems.

『第2の実施の形態』
次に本発明の第2の実施の形態について図面を参照して詳細に説明する。第2の実施の形態にかかるコンピュータのハードウェア構成は、図1に示した第1の実施の形態にかかるコンピュータと同じである。また、第2の実施の形態にかかるコンピュータのソフトウェア構成は、連携用ライブラリ160および連携先記憶データベース200を除き、図2に示した第2の実施の形態のソフトウェア構成と同じである。
“Second Embodiment”
Next, a second embodiment of the present invention will be described in detail with reference to the drawings. The hardware configuration of the computer according to the second embodiment is the same as that of the computer according to the first embodiment shown in FIG. The software configuration of the computer according to the second embodiment is the same as the software configuration of the second embodiment shown in FIG. 2 except for the linkage library 160 and the linkage destination storage database 200.

図4を参照すると、連携用ライブラリ160は、1組の処理中継手段170、終了検出手段180および終了処理代行手段190とを含んで構成される。   Referring to FIG. 4, the cooperation library 160 includes a set of processing relay unit 170, end detection unit 180, and end processing proxy unit 190.

連携先記憶データベース200は、アプリケーション140が連携用ライブラリ160を用いて、アプリケーション管理システム120もしくは、共通サービス130〜13nもしくは、連携対象アプリケーション150〜15nと連携処理を行っているときに、実際に連携状態にある相手の情報を一時的に記憶する。連携先記憶データベース200に記憶された連携先の情報は、その連携が終了すると、削除される。   The cooperation destination storage database 200 actually cooperates when the application 140 performs cooperation processing with the application management system 120, the common services 130 to 13n, or the cooperation target applications 150 to 15n using the cooperation library 160. Temporarily store information on the other party in the state. The information on the cooperation destination stored in the cooperation destination storage database 200 is deleted when the cooperation is completed.

処理中継手段170は、アプリケーション140が連携用ライブラリ160を用いて、アプリケーション管理システム120もしくは、共通サービス130〜13nもしくは、連携対象アプリケーション150〜15nと連携処理を行っているときに、連携用ライブラリ160内部でアプリケーション140と全連携先とのやり取りをプロセス間通信等の手段により中継し、連携先の情報を連携先記憶データベース200に記憶するように動作する。   The processing relay unit 170 uses the cooperation library 160 when the application 140 performs cooperation processing with the application management system 120, the common services 130 to 13n, or the cooperation target applications 150 to 15n. Internally, the communication between the application 140 and all the cooperation destinations is relayed by means such as interprocess communication, and the information of the cooperation destinations is stored in the cooperation destination storage database 200.

終了検出手段180は、処理中継手段170内での中継処理を監視し、中継処理が正常な手続きを経ることなく切断されることにより、アプリケーション140の異常終了を検出するように動作する。   The end detection unit 180 operates to detect an abnormal end of the application 140 by monitoring the relay process in the process relay unit 170 and disconnecting the relay process without going through a normal procedure.

終了処理代行手段190は、終了処理検出手段180がアプリケーション140の異常終了を検出すると、連携先記憶データベース200に記憶されたアプリケーション140の全連携先の情報を取得し、それら全連携先に対し、終了処理の代行を行うように動作する。   When the termination process detection unit 180 detects the abnormal termination of the application 140, the termination processing proxy unit 190 acquires information on all the collaboration destinations of the application 140 stored in the collaboration destination storage database 200, and for all the collaboration destinations, Operates to act as a substitute for termination processing.

このように第2の実施の形態は、第1の実施の形態において各連携毎にそれぞれ複数個準備していた処理中継手段170〜17m、終了検出手段180〜18mおよび終了処理代行手段190〜19mを、全ての連携先で共通に使用する処理中継手段170、終了検出手段180、終了処理代行手段190とし、連携相手の情報を連携先記憶データベース200に記憶しておく構成にしたものである。   As described above, in the second embodiment, a plurality of processing relay means 170 to 17m, end detection means 180 to 18m, and end processing proxy means 190 to 19m prepared for each cooperation in the first embodiment. Are used as a processing relay unit 170, an end detection unit 180, and an end processing proxy unit 190 that are commonly used by all the cooperation destinations, and the information of the cooperation partner is stored in the cooperation destination storage database 200.

図5を参照すると、本発明の第1の実施の形態にかかる実施例1では、処理中継手段170は、アプリケーション140から関数呼び出しによって呼び出されるサブモジュールAと、このサブモジュールAとプロセス間通信によりメッセージの授受を行い、アプリケーション140に代わって連携対象アプリケーション150に対し関数呼び出しを行うサブモジュールBとを含んで構成される。また終了検出手段180は、サブモジュールAとサブモジュールBとの間のプロセス間通信が正常な手続きを経ることなく切断された場合、アプリケーション140の異常終了と判定する機能を持つ。さらに、終了処理代行手段190は、サブモジュールBを通じて連携対象アプリケーション150に対する終了処理を行う機能を持つ。   Referring to FIG. 5, in Example 1 according to the first exemplary embodiment of the present invention, the processing relay unit 170 includes a submodule A called by a function call from the application 140, and communication between the submodule A and the process. It includes a sub-module B that exchanges messages and makes a function call to the cooperation target application 150 in place of the application 140. The end detection unit 180 has a function of determining that the application 140 has ended abnormally when the interprocess communication between the submodule A and the submodule B is disconnected without passing through a normal procedure. Further, the termination processing proxy unit 190 has a function of performing termination processing on the cooperation target application 150 through the submodule B.

アプリケーション140が、連携対象アプリケーション150の機能を利用するとき、連携用ライブラリ160に格納された連携対象アプリケーション150の機能を利用する関数(例:lib_apA_func1())を呼び出す。   When the application 140 uses the function of the cooperation target application 150, the application 140 calls a function (eg, lib_apA_func1 ()) that uses the function of the cooperation target application 150 stored in the cooperation library 160.

lib_apA_func1()内部(つまり連携用ライブラリ内部)では、処理中継手段170がプロセス間通信を使って、サブモジュールAからサブモジュールBに呼び出しの内容を送信する。次に、サブモジュールBがこれを受信したときに、連携対象アプリケーション150の機能を呼び出す関数(例:apA_func1())を実際に呼び出す。ここで、サブモジュールAおよびサブモジュールBはいずれも処理中継手段170を構成するサブモジュールであるが、サブモジュールAはアプリケーション140から関数として呼び出されているためにアプリケーション140と同じプロセスになり、サブモジュールBはアプリケーション140とは別のプロセスになる。   Inside lib_apA_func1 () (that is, inside the linkage library), the processing relay unit 170 transmits the contents of the call from the submodule A to the submodule B using interprocess communication. Next, when the submodule B receives this, it actually calls a function (for example, apA_func1 ()) that calls the function of the cooperation target application 150. Here, both the submodule A and the submodule B are submodules constituting the processing relay unit 170. However, since the submodule A is called as a function from the application 140, it becomes the same process as the application 140. Module B is a separate process from application 140.

関数呼び出しを受けた連携対象アプリケーション150は、必要な処理を実行し、処理の返り値を返す(関数リターン)。この処理の返り値は、関数呼び出しのときの順序とは逆に、サブモジュールBからプロセス間通信によってサブモジュールAに送信され、サブモジュールAからアプリケーション140に関数リターンで渡される。   Upon receiving the function call, the cooperation target application 150 executes a necessary process and returns a return value of the process (function return). The return value of this process is transmitted from the submodule B to the submodule A by inter-process communication, and is passed from the submodule A to the application 140 as a function return, in the reverse order to the function call.

以上のような呼び出し処理中に、アプリケーション140が異常終了すると、アプリケーション140と同じプロセスであるサブモジュールAも終了し、サブモジュールAとサブモジュールB間のプロセス間通信が切断される。これを終了検出手段180が検出し、終了処理代行手段190で終了処理を行う。連携対象アプリケーション150の呼び出し元はサブモジュールBであり、アプリケーション140が異常終了しても、それとは別のプロセスであるサブモジュールBは終了しないので、終了処理代行手段190は、サブモジュールBを通じて連携対象アプリケーション150に対して終了処理を行う。   If the application 140 terminates abnormally during the calling process as described above, the submodule A that is the same process as the application 140 is also terminated, and the interprocess communication between the submodule A and the submodule B is disconnected. This is detected by the end detection means 180, and the end processing proxy means 190 performs the end processing. The calling source of the cooperation target application 150 is the submodule B, and even if the application 140 terminates abnormally, the submodule B, which is a different process, does not terminate. Therefore, the termination processing agent 190 cooperates through the submodule B. End processing is performed on the target application 150.

本実施例1では、呼び出すサービスや連携対象アプリケーションそれぞれ毎に、処理中継手段170、終了検出手段180および終了処理代行手段190を備えるようにした。第2の実施の形態にかかる実施例2では、1つの処理中継手段を使ってアプリケーション140と全ての連携先とのやりとりを行う。そのため実施例2では、現在処理中の連携先を覚えておくための連携先記憶データベース200が存在し、アプリケーション140が異常終了した場合は、この連携先記憶データベース200に記憶されている連携先全てに対して、終了処理代行手段による終了処理が実行される。   In the first embodiment, the processing relay unit 170, the end detection unit 180, and the end processing proxy unit 190 are provided for each service to be called and the cooperation target application. In Example 2 according to the second embodiment, the application 140 and all the cooperation destinations are exchanged using one processing relay unit. Therefore, in the second embodiment, when the cooperation destination storage database 200 for remembering the cooperation destination currently being processed exists and the application 140 is abnormally terminated, all the cooperation destinations stored in the cooperation destination storage database 200 are stored. On the other hand, the termination processing by the termination processing proxy means is executed.

本発明によれば、アプリケーションの異常終了が、コンピュータ端末の安定動作に対して悪影響を与えるのを防ぐといった用途に適用できる。   According to the present invention, the present invention can be applied to an application in which abnormal termination of an application is prevented from adversely affecting the stable operation of a computer terminal.

本発明の第1の実施の形態にかかるコンピュータのハードウェア構成例を示すブロック図である。It is a block diagram which shows the hardware structural example of the computer concerning the 1st Embodiment of this invention. 本発明の第1の実施の形態にかかるコンピュータのソフトウェア構成例を示すブロック図である。It is a block diagram which shows the software structural example of the computer concerning the 1st Embodiment of this invention. 本発明の第1の実施の形態の動作を示す流れ図である。It is a flowchart which shows the operation | movement of the 1st Embodiment of this invention. 本発明の第2の実施の形態にかかるコンピュータのソフトウェア構成例を示すブロック図である。It is a block diagram which shows the software structural example of the computer concerning the 2nd Embodiment of this invention. 本発明の第1の実施の形態の実施例のブロック図である。It is a block diagram of the Example of the 1st Embodiment of this invention.

符号の説明Explanation of symbols

100…コンピュータ
101…表示装置
102…CPU
103…RAM
104…ROM
105…HDD
106…外部メモリ
107…出力装置
108…通信装置
109…入力装置
110…OS
120…アプリケーション管理システム
130〜13n…共通サービス
140…アプリケーション
150〜15n…連携対象アプリケーション
160…連携用ライブラリ
170〜17m…処理中継手段
180〜18m…終了検出手段
190〜19m…終了処理代行手段
200…連携先記憶データベース
300…バス
DESCRIPTION OF SYMBOLS 100 ... Computer 101 ... Display apparatus 102 ... CPU
103 ... RAM
104 ... ROM
105 ... HDD
106 ... External memory 107 ... Output device 108 ... Communication device 109 ... Input device 110 ... OS
DESCRIPTION OF SYMBOLS 120 ... Application management system 130-13n ... Common service 140 ... Application 150-15n ... Cooperation object application 160 ... Cooperation library 170-17m ... Process relay means 180-18m ... End detection means 190-19m ... End process agency means 200 ... Cooperation destination storage database 300 ... Bus

Claims (21)

アプリケーションプログラムが連携先モジュールとメッセージを授受して連携動作するコンピュータにおけるアプリケーション異常終了処理システムにおいて、
前記アプリケーションプログラムと連携先モジュールとの間のメッセージの授受を中継する処理中継手段と、
該処理中継手段で行われている前記アプリケーションプログラムと連携先モジュールとの間のメッセージの授受の中継処理が正常な手続きを経ることなく切断された場合に、前記アプリケーションプログラムが異常終了したものと判定する終了検出手段と、
前記アプリケーションプログラムの異常終了が前記終了検出手段で判定された場合に、前記アプリケーションプログラムに代わって前記処理中継手段を通じて前記連携先モジュールに対する終了処理を行う終了処理代行手段とを備えたことを特徴とするアプリケーション異常終了処理システム。
In an application abnormal termination processing system in a computer in which an application program exchanges messages with a cooperation destination module and operates in cooperation,
Processing relay means for relaying message exchange between the application program and the cooperation destination module;
It is determined that the application program has ended abnormally when relay processing for message exchange between the application program and the cooperation destination module performed by the processing relay unit is disconnected without passing through normal procedures. End detection means for
A termination processing proxy unit that performs termination processing on the cooperation destination module through the processing relay unit instead of the application program when the termination detection unit determines that the application program is abnormally terminated; Application abnormal termination processing system.
前記処理中継手段は、前記アプリケーションプログラムによって呼び出される第1のサブモジュールと、該第1のサブモジュールとプロセス間通信によりメッセージの授受を行い且つ前記連携先モジュールを呼び出す第2のサブモジュールとを含んで構成され、前記終了検出手段は、前記第1のサブモジュールと前記第2のサブモジュールとの間のプロセス間通信が正常な手続きを経ることなく切断された場合に前記アプリケーションプログラムの異常終了と判定し、前記終了処理代行手段は、前記第2のサブモジュールを通じて前記連携先モジュールに対する終了処理を行うことを特徴とする請求項1記載のアプリケーション異常終了処理システム。   The processing relay means includes a first submodule called by the application program, and a second submodule that exchanges messages with the first submodule through interprocess communication and calls the cooperation destination module. The end detection means is configured to detect abnormal termination of the application program when inter-process communication between the first submodule and the second submodule is disconnected without passing through a normal procedure. 2. The application abnormal termination processing system according to claim 1, wherein the termination processing proxy means performs termination processing on the cooperation destination module through the second submodule. 前記処理中継手段は、前記アプリケーションプログラムとその各連携先モジュールとの間に1つずつ配置されることを特徴とする請求項1記載のアプリケーション異常終了処理システム。   The application abnormal termination processing system according to claim 1, wherein the processing relay unit is arranged one by one between the application program and each cooperation destination module. 前記処理中継手段は、前記アプリケーションプログラムとその全ての連携先モジュールとの間のメッセージの授受を中継し、且つ、現在連携している連携先モジュールの情報を連携先記憶データベースに保存することを特徴とする請求項1記載のアプリケーション異常終了処理システム。   The processing relay unit relays the exchange of messages between the application program and all of the cooperation destination modules, and stores information on the cooperation destination modules currently in cooperation in a cooperation destination storage database. The application abnormal termination processing system according to claim 1. 前記終了処理代行手段は、異常終了したアプリケーションの連携先モジュールに対して、前記アプリケーションが終了したことを知らせるメッセージを送信することを特徴とする請求項1乃至4の何れか1項に記載のアプリケーション異常終了処理システム。   5. The application according to claim 1, wherein the termination processing proxy unit transmits a message informing the termination of the application to the cooperation destination module of the application that has terminated abnormally. Abnormal termination processing system. 前記終了処理代行手段は、異常終了したアプリケーションの連携先モジュールに対して、前記アプリケーションの代わりに正常な終了手続きを代行して行うことを特徴とする請求項1乃至4の何れか1項に記載のアプリケーション異常終了処理システム。   5. The termination processing agent means performs a normal termination procedure on behalf of the application for the cooperation destination module of the abnormally terminated application instead of the application. Application abnormal termination processing system. 前記終了処理代行手段は、連携先モジュールに対応する異常終了処理用コードを予め記憶し、異常終了発生時には異常終了したアプリケーションの連携先モジュールに対して、前記記憶されている異常終了処理用コードを呼び出して実行することを特徴とする請求項1乃至4の何れか1項に記載のアプリケーション異常終了処理システム。   The termination processing proxy means stores in advance an abnormal termination processing code corresponding to the cooperation destination module, and when the abnormal termination occurs, the stored abnormal termination processing code is stored in the cooperation destination module of the abnormally terminated application. 5. The application abnormal termination processing system according to claim 1, wherein the application abnormal termination processing system is called and executed. アプリケーションプログラムが連携先モジュールとメッセージを授受して連携動作するコンピュータにおけるアプリケーション異常終了処理方法において、
処理中継手段が、前記アプリケーションプログラムと連携先モジュールとの間のメッセージの授受を中継し、
終了検出手段が、前記処理中継手段で行われている前記アプリケーションプログラムと連携先モジュールとの間のメッセージの授受の中継処理が正常な手続きを経ることなく切断された場合に、前記アプリケーションプログラムが異常終了したものと判定し、
終了処理代行手段が、前記アプリケーションプログラムの異常終了が前記終了検出手段で判定された場合に、前記アプリケーションプログラムに代わって前記処理中継手段を通じて前記連携先モジュールに対する終了処理を行うことを特徴とするアプリケーション異常終了処理方法。
In the application abnormal termination processing method in the computer in which the application program exchanges messages with the cooperation destination module and cooperates,
The processing relay means relays message exchange between the application program and the cooperation destination module,
If the end detection means disconnects the message exchange relay process between the application program and the cooperation destination module performed by the process relay means without going through a normal procedure, the application program is abnormal. Judge that it was finished,
An end processing agent means performs an end process for the cooperation destination module through the processing relay means instead of the application program when the abnormal end of the application program is determined by the end detection means. Abnormal termination processing method.
前記処理中継手段は、前記アプリケーションプログラムによって呼び出される第1のサブモジュールと、該第1のサブモジュールとプロセス間通信によりメッセージの授受を行い且つ前記連携先モジュールを呼び出す第2のサブモジュールとを含んで構成され、前記終了検出手段は、前記第1のサブモジュールと前記第2のサブモジュールとの間のプロセス間通信が正常な手続きを経ることなく切断された場合に前記アプリケーションプログラムの異常終了と判定し、前記終了処理代行手段は、前記第2のサブモジュールを通じて前記連携先モジュールに対する終了処理を行うことを特徴とする請求項8記載のアプリケーション異常終了処理方法。   The processing relay means includes a first submodule called by the application program, and a second submodule that exchanges messages with the first submodule through interprocess communication and calls the cooperation destination module. The end detection means is configured to detect abnormal termination of the application program when inter-process communication between the first submodule and the second submodule is disconnected without passing through a normal procedure. 9. The application abnormal termination processing method according to claim 8, wherein the termination processing proxy means performs termination processing on the cooperation destination module through the second submodule. 前記処理中継手段は、前記アプリケーションプログラムとその各連携先モジュールとの間に1つずつ配置されることを特徴とする請求項8記載のアプリケーション異常終了処理方法。   9. The application abnormal termination processing method according to claim 8, wherein the processing relay unit is arranged one by one between the application program and each cooperation destination module. 前記処理中継手段は、前記アプリケーションプログラムとその全ての連携先モジュールとの間のメッセージの授受を中継し、且つ、現在連携している連携先モジュールの情報を連携先記憶データベースに保存することを特徴とする請求項8記載のアプリケーション異常終了処理方法。   The processing relay unit relays the exchange of messages between the application program and all of the cooperation destination modules, and stores information on the cooperation destination modules currently in cooperation in a cooperation destination storage database. The application abnormal termination processing method according to claim 8. 前記終了処理代行手段は、異常終了したアプリケーションの連携先モジュールに対して、前記アプリケーションが終了したことを知らせるメッセージを送信することを特徴とする請求項8乃至11の何れか1項に記載のアプリケーション異常終了処理方法。   The application according to any one of claims 8 to 11, wherein the termination processing proxy means transmits a message notifying that the application is terminated to a cooperation destination module of the application that has terminated abnormally. Abnormal termination processing method. 前記終了処理代行手段は、異常終了したアプリケーションの連携先モジュールに対して、前記アプリケーションの代わりに正常な終了手続きを代行して行うことを特徴とする請求項8乃至11の何れか1項に記載のアプリケーション異常終了処理方法。   12. The termination processing agent means performs a normal termination procedure on behalf of the application for the cooperation destination module of the abnormally terminated application instead of the application. Application abnormal termination processing method. 前記終了処理代行手段は、連携先モジュールに対応する異常終了処理用コードを予め記憶し、異常終了発生時には異常終了したアプリケーションの連携先モジュールに対して、前記記憶されている異常終了処理用コードを呼び出して実行することを特徴とする請求項8乃至11の何れか1項に記載のアプリケーション異常終了処理方法。   The termination processing proxy means stores in advance an abnormal termination processing code corresponding to the cooperation destination module, and when the abnormal termination occurs, the stored abnormal termination processing code is stored in the cooperation destination module of the abnormally terminated application. The application abnormal termination processing method according to any one of claims 8 to 11, wherein the application abnormal termination processing method is called and executed. アプリケーションプログラムが連携先モジュールとメッセージを授受して連携動作するコンピュータを、
前記アプリケーションプログラムと連携先モジュールとの間のメッセージの授受を中継する処理中継手段、
該処理中継手段で行われている前記アプリケーションプログラムと連携先モジュールとの間のメッセージの授受の中継処理が正常な手続きを経ることなく切断された場合に、前記アプリケーションプログラムが異常終了したものと判定する終了検出手段、
前記アプリケーションプログラムの異常終了が前記終了検出手段で判定された場合に、前記アプリケーションプログラムに代わって前記処理中継手段を通じて前記連携先モジュールに対する終了処理を行う終了処理代行手段、
として機能させるためのプログラム。
A computer in which application programs exchange messages with the cooperation destination module
Processing relay means for relaying message exchange between the application program and the cooperation destination module;
It is determined that the application program has ended abnormally when relay processing for message exchange between the application program and the cooperation destination module performed by the processing relay unit is disconnected without passing through normal procedures. End detection means to
A termination processing proxy unit that performs termination processing on the cooperation destination module through the processing relay unit instead of the application program when the termination detection unit determines that the application program has ended abnormally;
Program to function as.
前記処理中継手段は、前記アプリケーションプログラムによって呼び出される第1のサブモジュールと、該第1のサブモジュールとプロセス間通信によりメッセージの授受を行い且つ前記連携先モジュールを呼び出す第2のサブモジュールとを含んで構成され、前記終了検出手段は、前記第1のサブモジュールと前記第2のサブモジュールとの間のプロセス間通信が正常な手続きを経ることなく切断された場合に前記アプリケーションプログラムの異常終了と判定し、前記終了処理代行手段は、前記第2のサブモジュールを通じて前記連携先モジュールに対する終了処理を行うことを特徴とする請求項15記載のプログラム。   The processing relay means includes a first submodule called by the application program, and a second submodule that exchanges messages with the first submodule through interprocess communication and calls the cooperation destination module. The end detection means is configured to detect abnormal termination of the application program when inter-process communication between the first submodule and the second submodule is disconnected without passing through a normal procedure. 16. The program according to claim 15, wherein the termination processing proxy means performs termination processing on the cooperation destination module through the second submodule. 前記処理中継手段は、前記アプリケーションプログラムとその各連携先モジュールとの間に1つずつ配置されることを特徴とする請求項15記載のプログラム。   16. The program according to claim 15, wherein the processing relay unit is arranged one by one between the application program and each cooperation destination module. 前記処理中継手段は、前記アプリケーションプログラムとその全ての連携先モジュールとの間のメッセージの授受を中継し、且つ、現在連携している連携先モジュールの情報を連携先記憶データベースに保存することを特徴とする請求項15記載のプログラム。   The processing relay unit relays the exchange of messages between the application program and all of the cooperation destination modules, and stores information on the cooperation destination modules currently in cooperation in a cooperation destination storage database. The program according to claim 15. 前記終了処理代行手段は、異常終了したアプリケーションの連携先モジュールに対して、前記アプリケーションが終了したことを知らせるメッセージを送信することを特徴とする請求項15乃至18の何れか1項に記載のプログラム。   The program according to any one of claims 15 to 18, wherein the termination processing proxy means transmits a message notifying the termination of the application to the cooperation destination module of the abnormally terminated application. . 前記終了処理代行手段は、異常終了したアプリケーションの連携先モジュールに対して、前記アプリケーションの代わりに正常な終了手続きを代行して行うことを特徴とする請求項15乃至18の何れか1項に記載のプログラム。   19. The termination processing agent means performs a normal termination procedure on behalf of the application for the cooperation destination module of the abnormally terminated application instead of the application. Program. 前記終了処理代行手段は、連携先モジュールに対応する異常終了処理用コードを予め記憶し、異常終了発生時には異常終了したアプリケーションの連携先モジュールに対して、前記記憶されている異常終了処理用コードを呼び出して実行することを特徴とする請求項15乃至18の何れか1項に記載のプログラム。   The termination processing proxy means stores in advance an abnormal termination processing code corresponding to the cooperation destination module, and when the abnormal termination occurs, the stored abnormal termination processing code is stored in the cooperation destination module of the abnormally terminated application. The program according to any one of claims 15 to 18, wherein the program is called and executed.
JP2007031884A 2007-02-13 2007-02-13 Application abnormal end processing system method therefor and program Withdrawn JP2008197885A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007031884A JP2008197885A (en) 2007-02-13 2007-02-13 Application abnormal end processing system method therefor and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007031884A JP2008197885A (en) 2007-02-13 2007-02-13 Application abnormal end processing system method therefor and program

Publications (1)

Publication Number Publication Date
JP2008197885A true JP2008197885A (en) 2008-08-28

Family

ID=39756774

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007031884A Withdrawn JP2008197885A (en) 2007-02-13 2007-02-13 Application abnormal end processing system method therefor and program

Country Status (1)

Country Link
JP (1) JP2008197885A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011197827A (en) * 2010-03-17 2011-10-06 Ricoh Co Ltd Information processor, information processing method, and information processing program
JP2014235576A (en) * 2013-06-03 2014-12-15 株式会社リコー Information processing system, information processing method, and program
US9600326B2 (en) 2012-10-19 2017-03-21 Denso Corporation Information processing terminal
CN110377341A (en) * 2019-06-10 2019-10-25 北京字节跳动网络技术有限公司 A kind of method, apparatus, medium and electronic equipment of the monitoring without response abnormality

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011197827A (en) * 2010-03-17 2011-10-06 Ricoh Co Ltd Information processor, information processing method, and information processing program
US9600326B2 (en) 2012-10-19 2017-03-21 Denso Corporation Information processing terminal
DE112013005076B4 (en) 2012-10-19 2021-08-26 Denso Corporation Information processing terminal
JP2014235576A (en) * 2013-06-03 2014-12-15 株式会社リコー Information processing system, information processing method, and program
CN110377341A (en) * 2019-06-10 2019-10-25 北京字节跳动网络技术有限公司 A kind of method, apparatus, medium and electronic equipment of the monitoring without response abnormality
CN110377341B (en) * 2019-06-10 2022-05-03 北京字节跳动网络技术有限公司 Method, device, medium and electronic equipment for monitoring no-response exception

Similar Documents

Publication Publication Date Title
AU2022200023B9 (en) Method and terminal for supporting voice service and data service simultaneously
CN110750393B (en) Method, device, medium and equipment for avoiding network service double-machine hot standby brain cracking
US20130117432A1 (en) Method and device for desktop sharing processing
US20150067146A1 (en) Custom correlation of a distributed business transaction
EP2784661B1 (en) Computer program product, information processing method, and information processing apparatus
CN112019914B (en) Screen projection method and device, electronic equipment and computer readable medium
US11917103B2 (en) Cloud integration to desktop-based emergency service applications
JP2014179050A (en) Server, information processing system, and program
US20100291913A1 (en) Remote control method between mobile phones
CN109889468B (en) Network data transmission method, system, device, equipment and storage medium
JP2008197885A (en) Application abnormal end processing system method therefor and program
JP5615082B2 (en) Information processing terminal and screen switching control method
CN107438097B (en) Network request processing method and device
US8635276B2 (en) System and network terminal for IP communications
CN113329042B (en) Message processing method and system, internet of vehicles system, server and electronic equipment
CN108228359B (en) Method and system for integrating web program and R program to process data
JP2016110607A (en) Display control method
CN112217718A (en) Service processing method, device, equipment and storage medium
CN110764932A (en) Data processing method, system, medium and computing device
JP5577140B2 (en) Information processing system and information processing method
CN113179211B (en) Method and device for routing and for setting up a communication connection
JP2010176521A (en) Method and system for linking application, linking server, linking origin service server and linking destination service server
CN114385104A (en) Method, device, medium and equipment for transmitting display data between terminals
CN116633827A (en) Link state detection method, device, equipment and computer readable medium
CN115437593A (en) Information processing method, information processing apparatus, storage medium, and electronic device

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20091007

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20091007

A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100511