【手続補正書】
【提出日】平成24年7月26日(2012.7.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
共有メモリに結合可能な複数のプロセッサのなかに１つのプロセッサを備えたシステムであって、
前記１つのプロセッサは、該プロセッサの第１のトランザクションモードに従って、コードのセクションの実行を開始するように構成され、前記複数のプロセッサに対する単一のアトミックなトランザクションとして、前記コードのセクション内で前記共有メモリへの複数の保護されたメモリアクセス動作を実行するように構成され、
前記１つのプロセッサは、前記コードのセクション内で前記１つのプロセッサの第２のトランザクションモードに従って、前記コードのセクションのサブセクション実行を開始するように構成され、および、
前記第１および第２のトランザクショナルモードの各々が、前記１つのプロセッサが中断条件の検出に応答して実行するように構成された個々のリカバリ動作と関連づけられるシステム。
【請求項２】
前記第１のトランザクションモードと関連づけられたリカバリ動作は、前記保護された複数のメモリアクセス動作の１以上によってなされる前記共有メモリへのいかなる修正も破棄すること、および、プログラム制御フローを前記コードのセクションの開始まで戻すために１以上のレジスタにおいて保持された値を修正することを含む請求項１に記載のシステム。
【請求項３】
前記第２のトランザクションモードと関連づけられたリカバリ動作は、前記コードのサブセクションの保護された複数のメモリアクセス動作の１以上によってなされる前記共有メモリへのいかなる修正も破棄することと、前記コードのサブセクション内にある前記保護された複数のメモリアクセス動作のいかなる記憶動作も実行することなく、前記コードのサブセクションの実行を継続することとを含む請求項２に記載のシステム。
【請求項４】
前記プロセッサはさらに、前記コードのサブセクションを実行する間に中断条件を検出することに応答して前記コードのセクションの実行を中断するように構成され、前記中断は、前記コードのセクションに対する前記第１のトランザクションモードと関連づけられた前記リカバリ動作を実行することを含む請求項３に記載のシステム。
【請求項５】
前記プロセッサはさらに、
前記コードのセクションの開始時に、前記第１のトランザクションモードを示す命令を実行することに応答して前記第１のトランザクションモードにしたがって前記コードのセクションを実行するように構成され、かつ、
前記コードのサブセクションの開始時に前記第２のトランザクションモードを示す命令を実行することに応答して前記第２のトランザクションモードにしたがって前記コードのサブセクションを実行するように構成されている請求項１に記載のシステム。
【請求項６】
前記プロセッサは、前記コードのセクションの開始時に照合点を記録することにより、前記第１のトランザクションモードを示す命令を実行するように構成され、前記記録には、前記１つのプロセッサの１以上のハードウェアレジスタの１以上の各値を記録することが含まれる請求項５に記載のシステム。
【請求項７】
前記コードのセクションは、共有メモリへの前記保護されたメモリアクセス動作とは区別された１以上の保護されていないメモリアクセス動作の一群を含み、前記プロセッサはさらに、前記一群が、前記複数のプロセッサに関して単一のアトミックトランザクションとして実行されることが保証されないように、前記保護されていないメモリアクセス動作の前記一群を実行するように構成されている請求項１に記載のシステム。
【請求項８】
共有メモリに結合された複数のプロセッサのなかの１つのプロセッサが、前記複数のプロセッサに関する単一のアトミックなトランザクションとしての共有メモリへの複数のメモリアクセス動作を含むコードのセクションを実行することを含む方法であって、
前記１つのプロセッサが、第１のトランザクションモードにしたがって前記コードのセクションを実行するように構成されており、
前記コードのセクションを実行することは、前記１つのプロセッサが、前記第２のトランザクションモードにしたがって前記コードのセクションのサブセクションを実行することを含み、
前記第１および第２のトランザクションモードの各々は、前記プロセッサが、中断条件を検出することに応答して実行するように構成されている異なるそれぞれのリカバリ動作に関連づけられ、前記中断条件は、前記コードのセクションまたはサブセクションを実行することが前記複数のプロセッサに関して単一のアトミックトランザクションとして実行されていないことを示す方法。
【請求項９】
前記第１のトランザクションモードに関連づけられたリカバリ動作は、
前記プロセッサが、前記保護された複数のメモリアクセス動作の１以上によってなされる前記共有メモリへのいかなる修正も破棄すること、および、前記プロセッサが、プログラム制御フローを前記コードのセクションの開始まで戻すために１以上のレジスタにおいて保持された値を修正することを含む請求項８に記載の方法。
【請求項１０】
前記第２のトランザクションモードと関連づけられたリカバリ動作は、
前記コードのサブセクションの保護された複数のメモリアクセス動作の１以上によってなされる前記共有メモリへのいかなる修正も破棄することと、前記コードのサブセクション内にある前記保護された複数のメモリアクセス動作のいかなる記憶動作も実行することなく、前記コードのサブセクションの実行を継続することとを含む請求項８に記載の方法。
【請求項１１】
さらに、前記コードのサブセクションを実行する間に中断条件を検出すること、および、前記第１のトランザクションモードに関連づけられた１以上のリカバリ動作を実行することにより、前記コードのセクションを中断することを含む請求項１０に記載の方法。
【請求項１２】
前記１つのプロセッサが、前記コードのセクションの開始時に、前記第１のトランザクションモードを示す命令を実行すること、および、前記１つのプロセッサが、前記コードのサブセクションの開始時に、前記第２のトランザクションモードを示す命令を実行することを含む請求項８に記載の方法。
【請求項１３】
前記第１のトランザクションモードを示す命令を実行することには、前記コードのセクションの開始時に照合点を記録することが含まれ、前記記録には、前記１つのプロセッサの１以上のハードウェアレジスタの１以上の各値を記録することが含まれる請求項１２に記載の方法。
【請求項１４】
前記セクションは、前記保護されたメモリアクセス動作とは区別された１以上の保護されていないメモリアクセス動作の一群を含み、前記方法はさらに、前記複数のプロセッサに関して単一のアトミックトランザクションとして実行されることが保証されないように、前記保護されていないメモリアクセス動作の前記一群を実行することを含む請求項８に記載の方法。
【請求項１５】
複数のプロセッサにおける、共有メモリに結合されたプロセッサによって実行されたときに、該１つのプロセッサに以下の方法を実行させるようなプログラム命令を有する、コンピュータが読み出し可能な記憶媒体を含む製品であって、
前記方法は、
前記１つのプロセッサの第１のトランザクションモードに従って、コードのセクション実行を開始するステップであって、前記第１のトランザクションモードは、リカバリ動作の第１のセットに関連づけられ、前記コードのセクションは、前記共有メモリへの複数の保護されたメモリアクセス動作を含み、前記コードのセクションの実行には、前記複数のプロセッサに関する単一のアトミックなトランザクションとして、前記複数の保護されたメモリアクセス動作を実行することを含むステップと、
前記コードのセクションを実行する間に、前記１つのプロセッサの第２のトランザクションモードにしたがって前記コードのセクションのサブセクションの実行を開始するステップであって、前記第２のトランザクションモードは、リカバリセットの前記第１のセットとは異なる、リカバリ動作の第２のセットと関連づけられているステップとを含み、
前記プロセッサは、前記コードのサブセクションを実行する間に中断条件を検出することに応答してリカバリ動作の前記第２のセットの１つ以上を実行するように構成され、かつ前記第１のトランザクションモード以外のトランザクションモードが特定されていない前記コードのセクションの一部を実行する間に中断条件を検出することに応答してリカバリ動作の前記第１のセットの１以上を実行するように構成されている、製品。
【請求項１６】
リカバリ動作の前記第１のセットは、
保護された複数のメモリアクセス動作の１以上によってなされる前記共有メモリへのいかなる修正も破棄し、かつ、プログラム制御フローを前記コードのセクションの開始まで戻すために１以上のレジスタにおいて保持された値を修正することを含む請求項１５に記載の製品。
【請求項１７】
リカバリ動作の前記第２のセットは、
前記コードのサブセクションの保護された複数のメモリアクセス動作の１以上によってなされる前記共有メモリへのいかなる修正も破棄することと、前記コードのサブセクション内にある前記保護された複数のメモリアクセス動作のいかなる記憶動作も実行することなく、前記コードのサブセクションの実行を継続することとを含む請求項１６に記載の製品。
【請求項１８】
前記コードのセクションの実行を開始することには、前記第１のトランザクションモードに対応する第１の命令を実行することが含まれ、かつ、
前記コードのサブセクションの実行を開始することには、前記第２のトランザクションモードに対応する、前記第１の命令とは異なる第２の命令を実行することが含まれる請求項１５に記載の製品。
【請求項１９】
前記第１の命令を実行することには、前記セクションのコードの開始時に照合点を記録することが含まれる請求項１５に記載の製品。
【請求項２０】
前記中断条件は、前記複数のプロセッサの他の１つによってもたらされる請求項１９に記載の製品。