ポートフォリオを新規に作成して保存 |
|
|
既存のポートフォリオに追加保存 |
|
PDFをダウンロード |
審決分類 |
審判 査定不服 5項独立特許用件 特許、登録しない。 G06F 審判 査定不服 2項進歩性 特許、登録しない。 G06F |
---|---|
管理番号 | 1293615 |
審判番号 | 不服2013-9216 |
総通号数 | 180 |
発行国 | 日本国特許庁(JP) |
公報種別 | 特許審決公報 |
発行日 | 2014-12-26 |
種別 | 拒絶査定不服の審決 |
審判請求日 | 2013-05-20 |
確定日 | 2014-11-05 |
事件の表示 | 特願2006-301784「サーバ内のブロック化された処理を安全に中断するための方法、システム、プログラム」拒絶査定不服審判事件〔平成19年 6月21日出願公開、特開2007-157125〕について、次のとおり審決する。 |
結論 | 本件審判の請求は、成り立たない。 |
理由 |
第1.手続の経緯 本願は、平成18年11月7日(パリ条約による優先権主張2005年12月8日,米国)を出願日とする出願であって、その後の手続の経緯の概略は次のとおりである。 出願審査請求(提出日) 平成21年8月21日 拒絶理由通知(起案日) 平成23年12月12日 意見、手続補正(提出日) 平成24年3月26日 拒絶理由通知(起案日) 平成24年8月27日 意見、手続補正(提出日) 平成24年11月8日 拒絶査定(起案日) 平成25年1月24日 拒絶査定謄本送達 平成25年1月29日 審判請求(提出日) 平成25年5月20日 手続補正(提出日) 平成25年5月20日 前置報告(作成日) 平成25年7月8日 審尋(起案日) 平成25年11月5日 回答(提出日) 平成26年1月24日 第2.平成25年5月20日付の手続補正についての補正却下の決定 [補正却下の決定の結論] 平成25年5月20日付の手続補正を却下する。 [理由] 1. 補正の内容 平成25年5月20日付の手続補正(以下、「本件補正」という。)により、本件補正前と本件補正後の特許請求の範囲は次のとおり補正された。 [本件補正前] 「【請求項1】 サーバ内の共有システム・リソースを予約して使用し、無応答になると当該共有システム・リソースへのアクセスをブロックする可能性のある潜在的ブロック化イベントを安全に中断するためのサーバ実行可能な方法であって、前記サーバが、 レジストリを作成するステップと、 前記レジストリに前記潜在的ブロック化イベントを登録するステップと、 前記潜在的ブロック化イベントを実行するステップと、 前記潜在的ブロック化イベントが応答していないことを判定するステップと、 前記潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするステップと、 前記潜在的ブロック化イベントに対応する前記レジストリ・エントリに登録された前記潜在的ブロック化イベントを非ブロック化することにより、前記ブロックを是正する是正処理を実行するステップと を含むメソッドを実行する方法。 【請求項2】 前記潜在的ブロック化イベントを前記レジストリから除去するステップをさらに含む、請求項1に記載の方法。 【請求項3】 前記潜在的ブロック化イベントが応答していないことを判定するためにタイマーが用いられる、請求項1に記載の方法。 【請求項4】 前記是正処理が、前記潜在的ブロック化イベントによって予約されたシステム・リソースをリリースするステップを含む、請求項1に記載の方法。 【請求項5】 前記レジストリ・エントリが、潜在的ブロック化イベントの識別子と、前記潜在的ブロック化イベントのエントリを登録したプロセスへの参照とを含む、請求項1に記載の方法。 【請求項6】 サーバ内の共有システム・リソースを予約して使用し、無応答になると当該共有システム・リソースへのアクセスをブロックする可能性のある潜在的ブロック化イベントを安全に中断するためのシステムであって、 レジストリを作成するための手段と、 前記レジストリに前記潜在的ブロック化イベントを登録するための手段と、 前記潜在的ブロック化イベントを実行するための手段と、 前記潜在的ブロック化イベントが応答していないことを判定するための手段と、 前記潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするための手段と、 前記潜在的ブロック化イベントに対応する前記レジストリ・エントリに登録された前記潜在的ブロック化イベントを非ブロック化することにより、前記ブロックを是正する是正処理を実行するための手段と、 を含むシステム。 【請求項7】 前記潜在的ブロック化イベントを前記レジストリから除去する手段をさらに含む、請求項6に記載のシステム。 【請求項8】 前記潜在的ブロック化イベントが応答していないことを判定するためにタイマーが用いられる、請求項6に記載のシステム。 【請求項9】 前記是正処理が、前記潜在的ブロック化イベントによって予約されたシステム・リソースをリリースすることを含む、請求項6に記載のシステム。 【請求項10】 前記レジストリ・エントリが、潜在的ブロック化イベントの識別子と、潜在的ブロック化イベントのエントリを登録したプロセスへの参照とを含む、請求項6に記載のシステム。 【請求項11】 サーバ内の共有システム・リソースをブロックする潜在的ブロック化イベントを安全に中断するためのプログラムであって、サーバが請求項1?5のいずれか1項に記載のステップを実行するためのサーバ実行可能なプログラム。」 (以下、この特許請求の範囲に記載された請求項を「補正前請求項」という。) [本件補正後] 「【請求項1】 サーバ内の共有システム・リソースを予約して使用し、無応答になると当該共有システム・リソースへのアクセスをブロックする可能性のあるオブジェクトまたはアプリケーションである潜在的ブロック化イベントを安全に中断するためのサーバ実行可能な方法であって、前記サーバが、 前記潜在的ブロック化イベントおよび非ブロック化をサポートするための情報を登録するためのレジストリを作成するステップと、 前記レジストリに前記潜在的ブロック化イベントを登録するステップと、 前記潜在的ブロック化イベントを実行するステップと、 前記潜在的ブロック化イベントが応答していないことを判定するステップと、 前記潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするステップと、 前記潜在的ブロック化イベントに対応する前記レジストリ・エントリに登録された前記潜在的ブロック化イベントを非ブロック化することにより、前記ブロックを是正する是正処理を実行するステップと を含むメソッドを実行する方法。 【請求項2】 前記潜在的ブロック化イベントを前記レジストリから除去するステップをさらに含む、請求項1に記載の方法。 【請求項3】 前記潜在的ブロック化イベントが応答していないことを判定するためにタイマーが用いられる、請求項1に記載の方法。 【請求項4】 前記是正処理が、前記潜在的ブロック化イベントによって予約されたシステム・リソースをリリースするステップを含む、請求項1に記載の方法。 【請求項5】 前記レジストリ・エントリが、潜在的ブロック化イベントの識別子と、前記潜在的ブロック化イベントのエントリを登録したプロセスへの参照とを含む、請求項1に記載の方法。 【請求項6】 サーバ内の共有システム・リソースを予約して使用し、無応答になると当該共有システム・リソースへのアクセスをブロックする可能性のあるオブジェクトまたはアプリケーションである潜在的ブロック化イベントを安全に中断するためのシステムであって、 前記潜在的ブロック化イベントおよび非ブロック化をサポートするための情報を登録するためのレジストリを作成するための手段と、 前記レジストリに前記潜在的ブロック化イベントを登録するための手段と、 前記潜在的ブロック化イベントを実行するための手段と、 前記潜在的ブロック化イベントが応答していないことを判定するための手段と、 前記潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするための手段と、 前記潜在的ブロック化イベントに対応する前記レジストリ・エントリに登録された前記潜在的ブロック化イベントを非ブロック化することにより、前記ブロックを是正する是正処理を実行するための手段と、 を含むシステム。 【請求項7】 前記潜在的ブロック化イベントを前記レジストリから除去する手段をさらに含む、請求項6に記載のシステム。 【請求項8】 前記潜在的ブロック化イベントが応答していないことを判定するためにタイマーが用いられる、請求項6に記載のシステム。 【請求項9】 前記是正処理が、前記潜在的ブロック化イベントによって予約されたシステム・リソースをリリースすることを含む、請求項6に記載のシステム。 【請求項10】 前記レジストリ・エントリが、潜在的ブロック化イベントの識別子と、潜在的ブロック化イベントのエントリを登録したプロセスへの参照とを含む、請求項6に記載のシステム。 【請求項11】 サーバ内の共有システム・リソースをブロックする潜在的ブロック化イベントを安全に中断するためのプログラムであって、サーバが請求項1?5のいずれか1項に記載のステップを実行するためのサーバ実行可能なプログラム。」 (以下、この特許請求の範囲に記載された請求項を「補正後請求項」という。下線部は補正部分を表している。) 2. 本件補正における補正の目的について 補正前請求項1の、「潜在的ブロック化イベント」および「レジストリ」を、それぞれ、補正後請求項1の「オブジェクトまたはアプリケーションである潜在的ブロック化イベント」、「前記潜在的ブロック化イベントおよび非ブロック化をサポートするための情報を登録するためのレジストリ」とする補正は、補正前請求項1の前記「潜在的ブロック化イベント」および前記「レジストリ」に限定を加えるものであるから、特許請求の範囲の減縮(第36条第5項の規定により請求項に記載した発明を特定するために必要な事項を限定するものであって、その補正前の当該請求項に記載される発明の産業上の利用分野及び解決しようとする課題が同一であるものに限る。)(以下「限定的減縮」と記す。)を目的としたものと認められる。 また、補正前請求項6を補正後請求項6とする補正は、カテゴリが「システム」の発明に係るものの、前記補正後請求項1に係る補正と実質的に同じ補正がなされているが、この補正も限定的減縮を目的としたものと認められる。 したがって、本件補正は、平成18年法律第55号改正附則第3条第1項によりなお従前の例によるとされる同法による改正前の特許法第17条の2第4項第2号の規定に適合する。 3. 独立特許要件についての判断 本件補正は限定的減縮を目的としたものであるところ、本件補正後の特許請求範囲に記載されている事項により特定される発明は、特許出願の際独立して特許を受けることができるものでなければならない(平成18年法律第55号改正附則第3条第1項によりなお従前の例によるとされる同法による改正前の特許法第17条の2第5項)ので、この規定に適合するか否かを以下に検討する。 3.1 本件補正発明 本件補正後請求項1に記載された発明(以下「本件補正発明」という。)は、前記平成25年5月20日付の手続補正(本件補正)により補正された特許請求の範囲の請求項1に記載されたとおりの次のものである。(再掲する。) 「サーバ内の共有システム・リソースを予約して使用し、無応答になると当該共有システム・リソースへのアクセスをブロックする可能性のあるオブジェクトまたはアプリケーションである潜在的ブロック化イベントを安全に中断するためのサーバ実行可能な方法であって、前記サーバが、 前記潜在的ブロック化イベントおよび非ブロック化をサポートするための情報を登録するためのレジストリを作成するステップと、 前記レジストリに前記潜在的ブロック化イベントを登録するステップと、 前記潜在的ブロック化イベントを実行するステップと、 前記潜在的ブロック化イベントが応答していないことを判定するステップと、 前記潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするステップと、 前記潜在的ブロック化イベントに対応する前記レジストリ・エントリに登録された前記潜在的ブロック化イベントを非ブロック化することにより、前記ブロックを是正する是正処理を実行するステップと を含むメソッドを実行する方法。」 3.2 引用文献 (1) 引用文献1 本願優先権主張日前に頒布され、原審で引用された刊行物である特開平4-367951号公報(以下、「引用文献1」という。)には、図面とともに次の事項が記載されている。(下線は当審付与) ア.「【0002】近年のコンピュータシステムは処理量の増大や、海外コンピュータシステムとの接続のため無停止で連続運転することが要求されている。このため、ある特定の処理を連続実行させなければ判明しないような潜在的なプロクラムミスを作り込まないことが重要である。同時に複数のプログラムを実行する多重プログラム方式において、・・・(中略)・・・ 【0003】 【従来の技術】従来のユーザプログラムにおいてメモリの解放処理忘れがあると、そのプログラムによる全ての処理が終了しているにも拘わらず、そのプログラム用に割り当てられたメモリの作業領域がそのプログラムによって占有された保持状態が継続するため、メモリの空き領域が減少し、新たに作業領域の獲得を要求する他のプロセスに対してメモリ割当不能が生じる。そこで、このときオペレーティングシステムは、メモリが獲得できるまでメモリ獲得希望プロセスを待ち状態にしていた。 【0004】 【発明が解決しようとする課題】従って、メモリ内に他のプロセスによって使用済となったメモリ領域が解放されずに滞留すると、メモリ獲得待ち状態の他のプロセスが増加するため、スループットの低下、プロセスのデッドロックによりシステム停止等の問題を生じていた。 【0005】上記従来の方式では、メモリの滞留が生じるとメモリ域獲得待ちの状態の増加によるスループット(単位時間あたりコンピュータがどの程度の仕事をこなすかの処理能力)の低下、プロセスのデッドロックによるシステム停止などの問題を生じていた。」 イ.「【0007】 【課題を解決するための手段】図1は本発明のメモリ滞留防止方式の原理図である。上記課題は、図1に示すように、オペレーティングシステム1のメモリ管理機能5がユーザプロセス6の必要とするメモリの作業領域を獲得/解放する情報処理装置において、作業領域を獲得したユーザプロセス名とその獲得時刻とを格納するメモリ滞留監視テーブル3と、前記オペレーティングシステムのタイマ管理機構4から定期的に起動され、前記メモリ滞留監視テーブル3を検索して所定時間を越えて特定のユーザプロセスに獲得されている解放忘れ作業領域を検出し、オペレーティングシステムのメモリ管理機能4に該作業領域の解放を依頼するメモリ滞留監視プロセス2とを有することを特徴とする本発明のメモリ滞留防止方式により解決される。 【0008】 【作用】ユーザプロセス6が必要とするメモリの作業領域がオペレーティングシステムのメモリ管理機能5によって確保されると、獲得したプロセス名とその時の時刻とがメモリ滞留監視テーブル3に登録される。そして、オペレーティングシステム1のタイマ管理機能4から定期的に起動される滞留監視プロセス2は、メモリ滞留監視テーブルを検索し、所定時間を越えて特定のユーザプロセスによって占有されている作業領域があるかどうかを調べ、あった場合にはその作業領域の解放をオペレーティングシステムのメモリ管理機能5に依頼することによって強制的にメモリ解放を行う。 【0009】従って、ユーザプロセスのプログラムミス等に起因するメモリ解放処理忘れがあっても、メモリ内に使用が終了した作業領域が滞留することを防止できる。」 ウ.「【0013】メモリ滞留監視テーブル3は、メモリ獲得/解放マクロ11、12とメモリ監視プロセス2によってアクセス(リード/ライト)されるテーブルで、図3に示すように、メモリの作業領域を獲得しているユーザプロセス名、該作業領域の先頭アドレス、獲得時刻とが格納されている。 ・・・(中略)・・・ 【0015】メモリ獲得・解放マクロ11,12 は、メモリ滞留監視テーブルへのデータの登録・削除をオペレーティングシステムをわずらわすことなく実行させるために設けたもので、ユーザプロサスからの作業領域獲得要求・解放要求は、直接にメモリ管理機能5を呼び出さずに、このマクロ11、12を介して行うようになっている。 【0016】即ち、獲得マクロ11はユーザプロセス6によって呼び出されると、オペレーティングシステム1が用意するメモリ管理機能5を呼び出し、そのメモリ獲得処理51によってユーザプロセスは所要の作業領域を獲得する。メモリ獲得に成功すると獲得マクロ11は獲得を依頼したプロセスの識別符号、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻をメモリ滞留監視テーブル3に登録する。 【0017】また解放マクロ12は、ユーザプロセス8またはメモリ滞留監視プロセス2から呼び出されると、オペレーティングシステム1が用意するメモリ管理プログラム5を呼び出し、そのメモリ解放処理52によって該プロセスに割当てられていたメモリの作業領域を解放するとともに、解放に成功するとメモリ滞留監視テーブル3から該当するデータを削除する。」 エ.「【0018】以下動作を説明する。ユーザプロセス8は実行にあたってメモリの作業領域が必要になると、メモリ獲得マクロ11を呼び出し、メモリの獲得を依頼する。メモリ獲得マクロ11は、OSのメモリ獲得処理51を呼び出しメモリの獲得を依頼する。メモリ獲得処理51は空いているメモリ領域を探して要求元のプロセスに割り当てる。メモリの獲得が成功すると獲得マクロ11は、獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻をメモリ滞留監視テーブル3に登録する。 【0019】今、プログラムミス等によりメモリ解放依頼忘れのためユーザプロセス6からメモリ解放マクロ12の呼び出しがなく、ユーザプロセス6が所定時間内に終了した後もメモリ内に当該ユーザプロセスに割り当てた作業領域が滞留しているものとする。 【0020】この時、OSのタイマ管理機能4により起動され一定周期でメモリ滞留監視テーブル3上の各作業領域の獲得時刻と現在時刻との差を監視している滞留監視プロセス2は、前記解放忘れにより滞留している作業領域の獲得時刻と現在時刻との差が予め設定された最大使用時間以上経過していることを検出する。すると、滞留監視プロセス2は、この作業領域についての解放処理をユーザプロセス8に代わって解放マクロ12に依頼する。解放マクロ12はOSのメモリ管理プログラムを呼び出し、この作業領域の解放を依頼し、解放が成功すると滞留監視テーブルの該当項目を削除する。」 オ.「 」 引用文献1に記載された事項を検討する。 (ア)イ.の「メモリの作業領域を獲得/解放する情報処理装置」との記載における当該「メモリの作業領域」(以下、単に「作業領域」と呼ぶことがある。)は、その「獲得/解放」との記載、ア.の「そのプログラム用に割り当てられたメモリの作業領域」、「新たに作業領域の獲得を要求する他のプロセス」、「プロセスのデッドロック」との記載から、「情報処理装置内の複数のプロセスが共有する作業領域」とみることができ、イ.の「ユーザプロセスの」、「使用が終了した作業領域が滞留することを防止」との記載から「ユーザプロセス」が「メモリの作業領域を使用する情報処理装置で実行可能な方法」をよみとることができる。 (イ)エ.の「ユーザプロセス8は実行にあたってメモリの作業領域が必要になると、メモリ獲得マクロ11を呼び出し、メモリの獲得を依頼する。メモリ獲得マクロ11は、OSのメモリ獲得処理51を呼び出しメモリの獲得を依頼する。メモリ獲得処理51は空いているメモリ領域を探して要求元のプロセスに割り当てる。メモリの獲得が成功すると獲得マクロ11は、獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻をメモリ滞留監視テーブル3に登録する。」との記載、「ユーザプロセス6からメモリ解放マクロ12の呼び出しがなく、ユーザプロセス6が所定時間内に終了した後もメモリ内に当該ユーザプロセスに割り当てた作業領域が滞留している」と「滞留している作業領域の獲得時刻と現在時刻との差が予め設定された最大使用時間以上経過していることを検出」し、「滞留監視プロセス2は、この作業領域についての解放処理をユーザプロセス8に代わって解放マクロ12に依頼」し、「解放マクロ12はOSのメモリ管理プログラムを呼び出し、この作業領域の解放」をする旨の記載から、「ユーザプロセスは実行にあたってメモリの作業領域が必要になると、メモリ獲得マクロ、OSのメモリ獲得処理を呼び出し、メモリ領域を要求元のプロセスに割り当て、獲得マクロ11は、獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻をメモリ滞留監視テーブル3に登録し、ユーザプロセス6からメモリ解放マクロ12の呼び出しがなく、ユーザプロセス6が所定時間内に終了した後もメモリ内に当該ユーザプロセスに割り当てた作業領域が滞留していると、滞留監視プロセスが、この作業領域についての解放処理をユーザプロセス8に代わって行い解放する」ことをよみとることができる。 これらをあわせると、「ユーザプロセスが実行にあたって前記作業領域が必要になるとメモリ獲得マクロを呼び出しOSのメモリ獲得処理によりメモリ領域を要求元のプロセスに割り当て、メモリ獲得マクロは獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻をメモリ滞留監視テーブルに登録し、ユーザプロセスは作業領域を使用し、ユーザプロセスからメモリ解放マクロの呼び出しがなく、ユーザプロセスが所定時間内に終了した後もメモリ内に当該ユーザプロセスに割り当てた作業領域が滞留していると、滞留監視プロセスが、この作業領域についての解放処理をユーザプロセスに代わって解放」する「情報処理装置で実行可能な方法」をよみとることができる。 (ウ)前記(イ)で言及の「獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻を登録」した「メモリ滞留監視テーブル」は、ウ.の「図3に示すように、メモリの作業領域を獲得しているユーザプロセス名、該作業領域の先頭アドレス、獲得時刻とが格納されている」との記載から、「獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻を登録するためのメモリ滞留監視テーブルを作成するステップ」をよみとることができる。 (エ)オ.の図3を参照すると、テーブルの構成図としてプロセス名、作業領域先頭アドレス、獲得時刻からなるデータ1、データ2が示されている。これと前記(イ)(ウ)での言及から「前記メモリ滞留監視テーブルに前記獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻からなるデータを登録するステップ」をよみとることができる。 (オ)エ.の「ユーザプロセス8は実行にあたってメモリの作業領域が必要になると、」「獲得を依頼したプロセス名を」「メモリ滞留監視テーブル3に登録する」との記載、前記(イ)で言及した「ユーザプロセス」が「メモリの作業領域を使用する」ことから、「獲得を依頼したプロセス名のユーザプロセスを実行するステップ」をよみとることができる。 (カ)イ.の「定期的に起動される滞留監視プロセス2は・・・強制的にメモリ解放を行う」との記載、エ.の「プログラムミス等によりメモリ解放依頼忘れのためユーザプロセス6からメモリ解放マクロ12の呼び出しがなく、」との記載から、プログラムミス等があればユーザプロセスからメモリ解放マクロ12の呼び出しがないと解されることから「滞留監視プロセスがユーザプロセスからのメモリ解放マクロの呼び出しがないことに応じて」作業領域の解放を行うことをよみとることができる。 イ.の「定期的に起動され、前記メモリ滞留監視テーブル3を検索して所定時間を越えて特定のユーザプロセスに獲得されている解放忘れ作業領域を検出し、」との記載、エ.の「一定周期でメモリ滞留監視テーブル3上の各作業領域の獲得時刻と現在時刻との差を監視し」との記載において、当該「メモリ滞留監視テーブル」は登録された「獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻」からなる「データ」が検索されアクセス可能であると解されることから、「滞留監視プロセスがメモリ滞留監視テーブルに登録された獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻からなるデータを検索してアクセスする」ことをよみとることができる。 この「メモリ滞留監視テーブルに登録された獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻からなるデータ」、エ.の「滞留監視プロセス2は、前記解放忘れにより滞留している作業領域の獲得時刻と現在時刻との差が予め設定された最大使用時間以上経過していることを検出する」と、「滞留監視プロセス2は、この作業領域についての解放処理をユーザプロセス8に代わって解放マクロ12に依頼」し、「解放マクロ12はOSのメモリ管理プログラムを呼び出し」て、「この作業領域の解放を依頼し、解放が成功すると滞留監視テーブルの該当項目を削除する」との記載から、滞留監視プロセスが「前記データに登録された前記プロセス名のユーザプロセスに代わって、解放処理を解放マクロに依頼し、解放マクロがOSのメモリ管理プログラムを呼び出して、作業領域についての解放処理を行い、滞留監視テーブルの該当項目を削除する」ことをよみとることができる。 したがって引用文献1の記載から 「前記滞留監視プロセスが 前記ユーザプロセスがユーザプロセスからのメモリ解放マクロの呼び出しがないことに応じ、 前記メモリ滞留監視テーブルに登録された獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻からなるデータを検索してアクセスし前記データに登録された前記プロセス名のユーザプロセスに代わって、解放処理を解放マクロに依頼し、解放マクロがOSのメモリ管理プログラムを呼び出して、作業領域についての解放処理を行わせ、滞留監視テーブルの該当項目を削除するステップ」をよみとることができる。 (ア)?(カ)によれば、引用文献1には、メモリの滞留が生じるとメモリ域獲得待ちの状態の増加によるスループット(単位時間あたりコンピュータがどの程度の仕事をこなすかの処理能力)の低下、プロセスのデッドロックによるシステム停止などの問題(ア.参照)に対処することを目的とした次の発明(以下、「引用発明」と呼ぶ。)が示されている。 「情報処理装置内の複数のプロセスが共有する作業領域を使用する情報処理装置で実行可能な方法であって、 該方法は、ユーザプロセスが実行にあたって前記作業領域が必要になるとメモリ獲得マクロを呼び出しOSのメモリ獲得処理によりメモリ領域を要求元のプロセスに割り当て、メモリ獲得マクロは獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻をメモリ滞留監視テーブルに登録し、ユーザプロセスは作業領域を使用し、ユーザプロセスからメモリ解放マクロの呼び出しがなく、ユーザプロセスが所定時間内に終了した後もメモリ内に当該ユーザプロセスに割り当てた作業領域が滞留していると、滞留監視プロセスが当該作業領域についての解放処理をユーザプロセスに代わって解放する方法であり、 前記情報処理装置が、 前記獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻を登録するためのメモリ滞留監視テーブルを作成するステップと、 前記メモリ滞留監視テーブルに前記獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻のデータを登録するステップと、 前記獲得を依頼したプロセス名のユーザプロセスを実行するステップと、 前記滞留監視プロセスが、前記ユーザプロセスからのメモリ解放マクロの呼び出しがないことに応じ、 前記メモリ滞留監視テーブルに登録された獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻からなるデータを検索してアクセスし、 前記データに登録された前記プロセス名のユーザプロセスに代わって、解放処理を解放マクロに依頼し、解放マクロが、OSのメモリ管理プログラムを呼び出して作業領域についての解放処理を行わせ、解放が成功すると滞留監視テーブルの該当項目を削除するステップ を含む処理を実行する方法。」 (2) 引用文献2 本願優先権主張日前に頒布され原審で引用された刊行物である特開2003-330735号公報(以下、「引用文献2」という。)には、図面とともに次の事項が記載されている。 「【0087】図3は、HD200に格納される共有メモリ管理ファイル201の内容の一例を示す説明図である。共有メモリ管理ファイル201はデータベース形式のファイルとなっており、図3に示すように、共有メモリ領域211の識別情報を示す共有メモリキーと、アプリケーションに固有の識別情報であるアプリIDと、アプリのプロセスに固有の識別情報であるプロセスIDとが対応づけられて一レコードとして記録されている。 【0088】共有メモリキーは、アドレス空間212上に確保される共有メモリ領域211を識別するものであり、本発明における共有メモリ識別情報を構成する。かかる共有メモリキーは、確保される共有メモリ領域211ごとに固有の値を有するものとなっている。各アプリは、この共有メモリキーを指定して汎用OS121で提供される共有メモリ領域取得のシステムコールを発行することによって、共有メモリ領域211の作成または取得を行う。」 「 」 3.3 対比 本件補正発明と引用発明とを対比する。 (1)引用発明の「情報処理装置」は、ア.の「近年のコンピュータシステムは処理量の増大や、海外コンピュータシステムとの接続のため無停止で連続運転する」との記載や、一般的に、情報処理装置がサーバとして用いられていることは広く知られており情報処理装置がサーバを含むものであることは記載されているに等しい事項であるから、引用発明も「サーバ実行可能な方法」であると言える。 また、引用発明の「複数のプロセスが共有する作業領域」は、通常はシステム・リソースに含まれるメモリであるから、本件補正発明の「共有システム・リソース」に相当し、引用発明の「実行にあたって前記作業領域が必要になると」「獲得したメモリ領域の先頭アドレス」などのデータを「登録」し、「メモリ領域」を「獲得」し「ユーザプロセスは作業領域を使用」することは、本件補正発明の共有システム・リソースを「予約して使用」することに相当する。 また、引用発明の「ユーザプロセスからメモリ解放マクロの呼び出しがなく、ユーザプロセスが所定時間内に終了した後もメモリ内に当該ユーザプロセスに割り当てた作業領域が滞留している」ことは、ユーザプロセスから呼び出しのない無応答状態になり、当該滞留している作業領域が解放されずに他のプロセスによる獲得、使用をブロックしているとみることができ、本件補正発明の「無応答になると当該共有システム・リソースへのアクセスをブロックする」ことと実質的な差異はない。また、一般的にユーザプロセスがアプリケーションないしアプリケーションの部分であるから、引用発明の「ユーザプロセス」は、アプリケーションとみることができ(必要なら,引用文献2の共有メモリ識別子(共有メモリキー)、アプリID、プロセスIDのレコード参照。)、前記作業領域を滞留させる「ユーザプロセス」は作業領域を滞留させて「ブロックする可能性のある」ユーザプロセスであるとみることができ、さらに本願明細書の段落【0018】に「潜在的ブロック化イベントはリソースを予約するアプリケーションとすることができる」と記載されていること等から引用発明の「ユーザプロセス」は本件補正発明の「オブジェクトまたはアプリケーションである潜在的ブロック化イベント」に相当する。 また、引用発明における「ユーザプロセスからメモリ解放マクロの呼び出しがなく」ても「解放処理をユーザプロセスに代わって」安全に行い、ユーザプロセスに代わって解放することは、ユーザプロセスに代わって解放する期間、ユーザプロセスが中断して制御がOSに移行し又はメモリ解放マクロが実行されていることを意味する点、及び、「潜在的ブロック化イベントを安全に中断する」に関連して本願明細書の段落【0016】に「無応答の潜在的ブロック化イベントを中断してインターフェース定義のメソッドを呼び出した後に、処理ブロック18に示されるように、サーバ内のブロック化された処理を安全に中断するための方法は、その潜在的ブロック化イベントに対応する潜在的ブロック化イベント・エントリをレジストリから除去する」と記載されている点をふまえれば、前記「ユーザプロセスに代わって解放する」ことも前記「潜在的ブロック化イベントを安全に中断する」ことに含まれると解され、前記引用発明の「ユーザプロセスからメモリ解放マクロの呼び出しがなく、ユーザプロセスが所定時間内に終了した後もメモリ内に当該ユーザプロセスに割り当てた作業領域が滞留していると、当該作業領域についての解放処理をユーザプロセスに代わって解放する」ことと本件補正発明の「潜在的ブロック化イベントを安全に中断するためのサーバ実行可能な方法」とに実質的な差異はない。 よって、引用発明は本件補正発明と同様に「サーバ内の共有システム・リソースを予約して使用し、無応答になると当該共有システム・リソースへのアクセスをブロックする可能性のあるオブジェクトまたはアプリケーションである潜在的ブロック化イベントを安全に中断するためのサーバ実行可能な方法」であると言える。 (2)引用発明の「獲得を依頼したプロセス名」を登録することは本件補正発明の「潜在的ブロック化イベント」を登録することに相当し、引用発明の「獲得したメモリ領域の先頭アドレス」は、この先頭アドレスから開始するメモリ領域を解放すれば、解放によってメモリ不足が解消されて、前記メモリ不足のために処理を開始できずにブロックされて待たされていた他のユーザプロセスが実行可能になり得る情報であって、当該情報、即ち、非ブロック化のための役に立つ情報と換言できる点をふまえれば、本件補正発明の「非ブロック化をサポートするための情報」に相当し、引用発明の「メモリ滞留監視テーブル」に係る「テーブル」と本件補正発明の「レジストリ」とは上位概念において「記憶領域」で共通する。これらをふまえると、引用発明の「メモリ滞留監視テーブルを作成するステップ」と本件補正発明の「レジストリを作成するステップ」とは「前記潜在的ブロック化イベントおよび非ブロック化をサポートするための情報を登録するための記憶領域を作成するステップ」である点で共通する。 (3)引用発明の「前記メモリ滞留監視テーブルに前記獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻のデータを登録するステップ」と本件補正発明の「前記レジストリに前記潜在的ブロック化イベントを登録するステップ」とは「前記記憶領域に前記潜在的ブロック化イベントを登録するステップ」である点で共通する。 (4)引用発明の「前記獲得を依頼したプロセス名のユーザプロセスを実行するステップ」と本件補正発明の「前記潜在的ブロック化イベントを実行するステップ」とに実質的な差異はない。 (5)引用発明の「前記ユーザプロセスからのメモリ解放マクロの呼び出しがないことに応じ」は、当該呼び出しが「あるかないか」といった決定に「判定する」ステップを用いることは自明ないし慣用といえる技術であって記載されているに等しい点を加味すれば、本件補正発明の「前記潜在的ブロック化イベントが応答していないことを判定するステップ」と実質的な差異はない。 (6)引用発明の「前記メモリ滞留監視テーブルに登録された獲得を依頼したプロセス名、獲得したメモリ領域の先頭アドレス、獲得マクロが呼び出された時刻からなるデータを検索してアクセス」することと本件補正発明の「前記潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするステップ」とは「前記潜在的ブロック化イベントに対応する記憶領域のエントリにアクセスするステップ」である点で共通する。 (7)引用発明の「ユーザプロセスからメモリ解放マクロの呼び出しがなく、ユーザプロセスが所定時間内に終了した後もメモリ内に当該ユーザプロセスに割り当てた作業領域が滞留していると、当該作業領域についての解放処理をユーザプロセスに代わって解放する」こと及び「前記データに登録された前記プロセス名のユーザプロセスに代わって、解放処理を解放マクロに依頼し、解放マクロは、OSのメモリ管理プログラムを呼び出して作業領域についての解放処理を行」うことと、本件補正発明の「前記潜在的ブロック化イベントに対応する前記レジストリ・エントリに登録された前記潜在的ブロック化イベントを非ブロック化することにより、前記ブロックを是正する是正処理を実行するステップ」とは「前記潜在的ブロック化イベントに対応する前記記憶領域のエントリに登録された前記潜在的ブロック化イベントを非ブロック化することにより、前記ブロックを是正する是正処理を実行するステップ」である点で共通する。 なお、本件補正発明の「前記ブロックを是正する是正処理」に関し、「前記ブロック」の「前記」は最初の段落の「ブロック」を指し、また「ブロックを是正する是正処理」は「非ブロック化することにより、」に記載された「読点」の存在により、「前記ブロックを是正する是正処理」が「前記記憶領域のエントリに登録された」もの(端的には、本願図2の、登録された、無応答の潜在的ブロック化イベントを中断するためのインターフェース定義へのメソッドの参照によるもの)にまで限定されていないことは明らかである。 (8)引用発明の「処理を実行する方法」において、処理に「メソッド」や「関数」や「方法」を実行するものが含まれることは慣用である点をふまえれば、本件補正発明の「メソッドを実行する方法」と実質的な差異はない。 (9)(1)?(8)の対比によれば、引用発明と本件補正発明とは次の点で一致し、そして相違している。 〈一致点〉 「サーバ内の共有システム・リソースを予約して使用し、無応答になると当該共有システム・リソースへのアクセスをブロックする可能性のあるオブジェクトまたはアプリケーションである潜在的ブロック化イベントを安全に中断するためのサーバ実行可能な方法であって、前記サーバが、 前記潜在的ブロック化イベントおよび非ブロック化をサポートするための情報を登録するための記憶領域を作成するステップと、 前記記憶領域に前記潜在的ブロック化イベントを登録するステップと、 前記潜在的ブロック化イベントを実行するステップと、 前記潜在的ブロック化イベントが応答していないことを判定するステップと、 前記潜在的ブロック化イベントに対応する記憶領域のエントリにアクセスするステップと、 前記潜在的ブロック化イベントに対応する前記記憶領域のエントリに登録された前記潜在的ブロック化イベントを非ブロック化することにより、前記ブロックを是正する是正処理を実行するステップと を含むメソッドを実行する方法。」 〈相違点〉 作成するステップ、登録するステップ、アクセスするステップ、是正処理を実行するステップのそれぞれに係る「記憶領域」が、本件補正発明は「レジストリ」であるのに対し、引用発明は「メモリ滞留監視テーブル」である点。 3.4 相違点についての当審判断 本件補正発明の「レジストリ」とは、OSの設定情報を格納するものといった特別の意味の事項であると解することができるところ、このようなレジストリは周知の技術であり(必要があれば、Microsoft Corporation著,「Microsoft Windows 95 リソースキット Vol.1」,初版,1995年11月15日,株式会社アスキー,第471?473頁,ISBN:4-7561-1018-5、ないし、Walter Oney著,株式会社ロングテール(外1名)訳,「Microsoft WDMプログラミング」,初版,2001年9月21日,株式会社アスキー,第250?251頁,ISBN:4-7561-3913-2参照)、前記作成するステップ、登録するステップ、アクセスするステップ、是正処理を実行するステップのそれぞれに係る「記憶領域」を、それぞれ「レジストリ」とすることは当該周知の技術を参酌することにより当業者が容易になし得るものである。 なお,仮に「レジストリ」とは一般的な「登録」、「登録所」を意味するものと解した場合には、本件補正発明における「レジストリ」と引用発明の「登録」、「メモリ滞留監視テーブル」に係る「テーブル」とに実質的な差異はない。 そして、本件補正発明の構成により奏する効果も引用発明および周知の技術から当然予測される範囲内のもので格別顕著なものとは認められない。 したがって、本件補正発明は当業者が引用発明から容易に発明することができたものである。 3.5 小括 以上のとおり、本件補正発明は、特許出願前に日本国内又は外国において、頒布された刊行物に記載された発明又は電気通信回線を通じて公衆に利用可能となった発明に基いて当業者が容易に発明をすることができたものであるから、特許法第29条第2項の規定により、独立して特許を受けることができないものである。 4. むすび したがって、本件補正は、特許法第17条の2第5項で準用する同法第126条第5項の規定に違反するので、同法第159条第1項において読み替えて準用する同法第53条第1項の規定により却下すべきものである。 よって、上記補正却下の決定の結論のとおり決定する。 第3 本願発明について (1)本願発明 平成25年5月20日付の手続補正は前記のとおり却下されたので、本願の請求項1に係る発明は、平成24年11月8日付の手続補正書により補正された特許請求の範囲の請求項1に記載されたとおりの次の事項により特定されるものである。(再掲する。以下「本願発明」という。) 「サーバ内の共有システム・リソースを予約して使用し、無応答になると当該共有システム・リソースへのアクセスをブロックする可能性のある潜在的ブロック化イベントを安全に中断するためのサーバ実行可能な方法であって、前記サーバが、 レジストリを作成するステップと、 前記レジストリに前記潜在的ブロック化イベントを登録するステップと、 前記潜在的ブロック化イベントを実行するステップと、 前記潜在的ブロック化イベントが応答していないことを判定するステップと、 前記潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするステップと、 前記潜在的ブロック化イベントに対応する前記レジストリ・エントリに登録された前記潜在的ブロック化イベントを非ブロック化することにより、前記ブロックを是正する是正処理を実行するステップと を含むメソッドを実行する方法。」 (2)引用文献 原審の拒絶の理由に引用された、本願優先権主張日前に頒布された刊行物である前記引用文献1、2には、前記第2の3.2(1)及び(2)で摘記した事項が記載されている。 (3)対比・判断 本願発明は、前記第2の「2. 本件補正における補正の目的について」の判断で検討した本件補正発明における発明特定事項である、「オブジェクトまたはアプリケーションである」、「前記潜在的ブロック化イベントおよび非ブロック化をサポートするための情報を登録するための」なる限定を省いたものである。 そうすると、本願発明の構成要件をすべて含み、さらに他の構成要件を付加したものに相当する本件補正発明が、前記第2の3.に記載したとおり、引用発明および周知の技術に基いて、当業者が容易に発明をすることができたものであるから、本願発明も、同様の理由により、引用発明および周知の技術に基いて当業者が容易に発明をすることができたものである。 (4)むすび 以上のとおり、本願発明は、特許出願前に日本国内又は外国において、頒布された刊行物に記載された発明又は電気通信回線を通じて公衆に利用可能となった発明に基いて当業者が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができないものであり、他の請求項について検討するまでもなく、本願は、拒絶すべきものである。 よって、結論のとおり審決する。 |
審理終結日 | 2014-06-09 |
結審通知日 | 2014-06-10 |
審決日 | 2014-06-23 |
出願番号 | 特願2006-301784(P2006-301784) |
審決分類 |
P
1
8・
575-
Z
(G06F)
P 1 8・ 121- Z (G06F) |
最終処分 | 不成立 |
前審関与審査官 | 久保 光宏 |
特許庁審判長 |
仲間 晃 |
特許庁審判官 |
山崎 達也 田中 秀人 |
発明の名称 | サーバ内のブロック化された処理を安全に中断するための方法、システム、プログラム |
代理人 | 上野 剛史 |
代理人 | 太佐 種一 |
復代理人 | 間山 進也 |