• ポートフォリオ機能


ポートフォリオを新規に作成して保存
既存のポートフォリオに追加保存

  • この表をプリントする
PDF PDFをダウンロード
審決分類 審判 査定不服 2項進歩性 特許、登録しない。 G06F
審判 査定不服 5項独立特許用件 特許、登録しない。 G06F
管理番号 1278400
審判番号 不服2011-11355  
総通号数 166 
発行国 日本国特許庁(JP) 
公報種別 特許審決公報 
発行日 2013-10-25 
種別 拒絶査定不服の審決 
審判請求日 2011-05-31 
確定日 2013-08-20 
事件の表示 特願2007-508676「オブジェクトファイナライズによる改良型コンピュータアーキテクチャ」拒絶査定不服審判事件〔平成17年11月 3日国際公開,WO2005/103927,平成19年11月22日国内公表、特表2007-534065〕について.次のとおり審決する。 
結論 本件審判の請求は,成り立たない。 
理由 第1.手続の経緯
本願は,2005年4月22日(パリ条約による優先権主張外国庁受理2004年4月22日 オーストラリア)を国際出願日とする出願であって,
平成18年12月20日付けで特許法第184条の4第1項の規定による明細書,請求の範囲,及び,図面(図面の中の説明に限る)の日本語による翻訳文が提出され,平成20年4月4日付けで審査請求がなされ,平成22年9月14日付けで審査官により拒絶理由が通知され,これに対して平成22年12月21日付けで意見書が提出されると共に手続補正がなされたが,平成23年1月18日付けで審査官により拒絶査定がなされ,これに対して平成23年5月31日付けで審判請求がなされると共に手続補正がなされ,平成23年6月29日付けで審査官により特許法第164条第3項の規定に基づく報告がなされ,平成23年11月8日付けで当審により特許法第134条第4項の規定に基づく審尋がなされたが,回答書の提出がなかったものである。

第2.平成23年5月31日付けの手続補正の却下の決定

[補正却下の決定の結論]

平成23年5月31日付け手続補正を却下する。

[理由]

1.補正の内容
平成23年5月31日付けの手続補正(以下,「本件手続補正」という)により,平成22年12月21日付けの手続補正により補正された特許請求の範囲,
「 【請求項1】
単一のコンピュータでのみ動作するように各々記述されているが,通信ネットワークによって相互接続された複数のコンピュータ上で同時に実行される少なくとも1つのアプリケーションプログラムを有する多重コンピュータシステムであって,
前記アプリケーションプログラムの異なる部分が前記コンピュータのうちの異なるコンピュータ上でほぼ同時に実行され,前記各コンピュータが,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記コンピュータの各々が,他のいずれのコンピュータの前記ローカルメモリも読み取ることができず,前記各部分において,同一な複数のオブジェクトが前記対応するコンピュータに各々作成され,各々が同一の名前を有し,前記同一のオブジェクトの全ては,前記複数のコンピュータの各コンピュータがその対応するオブジェクトを参照する必要がない場合に一括削除されることを特徴とする多重コンピュータシステム。
【請求項2】
前記各コンピュータが分散ランタイム手段を含み,前記各コンピュータの分散ランタイム手段が全ての他のコンピュータと通信可能であり,これによって前記コンピュータの1つの上で実行される前記アプリケーションプログラムの一部がもはや当該コンピュータのオブジェクトを参照する必要がない場合には,前記参照されなかったオブジェクトのアイデンティティは,前記1つのコンピュータの分散ランタイム手段によって前記他のコンピュータ全てによってアクセス可能な共有テーブルに転送されることを特徴とする請求項1に記載のシステム。
【請求項3】
前記各アプリケーションプログラムは,ファイナライズルーチンを挿入して,前記アプリケーションプログラムがもはやオブジェクトを参照する必要がない各インスタンスを修正することによって,ロード前,ロード中,又はロード後に修正されることを特徴とする請求項2に記載のシステム。
【請求項4】
前記挿入されたファイナライズルーチンは,既存のファイナライズルーチンを修正して,全てのコンピュータがこれらの対応するオブジェクトをもはや参照する必要がない場合に前記既存のファイナライズルーチンを実行可能にし,少なくとも1つのコンピュータが対応するオブジェクトを参照する必要がある場合に前記既存のファイナライズルーチンを実行不能にすることを特徴とする請求項3に記載のシステム。
【請求項5】
前記アプリケーションプログラムは,ロード時の再コンパイル,ロード前の事前コンパイル,ロード前のコンパイル,実行時コンパイル,及びロード後で且つアプリケーションプログラムの関連部分の実行前の再コンパイルからなる手順のグループから選択される手順に従って修正されることを特徴とする請求項4に記載のシステム。
【請求項6】
前記アプリケーションプログラムは,マスタ/スレーブ転送,ブランチ転送,及びカスケード転送からなるグループから選択される手順に従って前記コンピュータの全てに転送されることを特徴とする請求項3に記載のシステム。
【請求項7】
通信リンクを介して相互接続され,単一のコンピュータでのみ動作するように各々記述されている少なくとも1つのアプリケーションプログラムを同時に動作する複数のコンピュータであって,
前記各コンピュータが前記アプリケーションプログラムの異なる部分をほぼ同時に実行し,前記各コンピュータが,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記各コンピュータが,他のいずれのコンピュータの前記ローカルメモリも読み取ることができず,前記少なくとも1つのアプリケーションプログラムを動作中の前記各コンピュータは,前記各コンピュータに物理的に位置付けられたローカルメモリ内だけにあるオブジェクトを参照する必要があるか,或いはもはやその必要がなく,前記各コンピュータによって利用される前記ローカルメモリのコンテンツは基本的に類似しているが各瞬間では同一ではなく,前記コンピュータの全コンピュータは,前記複数のコンピュータの各コンピュータがその対応するオブジェクトをもはや参照する必要がない場合にのみ,参照されないオブジェクトを削除するファイナライズルーチンを有することを特徴とする複数のコンピュータ。
【請求項8】
前記又は前記各アプリケーションプログラムに割り当てられたローカルメモリ容量が同一であり,前記又は前記各アプリケーションプログラムが利用可能な総メモリ容量が,前記割り当てられたメモリ容量であることを特徴とする請求項7に記載の複数のコンピュータ。
【請求項9】
前記分散更新手段の全ては,前記ローカルメモリ読み取り速度よりも遅いデータ転送速度で前記通信リンクを介して伝達することを特徴とする請求項7に記載の複数のコンピュータ。
【請求項10】
前記コンピュータの少なくとも幾つかは,種々の製造業者によって製造され,及び/又は種々のオペレーティングシステムを有することを特徴とする請求項7に記載の複数のコンピュータ。
【請求項11】
単一のコンピュータでのみ動作するように各々記述されている少なくとも1つのアプリケーションプログラムを複数のコンピュータ上で同時に実行する方法であって,前記コンピュータは,通信ネットワークによって相互接続されており,前記コンピュータの各々が,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記各コンピュータが,他のいずれのコンピュータの前記ローカルメモリも読み取ることができず,前記方法が,
(i)前記複数のコンピュータのうちの異なるコンピュータに対応するプロセッサによって,前記アプリケーションプログラムの異なる部分を実行し,前記各部分について前記対応するコンピュータ内に同一な複数のオブジェクトを各々作成し,各々に同一の名前を持たせる段階と,
(ii)前記プロセッサによって,前記複数のコンピュータの全てがこれらの対応するオブジェクトをもはや参照する必要がない場合には,前記同一のオブジェクト全てを一括削除する段階と,
を含む方法。
【請求項12】
(iii)前記プロセッサによって,前記通信ネットワークを介して前記コンピュータ間で伝達するための分散ランタイム手段を前記各コンピュータに提供する段階を更に含む請求項11に記載の方法。
【請求項13】
(iv)前記プロセッサによって,もはやオブジェクトにアクセスする必要のないあらゆるコンピュータのアイデンティティを前記オブジェクトのアイデンティティと共に記憶する,前記各分散ランタイム手段によってアクセス可能な共有テーブルを提供する段階を更に含む請求項12に記載の方法。
【請求項14】
(v)前記プロセッサによって,もはや前記オブジェクトにアクセスする必要のない前記コンピュータの数のカウントを記憶するカウンタ手段を前記共有テーブルに関連付ける段階を更に含む請求項13に記載の方法。
【請求項15】
(vi)前記プロセッサによって,前記共有プログラムが実行されておらず,前記共有テーブル及びカウンタをホストする追加のコンピュータを提供する段階であって,前記追加のコンピュータが前記通信ネットワークに接続されている提供段階を更に含む請求項14に記載の方法。
【請求項16】
単一のコンピュータでのみ動作するように記述されているが,通信ネットワークを介して相互接続された複数のコンピュータの異なるコンピュータ上でその異なる部分が各々ほぼ同時に実行されることになるアプリケーションプログラムの矛盾のないファイナライズを保証する方法であって,前記コンピュータの各々が,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記各コンピュータが,他のいずれのコンピュータの前記ローカルメモリも読み取ることができず,前記方法は,
(i)前記複数のコンピュータのうちの異なるコンピュータに対応するプロセッサによって,ロード時,又はロード前,或いはロード後に前記アプリケーションプログラムを精査して,ファイナライズルーチンを定義する各プログラム段階を検出する段階と,
(ii)前記プロセッサによって,前記コンピュータの各コンピュータがもはやこれらの対応するオブジェクトを参照する必要がない場合にだけ前記コンピュータの全て内の対応するオブジェクトの一括削除を保証するように前記ファイナライズルーチンを修正する段階と,
を含む方法。
【請求項17】
前記ファイナライズルーチンが,一度限り及び前記コンピュータの1つだけ,並びに前記コンピュータの全てが前記オブジェクトを参照する必要がもはや無い場合に,前記プロセッサによって,前記オブジェクトのクリーンアップを実行するよう修正されることを特徴とする請求項16に記載の方法。
【請求項18】
前記段階(ii)が,
(iii)前記コンピュータの1つに前記ファイナライズルーチンをロードして実行する段階と,
(iv)前記1つのコンピュータによって前記ファイナライズルーチンを修正する段階と,
(v)前記修正されたファイナライズルーチンを前記残りのコンピュータの各々に転送する段階と,
を含む請求項16又は17に記載の方法。
【請求項19】
前記修正されたファイナライズルーチンは,前記1つのコンピュータに対応するプロセッサによって,前記残りのコンピュータの各々に直接提供されることを特徴とする請求項18に記載の方法。
【請求項20】
前記修正されたファイナライズルーチンは,前記1つのコンピュータに対応するプロセッサによって,前記一つのコンピュータから前記残りのコンピュータの各々に順次にカスケード方式で,提供されることを特徴とする請求項18に記載の方法。
【請求項21】
段階(ii)が,
(vi)前記コンピュータの1つに前記ファイナライズルーチンをロードし修正する段階と,
(vii)前記1つのコンピュータが,前記未修正のファイナライズルーチンを前記残りのコンピュータの各々に送る段階と,
(viii)前記残りのコンピュータの各々が,前記ファイナライズルーチンを受け取った後に前記ファイナライズルーチンを修正する段階と,
を含む請求項16又は17に記載の方法。
【請求項22】
前記未修正のファイナライズルーチンは,前記1つのコンピュータに対応するプロセッサによって前記残りのコンピュータの各々に直接提供されることを特徴とする請求項21に記載の方法。
【請求項23】
前記未修正のファイナライズルーチンは,前記1つのコンピュータに対応するプロセッサによって,前記一つのコンピュータから前記残りのコンピュータの各々に順次にカスケード方式で,提供されることを特徴とする請求項21に記載の方法。
【請求項24】
前記プロセッサによって,ロード時の再コンパイル,ロード前の事前コンパイル,ロード前のコンパイル,実行時コンパイル,及びロード後で且つアプリケーションプログラムの前記関連部分の実行前の再コンパイルからなる手順のグループから選択される手順を利用して前記アプリケーションプログラムを修正する段階(ix)を更に含む請求項16又は17に記載の方法。
【請求項25】
前記プロセッサによって,マスタ/スレーブ転送,ブランチ転送,及びカスケード転送からなるグループから選択される手順を利用して前記アプリケーションプログラムを前記コンピュータの全てに転送する段階(x)を更に含む請求項16又は17に記載の方法。
【請求項26】
単一のコンピュータ上でのみ動作するように記述された単一のアプリケーションプログラムの個々のスレッドが,通信リンクを介して相互接続された複数のコンピュータのうちの対応するコンピュータ上で,各々同時に処理され,前記コンピュータの各々が,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記各コンピュータが,他のいずれのコンピュータの前記ローカルメモリも読み取ることができないマルチスレッド処理コンピュータオペレーションにおいて,
各スレッドを処理する前記コンピュータに物理的に関連付けられたローカルメモリ内のオブジェクトは,他の前記各コンピュータのローカルメモリ内に対応するオブジェクトを有し,前記複数のコンピュータの各コンピュータに対応するプロセッサが,もはやこれらの対応するオブジェクトを参照する必要がない場合に全ての前記対応するオブジェクトを一括削除する段階を含む改良方法。
【請求項27】
1つの前記スレッドに関連付けられたメモリに常駐し且つ削除されることになる前記オブジェクトは,前記1つのスレッドのコンピュータに対応するプロセッサによって他の前記コンピュータ全てがアクセス可能な共有テーブルに伝達されるアイデンティティを有することを特徴とする請求項26に記載の改良方法。
【請求項28】
1つの前記スレッドに関連付けられた前記メモリに常駐し且つ削除されることになる前記オブジェクトは,別の前記スレッドに関連付けられた前記コンピュータに送信されるアイデンティティを有し,前記プロセッサによって,これを利用して前記他のコンピュータ全てがアクセス可能な共有テーブルに送信されることを特徴とする請求項26に記載の改良方法。
【請求項29】
請求項11又は16に記載の方法を複数のコンピュータに実行させるプログラムを格納するコンピュータ読み取り可能記憶媒体。
【請求項30】
通信ネットワークを介して相互接続された複数のコンピュータにおいて,前記コンピュータ上で同時に実行されるアプリケーションプログラムの矛盾のない初期化を保証するように動作可能な複数のコンピュータであって,前記コンピュータは,請求項11又は16に記載の方法を実行するようにプログラムされており,或いは請求項29に記載のコンピュータ読み取り可能記憶媒体がロードされていることを特徴とする複数のコンピュータ。」(以下,上記引用の請求項各項を,「補正前の請求項」という)は,
「 【請求項1】
単一のコンピュータでのみ動作するように各々記述されているが,ローカルメモリ読み取り速度よりも遅いデータ転送速度の通信ネットワークによって相互接続された複数のコンピュータ上で同時に実行される少なくとも1つのアプリケーションプログラムを有する多重コンピュータシステムであって,
各前記アプリケーションプログラムの実行が前記複数のコンピュータ間で共有されて,前記アプリケーションプログラムの異なる部分が前記コンピュータのうちの異なるコンピュータ上でほぼ同時に実行され,前記各コンピュータが,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記コンピュータの各々が,他のいずれのコンピュータの前記ローカルメモリも読み取ることができず,前記又は各前記アプリケーションプログラムに割り当てられたローカルメモリ容量が同一であり,前記又は各前記アプリケーションプログラムが利用可能な総メモリ容量が,前記割り当てられたメモリ容量のみであり,前記各部分において,同一な複数のオブジェクトが前記対応するコンピュータに各々作成され,各々が同一の名前を有し,前記同一のオブジェクトの全ては,前記複数のコンピュータの各コンピュータがその対応するオブジェクトを参照する必要がない場合に一括削除されることを特徴とする多重コンピュータシステム。
【請求項2】
前記各コンピュータが分散ランタイム手段を含み,前記各コンピュータの分散ランタイム手段が全ての他のコンピュータと通信可能であり,これによって前記コンピュータの1つの上で実行される前記アプリケーションプログラムの一部がもはや当該コンピュータのオブジェクトを参照する必要がない場合には,前記参照されなかったオブジェクトのアイデンティティは,前記1つのコンピュータの分散ランタイム手段によって前記他のコンピュータ全てによってアクセス可能な共有テーブルに転送されることを特徴とする請求項1に記載のシステム。
【請求項3】
前記各アプリケーションプログラムは,ファイナライズルーチンを挿入して,前記アプリケーションプログラムがもはやオブジェクトを参照する必要がない各インスタンスを修正することによって,ロード前,ロード中,又はロード後に修正されることを特徴とする請求項2に記載のシステム。
【請求項4】
前記挿入されたファイナライズルーチンは,既存のファイナライズルーチンを修正して,全てのコンピュータがこれらの対応するオブジェクトをもはや参照する必要がない場合に前記既存のファイナライズルーチンを実行可能にし,少なくとも1つのコンピュータが対応するオブジェクトを参照する必要がある場合に前記既存のファイナライズルーチンを実行不能にすることを特徴とする請求項3に記載のシステム。
【請求項5】
前記アプリケーションプログラムは,ロード時の再コンパイル,ロード前の事前コンパイル,ロード前のコンパイル,実行時コンパイル,及びロード後で且つアプリケーションプログラムの関連部分の実行前の再コンパイルからなる手順のグループから選択される手順に従って修正されることを特徴とする請求項4に記載のシステム。
【請求項6】
前記アプリケーションプログラムは,マスタ/スレーブ転送,ブランチ転送,及びカスケード転送からなるグループから選択される手順に従って前記コンピュータの全てに転送されることを特徴とする請求項3に記載のシステム。
【請求項7】
ローカルメモリ読み取り速度よりも遅いデータ転送速度の通信リンクを介して相互接続され,単一のコンピュータでのみ動作するように各々記述されている少なくとも1つのアプリケーションプログラムを同時に動作する複数のコンピュータであって,
各前記アプリケーションプログラムの実行が前記複数のコンピュータ間で共有されて,前記各コンピュータが前記アプリケーションプログラムの異なる部分をほぼ同時に実行し,前記各コンピュータが,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記各コンピュータが,他のいずれのコンピュータの前記ローカルメモリも読み取ることができず,前記又は前記各アプリケーションプログラムに割り当てられた前記ローカルメモリ容量が同一であり,前記又は各前記アプリケーションプログラムが利用可能な総メモリ容量が,前記割り当てられたメモリ容量のみであり,前記少なくとも1つのアプリケーションプログラムを動作中の前記各コンピュータは,前記各コンピュータに物理的に位置付けられたローカルメモリ内だけにあるオブジェクトを参照する必要があるか,或いはもはやその必要がなく,前記各コンピュータによって利用される前記ローカルメモリのコンテンツは基本的に類似しているが各瞬間では同一ではなく,前記コンピュータの全コンピュータは,前記複数のコンピュータの各コンピュータがその対応するオブジェクトをもはや参照する必要がない場合にのみ,参照されないオブジェクトを削除するファイナライズルーチンを有することを特徴とする複数のコンピュータ。
【請求項8】
前記コンピュータの少なくとも幾つかは,種々の製造業者によって製造され,及び/又は種々のオペレーティングシステムを有することを特徴とする請求項7に記載の複数のコンピュータ。
【請求項9】
単一のコンピュータでのみ動作するように各々記述されている少なくとも1つのアプリケーションプログラムを複数のコンピュータ上で同時に実行する方法であって,前記コンピュータは,ローカルメモリ読み取り速度よりも遅いデータ転送速度の通信ネットワークによって相互接続されており,前記コンピュータの各々が,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記各コンピュータが,他のいずれのコンピュータの前記ローカルメモリも読み取ることができず,前記方法が,
(i)各前記アプリケーションプログラムの実行が前記複数のコンピュータ間で共有して,前記複数のコンピュータのうちの異なるコンピュータに対応するプロセッサによって,前記アプリケーションプログラムの異なる部分を実行し,前記各部分について前記対応するコンピュータ内に同一な複数のオブジェクトを各々作成し,各々に同一の名前を持たせる段階と,
(ii)同一のローカルメモリ容量前記又は前記各アプリケーションプログラムに割り当て,前記又は各前記アプリケーションプログラムが利用可能な総メモリ容量を,割り当てられた前記メモリ容量のみにする段階と,
(iii)前記プロセッサによって,前記複数のコンピュータの全てがこれらの対応するオブジェクトをもはや参照する必要がない場合には,前記同一のオブジェクト全てを一括削除する段階と,
を含む方法。
【請求項10】
(iv)前記プロセッサによって,前記通信ネットワークを介して前記コンピュータ間で伝達するための分散ランタイム手段を前記各コンピュータに提供する段階を更に含む請求項9に記載の方法。
【請求項11】
(v)前記プロセッサによって,もはやオブジェクトにアクセスする必要のないあらゆるコンピュータのアイデンティティを前記オブジェクトのアイデンティティと共に記憶する,前記各分散ランタイム手段によってアクセス可能な共有テーブルを提供する段階を更に含む請求項10に記載の方法。
【請求項12】
(vi)前記プロセッサによって,もはや前記オブジェクトにアクセスする必要のない前記コンピュータの数のカウントを記憶するカウンタ手段を前記共有テーブルに関連付ける段階を更に含む請求項11に記載の方法。
【請求項13】
(vii)前記プロセッサによって,前記共有プログラムが実行されておらず,前記共有テーブル及びカウンタをホストする追加のコンピュータを提供する段階であって,前記追加のコンピュータが前記通信ネットワークに接続されている提供段階を更に含む請求項12に記載の方法。
【請求項14】
単一のコンピュータでのみ動作するように記述されているが,ローカルメモリ読み取り速度よりも遅いデータ転送速度の通信ネットワークを介して相互接続された複数のコンピュータの異なるコンピュータ上でその異なる部分が各々ほぼ同時に実行されることになるアプリケーションプログラムの矛盾のないファイナライズを保証する方法であって,前記コンピュータの各々が,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記各コンピュータが,他のいずれのコンピュータの前記ローカルメモリも読み取ることができず,前記方法は,
(i)前記複数のコンピュータのうちの異なるコンピュータに対応するプロセッサによって,ロード時,又はロード前,或いはロード後に前記アプリケーションプログラムを精査して,ファイナライズルーチンを定義する各プログラム段階を検出する段階と,
(ii)各前記アプリケーションプログラムの実行が前記複数のコンピュータ間で共有されて,前記異なる部分が,前記各コンピュータによって,ほぼ同時に実行される段階と,
(iii)同一のローカルメモリ容量前記又は各前記アプリケーションプログラムに割り当て,前記又は各前記アプリケーションプログラムが利用可能な総メモリ容量を,割り当てられた前記メモリ容量にする段階と,
(iv)前記プロセッサによって,前記コンピュータの各コンピュータがもはやこれらの対応するオブジェクトを参照する必要がない場合にだけ前記コンピュータの全て内の対応するオブジェクトの一括削除を保証するように前記ファイナライズルーチンを修正する段階と,
を含む方法。
【請求項15】
前記ファイナライズルーチンが,一度限り及び前記コンピュータの1つだけ,並びに前記コンピュータの全てが前記オブジェクトを参照する必要がもはや無い場合に,前記プロセッサによって,前記オブジェクトのクリーンアップを実行するよう修正されることを特徴とする請求項14に記載の方法。
【請求項16】
前記段階(iv)が,
(v)前記コンピュータの1つに前記ファイナライズルーチンをロードして実行する段階と,
(vi)前記1つのコンピュータによって前記ファイナライズルーチンを修正する段階と,
(vii)前記修正されたファイナライズルーチンを前記残りのコンピュータの各々に転送する段階と,
を含む請求項14又は15に記載の方法。
【請求項17】
前記修正されたファイナライズルーチンは,前記1つのコンピュータに対応するプロセッサによって,前記残りのコンピュータの各々に直接提供されることを特徴とする請求項16に記載の方法。
【請求項18】
前記修正されたファイナライズルーチンは,前記1つのコンピュータに対応するプロセッサによって,前記一つのコンピュータから前記残りのコンピュータの各々に順次にカスケード方式で,提供されることを特徴とする請求項16に記載の方法。
【請求項19】
段階(iv)が,
(viii)前記コンピュータの1つに前記ファイナライズルーチンをロードし修正する段階と,
(ix)前記1つのコンピュータが,前記未修正のファイナライズルーチンを前記残りのコンピュータの各々に送る段階と,
(x)前記残りのコンピュータの各々が,前記ファイナライズルーチンを受け取った後に前記ファイナライズルーチンを修正する段階と,
を含む請求項14又は15に記載の方法。
【請求項20】
前記未修正のファイナライズルーチンは,前記1つのコンピュータに対応するプロセッサによって前記残りのコンピュータの各々に直接提供されることを特徴とする請求項19に記載の方法。
【請求項21】
前記未修正のファイナライズルーチンは,前記1つのコンピュータに対応するプロセッサによって,前記一つのコンピュータから前記残りのコンピュータの各々に順次にカスケード方式で,提供されることを特徴とする請求項19に記載の方法。
【請求項22】
前記プロセッサによって,ロード時の再コンパイル,ロード前の事前コンパイル,ロード前のコンパイル,実行時コンパイル,及びロード後で且つアプリケーションプログラムの前記関連部分の実行前の再コンパイルからなる手順のグループから選択される手順を利用して前記アプリケーションプログラムを修正する段階(xi)を更に含む請求項14又は15に記載の方法。
【請求項23】
前記プロセッサによって,マスタ/スレーブ転送,ブランチ転送,及びカスケード転送からなるグループから選択される手順を利用して前記アプリケーションプログラムを前記コンピュータの全てに転送する段階(xii)を更に含む請求項14又は15に記載の方法。
【請求項24】
単一のコンピュータ上でのみ動作するように記述された単一のアプリケーションプログラムの個々のスレッドが,複数のコンピュータ間で共有された実行を経験して,前記スレッドが,ローカルメモリ読み取り速度よりも遅いデータ転送速度の通信リンクを介して相互接続された前記複数のコンピュータのうちの対応するコンピュータ上で,各々同時に処理され,前記コンピュータの各々が,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記各コンピュータが,他のいずれのコンピュータの前記ローカルメモリも読み取ることができないマルチスレッド処理コンピュータオペレーションにおいて,
前記又は各前記アプリケーションプログラムに割り当てられたローカルメモリ容量が同一であり,前記又は各前記アプリケーションプログラムが利用可能な総メモリ容量が,前記割り当てられたメモリ容量のみであり,各スレッドを処理する前記コンピュータに物理的に関連付けられたローカルメモリ内のオブジェクトは,他の前記各コンピュータのローカルメモリ内に対応するオブジェクトを有し,前記複数のコンピュータの各コンピュータに対応するプロセッサが,もはやこれらの対応するオブジェクトを参照する必要がない場合に全ての前記対応するオブジェクトを一括削除する段階を含む改良方法。
【請求項25】
1つの前記スレッドに関連付けられたメモリに常駐し且つ削除されることになる前記オブジェクトは,前記1つのスレッドのコンピュータに対応するプロセッサによって他の前記コンピュータ全てがアクセス可能な共有テーブルに伝達されるアイデンティティを有することを特徴とする請求項24に記載の改良方法。
【請求項26】
1つの前記スレッドに関連付けられた前記メモリに常駐し且つ削除されることになる前記オブジェクトは,別の前記スレッドに関連付けられた前記コンピュータに送信されるアイデンティティを有し,前記プロセッサによって,これを利用して前記他のコンピュータ全てがアクセス可能な共有テーブルに送信されることを特徴とする請求項24に記載の改良方法。
【請求項27】
請求項9又は14に記載の方法を複数のコンピュータに実行させるプログラムを格納するコンピュータ読み取り可能記憶媒体。
【請求項28】
通信ネットワークを介して相互接続された複数のコンピュータにおいて,前記コンピュータ上で同時に実行されるアプリケーションプログラムの矛盾のない初期化を保証するように動作可能な複数のコンピュータであって,前記コンピュータは,請求項9又は14に記載の方法を実行するようにプログラムされており,或いは請求項27に記載のコンピュータ読み取り可能記憶媒体がロードされていることを特徴とする複数のコンピュータ。」(以下,上記引用の請求項各項を,「補正後の請求項」という)に補正された。

2.補正の適否
本件手続補正は,補正前の請求項1に係る発明における発明特定事項である,「通信ネットワーク」に対して,「ローカルメモリ読み取り速度よりも遅いデータ転送速度の」,という限定事項を付加し,同じく,補正前の請求項1に係る発明における発明特定事項である,「アプリケーションプログラム」に対して,「各前記アプリケーションプログラムの実行が前記複数のコンピュータ間で共有されて」,という限定事項を付加し,同じく,補正前の請求項1に係る発明における発明特定事項である,「ローカルメモリ」に対して,「前記又は各前記アプリケーションプログラムに割り当てられたローカルメモリ容量が同一であり,前記又は各前記アプリケーションプログラムが利用可能な総メモリ容量が,前記割り当てられたメモリ容量であり」,という限定を付加し,
それに伴い,補正前の請求項8,及び,請求項9を削除し,補正前の請求項1に係る発明と同等の構成を有する補正前の請求項7,請求項11,請求項16,及び,請求項26に対して,上記記載の限定を各発明特定事項に付加し,補正後の請求項7,請求項9,請求項14,及び,請求項24とするものであって,当該限定事項は,平成18年12月20日付けで提出された明細書,請求の範囲の日本語による翻訳文,及び,図面(以下,「当初明細書等」という)の範囲内でなされたものであるから,
本件手続補正は,請求項の削除,及び,特許請求の範囲の減縮を目的としたものである。
よって,本件手続補正が,平成18年法律第55号改正附則第3条第1項によりなお従前の例によるとされる同法による改正前の特許法第17条の2第5項において準用する同法第126条第5項の規定を満たすものであるか否か,即ち,補正後の請求項に係る発明が,特許出願の際独立して特許を受けられるものであるか否かについて,以下に検討する。

(1)補正後の請求項1に係る発明
補正後の請求項1に係る発明(以下,「本件補正発明」という)は,上記「1.補正の内容」において,補正後の請求項1として引用した,次に記載のとおりのものである。

「単一のコンピュータでのみ動作するように各々記述されているが,ローカルメモリ読み取り速度よりも遅いデータ転送速度の通信ネットワークによって相互接続された複数のコンピュータ上で同時に実行される少なくとも1つのアプリケーションプログラムを有する多重コンピュータシステムであって,
各前記アプリケーションプログラムの実行が前記複数のコンピュータ間で共有されて,前記アプリケーションプログラムの異なる部分が前記コンピュータのうちの異なるコンピュータ上でほぼ同時に実行され,前記各コンピュータが,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記コンピュータの各々が,他のいずれのコンピュータの前記ローカルメモリも読み取ることができず,前記又は各前記アプリケーションプログラムに割り当てられたローカルメモリ容量が同一であり,前記又は各前記アプリケーションプログラムが利用可能な総メモリ容量が,前記割り当てられたメモリ容量のみであり,前記各部分において,同一な複数のオブジェクトが前記対応するコンピュータに各々作成され,各々が同一の名前を有し,前記同一のオブジェクトの全ては,前記複数のコンピュータの各コンピュータがその対応するオブジェクトを参照する必要がない場合に一括削除されることを特徴とする多重コンピュータシステム。」

(2)引用刊行物に記載の発明
一方,原審が,平成22年9月14日付けの拒絶理由に引用した,本願の第1国出願前に既に公知である,特開2002-116917号公報(2002年4月19日公開,以下,これを「引用刊行物1」という)には,関連する図面と共に,次の事項が記載されている。

A.「【0003】
【発明が解決しようとする課題】よって,オブジェクト指向型プログラミング言語で書かれたソース・プログラムから生成されたオブジェクト・プログラムを複数のCPUを有する計算機で実行する場合も生ずるが,従来では,複数のCPUの能力を引き出すような並列化が行われていなかった。
【0004】よって,本発明の目的は,オブジェクト指向型プログラミング言語で書かれたソース・プログラムでも並列処理できるようにコンパイルすることができるコンパイラ技術を提供することである。」(下線は,当審にて,説明の都合上附加したものである。以下,同じ。)

B.「【0007】これにより必要なオブジェクトが実行時に生成されるため,並列処理が実現されるようになる。また,不要になれば生成されたオブジェクトは消滅する。」

C.「【0015】なお,表1のプログラムを並列処理するためには,元のオブジェクトの他に並列化処理用オブジェクトを生成・消滅するために,コンストラクタであるst.mem1=0及びst.mem2=1と,デストラクタであるst.?A()が並列化処理用オブジェクト毎に必要となる。そして,st.addというメソッドが各並列化処理用オブジェクトで実行される。各並列化処理用オブジェクトにおけるforループの範囲は,並列化処理用オブジェクトの数で決まる。」

D.「【0024】このようにして図5において追加で生成された命令群と通常コンパイラ120の並列化処理部124で生成される命令群とを用いて,オブジェクトコード生成部126がオブジェクトコードを生成し,オブジェクトコード・ファイル130に格納する。なお上でも説明したが,並列化処理部124の後に他の処理(例えば最適化処理)が実施され,その最適化処理後の命令群に対してオブジェクトコードを生成する場合もある。
【0025】オブジェクトコードには,図1に示したように並列化処理用オブジェクトを生成するための構築命令ルーチン42を呼び出す命令に対応するオブジェクトコードと,消滅させるための消滅命令ルーチン44を呼び出す命令に対応するオブジェクトコードとが含まれる。しかし,オブジェクトコード実行時に生成される並列化処理用オブジェクトの数は,オブジェクトコードを実行する並列コンピュータの能力などに依存するためこの時点では不明である。よって,構築命令ルーチン42を呼び出す命令及び消滅命令ルーチン44を呼び出す命令は並列化処理用オブジェクトの数分生成されるわけではない。」

E.「【0026】以上本発明の一実施の形態を説明したが,本発明はこれに限定されるものではない。例えば,図5のステップS29及びS31とステップS33及びS35とは順番を入れ替えることが可能である。また,図1のコンピュータ100がネットワークに接続されており,ソースプログラム・ファイル110が他のコンピュータから送信されてきたり,オブジェクトコード・ファイル130が他のコンピュータへ送信されるような場合もある。他のコンピュータは並列コンピュータである場合もある。上ではOpenMPを前提としたプログラムの例を示したが,その他の規格等に従ったプログラムであっても良い。」

ア.上記Aの「複数のCPUの能力を引き出すような並列化が行われていなかった」と言う記載,及び,同じく,「本発明の目的は,オブジェクト指向型プログラミング言語で書かれたソース・プログラムでも並列処理できるように・・・することである」という記載から,引用刊行物1には,
“オブジェクト指向型プログラミング言語で記述されたプログラムを並列処理できるようにする”
ことが記載されているものと読み取れる。

イ.上記Bの「必要なオブジェクトが実行時に生成されるため,並列処理が実現されるようになる。また,不要になれば生成されたオブジェクトは消滅する」という記載,及び,上記Cの「元のオブジェクトの他に並列化処理用オブジェクトを生成・消滅するために,コンストラクタであるst.mem1=0及びst.mem2=1と,デストラクタであるst.?A()が並列化処理用オブジェクト毎に必要となる」という記載と,上記Dの「オブジェクトコード実行時に生成される並列化処理用オブジェクトの数は,オブジェクトコードを実行する並列コンピュータの能力などに依存するためこの時点では不明である」という記載から,引用刊行物1においては,「並列処理用オブジェクト」が,複数生成されることが読み取れることから,引用刊行物1には,
“並列化処理用オブジェクト毎に,コンストラクタとデストラクタが生成され,並列処理の実行時に,必要なオブジェクトが複数生成され,不要になれば生成されたオブジェクトは消滅する”
ことが記載されているものと読み取れる。

ウ.上記Eの「コンピュータ100がネットワークに接続されており,・・・オブジェクトコード・ファイル130が他のコンピュータへ送信されるような場合もある」という記載から,引用刊行物1には,
“ネットワークで接続されたコンピュータによって構成されるシステム”
が記載され,更に,
“ネットワークで接続されたコンピュータにおいて,並列処理のためのオブジェクトコード・ファイルが,前記ネットワークに接続された他のコンピュータに送信される”
ことが記載されていることが読み取れる。

エ.上記Eの「上ではOpenMPを前提としたプログラムの例を示したが,その他の規格等に従ったプログラムであっても良い」という記載,並びに,上記ア.で検討した事項から,引用刊行物1に記載の内容の「オブジェクト指向型プログラミング言語で記述されたプログラム」とは,
“通常はスタンドアローンで実行されるよう記述されている,並列化可能なプログラム”を含むことが読み取れ,
上記ウ.で検討した事項と併せると,引用刊行物1の記載においては,「並列処理のためのオブジェクトコード・ファイル」と,「オブジェクト指向型プログラミング言語で記述されたプログラム」,並びに,“並列化可能なプログラム”とは,同じものを意味している。

よって,以上ア.?エ.において検討した事項から,引用刊行物1には,次の発明(以下,これを「引用発明」という)が記載されているものと認める。

通常はスタンドアローンで実行されるよう記述されている,ネットワークで接続されたコンピュータにおいて並列処理されるプログラムを有する,前記ネットワークで接続されたコンピュータによって構成されるシステムにおいて,
前記プログラムが,ネットワークに接続されたコンピュータ上で並列処理され,
並列処理の実行時に,必要なオブジェクトが生成され,不要になれば生成されたオブジェクトは消滅する,システム。

(3)本件補正発明と引用発明との対比
ア.引用発明における「ネットワーク」は,「通信ネットワーク」を含み得ること,引用発明における「通常はスタンドアローンで実行されるよう記述されている・・・プログラム」が,「単一のコンピュータでのみ動作するプログラム」を含み得ること,並びに,引用発明において,「ネットワーク」に接続されている「コンピュータ」が複数存在することは明らかであるから,
引用発明における「通常はスタンドアローンで実行されるよう記述されている,ネットワークで接続されたコンピュータにおいて並列処理されるプログラムを有する,前記ネットワークで接続されたコンピュータによって構成されるシステム」と,
本件補正発明における「単一のコンピュータでのみ動作するように各々記述されているが,ローカルメモリ読み取り速度よりも遅いデータ転送速度の通信ネットワークによって相互接続された複数のコンピュータ上で同時に実行される少なくとも1つのアプリケーションプログラムを有する多重コンピュータシステム」とは,
“単一のコンピュータでのみ動作するように記述されているが,通信ネットワークによって相互接続された複数のコンピュータ上で同時に実行されるアプリケーションプログラムを有する多重コンピュータシステム”である点で共通する。

イ.引用発明において,「並列処理されるプログラム」は,並列処理される場合に,引用刊行物1の【図1】に記載されているように,「元のオブジェクト」から,「並列化処理」によって,前記「元のオブジェクト」とは異なる,複数の「並列化処理用オブジェクト」が生成されるものであり,「ネットワーク」に接続されている,複数の「コンピュータ」上で,並列実行される場合には,各「コンピュータ」に割てられるのは,前記複数の「並列化処理用オブジェクト」であることは,分散・並列処理の技術分野における技術常識から明らかである。
そして,「並列処理」である以上,それらの「並列化処理用オブジェクト」が,異なる「コンピュータ」上で,同時に実行されることも明らかである。
よって,引用発明における「前記プログラムが,ネットワークに接続されたコンピュータ上で並列処理され」と,
本件補正発明における「各前記アプリケーションプログラムの実行が前記複数のコンピュータ間で共有されて,前記アプリケーションプログラムの異なる部分が前記コンピュータのうちの異なるコンピュータ上でほぼ同時に実行され」とは,
“アプリケーションプログラムの実行が複数のコンピュータ間で共有されて,前記アプリケーションプログラムの異なる部分が前記コンピュータのうちの異なるコンピュータ上で同時に実行され”る点で共通する。

ウ.引用発明における「並列処理の実行時に,必要なオブジェクトが複数生成され」と,
本件補正発明における「前記各部分において,同一な複数のオブジェクトが前記対応するコンピュータに各々作成され,各々が同一の名前を有し」とは,
“複数のオブジェクトが作成される”点で共通する。

エ.引用発明における「不要になれば生成されたオブジェクトは消滅する」は,不要となった「オブジェクト」が,全て消滅する態様を含むものであるから,
本件補正発明における「前記同一のオブジェクトの全ては,前記複数のコンピュータの各コンピュータがその対応するオブジェクトを参照する必要がない場合に一括削除される」と,
“オブジェクトの全ては,オブジェクトを参照する必要がない場合に一括削除される”点で共通する。

よって,上記ア.?エ.で検討した事項から,本件補正発明と,引用発明との,一致点,及び,相違点は,次のとおりである。

[一致点]
単一のコンピュータでのみ動作するように記述されているが,通信ネットワークによって相互接続された複数のコンピュータ上で同時に実行されるアプリケーションプログラムを有する多重コンピュータシステムであって,
アプリケーションプログラムの実行が複数のコンピュータ間で共有されて,前記アプリケーションプログラムの異なる部分が前記コンピュータのうちの異なるコンピュータ上で同時に実行され,
複数のオブジェクトが作成され,前記オブジェクトの全ては,オブジェクトを参照する必要がない場合に一括削除されることを特徴とする多重コンピュータシステム。

[相違点1]
“通信ネットワーク”に関して,
本件補正発明においては,「ローカルメモリ読み取り速度よりも遅いデータ転送速度の通信ネットワーク」であるのに対して,
引用発明においては,「データ転送速度」に関して特に限定がない点。

[相違点2]
“同時に実行されるアプリケーションプログラム”に関して,
本件補正発明においては,「少なくとも1つのアプリケーションプログラム」と,該「アプリケーションプログラム」が複数存在する態様を含んでいるが,
引用発明においては,「並列処理されるプログラム」が複数存在するかは,明確でない点。

[相違点3]
本件補正発明においては,「コンピュータの各々が,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記コンピュータの各々が,他のいずれかのコンピュータの前記ローカルメモリも読み取ることができ」ないものであるのに対して,
引用発明においては,「ネットワーク」に接続された「コンピュータ」が有する「ローカルメモリ」に関しては,特に言及されていない点。

[相違点4]
本件補正発明においては,“各アプリケーションプログラムに割り当てられたローカルメモリ容量が同一であり,前記各アプリケーションプログラムが利用可能な総メモリ容量が,前記割り当てられたメモリ容量であ”るのに対して,
引用発明においては,「並列処理されるプログラム」に割り当てられる,「メモリ容量」に関する言及がない点。

[相違点5]
“複数のオブジェクトが作成され”る点に関して,
本件補正発明においては,「各部分において,同一な複数のオブジェクトが前記対応するコンピュータに各々作成され,各々が同一の名前を有し」ているのに対して,
引用発明においては,「オブジェクト」が,「同一」であり,「ネットワーク」に接続された「コンピュータ」のそれぞれで作成されるかについては,特に言及されていない点。

[相違点6]
“前記オブジェクトの全ては,オブジェクトを参照する必要がない場合に一括削除される”点に関して,
本件補正発明においては,「前記オブジェクト」が,「同一のオブジェクト」であり,「複数のコンピュータの各コンピュータがその対応するオブジェクトを参照する必要がない場合に一括削除される」ものであるのに対して,
引用発明においては,「オブジェクト」が,「同一」であるか,該「オブジェクト」が不要になったのは“何”,或いは,“誰”かについて,特に言及されていない点。

(4)相違点に対する当審の判断
ア.[相違点1]について
ネットワークの速度と,メモリの読み取り速度に関しては,例えば,本願の第1国出願前に既に公知である,特開平10-084391号公報(1998年3月31日公開,以下,これを「周知文献1」という)に,

F.「【0049】本実施形態のデータ転送装置のネットワーク接続処理部110は,LANから送られたデータやLANに送るデータを格納するDRAMまたはSRAM等のメモリであるバッファメモリ111と,ネットワーク接続処理部110の動作を制御するCPU112と,ネットワーク接続処理部110とLANとを接続するLANカード113とを備えており,例えば,10Mbpsや100Mbpsの転送速度を持つ高速なLANと接続している。」

と記載され,また,同じく,本願の第1国出願前に既に公知である,特開2003-337744号公報(2003年11月28日公開,以下,これを「周知文献2」という)に,従来技術として,

G.「【0006】この例のシステムでは,PCIバス90はPCI規格2.2に準ずる32bit×33MHzの汎用バスで,最大データ転送帯域は133Mバイト/秒である。粒子データ記憶装置94は汎用のSDRAMで構成されており,メモリバス99のバス幅は32ビット,クロック周波数は133MHzで,最大データ転送帯域は533Mバイト/秒である。ローカルバス100はバス幅40ビット,クロック周波数66MHzで,最大データ転送帯域は333Mバイト/秒である。」

と記載されているように,本願の第1国出願前に,通常,「ネットワーク」の速度が,「メモリ」の読み出し速度より遅いことは,当業者に周知の技術事項であり,引用発明においても,特別の構成を採用するとの断りがない以上,システムの構成において,「ローカルメモリ読み取り速度よりも遅いデータ転送速度の通信ネットワークによって相互接続され」るよう構成することは,当業者が適宜なし得る事項である。
よって,相違点1は,格別のものではない。

イ.[相違点2]について
引用発明においては,1つのプログラムについての例示がなされているが,他のプログラムを持たせるように構成し得ることは,当業者が適宜なし得る事項である。
よって,相違点2は,格別のものではない。

ウ.[相違点3],及び,[相違点4]について
原審が,平成22年9月14日付けの拒絶理由で引用した,本願の第1国出願前に既に公知である,
「Henri E. Bal et al., “Orca: A Language For Parallel Programming of Distributed Systems”, IEEE Transactions on Software Engineering, March 1992, Vol.18, Iss.3, pp.190-205」(以下,これを「引用刊行物2」という)に,

H.「Replication of data is used in several fault-tolerant systems (e.g., ISIS [25]) to increase the availability of data in the presence of processor failures. Orca, in contrast, is not intended for fault-tolerant applications. In our implementation replication is used to decrease the access costs to shared data.
Briefly stated, each processor keeps a local copy of each shared data-object. This copy can be accessed by all processes running on that processor (see Fig. 7). Operations that do not change the object (called read operations) use this copy directly, without any messages being sent.」(198頁左欄16行?25行)
(データの複製は,プロセッサの障害の存在において,データの可用性を増すために,いくつかのフォールト-トレラント・システムで用いられている(例えば,ISIS[25])。対照的に,オルカは,フォールト-トレラント・アプリケーションを対象としていない。我々の実装においては,複製は,共有データのアクセス・コストを削減するために用いられる。手短に言うと,それぞれのプロセッサが,それぞれの共有データ-オブジェクトのローカル・コピーを保持することである。このコピーは,そのプロセッサ上で走っている全てのプロセスによってアクセスされ得る(図7参照)。オブジェクトの変化のない処理(読み出し処理が呼ばれた)は,何らメッセージが送られることなく,直接,このコピーを使用する。<当審にて訳出>)

と記載され,更に,原審が,平成23年1月18日付けの拒絶査定において,周知技術文献として例示した,本願の第1国出願前に既に公知である,「齊籐忠夫,外3名,「FIFO付きブロードキャストメモリを用いた共有メモリの実現とその評価」,電子情報通信学会論文誌,社団法人電子情報通信学会,1992年12月25日,第J75-D-I巻,第12号,pp.1125-1131」(以下,これを「周知文献3」という)に,従来技術として,

I.「ブロードキャストメモリは,各プロセッサにメモリ内容のコピーをもたせ,読出しは各自のメモリにおいて行い,書込みを行うときにはその内容をブロードキャストしてすべてのメモリに同時に書き込むという方式である。 この方式ではメモリからの読出しを独立かつ同時に行うことができるため,メモリへのアクセス競合を低減させることができる。また各メモリをプロセッサから物理的に近い位置に配置することができるため,アクセス時間そのものを小さくする効果もあると考えられる。」(1125頁左欄13行?右欄8行)

と記載されてもいるように,ローカルのプロセッサ,或いは,ローカルのコンピュータ上で処理されるプログラムが,該プロセッサ,或いは,コンピュータのローカルメモリが有するデータのみにアクセスして処理を実行するよう構成することは,本願の第1国出願前に既に周知の技術事項であり,また,ローカルのメモリにのみアクセスするよう構成する点も,原審が,平成23年1月18日付けの拒絶査定において,周知技術文献として例示した,本願の第1国出願前に既に公知である,特開平02-132543号公報(1990年5月22日公開,以下,これを「周知文献4」という)に,

J.「各リード領域は対応するデュアルポートメモリに接続された中央処理回路ではリードのみができる領域である」(2頁右下欄16行?18行)

と記載されているように,当業者が適宜採用し得る構成である。
そして,アプリケーションにデータ領域が割り当てられているとき,前記アプリケーションが,ネットワークに接続されたコンピュータで実行される場合に,前記コンピュータで使用されるデータ領域は,前記アプリケーションに割り当てられたデータ領域のコピーであるから,前記アプリケーションから見たとき,前記アプリケーションが処理に使用可能な,データ領域は,前記コンピュータに割り当てられたコピーを加算したものではなく,予め割り当てられたデータ領域の範囲を超えるものでないことは明らかである。
よって,引用発明においても,ネットワークに接続されたコンピュータにおいて処理を実行する際に,前記コンピュータのメモリのみからデータをリードして処理を実行するよう構成し,その際,プログラムに割り当てられたデータ領域が,全体として,前記データ領域と同一であるようにすることは,引用発明,及び,上記引用の周知技術から,当業者が容易になし得るものである。
よって,相違点3,及び,相違点4は,格別のものではない。

エ.[相違点5],及び,[相違点6]について
上記Hで引用した引用刊行物2の記載中に,
「each processor keeps a local copy of each shared data-object.(それぞれのプロセッサが,それぞれの共有データ-オブジェクトのローカル・コピーを保持することである)」とあり,この記載から明らかなように,
“複数のプロセッサ,或いは,コンピュータが,同一のオブジェクトを保持する”よう構成することは,当業者にとって周知の技術事項である。
そして,複数の「ローカル・コピーを保持する」ことは,該「ローカル・コピー」,即ち,“同一のオブジェクト”を複数個生成することになる。
したがって,引用発明においても,
“ネットワークに接続されたコンピュータのそれぞれ毎に,同一のオブジェクトのコピーを生成し,これらのコピーが不要になった場合,即ち,参照する必要がなくなった場合に,一括して削除する”
よう構成することは,当業者が適宜なし得る事項である。
よって,相違点5,及び,相違点6は,格別のものではない。

上記で検討したごとく,相違点1?6はいずれも格別のものではなく,そして,本件補正発明の構成によってもたらされる効果も,当業者であれば当然に予測可能なものに過ぎず格別なものとは認められない。

よって,本件補正発明は,引用発明,及び,引用刊行物2に記載の発明,並びに,当該技術分野における周知技術に基づいて当業者が容易に発明をすることができたものであるので,特許法第29条第2項の規定により特許出願の際特許を受けることができない。

3.補正却下むすび
したがって,本件手続補正は,平成18年法律第55号改正附則第3条第1項によりなお従前の例によるとされる同法による改正前の特許法第17条の2第5項において準用する同法第126条第5項の規定に違反するので、同法第159条第1項において読み替えて準用する同法第53条第1項の規定により却下すべきものである。

よって,補正却下の決定の結論のとおり決定する。

第3.本願発明について
平成23年5月31日付けの手続補正は,上記のとおり却下されたので,本願の請求項1に係る発明(以下,これを「本願発明」という)は,平成22年12月21日付けの手続補正により補正された,上記「第2.平成23年5月31日付けの手続補正の却下の決定」の,「1.補正の内容」において,補正前の請求項1として引用した,次に記載のとおりのものである。

「単一のコンピュータでのみ動作するように各々記述されているが,通信ネットワークによって相互接続された複数のコンピュータ上で同時に実行される少なくとも1つのアプリケーションプログラムを有する多重コンピュータシステムであって,
前記アプリケーションプログラムの異なる部分が前記コンピュータのうちの異なるコンピュータ上でほぼ同時に実行され,前記各コンピュータが,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記コンピュータの各々が,他のいずれのコンピュータの前記ローカルメモリも読み取ることができず,前記各部分において,同一な複数のオブジェクトが前記対応するコンピュータに各々作成され,各々が同一の名前を有し,前記同一のオブジェクトの全ては,前記複数のコンピュータの各コンピュータがその対応するオブジェクトを参照する必要がない場合に一括削除されることを特徴とする多重コンピュータシステム。」

第4.引用刊行物に記載の発明
一方,原審が,平成22年9月14日付けの拒絶理由に引用した,本願の第1国出願前に既に公知である,特開2002-116917号公報(上記「第2.平成23年5月31日付けの手続補正の却下の決定」の,「2.補正の適否」における「(2)引用刊行物に記載の発明」において「引用刊行物1」としたものに同じ)には,「第2.平成23年5月31日付けの手続補正の却下の決定」の,「2.補正の適否」における「(2)引用刊行物に記載の発明」において指摘したとおりの,次の発明が記載されているものと認める。

通常はスタンドアローンで実行されるよう記述されている,ネットワークで接続されたコンピュータにおいて並列処理されるプログラムを有する,前記ネットワークで接続されたコンピュータによって構成されるシステムにおいて,
前記プログラムが,ネットワークに接続されたコンピュータ上で並列処理され,
並列処理の実行時に,必要なオブジェクトが生成され,不要になれば生成されたオブジェクトは消滅する,システム。

第5.本願発明と引用発明との対比
本願発明は,上記「第2.平成23年5月31日付けの手続補正の却下の決定」において検討した,本件補正発明から,本件補正発明の発明特定事項である「通信ネットワーク」に対する限定事項である,
「ローカルメモリ読み取り速度より遅いデータ転送速度の」という限定事項と,
同じく発明特定事項である「アプリケーションプログラム」に対する限定事項である,
「各前記アプリケーションプログラムの実行が前記複数のコンピュータ間で共有され」という限定事項と,
同じく発明特定事項である「メモリ容量」に対する限定事項である,
「前記又は各前記アプリケーションプログラムに割り当てられたローカルメモリ容量が同一であり,前記又は各前記アプリケーションプログラムが利用可能な総メモリ容量が,前記割り当てられたメモリ容量のみであり」という限定事項を削除したものであるから,
本願発明と,引用発明との一致点,及び,相違点は,次のとおりである。

[一致点]
単一のコンピュータでのみ動作するように記述されているが,通信ネットワークによって相互接続された複数のコンピュータ上で同時に実行されるアプリケーションプログラムを有する多重コンピュータシステムであって,
アプリケーションプログラムの実行が複数のコンピュータ間で共有されて,前記アプリケーションプログラムの異なる部分が前記コンピュータのうちの異なるコンピュータ上で同時に実行され,
複数のオブジェクトが作成され,前記オブジェクトの全ては,オブジェクトを参照する必要がない場合に一括削除されることを特徴とする多重コンピュータシステム。

[相違点a]
“同時に実行されるアプリケーションプログラム”に関して,
本件補正発明においては,「少なくとも1つのアプリケーションプログラム」と,該「アプリケーションプログラム」が複数存在する態様を含んでいるが,
引用発明においては,「並列処理されるプログラム」が複数存在するかは,明確でない点。

[相違点b]
本件補正発明においては,「コンピュータの各々が,読み取りをするコンピュータのローカルメモリのみを読み取ることができ,全ての読み取り要求が,前記要求を受けたコンピュータの前記ローカルメモリを読み取ることによって満足され,前記コンピュータの各々が,他のいずれかのコンピュータの前記ローカルメモリも読み取ることができ」ないものであるのに対して,
引用発明においては,「ネットワーク」に接続された「コンピュータ」が有する「ローカルメモリ」に関しては,特に言及されていない点。

[相違点c]
“複数のオブジェクトが作成され”る点に関して,
本件補正発明においては,「各部分において,同一な複数のオブジェクトが前記対応するコンピュータに各々作成され,各々が同一の名前を有し」ているのに対して,
引用発明においては,「オブジェクト」が,「同一」であり,「ネットワーク」に接続された「コンピュータ」のそれぞれで作成されるかについては,特に言及されていない点。

[相違点d]
“前記オブジェクトの全ては,オブジェクトを参照する必要がない場合に一括削除される”点に関して,
本件補正発明においては,「前記オブジェクト」が,「同一のオブジェクト」であり,「複数のコンピュータの各コンピュータがその対応するオブジェクトを参照する必要がない場合に一括削除される」ものであるのに対して,
引用発明においては,「オブジェクト」が,「同一」であるか,該「オブジェクト」が不要になったのは“何”,或いは,“誰”かについて,特に言及されていない点。

第6.当審の判断
本願発明と,引用発明との[相違点a]?[相違点d]は,上記「第2.平成23年5月31日付けの手続補正の却下の決定」の,「2.補正の適否」における「(4)相違点に対する当審の判断」において検討した,本件補正発明と,引用発明との[相違点2],[相違点3],[相違点5],及び,[相違点6]と同じものであるから,上記「第2.平成23年5月31日付けの手続補正の却下の決定」の,「2.補正の適否」における「(4)相違点に対する当審の判断」において検討したとおり,
相違点a?相違点dは,格別のものではない。

上記で検討したごとく,相違点a?相違点dはいずれも格別のものではなく,そして,本願発明の構成によってもたらされる効果も,当業者であれば当然に予測可能なものに過ぎず格別なものとは認められない。

第7.むすび
したがって,本願発明は,本願の特許出願前に日本国内又は外国において頒布された刊行物に記載された発明又は電気通信回線を通じて公衆に利用可能となった発明に基づいて当業者が容易に発明をすることができたものであるので,特許法第29条第2項の規定により特許を受けることができない。

よって,結論のとおり審決する。
 
審理終結日 2013-03-15 
結審通知日 2013-03-18 
審決日 2013-04-05 
出願番号 特願2007-508676(P2007-508676)
審決分類 P 1 8・ 121- Z (G06F)
P 1 8・ 575- Z (G06F)
最終処分 不成立  
前審関与審査官 北元 健太  
特許庁審判長 山崎 達也
特許庁審判官 田中 秀人
石井 茂和
発明の名称 オブジェクトファイナライズによる改良型コンピュータアーキテクチャ  
代理人 大塚 文昭  
代理人 西島 孝喜  
代理人 熊倉 禎男  
代理人 須田 洋之  
代理人 岸 慶憲  
  • この表をプリントする

プライバシーポリシー   セキュリティーポリシー   運営会社概要   サービスに関しての問い合わせ