特許拒絶査定不服審判
2017-013702
ページング可能ゲストをサポートするコンピューティング環境のストレージの管理を容易にするためのコンピュータ可読プログラム・コード・ロジック、方法、およびシステム
- 審判番号
- 2017-013702
- 法域
- 特許
- 審判種別
- 拒絶査定不服審判(拒絶査定不服の審決)
- 出願番号
- 特願2015-134396外部サイト(J-PlatPat)へ移動します
- 請求日
- 2017年09月14日
- 審決日
- 2018年05月28日
- 公報発行日
- 2018年07月27日
- 結論
- 原査定取消(特許/登録すべき)
- 当事者
- 【請求人】インターナショナル・ビジネス・マシーンズ・コーポレーション
- 【請求人代理人】上野 剛史
- 【請求人代理人】太佐 種一
- 分類
- P18 .121-WY (G06F)
- 条文(本文から自動抽出・参考)
- 特許法第29条第2項
- データ出所
- 審決公報(SGML)
事件の表示
特願2015-134396「ページング可能ゲストをサポートするコンピューティング環境のストレージの管理を容易にするためのコンピュータ可読プログラム・コード・ロジック、方法、およびシステム」拒絶査定不服審判事件〔平成27年12月17日出願公開、特開2015-228227、請求項の数(9)〕について、次のとおり審決する。
結論
【結 論】
原査定を取り消す。
本願の発明は、特許すべきものとする。
理由
【理 由】
第1 手続の経緯
本願は,2009年2月16日(パリ条約による優先権主張2008年2月25日(以下,「優先日」という。),2008年3月20日:米国)を国際出願日とする出願である特願2010-547159号の一部を,新たな特許出願として平成27年7月3日に出願された特許出願であって,平成28年9月21日付けで拒絶理由通知がされ,同年12月1日に意見書が提出されたものの,平成29年5月16日付けで拒絶査定(原査定)がされ,これに対し,同年9月14日に拒絶査定不服審判の請求がされると同時に手続補正がされ,同年11月30日付けで前置報告がされたものである。
第2 原査定の概要
原査定(平成29年5月16日付け拒絶査定)の概要は次のとおりである。
本願請求項1-10に係る発明は,以下の引用文献1-3に基づいて,その優先日前にその発明の属する技術の分野における通常の知識を有する者が容易に発明をすることができたものであるから,特許法第29条第2項の規定により特許を受けることができない。
<引用文献等一覧>
1.特開昭63-228352号公報
2.特開平05-165663号公報
3.米国特許出願公開第2008/0005488号明細書
第3 本願発明
本願請求項1-9に係る発明(以下,それぞれ「本願発明1」-「本願発明9」という。)は,平成29年9月14日付けの手続補正で補正された特許請求の範囲の請求項1-9に記載された事項により特定される発明であり,以下のとおりの発明である。
「 【請求項1】
ページング可能ゲストをサポートするコンピューティング環境のストレージに関する管理をするための方法であって,コンピュータが,
ホスト・レベルの保護およびゲスト・レベルの保護のうちの少なくとも1つによって保護されるストレージの一領域にアクセスしようという試みの障害を検出するステップであって,前記ストレージの前記一領域がホスト・メイン・ストレージの第1のフレームに割り当てられている,前記検出するステップと,
前記検出された障害が前記ホスト・レベルの保護によるものであるかまたは前記ゲスト・レベルの保護によるものであるかを判断するステップであって,複数の保護のうちのどの保護が前記ストレージの前記一領域へのアクセスを拒否するかを判断するために複数のチェックを互いの独立性の有無を考慮した所定の順序で実行する,前記判断するステップと,
前記検出された障害が前記ゲスト・レベルの保護によるものであることに応じて,ストアが前記ゲスト・レベルの保護によって許可されないことをゲストに対して示すことを実行するステップと,
前記検出された障害が前記ホスト・レベルの保護によるものであること且つ前記ストレージの前記一領域がホスト・コピー・オン・ライト方式の一部であることに応じて,前記ストレージの前記一領域に第2のフレームを割り当て,前記第1のフレームの内容を前記第2のフレームにコピーし,そしてページング可能ゲストが前記第2のフレームを含む前記ストレージの前記一領域に格納することを許可すること,
前記検出された障害が前記ホスト・レベルの保護によるものであること且つ前記ストレージの前記一領域がホスト・コピー・オン・ライト方式の一部でないことにさらに応じて,ストアが前記ホスト・レベルの保護によって許可されないことをゲストに対して示すことを実行するステップと
を実行することを含む,前記方法。
【請求項2】
前記障害が,前記ストレージの前記一領域へのアクセスを試みるページング可能ゲストの実行中に検出される,請求項1に記載の方法。
【請求項3】
前記ページング可能ゲストが1つのアーキテクチャのものであり,前記1つのアーキテクチャとは異なる他のアーキテクチャのホストによって実行される,請求項1又は2に記載の方法。
【請求項4】
前記コンピュータが,
前記障害に関する情報を入手するステップであって,前記障害が前記ホスト・レベルの保護によるものであるかまたは前記ゲスト・レベルの保護によるものであるかを前記判断するステップが示すかどうかに応じて,前記情報がホスト・アドレスまたはゲスト・アドレスをそれぞれ含む,前記入手するステップ
を実行することをさらに含む,請求項1~3のいずれか一項に記載の方法。
【請求項5】
前記アクセスしようという試みが,前記ストレージの一領域へのストアを実行しようと試みる命令をページング可能ゲストにより発行するステップを含む,請求項1~4のいずれか一項に記載の方法。
【請求項6】
前記コンピュータが,
前記検出された障害が前記ゲスト・レベルの保護によるものであることに応じて,ゲスト割り込みを実行するステップと,
前記検出された障害が前記ゲスト・レベルの保護によるものではないことに応じて,ホスト割り込みを実行するステップと
を実行することをさらに含む,請求項1~5のいずれか一項に記載の方法。
【請求項7】
前記ゲスト・レベルの保護がゲストDAT保護であり,
前記ホスト・レベルの保護がホストDAT保護である,
請求項1~6のいずれか一項に記載の方法。
【請求項8】
ページング可能ゲストをサポートするコンピューティング環境のストレージに関する管理をするためのコンピュータであって,少なくとも1つのプロセッサを備えており,請求項1~7のいずれか一項に記載の方法の各ステップを実行する,前記コンピュータ。
【請求項9】
ページング可能ゲストをサポートするコンピューティング環境のストレージに関する管理をするためのコンピュータ・プログラムであって,コンピュータに,請求項1~7のいずれか一項に記載の方法の各ステップを実行させる,前記コンピュータ・プログラム。」
第4 引用文献,引用発明等
1.引用文献1について
本願の優先日前に頒布され,原査定の拒絶の理由に引用された,特開昭63-228352号公報(以下,これを「引用文献1」という。)には,図面とともに次の事項が記載されている。(下線は当審により付与。以下同じ。)
A.「〔産業上の利用分野〕
本発明は仮想計算機に係り,特に仮想アドレス空間で記憶保護手段を有する場合に好適な仮想計算機システムの記憶保護方式に関する。
〔従来の技術〕
M組のアドレス変換手段を有する仮想計算機システムについては,特公昭58-58752に記載されているが,記憶保護については配慮されていなかった。
また仮想計算機システムの記憶保護についてはM=2の場合について,アイ・ビー・エム システム/370 エクステンド アーキテクチャ インタープリティブ エグゼキューション(エス・エー22-7095-0)第18頁(IBM System/370 Extended Architecture Interpretive Execution SA22-7095-0 P.18)において論じられている。本文献に開示されるシステムはゲスト計算機(第1の仮想アドレス空間を持つ仮想計算機)のセグメント・プロテクション(システム/370モード時)またはページ・プロテクション(370-XAモード時)と,ホスト計算機のページ・プロテクションとが共に適用されている。このシステムにおいては記憶保護例外が発生すると,それがたとえホスト計算機のページ・プロテクションによる場合でも,常にゲスト計算機に記憶保護例外を報告する仕様になっており,ゲスト計算機で発生したのか,ホスト計算機で発生したのか区別がつかない。
〔発明が解決しようとする問題点〕
上記第2の従来技術では,ホスト計算機のページ・プロテクションによる記憶保護例外が発生しても,ゲスト計算機に記憶保護例外を報告するため,ゲスト計算機のプログラムが実計算機で実行された場合と動作が異なってしまう。すなわち,実計算機で実行した場合には,ホスト計算機が存在しないのであるから,前記のホスト計算機によるページ・プロテクションによる記憶保護例外は発生しない。しかし本来,仮想計算機で実行されるプログラムは,あたかも実計算機で実行されているかのように,つまり実計算機で実行した時と同じ動作をすべきである。
本発明の目的は,仮想計算機の記憶保護例外の発生を,実計算機で実行した場合と全く同じにすることにある。」(第1頁右下欄6行~第2頁右上欄9行)
B.「〔問題点を解決するための手段〕
上記目的は,Nレベルの仮想計算機またはホスト計算機の記憶保護例外の検出を,Nレベルのいずれのレベルで発生したものであるかを識別できる手段を設け,記憶保護例外が発生した場合には,発生したレベルに対応する仮想計算機またはゲスト計算機に割込むことにより,達成される。
例えば,セグメントまたはページ・プロテクションについてはアドレス変換バッフア(TLB)に,第1レベルの仮想計算機の仮想アドレス(第1の仮想アドレス)と実アドレス(第Mの仮想アドレスを第Mのアドレス変換手段を用いて変換したアドレスで,ホスト計算計(当審注:「ホスト計算機」の誤記と解される。)の実アドレス)の対を登録すると共に,M段のアドレス変換過程で索引したMレベル各々のセグメント・テーブルまたはページテーブル内の記憶保護情報(例えば,セグメントテーブルにあるセグメント・プロテクション・ビット(システム/370の場合)またはページ・プロテクション・ビット(370-XAの場合))を,すべてTLBに登録しておき,ストア・リクエストでTLBを索引した時に,アドレス変換したい仮想アドレスに対応する有効なTLBのエントリが存在した場合には,TLB内のMレベル各々個別に登録されているセグメントまたはページ・プロテクション・ビットを,第1レベルから第Mレベルまで調べ,ストアが許されていない,つまりTLBのセグメントまたはページ・プロテクション・ビットが“1”であると,そのレベルの仮想計算機またはホスト計算機(第Mレベルの時)に,記憶保護例外の割込みを発生することにより,前記目的が達成できる。
〔作用〕
TLB内のMビットのセグメント/ページ・プロテクション・ビットはMレベルのセグメント・テーブル/ページ・テーブル内のセグメント/ページ・プロテクション・ビットの写しであり,“1”のとき,該セグメント/ページへの書込みが許されていないことを示す。ストア・リクエストでTLBを索引した時には,変換したい仮想アドレスに対応する有効TLBエントリのセグメント/ページ・プロテクション・ビットを調べ,“1”であるビットがあれば,そのビット位置からいずれのレベルで記憶保護例外が発生したかがわかる。複数ビットが“1”の場合は,若番のレベルにする。
次に記憶保護例外の発生したレベルに対応するプリフィックス域のPSWを入れ換え,プログラム割込みを発生させる。すなわち,記憶保護例外を発生せしめたレベルの仮想計算機またはホスト計算機に割込んだことになる。」(第2頁右上欄10行~同頁右下欄下から3行)
C.「(2) TLBの索引と記憶保護例外の検出
TLB1はLAR2のゲスト仮想アドレスの一部で索引する。索引されたTLB1のエントリのVが“1”で,かつTLB1のLおよびG部がLAR2のページアドレス部およびG3と一致した時,変換したいアドレスがTLBに登録されていたことになり,これをTLBがヒットしたという。TLB1がヒットし,かつストア・リクエストによるTLB索引の時,ANDゲート9および10の入力信号のSTが“1”になる。ST=“1”の時
(1)TLB1のGP=“1”ならばANDゲート10の出力が“1”になり,ゲスト割込処理回路GUESTINT12が起動される。
(2)TLB1のGP=“0”でかつTLB1のHP=“1”ならばANDゲート9の出力が“1”になり,ホスト割込処理回路HOST INT11が起動される。
HOST INT11またはGUEST INT12が起動されると,HOSTまたはGUESTのプリフィックス・エリアに対してページ・プロテクションによる記憶保護例外が発生する。すなわちホストまたはゲストに選択的に割込みを発生する。」(第3頁右下欄3行~第4頁左上欄5行)
したがって,上記引用文献1には次の発明(以下,「引用発明」という。)が記載されていると認められる。
「仮想アドレス空間で記憶保護手段を有する場合に好適な仮想計算機システムの記憶保護方式において,Nレベルの仮想計算機またはホスト計算機の記憶保護例外の検出を,Nレベルのいずれのレベルで発生したものであるかを識別できる手段を設け,記憶保護例外が発生した場合には,発生したレベルに対応する仮想計算機またはゲスト計算機に割込むことであり,
セグメントまたはページ・プロテクションについてはアドレス変換バッフア(TLB)に,第1レベルの仮想計算機の仮想アドレス(第1の仮想アドレス)と実アドレス(第Mの仮想アドレスを第Mのアドレス変換手段を用いて変換したアドレスで,ホスト計算機の実アドレス)の対を登録すると共に,M段のアドレス変換過程で索引したMレベル各々のセグメント・テーブルまたはページテーブル内の記憶保護情報(例えば,セグメントテーブルにあるセグメント・プロテクション・ビット(システム/370の場合)またはページ・プロテクション・ビット(370-XAの場合))を,すべてTLBに登録しておき,ストア・リクエストでTLBを索引した時に,アドレス変換したい仮想アドレスに対応する有効なTLBのエントリが存在した場合には,TLB内のMレベル各々個別に登録されているセグメントまたはページ・プロテクション・ビットを,第1レベルから第Mレベルまで調べ,ストアが許されていない,つまりTLBのセグメントまたはページ・プロテクション・ビットが“1”であると,そのレベルの仮想計算機またはホスト計算機(第Mレベルの時)に,記憶保護例外の割込みを発生する,方法。」
2.引用文献2について
また,本願の優先日前に頒布され,原査定の拒絶の理由に引用された,特開平05-165663号公報(以下,これを「引用文献2」という。)には,図面とともに次の事項が記載されている。
D.「【0001】
【産業上の利用分野】本発明は,主記憶装置と,主記憶装置上にあるデータを操作する命令を実行するに伴って生じる主記憶アクセス処理が,命令実行処理とは非同期に動作させる命令処理装置とを有するデータ処理装置に関する。」
E.「【0027】図4は動的アドレス変換装置2の構成を示す図である。図4に示すように論理アドレス32は,ページ番号とこのページ内のアドレスからなり,実アドレス36は,ページ枠番号とこのページ内部のアドレスからなる。動的アドレス変換装置2は,ページテーブル200を有しており,ページテーブル200は,論理アドレス32上のページ番号(0~n)と実アドレス36のページ枠番号とを対応付けている。
【0028】動的アドレス変換装置2内のページテーブル200またはアドレス変換バッファ8上で存在信号が1であるページは,そのページが主記憶装置3(2次記憶装置)上に存在し,存在信号が0のときには対応したページが主記憶装置3上に存在しないことを示す。書き込み保護例外信号が1であるページは,書き込みが禁止されていることを示す。アクセス例外検出回路50は,ページテーブル200またはアドレス変換バッファ8内のページ存在信号及び書き込み保護信号を用いてアクセス例外を検出するためのものである。
【0029】ページが主記憶装置3上に存在しないときには,該ページに対するアクセスは,ページ不在例外を発生して処理が中断される。その後アクセス例外処理プログラムが起動され,例外の原因がページアウトによるものであるか否かを調べる。そうであれば,該ページのデータを主記憶装置上に転送して,該ページのページ存在信号を1に変更して,アクセス例外を発生した処理を再実行する。
【0030】セグメント不在例外についても,ページ不在例外と同様である。また,書き込みが禁止されているページに対する書き込み処理は,書き込み保護例外を発生して処理が中断される。その後,アクセス例外処理プログラムが起動され,例外の原因がコピーオンライト機構によるものであるか否かを調べる。そうであれば,該ページのコピーを作成して,該ページの存在信号を1に変更し,アクセス例外を発生した処理を再実行する。
【0031】なお,前述したコピーオンライト機構とは,次のようになっている。例えばユニックス・オペレーティングシステムで行われるようなプロセスのFORKを行なうと,オペレーティングシステムは,FORKを行ったプロセス(親プロセス)が持つアドレス空間をコピーし,内容が同じで別のアドレス空間を生成し,これを新しく出現したプロセス(子プロセス)に与える。
【0032】ここで,アドレス空間内のある領域を考えると,この領域を親プロセスまたは子プロセスが更新するまでは,親子間でこの領域を共有して参照することができるため,子のために,この領域のコピーを生成する必要はない。親子のどちらかがこの領域を更新する段階になったら,この領域をコピーして子に与えればよい。このようにすれば,FORKに伴う空間のコピーを削減することができ,高速なFORK処理が行える。この機構のため,親子で共有されている領域には,書き込み保護を設定する。」
3.引用文献3について
また,本願の優先日前に頒布され,原査定の拒絶の理由に引用された,米国特許出願公開第2008/0005488号明細書(以下,これを「引用文献3」という。)には,図面とともに次の事項が記載されている。
F.「[0056] Referring next to FIG.5 ,shown is a block diagram illustrating an example system wherein a module can be mapped into multiple virtual address spaces that share a single guest physical address mapping. As can be seen in FIG.5 , guest physical address mappings 501 are ultimately associated with a single corresponding copy of the module data 503 in the system physical address space 505. In the example shown in FIG.5 , four instances of the same module 507 are loaded into two processes 509 511 in each of two partitions 513 515 . There is only one copy 503 of the module section data in the system's physical memory 505 .
[0057] As mentioned earlier, the above technique is used on pages that represent both write protected and write enabled module sections. The mapping of mutable module sections is often accomplished with a copy on write paging strategy. An example of a process employing such a strategy is provided in FIG.6 . Shown in FIG.6 is a flow diagram illustrating an example process for writing to a page within a module mapped into multiple virtual address spaces that share a single guest physical address mapping. First, a guest OS creates 601 an access request for page that resides in system physical memory. Next, the hypervisor finds 603 the page in system physical memory using guest physical to system physical mapping. If the access request is a write to the page 609 , for example, then the hypervisor consults 613 its shadow module state to determine 629 whether the page is write protected or shared by another virtual machine. If the page is shared or write protected 617 , then a copy of module containing the page is created 623 . The hypervisor then loads 625 the copy of the module in the partition 625 and creates 627 a guest physical to system physical mapping to the pages within module loaded in the partition. The write can then be performed 619 on the copy. The hypervisor then updates 621 its shadow module state accordingly. If the access request is not a write to the page 605 , or the page is neither write protected nor shared 615 , then the requested access may be performed on the page 619 without making a copy. The hypervisor then updates 621 its shadow module state accordingly.」
(当審訳:「[0056] 次に図5を参照すると,図示されているのは,単一のゲスト物理アドレス・マッピングを共有する複数の仮想アドレス空間の中にマッピングすることができるシステムの例を示すブロック図である。図5に見られるように,ゲスト物理アドレスマッピング501は,最終的には,システム物理アドレス空間505内のモジュールデータ503の1つの対応するコピーに関連している。図5に示す例では,同じモジュール507の4つのインスタンスは,2つのパーティション513,515各々における,2つのプロセス509,511にロードされる。システムの物理メモリ505のモジュールセクションデータの1つのコピー503のみが存在する。
[0057] 上述のように,上記技術は,書込みが保護され及び書込みが可能とされている両方のモジュールセクションを表すページ上で使用される。相互モジュールセクションのマッピングは,コピーオンライトストラテジーにより達成されることが多い。このようなストラテジーを利用する処理の一例を,図6に提示する。図6には,単一のゲスト物理アドレス・マッピングを共有する複数の仮想アドレス空間にマッピングされたモジュール内でのページへの書き込み処理の一例を示すフロー図が示されている。まず,ゲストOSが,システム物理メモリに存在するページへのアクセス要求を生成する(601)。次に,ハイパーバイザは,ゲスト物理アドレスをシステム物理マッピングに用いるシステム物理メモリ内のページを見つける(603)。アクセス要求がページへの書き込みである場合(609)には,例えば,ハイパーバイザがそのシャドーモジュール状態を参照して(613),そのページが,書き込み保護されているか,または,他の仮想マシンにより共有されているかを判断する(629)。そのページが共有されているか,または,書き込み保護されている場合(617)には,ページを含むモジュールのコピーが作成される(623)。そして,ハイパーバイザは,パーティション625内のモジュールのコピーをロードし(625),パーティションにロードされたモジュール内のページにシステムを物理的にマッピングするゲスト物理アドレスを生成する(627)。そして,書き込みは,コピーした上で実行することができる(619)。そして,ハイパーバイザは,そのシャドーモジュール状態を合わせて更新する(621)。アクセス要求が,ページ605に書き込みされていない,またはページが書き込み保護されていないか共有されていない場合(615)には,要求されたアクセスが,コピーを作成せずにページ上で実行され得る(619)。そして,ハイパーバイザは,そのシャドーモジュール状態を合わせて更新する(621)。」
4.引用文献4について
また,本願の優先日前に頒布され,前置報告において引用された,米国特許第5574936号明細書(以下,これを「引用文献4」という。)には,図面とともに次の事項が記載されている。
G.「Protection
Protection facilities are provided to protect the contents of main storage from destruction or misuse by programs that contain errors or are unauthorized. Key-controlled protection, access-list-controlled protection, page protection, and low-address protection are forms of protection available in ESA/390.」(第2欄9行~14行)
(当審訳:「保護
保護手段は,エラーを含むまたは不正であるプログラムによる破壊または誤用から,主記憶の内容を保護するために設けられている。キー制御保護,アクセス・リスト制御保護,ページ保護,低アドレス保護は,ESA/390において利用可能な保護の形式である。」
第5 対比・判断
1.本願発明1について
(1)対比
本願発明1と引用発明とを対比する。
ア 引用発明は,「仮想アドレス空間で記憶保護手段を有する場合に好適な仮想計算機システムの記憶保護方式」における方法であるから,コンピュータにおける記憶保護を管理する方法であり,コンピューティング環境のストレージに関する管理をするための方法であるといえる。
そうすると,後記する点で相違するものの,本願発明1である「ページング可能ゲストをサポートするコンピューティング環境のストレージに関する管理をするための方法」と,引用発明である「仮想アドレス空間で記憶保護手段を有する場合に好適な仮想計算機システムの記憶保護方式」における方法とは,“コンピューティング環境のストレージに関する管理をするための方法”である点で共通するといえる。
イ 引用発明は,「Nレベルの仮想計算機またはホスト計算機の記憶保護例外の検出を,Nレベルのいずれのレベルで発生したものであるかを識別できる手段」を設けており,当該「仮想計算機」または「ホスト計算機」の各「記憶保護例外」とは,いずれも記憶領域へのアクセスに対し許可されていないことによって発生する障害であって,この場合のアクセス対象である記憶領域は,本願発明1における「保護されるストレージの一領域」に相当し,そして,引用発明における,「ホスト計算機」の「記憶保護例外」に対する保護,及び,「仮想計算機」の「記憶保護例外」に対する保護は,いずれも,上記アクセス対象である記憶領域を保護しているといえるから,引用発明における,「ホスト計算機」の「記憶保護例外」に対する保護,「仮想計算機」の「記憶保護例外」に対する保護,当該両保護によって保護されている上記記憶領域へのアクセスが許可されていないことによって発生する障害が,それぞれ,本願発明1における,「ホスト・レベルの保護」,「ゲスト・レベルの保護」,「ホスト・レベルの保護およびゲスト・レベルの保護のうちの少なくとも1つによって保護されるストレージの一領域にアクセスしようという試みの障害」に,相当する。
また,引用発明の上記「Nレベルの仮想計算機またはホスト計算機の記憶保護例外の検出を,Nレベルのいずれのレベルで発生したものであるかを識別できる手段」を,コンピュータが具備していることは明らかである。
そうすると,後記する点で相違するものの,本願発明1において「ホスト・レベルの保護およびゲスト・レベルの保護のうちの少なくとも1つによって保護されるストレージの一領域にアクセスしようという試みの障害を検出するステップであって,前記ストレージの前記一領域がホスト・メイン・ストレージの第1のフレームに割り当てられている,前記検出するステップ」をコンピュータが実行することと,引用発明において「Nレベルの仮想計算機またはホスト計算機の記憶保護例外の検出を,Nレベルのいずれのレベルで発生したものであるかを識別できる手段」をコンピュータが具備することとは,“ホスト・レベルの保護およびゲスト・レベルの保護のうちの少なくとも1つによって保護されるストレージの一領域にアクセスしようという試みの障害を検出するステップ”を“コンピュータが実行する”ことである点で共通するといえる。
ウ 上記イのとおり,引用発明は,「Nレベルの仮想計算機またはホスト計算機の記憶保護例外の検出を,Nレベルのいずれのレベルで発生したものであるかを識別できる手段」を設けており,「Nレベルのいずれのレベルで発生したものであるかを識別」するとは,検出した「Nレベルの仮想計算機またはホスト計算機の記憶保護例外」を識別することに他ならないから,上記イの検討を踏まえると,「ホスト計算機」の「記憶保護例外」に対する保護,又は,「仮想計算機」の「記憶保護例外」に対する保護のいずれの保護に係る障害であるかを判断しているといえる。
また,上記イのとおり,引用発明の上記「Nレベルの仮想計算機またはホスト計算機の記憶保護例外の検出を,Nレベルのいずれのレベルで発生したものであるかを識別できる手段」を,コンピュータが具備していることは明らかである。
そうすると,後記する点で相違するものの,本願発明1において「前記検出された障害が前記ホスト・レベルの保護によるものであるかまたは前記ゲスト・レベルの保護によるものであるかを判断するステップであって,複数の保護のうちのどの保護が前記ストレージの前記一領域へのアクセスを拒否するかを判断するために複数のチェックを互いの独立性の有無を考慮した所定の順序で実行する,前記判断するステップ」をコンピュータが実行することと,引用発明において「Nレベルの仮想計算機またはホスト計算機の記憶保護例外の検出を,Nレベルのいずれのレベルで発生したものであるかを識別できる手段」をコンピュータが具備することとは,“前記検出された障害が前記ホスト・レベルの保護によるものであるかまたは前記ゲスト・レベルの保護によるものであるかを判断するステップ”を“コンピュータが実行する”ことである点で共通するといえる。
エ 引用発明は,「記憶保護例外が発生した場合には,発生したレベルに対応する仮想計算機またはゲスト計算機に割込む」ものであって,「ストアが許されていない,つまりTLBのセグメントまたはページ・プロテクション・ビットが“1”であると,そのレベルの仮想計算機またはホスト計算機(第Mレベルの時)に,記憶保護例外の割込みを発生する」ものであるから,「仮想計算機」の「記憶保護例外」と識別されると,「そのレベルの仮想計算機」に「記憶保護例外の割込み」を発生する。
ここで,引用発明における上記「仮想計算機」の「記憶保護例外」と識別される場合とは,本願発明1の「検出された障害が前記ゲスト・レベルの保護によるものである」と判断される場合に相当する。また,引用発明における上記「そのレベルの仮想計算機」への「記憶保護例外の割込み」とは,「ストアが許されていない」ことに対応することから,ストアが「仮想計算機」というゲスト・レベルの保護によって許可されないことに対応する処理であるといえ,よって,引用発明における上記「そのレベルの仮想計算機」への「記憶保護例外の割込み」と,本願発明1の「ストアが前記ゲスト・レベルの保護によって許可されないことをゲストに対して示すことを実行する」こととは,“ストアが前記ゲスト・レベルの保護によって許可されないことに対応する処理を実行する”ことである点で共通するといえる。
また,引用発明の上記「記憶保護例外が発生した場合には,発生したレベルに対応する仮想計算機またはゲスト計算機に割込む」ことであって,「ストアが許されていない,つまりTLBのセグメントまたはページ・プロテクション・ビットが“1”であると,そのレベルの仮想計算機またはホスト計算機(第Mレベルの時)に,記憶保護例外の割込みを発生する」ことを,コンピュータが実行していることは明らかである。
そうすると,後記する点で相違するものの,本願発明1において「前記検出された障害が前記ゲスト・レベルの保護によるものであることに応じて,ストアが前記ゲスト・レベルの保護によって許可されないことをゲストに対して示すことを実行するステップ」をコンピュータが実行することと,引用発明において「記憶保護例外が発生した場合には,発生したレベルに対応する仮想計算機またはゲスト計算機に割込む」ことであって,「ストアが許されていない,つまりTLBのセグメントまたはページ・プロテクション・ビットが“1”であると,そのレベルの仮想計算機またはホスト計算機(第Mレベルの時)に,記憶保護例外の割込みを発生する」ことをコンピュータが実行することとは,“前記検出された障害が前記ゲスト・レベルの保護によるものであることに応じて,ストアが前記ゲスト・レベルの保護によって許可されないことに対応する処理を実行するステップ”を“コンピュータが実行する”ことである点で共通するといえる。
カ そうすると,本願発明1と引用発明とは次の点で一致し,そして相違する。
[一致点]
コンピューティング環境のストレージに関する管理をするための方法であって,コンピュータが,
ホスト・レベルの保護およびゲスト・レベルの保護のうちの少なくとも1つによって保護されるストレージの一領域にアクセスしようという試みの障害を検出するステップと,
前記検出された障害が前記ホスト・レベルの保護によるものであるかまたは前記ゲスト・レベルの保護によるものであるかを判断するステップと,
前記検出された障害が前記ゲスト・レベルの保護によるものであることに応じて,ストアが前記ゲスト・レベルの保護によって許可されないことに対応する処理を実行するステップと
を実行することを含む,前記方法。
[相違点1]
「コンピューティング環境のストレージに関する管理をするための方法」に関し,
本願発明1は,「ページング可能ゲストをサポートする」ものであるのに対し,
引用発明は,そのように特定されていない点。
[相違点2]
「ホスト・レベルの保護およびゲスト・レベルの保護のうちの少なくとも1つによって保護されるストレージの一領域にアクセスしようという試みの障害を検出するステップ」に関し,
本願発明1は,「前記ストレージの前記一領域がホスト・メイン・ストレージの第1のフレームに割り当てられている」のに対して,
引用発明は,そのような構成を備えていない点。
[相違点3]
「前記検出された障害が前記ホスト・レベルの保護によるものであるかまたは前記ゲスト・レベルの保護によるものであるかを判断するステップ」に関し,
本願発明1は,「複数の保護のうちのどの保護が前記ストレージの前記一領域へのアクセスを拒否するかを判断するために複数のチェックを互いの独立性の有無を考慮した所定の順序で実行する」のに対して,
引用発明は,そのような構成を備えていない点。
[相違点4]
「前記検出された障害が前記ゲスト・レベルの保護によるものであることに応じて,ストアが前記ゲスト・レベルの保護によって許可されないことに対応する処理を実行するステップ」に関し,
本願発明1は,「ストアが前記ゲスト・レベルの保護によって許可されないことをゲストに対して示すこと」を実行するのに対して,
引用発明は,そのような構成を備えていない点。
[相違点5]
本願発明1は,「前記検出された障害が前記ホスト・レベルの保護によるものであること且つ前記ストレージの前記一領域がホスト・コピー・オン・ライト方式の一部であることに応じて,前記ストレージの前記一領域に第2のフレームを割り当て,前記第1のフレームの内容を前記第2のフレームにコピーし,そしてページング可能ゲストが前記第2のフレームを含む前記ストレージの前記一領域に格納することを許可すること,前記検出された障害が前記ホスト・レベルの保護によるものであること且つ前記ストレージの前記一領域がホスト・コピー・オン・ライト方式の一部でないことにさらに応じて,ストアが前記ホスト・レベルの保護によって許可されないことをゲストに対して示すことを実行するステップ」を,コンピュータが実行するよう含むのに対し,
引用発明は,そのような構成を備えていない点。
(2)相違点についての判断
事案に鑑みて,上記相違点5について先に検討する。
相違点5に係る本願発明1における「前記検出された障害が前記ホスト・レベルの保護によるものであること且つ前記ストレージの前記一領域がホスト・コピー・オン・ライト方式の一部であることに応じて,前記ストレージの前記一領域に第2のフレームを割り当て,前記第1のフレームの内容を前記第2のフレームにコピーし,そしてページング可能ゲストが前記第2のフレームを含む前記ストレージの前記一領域に格納することを許可すること,前記検出された障害が前記ホスト・レベルの保護によるものであること且つ前記ストレージの前記一領域がホスト・コピー・オン・ライト方式の一部でないことにさらに応じて,ストアが前記ホスト・レベルの保護によって許可されないことをゲストに対して示すことを実行するステップ」を,コンピュータが実行するという構成は,上記引用文献1ないし4に記載されておらず,本願優先日前において当該技術分野の周知技術であるともいえない。
そうすると,引用発明に基づいて,相違点5に係る本願発明1の構成とすることは,当業者が容易になし得ることであるとはいえない。
したがって,本願発明1は,相違点1ないし4を検討するまでもなく,当業者であっても引用発明,引用文献2ないし4に記載された技術的事項,及び,周知技術に基づいて容易に発明できたものであるとはいえない。
2.本願発明2-9について
本願発明2-9は,本願発明1を更に限定したものであるので,同様に,当業者であっても引用発明,引用文献2ないし4に記載された技術的事項,及び,周知技術に基づいて容易に発明できたものであるとはいえない。
第6 原査定についての判断
平成29年9月14日付けの手続補正の結果,補正後の請求項1-9は,上記相違点5に係る構成を有するものとなった。上記相違点5に係る構成は,原査定における引用文献1ないし3には記載されておらず,本願優先日前における周知技術でもない。よって,本願発明1-9は,当業者であっても,原査定における引用文献1ないし3に基づいて容易に発明できたものではない。
したがって,原査定を維持することはできない。
第7 むすび
以上のとおり,原査定の理由によっては,本願を拒絶することはできない。
また,他に本願を拒絶すべき理由を発見しない。
よって,結論のとおり審決する。
審決本文(J-PlatPat)
J-PlatPatの審決検索トップを開きます。番号入力で「審判番号」を選び、下の番号を貼り付けて検索してください。
J-PlatPat 審決検索を開く
2017-013702