JP4358217B2 - キャッシュサーバ、ネットワークブート方法、及びプログラム - Google Patents
キャッシュサーバ、ネットワークブート方法、及びプログラム Download PDFInfo
- Publication number
- JP4358217B2 JP4358217B2 JP2006296617A JP2006296617A JP4358217B2 JP 4358217 B2 JP4358217 B2 JP 4358217B2 JP 2006296617 A JP2006296617 A JP 2006296617A JP 2006296617 A JP2006296617 A JP 2006296617A JP 4358217 B2 JP4358217 B2 JP 4358217B2
- Authority
- JP
- Japan
- Prior art keywords
- file
- cache
- data
- sector
- disk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Description
図1は、本発明の第1の実施の形態に係るキャッシュサーバが配置されるネットワーク環境を示す概念図である。すなわち、本実施の形態に係るキャッシュサーバ10は、ネットワーク60によってコンピュータ40とネットワーク上のストレージ63との間に配置される。なお、図1では、簡略のために、キャッシュサーバ10に一つのコンピュータ40のみが接続された状態を示しているが、キャッシュサーバ10には複数のコンピュータが接続されうる。また、図1に示すネットワーク60は、イーサネット(登録商標)等のLAN、あるいは公衆回線や専用回線を介して複数のLANが接続されるWAN等からなりうる。LANの場合には、必要に応じてルータを介した多数のサブネットから構成され、WANの場合には、公衆回線に接続するためのファイアウォール等を適宜備えているが、図1ではその図示及び詳細説明を省略している。
第2の実施の形態に係るキャッシュサーバについて再び図1を用いて説明する。第2の実施の形態に係るキャッシュサーバは、第1の実施の形態に係るキャッシュサーバの変形例であるので、ここでは、第1の実施の形態と異なる点について説明し、重複説明を避ける。
第3の実施の形態に係るキャッシュサーバについて再び図1を用いて説明する。第3の実施の形態に係るキャッシュサーバは、第1の実施の形態に係るキャッシュサーバの変形例であるので、ここでは、第1の実施の形態と異なる点について説明し、重複説明を避ける。
Claims (5)
- ネットワークブートに対応していない汎用オペレーティングシステムを、ネットワークブートに対応したコンピュータで起動するために使用されるキャッシュサーバであって、
前記キャッシュサーバは、前記汎用オペレーティングシステムを格納するストレージと、ネットワークブートする前記コンピュータとの間にネットワークによって接続され、前記コンピュータ上のBIOSが提供するサービスルーチンをフックして、前記コンピュータに備えられたローカルディスクへのアクセスを、前記ストレージへのアクセスにリダイレクトする前記コンピュータの仮想ディスクBIOSサービスルーチンと、前記オペレーティングシステムにインストールされ、前記ローカルディスクへのアクセスを前記ストレージへのアクセスにリダイレクトする仮想ディスクドライバとが利用するディスクキャッシュの内容を生成するために、データ読出手段と、データ転送手段と、ファイルシステム解析手段と、ファイルデータキャッシュ手段と、フォルダデータキャッシュ手段と、マスタファイルテーブルキャッシュ手段と、特殊ファイルキャッシュ手段と、ファイル名リストとを備え、
前記データ読出手段は、前記ファイルシステム解析手段及びデータ転送手段からの読み出し要求に従って、前記ストレージから要求されたセクタの内容を読み出し、
前記データ転送手段は、前記読み出されたセクタの内容に基づいて、前記ファイルデータキャッシュ手段、前記フォルダデータキャッシュ手段、前記マスタファイルテーブルキャッシュ手段、及び前記特殊ファイルキャッシュ手段によって決定されたセクタ情報を、ディスクキャッシュを要求したコンピュータに転送し、
前記ファイルシステム解析手段は、前記ファイルデータキャッシュ手段、前記フォルダデータキャッシュ手段、前記マスタファイルテーブルキャッシュ手段、及び前記特殊ファイルキャッシュ手段からの要求に応じて、前記ストレージにフォーマットされているファイルシステムの構造を解析し、
前記ファイル名リストは、OSカーネルの実行ファイル、ドライバファイル、前記汎用オペレーティングシステムの立ち上げ時の画面表示に使用される文字フォントファイル、前記オペレーティングシステム用のレジストリファイル、及び前記ファイルシステムの内部で使用される特殊ファイルのうちの少なくとも何れかを予め指定しており、
前記ファイルデータキャッシュ手段は、前記ファイル名リストで指定されている全てのファイルについて、前記ファイルシステム解析手段を利用して、そのファイルデータが格納されているセクタを取得し、取得したセクタをディスクキャッシュされるものとして決定し、
前記フォルダデータキャッシュ手段は、前記ファイル名リストで指定されている全てのファイルについて、そのファイルが格納されているフォルダについて、前記ファイルシステム解析手段を利用して、そのフォルダデータが格納されているセクタを取得し、取得したセクタをディスクキャッシュされるものとして決定し、
前記マスタファイルテーブルキャッシュ手段は、前記ファイル名リストで指定されている全てのファイル、及び前記全てのファイルが格納されているフォルダについて、前記ファイルシステム解析手段を利用して、前記全てのファイル及びフォルダについての情報が格納されているマスタファイルテーブル内のセクタを取得し、取得したセクタをディスクキャッシュされるものとして決定し、
前記特殊ファイルキャッシュ手段は、前記ファイルシステムが持つジャーナルログファイル又はページングファイルを含む特殊ファイルについて、前記特殊ファイル内のヘッダ情報を読み取り、前記特殊ファイル内の有効なセクタを割り出し、割り出したセクタをディスクキャッシュされるものとして決定するキャッシュサーバ。 - 請求項1に記載のキャッシュサーバにおいて、
ネットワークブートの途中段階で、キャッシュミスヒットのためネットワークブートが中断した場合、ミスヒットとなったセクタの情報を取得し、取得したセクタの情報に基づいて前記ファイル名リストを更新し、前記セクタがマスタファイルテーブル外である場合には、前記マスタファイルテーブルを順次検索し、前記セクタをファイルデータとして持つファイルを前記ファイル名リストに追加し、前記セクタがマスタファイルテーブル内にある場合には、そのファイル情報が格納されているファイルを、前記ファイル名リストに追加するファイル名リスト更新手段を更に備えたキャッシュサーバ。 - ネットワークブートに対応していない汎用オペレーティングシステムを、ネットワークブートに対応したコンピュータで起動するために、前記汎用オペレーティングシステムを格納するストレージと、前記コンピュータとの間にネットワークによって接続されたキャッシュサーバを用いるネットワークブート方法であって、
前記コンピュータは、ローカルディスクと、BIOSと、前記ストレージへのアクセスにリダイレクトする仮想ディスクBIOSサービスルーチンと、前記ローカルディスクへのアクセスを前記ストレージへのアクセスにリダイレクトする仮想ディスクドライバと、ディスクキャッシュ手段と、起動データ記憶装置とを備え、
前記キャッシュサーバは、前記BIOSが提供するサービスルーチンをフックして、前記ローカルディスクへのアクセスを、前記仮想ディスクBIOSサービスルーチンと前記仮想ディスクドライバとが利用するディスクキャッシュの内容を生成するために、データ読出手段と、データ転送手段と、ファイルシステム解析手段と、ファイルデータキャッシュ手段と、フォルダデータキャッシュ手段と、マスタファイルテーブルキャッシュ手段と、特殊ファイルキャッシュ手段と、ファイル名リストとを備え、
前記データ読出手段は、前記ファイルシステム解析手段及びデータ転送手段からの読み出し要求に従って、前記ストレージから、要求されたセクタの内容を読み出し、
前記ファイルシステム解析手段は、前記ファイルデータキャッシュ手段、前記フォルダデータキャッシュ手段、前記マスタファイルテーブルキャッシュ手段、及び前記特殊ファイルキャッシュ手段の要求に応じて、前記ストレージにフォーマットされているファイルシステムの構造を解析し、
前記ファイル名リストは、OSカーネルの実行ファイル、ドライバファイル、前記汎用オペレーティングシステムの立ち上げ時の画面表示に使用される文字フォントファイル、前記オペレーティングシステム用のレジストリファイル、及び前記ファイルシステムの内部で使用される特殊ファイルのうちの少なくとも何れかを予め指定しており、
前記ファイルデータキャッシュ手段は、前記ファイル名リストで指定されている全てのファイルについて、前記ファイルシステム解析手段を利用して、そのファイルデータが格納されているセクタを取得し、取得したセクタをディスクキャッシュされるものとして決定し、
前記フォルダデータキャッシュ手段は、前記ファイル名リストで指定されている全てのファイルについて、そのファイルが格納されているフォルダについて、前記ファイルシステム解析手段を利用して、そのフォルダデータが格納されているセクタを取得し、取得したセクタをディスクキャッシュされるものとして決定し、
前記マスタファイルテーブルキャッシュ手段は、前記ファイル名リストで指定されている全てのファイル、及び前記全てのファイルが格納されているフォルダについて、前記ファイルシステム解析手段を利用して、前記全てのファイル及びフォルダについての情報が格納されているマスタファイルテーブル内のセクタを取得し、取得したセクタをディスクキャッシュされるものとして決定し、
前記特殊ファイルキャッシュ手段は、前記ファイルシステムが持つジャーナルログファイル又はページングファイルを含む特殊ファイルについて、前記特殊ファイル内のヘッダ情報を読み取り、前記特殊ファイル内の有効なセクタを割り出し、割り出したセクタをディスクキャッシュされるものとして決定し、
前記データ転送手段は、前記読み出されたセクタの内容に基づいて、前記ファイルデータキャッシュ手段、前記フォルダデータキャッシュ手段、前記マスタファイルテーブルキャッシュ手段、及び前記特殊ファイルキャッシュ手段によって決定されたセクタ情報と、このセクタから読み出されるハッシュコードとを、ディスクキャッシュを要求したコンピュータに転送し、
前記起動データ記憶装置は、OSカーネルの実行ファイル、ドライバファイル、及び前記汎用オペレーティングシステムの立ち上げ時の画面表示に使用する文字フォントファイルのうちの何れかに含まれるデータを、セクタ単位で予め記憶しており、
前記ディスクキャッシュ手段は、前記起動データ記憶装置に記憶されている各データについてハッシュコードを予め計算しておき、計算したハッシュコードのなかに、前記データ転送手段から転送されたハッシュコードと一致するものがない場合には、前記データ転送手段から、そのセクタから読み出したデータを取得し、ディスクキャッシュに展開する一方、一致するものがある場合には、前記起動データ記憶装置の該データを取得し、ディスクキャッシュに展開するようにしたネットワークブート方法。 - ネットワークブートに対応していない汎用オペレーティングシステムを、ネットワークブートに対応したコンピュータで起動するために使用されるキャッシュサーバに適用されるコンピュータ読取可能なプログラムであって、
前記キャッシュサーバは、前記汎用オペレーティングシステムを格納するストレージと、ネットワークブートする前記コンピュータとの間にネットワークによって接続され、前記コンピュータ上のBIOSが提供するサービスルーチンをフックして、前記コンピュータに備えられたローカルディスクへのアクセスを、前記ストレージへのアクセスにリダイレクトする前記コンピュータの仮想ディスクBIOSサービスルーチンと、前記オペレーティングシステムにインストールされ、前記ローカルディスクへのアクセスを前記ストレージへのアクセスにリダイレクトする仮想ディスクドライバとが利用するディスクキャッシュの内容を生成するために、データ読出手段と、データ転送手段と、ファイルシステム解析手段と、ファイルデータキャッシュ手段と、フォルダデータキャッシュ手段と、マスタファイルテーブルキャッシュ手段と、特殊ファイルキャッシュ手段と、ファイル名リストとを備え、前記ファイル名リストは、OSカーネルの実行ファイル、ドライバファイル、前記汎用オペレーティングシステムの立ち上げ時の画面表示に使用される文字フォントファイル、前記オペレーティングシステム用のレジストリファイル、及び前記ファイルシステムの内部で使用される特殊ファイルのうちの少なくとも何れかを予め指定しており、
前記プログラムは、
前記データ読出手段が、前記ファイルシステム解析手段及びデータ転送手段からの読み出し要求に従って、前記ストレージから要求されたセクタの内容を読み出す機能、
前記データ転送手段が、前記読み出されたセクタの内容に基づいて、前記ファイルデータキャッシュ手段、前記フォルダデータキャッシュ手段、前記マスタファイルテーブルキャッシュ手段、及び前記特殊ファイルキャッシュ手段によって決定されたセクタ情報を、ディスクキャッシュを要求したコンピュータに転送する機能、
前記ファイルシステム解析手段が、前記ファイルデータキャッシュ手段、前記フォルダデータキャッシュ手段、前記マスタファイルテーブルキャッシュ手段、及び前記特殊ファイルキャッシュ手段からの要求に応じて、前記ストレージにフォーマットされているファイルシステムの構造を解析する機能、
前記ファイルデータキャッシュ手段が、前記ファイル名リストで指定されている全てのファイルについて、前記ファイルシステム解析手段を利用して、そのファイルデータが格納されているセクタを取得し、取得したセクタをディスクキャッシュされるものとして決定する機能、
前記フォルダデータキャッシュ手段が、前記ファイル名リストで指定されている全てのファイルについて、そのファイルが格納されているフォルダについて、前記ファイルシステム解析手段を利用して、そのフォルダデータが格納されているセクタを取得し、取得したセクタをディスクキャッシュされるものとして決定する機能、
前記マスタファイルテーブルキャッシュ手段が、前記ファイル名リストで指定されている全てのファイル、及び前記全てのファイルが格納されているフォルダについて、前記ファイルシステム解析手段を利用して、前記全てのファイル及びフォルダについての情報が格納されているマスタファイルテーブル内のセクタを取得し、取得したセクタをディスクキャッシュされるものとして決定する機能、
前記特殊ファイルキャッシュ手段が、前記ファイルシステムが持つジャーナルログファイル又はページングファイルを含む特殊ファイルについて、前記特殊ファイル内のヘッダ情報を読み取り、前記特殊ファイル内の有効なセクタを割り出し、割り出したセクタをディスクキャッシュされるものとして決定する機能
をコンピュータに実現させるためのプログラム。 - 請求項4に記載のプログラムにおいて、
ネットワークブートの途中段階で、キャッシュミスヒットのためネットワークブートが中断した場合、ミスヒットとなったセクタの情報を取得し、取得したセクタの情報に基づいて前記ファイル名リストを更新し、前記セクタがマスタファイルテーブル外である場合には、前記マスタファイルテーブルを順次検索し、前記セクタをファイルデータとして持つファイルを前記ファイル名リストに追加し、前記セクタがマスタファイルテーブル内にある場合には、そのファイル情報が格納されているファイルを、前記ファイル名リストに追加する機能
を更にコンピュータに実現させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006296617A JP4358217B2 (ja) | 2006-10-31 | 2006-10-31 | キャッシュサーバ、ネットワークブート方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006296617A JP4358217B2 (ja) | 2006-10-31 | 2006-10-31 | キャッシュサーバ、ネットワークブート方法、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008112423A JP2008112423A (ja) | 2008-05-15 |
JP4358217B2 true JP4358217B2 (ja) | 2009-11-04 |
Family
ID=39444885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006296617A Expired - Fee Related JP4358217B2 (ja) | 2006-10-31 | 2006-10-31 | キャッシュサーバ、ネットワークブート方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4358217B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112008003910T5 (de) * | 2008-06-20 | 2011-06-09 | Lenovo (Singapore) Pte. Ltd. | Plattenloser Client unter Verwendung eines Hypervisors |
JP5885851B2 (ja) * | 2011-10-21 | 2016-03-16 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. | 特権ドメインでの基本入出力システム(bios)機能の提供 |
IN2014DN03053A (ja) | 2011-10-21 | 2015-05-08 | Hewlett Packard Development Co | |
KR102064549B1 (ko) | 2014-12-03 | 2020-01-10 | 한국전자통신연구원 | 가상 머신 호스트 서버 장치 및 그 동작 방법 |
JP2021012441A (ja) * | 2019-07-04 | 2021-02-04 | 東芝テック株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
-
2006
- 2006-10-31 JP JP2006296617A patent/JP4358217B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008112423A (ja) | 2008-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5307706B2 (ja) | オペレーティングシステムの段階的ブート処理 | |
US6993642B2 (en) | Method and system for creating and employing an operating system having selected functionality | |
US8898167B2 (en) | Method of accessing files in electronic devices | |
US9052918B2 (en) | Management of multiple software images with shared memory blocks | |
JP4863154B2 (ja) | 起動イメージ提供システム及びその動作方法、ブートノード装置、ブートサーバ装置並びにその動作プログラム | |
JP2012503806A (ja) | ターボブートシステム及び方法 | |
JP2006196018A (ja) | Biosをホスト・コンピュータに提供する方法と配置 | |
JP2009509265A (ja) | パーソナルインターネットコミュニケータ用のハードドライブのためのブート性能最適化 | |
US9971696B2 (en) | File-based client side cache | |
JP4358217B2 (ja) | キャッシュサーバ、ネットワークブート方法、及びプログラム | |
US20150363320A1 (en) | Write back caching of boot disk in a uefi environment | |
JP4665065B2 (ja) | 記憶装置およびデータスマグリングの方法 | |
US11030047B2 (en) | Information handling system and method to restore system firmware to a selected restore point | |
US10795769B2 (en) | Facilitating the identification of a service operating system when a main operating system fails | |
JP7102524B2 (ja) | 複数のバイナリイメージのファームウェア公開 | |
JP2002259196A (ja) | データ画像キャッシュ | |
JP2006011506A (ja) | 起動イメージ提供システム及び方法、ブートノード装置、ブートサーバ装置並びにプログラム | |
JP2009230433A (ja) | ネットワークブート装置、プログラム及び方法 | |
TWI514279B (zh) | 伺服器系統與韌體更新方法 | |
US9971607B1 (en) | Method of accessing files in electronic devices | |
JP3732764B2 (ja) | Os立上げ方法およびos立上げシステム | |
JP2010237742A (ja) | 仮想マシンサーバ、仮想マシン制御方法及び仮想マシン制御プログラム | |
KR101618999B1 (ko) | 네트워크 부트 시스템 | |
JP7087087B2 (ja) | オペレーティングシステムをコンピュータ可読媒体上に記憶するためのbiosコード | |
US20220413888A1 (en) | Virtualization engine for virtualization operations in a virtualization system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090714 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090805 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120814 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120814 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130814 Year of fee payment: 4 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |