【手続補正書】
【提出日】令和1年11月27日(2019.11.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータによって実行される方法であって、
メインメモリから、第１のデータページの第１の部分内に含まれるデータにアクセスするためのリクエストを受信することを備え、前記第１のデータページは、第１のページサイズを有し、前記第１の部分は、前記第１のページサイズよりも少ない第２のページサイズを備え、前記方法はさらに、
前記第１のデータページが前記メインメモリ内に記憶されておらずセカンダリメモリ内に記憶されているという決定に基づき、ページフォールトを初期化することと、
前記ページフォールトを初期化したことに応答して、前記第１のページサイズに等しい前記メインメモリの一部を割り当てることと、
前記第１のデータページ全体を転送することなく、前記第１のデータページの前記第１の部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送することとを備え、前記第１のデータページの残りの量は、前記セカンダリメモリ内に記憶されたままであり、前記方法はさらに、
前記第１のデータページの前記第１の部分に関連付けられた第１のページテーブルエントリを、前記第１のデータページの前記第１の部分が転送された前記メインメモリの前記割り当てられた一部の位置を指すように更新することと、
前記第１のデータページの前記残りの量を前記セカンダリメモリから前記メインメモリに転送することをさらに備え、前記第１のデータページの前記残りの量を転送することは、
前記第１のデータページ全体が前記メインメモリ内に記憶されるまで、前記第２のページサイズに対応する前記第１のデータページのそれぞれの部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に繰り返し転送することと、
前記第１のデータページの前記それぞれの部分の各々に対するそれぞれのページテーブルエントリを、前記メインメモリ内の前記第１のデータページの前記それぞれの部分のそれぞれの位置を指すように更新することとを含む、方法。
【請求項２】
一旦前記第１のデータページ全体が前記メインメモリ内に記憶されると、前記第１のデータページを、前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送された前記第１のデータページの前記それぞれの部分から再組み立てすることと、
前記メインメモリ内の前記再組み立てされた第１のデータページの位置を指すように、前記第１のデータページに関連付けられたページテーブルエントリを更新することをさらに備える、請求項１に記載の方法。
【請求項３】
前記第１のデータページの前記残りの部分を前記セカンダリメモリから前記メインメモリに転送する前に、アクセスされることをリクエストされた前記第１のデータページの前記第１の部分が前記メインメモリに転送されたことを示すことをさらに備える、請求項１または請求項２に記載の方法。
【請求項４】
コンピュータによって実行される方法であって、
メインメモリから、第１のデータページの第１の部分内に含まれるデータにアクセスするためのリクエストを受信することを備え、前記第１のデータページは、第１のページサイズを有し、前記第１の部分は、前記第１のページサイズよりも少ない第２のページサイズを備え、前記方法はさらに、
前記第１のデータページが前記メインメモリ内に記憶されておらずセカンダリメモリ内に記憶されているという決定に基づき、ページフォールトを初期化することと、
前記ページフォールトを初期化したことに応答して、前記第１のページサイズに等しい前記メインメモリの一部を割り当てることと、
前記第１のデータページ全体を転送することなく、前記第１のデータページの前記第１の部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送することとを備え、前記第１のデータページの残りの量は、前記セカンダリメモリ内に記憶されたままであり、前記方法はさらに、
前記第１のデータページの前記第１の部分に関連付けられた第１のページテーブルエントリを、前記第１のデータページの前記第１の部分が転送された前記メインメモリの前記割り当てられた一部の位置を指すように更新することと、
アクセスビットがページテーブルの各ページテーブルエントリに対して設定されているかをページテーブルスキャナを用いた前記ページテーブルのスキャンに基づき決定することをさらに備え、前記アクセスビットは、前記ページテーブルエントリに関連付けられたページが最後のスキャン期間にアクセスされたかを示し、前記第１のページサイズを有する少なくとも１つのページは、前記第２のページサイズのページへと分割されるとともに、前記ページテーブル内の前記第２のページサイズの前記ページの各々に対するページテーブルエントリは、スキャンされ、前記方法はさらに、
前記アクセスビットが前記ページに関連付けられた前記ページテーブルエントリに対して設定されていないと決定したことに応答して、各ページに対してカウントを増やすことと、
前記アクセスビットが各ページテーブルエントリに対して設定されているかを決定した後に、前記アクセスビットをリセットすることと、
前記第２のページサイズの前記ページを前記第１のページサイズを有する分割された前記ページへと再組み立てすることとを備える、方法。
【請求項５】
前記第１のページサイズに等しい前記メインメモリの前記一部が割り当てられることができない場合に、前記第１のページサイズを有する最も使用されていないページを各ページに対する前記カウントに基づき決定し、前記最も使用されていないページを前記セカンダリメモリへと解放することと、前記第１のページサイズに等しい前記メインメモリの一部を前記解放された最も使用されていないページの位置において割り当てることと、
前記第１のページサイズに等しい前記メインメモリの前記一部が割り当てられることができる場合に、前記第１のデータページの前記第１の部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送することをさらに備える、請求項４に記載の方法。
【請求項６】
前記第１のページサイズを有する前記第１のデータページのメモリ構造を前記第１のページサイズよりも少ない前記第２のページサイズを有する複数のデータページへと変化させることをさらに備える、請求項１〜５のいずれかに記載の方法。
【請求項７】
システムであって、
１つまたは複数のプロセッサと、
メインメモリとセカンダリメモリとを備えるメモリであって、メモリは、動作可能な命令を記憶し、前記命令が実行されると１つまたは複数のプロセッサに動作を行わせ、前記動作は、
前記メインメモリから、第１のデータページの第１の部分内に含まれるデータにアクセスするためのリクエストを受信することを備え、前記第１のデータページは、第１のページサイズを有し、前記第１の部分は、前記第１のページサイズよりも少ない第２のページサイズを備え、前記動作はさらに、
前記第１のデータページが前記メインメモリ内に記憶されておらず前記セカンダリメモリ内に記憶されているという決定に基づき、ページフォールトを初期化することと、
前記ページフォールトを初期化したことに応答して、前記第１のページサイズに等しい前記メインメモリの一部を割り当てることと、
前記第１のデータページ全体を転送することなく、前記第１のデータページの前記第１の部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送することとを備え、前記第１のデータページの残りの量は、前記セカンダリメモリ内に記憶されたままであり、前記動作はさらに、
前記第１のデータページの前記第１の部分に関連付けられた第１のページテーブルエントリを、前記第１のデータページの前記第１の部分が転送された前記メインメモリの前記割り当てられた一部の位置を指すように更新することと、
前記第１のデータページの前記残りの量を前記セカンダリメモリから前記メインメモリに転送することとを備え、前記第１のデータページの前記残りの量を転送することは、
前記第１のデータページ全体が前記メインメモリ内に記憶されるまで、前記第２のページサイズに対応する前記第１のデータページのそれぞれの部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に繰り返し転送することと、
前記第１のデータページの前記それぞれの部分の各々に対するそれぞれのページテーブルエントリを、前記メインメモリ内の前記第１のデータページの前記それぞれの部分のそれぞれの位置を指すように更新することとを備える、システム。
【請求項８】
前記動作は、
一旦前記第１のデータページ全体が前記メインメモリ内に記憶されると、前記第１のデータページを、前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送された前記第１のデータページの前記それぞれの部分から再組み立てすることと、
前記メインメモリ内の前記再組み立てされた第１のデータページの位置を指すように、前記第１のデータページに関連付けられたページテーブルエントリを更新することをさらに備える、請求項７に記載のシステム。
【請求項９】
前記動作は、
前記第１のデータページの前記残りの部分を前記セカンダリメモリから前記メインメモリに転送する前に、アクセスされることをリクエストされた前記第１のデータページの前記第１の部分が前記メインメモリに転送されたことを示すことをさらに備える、請求項７または請求項８に記載のシステム。
【請求項１０】
システムであって、
１つまたは複数のプロセッサと、
メインメモリとセカンダリメモリとを備えるメモリであって、メモリは、動作可能な命令を記憶し、前記命令が実行されると１つまたは複数のプロセッサに動作を行わせ、前記動作は、
前記メインメモリから、第１のデータページの第１の部分内に含まれるデータにアクセスするためのリクエストを受信することを備え、前記第１のデータページは、第１のページサイズを有し、前記第１の部分は、前記第１のページサイズよりも少ない第２のページサイズを備え、前記動作はさらに、
前記第１のデータページが前記メインメモリ内に記憶されておらず前記セカンダリメモリ内に記憶されているという決定に基づき、ページフォールトを初期化することと、
前記ページフォールトを初期化したことに応答して、前記第１のページサイズに等しい前記メインメモリの一部を割り当てることと、
前記第１のデータページ全体を転送することなく、前記第１のデータページの前記第１の部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送することとを備え、前記第１のデータページの残りの量は、前記セカンダリメモリ内に記憶されたままであり、前記動作はさらに、
前記第１のデータページの前記第１の部分に関連付けられた第１のページテーブルエントリを、前記第１のデータページの前記第１の部分が転送された前記メインメモリの前記割り当てられた一部の位置を指すように更新することと、
アクセスビットがページテーブルの各ページテーブルエントリに対して設定されているかをページテーブルスキャナを用いた前記ページテーブルのスキャンに基づき決定することとをさらに備え、前記アクセスビットは、前記ページテーブルエントリに関連付けられたページが最後のスキャン期間にアクセスされたかを示し、前記第１のページサイズを有する少なくとも１つのページは、前記第２のページサイズのページへと分割されるとともに、前記ページテーブル内の前記第２のページサイズの前記ページの各々に対するページテーブルエントリは、スキャンされ、前記動作はさらに、
前記アクセスビットが前記ページに関連付けられた前記ページテーブルエントリに対して設定されていないと決定したことに応答して、各ページに対してカウントを増やすことと、
前記アクセスビットが各ページテーブルエントリに対して設定されているかを決定した後に、前記アクセスビットをリセットすることと、
前記第２のページサイズの前記ページを前記第１のページサイズを有する分割された前記ページへと再組み立てすることとを備える、システム。
【請求項１１】
前記動作は、
前記第１のページサイズに等しい前記メインメモリの前記一部が割り当てられることができない場合に、前記第１のページサイズを有する最も使用されていないページを各ページに対する前記カウントに基づき決定し、前記最も使用されていないページを前記セカンダリメモリへと解放することと、前記第１のページサイズに等しい前記メインメモリの一部を前記解放された最も使用されていないページの位置において割り当てることと、
前記第１のページサイズに等しい前記メインメモリの前記一部が割り当てられることができる場合に、前記第１のデータページの前記第１の部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送することをさらに備える、請求項１０に記載のシステム。
【請求項１２】
前記動作は、
前記第１のページサイズを有する前記第１のデータページのメモリ構造を前記第１のページサイズよりも少ない前記第２のページサイズを有する複数のデータページへと変化させることをさらに備える、請求項７〜請求項１１のいずれか１項に記載のシステム。
【請求項１３】
１つまたは複数のプロセッサによって実行可能な命令を記憶する一時的でないコンピュータ可読記憶装置であって、前記命令は、実行されると前記１つまたは複数のプロセッサに動作を行わせ、前記動作は、
メインメモリから、第１のデータページの第１の部分内に含まれるデータにアクセスするためのリクエストを受信することを備え、前記第１のデータページは、第１のページサイズを有し、前記第１の部分は、前記第１のページサイズよりも少ない第２のページサイズを備え、前記動作はさらに、
前記第１のデータページが前記メインメモリ内に記憶されておらずセカンダリメモリ内に記憶されているという決定に基づき、ページフォールトを初期化することと、
前記ページフォールトを初期化したことに応答して、前記第１のページサイズに等しい前記メインメモリの一部を割り当てることと、
前記第１のデータページ全体を転送することなく、前記第１のデータページの前記第１の部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送することとを備え、前記第１のデータページの残りの量は、前記セカンダリメモリ内に記憶されたままであり、前記動作はさらに、
前記第１のデータページの前記第１の部分に関連付けられた第１のページテーブルエントリを、前記第１のデータページの前記第１の部分が転送された前記メインメモリの前記割り当てられた一部の位置を指すように更新することと、
前記第１のデータページの前記残りの量を前記セカンダリメモリから前記メインメモリに転送することとをさらに備え、前記第１のデータページの前記残りの量を転送することは、
前記第１のデータページ全体が前記メインメモリ内に記憶されるまで、前記第２のページサイズに対応する前記第１のデータページのそれぞれの部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に繰り返し転送することと、
前記第１のデータページの前記それぞれの部分の各々に対するそれぞれのページテーブルエントリを、前記メインメモリ内の前記第１のデータページの前記それぞれの部分のそれぞれの位置を指すように更新することとを備える、記憶装置。
【請求項１４】
一旦前記第１のデータページ全体が前記メインメモリ内に記憶されると、前記第１のデータページを、前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送された前記第１のデータページの前記それぞれの部分から再組み立てすることと、
前記メインメモリ内の前記再組み立てされた第１のデータページの位置を指すように、前記第１のデータページに関連付けられたページテーブルエントリを更新することをさらに備える、請求項１３に記載の記憶装置。
【請求項１５】
１つまたは複数のプロセッサによって実行可能な命令を記憶する一時的でないコンピュータ可読記憶装置であって、前記命令は、実行されると前記１つまたは複数のプロセッサに動作を行わせ、前記動作は、
メインメモリから、第１のデータページの第１の部分内に含まれるデータにアクセスするためのリクエストを受信することを備え、前記第１のデータページは、第１のページサイズを有し、前記第１の部分は、前記第１のページサイズよりも少ない第２のページサイズを備え、前記動作はさらに、
前記第１のデータページが前記メインメモリ内に記憶されておらずセカンダリメモリ内に記憶されているという決定に基づき、ページフォールトを初期化することと、
前記ページフォールトを初期化したことに応答して、前記第１のページサイズに等しい前記メインメモリの一部を割り当てることと、
前記第１のデータページ全体を転送することなく、前記第１のデータページの前記第１の部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送することとを備え、前記第１のデータページの残りの量は、前記セカンダリメモリ内に記憶されたままであり、前記動作はさらに、
前記第１のデータページの前記第１の部分に関連付けられた第１のページテーブルエントリを、前記第１のデータページの前記第１の部分が転送された前記メインメモリの前記割り当てられた一部の位置を指すように更新することと、
アクセスビットがページテーブルの各ページテーブルエントリに対して設定されているかをページテーブルスキャナを用いた前記ページテーブルのスキャンに基づき決定することとをさらに備え、前記アクセスビットは、前記ページテーブルエントリに関連付けられたページが最後のスキャン期間にアクセスされたかを示し、前記第１のページサイズを有する少なくとも１つのページは、前記第２のページサイズのページへと分割されるとともに、前記ページテーブル内の前記第２のページサイズの前記ページの各々に対するページテーブルエントリは、スキャンされ、前記動作はさらに、
前記アクセスビットが前記ページに関連付けられた前記ページテーブルエントリに対して設定されていないと決定したことに応答して、各ページに対してカウントを増やすことと、
前記アクセスビットが各ページテーブルエントリに対して設定されているかを決定した後に、前記アクセスビットをリセットすることと、
前記第２のページサイズの前記ページを前記第１のページサイズを有する分割された前記ページへと再組み立てすることと、
前記第１のページサイズに等しい前記メインメモリの前記一部が割り当てられることができない場合に、前記第１のページサイズを有する最も使用されていないページを各ページに対する前記カウントに基づき決定し、前記最も使用されていないページを前記セカンダリメモリへと解放することと、前記第１のページサイズに等しい前記メインメモリの一部を前記解放された最も使用されていないページの位置において割り当てることと、
前記第１のページサイズに等しい前記メインメモリの前記一部が割り当てられることができる場合に、前記第１のデータページの前記第１の部分を前記セカンダリメモリから前記メインメモリの前記割り当てられた一部に転送することをさらに備える、記憶装置。
【請求項１６】
請求項１〜６のいずれかに記載の方法をコンピュータに実行させる、プログラム。