JP2006268596A - Redundancy system of service system - Google Patents

Redundancy system of service system Download PDF

Info

Publication number
JP2006268596A
JP2006268596A JP2005087523A JP2005087523A JP2006268596A JP 2006268596 A JP2006268596 A JP 2006268596A JP 2005087523 A JP2005087523 A JP 2005087523A JP 2005087523 A JP2005087523 A JP 2005087523A JP 2006268596 A JP2006268596 A JP 2006268596A
Authority
JP
Japan
Prior art keywords
service
memory
active
standby
service 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.)
Granted
Application number
JP2005087523A
Other languages
Japanese (ja)
Other versions
JP4494263B2 (en
Inventor
Eiichiro Mori
英一郎 森
Yukio Kawaguchi
征雄 川口
Hiroyasu Bando
弘泰 板東
Tomoyuki Hamada
智幸 浜田
Yoshinori Machida
芳則 町田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005087523A priority Critical patent/JP4494263B2/en
Publication of JP2006268596A publication Critical patent/JP2006268596A/en
Application granted granted Critical
Publication of JP4494263B2 publication Critical patent/JP4494263B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Hardware Redundancy (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To realize minimizing the interruption of a service due to a failure, and collecting information on the failure reliably with a simple composition. <P>SOLUTION: The system comprises first and second service processing parts 21A and 21B achieving the same service function by implementing a program, first and second memory areas 41A and 41B provided in correspondence with the first and second service processing parts for storing the processing information related to the operation of the service, a save memory 60 for saving the storage information of the first or second memory areas, and a service control part 30 for operating a pair consisting of the first and second service processing parts and memory areas as an active system and a standby system. The service processing part 21A of the active system writes its processing information in the memories 41A and 41B of the active and standby systems. The service control part 30 switches the system immediately when a failure occurs in the active system, and, at the same time, saves the log information stored in the memory area 41A of the previous active system in the save memory 60. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明はサービスシステムの冗長化方式に関し、更に詳しくは、コンピュータのプログラム実行により所定のサービス機能を提供するサービスシステムの冗長化方式に関する。今日、各種通信制御装置等の様々なサービス機能がコンピュータのプログラム実行により実現されており、このようなサービスシステムの性能及び信頼性の向上が望まれる。   The present invention relates to a service system redundancy system, and more particularly to a service system redundancy system that provides a predetermined service function by executing a computer program. Today, various service functions such as various communication control devices are realized by computer program execution, and it is desired to improve the performance and reliability of such service systems.

従来、この種のサービスシステムの中断時間を短くする方法としては、コンピュータシステムのCPUのみならずメモリその他のハードウェア全てを物理的に二重化(冗長化)し、両系の同期を常に実施することで、運用系のコンピュータシステムが故障した場合でも、待機側のコンピュータシステムがメモリの運用情報等を速やかに引き継ぎ、待機系を新しい運用系として、故障が発生するまでのサービス状態を維持したままサービスを再開させる方法がある。これにより、短いサービス中断時間で故障情報を収集しながらサービスを速やかに復旧できる。   Conventionally, as a method of shortening the interruption time of this type of service system, not only the CPU of the computer system but also all other hardware such as memory are physically duplicated (redundant), and both systems are always synchronized. Even if the active computer system fails, the standby computer system can quickly take over the memory operation information, etc., making the standby system a new active system and maintaining the service status until the failure occurs. There is a way to resume. As a result, the service can be quickly recovered while collecting failure information in a short service interruption time.

しかし、ハードウェアの二重化は、導入コストや消費電力が多くかかる欠点がある。しかも、実際に発生する障害(故障)のほとんどが、ソフトウェアの誤り(バグ)や過負荷による障害であり、実際にハードウェアが故障して系が切り替わることは少なく、ハードウェアを二重化することは、投資として過剰であるケースが多かった。   However, the duplication of hardware has a drawback that a lot of introduction cost and power consumption are required. Moreover, most of the failures (failures) that actually occur are failures due to software errors (bugs) or overloads, and it is unlikely that the hardware will actually fail and the system will switch, and it is not possible to duplicate hardware. In many cases, the investment was excessive.

また、従来のコンピュータシステムには、処理を継続出来ない様な致命的なエラーが発生した際に、プログラムを強制終了し、直前のメモリやレジスタの内容を故障情報ファイルに出力する機能が設けられており、障害発生要因の究明に不可欠な機能である。   Also, conventional computer systems are provided with a function that forcibly terminates a program and outputs the contents of the previous memory or register to a failure information file when a fatal error that prevents processing from continuing occurs. It is an indispensable function for investigating the cause of failure.

しかし、その際の故障ファイル出力処理時間は、該当プログラムのロードモジュール(LM)サイズや、プログラム処理内にて捕捉するメモリ領域サイズにより左右されるが、大規模プログラムになると故障ファイルのダンプに十数分間を要することもあり、サービス中断時間に少なからぬ影響を与えていた。   However, the failure file output processing time at that time depends on the load module (LM) size of the corresponding program and the size of the memory area captured in the program processing. It could take several minutes and had a significant impact on service interruption time.

特に、音声を扱うようなリアルタイム性を要求されるサーバシステムでは、プログラム故障時に、プログラムを早急に再起動する必要があるが、故障ファイル情報の収集完了前にプログラムを再起動させるとレジスタやスタック、メモリなどの上書き等が行われるため、有効な情報が採れない恐れがある。   In particular, in a server system that requires real-time processing such as handling audio, it is necessary to restart the program as soon as possible when the program fails. However, if the program is restarted before the failure file information collection is completed, the registers and stack Since the memory is overwritten, there is a possibility that valid information cannot be obtained.

この点、従来は、コンピュータシステムに通常アクセスに使用するシステムバス6とデータをシリアルに転送する保守・診断専用の診断バス7とを設け、ある障害ユニット3からのローカル・メモリ情報を、システムバス6を介して主メモリ1にダンプできない場合は、診断バス7を経由して採取することにより、システムバス6に関連した障害でも、ローカル・メモリ情報を採取可能にしたものが知られている(特許文献1)。
特開平6−342387(要約,図)
In this regard, conventionally, a system bus 6 used for normal access to a computer system and a diagnostic bus 7 dedicated to maintenance / diagnosis for serially transferring data are provided, and local memory information from a fault unit 3 is transferred to the system bus. In the case where data cannot be dumped to the main memory 1 via 6, it is known that the local memory information can be collected even by a failure related to the system bus 6 by collecting via the diagnostic bus 7 ( Patent Document 1).
JP-A-6-342387 (summary, figure)

しかし、上記構成は別途シリアル診断バスを設ける比較的簡単なものであるが、システムバス6を使用できないときに、シリアル診断バス7を使用する場合には、必ずしも短い時間に十分な障害情報を収集できない問題がある。   However, although the above configuration is relatively simple with a separate serial diagnostic bus, when the system diagnostic bus 7 cannot be used and the serial diagnostic bus 7 is used, sufficient fault information is always collected in a short time. There is a problem that cannot be done.

本発明は上記従来技術の問題点に鑑みなされたものであり、その目的とする所は、簡単な構成により、故障によるサービス中断を最低限に抑え、かつその際の障害情報を確実に収集可能なサービスシステムの冗長化方式を提供することにある。   The present invention has been made in view of the above-described problems of the prior art, and the object of the present invention is to minimize service interruption due to a failure and to reliably collect failure information at that time with a simple configuration. It is to provide a redundant system of service system.

上記の課題は例えば図1の構成により解決される。即ち、本発明(1)のサービスシステムの冗長化方式は、コンピュータのプログラム実行により所定のサービス機能を提供するサービスシステムの冗長化方式であって、プログラム実行により同一のサービス機能を実現する第1,第2のサービス処理部21A,21Bと、前記第1,第2のサービス処理部にそれぞれ対応して設けられ、サービス運用に係る処理情報を記憶する第1,第2のメモリエリア41A,41Bと、前記第1又は第2のメモリエリアの記憶情報を退避する退避メモリ60と、前記第1,第2のサービス処理部とメモリエリアとからなる対を現用系と待機系として運用するサービス管理部30とを備え、現用系のサービス処理部21Aは、自己の処理情報報を現用系及び待機系のメモリ41A,41Bに書き込むと共に、サービス管理部30は、現用系の障害発生により速やかに系を切り替え、かつ旧現用系のメモリエリア41Aに記憶されたログ情報を退避メモリ60に退避するものである。   The above problem is solved by the configuration of FIG. That is, the service system redundancy system of the present invention (1) is a service system redundancy system that provides a predetermined service function by computer program execution, and is a first system that realizes the same service function by program execution. , Second service processing units 21A, 21B and first and second memory areas 41A, 41B provided corresponding to the first and second service processing units, respectively, for storing processing information relating to service operation. Service management that operates a pair of the save memory 60 that saves the storage information of the first or second memory area and the first and second service processing units and the memory area as an active system and a standby system The active service processing unit 21A writes its own processing information report into the active and standby memories 41A and 41B. Service management unit 30 is configured to retract switch quickly system by failure of the active system, and the log information stored in the memory area 41A of the old active system to save memory 60.

本発明(1)によれば、プログラム実行により実現されるサービス処理部21A,21Bと、二重化されたメモリエリア41A,41Bとを備え、両エリアの記憶情報を同期(一致)させつつ現用系、待機系として運用する簡単な構成により、現用系の障害発生時には、速やかに系を切り替えることが可能であると共に、旧現用系のメモリエリア41Aから従前のサービス処理に係るログ情報を確実に収集できる。   According to the present invention (1), the service processing units 21A and 21B realized by program execution and the duplicated memory areas 41A and 41B are provided, and the active system, while synchronizing (matching) the storage information of both areas, With a simple configuration that operates as a standby system, when a failure occurs in the active system, the system can be switched quickly, and log information related to the previous service processing can be reliably collected from the memory area 41A of the former active system. .

本発明(2)では、上記本発明(1)において、第1,第2のサービス処理部にそれぞれバインドされて第1,第2のメモリエリアへのメモリアクセスを代行する第1,第2のアダプタ部を備え、現用系のアダプタ部は、通常は該現用系のサービス処理部からのデータ書込命令に従って現用系及び待機系のメモリエリアに同一のデータを書き込むと共に、待機系のサービス処理部が障害中又は該待機系のメモリエリアのデータが退避中であることにより現用系のメモリエリアにのみデータを書き込むものである。従って、引き続き運用データの更新が可能であると共に、系切替後の旧現用系のメモリ情報を確実に保護できる。   According to the present invention (2), in the above-mentioned present invention (1), the first and second services that are bound to the first and second service processing units and perform the memory access to the first and second memory areas, respectively. An adapter unit is provided, and the active adapter unit normally writes the same data to the active and standby memory areas in accordance with a data write command from the active service processor, and the standby service processor. However, the data is written only in the active memory area because of failure or because the data in the standby memory area is being saved. Therefore, the operation data can be continuously updated, and the memory information of the old working system after the system switching can be surely protected.

本発明(3)では、上記本発明(2)において、サービス管理部は、待機系のサービス処理部21Aが障害中又は該待機系のメモリエリア41Aのデータが退避中である期間に、データ書込のあった現用系メモリ41Bのエリア情報を保持すると共に、待機系のサービス処理部21Aの復旧により、現用系メモリ41Bの前記エリア情報に対応する記憶データを待機系のメモリエリア41Aにコピーするものである。   In the present invention (3), in the above-mentioned present invention (2), the service management unit performs data writing during a period when the standby service processing unit 21A is faulty or data in the standby memory area 41A is being saved. The stored area information of the active memory 41B is retained, and the storage data corresponding to the area information of the active memory 41B is copied to the standby memory area 41A by the restoration of the standby service processing unit 21A. Is.

本発明(3)によれば、データ書込のあった現用系メモリ41Bのエリア情報を保持するだけの簡単な構成により、待機系21Aの復旧時には、現用系メモリ41Bの当該エリアのデータで待機系メモリ41Aの内容を容易に同期(一致)化できる。   According to the present invention (3), with a simple configuration that only holds the area information of the active memory 41B where data has been written, when the standby system 21A is restored, the data in the area of the active memory 41B is waited. The contents of the system memory 41A can be easily synchronized (matched).

本発明(4)では、上記本発明(1)において、例えば図9に示す如く、第1,第2のサービス処理部21A,21Bが、それぞれ独自のCPU11A,11Bによって動作するように構成されているものである。従って、比較的簡単な二重化構成により、所要のサービス機能を高性能かつ安全に提供できる。   In the present invention (4), in the present invention (1), for example, as shown in FIG. 9, the first and second service processing units 21A and 21B are configured to operate by their own CPUs 11A and 11B, respectively. It is what. Therefore, a required service function can be provided with high performance and safety by a relatively simple duplex configuration.

以上述べた如く本発明によれば、故障によるサービス中断を最低限に抑え、かつその際
の障害情報を確実に収集可能であるため、コンピュータを使用したこの種のサービスシステムを安価かつ安全に提供できる。
As described above, according to the present invention, service interruption due to a failure can be minimized, and failure information at that time can be reliably collected. Therefore, this type of service system using a computer can be provided inexpensively and safely. it can.

以下、添付図面に従って本発明に好適なる実施の形態を詳細に説明する。なお、全図を通して同一符号は同一又は相当部分を示すものとする。図1は実施の形態によるコンピュータシステムのブロック図で、マルチプログラミング方式(一つのCPUで複数のサービス処理を並列実行)による構成例を示している。   DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, preferred embodiments of the invention will be described in detail with reference to the accompanying drawings. Note that the same reference numerals denote the same or corresponding parts throughout the drawings. FIG. 1 is a block diagram of a computer system according to an embodiment, and shows a configuration example by a multi-programming method (a plurality of service processes are executed in parallel by one CPU).

図において、100はマルチプログラミング方式によるコンピュータシステム、11はCPU、10A,10Bはサービスプログラムの実行により同一のサービス機能(音声通信機能等)を実現可能なサービスプロセッサA,B、20A,20Bはサービスプログラムを格納する主メモリ(RAM,キャッシュメモリ等)、21A,21Bはサービスプログラムの実行により実現されるサービス処理部A,B、22A,22Bはサービス処理部A,Bによる仮想メモリA,Bのアクセスをそれぞれにインタフェースするアダプタ部A,B、30はサービスプロセッサ10A,10Bの障害の監視、運用系と待機系のサービス運用状態の管理、障害発生時の運用系と待機系の切替制御等を行うサービス管理部、40はサービスシステムの運用に係る各種処理情報を記憶するメモリ(主メモリの一部で良い)、41A,41Bは運用系と待機系とに二重化された仮想メモリA,B、50はオペレーティングシステム(OS)に係るプログラムを記憶しているオペレーティングシステム部、60は仮想メモリA/Bの情報を退避格納するディスク装置(DISK)である。   In the figure, 100 is a multi-programming computer system, 11 is a CPU, 10A and 10B are service processors A, B, 20A and 20B which can realize the same service function (voice communication function, etc.) by executing a service program. Main memories (RAM, cache memory, etc.) for storing programs, 21A and 21B are realized by execution of service programs, and service processing units A, B, 22A and 22B are virtual memories A and B of service processing units A and B. The adapter units A, B, and 30 that interface access respectively perform monitoring of failures of the service processors 10A and 10B, management of service operation states of the active and standby systems, switching control between the active and standby systems when a failure occurs, and the like. Service management unit to perform, 40 for service system operation A memory for storing various processing information (may be a part of the main memory), 41A and 41B are virtual memories A, B and 50 which are duplicated into an active system and a standby system, and a program related to an operating system (OS) is stored The operating system unit 60 is a disk device (DISK) for saving and storing information of the virtual memory A / B.

なお、以下の説明では、サービス処理部21A,21B等を説明の簡単の為に単にサービス処理部A,B等と呼ぶ。また、このサービス処理部A,Bは機能が二重(冗長)化されており、図はAが現用系で、Bが待機系(予備系)の場合を示している。   In the following description, the service processing units 21A, 21B, etc. are simply referred to as service processing units A, B, etc. for the sake of simplicity. Further, the service processing units A and B have dual (redundant) functions, and the figure shows the case where A is the active system and B is the standby system (standby system).

サービス処理部A,B及びサービス管理部30はOS50をプラットフォームとしたCPU11のプログラム実行により実現される。   The service processing units A and B and the service management unit 30 are realized by program execution of the CPU 11 using the OS 50 as a platform.

仮想メモリAは運用系のサービス処理部Aがサービス運用に係る処理情報の読み書きに使用する運用メモリであり、また、仮想メモリBは運用系のサービス処理部Aが、障害時の系切替に備えて仮想メモリAと同一の情報をコピーしておく待機メモリであると共に、障害発生時に系が切り替わった場合には、新運用系となったサービス処理部Bが引き続きサービス運用に係る処理情報の読み書きに使用する運用メモリとなる。一方、障害に係るログ情報の収集を完了した仮想メモリAは、運用系のサービス処理部Bが、障害時の切り替えに備えて仮想メモリBと同一の情報をコピーしておく待機メモリとなる。   The virtual memory A is an operational memory used by the active service processing unit A for reading and writing processing information related to service operation, and the virtual memory B is prepared for system switching in the event of a failure by the active service processing unit A. When the system is switched when a failure occurs, the service processing unit B that has become a new active system continues to read and write processing information related to service operation. This is the operational memory used for On the other hand, the virtual memory A that has completed the collection of log information related to the failure becomes a standby memory in which the service processor B of the active system copies the same information as the virtual memory B in preparation for switching at the time of failure.

このように、サービス処理部Aにとっての現用メモリは仮想メモリA、待機メモリは仮想メモリBであり、またサービス処理部Bにとっての現用メモリは仮想メモリB、待機メモリは仮想メモリAであるが、サービス処理部A,Bは同一のソースファイルから生成(コンパイル)されるため、各サービス処理部a,Bでは運用メモリと待機メモリに対するメモリアクセスの行き先(アドレス)の翻訳(変換)を行う必要がある。   Thus, the working memory for the service processing unit A is the virtual memory A and the standby memory is the virtual memory B, and the working memory for the service processing unit B is the virtual memory B and the standby memory is the virtual memory A. Since the service processing units A and B are generated (compiled) from the same source file, it is necessary for each service processing unit a and B to translate (convert) memory access destinations (addresses) for the operation memory and the standby memory. is there.

そこで、アダプタ部Aはサービス処理部Aからの現用,待機メモリに対するアクセスを仮想メモリA,Bに対するアクセスに翻訳し、一方、アダプタ部Bはサービス処理部Bからの現用,待機メモリに対するアクセスを仮想メモリB,Aに対するアクセスに翻訳する。   Therefore, the adapter unit A translates the access to the working and standby memory from the service processing unit A into access to the virtual memories A and B, while the adapter unit B virtualizes the access to the working and standby memory from the service processing unit B. Translate to access to memory B, A.

係る構成により、予め仮想メモリA,Bの記憶情報は一致している。今、サービス処理部Aが現用系であるとすると、アダプタ部Aはサービス処理部Aからのデータ読出命令に
従って仮想メモリAのみからデータ読出Rを行う。また、アダプタ部Aはサービス処理部Aからのデータ書込命令に従って仮想メモリA,Bの同一(対応)エリア)にデータ書込W1,W2を行う。この処理は、あくまでもアダプタ部Aが実行するため、サービスプログラムを記述するプログラマーは、このようなメモリアクセスの仕組みを意識する必要はない。一方、この期間のサービス処理部Bは仮想メモリA,Bに対するメモリアクセスを行っておらず、よって、仮想メモリA,Bの記憶内容はシステムの運用開始後も常に一致している。これにより、サービス管理部30はいつでも速やかに系を切替可能である。
With this configuration, the stored information in the virtual memories A and B is matched in advance. Now, assuming that the service processing unit A is an active system, the adapter unit A performs data reading R only from the virtual memory A in accordance with a data reading command from the service processing unit A. The adapter unit A performs data writing W1 and W2 in the same (corresponding) areas of the virtual memories A and B in accordance with a data write command from the service processing unit A. Since this process is only executed by the adapter unit A, the programmer who writes the service program does not need to be aware of such a memory access mechanism. On the other hand, the service processing unit B during this period does not perform memory access to the virtual memories A and B. Therefore, the stored contents of the virtual memories A and B always match after the system operation is started. As a result, the service management unit 30 can quickly switch the system at any time.

図2は実施の形態によるサービスプロセッサの構築手順を説明する図で、サービスプロセッサのソースプログラムからアダプタ部経由で仮想メモリA,Bにアクセスするようなオブジェクトプログラムを生成する手順を示している。サービス処理部A,Bが現用系/待機系に関わらず仮想メモリA,Bを適正にアクセス可能とするためには、サービス処理部A,Bのメモリアクセス部分をアダプタ部A,B経由に変更する必要がある。   FIG. 2 is a diagram for explaining the construction procedure of the service processor according to the embodiment, and shows the procedure of generating an object program for accessing the virtual memories A and B via the adapter unit from the source program of the service processor. In order for the service processing units A and B to properly access the virtual memories A and B regardless of the active / standby system, the memory access part of the service processing units A and B is changed to the adapter units A and B. There is a need to.

これを実現するため、まずサービスプログラムのソースファイルをプリコンパイラに入力してプリコンパイルすると、メモリアクセス部分がアダプタ経由に変換された中間ファイルが生成される。更に、この中間ファイルと、アダプタ部品及びOS依存部品とをリンクさせ、コンパイラでコンパイルすると、最終的な出力として仮想メモリA,Bへのアダプタ部経由のアクセスを考慮したアダプタ対応サービスプログラム(オブジェクトファイル)が生成される。   In order to realize this, when the source file of the service program is first input to the precompiler and precompiled, an intermediate file in which the memory access portion is converted via the adapter is generated. Furthermore, when this intermediate file is linked with the adapter component and the OS-dependent component, and compiled by the compiler, an adapter-compatible service program (object file) that considers access to the virtual memories A and B via the adapter section as the final output ) Is generated.

図3に実施の形態によるプリコンパイラの動作を具体的に示す。ここでは、メモリアクセスに関連するインストラクションがアダプタ部経由のものに変換される。例えば、ソースファイル1における変数定義「static int X」は、内部参照であるので、メモリアクセスには関係しない。一方、「shmget(aa,bb)」は仮想メモリ上にエリアを確保するインストラクションであり、アダプタ部経由の中間ファイル「adp_shmget(aa,bb)」にプリコンパイルされる。他も同様に理解できる。また、ソースファイル2の変数Xは、外部参照「extern int X」であるので、アダプタ部対応に変換される。   FIG. 3 specifically shows the operation of the precompiler according to the embodiment. Here, instructions related to memory access are converted into those via the adapter unit. For example, since the variable definition “static int X” in the source file 1 is an internal reference, it does not relate to memory access. On the other hand, “shmget (aa, bb)” is an instruction for securing an area in the virtual memory, and is precompiled into an intermediate file “adp_shmget (aa, bb)” via the adapter unit. Others can be understood similarly. Further, since the variable X of the source file 2 is the external reference “extern int X”, it is converted to the adapter unit.

次に、係る構成による現用系障害発生時のリカバリ動作を説明する。図4,図5は実施の形態によるコンピュータシステムの動作を説明する図(1),(2)で、図4は現用系のサービス処理部Aで障害が発生し、運用系を切り替えた際の状態を示している。   Next, the recovery operation when an active system failure occurs with such a configuration will be described. 4 and 5 are diagrams (1) and (2) for explaining the operation of the computer system according to the embodiment. FIG. 4 is a diagram when a failure occurs in the service processor A of the active system and the operating system is switched. Indicates the state.

サービス管理部30及びOS50は、サービス処理部Aの運用状態を監視しており、この状態で、サービス処理部Aで何らかの障害が発生すると、この障害はOS50とサービス管理部30のいずれかで検出される。OS50がシステム運用上の障害を検出した場合は、サービス管理部30に障害発生を通知し、またサービス管理部30がサービス(アプリケーション)運用上の障害を検出した場合は、OS50に対してサービス処理部Aの故障発生を通知する。   The service management unit 30 and the OS 50 monitor the operating state of the service processing unit A. If any failure occurs in the service processing unit A in this state, this failure is detected by either the OS 50 or the service management unit 30. Is done. When the OS 50 detects a failure in system operation, the service management unit 30 is notified of the occurrence of the failure. When the service management unit 30 detects a failure in service (application) operation, the OS 50 performs service processing. Notification of occurrence of failure in part A.

サービス管理部30は、OS管理下で動作するサービス処理部Aの実行情報(レジスタ情報,スタック情報等)を故障情報として収集し、DISK60上のログファイルに退避する。また、サービス処理部Bにサービスの引き継ぎ要求を通知し、同時に故障したサービス処理部Aが使用していた仮想メモリ領域Aの情報もDISK60に退避する。これらの退避処理は、旧運用系(サービス処理部A、仮想メモリA、サービス管理部30)により行われるため、新運用系のサービス処理部Bから見ると、バックグラウンドで実施されており、ログ収集によるシステム中断時間を最短にし、かつログ収集に伴う負荷によるサービス性能低下を起こさずして、サービスが再開される。   The service management unit 30 collects execution information (register information, stack information, etc.) of the service processing unit A operating under OS management as failure information and saves it in a log file on the DISK 60. Further, the service processing unit B is notified of a service takeover request, and information on the virtual memory area A used by the failed service processing unit A is also saved in the DISK 60. Since these saving processes are performed by the old operational system (service processing unit A, virtual memory A, service management unit 30), when viewed from the new operational system service processing unit B, they are executed in the background. The service is resumed without shortening the system interruption time due to the collection and without causing the service performance degradation due to the load accompanying the log collection.

一方、新運用系となったサービス処理部(アダプタ部)Bでは、仮想メモリBからデ
ータを読み込み、かつ仮想メモリ、B及びAに同一データを書き込もうとするが、仮想メモリAは障害情報を保護又は収集中のためにデータを書き込めない。そこで、この場合のアダプタ部Bは、少なくとも、仮想メモリBのどのエリアにデータを書き込もうとしたかのエリア情報をサービス管理部30に通知し、サービス管理部30はこれを保持する。
On the other hand, the service processing unit (adapter unit) B, which has become a new operation system, reads data from the virtual memory B and tries to write the same data to the virtual memories B and A, but the virtual memory A protects the failure information. Or data cannot be written because it is being collected. Therefore, the adapter unit B in this case notifies the service management unit 30 of at least the area information of the virtual memory B in which the data is to be written, and the service management unit 30 holds this.

図5は仮想メモリAのログ収集退避作業が完了した際の動作を示している。サービス処理部Aがログ収集完了により復旧通知を出力すると、これを受けたサービス管理部30は、現用系のアダプタ部22にコピー要求を行うと共に、上記保存したエリア情報を通知する。これを受けた、アダプタ部Bは、仮想メモリBの当該エリアの情報を読み出して仮想メモリAの対応(同一)エリアに書き込む。上記サービス管理部30に保存したエリアが複数ある場合は、上記同様のコピー処理を繰り返し、こうして、全ての保存エリアのデータコピーを完了すると、仮想メモリB,Aのデータ同期(一致)する。この方法によれば、仮想メモリA,B間で全てのデータをコピーする必要が無いので、効率が良い。   FIG. 5 shows an operation when the log collection / save operation of the virtual memory A is completed. When the service processing unit A outputs a recovery notification upon completion of log collection, the service management unit 30 receives the request and makes a copy request to the active adapter unit 22 and notifies the stored area information. Receiving this, the adapter unit B reads the information of the area of the virtual memory B and writes it in the corresponding (same) area of the virtual memory A. When there are a plurality of areas stored in the service management unit 30, the same copying process is repeated, and when the data copying of all the storage areas is completed, the data in the virtual memories B and A is synchronized (matched). According to this method, since it is not necessary to copy all the data between the virtual memories A and B, the efficiency is high.

更に、サービス管理部30は、全コピーの終了後に、サービス処理部Aを待機系として再起動させると共に、その旨をアダプタ部Bに通知し、これにより、アダプタ部Bによる仮想メモリAへのデータ書込W2が始まる。こうして、運用系と待機系とが完全に入れ替わる。   Further, the service management unit 30 restarts the service processing unit A as a standby system after the completion of all copying, and notifies the adapter unit B of the fact, whereby the data to the virtual memory A by the adapter unit B is transmitted. Writing W2 begins. In this way, the active system and the standby system are completely switched.

図6〜図8は実施の形態によるアダプタ部の動作シーケンス図(1)〜(3)で、アダプタ部の上記動作を実現する幾つかの典型的な動作シーケンスを示している。図6の上半部に現用のサービス処理部Aがアダプタ部Aからメモリエリアを取得する処理を示す。この処理はサービス処理部Aが仮想メモリA,Bのあるエリアをアクセスしたい場合にエリアを確保する前処理として行われる。   FIGS. 6 to 8 are operation sequence diagrams (1) to (3) of the adapter unit according to the embodiment, and show some typical operation sequences for realizing the above-described operation of the adapter unit. The upper half of FIG. 6 shows a process in which the current service processing unit A acquires a memory area from the adapter unit A. This process is performed as a pre-process for securing the area when the service processing unit A wants to access an area with the virtual memories A and B.

サービス処理部Aがアダプタ部Aにメモリエリア取得要求を行うと、アダプタ部AはステップS11でサービス処理部Bの運用状態をチェックすると共に、サービス処理部Bが待機系として運用中(即ち、通常の運用状態)の場合は、ステップS12,S13で仮想メモリA,Bのメモリエリアを取得し、サービス処理部Aにエリア取得応答を行う。また、上記ステップS11の判別でサービス処理部Bが故障又はログ情報を退避中の場合も、ステップS14,S15で仮想メモリA,Bのメモリエリアを取得し、サービス処理部Aにエリア取得応答を行う。 そして、上記何れの場合も、サービス管理部30にメモリエリア取得情報を通知し、これを受けたサービス管理部30はステップS16で取得情報を保持する。これにより、サービス管理部30は、仮想メモリA及び又はBのどのメモリエリアがアクセスされるのかを管理可能となる。なお、この例では、上記ステップS11で処理を分岐させる必要が無いが、説明の明瞭の為に処理を分岐させた。   When the service processing unit A makes a memory area acquisition request to the adapter unit A, the adapter unit A checks the operating state of the service processing unit B in step S11, and the service processing unit B is operating as a standby system (that is, normal) ), The memory areas of the virtual memories A and B are acquired in steps S12 and S13, and an area acquisition response is sent to the service processing unit A. Further, even when the service processing unit B has failed or saved log information in the determination in step S11, the memory areas of the virtual memories A and B are acquired in steps S14 and S15, and an area acquisition response is sent to the service processing unit A. Do. In any of the above cases, the service management unit 30 is notified of the memory area acquisition information, and the service management unit 30 that has received the information holds the acquisition information in step S16. Accordingly, the service management unit 30 can manage which memory area of the virtual memory A or B is accessed. In this example, it is not necessary to branch the process in step S11, but the process is branched for the sake of clarity.

図6の下半部に現用系のサービス処理部Aがアダプタ部Aからデータを読み出す処理を示す。サービス処理部Aがアダプタ部Aにメモリ読出要求を行うと、アダプタ部AはステップS17で仮想メモリAの前記取得エリアからデータを読み出し、サービス処理部Aにメモリ読出応答を行う。   The lower half of FIG. 6 shows a process in which the active service processing unit A reads data from the adapter unit A. When the service processing unit A makes a memory read request to the adapter unit A, the adapter unit A reads data from the acquisition area of the virtual memory A and sends a memory read response to the service processing unit A in step S17.

図7の上半部は現用のサービス処理部Aが仮想メモリA及び可能なら仮想メモリBに同一データを書き込む処理を示している。サービス処理部Aがアダプタ部Aにメモリ書込要求を行うと、アダプタ部AはステップS21でサービス処理部Bの運用状態をチェックすると共に、サービス処理部Bが待機系として運用中の場合は、ステップS22,S23で仮想メモリA,Bへのデータ書込を行い、サービス処理部Aにメモリ書込応答を行う。また、上記ステップS21の判別でサービス処理部Bが故障中又は退避中の場合は、ステップS24で仮想メモリAにのみデータを書き込み、サービス処理部Aにメモリ書込応答を行う。従って、仮想メモリBの内容破壊を有効に防止できる。   The upper half of FIG. 7 shows a process in which the current service processing unit A writes the same data in the virtual memory A and, if possible, the virtual memory B. When the service processing unit A makes a memory write request to the adapter unit A, the adapter unit A checks the operating state of the service processing unit B in step S21, and if the service processing unit B is operating as a standby system, In steps S22 and S23, data is written to the virtual memories A and B, and a memory write response is sent to the service processing unit A. If it is determined in step S21 that the service processing unit B is in failure or saving, data is written only in the virtual memory A in step S24, and a memory write response is sent to the service processing unit A. Therefore, destruction of the contents of the virtual memory B can be effectively prevented.

図7の下半部に現用系のサービス処理部Aが仮想メモリA.Bのメモリエリアを開放する場合を示す。サービス処理部Aがアダプタ部Aにメモリ開放要求を行うと、アダプタ部AはステップS25でサービス処理部Bの運用状態をチェックすると共に、サービス処理部Bが待機系として運用中の場合は、ステップS26,S27で仮想メモリA,Bのメモリエリア開放を行い、サービス処理部Aにメモリ開放応答を行う。また、上記ステップS25の判別でサービス処理部Bが故障中又は退避中の場合は、ステップS28、S9で仮想メモリA,Bのメモリ解放を行い、サービス処理部Aにメモリ開放応答を行う。   In the lower half of FIG. The case where the memory area B is released is shown. When the service processing unit A makes a memory release request to the adapter unit A, the adapter unit A checks the operating state of the service processing unit B in step S25, and if the service processing unit B is operating as a standby system, the step In S26 and S27, the memory areas of the virtual memories A and B are released, and a memory release response is sent to the service processing unit A. If it is determined in step S25 that the service processing unit B is in failure or saving, the virtual memories A and B are released in steps S28 and S9, and a memory release response is sent to the service processing unit A.

そして、上記何れの場合も、サービス管理部30にメモリ開放情報を通知し、これを受けたサービス管理部30はステップS30で取得情報を保持する。これにより、サービス管理部30は、仮想メモリA,Bへのメッモリアクセスが開放されたことを管理可能となる。   In either case, the service management unit 30 is notified of the memory release information, and the service management unit 30 that has received the information holds the acquired information in step S30. Thereby, the service management unit 30 can manage that the memory access to the virtual memories A and B is released.

図8にサービス処理部Aの障害復帰(即ち、仮想メモリAのログ情報収集完了)に伴う仮想メモリA,B間のデータを一致させる処理を示す。サービス管理部30はサービス処理部Aからの復旧通知を受けたことにより、ステップS41で仮想メモリBのアクセスに関して保存したメモリエリアがあるか否かを判別する。ある場合は、現用系のアダプタ部Bに仮想メモリB,A間のコピー要求を行い、当該エリア情報を通知する。   FIG. 8 shows a process for matching the data between the virtual memories A and B accompanying the failure recovery of the service processing unit A (that is, the log information collection of the virtual memory A is completed). Upon receiving the recovery notification from the service processing unit A, the service management unit 30 determines whether or not there is a memory area saved regarding the access to the virtual memory B in step S41. If there is, a copy request between the virtual memories B and A is made to the working adapter unit B, and the area information is notified.

これを受けたアダプタ部Bは、ステップS50で仮想メモリBの当該エリアのデータを仮想メモリAの対応エリアにコピーし、サービス管理部30にコピー完了応答を行う。   Receiving this, the adapter unit B copies the data in the area of the virtual memory B to the corresponding area of the virtual memory A in step S50, and sends a copy completion response to the service management unit 30.

これを受けたサービス管理部30は、ステップS42で当該取得エリアの情報をリセットし、ステップS41に戻る。こうして、やがて、1又は2以上の保存エリアのコピー処理を全て完了すると、サービス処理部Aに待機系再開の通知を行う。   Receiving this, the service management unit 30 resets the information of the acquisition area in step S42, and returns to step S41. Thus, when all of the copy processing of one or more storage areas is completed, the service processing unit A is notified of restart of the standby system.

図9は他の実施の形態によるコンピュータシステムのブロック図で、二つのCPUにより二つのサービス処理を並列に実行可能なマルチCPU方式による構成例を示している。この例のサービス処理部AはCPU11Aのサービスプログラム実行により実現され、またサービス処理部BはCPU11Bのサービスプログラム実行により実現される。また、CPU−AはOS−Aの下で動作し、CPU−BはOS−Bの下で動作する。こうして、サービス処理部A,Bの処理性能が格段に向上している。   FIG. 9 is a block diagram of a computer system according to another embodiment, and shows a configuration example of a multi-CPU system in which two service processes can be executed in parallel by two CPUs. In this example, the service processing unit A is realized by executing the service program of the CPU 11A, and the service processing unit B is realized by executing the service program of the CPU 11B. CPU-A operates under OS-A, and CPU-B operates under OS-B. Thus, the processing performance of the service processing units A and B is greatly improved.

一方、この例のシステム管理部30については、基本的には待機系のCPU11Bのプログラム実行により実現され、この場合の現用系CPU11Aは専ら本来のサービス機能の提供に専念できる。   On the other hand, the system management unit 30 in this example is basically realized by program execution of the standby CPU 11B, and the active CPU 11A in this case can concentrate exclusively on providing the original service function.

なお、上記実施の形態では、事前にメモリエリアを取得するアクセス方法を示したが、これに限らない。他の様々なメモリアクセス方法を採用できる。   In the above embodiment, an access method for acquiring a memory area in advance has been described. However, the present invention is not limited to this. Various other memory access methods can be employed.

また、上記本発明に好適なる複数の実施の形態を述べたが、本発明思想を逸脱しない範囲内で各部の構成、制御、処理及びこれらの組合せの様々な変更が行えることは言うまでも無い。   Moreover, although several embodiment suitable for the said invention was described, it cannot be overemphasized that the structure of each part, control, a process, and these combination can be variously changed within the range which does not deviate from this invention. .

実施の形態によるコンピュータシステムのブロック図である。1 is a block diagram of a computer system according to an embodiment. 実施の形態によるサービスプロセッサの構築手順を説明する図である。It is a figure explaining the construction procedure of the service processor by embodiment. 実施の形態によるプリコンパイラの動作を説明する図である。It is a figure explaining operation | movement of the precompiler by embodiment. 実施の形態によるコンピュータシステムの動作を説明する図(1)である。FIG. 5 is a diagram (1) illustrating an operation of the computer system according to the embodiment. 実施の形態によるコンピュータシステムの動作を説明する図(2)である。FIG. 6 is a diagram (2) illustrating the operation of the computer system according to the embodiment. 実施の形態によるアダプタ部の動作シーケンス図(1)である。It is an operation | movement sequence diagram (1) of the adapter part by embodiment. 実施の形態によるアダプタ部の動作シーケンス図(2)である。It is an operation | movement sequence diagram (2) of the adapter part by embodiment. 実施の形態によるアダプタ部の動作シーケンス図(3)である。It is an operation | movement sequence diagram (3) of the adapter part by embodiment. 他の実施の形態によるコンピュータシステムのブロック図である。And FIG. 12 is a block diagram of a computer system according to another embodiment.

符号の説明Explanation of symbols

11 CPU
10A,10B サービスプロセッサA,B
20A,20B 主メモリA,B
21A,21B サービス処理部A,B
22A,22B アダプタ部A,B
30 サービス管理部
41A,41B 仮想メモリA,B
60 ディスク装置(DISK)
100 コンピュータシステム
11 CPU
10A, 10B Service processor A, B
20A, 20B Main memory A, B
21A, 21B Service processing part A, B
22A, 22B Adapter part A, B
30 Service management unit 41A, 41B Virtual memory A, B
60 Disk unit (DISK)
100 computer system

Claims (4)

コンピュータのプログラム実行により所定のサービス機能を提供するサービスシステムの冗長化方式であって、
プログラム実行により同一のサービス機能を実現する第1,第2のサービス処理部と、
前記第1,第2のサービス処理部にそれぞれ対応して設けられ、サービス運用に係る処理情報を記憶する第1,第2のメモリエリアと、
前記第1又は第2のメモリエリアの記憶情報を退避する退避メモリと、
前記第1,第2のサービス処理部とメモリエリアとからなる対を現用系と待機系として運用するサービス管理部とを備え、
現用系のサービス処理部は、自己の処理情報報を現用系及び待機系のメモリに書き込むと共に、サービス管理部は、現用系の障害発生により速やかに系を切り替え、かつ旧現用系のメモリエリアに記憶されたログ情報を退避メモリに退避することを特徴とするサービスシステムの冗長化方式。
A redundancy system for a service system that provides a predetermined service function by executing a program on a computer,
First and second service processing units for realizing the same service function by program execution;
First and second memory areas respectively provided corresponding to the first and second service processing units and storing processing information related to service operation;
A save memory for saving storage information in the first or second memory area;
A service management unit that operates the pair of the first and second service processing units and the memory area as an active system and a standby system;
The service processor of the active system writes its processing information report in the memory of the active system and the standby system, and the service management section switches the system promptly when a failure occurs in the active system, and the old service system memory area. A service system redundancy system characterized in that stored log information is saved in a save memory.
第1,第2のサービス処理部にそれぞれバインドされて第1,第2のメモリエリアへのメモリアクセスを代行する第1,第2のアダプタ部を備え、
現用系のアダプタ部は、通常は該現用系のサービス処理部からのデータ書込命令に従って現用系及び待機系のメモリエリアに同一のデータを書き込むと共に、待機系のサービス処理部が障害中又は該待機系のメモリエリアのデータが退避中であることにより現用系のメモリエリアにのみデータを書き込むことを特徴とする請求項1記載のサービスシステムの冗長化方式。
The first and second adapter units are respectively bound to the first and second service processing units and perform memory access to the first and second memory areas.
The active adapter unit normally writes the same data to the active and standby memory areas in accordance with a data write command from the active service processor, and the standby service processor is in trouble or 2. The service system redundancy system according to claim 1, wherein the data is written only in the active memory area because the data in the standby memory area is being saved.
サービス管理部は、待機系のサービス処理部が障害中又は該待機系のメモリエリアのデータが退避中である期間に、データ書込のあった現用系メモリのエリア情報を保持すると共に、待機系のサービス処理部の復旧により、現用系メモリの前記エリア情報に対応する記憶データを待機系のメモリエリアにコピーすることを特徴とする請求項2記載のサービスシステムの冗長化方式。 The service management unit holds the area information of the active memory in which data has been written while the standby service processing unit is faulty or data in the standby memory area is being saved. 3. The service system redundancy system according to claim 2, wherein the stored data corresponding to the area information of the active memory is copied to the standby memory area by restoration of the service processing unit. 第1,第2のサービス処理部が、それぞれ独自のCPUによって動作するように構成されていることを特徴とする請求項1記載の記載のサービスシステムの冗長化方式。 2. The service system redundancy system according to claim 1, wherein each of the first and second service processing units is configured to operate by a unique CPU.
JP2005087523A 2005-03-25 2005-03-25 Service system redundancy method Expired - Fee Related JP4494263B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005087523A JP4494263B2 (en) 2005-03-25 2005-03-25 Service system redundancy method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005087523A JP4494263B2 (en) 2005-03-25 2005-03-25 Service system redundancy method

