JP2004258698A - マルチos計算機システムの制御方法 - Google Patents
マルチos計算機システムの制御方法 Download PDFInfo
- Publication number
- JP2004258698A JP2004258698A JP2003045260A JP2003045260A JP2004258698A JP 2004258698 A JP2004258698 A JP 2004258698A JP 2003045260 A JP2003045260 A JP 2003045260A JP 2003045260 A JP2003045260 A JP 2003045260A JP 2004258698 A JP2004258698 A JP 2004258698A
- Authority
- JP
- Japan
- Prior art keywords
- memory space
- shared memory
- memory
- shared
- program code
- 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
Abstract
【解決手段】同じOSが複数動作することが可能な計算機システムにおいて、制御プログラムが、ある1つのOSの持つ各OSに共通なプログラムコード領域のマッピング先物理メモリ空間を共有メモリ化し、他のOSは各OSに共通なプログラムコード領域を共有メモリ化された前述の物理メモリ空間にマッピングする。
【選択図】 図3
Description
【発明の属する技術分野】
本発明は、制御プログラムの制御下で複数のOSが同時に動作することが可能な計算機システムの制御方法に関する。
【0002】
【従来の技術】
一台の計算機上の制御プログラム下で複数のOSが同時に動作する計算機システムにおける共有メモリを用いた従来技術としては、制御プログラムが、複数のOS上で動作する異なるプロセスの仮想メモリ空間を同一の物理メモリ空間に変換することにより、複数のプロセス相互間で共有する共有メモリ構築方法が知られている(例えば、特許文献1参照)。
【0003】
【特許文献1】
特開2002−157133号公報
【0004】
【発明が解決しようとする課題】
動作させるOSが同じものである場合、各OSに存在するカーネル等の一部のプログラムコードは各OSで同じものを持つことになる。したがって、一台の計算機システム上で複数のOSを同時に動作させる場合には、各OSがそれぞれ重複したプログラムコード領域をメモリ空間に持つことになり、メモリの消費に無駄が生じている。
【0005】
本発明では前述した問題を解決し、一台の計算機上で複数のOSが同時に動作する計算機システムにおいて、メモリの有効利用を提供するものである。ただし、ここでいうプログラムコードとは、アプリケーションプログラムのように生成、消滅が頻繁に生じるようなものではなく、メモリに占有かつ固定的に配置されるようなもの(カーネル等)である。
【0006】
【課題を解決するための手段】
本発明によれば前記課題は、制御プログラムの制御下で少なくとも2個の同一OSを含む複数のOSが動作する計算機システムにおいて、同一OS上で動作する各同一OSに共通なプログラムコードが配置される仮想メモリ空間を同一の物理メモリ空間に変換することにより達成される。
【0007】
各OSが制御プログラムに対して、共通プログラムコードの共有化を要求すると、要求を受け取った制御プログラムは、OSが管理するメモリ空間変換テーブル内のメモリマッピングを、共有メモリ空間に指定された共通プログラムコード領域に対応する物理メモリ空間に変更する。この変更はOSに非通知行われるため、OSが関与することなく共通プログラムコード領域の共有メモリ化を構築することができる。
【0008】
共有メモリの構築および共有メモリ空間の使用に至る一連の処理において、OSにはメモリ変換テーブルが書き換えられたことは通知せず、OSによってメモリ空間変換テーブルの書き換えを検知されることもない。
【0009】
ただし共有メモリ構築において、制御プログラムは、OSが共有メモリとして使用したい共通プログラムコード領域をメモリ空間に配置するおよその位置及びサイズを知る必要がある。制御プログラムは、共有メモリ化要求を発行したOSのメモリ空間をサーチしてバイナリコードの完全に一致する領域を見つけるため、偶然に一致するデータ領域の共有メモリ化を避けなければならない。そのために共有メモリ化要求の際に、共通プログラムコードの位置及びサイズを渡す必要がある。したがって、本発明が適用可能なOSは、共通プログラムコードがどのメモリ位置に配置されるか、及び共通プログラムコードのサイズを知ることの出来るOSが対象となる。
【0010】
本発明はOSの介入を受けないため、前述の注意点を除けばOSの有する機能に制約されることがなくOSの選択が自由に行える。また、OS介入がない分、計算機システムの性能向上を図ることができる。
【0011】
【発明の実施の形態】
以下に、本発明による計算機システムの実施形態を図面により詳細に説明する。
【0012】
図1は本発明の一実施形態による計算機システムの構成を示すブロック図、図2は共有メモリによって共通プログラムコード領域を共有していない状態のメモリマップの構成を示す図、図3は共有メモリによって共通プログラムコード領域を共有している状態のメモリマップの構成を示す図、図4は共有メモリ制御プログラムが制御する共有メモリ制御テーブルの構成を示す図である。図1〜4において、100はハードウェア、200はハイパバイザ(制御プログラム)、210は共有メモリ制御プログラム、220は共有メモリ制御テーブル、300はOSa、400はOSb(ただしOSaとOSbは同一のOSである)、310は共有メモリ化要求アプリケーションa、410は共有メモリ化要求アプリケーションb、320はメモリ空間変換テーブルa、420はメモリ空間変換テーブルb、1100はOSaの仮想メモリ空間、1200はOSbの仮想メモリ空間、1500は物理メモリ空間である。
【0013】
本発明の一実施形態による計算システムは、図1に示すように、計算機システムを構成するハードウェア100と、一台の計算機上で複数の異種または同種OSが同時に動作することを可能とする制御プログラムであるハイパバイザ200と、ハイパバイザ200上で動作するOSa300、OSb400と、OSa300、OSb400上で動作する共有メモリ化要求アプリケーションa310、共有メモリ化要求アプリケーションb410とにより構成されている。そしてハイパバイザ200は共有メモリ制御プログラム210を備え、この共有メモリプログラム210は、共有メモリ制御テーブル220を有している。またOSa300、OSb400は各OSが管理するメモリ空間変換テーブルa320、メモリ空間変換テーブルb420を有している。
【0014】
なお、図1に示す計算機システムの例は、それぞれ1つの共有メモリ化要求アプリケーションが動作する2つのOSを有すると示しているが、OSはさらに多数であってよくて、対象OS同士が同じOSであれば、同じOSでないものが混在していても構わない。
【0015】
図2において、OSa300の仮想メモリ空間1100内では、共通プログラムコード領域aが仮想メモリ空間の1151で動作し、OSb400の仮想メモリ空間1200内では、共通プログラムコード領域bが仮想メモリ空間の1251で動作している。またVa−1及びSa−1は、仮想メモリ空間1151の開始アドレス及びサイズを示している。Vb−1及びSb−1は、仮想メモリ空間1251の開始アドレス及びサイズを示している。
【0016】
物理メモリ空間1500内では、ハイパバイザ(制御プログラム)200が物理メモリ空間1570で動作している。物理メモリ空間1530は、ハイパバイザ200によってOSaのメモリ空間1100に割り当てられた物理メモリ空間を示し、物理メモリ空間1550は、ハイパバイザ200によってOSbのメモリ空間1200に割り当てられた物理メモリ空間を示している。共有メモリ構築前、物理メモリ空間1531は、仮想メモリ空間1151のマッピング先とされ、物理メモリ空間1551は、仮想メモリ空間1251のマッピング先とされている。
【0017】
前述の状態で、物理メモリ空間1531は、共通プログラムコード領域1151に占有使用され、物理メモリ空間1551は、共通プログラムコード領域1251に占有使用されている。Pa−1は、物理メモリ空間1531の開始物理アドレスを、Pb−1は、物理メモリ空間1551の開始物理アドレスをそれぞれ示している。
【0018】
図2内に示しているテーブル321、421は、ハードウェアのメモリ空間変換を示すものであり、テーブル321は、OSa300が管理するメモリ空間変換テーブルa320の、仮想メモリ空間1151の変換に関する部分を示したものである。このテーブル321におけるPa−1(325)は、共通プログラムコード領域である仮想メモリ空間1151のマッピング先の物理メモリ空間の開始物理アドレスを示している。またテーブル421は、OSb400が管理するメモリ空間変換テーブルb420の、仮想メモリ空間1251の変換に関する部分を示したものである。このテーブル421におけるPb−1(425)は、共通プログラムコード領域である仮想メモリ空間1251のマッピング先の物理メモリ空間の開始物理アドレスを示している。
【0019】
図3は、図1に示す計算機システム動作時において、OSa300とOSb400のそれぞれの共通プログラムコード領域が共有メモリ空間を構築している状態でのメモリマップを示している。図3において、図2と異なるのは、仮想メモリ空間1151のマッピング先が物理メモリ空間1531ではなく、物理メモリ空間1551になっている点である。共有メモリ構築の際、メモリ空間変換テーブルa320内の仮想メモリ空間1151のマッピング先の物理アドレス325がPa−1からPb−1に変更される。この結果、物理メモリ空間1251のマッピング先が共有メモリ空間となり、物理メモリ1531は、どの仮想アドレス空間もマッピングされない状態となる。
【0020】
図4は、共有メモリ制御プログラム210が制御する共有メモリ制御テーブル220の構成を示している。共有メモリ制御テーブル220は、エントリ名221、開始物理アドレス222、共有メモリサイズ223、アクセスフラグ224の各フィールドにより構成される。エントリ名221には、その共有メモリ空間を使用するエントリの名前が格納される。開始物理アドレス222には、共有メモリ空間として使用する物理メモリ空間の開始アドレスが格納される。
【0021】
図5が示すフローを参照して、OSb上の共有メモリ化要求アプリケーションb410が共有メモリ制御プログラムに対して共有メモリ空間の登録を要求したときの処理動作を説明する。
(1)OSb400上の共有メモリ化要求アプリケーションb410が共有メモリ制御テーブルへの登録要求を行うことによって処理が開始される。OSbの共通プログラムコードは、現在使用している仮想メモリ空間1251を共有メモリとして使用するため、共有メモリ制御プログラム210に対して共有メモリ制御テーブル220に仮想メモリ空間1251を共有メモリとして登録するよう要求する。なお、共有メモリ化要求アプリケーションが登録要求を行う際には、仮想メモリ空間1251の開始仮想アドレスVb−1、サイズSb−1、エントリ名及びアクセスフラグを共有メモリ制御プログラムに渡す必要がある(ステップ2010、2020)。
(2)この要求に対して、共有メモリ制御プログラム210は、共有メモリ制御テーブル220内をサーチし、指定されたエンリがエントリ名221に登録されているか否かを調べ、同名のエントリがエントリ221に存在する場合、登録不可能なため、エラーリターンとなる(ステップ2030、2150)。
(3)ステップ2030で、エントリ名221に同一のエントリが存在しない場合、エントリ名221へ指定エントリを格納し、次にメモリ空間変換テーブルb420内を検索して、OSbの共有プログラムコードが使用している仮想メモリ空間1251に対応する物理アドレスPb−1を求め、共有メモリ制御テーブル220内の開始物理アドレス222へ格納する(ステップ2040、2050)。
(4)次に共有メモリサイズSb−1を223に格納し、さらにアクセスフラグ224へOSbとそのバージョンを識別するための識別子を格納し、処理を終了する(ステップ2060、2070)。
【0022】
前述の処理が終了した時点で、共通プログラムコード領域のマッピング先である物理アドレスPb−1から大きさSb−1までの物理メモリ空間1551は、共有メモリ空間として共有メモリ制御テーブルに登録されたことになる。
【0023】
次に、図6が示すフローを参照して、OSa上の共有メモリ化要求アプリケーションaが共有メモリ制御テーブルに登録された共有可能メモリ空間の使用を要求したときの処理動作について説明する。
(1)共有処理が開始されると、OSaの共通プログラムコードが使用している仮想メモリ空間1151のマッピングを現在のマッピング先である物理アドレスPa−1からサイズSa−1を持つ物理メモリ空間1531から、共有メモリテーブル220に登録されている共有メモリ空間にマッピングを変更するように共有メモリ制御プログラム210に要求する。この際、OSa上の共有メモリ化要求アプリケーションは、OSb上の共有メモリ化要求アプリケーションが共有メモリテーブル220に登録したエントリ名と同一のエントリ名を使用して要求を発行する。また、仮想メモリ空間1151の開始仮想アドレスVa−1、サイズSa−1及びアクセスフラグを共有メモリ制御プログラムに渡す必要がある(ステップ2210、2220)。
(2)この要求に対して、共有メモリ制御プログラム210は、共有メモリ制御テーブル220内のエントリ名221に、要求されたエントリ名が登録されているか否かをサーチする。エントリ名221に同一のエントリ名がなければ、要求を実行することができないのでエラーリターンとする(ステップ2230、2350)。
(3)ステップ2230で、エントリ名221に同一エントリ名が登録されていた場合、次に、共有メモリサイズ223をチェックする。このチェックの結果、要求された共有メモリ空間のサイズが登録されている共有メモリのサイズと等しくなければ、すなわち、Sa−1がSb−1に等しくなければ要求を満たすことはできないためエラーリターンとする(ステップ2240、2350)。
(4)ステップ2240のチェックの結果、要求された共有メモリ空間サイズが登録されている共有メモリサイズと等しかった場合、次にアクセスフラグ224をチェックする。このチェックの結果、要求されたOSaのアクセスフラグが共有メモリ制御テーブル220に登録されているアクセスフラグと等しくなければ、OSaとOSbは異なり、要求を満たすことはできないため、エラーリターンとする(ステップ2250、2350)。
(5)ステップ2250のチェックの結果、要求されたアクセスフラグが登録されているアクセスフラグと等しかった場合、次にOSaの共通プログラムコードが使用する仮想メモリ空間1151のマッピング先である物理アドレスPa−1からサイズSa−1分のコードデータと、共有メモリ制御テーブル220に登録されているPb−1からサイズSb−1のコードデータと等しいか否かのチェックを行う。物理アドレスPa−1は、OSaが管理するメモリ変換テーブルa320内から仮想アドレスVa−1からサイズSa−1を持つ仮想メモリ空間1151に対応する物理メモリ空間1531の先頭アドレスである。このチェックの結果、等しくなければ要求を満たすことができないため、エラーリターンとする(ステップ2260、2350)。
(6)ステップ2260のチェックで、OSaの共通プログラムコードデータと共有メモリ制御テーブルに登録された物理メモリ空間のデータが等しかった場合は、次に、開始物理アドレス325を、現在のマッピング先の物理アドレスPa−1から共有メモリ制御テーブル220内の該当エントリの開始物理アドレス222が示す共有メモリ空間1151の物理アドレスPb−1に書き換える。このときOSaには、メモリ空間変換テーブルa320が書き換えられたことは通知しない。以上で処理を正常終了する(ステップ2270)。
【0024】
前述した処理が終了した時点で、OSa上で動作する共通プログラムコードaが使用する仮想メモリ空間1151とOSb上で動作する共通プログラムコードbが使用する仮想メモリ空間1521が、同一の物理メモリ空間1551へマッピングされ、共有メモリとして使用可能となる。そのため、本来OSaの共通プログラムコードが使用する物理メモリ空間1531がどのOSにもマッピングされていない状態となり、物理メモリ空間1531の使用が可能となる。したがってOS同士の共通コードのマッピングを共有化することにより、メモリ消費量の削減が可能、メモリの有効利用が実現できる。
【0025】
【発明の効果】
以上に説明したように本発明によれば、一台の計算機上で制御プログラムの制御下で複数のOSが同時に動作する計算機システムにおいて、同一のOS上で動作するそれぞれのOSに共通なプログラムコードが使用する仮想メモリ空間のマッピング先を共有メモリによって共有化することで、計算機システム全体でメモリ消費量が削減され、メモリの有効利用が実現可能となる。
【図面の簡単な説明】
【図1】本発明の一実施形態による計算機システムの構成を示すブロック図である。
【図2】OSaとOSbの共通プログラムコードが動作するそれぞれのプロセスが共有メモリを構築していない状態のメモリマップの構成を示す図である。
【図3】OSaとOSbの共通プログラムコードが動作するそれぞれのプロセスが共有メモリを構築している状態のメモリマップの構成を示す図である。
【図4】共有メモリの制御プログラムが制御する共有メモリ制御テーブルの構成を示す図である。
【図5】OSb上の共有メモリ化要求アプリケーションが共有メモリ空間の登録要求をしたときの処理動作を説明するフローチャートである。
【図6】OSa上の共有メモリ化要求アプリケーションが共有メモリ空間の使用要求をしたときの処理動作を説明するフローチャートである。
【符号の説明】
100 ハードウェア
200 ハイパバイザ
210 共有メモリ制御プログラム
220 共有メモリ制御テーブル
300 OSa
400 OSb
310 共有メモリ化要求アプリケーションa
420 共有メモリ化要求アプリケーションb
1100 OSaの仮想メモリ空間
1500 OSbの仮想メモリ空間
Claims (1)
- 制御プログラムの制御下で少なくとも2個の同一OSを含む複数のOSが動作する計算機システムにおいて、同一OS上で動作する各同一OSに共通なプログラムコードが配置される仮想メモリ空間を同一の物理メモリ空間に変換するマルチOS計算機システムの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003045260A JP2004258698A (ja) | 2003-02-24 | 2003-02-24 | マルチos計算機システムの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003045260A JP2004258698A (ja) | 2003-02-24 | 2003-02-24 | マルチos計算機システムの制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004258698A true JP2004258698A (ja) | 2004-09-16 |
Family
ID=33112104
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003045260A Pending JP2004258698A (ja) | 2003-02-24 | 2003-02-24 | マルチos計算機システムの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004258698A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008225620A (ja) * | 2007-03-09 | 2008-09-25 | Nec Corp | メモリ共有システム、方法、及び、プログラム |
US7509475B2 (en) | 2005-10-27 | 2009-03-24 | Hitachi, Ltd. | Virtual machine control method and virtual machine system having host page table address register |
WO2010097925A1 (ja) * | 2009-02-26 | 2010-09-02 | 株式会社日立製作所 | 情報処理装置 |
US7797507B2 (en) | 2006-07-26 | 2010-09-14 | Nec Corporation | Virtual machine system and operating method thereof |
JP2010211259A (ja) * | 2009-03-06 | 2010-09-24 | Nec Corp | 仮想マシンシステム、情報処理装置、リソース管理方法、プログラム及び記録媒体 |
JP2012103930A (ja) * | 2010-11-11 | 2012-05-31 | Hitachi Ltd | 仮想計算機システム及びそのインストール方法 |
WO2012111113A1 (ja) * | 2011-02-16 | 2012-08-23 | 富士通株式会社 | メモリ管理プログラム、メモリ管理方法、情報処理装置、及びメモリ管理プログラムを記録したコンピュータ読取可能な記録媒体 |
WO2017006458A1 (ja) * | 2015-07-08 | 2017-01-12 | 株式会社日立製作所 | 計算機及びメモリ領域管理方法 |
-
2003
- 2003-02-24 JP JP2003045260A patent/JP2004258698A/ja active Pending
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7509475B2 (en) | 2005-10-27 | 2009-03-24 | Hitachi, Ltd. | Virtual machine control method and virtual machine system having host page table address register |
US7797507B2 (en) | 2006-07-26 | 2010-09-14 | Nec Corporation | Virtual machine system and operating method thereof |
US8275948B2 (en) | 2007-03-09 | 2012-09-25 | Nec Corporation | Memory sharing system |
JP2008225620A (ja) * | 2007-03-09 | 2008-09-25 | Nec Corp | メモリ共有システム、方法、及び、プログラム |
WO2010097925A1 (ja) * | 2009-02-26 | 2010-09-02 | 株式会社日立製作所 | 情報処理装置 |
JPWO2010097925A1 (ja) * | 2009-02-26 | 2012-08-30 | 株式会社日立製作所 | 情報処理装置 |
JP2010211259A (ja) * | 2009-03-06 | 2010-09-24 | Nec Corp | 仮想マシンシステム、情報処理装置、リソース管理方法、プログラム及び記録媒体 |
JP2012103930A (ja) * | 2010-11-11 | 2012-05-31 | Hitachi Ltd | 仮想計算機システム及びそのインストール方法 |
WO2012111113A1 (ja) * | 2011-02-16 | 2012-08-23 | 富士通株式会社 | メモリ管理プログラム、メモリ管理方法、情報処理装置、及びメモリ管理プログラムを記録したコンピュータ読取可能な記録媒体 |
JPWO2012111113A1 (ja) * | 2011-02-16 | 2014-07-03 | 富士通株式会社 | メモリ管理プログラム、メモリ管理方法、及び情報処理装置 |
WO2017006458A1 (ja) * | 2015-07-08 | 2017-01-12 | 株式会社日立製作所 | 計算機及びメモリ領域管理方法 |
CN107710160A (zh) * | 2015-07-08 | 2018-02-16 | 株式会社日立制作所 | 计算机和存储区域管理方法 |
JPWO2017006458A1 (ja) * | 2015-07-08 | 2018-05-10 | 株式会社日立製作所 | 計算機及びメモリ領域管理方法 |
US10289564B2 (en) | 2015-07-08 | 2019-05-14 | Hitachi, Ltd. | Computer and memory region management method |
CN107710160B (zh) * | 2015-07-08 | 2021-06-22 | 株式会社日立制作所 | 计算机和存储区域管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4012517B2 (ja) | 仮想計算機環境におけるロックの管理 | |
US9619503B2 (en) | Method, server, and system for accessing metadata | |
JP5460588B2 (ja) | フレキシブルな名前空間優先順位付け | |
US7328437B2 (en) | Management of locks in a virtual machine environment | |
JP4604543B2 (ja) | 計算機、計算機起動方法、管理サーバ装置およびプログラム | |
US7363480B1 (en) | Method, system, and computer-readable medium for updating the firmware of a computing device via a communications network | |
JPH11327919A (ja) | オブジェクト指向割込みシステム用の方法およびデバイス | |
US20030110173A1 (en) | Methods and apparatus for managing multiple user systems | |
US20130191643A1 (en) | Establishing a chain of trust within a virtual machine | |
US20040003135A1 (en) | Technique for driver installation | |
JP2008033392A (ja) | 仮想計算機システム及びその動作方法 | |
US8046392B2 (en) | Storage system and information transfer method for the same | |
US20080028200A1 (en) | Database for storing device handle data in an extensible firmware interface environment | |
JP3874603B2 (ja) | 計算機システムの共有メモリ構築方法 | |
US20090164749A1 (en) | Coupled symbiotic operating systems | |
JP2008262419A (ja) | 情報処理装置、オペレーティングシステム選択方法、プログラム。 | |
US20230146488A1 (en) | Universal pointers for data exchange in a computer system having independent processors | |
US6952722B1 (en) | Method and system using peer mapping system call to map changes in shared memory to all users of the shared memory | |
JP2004258698A (ja) | マルチos計算機システムの制御方法 | |
CN116028455A (zh) | 一种数据处理方法、装置、存储介质及电子设备 | |
US7395400B2 (en) | Adaptive address space operating system | |
CN111984430A (zh) | 多对多的进程通信方法及计算机可读存储介质 | |
JP2004086926A (ja) | マイクロカーネルアクセス方法および処理装置エージェント | |
US20030154221A1 (en) | System and method for accessing file system entities | |
JP2007226786A (ja) | 別のプロセスのプロセス・ローカル・ストレージにアクセスする方法、装置、コンピュータ・プログラム、およびコンピュータ実装方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060104 |
|
RD01 | Notification of change of attorney |
Effective date: 20060420 Free format text: JAPANESE INTERMEDIATE CODE: A7421 |
|
A977 | Report on retrieval |
Effective date: 20070727 Free format text: JAPANESE INTERMEDIATE CODE: A971007 |
|
A131 | Notification of reasons for refusal |
Effective date: 20070821 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071015 |
|
A02 | Decision of refusal |
Effective date: 20071211 Free format text: JAPANESE INTERMEDIATE CODE: A02 |