【事件の表示】
　特願２０１１−２２７８４９「セマフォ予約をクリアする方法および装置」拒絶査定不服審判事件〔平成２４年　４月　５日出願公開、特開２０１２−　６９１２８〕について、次のとおり審決する。
【結　論】
　本件審判の請求は、成り立たない。
【理　由】
第１　手続の経緯
　本件審判請求に係る出願は、２００６年１０月２０日を国際出願日とする特願２００８−５３６６５２の一部を２０１１年１０月１７日に新たな特許出願（パリ条約による優先権主張外国庁受理２００５年１０月２０日（以下、「優先日」という。）、米国）としたものであって、その後の手続の経緯の概略は次のとおりである。
出願審査請求（受付日）　　平成２３年１１月１６日
翻訳文提出（受付日）　　　平成２３年１１月１６日
拒絶理由通知（起案日）　　平成２５年６月２８日（同年７月２日発送）
意見、手続補正（受付日）　平成２５年１１月５日
拒絶査定（起案日）　　　　平成２５年１１月２１日
　　　　　　　　　　　　（同年１１月２６日謄本発送）
審判請求（受付日）　　　　平成２６年３月２６日
手続補正（受付日）　　　　平成２６年３月２６日
前置報告（作成日）　　　　平成２６年６月１９日
補正の却下の決定　　　　　平成２７年４月１５日（同年４月２８日発送）
拒絶理由通知（起案日）　　平成２７年４月１５日（同年４月２１日発送）
意見、手続補正（受付日）　平成２７年８月２１日
第２　本願発明
　本願の請求項１ないし１３に係る発明は、平成２７年８月２１日付け手続補正により補正された特許請求の範囲の請求項１ないし１３に記載された事項により特定されると認められるところ、本願の請求項１に係る発明（以下、「本願発明」という。）は以下のとおりのものと認められる。
　
「共有メモリへの排他的アクセスのためにセマフォ予約をクリアする方法であって、
　複数の処理構成要素によって共有されることができる共有メモリ領域および前記共有メモリ領域の排他的書き込みアクセスの使用可能性を示すセマフォメモリ領域を含むメモリを準備することと、
　メモリ制御装置が第１の処理構成要素が前記メモリにおける前記セマフォメモリ領域を読み出すことに応答して、前記共有メモリ領域への排他的アクセスを管理するためのセマフォ予約を設定することと、
　第２の処理構成要素が前記共有メモリ領域に関連付けられた前記セマフォメモリ領域へ書き込み要求を送信することと、
　前記メモリ制御装置が前記書き込み要求に応答して、前記セマフォ予約をクリアし、前記第１の処理構成要素による前記セマフォメモリ領域の内容の更新を妨げることと、
　前記メモリ制御装置が前記書き込み要求に応答して、前記メモリ制御装置内の予約状態を予約状態から非予約状態に変更することと、を含む方法。」
　
第３　引用文献
１．引用文献１
（１）本願の優先日前に既に頒布又は電気通信回線を通じて公衆に利用可能となり、当審の拒絶理由通知において引用された文献である、特開２００２−２７８９４７号公報（以下、「引用文献１」という。）には、関連する図面とともに、次の事項が記載されている。 
（当審注：下線は、参考のために当審で付与した。） 
　
Ａ．「【００１２】本発明の他の目的は、
複数のプロセッサにて主記憶を共有するマルチプロセッサシステムにおいて、
個々のプロセッサにて並行動作する複数のプロセス間での同期、排他、通信制御のための多数のロック／アンロック要求の処理を的確に実現する
【００１３】本発明の他の目的は、複数のプロセッサにて主記憶を共有するマルチプロセッサシステムにおいて、
プロセッサアーキテクチャ等に変更を加えることなく、プロセッサ間あるいはプロセス間の同期、排他、通信制御のための多数のロック／アンロック要求の処理を的確に実現する
　　
Ｂ．「【００１７】
本実施の形態のマルチプロセッサシステムは、複数のプロセッサ１０（＃１〜＃ＮのＮ個）が、通信レジスタ４０および相互結合網２０を介して主記憶３０を共有する構成となっている
…（中略）…
【００１９】図２に例示されるように、個々の通信レジスタモジュール４００は複数のレジスタから構成される通信レジスタ群５００（＃１〜＃Ｎ）を有し、通信レジスタモジュール４００の間は通信モジュール間バス７００で結合される。
信号線Ｌ８０上のロードストア要求は、通信レジスタモジュール４００内のデコーダ４３０でデコードされ、要求が主記憶３０へのアクセス要求である場合は、信号線Ｌ８０および相互結合網２０を介して主記憶３０をアクセスするよう制御され、要求が通信レジスタ４０へのアクセス要求である場合は、通信モジュール間バス７００を介して通信レジスタ群５００をアクセスするよう制御される
…（中略）…
【００２１】図３に、本実施の形態における通信レジスタ群５００の構成の一例を示す。本実施の形態の場合、通信レジスタ群５００には、ロック情報レジスタ５１０とロック状態レジスタ５２０の２種類の通信レジスタが存在する。」
　　
Ｃ．「【００２７】ロック情報レジスタ５１０とロック状態レジスタ５２０へアクセスして、実際にロック／アンロック処理を行うには、従来アーキテクチャでロックフラグが主記憶３０上にある場合のロック／アンロック処理時に使用する命令を使用する。本実施例では、一例として、ＰｏｗｅｒＰＣアーキテクチャにおけるロックフラグ操作用命令を用いる。
…（中略）…
【００２９】
ＰｏｗｅｒＰＣアーキテクチャにおいて、主記憶上にロックフラグが存在する場合のロック／アンロック処理は図５に示す命令列によって実現する
【００３０】図５の各命令の意味を以下に示す。尚、ｒ３はロックフラグの存在する主記憶上のアドレスが入っているレジスタ、ｒ５は読み出したロックフラグ値を格納するレジスタ、ｒ４は新たに設定するロック値が入っているレジスタである。
【００３１】
ｌｗａｒｘ　ｒ５，０，ｒ３：ロックフラグの値を読み出し、レジスタｒ５に格納する。同時にリザベーション（後述）を確立する
【００３２】ｃｍｐ  ｒ５，０：ｒ５の値をゼロと比較する。
【００３３】ｂｃ  ｌｏｏｐ：ｒ５の値がゼロでないならば、ｌｏｏｐへ戻る。
【００３４】ｓｔｗｃｘ．ｒ４，０，ｒ３：リザベーションが残っていたらロックフラグにｒ４の値を書き込みに成功する。リザベーションが破棄されていたら、ロックフラグ書き込みに失敗する。　
【００３５】ｂｃ  ｌｏｏｐ：ロックフラグ書き込みが失敗していたらｌｏｏｐへ戻る。成功していたら、次行以降のクリティカル・リージョン内の命令列を実行する。
【００３６】ｓｙｎｃ：クリティカル・リージョン内の命令実行がすべて完了したことを保証する。
【００３７】ｓｔｗ  ０，０（ｒ３）：ロックフラグにゼロを書き込む。
【００３８】前半５行に渡る命令列がロック処理、最後の１行がアンロック処理、それ以外はクリティカル・リージョンを示す。
【００３９】
ｌｗａｒｘ命令、ｓｔｗｃｘ．命令はそれぞれロード・アンド・リザーブ命令、ストア・コンディショナル命令と呼ばれ、ＰｏｗｅｒＰＣアーキテクチャにおけるアトミックな処理を実現する際に、常に対となって使用される命令である
【００４０】
ロード・アンド・リザーブ命令は、指定アドレスに対して、内容をリードする動作を行うとともに、リザベーションと呼ばれる保護領域を確立する
ストア・コンディショナル命令は、先行するロード・アンド・リザーブ命令によって確立されたリザベーションが破棄されていなかったら、指定アドレスへのライト動作を実行し、プロセッサにストア動作の「成功」を報告する
もし、リザベーションが存在する時に、他のプロセッサがストア命令を発行して、該アドレスの内容を更新すると、リザベーションは破棄される。この状態で、最初にロード・アンド・リザーブ命令を発行したプロセッサが、ストア・コンディショナル命令を発行すると、ストア動作は行われず、「失敗」したことを示すリプライをプロセッサに報告する
【００４１】
ロック処理を実現する場合、プロセッサはまず主記憶上のロックフラグに対してロード・アンド・リザーブ命令を発行する。読み出されたフラグ値がゼロでない場合は、他のプロセッサがロック中なので、自プロセッサはｌｏｏｐに戻り、フラグ値がゼロになるまで、ロード・アンド・リザーブ命令を繰り返す
自プロセッサよりも他のプロセッサのロックフラグ設定が早いと、リザベーションが破棄されるので、フラグ値設定に失敗し、再びｌｏｏｐに戻ってロック値がゼロになるのを待つ
…（中略）…
【００５１】このように、
本実施の形態では、主記憶３０をアクセスする場合と通信レジスタ４０をアクセスする場合とで、既存のロックフラグを操作する命令の動作を切り替えている。切り替え制御を通信レジスタモジュール４００内で行えば、従来のプロセッサアーキテクチャを変更することなく、通信レジスタ４０を用いた高速ロック処理を実現することができる
　
（２）引用文献１に記載された事項について検討する。 
（Ａ）前記Ｂ．の「本実施の形態のマルチプロセッサシステムは、複数のプロセッサ１０（＃１〜＃ＮのＮ個）が、通信レジスタ４０および相互結合網２０を介して主記憶３０を共有する構成となっている…（中略）…信号線Ｌ８０上のロードストア要求は、通信レジスタモジュール４００内のデコーダ４３０でデコードされ、要求が主記憶３０へのアクセス要求である場合は、信号線Ｌ８０および相互結合網２０を介して主記憶３０をアクセスするよう制御され、要求が通信レジスタ４０へのアクセス要求である場合は、通信モジュール間バス７００を介して通信レジスタ群５００をアクセスするよう制御される」との記載、前記Ｃ．の「本実施の形態では、主記憶３０をアクセスする場合と通信レジスタ４０をアクセスする場合とで、既存のロックフラグを操作する命令の動作を切り替えている。切り替え制御を通信レジスタモジュール４００内で行えば、従来のプロセッサアーキテクチャを変更することなく、通信レジスタ４０を用いた高速ロック処理を実現することができる」との記載から、「複数のプロセッサにて通信レジスタおよび相互接続網を介して主記憶を共有するマルチプロセッサシステムにおいて、ロードストア要求は、デコーダでデコードされ、要求が主記憶へのアクセス要求である場合は、主記憶をアクセスするよう制御され、要求が通信レジスタへのアクセス要求である場合は、通信レジスタ群をアクセスするよう制御され、プロセッサアーキテクチャ等に変更を加えることなく、プロセッサ間あるいはプロセス間の同期、排他、通信制御のための多数のロック／アンロック要求の処理を実現する方法」をよみとることができる。
　
（Ｂ）前記Ａ．の「複数のプロセッサにて主記憶を共有する」との記載から「主記憶に共有領域」があることは明らかであり、前記Ｃ．の「ＰｏｗｅｒＰＣアーキテクチャにおいて、主記憶上にロックフラグが存在する場合のロック／アンロック処理は図５に示す命令列によって実現する…（中略）…ロック処理を実現する場合、プロセッサはまず主記憶上のロックフラグに対してロード・アンド・リザーブ命令を発行する。読み出されたフラグ値がゼロでない場合は、他のプロセッサがロック中なので、自プロセッサはｌｏｏｐに戻り、フラグ値がゼロになるまで、ロード・アンド・リザーブ命令を繰り返す」と記載されていることから、ロックフラグは、自プロセッサと他のプロセッサとが共有することができる共有領域に存在することをよみとることができる。よって「ＰｏｗｅｒＰＣアーキテクチャにおける複数のプロセッサによって共有されることができる共有メモリ領域および前記共有メモリ領域のロックフラグが存在することができるロックフラグ領域を含む主記憶を備える」ことをよみとることができる。
　
（Ｃ）前記（Ｂ）で言及した「複数のプロセッサ」としてＰｏｗｅｒＰＣアーキテクチャにおける自プロセッサと他のプロセッサが前記Ａ．の「マルチプロセッサシステム」の構成として含むことができることは明らかであり、前記Ｂ．の「信号線Ｌ８０上のロードストア要求は、通信レジスタモジュール４００内のデコーダ４３０でデコードされ、要求が主記憶３０へのアクセス要求である場合は、信号線Ｌ８０および相互結合網２０を介して主記憶３０をアクセスするよう制御され、要求が通信レジスタ４０へのアクセス要求である場合は、通信モジュール間バス７００を介して通信レジスタ群５００をアクセスするよう制御される」との記載から「ロードストア要求がデコーダでデコードされ主記憶へのアクセス要求である場合は、相互結合網を介して主記憶をアクセスするよう制御され」ることをよみとることができ、前記Ｃ．の「ＰｏｗｅｒＰＣアーキテクチャにおいて、主記憶上にロックフラグが存在する場合のロック／アンロック処理は図５に示す命令列によって実現する…（中略）…ｌｗａｒｘ　ｒ５，０，ｒ３：ロックフラグの値を読み出し、レジスタｒ５に格納する。同時にリザベーション（後述）を確立する…（中略）…ロード・アンド・リザーブ命令は、指定アドレスに対して内容をリードする動作を行うとともに、リザベーションと呼ばれる保護領域を確立する…（中略）…ロック処理を実現する場合、プロセッサはまず主記憶上のロックフラグに対してロード・アンド・リザーブ命令を発行する。読み出されたフラグ値がゼロでない場合は、他のプロセッサがロック中なので、自プロセッサはｌｏｏｐに戻り、フラグ値がゼロになるまで、ロード・アンド・リザーブ命令を繰り返す」との記載から、「自プロセッサが主記憶上のロックフラグに対してロード・アンド・リザーブ命令を発行し、ロード・アンド・リザーブ命令により、指定アドレスに対して内容をリードする動作を行うとともに、リザベーションと呼ばれる保護領域を確立する」ことをよみとることができる。これらを合わせると「ロードストア要求がデコーダでデコードされ主記憶へのアクセス要求である場合は、相互結合網を介して主記憶をアクセスするよう制御され、自プロセッサが主記憶上のロックフラグに対してロード・アンド・リザーブ命令を発行し、ロード・アンド・リザーブ命令により指定アドレスに対して内容をリードする動作を行うとともに、リザベーションと呼ばれる保護領域を確立」することをよみとることができる。
　
（Ｄ）前記（Ｃ）で言及したＰｏｗｅｒＰＣアーキテクチャにおける自プロセッサと同様にＰｏｗｅｒＰＣアーキテクチャにおける他のプロセッサもまた、ロード・アンド・リザーブ命令、ストア・コンディショナル命令を発行して主記憶の共有ロックフラグのロード・アンド・リザーブおよびストア・コンディショナルを試みることができることは自明である。そして、ストア・コンディショナル命令の発行に関して、前記Ｃ．の「ストア・コンディショナル命令は、先行するロード・アンド・リザーブ命令によって確立されたリザベーションが破棄されていなかったら、指定アドレスへのライト動作を実行し、プロセッサにストア動作の「成功」を報告する。もし、リザベーションが存在する時に、他のプロセッサがストア命令を発行して、該アドレスの内容を更新すると、リザベーションは破棄される。この状態で、最初にロード・アンド・リザーブ命令を発行したプロセッサが、ストア・コンディショナル命令を発行すると、ストア動作は行われず、「失敗」したことを示すリプライをプロセッサに報告する…（中略）…自プロセッサよりも他のプロセッサのロックフラグ設定が早いと、リザベーションが破棄されるので、フラグ値設定に失敗し、再びｌｏｏｐに戻ってロック値がゼロになるのを待つ」との記載から「他のプロセッサが当該アドレスの内容を更新するストア命令を発行」すること、および、「自プロセッサのリザベーションが存在する時に、他のプロセッサがストア命令を発行して、該アドレスの内容を更新すると、リザベーションは破棄され、この破棄された状態で、最初にロード・アンド・リザーブ命令を発行した自プロセッサが、ストア・コンディショナル命令を発行すると、ストア動作は行われず、「失敗」したことを示すリプライが自プロセッサに報告され、再びｌｏｏｐに戻ってロック値がゼロになるのを待」つことをよみとることができる。
　
（Ｅ）前記（Ｄ）で言及した「もし、リザベーションが存在する時に、他のプロセッサがストア命令を発行して、該アドレスの内容を更新すると、リザベーションは破棄される。この状態で、最初にロード・アンド・リザーブ命令を発行したプロセッサが、ストア・コンディショナル命令を発行すると、ストア動作は行われず、「失敗」したことを示すリプライをプロセッサに報告する」との記載において、前記「リザベーションが存在する（時の）状態」と「リザベーションが破棄された（時の）状態」をよみとることができるとともに、前記「リザベーションが存在する状態」に関連し、前記Ｃ．の「ロード・アンド・リザーブ命令は、指定アドレスに対して内容をリードする動作を行うとともに、リザベーションと呼ばれる保護領域を確立する…（中略）…先行するロード・アンド・リザーブ命令によって確立されたリザベーションが破棄」される旨の記載から、前記「リザベーションが存在する状態」として「先行するロード・アンド・リザーブ命令によって確立されたリザベーションと呼ばれる保護領域を確立した状態」のものが含まれると解され、前記「もし、リザベーションが存在する時に、…（中略）…リザベーションは破棄される。この状態で、最初にロード・アンド・リザーブ命令を発行」することとを合わせると、「リザベーションが存在する時に、他のプロセッサがストア命令を発行して、該アドレスの内容を更新すると、リザベーションは破棄され、先行するロード・アンド・リザーブ命令によって確立されたリザベーションと呼ばれる保護領域を確立した状態はリザベーションが破棄された状態とされる」ことをよみとることができる。
　
　前記（Ａ）〜（Ｅ）をふまえると、引用文献１には、前記Ａ．に記載された「複数のプロセッサにて主記憶を共有するマルチプロセッサシステムにおいて、…（中略）…プロセッサアーキテクチャ等に変更を加えることなく、プロセッサ間あるいはプロセス間の同期、排他、通信制御のための多数のロック／アンロック要求の処理を的確に実現する」こと等を目的とした次の発明（以下、「引用発明」という。）が記載されていると認められる。 
  
「複数のプロセッサにて通信レジスタおよび相互接続網を介して主記憶を共有するマルチプロセッサシステムにおいて、ロードストア要求は、デコーダでデコードされ、要求が主記憶へのアクセス要求である場合は、主記憶をアクセスするよう制御され、要求が通信レジスタへのアクセス要求である場合は、通信レジスタ群をアクセスするよう制御され、プロセッサアーキテクチャ等に変更を加えることなく、プロセッサ間あるいはプロセス間の同期、排他、通信制御のための多数のロック／アンロック要求の処理を実現する方法であって、
　ＰｏｗｅｒＰＣアーキテクチャにおける複数のプロセッサによって共有されることができる共有メモリ領域および前記共有メモリ領域のロックフラグが存在することができるロックフラグ領域を含む主記憶を備え、
　前記ロードストア要求がデコーダでデコードされ主記憶へのアクセス要求である場合は、相互結合網を介して主記憶をアクセスするよう制御され、自プロセッサが主記憶上のロックフラグに対してロード・アンド・リザーブ命令を発行し、前記ロード・アンド・リザーブ命令により、指定アドレスに対して内容をリードする動作を行うとともに、リザベーションと呼ばれる保護領域を確立し、
　他のプロセッサが当該アドレスの内容を更新するストア命令を発行し、
　自プロセッサのリザベーションが存在する時に、他のプロセッサがストア命令を発行して、該アドレスの内容を更新すると、前記リザベーションは破棄され、この破棄された状態で、最初にロード・アンド・リザーブ命令を発行した自プロセッサが、ストア・コンディショナル命令を発行すると、ストア動作は行われず、「失敗」したことを示すリプライが自プロセッサに報告され、再びｌｏｏｐに戻ってロック値がゼロになるのを待ち、
　前記リザベーションが存在する時に、他のプロセッサがストア命令を発行して、該アドレスの内容を更新すると、リザベーションは破棄され、先行するロード・アンド・リザーブ命令によって確立されたリザベーションと呼ばれる保護領域を確立した状態はリザベーションが破棄された状態とされること、を含む方法。」 
　
２．参考文献１
（１）本願の優先日前に既に頒布又は電気通信回線を通じて公衆に利用可能となった文献である、特開平２−２８８９３９号公報（以下、「参考文献１」という。）には、関連する図面とともに、次の事項が記載されている。 
　
Ｄ．[課題を解決するための手段］
　この発明に係るメモリ制御装置は、ＣＰＵとメモリ素子との間に、ＣＰＵからのメモリ使用要求及びセマフォ識別信号に基づいてメモリ素子に対するアクセス信号を出力するメモリアクセス制御部と、メモリ使用要求がセマフォに係る場合であってメモリ素子からの読出情報がセマフォを張れると判定された場合に、メモリアクセス制御部に対してセマフォ書込信号を出力するセマフォ判定部と、メモリ素子及びセマフォ判定部とＣＰＵとの間でデータの入出力を行なうデータ入出力部と、からなるメモリ制御部を設けたものである。
［作用］
　この発明においては、ＣＰＵからのメモリ読出要求がセマフォに係る場合に、メモリ素子からの読出情報か或る特定の内容例えば“００”ならば、別の或る内容例えば“ＦＦ”をメモリ素子に書込んだ後、最初の内容“００”を要求元のＣＰＵに返送し、１回のメモリ続出要求のみでセマフォ制御を行なうと共に、メモリ素子内の共通領域を任意に分割してセマフォを張る。」（２頁左下欄１４行〜右下欄１４行）
　
（２）参考文献１に記載された事項について検討する。
　前記Ｄ．には、セマフォに係り、メモリ制御装置がメモリ使用要求に応じて、前記メモリ制御装置内の予約状態（例えば００）を別の予約状態（例えばＦＦ）に変更することに相当する技術が示されている。
　
３．参考文献２
（１）本願の優先日前に既に頒布又は電気通信回線を通じて公衆に利用可能となった文献である、特開２００２−２０２９６０号公報（以下、「参考文献２」という。）には、関連する図面とともに、次の事項が記載されている。
　
Ｅ．「【００１５】
【発明の実施の形態】図１は第１のプロセッサ４と第２のプロセッサ６とを含む
データ処理システム２
共有されている主メモリ１８
バスアービタ
【００１６】主メモリ１８はたとえばデータベース・レコードのようなデータ要素を記憶する。この
データ要素には、第１のプロセッサ４と第２のプロセッサ６のうち一方による排他的アクセスを許可することが要求される
セマフォ値は主メモリ１８内に記憶され
メモリエリアのようなデータ要素へのアクセスを制御する
モニタ回路２２が主メモリ１８にローカルに付随していて、どのセマフォ値がプロセッサ４または６により検索されたかを識別するデータを記憶する。セマフォ識別データは、
プロセッサ番号のようなプロセッサ識別データと共に、主メモリ内でセマフォの物理的アドレスの形式を取る
主メモリ１８内のセマフォ値に対して検索操作が行われると、そのセマフォ値の物理的アドレスがそれぞれのローカルセマフォ識別データ記憶装置２４，２６の中に記憶される
…（中略）…
【００１８】図２は図１に示したシステムの動作の概要を示す流れ図である。ステップ２６で、
プロセッサ４，６のうちの一方がＬＤＲＥＸ命令を実行して、主メモリ１８内のメモリ位置（レジスタＲｍの中で指定される）からセマフォ値をロードする
…（中略）…
【００２０】ステップ３０で、
Ｒｍレジスタ値により指定されたアドレスに対応するセマフォ値が、ＬＤＲＥＸ命令の中に明記されたレジスタＲｄに記憶される。更に、セマフォ値の物理的アドレスがＬＤＲＥＸ命令を実行するプロセッサのプロセッサ識別番号と共に主メモリのモニタ回路２２に記憶される
…（中略）…
【００２２】ステップ３４で、
主メモリ１８からプロセッサ４，６のうちの一方に返されたセマフォ値が検査されて、検索されたセマフォ値が関連するデータ要素への排他的アクセスが許可されていることを示すか否かを判断する
【００２３】もしもステップ３６で
排他的アクセスが可能であることを返されたセマフォ値が示したならば、
ＳＴＲＥＸ命令が実行され
排他的アクセスが許可されているということを示す新しいセマフォ値を主メモリ１８に記憶しようとする
【００２４】
もしも書き込みが完了してなかったならば、ステップ２６におけるセマフォ値の読みとりとステップ３８における対応するＳＴＲＥＸ命令の実行の試行との間の調整時間に、別のプロセッサまたはプロセスが同じデータ要素に対して排他的アクセスの許可を確立したことを意味する
…（中略）…
【００２６】ステップ４２は
ローカルセマフォ識別データ記憶装置２４，２６と主メモリモニタ回路２２の中で、書き込み中のセマフォ値の物理的アドレスがまだ記憶されている（すなわちクリアされてないかまたは重ね書きされていない）ことを調べる。また、主メモリモニタ回路２２の場合、整合するプロセッサ番号が物理的メモリアドレスと関連していることを調べる。最初にローカル記憶装置２４，２６について調べる。もしもこれがクリアされていれば、失敗の結果が返される。そうでなければ、主メモリモニタ回路２２が調べられて、そこから結果が返される
もしもこれらの条件が双方とも満たされなければ、処理はステップ４４に進み、ここで失敗の結果値がＳＴＲＥＸ命令から返され、書き込みは行われなかったとして、処理は終わる
【００２７】もしもステップ４２の検査により、
プロセッサ４，６と主メモリモニタ回路２２の両方にローカルに記憶されているセマフォ識別データがまだ整合している（すなわち、別のプロセスに与えられた介在する排他的アクセス許可、介在するクリア命令、または正常な排他的アクセス許可プロセスとの何らかの他の干渉が全くなかった）ことが示されていれば、
主メモリ内のセマフォ値が更新され、ＳＴＲＥＸ命令の発信者に排他的アクセスの許可が与えられて許可の結果値が返されたことを示す
　
（２）参考文献２に記載された事項について検討する。
ａ．前記Ｅ．の「データ処理システム…（中略）…共有されている主メモリ１８…（中略）…バスアービタ…（中略）…データ要素には、第１のプロセッサ４と第２のプロセッサ６のうち一方による排他的アクセスを許可することが要求される。セマフォ値は主メモリ１８内に記憶され…（中略）…メモリエリアのようなデータ要素へのアクセスを制御する」との記載から「セマフォ値は主メモリ内に記憶されており、共有されている主メモリのデータ要素は、第１のプロセッサと第２のプロセッサのうち一方による排他的アクセスを許可することが要求されるデータ処理システム」をよみとることができる。
　
ｂ．前記Ｅ．の「メモリエリアのようなデータ要素へのアクセスを制御する…（中略）…モニタ回路２２が主メモリ１８にローカルに付随していて、どのセマフォ値がプロセッサ４または６により検索されたかを識別するデータを記憶する。セマフォ識別データは、…（中略）…プロセッサ番号のようなプロセッサ識別データと共に、主メモリ内でセマフォの物理的アドレスの形式を取る…（中略）…主メモリ１８内のセマフォ値に対して検索操作が行われると、そのセマフォ値の物理的アドレスがそれぞれのローカルセマフォ識別データ記憶装置２４，２６の中に記憶される…（中略）…プロセッサ４，６のうちの一方がＬＤＲＥＸ命令を実行して、主メモリ１８内のメモリ位置（レジスタＲｍの中で指定される）からセマフォ値をロードする…（中略）…Ｒｍレジスタ値により指定されたアドレスに対応するセマフォ値が、ＬＤＲＥＸ命令の中に明記されたレジスタＲｄに記憶される。更に、セマフォ値の物理的アドレスがＬＤＲＥＸ命令を実行するプロセッサのプロセッサ識別番号と共に主メモリのモニタ回路２２に記憶される…（中略）…主メモリ１８からプロセッサ４，６のうちの一方に返されたセマフォ値が検査されて、検索されたセマフォ値が関連するデータ要素への排他的アクセスが許可されていることを示すか否かを判断する…（中略）…排他的アクセスが可能であることを返されたセマフォ値が示したならば…（中略）…ＳＴＲＥＸ命令が実行され…（中略）…排他的アクセスが許可されているということを示す新しいセマフォ値を主メモリ１８に記憶しようとする…（中略）…もしも書き込みが完了してなかったならば、ステップ２６におけるセマフォ値の読みとりとステップ３８における対応するＳＴＲＥＸ命令の実行の試行との間の調整時間に、別のプロセッサまたはプロセスが同じデータ要素に対して排他的アクセスの許可を確立したことを意味する…（中略）…ローカルセマフォ識別データ記憶装置２４，２６と主メモリモニタ回路２２の中で、書き込み中のセマフォ値の物理的アドレスがまだ記憶されている（すなわちクリアされてないかまたは重ね書きされていない）ことを調べる。また、主メモリモニタ回路２２の場合、整合するプロセッサ番号が物理的メモリアドレスと関連していることを調べる。最初にローカル記憶装置２４，２６について調べる。もしもこれがクリアされていれば、失敗の結果が返される。そうでなければ、主メモリモニタ回路２２が調べられて、そこから結果が返される。もしもこれらの条件が双方とも満たされなければ、処理はステップ４４に進み、ここで失敗の結果値がＳＴＲＥＸ命令から返され、書き込みは行われなかったとして、処理は終わる…（中略）…プロセッサ４，６と主メモリモニタ回路２２の両方にローカルに記憶されているセマフォ識別データがまだ整合している（すなわち、別のプロセスに与えられた介在する排他的アクセス許可、介在するクリア命令、または正常な排他的アクセス許可プロセスとの何らかの他の干渉が全くなかった）ことが示されていれば、…（中略）…主メモリ内のセマフォ値が更新され、ＳＴＲＥＸ命令の発信者に排他的アクセスの許可が与えられて許可の結果値が返されたことを示す」との記載において、前記「モニタ回路」は、文字通りモニタする回路と解され、前記「プロセッサ識別データと共に、主メモリ内でセマフォの物理的アドレス」からなる「セマフォ識別データ」を記憶する「モニタ回路」であって、前記「メモリエリアのようなデータ要素へのアクセスを制御する」ことに関わる「モニタ回路」であるから、メモリ制御に関連する装置とみることができる。
　
ｃ．前記ａ．とｂ．をふまえると、参考文献２には「セマフォ値は主メモリ内に記憶されており、共有されている主メモリのデータ要素は、第１のプロセッサと第２のプロセッサのうち一方による排他的アクセスを許可することが要求されるデータ処理システムにおいて、メモリエリアのようなデータ要素へのアクセスを制御するモニタ回路を含むメモリ制御に関連する装置を用いる技術が示されている。
　　
 第４　対比 
　引用発明と本願発明とを対比する。　
１．引用発明の「共有メモリ領域のロックフラグ」、「リザベーション」は、本願発明の「セマフォ」、「予約」に相当する。また、引用発明の「リザベーションが破棄され」る点に関し、前記Ｃ．に「再びｌｏｏｐに戻る」旨記載されていることから、前記「リザベーション」を「破棄」することと本願発明の「リザベーション」を「クリア」することと実質的な差異はない。
　してみれば、引用発明の「リザベーションが破棄され」ることを含む「複数のプロセッサにて主記憶を共有するマルチプロセッサシステムにおいて、ロードストア要求は、デコーダでデコードされ、要求が主記憶へのアクセス要求である場合は、主記憶をアクセスするよう制御され、要求が通信レジスタへのアクセス要求である場合は、通信レジスタ群をアクセスするよう制御され、プロセッサアーキテクチャ等に変更を加えることなく、プロセッサ間あるいはプロセス間の同期、排他、通信制御のための多数のロック／アンロック要求の処理を実現する方法」と本願発明の「共有メモリへの排他的アクセスのためにセマフォ予約をクリアする方法」とに実質的な差異はない。
　
２．引用発明の「ＰｏｗｅｒＰＣアーキテクチャにおける複数のプロセッサ」は前記Ｃ．に記載のようにＰｏｗｅｒＰＣアーキテクチャにおいて、図５に示す命令列による動作を実現するものであり、本願発明の「複数の処理構成要素」に相当する。
　してみれば、引用発明の「ＰｏｗｅｒＰＣアーキテクチャにおける複数のプロセッサによって共有されることができる共有メモリ領域および前記共有メモリ領域のロックフラグが存在することができるロックフラグ領域を含む主記憶を備え」ることと、本願発明の「複数の処理構成要素によって共有されることができる共有メモリ領域および前記共有メモリ領域の排他的書き込みアクセスの使用可能性を示すセマフォメモリ領域を含むメモリを準備すること」とに実質的な差異はない。
　　
３．引用発明の前記マルチプロセッサシステムを構成することができるＰｏｗｅｒＰＣアーキテクチャにおける「自プロセッサ」は本願発明の「第１の処理構成要素」に相当する。また、引用発明の「ロード・アンド・リザーブ命令は、指定アドレスに対して内容をリードする動作を行うとともに、リザベーションと呼ばれる保護領域を確立」することに関し、前記「プロセッサ」、前記Ｂ．の「信号線Ｌ８０上のロードストア要求は、通信レジスタモジュール４００内のデコーダ４３０でデコードされ」るとの記載、前記Ｃ．の「主記憶３０をアクセスする場合と通信レジスタ４０をアクセスする場合とで、既存のロックフラグを操作する命令の動作を切り替え…（中略）…切り替え制御を通信レジスタモジュール４００内で行」うとの記載から、デコーダを含み、切り替え制御を行う通信レジスタが「相互結合網」を介して用いられることは明らかであり、これら「プロセッサ」、「通信レジスタ」及び「相互結合網」と本願発明の「メモリ制御装置」とは「装置」という上位概念で一致している。
　してみれば、引用発明の「前記ロードストア要求がデコーダでデコードされ主記憶へのアクセス要求である場合は、相互結合網を介して主記憶をアクセスするよう制御され、自プロセッサが主記憶上のロックフラグに対してロード・アンド・リザーブ命令を発行し、前記ロード・アンド・リザーブ命令は、指定アドレスに対して内容をリードする動作を行うとともに、リザベーションと呼ばれる保護領域を確立」することと、本願発明の「メモリ制御装置が第１の処理構成要素が前記メモリにおける前記セマフォメモリ領域を読み出すことに応答して、前記共有メモリ領域への排他的アクセスを管理するためのセマフォ予約を設定すること」とは、後記〈相違点１〉の点で相違するものの、「装置が第１の処理構成要素が前記メモリにおける前記セマフォメモリ領域を読み出すことに応答して、前記共有メモリ領域への排他的アクセスを管理するためのセマフォ予約を設定すること」において共通する。
　
４．引用発明のＰｏｗｅｒＰＣアーキテクチャにおける「他のプロセッサ」は、本願発明の「第２の処理構成要素」に相当し、引用発明の「ロードストア要求がデコーダでデコードされ主記憶へのアクセス要求である場合は、相互結合網を介して主記憶をアクセスするよう制御され」る点を加味すれば、引用発明の「他のプロセッサが前記アドレスの内容を更新するストア命令を発行」することと、本願発明の「第２の処理構成要素が前記共有メモリ領域に関連付けられた前記セマフォメモリ領域へ書き込み要求を送信すること」とに実質的な差異はない。
　
５．引用発明の「リザベーションは破棄」されることは本願発明の「セマフォ予約をクリア」することに相当し、引用発明の「破棄された状態で、最初にロード・アンド・リザーブ命令を発行した前記自プロセッサが、ストア・コンディショナル命令を発行すると、ストア動作は行われず、「失敗」する」ことは、換言すれば、自プロセッサのストア動作が「妨げ」られているといえる。装置を用いる点については、前記３．で言及したことと同様のことが言える。
　してみれば、引用例発明の「前記自プロセッサのリザベーションが存在する時に、前記他のプロセッサがストア命令を発行して、当該アドレスの内容を更新すると、リザベーションは破棄され、この破棄された状態で、最初にロード・アンド・リザーブ命令を発行した前記自プロセッサが、ストア・コンディショナル命令を発行すると、ストア動作は行われず、「失敗」したことを示すリプライが自プロセッサに報告され、再びｌｏｏｐに戻ってロック値がゼロになるのを待つ」ことと本願発明の「前記メモリ制御装置が前記書き込み要求に応答して、前記セマフォ予約をクリアし、前記第１の処理構成要素による前記セマフォメモリ領域の内容の更新を妨げること」とは、後記〈相違点２〉の点で相違するものの、「装置が前記書き込み要求に応答して、前記セマフォ予約をクリアし、前記第１の処理構成要素による前記セマフォメモリ領域の内容の更新を妨げること」において共通する。
　
６．引用発明の「リザベーションと呼ばれる保護領域を確立した状態」、「リザベーションが破棄された状態」は、それぞれ、本願発明の「予約状態」、「非予約状態」に相当する。装置を用いる点については、前記３．で言及したことと同様のことが言える。
　してみれば、引用発明の「前記リザベーションが存在する時に、他のプロセッサがストア命令を発行して、該アドレスの内容を更新すると、リザベーションは破棄され、先行するロード・アンド・リザーブ命令によって確立されたリザベーションと呼ばれる保護領域を確立した状態はリザベーションが破棄された状態とされる」ことと本願発明の「前記メモリ制御装置が前記書き込み要求に応答して、前記メモリ制御装置内の予約状態を予約状態から非予約状態に変更すること」とは、後記〈相違点３〉の点で相違するものの、「装置が前記書き込み要求に応答して、前記装置内の予約状態を予約状態から非予約状態に変更すること」において共通する。
　
　前記１．〜６．の対比・検討によれば、本願発明と引用発明とは次の点で一致し、そして、次の点で相違する。
　
［一致点］ 
「共有メモリへの排他的アクセスのためにセマフォ予約をクリアする方法であって、
　複数の処理構成要素によって共有されることができる共有メモリ領域および前記共有メモリ領域の排他的書き込みアクセスの使用可能性を示すセマフォメモリ領域を含むメモリを準備することと、
　装置が第１の処理構成要素が前記メモリにおける前記セマフォメモリ領域を読み出すことに応答して、前記共有メモリ領域への排他的アクセスを管理するためのセマフォ予約を設定することと、
　第２の処理構成要素が前記共有メモリ領域に関連付けられた前記セマフォメモリ領域へ書き込み要求を送信することと、
　前記装置が前記書き込み要求に応答して、前記セマフォ予約をクリアし、前記第１の処理構成要素による前記セマフォメモリ領域の内容の更新を妨げることと、
　前記装置が前記書き込み要求に応答して、前記装置内の予約状態を予約状態から非予約状態に変更することと、を含む方法。」 
　
〈相違点１〉
　装置が第１の処理構成要素がメモリにおけるセマフォメモリ領域を読み出すことに応答して、共有メモリ領域への排他的アクセスを管理するためのセマフォ予約を設定することに関し、本願発明は「メモリ制御装置」を用いるのに対し、引用発明は、そのようであるのか特定されていない点。
〈相違点２〉 
　装置が書き込み要求に応答して、セマフォ予約をクリアし、第１の処理構成要素によるセマフォメモリ領域の内容の更新を妨げることに関し、本願発明は「メモリ制御装置」を用いるのに対し、引用発明は、そのようであるのか特定されていない点。
〈相違点３〉
　装置が書き込み要求に応答して、装置内の予約状態を予約状態から非予約状態に変更することに関し、本願発明は「メモリ制御装置内」の予約状態を予約状態から非予約状態に変更しているのに対し、引用発明は、そのようであるのか特定されていない点。
　
 第５　当審判断 
〈相違点１〉について
　メモリにおけるセマフォメモリ領域を読み出すことに応答して、共有メモリ領域への排他的アクセスを管理するためのセマフォを設定する際に、「メモリ制御装置」を用いることは周知技術にすぎない。例えば、参考文献１には「セマフォに係り、メモリ制御装置がメモリ使用要求に応じて、前記メモリ制御装置内の予約状態（例えば００）を別の予約状態（例えばＦＦ）に変更する」ことに相当する技術が示され、参考文献２には「セマフォ値は主メモリ内に記憶されており、共有されている主メモリのデータ要素は、第１のプロセッサと第２のプロセッサのうち一方による排他的アクセスを許可することが要求されるデータ処理システムにおいて、メモリエリアのようなデータ要素へのアクセスを制御するモニタ回路を含むメモリ制御に関連する装置を用いる技術が示されており、「メモリ制御装置」を用いる技術は当該技術分野における周知技術といえるものである。
　してみれば、引用発明において、装置が第１の処理構成要素がメモリにおけるセマフォメモリ領域を読み出すことに応答して、共有メモリ領域への排他的アクセスを管理するためのセマフォ予約を設定することに関し、「メモリ制御装置」を用いることは当業者が容易になし得ることである。
　
〈相違点２〉について
　前記「〈相違点１〉について」、において言及した様に、メモリの制御に専用の「メモリ制御装置」を用いることは周知技術といえるものであるから、引用発明において、書き込み要求に応答して、セマフォ予約をクリアし、第１の処理構成要素によるセマフォメモリ領域の内容の更新を妨げることに関し、「メモリ制御装置」を用いることは当業者が容易になし得ることである。
　
〈相違点３〉について
　前記「〈相違点１〉について」、において言及したように、「メモリ制御装置」を用いることは周知技術といえるものであり、参考文献１には「セマフォに係り、メモリ制御装置がメモリ使用要求に応じて、前記メモリ制御装置内の予約状態（例えば００）を別の予約状態（例えばＦＦ）に変更する」ことに相当する技術が示されている。
　してみれば、引用発明において、装置が書き込み要求に応答して、装置内の予約状態を予約状態から非予約状態に変更することに関し、「メモリ制御装置内」の予約状態を予約状態から非予約状態に変更することは当業者が容易になし得ることである。
　そして、本願発明の奏する作用効果は、前記引用発明、参考文献１、２に記載された技術の奏する作用効果から当然予測される範囲内のものにすぎず、格別顕著なものということはできない。 
　
第６　むすび
　以上のとおり、本願発明は、特許法第２９条第２項の規定により特許を受けることができないから、他の請求項に係る発明について検討するまでもなく、本願は拒絶されるべきものである。
　よって、前記結論のとおり審決する。