JP2009199166A - Information processing device, control method and program therefor - Google Patents
Information processing device, control method and program therefor Download PDFInfo
- Publication number
- JP2009199166A JP2009199166A JP2008037702A JP2008037702A JP2009199166A JP 2009199166 A JP2009199166 A JP 2009199166A JP 2008037702 A JP2008037702 A JP 2008037702A JP 2008037702 A JP2008037702 A JP 2008037702A JP 2009199166 A JP2009199166 A JP 2009199166A
- Authority
- JP
- Japan
- Prior art keywords
- resource
- access
- resource access
- value
- blocked
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、情報処理装置、その制御方法及びプログラムに関し、特に、実行中のスレッドが中断された際の処理に関する。 The present invention relates to an information processing apparatus, a control method thereof, and a program, and more particularly to processing when a running thread is interrupted.
一般に、プログラムカウンタやスタックといった、実行状態に関連する情報を持つプログラムの実行制御単位をスレッドと呼ぶ。また、プログラムコードやグローバルデータといった、プログラム全体で使われるリソースを持った実行制御単位をプロセスと呼ぶ。1つのプロセスには、1つもしくは複数のスレッドが存在する。 In general, an execution control unit of a program having information related to an execution state, such as a program counter or a stack, is called a thread. An execution control unit having resources used in the entire program, such as program code and global data, is called a process. One process has one or a plurality of threads.
ある1つのスレッドがプログラム実行中に、不正アドレス参照など該当スレッドの実行を中断せざる得ないシグナル事象をOS(オペレーティングシステム)が検出した場合、通常、OSは該当スレッドの属するプロセス配下の全スレッドの実行を中断して、プロセスを終了させる。また、利用者からOSに対してプロセスの停止が要求された場合も同様である。 When an OS (Operating System) detects a signal event that inevitably interrupts the execution of the corresponding thread, such as an illegal address reference, while a certain thread is executing a program, the OS normally has all threads under the process to which the corresponding thread belongs. Suspends execution and terminates the process. The same applies when the user requests the OS to stop the process.
ここで、複数のスレッドが並行して動作することが可能な計算機システムにおいて、複数のスレッドが同一の共有資源をアクセスする場合、共有資源の一貫性を保証するために、一貫性が保証されない危険領域(クリティカルセクション)の区間を複数のスレッドが同時に実行しないように、通常、共有資源に対応するロックを取得する。OSが提供する代表的なロック機能としては、セマフォ、Mutex Lock (Mutual exclusion lock)などがあげられる。 Here, in a computer system in which multiple threads can operate in parallel, when multiple threads access the same shared resource, there is a risk that consistency is not guaranteed in order to guarantee the consistency of shared resources. Usually, a lock corresponding to a shared resource is acquired so that a plurality of threads do not execute an area (critical section) at the same time. Typical lock functions provided by the OS include semaphores and Mutex Lock (Mutual exclusion lock).
正常にスレッドがプログラムを実行している間は、危険領域に直前でロックを取得し、危険領域を抜けた直後でロックを解放する。しかし、スレッドが危険領域の区間を実行中に、該当スレッド自身もしくは同一プロセスに属する他スレッドの実行を中断せざる得ないシグナル事象が検出された場合、該当スレッドの実行が中断され、ロックが解放されることなく残ってしまう。こうしたロックの残留が発生すると、以降、同一の共有資源のロックを取得しようとする全てのスレッドがロック取得待ちで停止してしまい、致命的なシステム障害に及ぶ可能性がある。 While the thread is executing the program normally, the lock is acquired immediately before the dangerous area, and the lock is released immediately after leaving the dangerous area. However, if a signal event is detected during which the thread itself or other thread belonging to the same process must be interrupted while the thread is executing the dangerous area, the execution of the thread is interrupted and the lock is released. It will remain without being. If such a lock remains, all threads that attempt to acquire the lock of the same shared resource will stop waiting for the lock acquisition, which may cause a fatal system failure.
本発明に関連する技術としては、特許文献1,2に記載のものがある。
特許文献1は、共有サブルーチン(プログラム)の動的置換に関する発明を開示する。特許文献1には、共有サブルーチンの置き換え中に該当共有サブルーチン(プログラムアドレス)を呼び出さないように、交換要求フラグをONとすることが記載されている。しかしながら、正常にアクセスできない資源に対する不正アクセスを防止するために、アクセス防止用フラグを設けるという技術に関するものであって、ロック残留の低減を課題としたものではなく、本発明との関連性は低い。
As techniques related to the present invention, there are those described in Patent Documents 1 and 2.
Patent Document 1 discloses an invention relating to dynamic replacement of a shared subroutine (program). Patent Document 1 describes that the exchange request flag is set to ON so that the corresponding shared subroutine (program address) is not called during replacement of the shared subroutine. However, the present invention relates to a technique for providing an access prevention flag in order to prevent unauthorized access to resources that cannot be normally accessed, and is not intended to reduce lock residuals, and is not relevant to the present invention. .
特許文献2は、複数の相互に連係して動作するプロセス群における、運用指示若しくは一部プロセスの異常終了に伴って、全プロセスを終了させる場合の終了同期処理に関する発明を開示する。特許文献2に記載の発明は、関連する全プロセスの状態を管理し、特定の管理プロセスが残りの全プロセスを停止する際の同期手順を新規に設けることを特徴としている。また、特許文献2には、関連したプロセス群の制御の改善に関する記載もある。
従来のシステムにおいては、上記のロック残留に伴うシステム障害を回避する方法として、アボートしたプロセスを再起動する際、アボートした時点でロックしていた可能性のある全ロックに関してロックの取得を試み、一定時間以内にロックの取得が完了しない場合、該当ロックが残留していると判断し、該当ロックに対応する共有資源を使用不可とする、もしくは共有資源を再作成し直す機構が用いられる。しかし、この方式の場合、ロック残留が発生したロックの数に応じてロックの検査に必要とする時間が延びるため、プロセス再起動によるシステム復旧に長時間を要する可能性がある。 In the conventional system, as a method of avoiding the system failure due to the above-mentioned lock remaining, when restarting the aborted process, an attempt is made to acquire locks for all locks that may have been locked at the time of the abort. If lock acquisition is not completed within a certain time, it is determined that the corresponding lock remains, and a mechanism that disables the shared resource corresponding to the corresponding lock or recreates the shared resource is used. However, in the case of this method, the time required for the lock inspection increases depending on the number of locks in which locks remain, and therefore it may take a long time to recover the system by restarting the process.
そこで本発明は、上記実情に鑑みて、資源アクセス中断によるロック残留の発生を低減することを目的とする。 In view of the above circumstances, an object of the present invention is to reduce the occurrence of lock residue due to interruption of resource access.
上記目的を達成するために本発明は、以下の特徴を有する。 In order to achieve the above object, the present invention has the following features.
本発明に係る情報処理装置は、実行中のプロセスの資源へのアクセスが閉塞しているか否かという情報を示す値を備える資源アクセス閉塞フラグと、前記プロセス中の任意のスレッドで障害が発生した場合に発せられるシグナルを捕捉するシグナル捕捉処理手段と、該シグナル捕捉処理手段がシグナルを捕捉した場合に、前記資源アクセス閉塞フラグの値をアクセスが閉塞していることを示す情報の値に設定する資源アクセス閉塞設定手段と、実行中のプロセス内のスレッドが前記プロセスの資源へアクセスする際に、前記資源アクセス閉塞フラグの値を調べることによって、前記資源へのアクセスが閉塞しているか否かを判定する資源アクセス閉塞判定手段と、を有することを特徴とする。 In the information processing apparatus according to the present invention, a failure has occurred in a resource access block flag having a value indicating whether or not access to a resource of a process being executed is blocked, and an arbitrary thread in the process A signal capture processing means for capturing a signal emitted in the case, and when the signal capture processing means captures a signal, the value of the resource access block flag is set to a value of information indicating that the access is blocked Whether the access to the resource is blocked by checking the value of the resource access block flag when the resource access block setting means and the thread in the process being executed access the resource of the process. Resource access blockage determining means for determining.
本発明に係る情報処理装置の制御方法は、実行中のプロセスの資源へのアクセスが閉塞しているか否かという情報を示す値を備える資源アクセス閉塞フラグを有する情報処理装置の制御方法であって、前記プロセス中の任意のスレッドで障害が発生した場合に発せられるシグナルを捕捉するシグナル捕捉処理工程と、該シグナル捕捉処理工程によりシグナルが捕捉された場合に、前記資源アクセス閉塞フラグの値をアクセスが閉塞していることを示す情報の値に設定する資源アクセス閉塞設定工程と、実行中のプロセス内のスレッドが前記プロセスへアクセスする際に、前記資源アクセス閉塞フラグの値を調べることによって、前記資源へのアクセスが閉塞しているか否かを判定する資源アクセス閉塞判定工程と、を含むことを特徴とする。 A method for controlling an information processing apparatus according to the present invention is a method for controlling an information processing apparatus having a resource access block flag having a value indicating whether or not access to a resource of a process being executed is blocked. , A signal capture processing step for capturing a signal emitted when a failure occurs in an arbitrary thread in the process, and the value of the resource access block flag is accessed when the signal is captured by the signal capture processing step A resource access blockage setting step for setting a value of information indicating that the block is blocked, and by checking a value of the resource access blockage flag when a thread in an executing process accesses the process, And a resource access blockage determining step for determining whether or not access to the resource is blocked.
本発明に係るプログラムは、実行中のプロセスの資源へのアクセスが閉塞しているか否かという情報を示す値を備える資源アクセス閉塞フラグを有する情報処理装置に、前記プロセス中の任意のスレッドで障害が発生した場合に発せられるシグナルを捕捉するシグナル捕捉処理と、該シグナル捕捉処理によりシグナルが捕捉された場合に、前記資源アクセス閉塞フラグの値をアクセスが閉塞していることを示す情報の値に設定する資源アクセス閉塞設定処理と、実行中のプロセス内のスレッドが前記プロセスへアクセスする際に、前記資源アクセス閉塞フラグの値を調べることによって、前記資源へのアクセスが閉塞しているか否かを判定する資源アクセス閉塞判定処理と、を実行させることを特徴とする。 A program according to the present invention causes an information processing apparatus having a resource access blocking flag having a value indicating whether or not access to a resource of a process being executed is blocked to a failure in an arbitrary thread in the process. A signal capturing process for capturing a signal that is generated when an error occurs, and when the signal is captured by the signal capturing process, the value of the resource access block flag is changed to an information value indicating that the access is blocked Whether or not access to the resource is blocked by checking the value of the resource access block flag when the resource access block setting process to be set and the thread in the executing process access the process And determining resource access blockage determination.
本発明によれば、資源アクセス中断によるロック残留の発生を低減することが可能となる。 According to the present invention, it is possible to reduce the occurrence of lock remaining due to resource access interruption.
まず、本実施形態におけるロック残留発生低減方式の概要について説明する。
複数のスレッドが平行して動作することが可能な計算機システムにおいて、複数のスレッドが同一の共有資源をアクセスする場合、共有資源の一貫性を保障するために、一貫性が保障されない危険領域(クリティカルセクション)の区間を複数のスレッドが同時に実行しないように、通常、共有資源に対応するロックを取得する。
First, an outline of the lock residual occurrence reduction method in the present embodiment will be described.
In a computer system in which multiple threads can operate in parallel, when multiple threads access the same shared resource, a critical area where consistency is not guaranteed (critical) to ensure the consistency of shared resources Usually, a lock corresponding to a shared resource is acquired so that a plurality of threads do not execute the section (section) at the same time.
しかしながら、何らかの理由により、ロックを取得している最中に該当スレッドが中断された場合、ロックが解放されることなく残ってしまい、以降、同一の共有資源のロックを取得しようとする全てのスレッドがロック取得待ちで停止してしまう。ここで、スレッドが中断されるケースとしては、以下の3パターンが考えられる。 However, if the thread is interrupted while acquiring the lock for some reason, the lock remains without being released, and all threads that subsequently acquire the lock of the same shared resource Will stop waiting for lock acquisition. Here, as a case where the thread is interrupted, the following three patterns can be considered.
第1に、ロックを取得している処理自身の不具合が原因で、OS(オペレーティングシステム)により打ち切られるケース。第2に、ロックを取得している処理自身には問題がなく、同一プロセス内の他スレッドでの処理の不具合を原因とした打ち切りに伴って、OSの仕様として、巻き添えの形で、前スレッドが打ち切られるケース。第3に、ロックを取得している処理自身には問題がなく、他スレッド(/他プロセス)のプログラムの意志により明示的に打ち切られるケース。 The first case is that the OS (operating system) aborts due to a failure of the process itself that acquires the lock. Secondly, there is no problem with the process itself that has acquired the lock, and the previous thread in the form of a wrapping as the OS specification in accordance with the abortion caused by the malfunction of the process in another thread in the same process. The case where is cut off. Third, there is no problem with the process itself that acquires the lock, and the process is explicitly aborted by the will of the other thread (/ other process) program.
上記のうち、本実施形態が対象とするのは、第2のケースである。本実施形態は、OSの仕様により、不具合により打ち切らざるを得ないスレッド以外に、不具合のない同一プロセスの他スレッドが即時打ち切られ、それによりロックが残ることを課題とする。上記課題を解決するために、本実施形態は、プロセス内の全スレッドがOSに強制打ち切りされるのを検知し、強制打ち切りに伴うロック残留の発生を抑制する。 Among the above, this embodiment is intended for the second case. According to the specification of the present embodiment, in addition to a thread that must be aborted due to a failure, another thread of the same process that does not have a failure is immediately aborted, so that the lock remains. In order to solve the above-described problem, the present embodiment detects that all threads in the process are forcibly terminated by the OS, and suppresses the occurrence of lock remaining due to the forced termination.
次に、本実施形態に係る情報処理装置の構成について図面を参照しながら説明する。
本実施形態に係る情報処理装置は、図1に示すように、資源アクセスライブラリ100を有し、ユーザAPプロセス200を実行中である。ユーザAPプロセス200は、ユーザプログラム400を実行する複数のユーザAPスレッド300からなる。
Next, the configuration of the information processing apparatus according to the present embodiment will be described with reference to the drawings.
As illustrated in FIG. 1, the information processing apparatus according to the present embodiment includes a
資源アクセスライブラリ100は、資源アクセス閉塞判定手段121と資源アクセス手段122を有する資源アクセス処理120と、資源アクセス閉塞設定手段111とプロセスアボート遅延手段112を有するシグナル捕捉処理110と、資源アクセス閉塞フラグ130を備える。また、シグナル捕捉処理110は、本実施形態に係る情報処理装置が起動している間、予めOSに登録されている。
The
ここで、資源アクセス閉塞フラグ130は、ユーザAPプロセス200毎に固有の記憶領域であり、初期値は0である。資源アクセス閉塞フラグ130の値が初期値である場合、フラグはOFFであり(言い換えれば、フラグが立っていない)、初期値でない値である場合、フラグはONである(言い換えれば、フラグが立っている)。資源アクセス閉塞フラグ130の値は、ユーザAPプロセス200の資源へのアクセスが閉塞しているか否かという情報を示すものであり、本実施形態では、初期値の場合アクセスが閉塞しておらず、初期値でない場合アクセスが閉塞している情報を示すこととする。
Here, the resource
次に、このように構成された本実施形態におけるロック残留発生低減方式の動作について説明する。図2は、本実施形態におけるシグナル捕捉処理の流れを示すフローチャートである。 Next, the operation of the lock residual occurrence reducing method in the present embodiment configured as described above will be described. FIG. 2 is a flowchart showing the flow of signal capture processing in the present embodiment.
図2において、ユーザプログラム400を実行する複数のユーザAPスレッド300を含むユーザAPプロセス200が起動された後(ステップS201)、任意のユーザAPスレッド300上で動作するユーザプログラム400に関して(ステップS202)、OSが不正アドレス参照などスレッドの実行を中断せざる得ない状況を検出した場合(ステップS203)、該当するユーザAPスレッド300の延長でOSから予めOSに登録しておいたシグナル捕捉処理110が呼び出される(ステップS204)。
In FIG. 2, after the
シグナル捕捉処理110では、まず資源アクセス閉塞設定手段111に制御が渡される。資源アクセス閉塞設定手段111は、資源アクセス閉塞フラグ130に1を設定し(ステップS205)、プロセスアボート遅延手段112に制御を渡す。なお、資源アクセス閉塞設定手段111が資源アクセス閉塞フラグ130に1を設定することは、「資源アクセス閉塞フラグ130をONにする(又は、フラグを立てる)」と言い換えてもよい。
In the
プロセスアボート遅延手段112は、予め決められた時間だけスレッドの実行を待ち合わせた後(ステップS206)、OSに制御を戻す(ステップS207)。その結果、OSは、ユーザAPプロセス200に含まれる全てのユーザAPスレッド300の実行を中断し、ユーザAPプロセス200を終了する。
The process abort
一方で、本実施形態における資源アクセス処理は、図3のフローチャートに示す流れで実行される。図3において、ユーザプログラム400を実行する複数のユーザAPスレッド300を含むユーザAPプロセス200が起動された後(ステップS301)、任意のユーザAPスレッド300上で動作するユーザプログラム400(ステップS302)から、資源アクセス処理120が呼び出される(ステップS303)。
On the other hand, the resource access process in this embodiment is executed according to the flow shown in the flowchart of FIG. In FIG. 3, after the
資源アクセス処理120では、まず資源アクセス閉塞判定手段121に制御が渡される。資源アクセス閉塞判定手段121は、資源アクセス閉塞フラグ130の値を判定する(ステップS304)。資源アクセス閉塞フラグ130の値が0の場合は(ステップS305/Yes)、資源アクセス手段122に制御を渡す(ステップS306)。資源アクセス閉塞フラグ130の値が0以外の場合は(ステップS305/No)、資源アクセス不可と判断し、ユーザプログラム400に制御を戻す(ステップS307)。
In the
次に、本実施形態における資源アクセス手段122の動作について図4のフローチャートを参照して説明する。図4において、資源アクセス手段122は、対象となる資源のロックを取得し(ステップS401)、要求されたアクセス処理を実行した後(ステップS402/Yes)、資源のロックを解放して(ステップS403)、ユーザプログラム400に制御を戻す(ステップS404)。
Next, the operation of the
本実施形態は、複数のスレッドで構成されたプロセス(マルチスレッドプロセス)において、プロセス中のあるスレッドで回復不可能なシグナル事象が発生した場合、予めOSに登録しておいたシグナル捕捉処理がOSから呼び出された延長で、プロセス内の資源アクセス閉塞フラグをONにして、以降プロセス内での新たな資源アクセス処理の実行を抑止するとともに、プロセス内の他スレッドにおいて既に実行中の資源アクセス処理の完了を待つために、シグナル事象が発生したスレッドがアボート(中断)するのを一定時間待ち合わせることにより、ロック取得中の資源アクセス処理中断によるロック残留の発生を低減する。 In the present embodiment, when a non-recoverable signal event occurs in a certain thread in the process (multi-thread process) composed of a plurality of threads, the signal capturing process registered in the OS in advance is performed. In the extension called from the process, the resource access block flag in the process is set to ON to suppress the execution of new resource access processing in the process and the resource access processing already being executed in other threads in the process. In order to wait for completion, by waiting for a certain time for the thread in which the signal event has occurred to be aborted (suspended), occurrence of residual lock due to interruption of resource access processing during lock acquisition is reduced.
これにより、アボートしたプロセスを再起動する際に、アボートした時点でロックしていた可能性のある全ロックの検査に必要とする時間を短縮し、プロセス再起動によるシステム復旧に要する時間を短縮する。 As a result, when restarting an aborted process, the time required for checking all locks that may have been locked at the time of the abort is shortened, and the time required for system recovery by process restart is shortened. .
以上、本発明の好適な実施の形態について説明したが、本発明はこれに限定されるものではなく、要旨を逸脱しない範囲内で種々の変形実施が可能である。上述した本実施形態における制御動作は、ハードウェア、または、ソフトウェア、あるいは、両者の複合構成を用いて実行することも可能である。 The preferred embodiment of the present invention has been described above, but the present invention is not limited to this, and various modifications can be made without departing from the scope of the invention. The control operation in the present embodiment described above can also be executed using hardware, software, or a combined configuration of both.
なお、ソフトウェアを用いて処理を実行する場合には、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれているコンピュータ内のメモリにインストールして実行させることが可能である。あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。 In the case of executing processing using software, it is possible to install and execute a program in which a processing sequence is recorded in a memory in a computer incorporated in dedicated hardware. Alternatively, the program can be installed and executed on a general-purpose computer capable of executing various processes.
例えば、プログラムは、記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことが可能である。あるいは、プログラムは、リムーバブル記録媒体に、一時的、あるいは、永続的に格納(記録)しておくことが可能である。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することが可能である。なお、リムーバブル記録媒体としては、フロッピー(登録商標)ディスク、CD-ROM(Compact Disc Read Only Memory)、MO(Magneto optical)ディスク、DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどが挙げられる。 For example, the program can be recorded in advance on a hard disk or ROM (Read Only Memory) as a recording medium. Alternatively, the program can be stored (recorded) temporarily or permanently in a removable recording medium. Such a removable recording medium can be provided as so-called package software. The removable recording medium includes a floppy (registered trademark) disk, a CD-ROM (Compact Disc Read Only Memory), an MO (Magneto optical) disk, a DVD (Digital Versatile Disc), a magnetic disk, a semiconductor memory, and the like.
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールすることになる。また、ダウンロードサイトから、コンピュータに無線転送することになる。また、ネットワークを介して、コンピュータに有線で転送することになる。 The program is installed in the computer from the removable recording medium as described above. In addition, it is wirelessly transferred from the download site to the computer. In addition, it is transferred to the computer via a network by wire.
100 資源アクセスライブラリ
110 シグナル捕捉処理
111 資源アクセス閉塞設定手段
112 プロセスアボート遅延手段
120 資源アクセス処理
121 資源アクセス閉塞判定手段
122 資源アクセス手段
130 資源アクセス閉塞フラグ
200 ユーザAPプロセス
300 ユーザAPスレッド
400 ユーザプログラム
DESCRIPTION OF
Claims (6)
前記プロセス中の任意のスレッドで障害が発生した場合に発せられるシグナルを捕捉するシグナル捕捉処理手段と、
該シグナル捕捉処理手段がシグナルを捕捉した場合に、前記資源アクセス閉塞フラグの値をアクセスが閉塞していることを示す情報の値に設定する資源アクセス閉塞設定手段と、
実行中のプロセス内のスレッドが前記プロセスの資源へアクセスする際に、前記資源アクセス閉塞フラグの値を調べることによって、前記資源へのアクセスが閉塞しているか否かを判定する資源アクセス閉塞判定手段と、
を有することを特徴とする情報処理装置。 A resource access blocking flag comprising a value indicating whether or not access to the resource of the process being executed is blocked;
Signal capturing processing means for capturing a signal emitted when a failure occurs in any thread in the process;
Resource access blockage setting means for setting the value of the resource access blockage flag to the value of information indicating that the access is blocked when the signal capture processing unit captures a signal;
Resource access blockage determining means for determining whether access to the resource is blocked by checking the value of the resource access blockage flag when a thread in the executing process accesses the resource of the process When,
An information processing apparatus comprising:
前記プロセス中の任意のスレッドで障害が発生した場合に発せられるシグナルを捕捉するシグナル捕捉処理工程と、
該シグナル捕捉処理工程によりシグナルが捕捉された場合に、前記資源アクセス閉塞フラグの値をアクセスが閉塞していることを示す情報の値に設定する資源アクセス閉塞設定工程と、
実行中のプロセス内のスレッドが前記プロセスへアクセスする際に、前記資源アクセス閉塞フラグの値を調べることによって、前記資源へのアクセスが閉塞しているか否かを判定する資源アクセス閉塞判定工程と、
を含むことを特徴とする情報処理装置の制御方法。 A control method for an information processing apparatus having a resource access block flag having a value indicating whether or not access to a resource of a process being executed is blocked,
A signal capturing process for capturing a signal emitted when a failure occurs in any thread in the process;
A resource access blockage setting step for setting the value of the resource access blockage flag to a value of information indicating that the access is blocked when a signal is captured by the signal capture processing step;
A resource access blockage determining step for determining whether or not access to the resource is blocked by checking the value of the resource access blockage flag when a thread in the process being executed accesses the process;
A method for controlling an information processing apparatus, comprising:
前記プロセス中の任意のスレッドで障害が発生した場合に発せられるシグナルを捕捉するシグナル捕捉処理と、
該シグナル捕捉処理によりシグナルが捕捉された場合に、前記資源アクセス閉塞フラグの値をアクセスが閉塞していることを示す情報の値に設定する資源アクセス閉塞設定処理と、
実行中のプロセス内のスレッドが前記プロセスへアクセスする際に、前記資源アクセス閉塞フラグの値を調べることによって、前記資源へのアクセスが閉塞しているか否かを判定する資源アクセス閉塞判定処理と、
を実行させることを特徴とするプログラム。 In an information processing apparatus having a resource access block flag having a value indicating whether access to resources of a process being executed is blocked or not,
A signal capturing process for capturing a signal emitted when a failure occurs in any thread in the process;
A resource access blockage setting process for setting a value of the resource access blockage flag to a value of information indicating that the access is blocked when a signal is captured by the signal capture process;
A resource access blockage determination process for determining whether or not access to the resource is blocked by examining the value of the resource access blockage flag when a thread in the process being executed accesses the process;
A program characterized by having executed.
前記資源アクセス閉塞判定処理により前記資源へのアクセスが閉塞していると判定された場合、前記情報処理装置のオペレーティングシステムが前記プロセスのアボートを実行することを、所定の時間待たせるプロセスアボート遅延処理を、さらに実行させることを特徴とする請求項5記載のプログラム。 In the information processing apparatus,
A process abort delay process that waits a predetermined time for the operating system of the information processing apparatus to execute the abort of the process when it is determined by the resource access blocking determination process that the access to the resource is blocked 6. The program according to claim 5, further comprising:
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008037702A JP2009199166A (en) | 2008-02-19 | 2008-02-19 | Information processing device, control method and program therefor |
PCT/JP2009/053101 WO2009104771A1 (en) | 2008-02-19 | 2009-02-16 | Information processing device, control method and program therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008037702A JP2009199166A (en) | 2008-02-19 | 2008-02-19 | Information processing device, control method and program therefor |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009199166A true JP2009199166A (en) | 2009-09-03 |
Family
ID=40985647
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008037702A Pending JP2009199166A (en) | 2008-02-19 | 2008-02-19 | Information processing device, control method and program therefor |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2009199166A (en) |
WO (1) | WO2009104771A1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62202249A (en) * | 1986-02-28 | 1987-09-05 | Nec Corp | Shared resource access guard system among plural host computers |
JPH04241633A (en) * | 1991-01-16 | 1992-08-28 | Nec Corp | Process managing system |
JPH05289892A (en) * | 1992-04-07 | 1993-11-05 | Toshiba Corp | Computer system |
JPH06175864A (en) * | 1992-12-10 | 1994-06-24 | Sharp Corp | Computer system with multifunction |
JPH11327937A (en) * | 1998-05-14 | 1999-11-30 | Nec Corp | Resource exclusive control system |
JP2007249634A (en) * | 2006-03-16 | 2007-09-27 | Nec Corp | Lock management method and lock management system |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1124947A (en) * | 1997-07-08 | 1999-01-29 | Sanyo Electric Co Ltd | Exclusive control method for computer system and computer system |
JP3961301B2 (en) * | 2001-01-25 | 2007-08-22 | 松下電器産業株式会社 | Digital device, task management method and program thereof |
JP2005339111A (en) * | 2004-05-26 | 2005-12-08 | Hitachi Ltd | Method and system for controlling execution of job |
-
2008
- 2008-02-19 JP JP2008037702A patent/JP2009199166A/en active Pending
-
2009
- 2009-02-16 WO PCT/JP2009/053101 patent/WO2009104771A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62202249A (en) * | 1986-02-28 | 1987-09-05 | Nec Corp | Shared resource access guard system among plural host computers |
JPH04241633A (en) * | 1991-01-16 | 1992-08-28 | Nec Corp | Process managing system |
JPH05289892A (en) * | 1992-04-07 | 1993-11-05 | Toshiba Corp | Computer system |
JPH06175864A (en) * | 1992-12-10 | 1994-06-24 | Sharp Corp | Computer system with multifunction |
JPH11327937A (en) * | 1998-05-14 | 1999-11-30 | Nec Corp | Resource exclusive control system |
JP2007249634A (en) * | 2006-03-16 | 2007-09-27 | Nec Corp | Lock management method and lock management system |
Also Published As
Publication number | Publication date |
---|---|
WO2009104771A1 (en) | 2009-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5423871B2 (en) | Information processing apparatus, information processing method, and program | |
JPWO2006082657A1 (en) | Multi-CPU computer and system restart method | |
JP4476193B2 (en) | Information processing method and information processing apparatus | |
KR20150065715A (en) | Exception handling in a data processing apparatus having a secure domain and a less secure domain | |
US20150254112A1 (en) | Methods, Systems, and Media for Protecting Applications from Races | |
JP5263602B2 (en) | ACCESS CONTROL SYSTEM, ACCESS CONTROL METHOD, ELECTRONIC DEVICE, AND CONTROL PROGRAM | |
EP2996043B1 (en) | Debugging in a data processing apparatus | |
JP2006330864A (en) | Control method for server computer system | |
US9864708B2 (en) | Safely discovering secure monitors and hypervisor implementations in systems operable at multiple hierarchical privilege levels | |
JP5392263B2 (en) | Information processing apparatus and memory protection method thereof | |
US9535772B2 (en) | Creating a communication channel between different privilege levels using wait-for-event instruction in systems operable at multiple levels hierarchical privilege levels | |
JP2010186386A (en) | Processor | |
US8650579B1 (en) | Containment for computer-software update installation processes | |
CN106354560B (en) | System maintenance process operation method and device | |
JP2009199166A (en) | Information processing device, control method and program therefor | |
JP2008186429A (en) | Information processing method, information processor, information processing program and recording medium which records the program | |
JP5663630B2 (en) | Computer automatic operation device, automatic operation method, and automatic operation program | |
US10331498B1 (en) | ColoredLock synchronization object, allowing flow specific policy of lock canceling | |
JP2007249634A (en) | Lock management method and lock management system | |
JP2010044699A (en) | Information processor | |
JP4611659B2 (en) | Unauthorized access detection device, unauthorized access detection method, program | |
WO2022019061A1 (en) | Information processing device, information processing method, and program | |
JP2006228074A (en) | Multitask system and method for controlling multitask | |
JP6859755B2 (en) | Information processing device, control method of information processing device, and control program of information processing device | |
JP2000155677A (en) | Method for preventing runaway of program and computer system for the method and recording medium for recording program for preventing runaway |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Effective date: 20110920 Free format text: JAPANESE INTERMEDIATE CODE: A7421 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120117 |
|
A521 | Written amendment |
Effective date: 20120314 Free format text: JAPANESE INTERMEDIATE CODE: A523 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120724 |