Publications (2)

Publication Number Publication Date
JP2006268596A true JP2006268596A (en) 2006-10-05
JP4494263B2 JP4494263B2 (en) 2010-06-30

Family

ID=37204474

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005087523A Expired - Fee Related JP4494263B2 (en) 2005-03-25 2005-03-25 Service system redundancy method

Country Status (1)

Country Link
JP (1) JP4494263B2 (en)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6172496A (en) * 1984-09-18 1986-04-14 Fujitsu Ltd System resuming system of duplex information processor
JPS62165250A (en) * 1986-01-16 1987-07-21 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Virtual memory
JPH0344737U (en) * 1989-09-11 1991-04-25
JPH03142534A (en) * 1989-10-28 1991-06-18 Nec Corp Memory double writing system
JPH04280551A (en) * 1991-03-08 1992-10-06 Fujitsu Ltd Fault information collection system in exchange system
JPH06342387A (en) * 1993-05-31 1994-12-13 Nec Corp Fault information gathering system of information processor
JPH0827761B2 (en) * 1986-01-22 1996-03-21 株式会社日立製作所 Dual-system simultaneous writing method for dual memory
JP2695552B2 (en) * 1991-12-06 1997-12-24 富士通株式会社 Failure handling method
WO1999026138A1 (en) * 1997-11-14 1999-05-27 Hitachi, Ltd. Method of changing over a multiplex system
JP2004005113A (en) * 2002-05-31 2004-01-08 Nec System Technologies Ltd Virtual computer system operated on a plurality of actual computers, and control method thereof

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6172496A (en) * 1984-09-18 1986-04-14 Fujitsu Ltd System resuming system of duplex information processor
JPS62165250A (en) * 1986-01-16 1987-07-21 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Virtual memory
JPH0827761B2 (en) * 1986-01-22 1996-03-21 株式会社日立製作所 Dual-system simultaneous writing method for dual memory
JPH0344737U (en) * 1989-09-11 1991-04-25
JPH03142534A (en) * 1989-10-28 1991-06-18 Nec Corp Memory double writing system
JPH04280551A (en) * 1991-03-08 1992-10-06 Fujitsu Ltd Fault information collection system in exchange system
JP2695552B2 (en) * 1991-12-06 1997-12-24 富士通株式会社 Failure handling method
JPH06342387A (en) * 1993-05-31 1994-12-13 Nec Corp Fault information gathering system of information processor
WO1999026138A1 (en) * 1997-11-14 1999-05-27 Hitachi, Ltd. Method of changing over a multiplex system
JP2004005113A (en) * 2002-05-31 2004-01-08 Nec System Technologies Ltd Virtual computer system operated on a plurality of actual computers, and control method thereof

Also Published As

Publication number Publication date
JP4494263B2 (en) 2010-06-30

Similar Documents

Publication Publication Date Title
US6622263B1 (en) Method and apparatus for achieving system-directed checkpointing without specialized hardware assistance
JP4073464B2 (en) Main memory system and checkpointing protocol for fault tolerant computer system using read buffer
US7761734B2 (en) Automated firmware restoration to a peer programmable hardware device
JP5392594B2 (en) Virtual machine redundancy system, computer system, virtual machine redundancy method, and program
US5958070A (en) Remote checkpoint memory system and protocol for fault-tolerant computer system
US5751939A (en) Main memory system and checkpointing protocol for fault-tolerant computer system using an exclusive-or memory
US7761735B2 (en) Automated firmware restoration to a peer programmable hardware device
JP4341571B2 (en) Storage device system, control method therefor, and control program
US20100050014A1 (en) Dual independent non volatile memory systems
JP4322240B2 (en) Reboot method, system and program
KR101063720B1 (en) Automated Firmware Recovery for Peer Programmable Hardware Devices
JP3774826B2 (en) Information processing device
JPH10326220A (en) File system and file managing method
JP5683088B2 (en) Recovery system, recovery method, and backup control system
JP2006277724A (en) Processing device, failure recovery method therefor, and failure restoration method
JP4494263B2 (en) Service system redundancy method
JP2612385B2 (en) Transfer processing between multiple subsystems
JP3022768B2 (en) Virtual computer system
JP4165423B2 (en) System board with core I / O card
JP6364773B2 (en) Information processing apparatus, information processing system, memory replication method, and computer program
JP4788516B2 (en) Dynamic replacement system, dynamic replacement method and program
KR930010952B1 (en) Memory error correction method
JP2001051854A (en) Information management system
JP2000322397A (en) Information processor
CN114253765A (en) Data recovery method and related equipment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100105

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100301

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100330

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100407

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140416

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees