説明

コンピュータのメモリを参照する方法およびコンピュータ

【課題】新しいアーキテクチャのコンピュータにおいて、新しいバイナリと同じアドレス空間を共有して、古いバイナリをいかなる修正を伴わずに実行する。
【解決手段】第1のコンピュータ命令ストリームをプロファイルし、前記第1のコンピュータ命令ストリームのプロファイルを分析し、前記第1のコンピュータ命令ストリームの周波数実行セクションのみを第2のコンピュータ命令ストリームへ変換し、前記第1のコンピュータ命令ストリームにおけるそれぞれの命令に対応するビットを含むビットベクトルを保存し、前記第1のコンピュータ命令ストリームの実行を監視し、前記第1のコンピュータ命令ストリームから前記第2のコンピュータ命令ストリームへ前記実行を移動し、前記周波数実行セクションの実行が完了した時に、前記第1のコンピュータ命令ストリームの実行に復帰する。


Notice: Undefined index: DEJ in /mnt/www/gzt_disp.php on line 298

【特許請求の範囲】
【請求項1】
第1のコンピュータ命令ストリームをプロファイルする工程であって、前記第1のコンピュータ命令ストリームのプロファイルを生成するために、前記第1のコンピュータ命令ストリームの実行フローの詳細を記録することを含むプロファイル工程と、
周波数実行セクションを区別するために、前記第1のコンピュータ命令ストリームのプロファイルを分析する工程と、
前記第1のコンピュータ命令ストリームの周波数実行セクションのみを第2のコンピュータ命令ストリームへ変換する工程と、
前記第1のコンピュータ命令ストリームにおけるそれぞれの命令に対応するビットを含むビットベクトルを保存する工程であって、前記各ビットが、対応する命令のための前記周波数実行セクションのエントリーポイントがあるかどうかを示すものである工程と、
前記第1のコンピュータ命令ストリームの実行が前記周波数実行セクションに到達した時を判断するために、前記第1のコンピュータ命令ストリームの実行を監視する工程と、
前記周波数実行セクションのみを実行するために、前記第1のコンピュータ命令ストリームから前記第2のコンピュータ命令ストリームへ前記実行を移動する工程と、
前記周波数実行セクションの実行が完了した時に、前記第1のコンピュータ命令ストリームの実行に復帰する工程とを含む、
第1のコンピュータ命令ストリームから第2のコンピュータ命令ストリームへ実行を移動する方法。
【請求項2】
前記分析する工程は、前記第1のコンピュータ命令ストリームに中の複数の周波数実行セクションを区別し、
前記監視する工程は、実行がそれぞれの前記周波数実行セクションに到達した時を判断するために、前記第1のコンピュータ命令ストリームの実行を監視することを含み、
前記移動する工程は、前記それぞれの周波数実行セクションのみを実行するために、前記第1のコンピュータ命令ストリームから前記第2のコンピュータ命令ストリームへ実行を移動させることを含み、
前記それぞれの周波数実行セクションの実行が完了した時に、前記第1のコンピュータ命令ストリームの実行に復帰する
請求項1記載の方法。
【請求項3】
テーブルに、前記周波数実行セクションのエントリーポイントのアドレスを保存する工程をさらに含み、
前記監視する工程は、前記命令のアドレスが、前記周波数実行セクションのエントリーポイントのアドレスに一致したかどうかを判断するために、前記第1のコンピュータ命令ストリームのそれぞれの命令において、前記テーブルを照会することを含み、
前記移動する工程は、前記命令のアドレスが、前記周波数実行セクションのエントリーポイントのアドレスに一致した場合に実行される工程である
請求項1記載の方法。
【請求項4】
前記監視する工程は、命令に対応するビットがセットされたかどうかを判断するために、前記第1のコンピュータ命令ストリームの中のそれぞれの命令においてビットベクトルを照会することを含み、
前記移動する工程は、前記ビットがセットされた場合に実行される
請求項1記載の方法。
【請求項5】
前記監視する工程は、実行が前記周波数実行セクションに到達した時を判断するために、統計を利用すること含む
請求項1記載の方法。
【請求項6】
前記第1のコンピュータ命令ストリームは、第1の命令セットアーキテクチャにおいて実行されるものであり、
前記第2のコンピュータ命令ストリームは、第2の命令セットアーキテクチャにおいて実行されるもので、前記第2の命令セットアーキテクチャは、前記第1の命令セットアーキテクチャとは相違する
請求項1記載の方法。
【請求項7】
第1のコンピュータ命令ストリームをプロファイルする工程であって、前記第1のコンピュータ命令ストリームのプロファイルを生成するために、前記第1のコンピュータ命令ストリームの実行フローの詳細を記録することを含むプロファイル工程と、
周波数実行セクションを区別するために、前記第1のコンピュータ命令ストリームのプロファイルを分析する工程と、
前記第1のコンピュータ命令ストリームの周波数実行セクションのみを、第2のコンピュータ命令ストリームへ変換する工程と、
前記周波数実行セクションのエントリーポイントのアドレスと前記第1のコンピュータ命令ストリームにおける命令の対応するアドレスとをマッピングしたものを含むマッピングテーブルを保存する工程と、
前記第1のコンピュータ命令ストリームのそれぞれのページのためのビットであって、それぞれのビットは、前記周波数実行セクションのマッピングが、対応するページにあるかどうかを示すものであるビットを含むビットベクトルを保存する工程と、
前記第1のコンピュータ命令ストリームの実行が前記周波数実行セクションに到達した時を判断するために、前記第1のコンピュータ命令ストリームの実行を監視する工程と、
前記周波数実行セクションのみを実行するために、前記第1のコンピュータ命令ストリームから前記第2のコンピュータ命令ストリームへ前記実行を移動する工程と、
前記周波数実行セクションの実行が完了した時に、前記第1のコンピュータ命令ストリームの実行に復帰する工程とを含む、
第1のコンピュータ命令ストリームから第2のコンピュータ命令ストリームへ実行を移動する方法。
【請求項8】
第1のコンピュータ命令ストリームをプロファイルするよう構成されたプロファイル装置であって、前記第1のコンピュータ命令ストリームのプロファイルを生成するために、前記第1のコンピュータ命令ストリームの実行フローの詳細を記録するように構成されているプロファイル装置と、
周波数実行セクションを区別するために、前記第1のコンピュータ命令ストリームのプロファイルを分析し、
前記第1のコンピュータ命令ストリームにおけるそれぞれの命令に対応するビットを含むビットベクトルを保存し、
前記対応する命令のための前記周波数実行セクションのエントリーポイントがある場合にビットベクトルに対しビットをセットする
ように構成された分析装置と、
前記第1のコンピュータ命令ストリームの周波数実行セクションのみを第2のコンピュータ命令ストリームへ変換するように構成された変換装置と、
前記第1のコンピュータ命令ストリームの実行が前記周波数実行セクションに到達した時を判断するために、前記第1のコンピュータ命令ストリームの実行を監視し、
前記周波数実行セクションのみを実行するために、前記第1のコンピュータ命令ストリームから前記第2のコンピュータ命令ストリームへ前記実行を移動するように構成された監視装置とを含む、
第1のコンピュータ命令ストリームから第2のコンピュータ命令ストリームへ実行を移動するように構成されたコンピュータ。
【請求項9】
前記分析装置は、前記第1のコンピュータ命令ストリームの中の複数の周波数実行セクションを区別するようにさらに構成され、
前記監視装置は、
実行がそれぞれの前記周波数実行セクションに到達した時を判断するために、前記第1のコンピュータ命令ストリームの実行を監視し、かつ
前記それぞれの周波数実行セクションのみを実行するために、前記第1のコンピュータ命令ストリームから前記第2のコンピュータ命令ストリームへ実行を移動させるようにさらに構成された
請求項8記載のコンピュータ。
【請求項10】
前記第1のコンピュータ命令ストリームは、第1の命令セットアーキテクチャにおいて実行されるものであり、
前記第2のコンピュータ命令ストリームは、第2の命令セットアーキテクチャにおいて実行されるもので、前記第2の命令セットアーキテクチャは、前記第1の命令セットアーキテクチャとは相違する
請求項8記載のコンピュータ。
【請求項11】
第1のコンピュータ命令ストリームをプロファイルするよう構成されたプロファイル装置であって、前記第1のコンピュータ命令ストリームのプロファイルを生成するために、前記第1のコンピュータ命令ストリームの実行フローの詳細を記録するように構成されているプロファイル装置と、
周波数実行セクションを区別するために、前記第1のコンピュータ命令ストリームのプロファイルを分析し、
前記周波数実行セクションのエントリーポイントのアドレスと、前記第1のコンピュータ命令ストリームにおける命令の対応するアドレスとをマッピングしたものを含むマッピングテーブルを保存し、
前記第1のコンピュータ命令ストリームのそれぞれのページのためのビットであって、それぞれのビットは、前記周波数実行セクションのマッピングが、対応するページにあるかどうかを示すものであるビットを含むビットベクトルを保存するように構成された分析装置と、
前記第1のコンピュータ命令ストリームの周波数実行セクションのみを第2のコンピュータ命令ストリームへ変換するように構成された変換装置と、
前記第1のコンピュータ命令ストリームの実行が前記周波数実行セクションに到達した時を判断するために、前記第1のコンピュータ命令ストリームの実行を監視し、
前記周波数実行セクションのみを実行するために、前記第1のコンピュータ命令ストリームから前記第2のコンピュータ命令ストリームへ前記実行を移動するように構成された監視装置とを含む、
第1のコンピュータ命令ストリームから第2のコンピュータ命令ストリームへ実行を移動するように構成されたコンピュータ。

【図1a】
image rotate

【図1b】
image rotate

【図1c】
image rotate

【図1d】
image rotate

【図1e】
image rotate

【図2a】
image rotate

【図2b】
image rotate

【図2c】
image rotate

【図3a】
image rotate

【図3b】
image rotate

【図3c】
image rotate

【図3d】
image rotate

【図3e】
image rotate

【図3f】
image rotate

【図3g】
image rotate

【図3h】
image rotate

【図3i】
image rotate

【図3j】
image rotate

【図3k】
image rotate

【図3l】
image rotate

【図3m】
image rotate

【図3n】
image rotate

【図3o】
image rotate

【図4a】
image rotate

【図4b】
image rotate

【図4c】
image rotate

【図4d】
image rotate

【図4e】
image rotate

【図4f】
image rotate

【図4g】
image rotate

【図4h】
image rotate

【図4i】
image rotate

【図5a】
image rotate

【図5b】
image rotate

【図6a】
image rotate

【図6b】
image rotate

【図6c】
image rotate

【図7a】
image rotate

【図7b】
image rotate

【図7c】
image rotate

【図7d】
image rotate

【図7e】
image rotate

【図7f】
image rotate

【図7g】
image rotate

【図7h】
image rotate

【図7i】
image rotate

【図7j】
image rotate

【図8a】
image rotate

【図8b】
image rotate

【図8c】
image rotate

【図9a】
image rotate

【図9b】
image rotate

【図9c】
image rotate

【図9d】
image rotate

【図9e】
image rotate

【図9f】
image rotate

【図9g】
image rotate

【図9h】
image rotate

【図9i】
image rotate

【図9j】
image rotate

【図9k】
image rotate


【公開番号】特開2012−108938(P2012−108938A)
【公開日】平成24年6月7日(2012.6.7)
【国際特許分類】
【出願番号】特願2012−21896(P2012−21896)
【出願日】平成24年2月3日(2012.2.3)
【分割の表示】特願2010−211102(P2010−211102)の分割
【原出願日】平成12年1月28日(2000.1.28)
【出願人】(508301087)エーティーアイ・テクノロジーズ・ユーエルシー (68)
【氏名又は名称原語表記】ATI TECHNOLOGIES ULC
【住所又は居所原語表記】One Commerce Valley Drive East, Markham, Ontario, L3T 7X6 Canada
【Fターム(参考)】