JP5791524B2 - Os動作装置及びos動作プログラム - Google Patents

Os動作装置及びos動作プログラム Download PDF

Info

Publication number
JP5791524B2
JP5791524B2 JP2012000311A JP2012000311A JP5791524B2 JP 5791524 B2 JP5791524 B2 JP 5791524B2 JP 2012000311 A JP2012000311 A JP 2012000311A JP 2012000311 A JP2012000311 A JP 2012000311A JP 5791524 B2 JP5791524 B2 JP 5791524B2
Authority
JP
Japan
Prior art keywords
control data
unit
dump file
shared memory
data
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.)
Expired - Fee Related
Application number
JP2012000311A
Other languages
English (en)
Other versions
JP2013140491A5 (ja
JP2013140491A (ja
Inventor
佑美 勅使河原
佑美 勅使河原
寛隆 茂田井
寛隆 茂田井
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2012000311A priority Critical patent/JP5791524B2/ja
Publication of JP2013140491A publication Critical patent/JP2013140491A/ja
Publication of JP2013140491A5 publication Critical patent/JP2013140491A5/ja
Application granted granted Critical
Publication of JP5791524B2 publication Critical patent/JP5791524B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Retry When Errors Occur (AREA)

Description

この発明は、複数のOSが並列(同時)に動作するOS動作装置及びOS動作プログラムに関する。例えば、第1OSのみが二次記憶装置に割り付けられており、第2OSが二次記憶装置に割り付けられていない構成において、第2OS上で実行中のプログラムが中断した場合に、このプログラムを再開する技術に関する。
ハイブリッドOS(Operating System)とは、複数のOSを1つのコンピュータアーキテクチャ上で同時動作させるものである。ハイブリッドOSは、例えば、制御プログラムを動作させるリアルタイムOS(RTOS:RealTimeOS)と、多機能で豊富なソフトウェア資源を持つようなOS(情報系OS)とを同時動作させる。従来のハイブリッドOSの環境において、片方のOSで障害が発生したとき、もう片方のOSも中断されてしまうことがある。その際、安全にシステムを再開させるためには、障害発生時に制御データ(制御プログラム名、実行ライン番号、制御ステータス(ローカル変数の値)、制御命令パラメータなど)を二次記憶装置に保存しておき、再起動後に二次記憶装置から読み込む必要がある。その際、それぞれのOSに二次記憶装置を割り付けておくことにより、各OSのデータを保存することができるが、二次記憶装置を複数用意するのは、その分コストがかかる。
従来、二次記憶装置の削減には、特許文献1や特許文献2の技術が用いられてきた。特許文献1では、二次記憶装置が割り当てられていないOSにて障害が発生した場合、メモリダンプを行い、共有メモリにダンプファイルを保存し、二次記憶装置が割り当てられており正常に動作しているOSがダンプファイルを二次記憶装置に保存することにより、障害発生時にデータを保存する方法を用いる。
また、特許文献2では、保存したデータを使用したシステムの再開には、任意の動作状態から休止状態へ移行する場合、休止状態から前記任意の動作状態に復帰させるために必要な情報を保存し、その情報に基づいて休止状態から任意の動作状態に復帰させるという方法である。
特開2007−334403号公報 特開2005−316855号公報
RTOSと情報系OSとが動作するようなハイブリッドOSでは、情報系OSにてソフトウェア異常が発生した時に、情報系OSに割り付けられている二次記憶装置を用いて、安全にシステムを再開させることを目的とした場合、以下の必要がある。つまり、システムの再開には、システムがどこで中断されたのかという情報と、そのときに所持しているデータとを、ダンプファイルとして保存し、このダンプファイルを使用して、システムを再開させる必要がある。
しかし特許文献1では、再起動時にダンプファイルを復元する技術が示されていないので、障害発生時に保存したデータの復元方法の開示がない。また、特許文献2では、システムの再起動後、終了時の状態に復元することが開示されているが、必要な部分だけ復旧させ安全にシステムを再開させたい場合、その技術ついては開示されていない。
本発明は、情報系OS(第1OS)でソフトウェア障害が発生した場合に、障害発生時のRTOS(第2OS)上のデータをダンプファイルとして保存し、情報系OS及びRTOSの再起動後、ダンプファイルから復元したデータにより、システムの再開方法を変えることにより、システムの再開に必要なデータだけ復旧させ、安全にシステムを再開させることを目的とする。
この発明のOS動作装置は、
第1OS(Operating System)と、第2OSとが動作するOS動作装置において、
第1OSに割り付けられた記憶装置である第1OS用記憶装置と、
第1OSと、第2OSとの両方に割り付けられた共有メモリ領域を有する共有メモリ部と、
第1OSのもとで動作する、第1側ダンプファイル保存部及び第1側ダンプファイル復元部と、
第2OSのもとで動作する、第2側制御データ保存部及び第2側制御データ復元部と
を備え、
前記第2側制御データ保存部は、
第1OSと第2OSとの動作中に、第1OSに関するソフトウェア異常として予め設定された第1OSソフトウェア異常を第1OSが検知すると、第2OSによって実行される第2OS系アプリケーションプログラムのうち第1OSソフトウェア異常の検知の際に実行中の第2OS系アプリケーションプログラムの再開用のデータであって、第1OSソフトウェア異常の検知の際における第2OS系アプリケーションプログラムの状態からこの第2OS系アプリケーションプログラムの実行を再開するためのデータである第2OS制御データを、前記共有メモリ部に保存し、
前記第1側ダンプファイル保存部は、
前記第2側制御データ保存部が前記共有メモリ部に第2OS制御データを保存した場合には、保存された第2OS制御データのダンプファイルを生成し、生成されたダンプファイルを前記第1OS用記憶装置に保存し、
前記第1側ダンプファイル復元部は、
第1OSが再起動した場合には前記第1OS用記憶装置に第2OS制御データのダンプファイルが存在するかどうかを確認し、存在する場合には第2OS制御データのダンプファイルを、前記共有メモリ部に復元し、
前記第2側制御データ復元部は、
前記第1側ダンプファイル復元部によって第2OS制御データのダンプファイルが前記共有メモリ部に復元されると、第1OSと共に第2OSが再起動している場合には復元された第2OS制御データを解析し、第1OSソフトウェア異常の検知の際に動作していた第2OS系アプリケーションプログラムの実行を、第1OSソフトウェア異常の検知の際における状態から、第2OSに再開させる再開処理を実行することを特徴とする。
この発明により、第1OSのみに割り付けられた第1OS用記憶装置を有し第1OSと第2OSとが動作するOS動作装置において、第1OSにてソフトウェア障害が発生すると、この発生の際に第2OS上で動作していた第2OSプログラムを、両OSの再起動後、中断の時点から、再開させることができる。第2OSに割り付けるて二次記憶装置は不要になる。
実施の形態1のOS再開装置1001のブロック図。 実施の形態1のOS再開装置1001の動作を示すフローチャート。 図2のフローチャートに続くフローチャート。 実施の形態1の制御データ出力部242の動作を示すフローチャート。 実施の形態1の制御データ復元部243の動作を示すフローチャート。 実施の形態1の制御データ示す図。 実施の形態2のOS再開装置1002のブロック図。 実施の形態2のOS再開装置1002の動作を示すフローチャート。 図8のフローチャートに続くフローチャート。
実施の形態1.
図1〜図6を参照して実施の形態1のOS再開装置1001(OS動作装置)を説明する。
図1は、実施の形態1におけるOS再開装置1001の構成図である。図1では、ソフトウェア(以下、S/Wとも表記する)の構成としてS/W200と、ハードウェア(以下、H/Wとも表記する)の構成としてH/W100とを示した。図1において、破線1より上はS/W200の構成図を示し、下はH/W100の構成図を示す。実線180に接続しているH/Wは、情報系OS210(第1OSの一例)に割り付けられているH/Wを示す。破線190に接続しているH/Wは、RTOS220(第2OSの一例)に割り付けられているH/Wを示す。図1に示すように、HDD(Hard Disk Drive)120は、情報系OS210にのみ割り付けられている。共有メモリ111(共有メモリ部)は、情報系OS210とRTOS220との両方に割り付けられている。共有メモリ111は情報系OS210とRTOS220との両方に割り付けられた共有メモリ領域を有する。HDD120は揮発性メモリ110に対する二次記憶装置の一例であり、HDD以外に、不揮発のメモリ装置、例えば、フラッシュメモリや、DVD記録装置等でも構わないし、揮発性メモリ110と別の揮発性メモリでもよい。
(OS再開装置1001の動作の概要)
OS再開装置1001は、情報系OS210のみに割り付けられたHDD120(第1OS用記憶装置)を有し、情報系OS210とRTOS220とが動作する装置(コンピュータ)である。OS再開装置1001は、情報系OS210にてソフトウェア障害が発生すると、ソフトウェア異常発生の際にRTOS220上で動作していた「RT系プログラムp」(後述する)を、両OSの再起動後、以下の手順(概略である)で再開させる。「RT系プログラムp」とは、後述するが、情報系OS210におけるソフトウェア異常発生の際に、RTOS220上で動作していたRTOS220のアプリケーションプログラムである。
まず、制御データ出力部242は、情報系OS210によりソフトウェア異常が検知されると、「制御データD2」(後述するが、RT系プログラムpの再開用データ)を共有メモリ111に保存する。メモリダンプ機能部211は、保存された制御データD2のダンプファイルを生成し、HDD120に保存する。ダンプファイル復元部232は、情報系OS210とRTOS220とが再起動すると、制御データを含むダンプファイルを共有メモリ111に復元する。制御データ復元部243は、情報系OS210とRTOS220との再起動後にダンプファイルが共有メモリ111に復元されると、復元された制御データD2に基づいて、RT系プログラムpをソフトウェア異常検知の際における状態から再開する。これにより、HDDが割り付けられていないRTOS220に関して、RTOS220上で動作していたRT系プログラムpを、情報系OS210、RTOS220の再起動後に、再開することができる。以下に詳細を説明する。
(H/W100)
まず、H/W100の構成を説明する。OS再開装置1001は、揮発性メモリ110、HDD120、CPU(Central Processing Unit)130、独自I/O140、NIC(Network Interface Card)150、ディスプレイ160、入力装置であるキーボードあるいはマウスのキーボード/マウス170等を備えるコンピュータである。
(1)揮発性メモリ110は、情報系OS210,RTOS220の両方のOSが使用できる共有メモリ111、RTOS220のみが使用できるRTOS用メモリ112、情報系OS210のみが使用できる情報系OS用メモリ113の3つで構成されている。共有メモリ111のダンプフラグF1は、ダンプファイル122がHDD120内にあるかどうか判断するためのものであり、ダンプファイル復元部232が立てる(図2のS102)。
(2)HDD120は、情報系OS210に割り付けられており、基本データD1と、ダンプファイル122を格納している。
「基本データD1」とは、RTOS220上で動作するプログラムや必要なデータ等からなる。「基本データD1」とは、RTOS220によるRTOS220上で動作する後述の複数のRT系プログラム1〜RT系プログラムnをRTOS220が実行するために必要な、RT系プログラム1等のプログラム自体を含む実行に必要なデータである。
「ダンプファイル122」は、情報系OS210のメモリダンプ機能部211によって生成されたものでる。ダンプファイル122内には、「制御データD2」が格納されている。「制御データD2」(第2OS制御データ)は、例えば、ソフトウェア異常発生時の変数の値やRT系アプリケーションプログラム240がどこで中断されたかの情報などからなる。「制御データD2」については、図3のS120でさらに後述する。
(3)CPU130は、情報系OS210とRTOS220との両方に割り付けられている。これは、2つのOSがCPU130上で切り替わり動作するためである。
(4)独自I/O140は、RTOS220ないし「RT系プログラム1〜n」により使用される制御用の独自デバイスである。
(5)なお、S/W200における情報系アプリケーションプログラム230(以下、情報系アプリケーション230という)及び情報系OS210は、揮発性メモリ110の情報系OS用メモリ113に格納される。また、S/W200におけるRT系アプリケーションプログラム240(以下、RT系アプリケーション240という)及びRTOS220は、RTOS用メモリ112に格納される。共有メモリ111には処理に応じたデータが、情報系OS210、RTOS220によって、書き込み/読み出しされる。
(S/W200)
次にS/W200の構成を説明する。
(1)情報系アプリケーションプログラム230は、情報系OS210上で動作するアプリケーションである。
(2)RT系アプリケーションプログラム240(以下、RT系アプリケーション240という)は、RTOS220上で動作するアプリケーションである。
(情報系アプリケーション230)
図1に示すように、情報系アプリケーション230として、データ入出力部231(第1側データ入出力部)、ダンプファイル復元部232(第1側ダンプファイル復元部)、連携アプリケーションA(233)がある。また、これらの「〜部」、連携アプリケーションA(233)の他に、複数のアプリケーションプログラム1〜kが存在する。これらのアプリケーション1〜kは、以下、「情報系プログラム1〜k」と呼ぶ。
(1)情報系OS210内にあるメモリダンプ機能部211(第1側ダンプファイル保存部)は、共有メモリ111と情報系OS用メモリ113とをメモリダンプして、HDD120に保存する機能である。なお、メモリダンプ機能部211は、情報系OS210が有する機能としているが一例である。メモリダンプ機能部211は、情報系アプリケーション230が有する機能としてもよい。
(2)データ入出力部231は、HDD120と共有メモリ111との間で、データを入出力する手段である。
(3)ダンプファイル復元部232は、HDD120に保存されているダンプファイル122内の制御データD2を共有メモリ111に復元する手段である。
(4)連携アプリケーションプログラムA(233)は、RTOS220上のRT系アプリケーションプログラム240内にある連携アプリケーションB(244)との間で、情報系OS210とRTOS220間のデータの送受信を行うアプリケーションである。
(RT系アプリケーション240)
図1に示すように、RT系アプリケーション240として、基本データ入出力部241(第2側基本データ取得部)、制御データ出力部242(第2側制御データ保存部)、制御データ復元部243(第2側制御データ復元部)、連携アプリケーションB(244)がある。また、これらの「〜部」、連携アプリケーションB(244)の他に、複数のアプリケーションプログラム1〜アプリケーションプログラムnがRT系アプリケーション240に存在する。これらのアプリケーション1〜nは、以下、「RT系プログラム1〜n」(第2OS系アプリケーションプログラム)と呼ぶ。
(1)基本データ入出力部241は、共有メモリ111を経由しRTOS220の基本データD1を保存・ロードしたりする手段である。
(2)制御データ出力部242は、情報系OS210でソフトウェア異常が発生した場合に、RTOS220の制御データD2(RTOS用メモリ112に存在)を、共有メモリ111に保存する手段である。
(3)制御データ復元部243は、ダンプファイル復元部232によってHDD120のダンプファイル122から共有メモリ111に復元された制御データD2から、システムの再開に必要なデータをロードして、システムを再開させるための手段である。
(4)連携アプリケーションB(244)は、前述のように、情報系OS210上の情報系アプリケーションプログラム230内にある連携アプリケーションA(233)との間で、情報系OS210とRTOS220とのデータの送受信を行うアプリケーションプログラムである。
次にOS再開装置1001の起動および終了の動作について説明する。
図2、図3は、OS再開装置1001の動作のフローチャートである。情報系OS210、RTOS220は、図2、図3の動作をするように、プログラミングされている。
(1)まずステップ100(以下、S100等と記載する)において、情報系OS210が起動する。
(2)次にS101において、ダンプファイル復元部232は、HDD120にダンプファイル122があるかどうかを確認する。ダンプファイル122は、前回の動作中に情報系OS210が「ソフトウェア異常」の発生を検知した場合に、メモリダンプ機能部211によって生成されるものである(後述のS123)。現時点では、HDD120にダンプファイル122がないものとする。よって処理がS103に進む。ダンプファイル122がある場合についての処理は、再起動後の処理説明で述べる。
(3)次にS103において、情報系OS210の連携アプリケーションA(233)が起動する。
(4)そしてS104において、RTOS220を起動する。
(5)次にS105において、RTOS220の連携アプリケーションも起動する。
(6)次にS106において、RTOS220(例えば制御データ復元部243)は、共有メモリ111にダンプフラグF1が立っているかの判断を行う。この場合、ダンプフラグF1はダンプファイル122がある場合にダンプファイル復元部232が立てる(S102)ものであるため、現時点では立っていない。ダンプフラグF1が立っている場合の処理についても、再起動後に説明する。
(7)次に、S107において、データ入出力部231、基本データ入出力部241は、HDD120から、情報系OS210、共有メモリ111を介して、RTOS220に「基本データD1」を読み込む。
具体的には次の様である。基本データ入出力部241は、HDD120から基本データD1を読み込むのであるが、RTOS220にはHDD120が割り付けられていないため、直接にはHDD120から読み込めない。このため、基本データ入出力部241は情報系OS210側のデータ入出力部231と連携して、データ入出力部231にHDD120の基本データD1を共有メモリ111に読み込ませ、共有メモリ111の基本データD1をRTOS用メモリ112の所定のメモリ領域へ転送する。なお、データ入出力部231と基本データ入出力部241との連携は、連携アプリケーションA(233)と連携アプリケーションB(244)との間の通信による。また、情報系アプリケーション230の「〜部」と、RT系アプリケーション240の「〜部」との連携は、データ入出力部231、基本データ入出力部241の連携と同様に、連携アプリケーションA(233)と連携アプリケーションB(244)とを介して行われる。
(8)そして、S111において、各OS(情報系OS210及びRTOS220、以下同じ)にて、該当する各アプリケーションを実行する。
(9)次にS112(図3)において、各OSがアプリケーションを実行に、情報系OS210にて実行中のアプリケーションにおけるソフトウェア異常発生を情報系OS210が検知したかしないかにより処理が分れる。「ソフトウェア異常」(第1OSソフトウェア異常)とは、情報系OS210に関するソフトウェア異常として予め設定されたソフトウェア異常である。ソフトウェア異常が発生しなければ、S112において、各OSはアプリケーションが終了するまで、アプリケーションを継続して実行する。
(10)そしてS114にて、各OSでのアプリケーション(情報系プログラム1〜k及びRT系プログラム1〜nの中の動作中プログラム)が正常に終了する。
(11)次に、S115において、基本データ入出力部241はデータ入出力部231と連携して、RTOS220の「基本データD1」を、情報系OS210と共有メモリ111を介して、HDD120に保存する。具体的にはS107の逆のデータの流れである。基本データ入出力部241は情報系OS210側のデータ入出力部231と連携するが、RTOS用メモリ112の所定の領域の基本データD1を共有メモリ111に送る。データ入出力部231は、共有メモリ111に送られた基本データD1をHDD120に保存する。この場合もデータ入出力部231と基本データ入出力部241との連携は、連携アプリケーションA(233)と連携アプリケーションB(244)との間の通信による。
(12)その後S116において、RTOS220を終了させる。
(13)次に、S117において、情報系OS210へOS切替えを行う。
(14)そして、S124において、情報系OS210も終了させる。
(S112でソフトウェア異常の場合)
次に、S112にて、「ソフトウェア異常」が発生した場合について説明する。情報系OS210が「ソフトウェア異常」の発生を検知した場合、処理はS112からS118に進む。情報系OS210による「ソフトウェア異常」の検出情報は、連携アプリケーションA(233)と連携アプリケーションB(244)との連携により、情報系OS210から、RTOS220に通知される。
(1)まずS118において、RTOS220にOSを切替え、実行を移す。
(2)次にS119において、RTOS220にて制御処理を行う。
(3)そしてS120において、制御データ出力部242は、RTOS220の「制御データD2」を共有メモリ111に保存する。共有メモリ111に保存される「制御データD2」は、RT系プログラムpの再開用データであるが、RTOS220は、制御データ出力部242による「制御データD2」の出力前に、実行中のRT系プログラムpを中断する。これは実施の形態2(S323)でも同様である。「制御データD2」の元となるデータは、RTOS用メモリ112に格納されている。「制御データD2」とは、RTOS220によって実行されるRT系プログラム1〜nのうち情報系OS210による「ソフトウェア異常検知」の際の実行中プログラムである「RT系プログラムp」(単数とは限らないず、複数でもよい)の再開用のデータであって、前記「ソフトウェア異常」の検知の際におけるRT系プログラムpの状態からこの「RT系プログラムp」の実行再開のためのデータである。
(4)制御データ出力部242によって「制御データD2」が共有メモリ111に保存されると、S121において、RTOS220を終了する。
(5)その後、S122において、情報系OS210へOSを切替え、実行を移す。
(ダンプファイル122の生成)
(6)次に、S123において、情報系OS210のメモリダンプ機能部211は、S120で制御データ出力部242によって共有メモリ111に制御データD2が保存された場合には、共有メモリ111と、情報系OS用メモリ113とをメモリダンプし、HDD120に、ダンプファイル122を保存する。ここで情報系OS用メモリ113もダンプしているが、例えば、S101、S108のダンプファイル復元部232による処理の際に、情報系OS用メモリ113のデータを使用することを想定したためである。ダンプファイル復元部232は情報系OS用メモリ113のデータを使用しない構成でもよい。すなわち、メモリダンプ機能部211による情報系OS用メモリ113のダンプは必須ではない。またメモリダンプ機能部211は、連携アプリケーションA(233)と、連携アプリケーションB(244)との連携により、制御データ出力部242が共有メモリ111に制御データD2を出力したことを知ることができる。このように、メモリダンプ機能部211は、RTOS220の「制御データD2」をHDD120にダンプファイル122内の制御データD2として保存する。
(7)S124において、情報系OS210が終了する。
(再起動後の処理)
次に、再起動後の処理について説明する。ここで「再起動」とは、図2、図3のフローチャートにおいて、S112でYES(異常検出)の経路に進み、その後に図2のSTARTに戻り、S100,S104で各OSが起動する場合を意味する。図2、図3からなるフローチャートでは、図2のSTARTに戻る。
(1)まず、S100において、情報系OS210が起動する。
(2)次にS101において、ダンプファイル復元部232は、HDD120にダンプファイル122が存在するかどうかを確認する。この例では終了前のS123においてダンプファイル122が生成されているので、ダンプファイル122がHDD120に存在する。
(3)このため、S102において、ダンプファイル復元部232は、共有メモリ111にダンプフラグF1を立てる。
(4)次にS103において、情報系OS210の連携アプリケーションA(233)を起動する。
(5)そしてS104において、RTOS220を起動する。次にS105において、RTOS220の連携アプリケーションB(244)も起動する。
(6)その後S106において、RTOS220側の制御データ復元部243は、ダンプフラグF1の状態を確認する。ダンプファイル122のあることが制御データ復元部243によって確認されると、制御データ復元部243は、ダンプファイル復元部232と連携して「制御データD2」の取得処理を行う。
(7)S108において、制御データ復元部243は、ダンプファイル復元部232に、制御データD2を含むダンプファイル122(制御データD2)を、共有メモリ111に復元させる。つまりダンプファイル復元部232は、情報系OS210が再起動した場合(S100)には、HDD120に制御データD2のダンプファイルが存在するかどうかを確認し(S101)、存在する場合には制御データD2のダンプファイルを、共有メモリ111部に復元(S106、S108)する。
(8)次にS109において、制御データ復元部243は、共有メモリ111に復元された制御データD2を解析することにより、RTOS220(RTOS用メモリ112)に、共有メモリ111に復元された制御データD2のうちRT系プログラムpの再開に必要なデータをロードし、RTOS220にRT系プログラムpを再開させる(再開処理)。つまり制御データ復元部243は、ダンプファイル復元部232によって制御データD2のダンプファイルが共有メモリ111に復元されると、復元された制御データD2に基づいて、ソフトウェア異常の検知の際に動作していたRT系プログラムpの実行を、ソフトウェア異常の検知の際における状態から、RTOS220に再開させる再開処理を実行する。
(9)その後、S110において、制御データ復元部243は、必要のなくなったダンプファイル122をHDD120から削除する。この削除は、制御データ復元部243が連携アプリケーションB(244)を介して、情報系OS210に削除させる。
(10)以上の処理により、S111において、RT系プログラムpを再開できる。
(制御データ出力部242の動作フロー)
図4は、RTOS220側の制御データ出力部242のS120におけるフローチャートを示す。
(1)まず、S130において、制御データ出力部242は、RT系アプリケーション240(RT系プログラムp)の中断時点での、RT系プログラムp内で使用していた変数の値を共有メモリ111に保存する。なおRTOS220が、制御データ出力部242による「制御データD2」の出力前に、実行中のRT系プログラムpを中断する。
(2)次にS131において、制御データ出力部242は、RT系プログラムpがどこで中断されたかの情報である中断位置情報を、共有メモリ111に保存する。これらのデータ(変数値、中断位置情報)は、RTOS220の再起動後、RT系アプリケーション240(RT系プログラムp)の再開に必要となる。
(制御データ復元部243の動作フロー)
図5は、制御データ復元部243の動作を示すフローチャートである。
(1)まずS140において、制御データ復元部243は、「制御データD2」のうち、RT系プログラムpがどこで中断されたのかを示す中断位置情報を、共有メモリ111からRTOS220(RTOS用メモリ112)に読み込む。
(2)次にS141において、中断位置情報から、安全に再開するためにはどこから再開すればいいかを計算する。
図6は、「制御データD2」を構成するデータの一例である。制御データ復元部243は、制御プログラム名51と実行ライン番号52とから、「ソフトウェア異常」の発生時に、RT系プログラム1〜nのうちどのアプリケーションプログラムの、どこで中断されたかを判断する。そして、制御データ復元部243は、ソフトウェア異常発生時に中断されたアプリケーションプログラムの持っていた制御命令パラメータ53の値と、ローカル変数のような制御ステータス54を得る。
(3)そしてS142において、制御データ復元部243は、これらの「制御データD2」(図6のデータ51〜54等)を共有メモリ111からRTOS220(RTOS用メモリ112)へ読み込む。
このように、情報系OS210での「ソフトウェア異常」の発生時に、情報系OS210のメモリダンプ機能部211によって、異常の発生していない側のRTOS220の「制御データD2」をダンプファイル122として情報系OS210に割り付けられているHDDに保存する。そして、ダンプファイル122から、RTOS220における動作が中断されたRT系プログラムpの再開に必要なデータを復元することにより、システム(RT系プログラム1〜n)を安全に停止・再開できる。以上の制御データD2の保存、復元により、RTOS220に割り付けるHDD(二次記憶装置)が不要となる。
実施の形態2.
次に図7〜図9を参照して、実施の形態2のOS再開装置1002を説明する。実施の形態2は、RTOS220側が正常終了判定部245(第2側判定部)を備えることにより、OS再開までの時間を短縮できるようにしたものである。
図7は、OS再開装置1002の構成図である。図7において、実施の形態1と同様の構成については説明を割愛する。OS再開装置1002は、実施の形態1のOS再開装置1001に対して、RTOS220のもとで動作する正常終了判定部245を備えた点と、正常終了判定部245によって共有メモリ111に生成される「正常終了フラグF2」が、HDD120に保存されるダンプファイル122に、「制御データD2」と共に保存される点が異なる。
正常終了判定部245は、情報系OS210にて「ソフトウェア異常」が発生した場合に、RTOS220上の動作中であったRT系プログラムpが、正常に終了したかどうかを監視し、判定する手段である。
ダンプファイル122内に格納される「正常終了フラグF2」は、情報系OS210にてソフトウェア異常が発生した場合に、RTOS220上で動作中のRT系プログラムpが正常に終了したかどうかを記録しておくためのフラグ(正常終了記録情報)であり、正常終了判定部245による正常終了の判定結果に応じて変更される。
次に、OS再開装置1002の起動および終了の動作について説明する。
図8、図9は、OS再開装置1002の動作のフローチャートである。図8、図9からなるフローチャートは、図2、図3からなる実施の形態1のフローチャートに対応する。以下では図2、図3からなるフローチャートを実施の形態1のフローチャートと呼び、図8、図9からなるフローチャートを実施の形態2のフローチャートと呼ぶ。実施の形態2のフローチャートが実施の形態1と相違するのは、太線の枠として示したS308、S309、S322、S324の追加である。実施の形態1のフローチャートと同じ処理のステップには、そのステップ番号を「かっこ書き」で付した。
以下では、まず、「ソフトウェア異常」が発生しない、正常処理の場合を説明する。すなわち実施の形態2のフローチャートの左側の処理であるが、これは実施の形態1のフローチャートの左側の処理と同じである。
(1)S300において、情報系OS210が起動する。
(2)次にS301において、ダンプファイル復元部232は、HDD120にダンプファイル122があるかどうかを確認する。S101の場合と同様に、現在はHDD120にダンプファイル122はないとする。
(3)次にS303において、情報系OS210の連携アプリケーションA(233)を起動する。
(4)そしてS304において、RTOS220を起動する。
(5)次にS305において、RTOS220の連携アプリケーションB(244)も起動する。
(6)次にS306において、S106と同様に、制御データ復元部243は、ダンプフラグF1が立っているかの判断を行うが、上述のように、現時点では立っていない。
(7)次にS310において、データ入出力部231、基本データ入出力部241は、HDD120から、情報系OS210、共有メモリ111を介して、RTOS220に基本データD1を読み込む。S310はS107と同じ処理である。
(8)そしてS313において、各OSにてアプリケーションを実行する。
(9)次に、図9のS314において、S112と同様に、情報系OS210にて「ソフトウェア異常」が発生したかしていないかにより処理が分かれる。「ソフトウェア異常」が発生しなければ、S315において、各OSは、アプリケーションが終了するまで、アプリケーションを継続して実行する。
(10)そしてS316において、各OSにてアプリケーションが正常に終了する。
(11)その後S317において、データ入出力部231と基本データ入出力部241とは、RTOS220の基本データD1を情報系OS210と共有メモリ111を介して、HDD120に保存する。S317は、S115と同じ処理である。
(12)その後S318において、RTOS220を終了させる。
(13)次にS319において、情報系OS210へOS切替えを行う。
(14)そしてS328において、情報系OS210も終了させる。
次に、S314にて、ソフトウェア異常が発生した場合について説明する。「ソフトウェア異常」が発生した場合の処理が、実施の形態1のフローチャートと異なる。
(1)まずS320において、RTOS220にOSを切替え、実行を移す。
(2)次にS321において、RTOS220にて制御処理を行う。
(3)次に、S322において、正常終了判定部27は、RTOS220上のRT系プログラムpが正常終了したかどうかを判定する。実施の形態2では、このステップが、追加された。
(正常終了しないと判定)
(4)正常終了判定部245が、正常終了しないと判定した場合は、処理はS323に進む。S323において、S120と同様に、制御データ出力部242は、RTOS220の「制御データD2」を、共有メモリ111に保存する。このように制御データ出力部242は、正常終了判定部245がRT系プログラムpを正常終了ではないと判定した場合には、「ソフトウェア異常」が検知されている場合、「制御データD2」を共有メモリ111に保存する。
(正常終了と判定)
(5)正常終了したと正常終了判定部245が判定した場合は、処理はS324に進む。S324において、正常終了判定部245は、正常終了フラグF2を共有メモリ111上に立てる。正常に終了しない場合は、正常終了フラグF2は立てない。正常終了フラグF2が立てられた場合、S323の処理は迂回される。つまり、制御データ出力部242は、正常終了判定部245がRT系プログラムpを正常終了と判定した場合には、情報系OS210が「ソフトウェア異常」を検知した場合であっても、制御データD2を共有メモリには保存しない。
これらS323あるいはS324の処理の後におけるS325〜S328は、実施の形態1のフローチャートのS121〜S124に同じである。
(1)S325において、RTOS220を終了する。
(2)そしてS326において、情報系OS210へOSを切替え、実行を移す。
(3)この後、S327において、情報系OS210にて、メモリダンプ機能部211は、共有メモリ111と情報系OS用メモリ113とをメモリダンプし、HDD120にダンプファイル122が生成される。
(4)このようにRTOS220の「制御データD2」をHDD120に保存し、S328において情報系OS210を終了させる。
次に再起動の処理を説明する。
(1)まずS300において、情報系OS210が起動する。
(2)次にS301において、ダンプファイル復元部232は、HDD120にダンプファイル122が存在するかどうかを確認する。終了前(S327)にダンプファイル122が生成されているので、ダンプファイル122がHDD120にある。このため、S302において、ダンプファイル復元部232は、共有メモリ111にダンプフラグF1を立てる。
(3)次にS303において、情報系OS210の連携アプリケーションA(233)を起動する。
(4)そしてS304において、RTOS220を起動する。
(5)その後S305において、RTOS220の連携アプリケーションB(244)も起動する。
(6)その後S306において、S106と同様に、制御データ復元部243は、ダンプフラグF1の状態を確認する。
(7)ダンプファイル122があるので、S307において、ダンプファイル復元部232は、ダンプファイル122から共有メモリ111にダンプファイル122に基づき制御データD2を復元する。ダンプファイル復元部232は、情報系OS210が正常終了判定部245による「正常終了しない」との判定後に再起動すると、HDD120に制御データD2のダンプファイルが存在するかどうかを確認し(S301)、存在する場合には制御データD2のダンプファイルを、共有メモリ111に復元する(S307)。
(正常終了フラグF2が立っている場合)
(1)次にS308において、正常終了判定部245は、共有メモリ111に復元された制御データD2の「正常終了フラグF2」の状態を確認する。正常終了フラグF2が立っている場合は、処理はS309に進む。
(2)S309において、正常終了の際は基本データD1が読み込まれるため、正常終了判定部245は、制御データD2をHDD120から削除する。正常終了フラグF2が立てられている場合は、S311の処理は迂回される。つまり制御データ復元部243は、情報系OS210とRTOS220とが正常終了判定部245によるRT系プログラムpの正常終了の判定後に再起動(S300,S304)した場合には、再開の必要はないのでRT系プログラムpの再開処理を実行しない。
(3)その後、S310において、データ入出力部231、基本データ入出力部241の連携により、HDD120から情報系OS210、共有メモリ111を介して、RTOS220に基本データD1を読み込む。
(4)このように、基本データ入出力部241は、情報系OS210とRTOS220とが正常終了判定部245によるRT系プログラムpの正常終了の判定後に再起動した場合には、データ入出力部231部と連携して、HDD120の基本データD1を共有メモリ111を介して読み込み、読み込んだ基本データD1によってRTOS220にRT系プログラムを実行させる。
(正常終了フラグF2が立っていない場合)
(1)正常終了フラグF2が立っていない場合は、処理はS311に進む。正常終了フラグF2が立っていない場合は、処理はS308からS311、S312、S313と進むが、この流れは実施の形態1のフローチャートと同じである。すなわち、S311において、制御データ復元部243は、共有メモリ111からRTOS220にアプリケーションの再開に必要なデータをロードする。このように、制御データ復元部243は、情報系OS210とRTOS220とが正常終了判定部245によるRT系プログラムpが「正常終了しないとの判定後」に再起動(S300,S304)すると、ダンプファイル復元部232によって復元(S307、S323)された制御データD2に基づいて、RT系プログラムpの再開処理を実行する。
(2)その後S312において、制御データ復元部243は必要のなくなったダンプファイル122をHDD120から削除する。このように処理することにより、S313において、アプリケーション(RT系プログラムp)が再開できる。
このように、実施の形態2では、情報系OS210にて「ソフトウェア異常」が発生した場合には、RTOS220で動作していたRT系プログラムpが正常に終了したかしないかを示す正常終了フラグF2を用いて、システムの再開方法が判断される。RTOS220で動作していたアプリケーションが正常終了した場合は、制御データ解析が不要(S311の制御データ復元部243の処理が不要)となり、再開までの時間が短縮される。
なお、以上の実施の形態1,2では、CPUはシングルコアで記載しているが、マルチコアであっても良い。また、HDDはSSDなどの他の二次記憶装置であっても良い。更に、OSの組み合わせは、情報系OS(第1OS)とRTOS(第2OS)とを例に説明したが、RTOSとRTOSのように他の組み合わせでも良い。また、情報系OS及びRTOS以外の異なる種別のOSどうしの組合せ、あるいは同じ種別のOSどうしの組み合わせでも構わない。
以上の実施の形態1,2で述べたOS再開装置1001、1002の各「〜部」の動作を、コンピュータに実行させる処理と把握することで、OS再開装置1001、1002の動作を、OS再開プログラム(OS動作方法)と把握することもできる。また、同様にOS再開装置1001、1002の各「〜部」の動作を、各ステップと把握することで、OS再開装置1001、1002の動作をOS再開方法と把握することもできる。
以上の実施の形態では、HDDと共有メモリとの間で、基本データ、制御データ等のデータを入出力するデータ入出力部231と、ダンプファイルをHDDから共有メモリに復元するダンプファイル復元部232と、共有メモリとRTOSとの基本データを入出力する基本データ入出力部241と、RTOSから共有メモリへ制御データを出力する制御データ出力部242と、共有メモリからRTOSへ制御データを復元する制御データ復元部243とを備えるOS再開装置を説明した。
以上の実施の形態では、情報系OS210にてソフトウェア異常が発生した際に、RTOS上で実行されていたアプリケーションが「正常終了した/していない」の別により、保存するデータとデータの復元方法とを変える正常終了判定部245を備えたOS再開装置を説明した。
D1 基本データ、D2 制御データ、F1 ダンプフラグ、F2 正常終了フラグ、100 H/W、110 揮発性メモリ、111 共有メモリ、112 RTOS用メモリ、113 情報系OS用メモリ、120 HDD、122 ダンプファイル、130 CPU、140 独自I/O、150 NIC、160 ディスプレイ、170 キーボード/マウス、180 実線、190 破線、200 S/W、210 情報系OS、211 メモリダンプ機能部、220 RTOS、230 情報系アプリケーション、231 データ入出力部、232 ダンプファイル復元部、233 連携アプリケーションA、240 RT系アプリケーション、241 基本データ入出力部、242 制御データ出力部、243 制御データ復元部、244 連携アプリケーションB、245 正常終了判定部、1001,1002 OS再開装置。

Claims (4)

  1. 第1OS(Operating System)と、第2OSとが動作するOS動作装置において、
    第1OSに割り付けられた記憶装置である第1OS用記憶装置と、
    第1OSと、第2OSとの両方に割り付けられた共有メモリ領域を有する共有メモリ部と、
    第1OSのもとで動作する、第1側ダンプファイル保存部及び第1側ダンプファイル復元部と、
    第2OSのもとで動作する、第2側制御データ保存部及び第2側制御データ復元部と
    を備え、
    前記第2側制御データ保存部は、
    第1OSと第2OSとの動作中に、第1OSに関するソフトウェア異常として予め設定された第1OSソフトウェア異常を第1OSが検知すると、第2OSによって実行される第2OS系アプリケーションプログラムのうち第1OSソフトウェア異常の検知の際に実行中の第2OS系アプリケーションプログラムの再開用のデータであって、第1OSソフトウェア異常の検知の際における第2OS系アプリケーションプログラムの状態からこの第2OS系アプリケーションプログラムの実行を再開するためのデータである第2OS制御データを、前記共有メモリ部に保存し、
    前記第1側ダンプファイル保存部は、
    前記第2側制御データ保存部が前記共有メモリ部に第2OS制御データを保存した場合には、保存された第2OS制御データのダンプファイルを生成し、生成されたダンプファイルを前記第1OS用記憶装置に保存し、
    前記第1側ダンプファイル復元部は、
    第1OSが再起動した場合には前記第1OS用記憶装置に第2OS制御データのダンプファイルが存在するかどうかを確認し、存在する場合には第2OS制御データのダンプファイルを、前記共有メモリ部に復元し、
    前記第2側制御データ復元部は、
    前記第1側ダンプファイル復元部によって第2OS制御データのダンプファイルが前記共有メモリ部に復元されると、第1OSと共に第2OSが再起動している場合には復元された第2OS制御データを解析し、第1OSソフトウェア異常の検知の際に動作していた第2OS系アプリケーションプログラムの実行を、第1OSソフトウェア異常の検知の際における状態から、第2OSに再開させる再開処理を実行することを特徴とするOS動作装置。
  2. 第1OS用記憶装置は、
    第2OSによる第2OS系アプリケーションプログラムの実行に使用するデータである基本データを格納しており、
    前記OS動作装置は、さらに、
    第1OSのもとで動作する第1側データ入出力部であって、第1OS用記憶装置と前記共有メモリ部との間でデータを入出力する第1側データ入出力部と、
    第2OSのもとで動作する第2側基本データ取得部と、
    第2OSのもとで動作する第2側判定部であって、第1OSによって第1OSソフトウェア異常の発生が検知された場合に、第2OSにより実行中の第2OS系アプリケーションプログラムがある場合には、第2OS系アプリケーションプログラムが正常終了したかどうかを判定する第2側判定部と
    を備え、
    前記第2側制御データ保存部は、
    前記第2側判定部が第2OS系アプリケーションプログラムを正常終了と判定した場合には、第1OSが第1OSソフトウェア異常を検知した場合であっても第2OS制御データを前記共有メモリ部に保存せず、
    前記第2側制御データ復元部は、
    第1OSと共に第2OSが再起動している場合であっても、再起動前に前記第2側判定部が第2OS系アプリケーションプログラムを正常終了と判定した場合には、第2OS系アプリケーションプログラムの前記再開処理を実行せず、
    前記第2側基本データ取得部は、
    第1OSと共に第2OSが前記第2側判定部による第2OS系アプリケーションプログラムの正常終了の判定後に再起動した場合には、前記第1側データ入出力部と連携して第1OS用記憶装置の基本データを前記共有メモリ部を介して読み込み、読み込んだ基本データによって第2OSに第2OS系アプリケーションプログラムを実行させることを特徴とする請求項1記載のOS動作装置。
  3. 前記第2側制御データ保存部は、
    第1OSが第1OSソフトウェア異常を検知した場合において、前記第2側判定部が第2OS系アプリケーションプログラムを正常終了ではないと判定した場合には、第2OS制御データを前記共有メモリ部に保存し、
    前記第1側ダンプファイル保存部は、
    前記第2側制御データ保存部が前記第2側判定部の正常終了ではないとの判定に従って前記共有メモリ部に第2OS制御データを保存した場合には、保存された第2OS制御データのダンプファイルを生成し、生成されたダンプファイルを前記第1OS用記憶装置に保存し、
    前記第1側ダンプファイル復元部は、
    第1OSが前記第2側判定部による第2OS系アプリケーションプログラムの正常終了しないとの判定後に再起動すると、前記第1OS用記憶装置に第2OS制御データのダンプファイルが存在するかどうかを確認し、存在する場合には第2OS制御データのダンプファイルを、前記共有メモリ部に復元し、
    前記第2側制御データ復元部は、
    第1OSと共に第2OSが前記第2側判定部による第2OS系アプリケーションプログラムの正常終了しないとの判定後に再起動すると、前記第1側ダンプファイル復元部によって復元された第2OS制御データに基づいて、第2OS系アプリケーションプログラムの前記再開処理を実行することを特徴とする請求項2に記載のOS動作装置。
  4. 第1OS(Operating System)と第2OSとが動作するOS動作装置であって、第1OSに割り付けられた記憶装置である第1OS用記憶装置と、第1OSと第2OSとの両方に割り付けられた共有メモリ領域を有する共有メモリ部とを備えたコンピュータであるOS動作装置に対し、第1OSと第2OSとに以下の処理を実行させるOS動作プログラム
    (1)第2OSによる処理であって、
    第1OSと第2OSとの動作中に、第1OSに関するソフトウェア異常として予め設定された第1OSソフトウェア異常を第1OSが検知すると、第2OSによって実行される第2OS系アプリケーションプログラムのうち第1OSソフトウェア異常の検知の際に実行中の第2OS系アプリケーションプログラムの再開用のデータであって、第1OSソフトウェア異常の検知の際における第2OS系アプリケーションプログラムの状態からこの第2OS系アプリケーションプログラムの実行を再開するためのデータである第2OS制御データを、前記共有メモリ部に保存する処理
    (2)第1OSによる処理であって、
    前記共有メモリ部に第2OS制御データを保存した場合には、保存された第2OS制御データのダンプファイルを生成し、生成されたダンプファイルを前記第1OS用記憶装置に保存する処理
    (3)第1OSによる処理であって、
    第1OSが再起動した場合には前記第1OS用記憶装置に第2OS制御データのダンプファイルが存在するかどうかを確認し、存在する場合には第2OS制御データのダンプファイルを、前記共有メモリ部に復元する処理
    (4)第2OSによる処理であって、
    第2OS制御データのダンプファイルが前記共有メモリ部に復元されると、第1OSと共に第2OSが再起動している場合には復元された第2OS制御データを解析し、第1OSソフトウェア異常の検知の際に動作していた第2OS系アプリケーションプログラムの実行を、第1OSソフトウェア異常の検知の際における状態から、再開する再開処理。
JP2012000311A 2012-01-05 2012-01-05 Os動作装置及びos動作プログラム Expired - Fee Related JP5791524B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012000311A JP5791524B2 (ja) 2012-01-05 2012-01-05 Os動作装置及びos動作プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012000311A JP5791524B2 (ja) 2012-01-05 2012-01-05 Os動作装置及びos動作プログラム

Publications (3)

Publication Number Publication Date
JP2013140491A JP2013140491A (ja) 2013-07-18
JP2013140491A5 JP2013140491A5 (ja) 2014-12-18
JP5791524B2 true JP5791524B2 (ja) 2015-10-07

Family

ID=49037869

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012000311A Expired - Fee Related JP5791524B2 (ja) 2012-01-05 2012-01-05 Os動作装置及びos動作プログラム

Country Status (1)

Country Link
JP (1) JP5791524B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104331357B (zh) 2014-10-10 2018-07-10 北京金山安全软件有限公司 应用程序异常的检测方法、装置和移动终端

Also Published As

Publication number Publication date
JP2013140491A (ja) 2013-07-18

Similar Documents

Publication Publication Date Title
JP5516747B2 (ja) マルチコアプロセッサシステム、監視制御方法、および監視制御プログラム
JP5212360B2 (ja) 制御プログラム、制御システムおよび制御方法
RU2665307C2 (ru) Восстановление приложения из моментального снимка
JP4385215B2 (ja) スナップショットシミュレーション機能を有するディスクアレイ装置
US8782643B2 (en) Device and method for controlling communication between BIOS and BMC
JP4315016B2 (ja) コンピュータシステムの系切替方法
JP3481737B2 (ja) ダンプ採取装置およびダンプ採取方法
JP2010086364A (ja) 情報処理装置、動作状態監視装置および方法
JP2004302632A (ja) コンピュータ処理方法及びその実施システム並びにその処理プログラム
US20100085871A1 (en) Resource leak recovery in a multi-node computer system
JP5791524B2 (ja) Os動作装置及びos動作プログラム
JP6677021B2 (ja) 情報処理装置、情報処理方法、プログラム
JP5672521B2 (ja) コンピュータシステム、およびそのチェックポイントリスタート方法
US8203937B2 (en) Global detection of resource leaks in a multi-node computer system
CN111090491A (zh) 虚拟机任务状态的恢复方法、装置及电子设备
WO2013136457A1 (ja) 仮想計算機システム、情報保存処理プログラム及び情報保存処理方法
JP6109404B2 (ja) 計算機装置及び計算機機構
JP2010140106A (ja) ジョブ実行システム、該システムに用いられるジョブフロー引継ぎ方法及びジョブフロー引継ぎ制御プログラム
WO2014147707A1 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP6023898B1 (ja) 情報処理装置及び情報処理方法及び情報処理プログラム
JP6108909B2 (ja) データ処理装置及びデータ処理方法及びプログラム
JP7048890B2 (ja) 情報処理装置、情報収集プログラム及び情報収集方法
JP6024742B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体
JP2013140491A5 (ja)
JP2010102441A (ja) 情報処理装置、情報処理プログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141105

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141105

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150617

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: 20150707

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150804

R150 Certificate of patent or registration of utility model

Ref document number: 5791524

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees