【手続補正書】
【提出日】平成26年8月1日(2014.8.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータデバイスの少なくとも第１のタイプの処理要素によって実行可能なプログラム命令を記憶するコンピュータ可読記憶媒体であって、
前記プログラム命令は、
前記コンピュータデバイス上で実行する仮想マシンが新たなオブジェクトをインスタンス化するという指示に応じて、前記コンピュータデバイスのメモリ領域のうち初期化するメモリ領域のサイズを決定することと、
前記第１のタイプの処理要素が、前記コンピュータデバイスの第２のタイプの処理要素に対して前記メモリ領域の初期化を行わせることと、
を含み、
前記初期化を行わせることは、前記第２のタイプの処理要素が、仮想マシンが新たなオブジェクトをインスタンス化するという指示に基づいて前記第１のタイプの処理要素から受信した命令に応じて、メモリコントローラとともに前記メモリ領域への書き込みを行うことと、前記第２のタイプの処理要素が、少なくとも前記メモリ領域の前記サイズのデータを初期化することとを含み、
前記第２のタイプの処理要素は、前記第１のタイプの処理要素と異なっており、前記メモリコントローラは、前記第１のタイプの処理要素及び前記第２のタイプの処理要素から分離している、
コンピュータ可読記憶媒体。
【請求項２】
前記新たなオブジェクトをインスタンス化すべきという指示は、第１プログラムから、前記第１のタイプの処理要素によって実行される制御プログラムにより受付けられる、
請求項１のコンピュータ可読記憶媒体。
【請求項３】
前記制御プログラムは、前記第１プログラムを実行している、
請求項２のコンピュータ可読記憶媒体。
【請求項４】
前記第１のタイプの処理要素は中央演算処理装置（ＣＰＵ）であって、前記第２のタイプの処理要素はグラフィックス処理装置（ＧＰＵ）である、
請求項２のコンピュータ可読記憶媒体。
【請求項５】
前記制御プログラムは、ガーベジコレクションプロセスの一部として、初期化される複数のメモリ領域を示す複数の指示を生成する処理と、前記複数のメモリ領域に対する初期化を前記第２処理要素に行わせる処理とをさらに含み、
前記初期化には、前記複数のメモリ領域のすべての内容を、プログラミング言語の言語仕様にしたがって指定されたデフォルトの内容で埋める処理が含まれる、
請求項４のコンピュータ可読記憶媒体。
【請求項６】
前記制御プログラムは、前記非一時的なコンピュータ読み取り可能な媒体に記憶された１以上のライブラリファイルを有し、かつ、前記指示を受付ける前記制御プログラムは、アプリケーション・プログラミング・インタフェース（ＡＰＩ）を介して前記指示を受付ける前記制御プログラムを有する、
請求項２のコンピュータ可読記憶媒体。
【請求項７】
コンピュータデバイス上で実行する仮想マシンからの指示に応じて、前記コンピュータデバイスのメモリ領域のうち初期化するメモリ領域のサイズを決定することと、
第１のタイプの処理要素で実行する第１プログラムが、第２のタイプの処理要素に対して前記メモリ領域の初期化を行わせることであって、前記第２のタイプの処理要素が、少なくとも前記メモリ領域の前記サイズのデータを初期化することと、を含み、
前記メモリ領域の初期化を行わせることは、前記第２のタイプの処理要素が、メモリコントローラとともに、前記第１のタイプの処理要素が前記メモリ領域へ直接アクセスすることなく、ダイレクトメモリアクセス（ＤＭＡ）を用いて前記メモリ領域を初期化することを含み、
前記ＤＭＡを用いて前記メモリ領域を初期化することは、前記コンピュータデバイス上で実行する前記仮想マシンからの前記指示に基づいて前記第１のタイプの処理要素から受信した命令に応じて実行され、
前記第１のタイプの処理要素は、前記第２のタイプの処理要素と異なっており、前記メモリコントローラは、前記第１のタイプの処理要素及び前記第２のタイプの処理要素から分離している、
方法。
【請求項８】
前記指示を生成する前記第１プログラム内においてガーベジコレクションプロセスをさらに含む、
請求項７の方法。
【請求項９】
前記メモリ領域のサイズを決定することは、新たなオブジェクトをインスタンス化するのに必要なメモリ量よりも大きいサイズであって、追加のメモリを初期化することなく、複数の新たなオブジェクトをインスタンス化するのに十分な大きさのサイズを決定することを含み、
前記方法は、前記初期化されたメモリ領域の全てよりも少ない部分を用いて、前記新たなオブジェクトのインスタンス化を行わせること、をさらに含む、
請求項７の方法。
【請求項１０】
前記コンピュータデバイスが、前記メモリ領域が初期化されるのに応答して、前記コンピュータデバイスのデータキャッシュの１以上の部分であってメモリ領域初期化前の前記メモリ領域の内容に対応する該部分を無効化する処理、をさらに含む、
請求項７の方法。
【請求項１１】
メインメモリを有するメモリサブシステムと、
メモリコントローラと、
２次記憶装置と、
少なくとも第１のタイプの処理要素及び第２のタイプの処理要素と、を有するコンピュータシステムであって、
前記２次記憶装置は、前記第１のタイプの処理要素によって実行可能なプログラム命令を記憶しており、
前記プログラム命令は、
新たなオブジェクトをインスタンス化するという指示に応じて、前記メインメモリのメモリ領域のうち初期化するメモリ領域のサイズを決定することと、
前記メモリコントローラとともに前記メモリ領域に書き込みを行う前記第２のタイプの処理要素に対して、前記メモリ領域の初期化を行わせることであって、前記メモリ領域の少なくとも前記サイズのデータを初期化することと、前記第１のタイプの処理要素から前記第２のタイプの処理要素へ初期化命令を送信することとを含むことと、
前記初期化されたメモリ領域の全てよりも少ない部分を用いて、前記新たなオブジェクトのインスタンス化を行わせることと、
を含み、
前記メモリ領域のサイズを決定することは、前記新たなオブジェクトに必要なメモリ量よりも大きいサイズであって、追加のメモリを初期化することなく、複数の新たなオブジェクトをインスタンス化するのに十分な大きさのサイズを決定することを含み、
前記初期化命令は、前記新たなオブジェクトをインスタンス化するという前記指示に基づいており、
前記第１のタイプの処理要素は、前記第２のタイプの処理要素と異なっており、前記メモリコントローラは、前記第１のタイプの処理要素及び前記第２のタイプの処理要素から分離している、
コンピュータシステム。
【請求項１２】
前記第１のタイプの処理要素は中央演算処理装置（ＣＰＵ）であって、前記第２のタイプの処理要素はグラフィックス処理装置（ＧＰＵ）である、
請求項１１のコンピュータシステム。
【請求項１３】
前記第１のタイプの処理要素と関連付けられたキャッシュをさらに有し、
前記キャッシュは、前記第１のタイプの処理要素による前記メインメモリへのアクセスに応答して該メインメモリの内容を記憶するように構成され、
前記メモリ領域の初期化が行われたとき、前記メモリ領域の初期化後の内容が前記キャッシュに記憶されない、
請求項１１のコンピュータシステム。
【請求項１４】
前記メモリコントローラは、前記第２のタイプの処理要素に対して前記メインメモリへの直接アクセスを許可するように構成されており、
前記メモリ領域の初期化を行わせることには、前記第２のタイプの処理要素が前記メモリコントローラを用いて前記メモリ領域にアクセスすることが含まれ、前記第１のタイプの処理要素が前記メモリ領域にアクセスすることが含まれない、
請求項１１のコンピュータシステム。
【請求項１５】
前記メモリ領域の初期化を行わせることは、前記第２のタイプの処理要素が実行可能な１つ以上の命令のセットの少なくとも一部を動的に生成して、前記メモリ領域の内容を変更することを含む、
請求項１のコンピュータ可読記憶媒体。
【請求項１６】
前記メモリ領域の初期化を行わせることは、前記初期化されたメモリ領域の初期化後の内容を、前記コンピュータシステムのキャッシュに記憶させず、
前記キャッシュは、前記メモリ領域を含む前記コンピュータシステムのメモリにアクセスする前記第１のタイプの処理要素に応じて、前記メモリ領域の内容を記憶するように構成されている。
請求項１のコンピュータ可読記憶媒体。
【請求項１７】
前記第１のタイプの処理要素及び前記第２のタイプの処理要素の少なくとも一方の生成を実行することの可能なプログラム命令を含む、
請求項１のコンピュータ可読記憶媒体。
【請求項１８】
前記第２のタイプの処理要素がメモリコントローラとともに前記メモリ領域への書き込みを行うことは、前記第２のタイプの処理要素が、前記第２のタイプの処理要素による前記メモリ領域への書き込みが許可されたという指示を、前記メモリコントローラから受信することを含む、
請求項１のコンピュータ可読記憶媒体。
【請求項１９】
前記第２のタイプの処理要素がメモリコントローラとともに前記メモリ領域への書き込みを行うことは、前記第２のタイプの処理要素が、前記メモリ領域へのダイレクトメモリアクセス（ＤＭＡ）を、前記メモリコントローラを介して受信することを含む、
請求項１のコンピュータ可読記憶媒体。