JP2002511615A - コンピュータ読取可能な記録媒体、プログラム・コードをインストール・ディスクからディスクにインストールする方法、プログラム・コードをロジカル・ディスク上にインストールして最適化する方法 - Google Patents

コンピュータ読取可能な記録媒体、プログラム・コードをインストール・ディスクからディスクにインストールする方法、プログラム・コードをロジカル・ディスク上にインストールして最適化する方法

Info

Publication number
JP2002511615A
JP2002511615A JP2000543892A JP2000543892A JP2002511615A JP 2002511615 A JP2002511615 A JP 2002511615A JP 2000543892 A JP2000543892 A JP 2000543892A JP 2000543892 A JP2000543892 A JP 2000543892A JP 2002511615 A JP2002511615 A JP 2002511615A
Authority
JP
Japan
Prior art keywords
disk
file
files
program
sequence list
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.)
Granted
Application number
JP2000543892A
Other languages
English (en)
Other versions
JP2002511615A5 (ja
JP4235362B2 (ja
Inventor
ジェイムズ エドワード ウォルシュ、
ベンジャミン アーロン ルディアック−グールド、
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2002511615A publication Critical patent/JP2002511615A/ja
Publication of JP2002511615A5 publication Critical patent/JP2002511615A5/ja
Application granted granted Critical
Publication of JP4235362B2 publication Critical patent/JP4235362B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3485Performance evaluation by tracing or monitoring for I/O devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 プログラム始動時間を改善するように、ハードディスク・ドライブ上にファイルをインストールする。プログラムの構築が完了すると、プログラムが始動する。ディスク集中型オペレーションに付随するディスクの動きは、ファイル部がプログラム又はコマンドの始動中にディスクから読み取られる順を決定するためにモニタされる。このデータは、ファイルの種々の部分が始動中に読み取られる順を示す、ロード・シーケンス・リストの作成に用いられる。インストール・ディスクは、ファイルとロード・シーケンス・リストとを備えている。インストール・プロセス中に、インストール・プログラムは、データをロード・シーケンス・リストから読み取り、ファイル部を書き込む。そこで、、それらは、ハードディスク・ドライブ上で連続するクラスタのロード・シーケンス・リストに記してある順で保存される。コンピュータは、始動関連データをディスクから連続ディスク・クラスタの適切な順で読み取ることができるので、ディスク・ヘッドが始動関連データを読むために非連続クラスタ間で移動する場合のディスク・アクセスのために生じる無駄な時間を最小限にする又は解消することができる。

Description

【発明の詳細な説明】
【0001】 (技術分野) 本発明は、ハードディスク・ドライブにデータを保存する技術に関し、特に、
プログラムの立上げ及び他のディスク集約型オペレーション中に、ディスクから
データを読み取るために必要な時間を短縮するようにしてデータを保存する技術
に関する。
【0002】 (発明の背景) コンピュータ・データの保存に用いる磁気ディスク・ドライブの分野において
、分割化という用語は、ロジカル・ディスク又はディスク区画におけるファイル
の非連続性の構成を意味している。分割ファイルは、ロジカル・ディスクの異な
る領域に分散する同じディスク・ファイルの部分を、又はファイル全体の分散を
意味するので、ファイル間に未使用のスペースが存在することになる。分割化は
、古いファイルがロジカル・ディスクから削除されて、新しいファイルが加えら
れる際に、しばしば行われる。ファイルが削除されて、使用済みのスペースが使
用可能になると、コンピュータのオペレーティング・システムは、新しいファイ
ルをロジカル・ディスクの空白領域に書き込む。しかし、新しいファイルが非常
に大きくて空白領域に収容できない場合、オペレーティング・システムは、ファ
イルの部分を幾つかの空白領域に保存して、ファイルを分割するので、それがロ
ジカル・ディスクの全体にわたって分散することになる。同様に、既存ファイル
のサイズが、ファイルが保存されるスペースに隣接する連続自由スペースのサイ
ズを越えるほど大型になると、その既存ファイルを分割することができる。オペ
レーティング・システムは、ファイルの各々の部分が保存された記録を維持する
ので、ファイルをロジカル・ディスクから読み取る時に、ファイルを適切な順序
で検索することができる。
【0003】 ファイルが最初から最後まで“線形で”読み取られる状態において、分割化は
、ディスク・アクセスを遅延させて、ディスク動作の全体的な性能を低下させる
。ユーティリティ・プログラムは、分割ディスク上のファイルの分割状態を戻す
ために使用できる。ファイルを再構成して、各々ファイルをディスクの連続部に
保存するほかに、これらのプログラムは、ロジカル・ディスクの開始部に全て保
存するように、ファイルを通常は構成する。これは、ディスク末端の空白領域を
統合することになり、効果的と考えられる。なぜならば、オペレーティング・シ
ステムは、新しいファイルの保存のために十分に使用できるスペースを設定する
ための調査の必要がなくなり、新しいファイルは、連続するクラスタに(すなわ
ち、分割してない)更に保存しやすくなり、ディスク全体に分散するクラスタの
グループより数量的に小型になるからである。
【0004】 分割化の復帰は、優れた手法であり、非分割ファイルを最初から最後まで線形
で読み取る時の性能を改善する。しかし、一部のオペレーションの実行時に、コ
ンピュータは、末端ファイルから僅かのブロックだけしばしば読みながら、ある
予測自在のシーケンスに関して幾つか異なるファイルからデータのブロックを検
索する。例えば、ワード処理プログラムを始動すると、主実行部の第1の部分、
動的にリンクしたライブラリの一部、主実行部の第2の部分、採択ファイルなど
をロードする結果になる。似たようなディスクの作動状態が、あるプログラム・
コマンド(例えば“ファイル・オープン”)の選択時に現れる。これらのタイプ
のディスク集中型オペレーションは、ある物理的クラスタから別のクラスタに多
くのディスク・ヘッドが移動する結果になる。最近のマイクロプロセッサはディ
スク・ドライブの平均探索時間と比べると高速であり、多くの異なるファイルを
代表的なプログラムの始動のためにディスクから読み取らねばならないので、プ
ログラムの始動に必要な時間の大部分が、ディスク・ヘッドがあるクラスタから
別のクラスタに移動することを待つためにアイドル状態になるマイクロプロセッ
サに費やされることになる。
【0005】 以上を鑑みて、ディスク集中型オペレーションを実行(例えば、あるコマンド
に付随するコードを始動又はプログラムを始動)する時に、ロジカル・ディスク
区画(及び物理的ディスク)のディスク集中型オペレーション中に用いたデータ
・ブロックを、それらがその動作中にアクセスした順で構成すると、優れた方式
になる。これは、プログラム・ファイルがデザインによって“分割化”されるの
で、ロジカル・ディスクから要求データをロードするために必要な非逐次的ディ
スク・アクセスの数を減少することによって、性能を改善することになる。
【0006】 従来の技術は、アプリケーション始動プロセスを最適化するために、このよう
にしてアプリケーション・ファイルを再構築又は分割化する方式を述べている。
例えば、IBM技術公開資料TDB0196.0112号では、プロファイル・
ガイド・ファイル・システムの再構築について述べている。ファイル参照パター
ンに関する静的想定に基づいてファイルを構成する代わりに、このシステムは、
プログラム走行時のファイル・アクセス・パターンを動的に定めると共にディス
ク・スペースを割り当てて、プログラムが走行しているハードウェア/ソフトウ
ェア構造ごとにファイル・システムの性能を最大限にする。その実現のために、
ファイル・システムの動きが、プログラム立上げ中にモニタされ、アクセスした
ディスク・セクタが、プロファイル・データを含んでいるファイルにログされる
。所定の間隔で、プロファイル・データは、更に最適なファイル割当構造が可能
かどうかについて決定するために分析される。その場合、オペレータは、プロフ
ァイル・データで指示されたディスク・アクセス・パターンに基づいて、ファイ
ルにディスク・スペースを割り当てる再構築プログラムを実行することができる
。プログラムは、ディスク・ブロック・アクセス・アドレスをプロファイル・デ
ータからそれらに関連するファイルにマップし、頻繁にアクセスされたブロック
をディスク上で物理的に互いに近づけて配置する。最終的なディスク・ブロック
の割当構造は、その指定のコンピュータ構成に適した共通アクセス・パターンに
相応して最適化される。
【0007】 マイクロソフト社は、その“WINDOWS98”オペレーティング・システ
ムが、アプリケーション・プログラム始動中にディスクの動きをモニタすること
を可能にして、保存ファイルを再構成するので、立上げ中に用いたデータ・ブロ
ックが逐次的な形態で構成できる特長を備えていることも発表している。
【0008】 従来技術はプログラム立上げ用のファイルを最適化するプロセスについて述べ
ているが、これらの技術は、プログラムをコンピュータ上でインストールして、
ユーザが始動した後に実施される。この方式には幾つかの欠点がある。例えば、
最適化は、プログラムをインストールして始動し、立上げプロセスをモニタする
まで実施できない。プログラム立上げ中にディスク・アクセスをモニタするプロ
セスは、立上げプロセスを大幅に遅らせると思われる。立上げプロセスのモニタ
後に、コンピュータは、時間消費型の最適化ルーチンを実行しなければならない
。これは、ユーザが最適化プロセス中にコンピュータを使用することを禁止する
か、又はユーザにコンピュータを作動状態にしておくことを要求するので、ルー
チンが数時間後に実行されることになる。結局、この方式は、立上げプロセスの
モニタと最適化だけに適しており、あるコマンド(例えば、“ファイル・オープ
ン”)に付随するコードのロードのように、他のディスク集中型オペレーション
に適していないことになる。
【0009】 最適化の特長がオペレーティング・システム・ソフトウェアで具体化される際
に、ユーザは、これらの最適化の特長を活用するために、オペレーティング・シ
ステムの適切なバージョンのコピーを入手してインストールしなければならない
。多くのケースで、ユーザは、新しい特長を利用するために、それらのオペレー
ティング・システム・ソフトウェアのアップグレードに必要な金銭又は時間を費
やすことを好まない、又は、自ら進んで決断しないと思われる。これは、多くの
ユーザが、古いバージョンのオペレーティング・システムを使用し、アプリケー
ションの立上げ時に改善した性能を体験できない結果になる。
【0010】 従って、アプリケーション又はコマンドの始動時にアクセスする順で、ロジカ
ル・ディスクにデータを保存するシステムと方法とを改善する必要性が、従来技
術にあると考えられる。このような方法は、ロジカル・ディスクにインストール
した後に、アプリケーション・プログラム・ファイルをモニタする必要性を解消
すると共に、ユーザに新しいバージョンのオペレーティング・システム・ソフト
ウェアを入手してインストールすることも要求しない。
【0011】 (発明の要約) 本発明は、プログラムをインストール又は後で再構成することによって、前述
の必要性を満足するものである。そこで、プログラムの始動時又はコマンドの実
行時に読み取られる始動関連部は、通常の始動中に読み取られる順にできるだけ
近い順で保存される。インストール中又はその後に用いるソフトウェアは、必要
なプログラム・ファイルとロード・シーケンス・リストとを具備し、それは、フ
ァイルの始動関連部が読み取られる順を指示する。インストール中に又は後の順
位再設定中に、ファイルの始動関連部はロード・シーケンス・リストで指示され
た順で構成されるので、始動関連部はロジカル・ディスク上で連続するクラスタ
に好都合に保存される。ファイルの残りの部分は、ディスクの他の自由スペース
にインストールされる。ユーザがプログラムを実行する時に、立上げ時間が短縮
される。なぜならば、コンピュータは、ロジカル・ディスク上で連続するクラス
タからの適切な順で、立上げファイルを読み取ることができるので、非連続クラ
スタからの読取データに付随する遅延が減少するからである。
【0012】 全体的に述べたように、本発明は、コンピュータ読取自在のインストール媒体
を提供する。従って、プログラムは、プログラム又は他のディスク集中型オペレ
ーションを立ち上げる又は始動するプロセスを高速にするようにして、インスト
ールされる又は後で再構成されることができる。インストール媒体は、ロード・
シーケンス・リストと、始動関連部を有する複数のファイルとを備えている。ロ
ード・シーケンス・リストは、ファイルの始動関連部がロジカル・ディスク上に
構成される順を指示する。インストール媒体は、インストール又は順位再設定ス
テップを実施するコンピュータ読取自在の命令部も備えている。インストール又
は順位再設定は、ロジカル・ディスク上で連続する自由クラスタの少なくとも1
つのグループを識別することも含んでいる。複数のファイルの始動関連部は連続
自由クラスタのグループにインストールされ、始動関連部は、ロード・シーケン
ス・リストで指示された順でハードディスク・ドライブに保存される。
【0013】 別の見解では、本発明は、プログラム・コードをインストール・ディスクから
ハードディスク・ドライブにインストールする方法を提供する。この方法は、イ
ンストール・ディスクに保存されたロード・シーケンス・リストからエントリを
読み取るステップを備えている。エントリの各々が、プログラム・コードに付随
するファイル部を識別する。ロード・シーケンス・リストから読み取られたエン
トリごとに、エントリで識別したファイル部が、インストール・ディスクから読
み取られ、ハードディスク・ドライブ上で連続する自由クラスタのグループに書
き込まれる。ファイル部は、ロード・シーケンス・リストのエントリに対応する
順でハードディスク・ドライブに保存される。
【0014】 更に別の見解では、本発明は、プログラム・コードを作成し、それをインスト
ール・ディスクからロジカル・ディスクにインストールする方法を提供する。こ
の方法は、始動関連部をもつファイルを作成し、始動関連部がプログラム始動中
又は他のディスク集中型オペレーション中に読み取られる順を決定することを含
んでいる。ロード・シーケンス・リストは、始動関連部がプログラム始動中に読
み取られる順を反映するように作成される。ファイルとロード・シーケンス・リ
ストとインストール・プログラムとが、インストール・ディスクに保存されてい
る。インストール・プログラムは、ロジカル・ディスク上で連続する自由クラス
タの少なくとも1つのグループを識別し、連続自由クラスタの1つ又は複数のグ
ループに複数のファイルの始動関連部をインストールする、コンピュータ読取自
在の命令部を備えている。始動関連部は、ロード・シーケンス・リストで指示さ
れた順でロジカル・ディスクに保存される。
【0015】 更に別の見解では、本発明は、プログラム・コードをロジカル・ディスクにイ
ンストールして最適化する方法を提供する。この方法は、ディスク集中型オペレ
ーションに付随する部分を有する複数のファイルを作成し、ディスク集中部がデ
ィスク集中型オペレーション中に読み取られる順を定めるステップを備えている
。ロード・シーケンス・リストは、ディスク集中部がディスク集中型オペレーシ
ョン中に読み取られる順を示すために作成される。複数のファイルとロード・シ
ーケンス・リストがロジカル・ディスクにインストールされている。インストー
ル後、ディスク集中部は、ロジカル・ディスク上で連続する自由クラスタの少な
くとも1つのグループを識別し、自由クラスタにディスク集中部を再構成するこ
とによって最適化される。ディスク集中部は、ロード・シーケンス・リストで指
示された順でロジカル・ディスクに保存される。
【0016】 本発明の種々の見解は、開示された実施例の次に示す詳細な説明を検討し、添
付の図面と請求項を参照すると、更に明確に理解できると思われる。
【0017】 (詳細な説明) 本発明は、ハードディスク・ドライブにプログラムをインストールする、改善
されたシステムと方法とを意図している。代表的な実施例では、アプリケーショ
ン関連ファイルがロジカル・ディスク区画に(すなわち、物理的ディスク・ドラ
イブのロジカル・サブセットに)インストールされているので、プログラムの始
動時に又はコマンドの選択時に読み取られる始動関連部が、始動中に読み取られ
る順で保存される。インストール・ソフトウェアは、必要なファイルとロード・
シーケンス・リストとを搭載して、ファイルの始動関連部が始動中にロードされ
る順で識別する。インストール中に、始動中に用いるファイルの部分がロード・
シーケンス・リストで指示された順でインストールされ、始動関連部がロジカル
・ディスク上で連続するクラスタに好都合に保存される。残りのファイルは、ロ
ジカル・ディスクの他の自由スペースにインストールされる。代わりに、プログ
ラム・ファイルは従来の方式でインストール可能であり、始動関連部が次にロー
ド・シーケンス・リストで指示された順で再び構成できる。ユーザがプログラム
を始動するか又はコマンドを選択すると、始動時間が短縮される。なぜならば、
コンピュータは、ディスク上で連続するクラスタから適切な順で、始動関連部の
ファイルを読み取るので、非連続クラスタからのデータの読取に付随する遅延を
低減できるからである。
【0018】 ここで図面を見ると、類似の番号は幾つかの図面の全体にわたって類似の構成
要素を表していて、本発明の見解と代表的な動作環境について次に説明される。
【0019】 <代表的な動作環境> 図1と次に示す説明では、本発明が具体化される適切なコンピューティング環
境について簡単に全体的に述べることを意図している。本発明はパーソナル・コ
ンピュータに付随するハードディスク・ドライブにアプリケーション・プログラ
ムをインストールするために用いる立上げプログラムの全体について説明するが
、当業者は、本発明が、アプリケーション・プログラム・モジュール、オペレー
ティング・システム・プログラム・モジュール、ユーティリティ・プログラム・
モジュールなどを含めた、多種多様なプログラム・モジュールと組合せて実現で
きることも認めると思われる。全体的に、プログラム・モジュールは、特定のタ
スクを行う又は特定の抜粋データ・タイプを適用する、ルーチン、プログラム、
コンポーネント、データ構造などを備えている。更に、当業者は、本発明が、ハ
ンドヘルド・デバイス、マルチプロセッサ・システム、マイクロプロセッサ・ベ
ース又はプログラム設定自在の消費者向け電子機器、ミニコンピュータ、メイン
フレーム・コンピュータなどを含めた、他のコンピュータ・システム構成を用い
て実現できることも認めると思われる。本発明は、タスクが通信網を経由してリ
ンクする遠方処理デバイスで行われる分散コンピューティング環境でも実施でき
る。分散コンピューティング環境では、プログラム・モジュールは、ローカル及
びリモートの両方の記憶装置に位置している。
【0020】 図1を参照すると、本発明を実現する代表的なシステムは、処理装置21と、
システム・メモリ22と、システム・メモリを処理装置21に結合するシステム
・バス23とを搭載する、従来のパーソナル・コンピュータ20を搭載している
。システム・メモリ22は、読取専用メモリ(ROM)24と、ランダム・アク
セス・メモリ(RAM)25とを搭載している。基本入力/出力システム26(
BIOS)は、立上げ中のように、パーソナル・コンピュータ20内の構成要素
間における情報の転送を支援する、基本ルーチンを備えて、ROM24に保存さ
れている。パーソナル・コンピュータ20は、ハードディスク・ドライブ27と
、例えば、脱着自在のディスク29から読み取ったり書き込んだりするための脱
着自在の磁気ディスク・ドライブ28と、例えば、CD−ROMディスク31を
読み取る又は他の光学的媒体から読み取ったり書き込んだりするための光ディス
ク・ドライブ30とを更に搭載している。ハードディスク・ドライブ27と、脱
着自在の磁気ディスク・ドライブ28と、光ディスク・ドライブ30は、各々、
ハードディスク・ドライブ・インタフェース32と、磁気ディスク・ドライブ・
インタフェース33と、光ディスク・インタフェース34によってシステム・バ
ス23に接続している。ドライブ及びそれらに付随するコンピュータ読取自在の
媒体は、パーソナル・コンピュータ20に不揮発性記憶装置を呈する。当業者は
、単一のハードディスク・ドライブ27が、物理的ドライブ・デバイスのロジカ
ル・サブセットである1つ又は複数の“区画”又は“ロジカル・ディスク”を搭
載することも認めると思われる。前述のコンピュータ読取自在の媒体の説明はハ
ードディスク・ドライブと脱着自在の磁気ディスクとCD−ROMディスクとを
意味しているが、当業者は、磁気カセット、フラッシュ・メモリ・カード、デジ
タル・ビデオ・ディスク、ベルヌーリ・カートリッジなどのように、コンピュー
タで読み取ることができる他のタイプの媒体も代表的な動作環境にも使用できる
ことを認めると思われる。
【0021】 数多くのプログラム・モジュールが、オペレーティング・システム35(例え
ば、マイクロソフト社の“WINDOWS95”オペレーティング・システム)
と、一組のアプリケーション・プログラム36(例えば、“MICROSOFT
OFFICE”プログラムの組)と、1つ又は複数の他のアプリケーション・プ
ログラム37と、データ38とを含めて、ドライブとRAM25とに保存できる
。オペレーティング・システム・ソフトウェアとアプリケーション・プログラム
は、CD−ROM31又はフロッピー・ディスク29からハードディスク・ドラ
イブ27に一般的にインストールされる。ほとんどのケースで、インストール・
プロセスは、オペレーティング・システム又はアプリケーション関連ファイルと
共にCD−ROM又はフロッピー・ディスクに保存されている、インストール・
プログラム又は立上げプログラムで制御される。
【0022】 ユーザは、コマンドと情報を、マウス42のような指示装置とキーボード40
とを介してパーソナル・コンピュータ20に入力する。他の入力装置(図示せず
)として、マイクロフォンやジョイスティックやゲーム・パッドやサテライト・
ディッシュやスキャナなどがある。これらの及び他の入力装置は、システム・バ
スに結合するシリアル・ポート・インタフェース46を経由して処理装置21に
しばしば接続するか、又は、ゲーム・ポート又はユニバーサル・シリアル・バス
(USB)のような他のインタフェースを用いて結合される。モニタ47又は他
のタイプの表示装置も、ビデオ・アダプタ48のようなインタフェースを経由し
てシステム・バス23に接続している。モニタのほかに、パーソナル・コンピュ
ータは、スピーカ又はプリンタのように、他の周辺出力デバイス(図示せず)も
一般的に搭載している。
【0023】 パーソナル・コンピュータ20は、リモート・コンピュータ49のように1つ
又は複数のリモート・コンピュータに論理的な接続を用いるネットワーク環境で
作動する。リモート・コンピュータ49は、メイン・サーバ(1つ又は複数のメ
ッセージ記憶装置を搭載する)、ファイル・サーバ(1つ又は複数のファイル記
憶装置を搭載する)、ルータ、ピア・デバイス、又は他の共通ネットワーク・ノ
ードになると共に、1つの記憶装置50だけ図1に図示しているが、パーソナル
・コンピュータ20に関連して述べた構成要素の大半又は全てを一般的に搭載し
ている。図1に示す論理接続では、ローカル・エリア・ネットワーク(LAN)
51とワイド・エリア・ネットワーク(WAN)52とを搭載している。このよ
うなネットワーク環境は、事務所、企業規模のコンピュータ・ネットワーク、イ
ントラネット、インターネットでは、ごく普通のことである。
【0024】 LANネットワーク環境で用いる時に、パーソナル・コンピュータ20は、ネ
ットワーク・インタフェース53を経由してLAN51に接続する。WANネッ
トワーク環境で用いる時に、パーソナル・コンピュータ20は、インターネット
のように、WAN52で通信を設定するモデム54又は他の装置を一般的に搭載
している。モデム54は、内部又は外部に位置するが、シリアル・ポート・イン
タフェース46を経由してシステム・バス23に接続している。ネットワーク環
境では、パーソナル・コンピュータ20に関連して示したプログラム・モジュー
ル又はその部分が、遠方記憶装置に保存できる。図示したネットワーク接続は代
表的なものであり、コンピュータ間に通信を設定する他の装置も使用できる。
【0025】 <従来のディスク・ドライブのフォーマット> 本発明の特長について述べる前に、データを従来のハードディスク・ドライブ
に保存する方式について説明すると役立つと思われる。
【0026】 ハードディスク・ドライブは、コンピュータに保存してあるデータをコンピュ
ータで変更することを可能にするので、データを磁気ディスクから読み取ったり
又は書き込んだりすることができる。物理的ディスク・ドライブは、1つ又は複
数の区画を又はロジカル・ディスクを搭載しており、それが物理的ドライブのロ
ジカル・サブセットになる。データは、別のファイルとしてロジカル・ディスク
に普通は保存され、各々ファイルが独自にアクセスできる。各々ファイルが保存
されているディスク上の位置が識別されてデータ構造部に保存されるので、コン
ピュータが、ロジカル・ディスクの任意のファイルに瞬時にアクセスすることが
できる。
【0027】 ハードディスク・ドライブを使用に適したフォーマットにすると、ディスクの
保存領域が、トラックと呼ばれる同心円に分割される。ディスク上のトラックの
数は、ディスクのサイズに依存する。ディスクの各々トラックは、同じ数のセク
タに分割される。一般的に、セクタがスライス状に構成しているので、ディスク
の外端のセクタは、ディスクの内端に近いセクタよりトラックに沿って更に線形
のスペースになる。しかし、各々セクタは、同じ量のデータ、一般的に512バ
イトの保存に用いられる。
【0028】 各々トラックのセクタがクラスタにグループ化されている。セクタがクラスタ
にオペレーティング・システムでグループ化されるので、物理的な制限がない。
ディスク上の全てのトラックが同じ数のクラスタを具備し、ディスクの全てのク
ラスタが同じ数のクラスタを備えている。クラスタは、ディスクのサイズに基づ
いて、1〜64個のセクタを一般的に含んでいて、各々セクタが512バイトの
データを普通は保存している。各々クラスタが独自にアクセスできる。
【0029】 コンピュータのオペレーティング・システムは、ロジカル・ディスクの1つ又
は複数のクラスタに各々ファイルを保存する。大きなファイルはファイルに付随
するデータの全てを保持するために幾つかのセクタを必要とするが、極端に小さ
いファイルは単一のクラスタに保存できる。クラスタが2つ以上のファイルから
データを保存できないので、クラスタの1つ又は複数のセクタは、ファイルがク
ラスタのセクタの全てを完全に満たすほどデータを含んでいない場合、空の状態
を維持する。従って、ディスク・スペースは、各々クラスタに保存したデータ量
が殆どのファイルのサイズと比べると明らかに小さい場合に、最も効率的に用い
られる。
【0030】 磁気ハードディスク・ドライブは、幾つかの堅固なアルミニウム・ディスクの
スタック、又はプラターを普通は含んでいて、それらには磁性材料が塗布されて
いる。各々プラターは、その最上部と底部の両方の表面にデータを保存できる。
データは、ディスク表面の領域を磁化して、ディスクの各々にエンコードされる
。データは、読取/書込ヘッドを用いてディスクから検索するか又は追加される
。磁気ディスク・ドライブの各々ヘッドは、回転アームに固定した小さな電磁石
から成り、電磁石はディスク表面に非常に近接して位置している。1つのこのよ
うなヘッドが、各々プラターの各々記録面に設けられている。アームは、全体的
に放射状の通路のディスク表面の全体で前後にヘッドを回転させる。ヘッド・ア
クチュエータが、アームを回転させて、ヘッドの動きを制御する。データがディ
スクに書き込まれると、ヘッドは、データが書き込まれる該当するディスク領域
に位置している。ヘッドに送られた電流が、ヘッドの近くのディスクの狭い領域
を磁化する磁界を生成する。この狭い磁化領域がデジタル・ビットを表している
。同様に、データがディスク・ドライブから読み取られると、ヘッドがディスク
の該当する磁化領域上に位置して、ヘッドに電流を誘導する。ヘッドに誘導され
た電流が、そこで、デジタル・データにデコードされる。
【0031】 ディスク・ドライブのプラターが、1つのスピンドルに連なっている。スピン
ドルは、一定速度で調和してディスクを回転させるモータに連なっている。ディ
スクのセクタは異なる量のスペースになるが、各々セクタ内に保存したデータ量
は同じである。そこで、ディスクが一定速度で回転するので、ディスク上のセク
タの位置にかかわらず、同じ量のデータを検索することが可能になる。
【0032】 ディスクの新しいクラスタにアクセスすると、2つの機械的動作が、ヘッドが
データを読み取る又は書き込むことを実際に始める前に実施されなければならな
い。まず、ヘッドが、その現在位置から、指定クラスタを含んでいるトラックに
放射状に移動する。“探索時間”は、ヘッドを保持するアームが、慣性と摩擦の
影響を克服して、その動きに関与するために必要な時間を意味する。探索時間は
、ヘッドがその移動後に固定位置に安定するために必要な時間である“安定時間
”も含んでいる。第2に、ヘッドは、希望データを含んでいるクラスタが、ヘッ
ドの下方で回転することを待機しなければならない。この時間が“回転待機時間
”と呼ばれる。ディスクが一定速度で回転するので、ヘッドが希望クラスタがそ
の下方を通過することを待機しなければならない最長時間が、プラターが1回転
するために必要な時間になる。従って、新しいクラスタの各々アクセスが、ディ
スクの適正領域にアクセスするという機械的要求に主として起因する、固有の遅
延を招くことになる。
【0033】 オペレーティング・システムは、ロジカル・ディスクに保存したファイルの位
置の記録を維持しなければならない。幾つかのデータ構造が、ファイル・アクセ
スに用いられている。ロジカル・ディスクの各々セクタは、ロジカル・ディスク
のセクタの位置に基づく、独自の識別番号を備えている。同様に、各々クラスタ
が独自のクラスタ番号を備えている。識別番号は、隣接するセクタとクラスタが
連続する番号になるように指定されている。ロジカル・ディスクのどの部分をフ
ァイル・データの保存に用いるかについて決定するために用いる主要データ構造
が、ファイル指定テーブル(FAT)である。他のファイル・システムは、高性
能ファイル・システム(HPFS)とNTファイル・システム(NTFS)とを
含んでいる。本発明はFATファイル・システムに関連して述べているが、本発
明は他のタイプのファイル・システムにも適用できる。
【0034】 FATファイル・システムでは、FATが、区画又はロジカル・ディスクの開
始部の近くに保存され、ロジカル・ディスクのクラスタごとにエントリを有して
いる。クラスタは、それらのクラスタ番号に準じて、連続してFATにリストさ
れている。クラスタごとのFATエントリは、そのファイルの次の部分が含まれ
ているクラスタの番号を有している。ファイルの最終データを有するクラスタの
FATエントリは、ファイル末端(EOF)エントリをを有している。従って、
ロジカル・ディスクに保存した各々ファイルは、1つ又は複数のクラスタのチェ
ーンとしてFATで表現される。FATは、各々クラスタがファイルに割り当て
られているかどうかについて指示するが、どのファイルに或るクラスタが属する
かについて、コンピュータのオペレーティング・システムに直接指示しない。
【0035】 前述のように、ディスク・スペースは、各々クラスタが明らかに小さい(例え
ば、4KB)場合に最も効率的に使用できる。しかし、ディスク分割部のFAT
のサイズから、ロジカル・ディスクに含めることができるクラスタの最大数が、
従って、クラスタのサイズが決まることになる。例えば、FAT16ファイル・
システムでは、FATは、16ビットの数を用いて、各々クラスタを表している
。これが、ディスク上で最大で65,536(すなわち、64K)のクラスタを
可能にする。ディスクのサイズは、表1に示すように、各々クラスタの最大サイ
ズを決めるために、FATのサイズで分割できる。
【0036】
【表1】 FAT32ファイル・システムは、28ビットの数を用いて、各々クラスタを表
して、228クラスタのトラックを保つので、4Kバイト以下のクラスタを特に
大型のロジカル・ディスクで可能にする。FAT32は、“WINDOWS95
”オペレーティング・システムのOSR2(OEMサービス・リリース2)バー
ジョン、及び“WINDOWS98”オペレーティング・システムのように、次
の“WINDOWS”オペレーティング・システムで使用できる。
【0037】 ディレクトリと呼ばれるデータ構造は、ロジカル・ディスクに保存したサブデ
ィレクトリとファイルの全てのリスト(その一部はディレクトリ・ビット・セッ
トと共にレギュラー・ファイルとして保存)を備えている。ルート・ディレクト
リは、ルート・ディレクトリが親ディレクトリを有していないと共にファイル・
データの保存に用いるセクタの前のロジカル・ディスクの開始部の近くに一般的
に保存されるところが、サブディレクトリと異なっている。ディレクトリはクラ
スタ番号を有するファイルごとにエントリをもち、そこに、そのファイルの最初
の部分が保存されている。各々ファイルの最初のクラスタ番号を保存することに
より、ディレクトリは各々ファイルをFATに結びつけている。
【0038】 ロジカル・ディスクのファイルにアクセスするために、コンピュータのオペレ
ーティング・システムは、ファイルのディレクトリ・エントリを読んで、ファイ
ル・データが保存されている最初のクラスタに対応するFATエントリを決定す
る。オペレーティング・システムは、次に、ファイルの最初のFATエントリか
ら始まるFATエントリの全体的なチェーンを読む。FATからクラスタのチェ
ーンと最初のクラスタの位置を用いると、オペレーティング・システムは、ファ
イルに属する全てのクラスタを決定し、それに準じて、各々クラスタにアクセス
することができる。
【0039】 データがロジカル・ディスクに加えられる又は削除されると、ディスクは分割
状態になる。分割化は、ロジカル・ディスク上で隣接しないクラスタに単一ファ
イルの部分を保存することを意味する。ファイルがロジカル・ディスクに書き込
まれると、オペレーティング・システムは、FATの自由クラスタ・リストで識
別した空白スペースにデータを保存する。データの保存に用いる空白スペースは
、幾つかの非隣接クラスタを備えている。
【0040】 <始動時間を改善するためのプログラムのインストール又は再構成> 図2乃至図7は、プログラムの始動時間を改善する方式において、アプリケー
ション関連ファイルをインストールする代表的な方法を示す。当業者は、本発明
が、ワシントンのレドモンドのマイクロソフト社が発表したアプリケーション・
プログラムの“MICROSOFT・OFFICE”の組を含めて、多種多様な
アプリケーション、ユーティリティ、オペレーティング・システムに関係したプ
ログラムに関連して採用できることを認めるものと思われる。
【0041】 従来技術と同様に、本発明は、ファイルの部分をプログラム始動中にロジカル
・ディスクから読み取る順を決定しなければならない。しかし、この決定を実施
して、ファイルをロジカル・ディスクにインストールした後にファイルを再構成
する従来技術と異なって、本発明は、ファイルをロジカル・ディスクに最初にイ
ンストールするので、ほぼ最適の順でファイルを構成する。全体的に、これは、
ファイルの種々の部分が始動中にアクセスされる順を定めて、インストール・デ
ィスクに含まれているロード・シーケンス・リストを作成し、ロード・シーケン
ス・リストが示す順でファイルの始動関連部をインストールして行われる。代わ
りに、ロード・シーケンス・リストを用いて、ファイルがロジカル・ディスクに
インストールした後にファイルを再構成することができる。ロード・シーケンス
・リストは、インターネットを経由して、又は他の配布方式を用いて、インスト
ール・ディスク上に送ることができる。
【0042】 図2と図3は、インストール・ディスクを作成し、ファイルが始動中にロード
される順でロジカル・ディスクにファイルをインストールする代表的な方法を示
す流れ図である。図2の流れ図は、アプリケーション関連ファイルと1つ又は複
数のロード・シーケンス・リストとインストール・プログラムとを具備する、イ
ンストール・ディスクを作成する方法200を示す。図3の流れ図は、ファイル
をインストール・ディスクからロジカル・ディスクにインストールして、それら
を始動中に読み取られる順で保存する方法300を示す。
【0043】 図2は、インストール・ディスクを作成する方法200を示す。方法200の
第1のステップで、アプリケーション関連ファイルを作成する(ステップ205
)。代表的な方法では、このステップは、当業者には自明の従来の方式で行われ
、プログラム(例えば、アプリケーション・プログラム)に付随する全てのファ
イルの作成を包含している。これらのファイルは、実行自在のファイル、動的に
リンクするライブラリ、データ・ファイル、採択ファイルなどを含んでいる。
【0044】 ファイルの作成後に、方法200はステップ210に進む。ここで、ファイル
がコンピュータにインストールされ、プログラムが始動される。始動プロセスは
、ファイルのどの部分が始動中にアクセスされるかについて決定できる検出コー
ドでモニタ又は“検出”される。検出コードは、どのファイル部分が読み取られ
か及び読取順とを指示するロード・シーケンス・リストを作成する。
【0045】 図4は、代表的なロード・シーケンス・リストのフォーマットを示す。リスト
の各々エントリから、アクセスされたファイルと、ファイルに対するオフセット
と、読み取られたデータの量とが識別される。オフセットと長さは、ファイルの
開始部に相応して、バイトの単位で測定される。オフセットと長さから、読み取
られた部分の開始部と長さが決まる。このステップが、プログラム始動中に触れ
た全ファイルのリストと、読み取られた各々ファイル内の位置と、プログラムの
始動時にディスクから読み取られるデータの量になる。
【0046】 ステップ210から、方法200はステップ220に進む。当業者は、ステッ
プ210で作成され、ブート中に触れた全ファイルの記録を含んでいる、最初の
ロード・シーケンス・リストが、プログラム自体の部分でないファイルを含んで
いることを認めると思われる。例えば、アプリケーション・プログラムの始動時
に、それは、コンピュータに、種々のシステム・ファイルの部分を、又はアプリ
ケーション・プログラム自体から離れて存在する他の共有ファイルを読み取るこ
とを要求する。ステップ220で、方法200は、最初のロード・シーケンス・
リストの内容を分析し、プログラムのインストール時にユーザのコンピュータ上
で最適でない又は再インストールしてないファイルを除去する。除去ファイルに
は、インストール・プログラムで変更できない又は変更すべきでないファイルと
、明らかに頻繁に変わると思われるファイル(例えば、採択ファイル)とを含ん
でいる。当業者は、このステップは、最初のロード・シーケンス・リストに含ま
れることを防止する除外リストを用いる、又は、あるファイルを無視するために
インストール時にロード・シーケンス・リストを処理することを含めて、別の方
式で実施できることを認めると思われる。
【0047】 ロード・シーケンス・リストを編集し、最適でないファイルを除去した後に、
方法200はステップ225に進み、そこで、1つ又は複数の最終ロード・シー
ケンス・リストが作成される。当業者は、ファイルをロードするシーケンスは、
プログラムがインストールされるコンピュータに付随する種々の要因の影響を受
けることを認めると思われる。例えば、特殊なバージョンのオペレーティング・
システム(主なリリースと僅かなアップデートを含めて)とコンピュータに関連
するクラスタ・サイズとに、ロジカル・ディスクにファイル部をインストールす
る最適シーケンス上で或る関連性がある。従って、異なるロード・シーケンス・
リストを、これらの状態の各々に対して作成できる。例えば、特定のバージョン
のオペレーティング・システムで用いるロード・シーケンス・リストでは、更な
るファイルを、別のマシン構成の最適ロード・シーケンスに追加するか、又はフ
ァイルをそこから削除できる。同様に、ロード・シーケンス・リストは、種々の
クラスタ・サイズで用いるために提供できる。代わりに、小さな(例えば、4K
)クラスタで用いる単一のロード・シーケンス・リストも可能であり、ファイル
順位設定時にそこから導かれた他のクラスタ・サイズのためのロード・シーケン
ス・リストも可能である。最終的なロード・シーケンス・リストは、図4の例と
同じフォーマットになる。
【0048】 ステップ230で、実際のインストール・ディスク(例えば、CD−ROM又
はフロッピー・ディスク)が作成される。インストール・ディスクは、アプリケ
ーション関連ファイル、ロード・シーケンス・リスト、立上げ又はインストール
・プログラムを含んでいる。インストール・ディスクがユーザのコンピュータの
ドライブに挿入されると、ユーザは、インストール・プログラムを始動して、フ
ァイルをコンピュータのロジカル・ディスクにインストールする。ユーザ入力と
コンピュータから読み取った構成情報とに基づいて、インストール・プログラム
では、インストールに必要なファイルと、ファイルのインストール時の順とを定
めると共に、ファイルをインストール・ディスクから読み取るか、又は適切な順
でディスクに書き込む。
【0049】 図3は、ファイルをインストール・ディスクからロジカル・ディスクにインス
トールして、始動関連プログラム部をプログラム始動中に読み取られる順で保存
する。代表的な実施例では、方法300が、ディスク・ドライブ30(図1)に
挿入されたCD−ROMである、インストール・ディスクに含まれているインス
トール・プログラムを用いて実行される。
【0050】 方法300は、ユーザがインストール・プログラムを始動すると始まり、ステ
ップ305に進む。ステップ305では、インストール・プログラムが、コンピ
ュータに問い合わせて、コンピュータにインストールしたオペレーティング・シ
ステムに属するデータと、ハードディスク・ドライブの特性などを得る。
【0051】 ステップ310では、インストール・プログラムが、ユーザに促して、特定の
プログラムに、又はユーザがインストールしたいプログラムに属する情報を得る
。インストール・プログラムは、ユーザに、インストールを進める前にユーザ名
とシリアル・ナンバーとを入力するように要求する。
【0052】 ステップ315で、インストール・プログラムは、ステップ310と315で
得た情報を用いて、どのファイルをインストール・ディスクからハードディスク
・ドライブにインストールすべきかについて決定する。
【0053】 ステップ320で、インストール・プログラムは、ステップ310と315で
得た情報を用いて、どのロード・シーケンス・リストを用いて、ファイルの始動
関連部をロジカル・ディスクにインストールして保存すべきかについて決定する
。前述のように、異なるロード・シーケンス・リストが、種々のバージョンのオ
ペレーティング・システムと異なるハードディスク・ドライブ・クラスタ・サイ
ズなどを受け入れるために提供できる。
【0054】 図5は、4つのアプリケーション・ファイル(ファイルA、B、C、D)の部
分の例と、始動関連ファイル部とそれらがプログラムの始動時にロードされる順
とを識別する単純なロード・シーケンス・リストとを示す。本例では、アプリケ
ーション・プログラムがファイルA、B、C、Dを含んでいる。もちろん、アプ
リケーション・プログラムは多くの更なるファイルを含むことができる。各々フ
ァイルは、多重部(例えば、A1−A8、B1−B6、C1−C5、D1−D5
)を含んでいる。しかし、ファイルA、B、Cだけ、アプリケーション始動中に
ロードされる部分を備えている。これらの始動関連部は、A1−A4、B1−B
3、C1−C3の部分も含んでいる。ファイルA、B、Cの残りの部分とファイ
ルDの全体は、始動中にロードされない。当業者は、各々ファイルの始動関連部
(例えば、A1−A4)が、連続する必要がなく、ファイルの非始動関連部(例
えば、A5−A8)より先行する必要もないことを認めると思われる。図3の最
終行は、始動ロード・シーケンスを図示しており、それは、ファイルA、B、C
の始動関連部が始動中にロードされる順を示している。本例では、始動ロード・
シーケンスは、A1、B3、A3、B2、B1、C2、C1、A2、C3、A4
である。
【0055】 残っているインストール・プロセス(ステップ325、330、335)の目
標は、前述の始動ロード・シーケンスにおいてロジカル・ディスクの連続クラス
タに始動関連ファイル部をインストールすることである。従って、インストール
・プロセスには次の2つの目的がある。すなわち、(1)適切な順で始動関連フ
ァイル部を書き込んで、(2)始動関連ファイル部がロジカル・ディスクの連続
セクタに保存されていることを保証する。適切な順で始動関連ファイル部を書き
込む目的は、ロード・シーケンス・リストの規定から指摘されている。ファイル
部が連続クラスタに保存されていることを保証することは、大半のパーソナル・
コンピュータに用いられているFATファイル・システムの種々の特性のために
行われる。
【0056】 全体的に、FATファイル・システムでは、ファイルをロジカル・ディスクに
“クラスタ自由リスト”の順で書き込む。言い換えれば、ファイルがハードディ
スク・ドライブに書き込まれる時に、ファイルの最初のクラスタが、FATで識
別した最初の自由クラスタに書き込まれ、ファイルの第2のクラスタが、FAT
で識別した次の自由クラスタに書き込まれ、以降、同様に書き込まれる。多くの
ケースで、自由クラスタは連続していない。従って、プログラムをインストール
する時に、プログラムの始動関連ファイル部を保存できる十分に連続する自由ク
ラスタを有するロジカル・ディスクの部分を識別することが望まれる。ファイル
の残りの部分は、クラスタ自由リストの順で書き込まれる。
【0057】 ステップ325で、インストール・プログラムは、ファイルの始動関連部の保
存に用いる(ロジカル・ディスクの)連続自由クラスタのブロックを識別する。
本発明は、始動ファイル部を十分に保存できるディスク・スペースを識別する方
法を幾つか考案している。
【0058】 第1のアプローチは、既存のファイルがロジカル・ディスクの開始部に保存し
てあり、十分な量の連続自由クラスタが末端に存在すると想定している。この想
定は非現実的であるが、インストール・プロセス中に、従来の分割復元ユーティ
リティを用いてロジカル・ディスクの分割を復元することを示唆すると達成でき
る。ディスクの分割復元後に、アプリケーション・プログラムをディスクの末端
の自由スペースにインストールすると、ファイルの始動関連部を連続クラスタに
保存できる。当業者は、このアプローチは、インストール前にロジカル・ディス
クの分割復元に必要な時間と、一部のユーザが示唆された分割復元の実行を好ま
ない又は実施できないことのために、それほど望ましい方式でないと思われるか
もしれない。
【0059】 第2のアプローチは、大きな自由スペースがディスクの末端に存在するが、あ
る非連続自由クラスタがディスクの開始部に存在すると想定している。このアプ
ローチでは、ロード・シーケンス・リストからの始動関連ファイル部が最後にイ
ンストールされる。そこで、アプリケーション・ファイルの残りの部分(すなわ
ち、非始動関連部)を最初にインストールして、クラスタ自由リストの順でディ
スクに格納することができる。大半のケースで、この大量のファイル・データを
保存すると、非連続自由クラスタが非始動関連ファイル部で充填され、ファイル
の始動関連部がディスクの末端で使用可能な状態を維持する連続自由クラスタに
インストールされる結果になる。
【0060】 十分に連続する自由クラスタを識別する第3のアプローチでは、全体的な自由
クラスタ・リストを読んで、連続自由クラスタの任意のグループのサイズを追跡
する。リストは、連続自由クラスタの最大グループを見い出すために、サイズで
分類される。自由クラスタの最大グループが識別されて、始動関連ファイル部を
保存するためにマークが付記される。始動ファイルの指定クラスタの識別後に、
プロセスは、自由クラスタの本来のリストを再び分類して、データをロジカル・
ディスクに書き込むことを始める。指定クラスタがリストの最初の自由クラスタ
でない場合、仮のファイルが、希望の指定クラスタとするために充填する必要の
ある自由クラスタに書き込まれる。始動ファイルが連続指定クラスタに書き込ま
れた後に、仮のファイルが削除され、これらのクラスタがクラスタ自由リストに
戻される。仮のファイルの使用について次に詳細に説明する。
【0061】 第4のアプローチは、第3のアプローチと似ているが、仮のファイルに書き込
む必要のあるデータの量を減少させる。第3のアプローチでは、大量のデータを
ディスクの前半の大量の小グループのクラスタに書き込むことを要求できる。こ
れを最小限にするために、第4のアプローチは、最もはやい連続クラスタ・グル
ープ又はセットのグループを用いて、プログラム始動時間を大幅に改善している
【0062】 十分に連続する自由クラスタが始動関連ファイル部のインストールに対して識
別された後に、インストール・プログラムは、ステップ330に進んで、始動関
連ファイル部を自由スペースに適切な順で書き込む。当業者は、ロード・シーケ
ンス・リストで示された順で自由スペースに始動ファイル部を書き込むために必
要な特定のステップが、種々の要因に依存することを認めると思われる。この要
因の中で最も重要なものはコンピュータの特定のオペレーティング・システムと
思われる。それは、ファイルをロジカル・ディスクに書き込むためのツールと、
どのようにしてファイルをハード・ドライブに書き込むかについての制限事項を
提供する。“WINDOWS95”オペレーティング・システムでの使用に適し
た2つのアプローチについて次に説明する。
【0063】 当業者は、ロジカル・ディスクに始動ファイルを書き込む最も単純な状態は、
自由スペースが全て連続すると共にロジカル・ディスクの末端に位置し、オペレ
ーティング・システムが強制的にファイルを連続状態にしようとしない時に現れ
ることを認めると思われる。この単純で恐らく非現実的な状態で、ロジカル・デ
ィスクにファイルを書き込むプロセスは、次のように実施できる。最初に、イン
ストール・プログラムは、CD−ROM(読取用)とロジカル・ディスク(書込
用)で必要なファイルを開く。次に、ロード・シーケンス・リストにリストして
ある最初のクラスタを、CD−ROMから読み取って、ハードディスク・ドライ
ブに書き込む。ある場合に、出力ファイルをフラッシュして、データがディスク
に実際に書き込めることを確認する必要がある。これらのステップは、ロード・
シーケンス・リストのクラスタの全てがロジカル・ディスクに書き込まれるまで
繰り返される。そこで、インストール・プログラムはステップ335に進み、フ
ァイルの残りの部分(すなわち、非始動関連ファイル部)が、CD−ROMから
読み取られて、ロジカル・ディスクに書き込まれる。全てのファイルが書き込ま
れると、読取ファイルと書込ファイルが閉じて、オペレーティング・システムは
FATファイル・システムを更新する。方法300がステップ340で終了して
、インストールが完了する。
【0064】 個々のファイルを非連続クラスタに書き込む特殊な方法(ステップ330)に
ついて“WINDOWS95”オペレーティング・システムに関連して説明する
。“WINDOWS”95オペレーティング・システムは、ファイルを連続クラ
スタに保つように試みている。そこで、多重クラスタを単一ファイルに書き込む
と、オペレーティング・システムは、それらを連続クラスタにしようと試みる。
本発明の実施例では、このオペレーティング・システムの特長は、仮のファイル
を用いて、ハードディスク・ドライブ上にスペースをとり、各々ファイルの始動
関連部を非連続クラスタに希望順で強制的に書き込んで達成している。当業者は
、オペレーティング・システムとファイル・システムには、ファイルを書き込む
順に関して、ある規定があることを認めると思われる。最も重要なことは、ファ
イルのクラスタが、単調に増加する順で割り当てられることである。言い換えれ
ば、ファイルの第1のクラスタは、情報がファイルに書き込まれる順にかかわら
ず、ファイルの第2のクラスタの前に割り当てられる。
【0065】 仮のファイルを用いる例が、図6に示してあり、インストール・プロセスの異
なる段階におけるロジカル・ディスクの12個のクラスタの内容を反映している
。本例では、図5の10個のファイル部が、図6に示した12個のクラスタに書
き込まれる。インストールが始まる前に、12個のクラスタ(任意に、0〜11
の参照番号が付いている)が、自由クラスタ・リストの連続クラスタになる。連
続クラスタ0〜11が自由クラスタ・リストの第1のクラスタでない場合、イン
ストール・プログラムは、仮のファイルをクラスタ0の前のクラスタに書き込む
。そこで、クラスタ0が自由クラスタ・リストの第1の自由クラスタになる。
【0066】 インストール・プログラムは、希望したクラスタの順を該当するロード・シー
ケンス・リストから読み取り、クラスタをCD−ROMから読み取って、それら
をロジカル・ディスクのクラスタ0〜9に書き込む。オペレーティング・システ
ムは各々ファイルのクラスタが単調に増加する順で書き込まれることを要求する
ので、ファイルをロジカル・ディスクに書き込むプロセスは、自由スペースを介
するマルチプル・パスを要求すると共に、仮のファイルを用いて、データが希望
したクラスタに書き込まれることを確認することも含んでいる。
【0067】 図6を見ると、第1のパスでは、インストール・プログラムは、ロード・シー
ケンス・リストを読み取り、クラスタA1を最初にロードすると決定している。
これはファイルAの第1のクラスタなので、それがクラスタ0に直ちに書き込ま
れる。
【0068】 次に、インストール・プログラムは、クラスタB3をクラスタ1に書き込むと
決定している。しかし、クラスタB3は、クラスタB1とB2がハードディスク
・ドライブに未だに書き込まれていないので、格納できない。従って、インスト
ール・プログラムは、仮のファイルt1をクラスタ1に書き込む。
【0069】 仮のファイルt1が書き込まれた後に、インストール・プログラムは、クラス
タA3を書き込むと決定する。しかし、クラスタA3は、クラスタA2が未だに
ハードディスク・ドライブに書き込まれていないので、格納できない。従って、
インストール・プログラムは、仮のファイルt2をクラスタ2に書き込む。
【0070】 仮のファイルt3が、次にクラスタ3に書き込まれる。なぜならば、クラスタ
B2は、クラスタB1がハードディスク・ドライブに書き込まれるまで格納でき
ないからである。
【0071】 仮のファイルt3が書き込まれた後に、インストール・プログラムは、クラス
タB1をクラスタ4に書き込むと決定する。これはファイルBの第1のクラスタ
なので、それは、ハードディスク・ドライブのクラスタに書き込まれる。
【0072】 クラスタB1の後に、インストール・プログラムは仮のファイルt4をクラス
タ5に書き込む。なぜならば、クラスタC2は、クラスタ1が格納されるまで格
納できないからである。
【0073】 次に、インストール・プログラムは、クラスタC1をクラスタ6に書き込むと
決定する。クラスタC1がファイルCの第1のクラスタなので、それが、クラス
タ6に書き込まれる。
【0074】 次に、インストール・プログラムは、クラスタA2をクラスタ7に書き込むと
決定する。クラスタA1が既に書き込まれていたので、クラスタA1が、クラス
タ7に書き込まれる。
【0075】 クラスタA2がハードディスク・ドライブに書き込まれた後に、インストール
・プログラムは、クラスタC3をクラスタ8に書き込むと決定する。しかし、ク
ラスタC3は、クラスタC2が保存してないので、書き込むことができない。イ
ンストール・プログラムは、仮のファイルt5をクラスタ8に書き込む。
【0076】 次に、インストール・プログラムは、クラスタA4をクラスタ9に書き込むと
決定する。しかし、クラスタA3が未だにハードディスク・ドライブに書き込ま
れていないので、インストール・プログラムは、仮のファイルt6をクラスタ9
に書き込む。
【0077】 インストール・プログラムが、始動関連ファイル部の保存に用いるクラスタの
全てにデータを書き込んだ後に、インストール・プログラムは、大きな仮のファ
イルt7を、ディスクに残っているスペースに書き込む。
【0078】 第2のパス中に、インストール・プログラムは、始動関連ファイルをハードデ
ィスク・ドライブに単調に増加する順で書き込むプロセスを継続する。
【0079】 第2のパス中に、クラスタB3は、クラスタB2が格納してないので、ハード
ディスク・ドライブに書き込まれることができない。
【0080】 クラスタA3は、クラスタA1とA2が既に格納してあるので、クラスタに書
き込まれることができる。従って、インストール・プログラムは、仮のファイル
t2を削除して、クラスタA3をクラスタ2に書き込む。
【0081】 クラスタB2は、クラスタB1が既に格納してあるので、クラスタ3に書き込
まれることができる。インストール・プログラムは、仮のファイルt3を削除し
て、クラスタB2をクラスタ3に書き込む。
【0082】 クラスタC2は、クラスタC1が既に格納してあるので、クラスタ5に書き込
まれることができる。インストール・プログラムは、仮のファイルt5を削除し
て、クラスタC2をクラスタ5に書き込む。
【0083】 クラスタC3は、クラスタC1とC2が既に格納してあるので、クラスタ8に
書き込まれることができる。インストール・プログラムは、仮のファイルt5を
削除して、クラスタC3をクラスタ8に書き込む。
【0084】 最後に、クラスタA4は、クラスタA1〜A3が既に格納してあるので、クラ
スタ9に書き込まれることができる。インストール・プログラムは、仮のファイ
ルt6を削除して、クラスタA4をクラスタ9に書き込む。
【0085】 パス3中に、クラスタB3は、クラスタB1とB2が既に格納してあるので、
クラスタ1に最終的に書き込まれることができる。インストール・プログラムは
、仮のファイルt1を削除して、クラスタB3をクラスタ1に書き込む。
【0086】 始動関連ファイル部の全てが書き込まれた後に、インストール・プログラムは
、仮のファイルt7と、クラスタ0の前のクラスタに書き込まれていた任意の仮
のファイルを削除する。そこで、この未使用のクラスタが自由クラスタ・リスト
に戻ることになる。この時に、残っているプログラムの部分(すなわち、非始動
関連ファイル部)が、CD−ROMから読み取られて、ハードディスク・ドライ
ブに書き込まれる。これらのファイルは、クラスタ自由リストの順でハードディ
スク・ドライブに格納される。
【0087】 あるバージョンの“WINDOWS95”オペレーティング・システムはファ
イル割当戦術を採用しており、それは、2つのファイルが開いていて、プログラ
ムが両方に書き込まれる場合に、プログラムがファイル間にある自由スペースを
望むと想定している。図7は、このオペレーティング・システムの特長にもかか
わらず、ハードディスク・クラスタ0〜9に始動ファイル部を書き込む第2の方
法を示す。この第2のアプローチは、図6に示したアプローチと非常に似ている
が、自由クラスタの各々に仮のファイルを作成するために、自由クラスタを介す
る更なるパスを必要としている。
【0088】 図7の例の場合、図5の10個のファイル部が、ハード・ドライブのクラスタ
0〜9に書き込まれる。インストールが始まる前に、12個のクラスタ(番号0
〜11が付いている)が、自由クラスタ・リストで連続するクラスタになる。連
続クラスタ0〜11が自由クラスタ・リストの第1のクラスタでない場合、イン
ストール・プログラムは、クラスタ0の前のクラスタに仮のファイルを書き込む
。その結果、クラスタ0が自由クラスタ・リストの第1の自由クラスタになる。
【0089】 パス1中に、インストール・プログラムは、ロード・シーケンス・リストで識
別したファイル・クラスタの保存に用いるクラスタの各々に、別の仮のファイル
(t1〜t10)を書き込む。別の仮のファイルt11が、クラスタ9に続く自
由クラスタの全てに書き込まれる。このことが、オペレーティング・システムが
インストール・プログラムで書き込まれたクラスタ間にスペースを残すことがで
きないことを保証する。
【0090】 パス2〜4は、図6のパス1〜3のように進んで、単調に増加する順でファイ
ル・クラスタを書き込むために用いられる。しかし、パス2中に、仮のファイル
t1、t5、t7、t8は、事前にクラスタA1、B1、C1、A1がクラスタ
1、4、6、7に各々書き込まれるので、削除しなければならない。
【0091】 始動関連ファイル部がロジカル・ディスクに書き込まれた後に、インストール
・プログラムは、クラスタ0の前のクラスタに書き込まれていた任意の仮のファ
イルと仮のファイルt11とを削除する。そこで、この未使用のクラスタが自由
クラスタ・リストに戻ることになる。その時に、残っているファイル部(すなわ
ち、非始動関連ファイル部)が、CD−ROMから読み取られて、ロジカル・デ
ィスクに書き込まれる。これらのファイルは、クラスタ自由リストの順でロジカ
ル・ディスクに格納される。
【0092】 今までの説明では、本発明について幾つかの実施例に関係して述べてきた。概
して、これらの実施例は、ロジカル・ディスク上で連続するクラスタにインスト
ールすべき始動関連ファイル部を識別するロジカル・ディスクと、連続する自由
クラスタの十分な数を識別する方法と、希望順で連続クラスタにプログラム部を
書き込む方法とを備えている。
【0093】 本発明は、本発明の実施例に包含できる更なる特長を幾つか考案している。
【0094】 本発明の方法は、新しいファイルの始動関連部だけでなく、ロジカル・ディス
ク上の既存ファイルと新しいプログラムの追加部も具備するように拡大できる。
【0095】 例えば、本発明は、システム・ファイルと他のインストール済みのファイルが
ロード・シーケンス・リストに含まれている場合、それらの最適化に使用できる
。この最適化のために、インストール・プロセスは、前述のように進むが、読取
用の既存のファイルと書込用の新しい仮のファイルとを開くことも含んでいる。
既存ファイルに関連するクラスタが、他の始動関連ファイル部と共に連続自由ク
ラスタに書き込まれる。始動関連部がロジカル・ディスクの連続クラスタに全て
書き込まれた後に、本来の既存ファイルが削除され、仮のファイルは、削除され
た本来のファイルと同じ名前になるように、再び名前が付けられる。
【0096】 前述のように、本発明の原理は、プログラムに関して他に共通するディスク集
中部の検出とインストール(又は再構成)とに使用できる。例えば、OPEN、
SAVE、LOAD、PRINTのようなルーチンを実行するコードが検出でき
て、結果がインストール・ディスクのロード・シーケンス・リストに入れられる
。インストール・プログラムは、この情報を用いて、コードのこれらの部分をロ
ジカル・ディスクの連続部に、新しいプログラムのインストール時に書き込んだ
り、又は、インストール後にコードに関連する部分を再構成することができる。
【0097】 前述のように、仮のファイルは、インストール・プロセスの一部の段階中にロ
ジカル・ディスクの自由スペースの殆ど全てのテークアップに使用できる。これ
らの仮のファイルは、インストール・プロセスの完了時に、インストール・プロ
グラムによって一般的に削除される。しかし、仮のファイルが削除され、未使用
のスペースがコンピュータに使用できることを保証するために、オペレーティン
グ・システムが実施するポスト・リブート又は“チューンアップ”プロセスをプ
ログラム設定すると、1つ又は複数の仮のファイルの存在についてチェックし、
もし見つかると削除することができる。立上げプロセスのポスト・リブート部は
、インストール・プロセス中に使用状態だったので、削除又は再命名できなかっ
た任意の最適化システム・ファイルを削除して再命名するためにも使用できる。
【0098】 図8は、コードがロジカル・ドライブにインストールされた後に、立上げ及び
他のディスク集中型オペレーションとに関連するコード部の最適化に本発明の原
理を用いる、別の方法800を図示する流れ図である。図3の方法と同様に、方
法800は、1つ又は複数のロード・シーケンス・リストとプログラム・ファイ
ルとを搭載する、インストール・ディスクを採用している。しかし、この実施例
では、プログラム・ファイルが、ロード・シーケンス・リストのコピーと共に従
来の方式でロジカル・ドライブに最初にインストールされる。インストール後の
ある時に、チューンアップ・プログラムでは、ロード・シーケンス・リストを用
いて、ディスク集中型データを最適な形態で再構成することができる。
【0099】 ステップ805で、方法800は、従来の方式でロジカル・ドライブにプログ
ラム・ファイルをインストールするステップを含んでいる。この時に、ロード・
シーケンス・リストのコピーもロジカル・ドライブにコピーされる。
【0100】 プログラムのインストール後に、別のプログラムを用いて、プログラムの立上
げのようなディスク集中型オペレーションに付随するプログラム部を再構成でき
る。この“チューンアップ”又は再構成プログラムは、様々な時に実行できる。
例えば、チューンアップ・プログラムは、コンピュータがプログラムのインスト
ール後に最初に再開する時に、自動的に実行できる。チューンアップ・プログラ
ムは、ユーザが自らのコンピュータの保守点検を選択する時に、必ず手動でも実
行できる。
【0101】 ステップ810は、チューンアップ又は再構成プロセスの第1のステップであ
る。ステップ810で、チューンアップ・プログラムは、コンピュータに問い合
わせて、コンピュータにインストールしたオペレーティング・システムに属する
データと、ハードディスク・ドライブの特性などを入手する。
【0102】 ステップ815で、チューンアップ・プログラムは、ステップ810で得た情
報を用いて、ファイルのディスク集中部をロジカル・ディスク上で再構成する際
の順を決定するために用いるロード・シーケンス・リストを決定する。前述のよ
うに、異なるロード・シーケンス・リストが、オペレーティング・システムの異
なるバージョンと、異なるハードディスク・ドライブ・クラスタ・サイズなどの
受け入れるために提供される。
【0103】 当業者は、プログラムの“MICROSOFT・OFFICE”の組のように
、プログラムの組が2つ以上のアプリケーション・プログラムを有することを認
めると思われる。本発明は、アプリケーション・プログラムごとにロード・シー
ケンス・リストを呈することにより、プログラムの組のインストールに適用でき
る。オペレーティング・システムのマルチプル・バージョンがサポートされてい
る場合に、本発明は、サポート・システムごとにアプリケーション・プログラム
ごとにロード・シーケンス・リストを提供する。プログラムが(インストール中
又はその後に)“最適化”される場合に、適用自在のロード・シーケンス・リス
トは、所定の順で互いに連結できる。始動関連ファイル部が2つ以上のロード・
シーケンス・リストに存在する場合に、その部分が、それを含むために、第1の
ロード・シーケンス・リストを除いて全てのところから除去される。最適化は、
併合されたロード・シーケンス・リストに準じて進行する。
【0104】 ステップ820で、チューンアップ・プログラムは、ファイルのディスク集中
部の保存に用いる(ロジカル・ディスクの)連続自由クラスタのブロックを識別
する。前述のように、本発明は、始動ファイル部を十分に保存できるディスク・
スペースを識別する方法を幾つか考案している。
【0105】 十分に連続する自由クラスタが始動関連ファイル部のインストールに対して識
別された後に、インストール・プログラムは、ステップ825に進んで、適切な
順で自由スペースにディスク集中型ファイル部を再構成する。
【0106】 要約すると、図8の方法は、ファイルがインストール時(又は直後)に再構成
されることを可能にすると共に、それらがインストール後の任意の時にチューン
アップ又は固定されることも可能にする。ロード・シーケンス・リストを用いる
と、このチューンアップは、従来技術で用いたモニタ機能無しに実施できる。
【0107】 最後に、前述のプロセスは、オペレーティング・システムが呈する読取機能と
書込機能を用いる。このアプローチは非常に堅実なので、インストール・プロセ
スでユーザのハードディスク・ドライブのデータが損ねられる可能性が、事実上
、解消される。しかし、当業者は、データは、クラスタ・レベルでデータを書き
込む低レベルの機能を用いると、ハードディスク・ドライブに書き込むことがで
きることを認めると思われる。このアプローチは、インストール・プログラムに
、ファイル部を適切なクラスタに書き込んだ後に、戻ってFATをパッチするこ
とを要求する。このアプローチは本発明に関連して採用できるが、それは、ハー
ド・ドライブのデータがある状態で損ねられる大きな危険を呈する。
【0108】 <詳細な説明の考察> 前述の説明から、本発明は、プログラム始動時間を改善するようにして、ファ
イルをインストール又は再構成するシステムと方法とを改善することが分かる。
本発明の主な長所は、プログラムが1つ又は複数のロード・シーケンス・リスト
を呈してインストールされた後に、立上げプロセスをモニタする必要性を不要に
したことにある。
【0109】 前述の実施例では、プログラムの立上げプロセスをモニタし、ファイル部が、
プログラムの始動又はあるプログラム・コマンドの選択のようなディスク集中型
オペレーション中に、ディスクから読み取られる順を決定する。このデータは、
ファイルの種々の部分が始動中に読み取られる順を示す、ロード・シーケンス・
リストの作成に用いられる。インストール中に、インストール・プログラムは、
データをロード・シーケンス・リストから読み取り、始動関連ファイル部を、ロ
ジカル・ディスク上で連続するクラスタの順で書き込む。あるいは、ファイルの
始動関連部は、プログラムのインストール後にロード・シーケンス・リストに基
づいて再構成される。この後に、コンピュータは、始動関連データをロジカル・
ディスクから連続ディスク・クラスタの適切な順で読み取ることができるので、
ディスク・ヘッドが始動データを読み取るために非連続クラスタ間で移動する場
合のディスク・アクセスのために生じる無駄な時間を最小限にする又は解消する
ことができる。
【0110】 本発明は、図2〜8に示した特長に基づく1つ又は複数のプログラム・モジュ
ールにおいて具体的に実現されると共に、それらを具体的に実現するものである
。特定のプログラミング言語について、前述の種々の手順を実施する際に説明し
てなかった。なぜならば、添付の図面で示し説明したオペレーションとステップ
と手順について、当業者が本発明を実施できるように十分に開示してあると考え
るからである。更に、本発明を実施する際に使用できるコンピュータとオペレー
ティング・システムが多くあるので、これらの多くの異なるシステムの全てに適
用できるコンピュータ・プログラムについて詳細に述べてない。特定のコンピュ
ータの各々ユーザは、ユーザが必要とし意図するものに最も効果的なツールと言
語とを認識していると考えるからである。
【0111】 そのうえ、本発明は“WINDOWS95”オペレーティング・システムのも
とでアプリケーション・プログラムをインストールするアプリケーション・プロ
グラムに関係して主として述べてきたが、当業者は、本発明が、種々のタイプの
プログラム・モジュール、及び多種多様なオペレーティング・システムを実行す
ると共に多種多様なファイル・システムを用いるシステムとに適用できることを
認めると思われる。例えば、本発明は、アプリケーション・プログラム、ユーテ
ィティ・プログラム、オペレーティング・システム・プログラム・モジュールな
どのインストールに使用できる。前述のように、本発明は、アプリケーション・
プログラムの始動、プログラム・コマンド(例えば、FILE・OPEN)に付
随するコードの始動などを含めて、多種多様なディスク集中型オペレーションに
付随するプログラム・データの再構成にも採用できる。
【0112】 本発明は、限定するより、むしろ図解を全て意図する、特定の実施例に関連し
て述べてきた。本発明がその趣旨と範囲から逸脱せずに関係する代替実施例も当
業者には自明のことと思われる。従って、本発明の範囲は、前述の説明より、む
しろ添付する請求項から定められる。
【図面の簡単な説明】
【図1】 図1は、本発明の実施例の動作環境を呈する、パーソナル・コンピュータのブ
ロック図である。
【図2】 図2は、ロジカル・ディスクにファイルを、それらがプログラム始動中にロー
ドされる順でインストールする、インストール・ディスクを作成する代表的な方
法を示す流れ図である。
【図3】 図3は、ファイルをインストール・ディスクからロジカル・ディスクにインス
トールして、ファイルを、それらがプログラム始動中にロードされる順で保存す
る代表的な方法を示す流れ図である。
【図4】 図4は、代表的なロード・シーケンス・ファイルの内容を示すテーブルである
【図5】 図5は、3つのファイルの立上げ関連要素と、これらの要素の代表的なロード
順を示すテーブルである。
【図6】 図6は、ファイル要素をロジカル・ディスク上の自由クラスタに書き込む代表
的な方法を示すテーブルである。
【図7】 図7は、ファイル要素をロジカル・ディスクの自由クラスタに書き込む代表的
な方法を示すテーブルである。
【図8】 図8は、ファイルの部分をロジカル・ディスクにインストールした後に、それ
らを最適化する代替方法を示す流れ図である。
【符号の説明】
21 処理装置 22 システム・メモリ 23 システム・バス 32 ハードディスク・ドライブ・インタフェース 33 磁気ディスク・ドライブ・インタフェース 34 光ディスク・インタフェース 35 オペレーティング・システム 36 プログラムの組 37 アプリケーション・プログラム 38 アプリケーション・データ 40 キーボード 42 マウス 46 シリアル・ポート・インタフェース 47 モニタ 48 ビデオ・アダプタ 49 リモート・コンピュータ(サーバ) 51 ローカル・エリア・ネットワーク 52 ワイド・エリア・ネットワーク 53 ネットワーク・インタフェース
【手続補正書】特許協力条約第34条補正の翻訳文提出書
【提出日】平成12年5月8日(2000.5.8)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ルディアック−グールド、 ベンジャミン アーロン アメリカ合衆国 94706−2134 カリフォ ルニア州 アルバニー カーティス スト リート 969 Fターム(参考) 5B065 BA01 CE26 CH18 ZA07 5B076 AA01 5B082 CA07 (54)【発明の名称】 コンピュータ読取可能な記録媒体、プログラム・コードをインストール・ディスクからディスク にインストールする方法、プログラム・コードをロジカル・ディスク上にインストールして最適 化する方法 【要約の続き】 無駄な時間を最小限にする又は解消することができる。

Claims (21)

    【特許請求の範囲】
  1. 【請求項1】 始動関連部を有する複数のファイルと、 前記複数のファイルの前記始動関連部がディスク上にインストールされる順を
    示すロード・シーケンス・リストと、 前記ディスク上で連続する自由クラスタの少なくとも1つのグループを識別す
    るステップと、前記連続する自由クラスタの少なくとも1つのグループにおける
    前記複数のファイルの前記始動関連部において、ロード・シーケンス・リストで
    示された順でディスク上に保存されている前記始動関連部をインストールするス
    テップとを実施するコンピュータ実行可能な命令と を有することを特徴とするコンピュータ読取可能な記録媒体。
  2. 【請求項2】 前記ロード・シーケンス・リストが複数のエントリを有して
    いて、前記エントリの各々が前記複数のファイルの中の1つと、インストールさ
    れる前記ファイルの部分とを識別することを特徴とする請求項1記載のコンピュ
    ータ読取可能な記録媒体。
  3. 【請求項3】 前記始動関連部をインストールするステップは、 前記ロード・シーケンス・リストのエントリにおいて、前記複数のファイルの
    なかの1つと、読み取られる前記ファイルの部分とを識別する前記エントリを読
    み取るステップと、 前記複数のファイルのなかで識別された1つから前記ファイルの部分を読み取
    るステップと、 前記ファイルの部分を前記ディスクに書き込むステップと を備えていることを特徴とする請求項1記載のコンピュータ読取可能な記録媒
    体。
  4. 【請求項4】 連続する自由クラスタの少なくとも1つのグループを識別す
    る前記ステップは、 前記ディスクに保存されたデータから使用自在の自由クラスタのリストを読み
    取るステップと、 最大数の連続自由クラスタをもつ連続自由クラスタのグループを識別するステ
    ップと を備えていることを特徴とする請求項1記載のコンピュータ読取可能な記録媒
    体。
  5. 【請求項5】 前記複数のファイルは非始動関連部を備え、当該非始動関連
    部は前記複数のファイルの前記始動関連部をインストールする前記ステップの後
    に前記ディスク上に保存されることを特徴とする請求項1記載のコンピュータ読
    取可能な記録媒体。
  6. 【請求項6】 前記始動関連部は、プログラム立上げ中に読み取られること
    を特徴とする請求項1記載のコンピュータ読取可能な記録媒体。
  7. 【請求項7】 前記始動関連部は、プログラム・コマンドの実行時に読み取
    られることを特徴とする請求項1記載のコンピュータ読取可能な記録媒体。
  8. 【請求項8】 プログラム・コードに付随するファイル部をそれぞれ識別す
    る複数のエントリを、インストール・ディスク上に保存されたロード・シーケン
    ス・リストから読み取るステップと、 前記ロード・シーケンス・リストから読み取られた前記エントリごとに、当該
    エントリによって識別されたファイル部を、前記インストール・ディスクから読
    み取るステップと、 前記ロード・シーケンス・リストから読み取られた前記エントリごとに、前記
    ロード・シーケンス・リストの前記エントリに対応する順で前記ディスク上に保
    存されている読み取られたファイル部を、前記ディスク上で連続する自由クラス
    タのグループに書き込むステップと を備えていることを特徴とするプログラム・コードをインストール・ディスク
    からディスクにインストールする方法。
  9. 【請求項9】 前記ロード・シーケンス・リストは、複数の始動関連プログ
    ラム部がプログラム始動中に読み取られる順を識別することを特徴とする請求項
    8記載のプログラム・コードをインストール・ディスクからディスクにインスト
    ールする方法。
  10. 【請求項10】 前記ロード・シーケンス・リストの各々エントリは、ファ
    イル識別子と、前記識別されたファイルから読み取られるデータの位置とを有す
    ることを特徴とする請求項8記載のプログラム・コードをインストール・ディス
    クからディスクにインストールする方法。
  11. 【請求項11】 前記ロード・シーケンス・リストの各々エントリは、ファ
    イル名と、命名された前記ファイルに対するオフセットと、命名された前記ファ
    イルから読み取られるデータの量とを有することを特徴とする請求項8記載のプ
    ログラム・コードをインストール・ディスクからディスクにインストールする方
    法。
  12. 【請求項12】 前記ロード・シーケンス・リストの各々エントリに付随す
    る前記ファイル部の書き込み後に、前記ディスクに前記インストール・ディスク
    から非始動関連プログラム・コードを書き込むステップを更に備えていることを
    特徴とする請求項8記載のプログラム・コードをインストール・ディスクからデ
    ィスクにインストールする方法。
  13. 【請求項13】 始動関連部を有する複数のファイルを作成するステップと
    、 前記始動関連部が読み取られる順を決定するステップと、 前記始動関連部が読み取られる順を示すロード・シーケンス・リストを作成す
    るステップと、 前記複数のファイルと、前記ロード・シーケンス・リストと、インストール・
    プログラムとをインストール・ディスク上に保存するステップとを具備し、 コンピュータ実行可能な命令を有する前記インストール・プログラムは、 前記ディスク上で連続する自由クラスタの少なくとも1つのグループを識別す
    るステップと、 前記連続する自由クラスタの少なくとも1つのグループに、前記ロード・シー
    ケンス・リストで指示された順でディスク上に保存されている、前記複数のファ
    イルの前記始動関連部をインストールするステップとを具備する ことを特徴とするプログラム・コードをインストール・ディスクからディスク
    にインストールする方法。
  14. 【請求項14】 前記ロード・シーケンス・リストは複数のエントリを具備
    し、当該エントリの各々は、前記複数のファイルのなかの1つの名前と、インス
    トールされるファイルの部分とを具備することを特徴とする請求項13記載のプ
    ログラム・コードをインストール・ディスクからディスクにインストールする方
    法。
  15. 【請求項15】 前記始動関連部をインストールする前記ステップは、 前記複数のファイルのなかの1つと読み取られるファイルの部分とを識別する
    前記エントリを、前記ロード・シーケンス・リストから読み取るステップと、 前記ファイルの部分を、前記複数のファイルのなかで識別された1つから読み
    取るステップと、 前記ディスクに前記ファイルの部分を書き込むステップと を備えていることを特徴とする請求項13記載のプログラム・コードをインス
    トール・ディスクからディスクにインストールする方法。
  16. 【請求項16】 前記連続する自由クラスタの少なくとも1つのグループを
    識別する前記ステップは、 前記ディスクに保存されたデータから使用自在の自由クラスタのリストを読み
    取るステップと、 最大数の連続自由クラスタを持つ前記連続する自由クラスタのグループを識別
    するステップと を備えていることを特徴とする請求項13記載のプログラム・コードをインス
    トール・ディスクからディスクにインストールする方法。
  17. 【請求項17】 前記複数のファイルは非始動関連部を備え、当該非始動関
    連部は、前記複数のファイルの前記始動関連部をインストールするステップの後
    に前記ディスク上に保存されることを特徴とする請求項13記載のプログラム・
    コードをインストール・ディスクからディスクにインストールする方法。
  18. 【請求項18】 ディスク集中型オペレーションに付随する部分を持つ複数
    のファイルを作成するステップと、 ディスク集中部が前記ディスク集中型オペレーション中に読み取られる順を決
    定するステップと、 前記ディスク集中部が前記ディスク集中型オペレーション中に読み取られる順
    を示すロード・シーケンス・リストを作成するステップと、 前記複数のファイルと、前記ロード・シーケンス・リストと、インストール・
    プログラムとをインストール・ディスク上に保存するステップと、 前記複数のファイルと、前記ロード・シーケンス・リストとを前記インストー
    ル・ディスクからロジカル・ディスクにインストールするステップと、 前記ロジカル・ディスク上にインストールした後に、前記ロジカル・ディスク
    上で連続する自由クラスタの少なくとも1つのグループを識別する作業と、前記
    ロード・シーケンス・リストで指示された順で前記ディスク集中部を再構成する
    作業とを実施することによって、前記ディスク集中型部を最適化するステップと を備えていることを特徴とするプログラム・コードをロジカル・ディスク上に
    インストールして最適化する方法。
  19. 【請求項19】 前記ロード・シーケンス・リストは複数のエントリを具備
    し、当該エントリの各々は、前記複数のファイルのなかの1つの名前と、再構成
    されるファイルの部分とを具備することを特徴とする請求項18記載のプログラ
    ム・コードをロジカル・ディスク上にインストールして最適化する方法。
  20. 【請求項20】 その部分は、前記ファイルの開始部からのオフセットと、
    前記ファイルから読み取られたデータの量とによって識別されることを特徴とす
    る請求項19記載のプログラム・コードをロジカル・ディスク上にインストール
    して最適化する方法。
  21. 【請求項21】 前記ディスク集中部を再構成する前記作業は、 前記複数のファイルのなかの1つと、読み取られるファイルの部分とを識別す
    る、前記ロード・シーケンス・リストのエントリを読み取る過程と、 前記ファイルの部分を、前記複数のファイルのなかで識別された1つから読み
    取る過程と、 前記ファイルの部分をロジカル・ディスクに書き込む過程と を備えていることを特徴とする請求項18記載のプログラム・コードをロジカ
    ル・ディスク上にインストールして最適化する方法。
JP2000543892A 1998-04-15 1999-04-08 プログラムのインストール方法およびコンピュータ読取可能な記録媒体 Expired - Fee Related JP4235362B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/060,702 1998-04-15
US09/060,702 US6202121B1 (en) 1998-04-15 1998-04-15 System and method for improved program launch time
PCT/US1999/007690 WO1999053395A1 (en) 1998-04-15 1999-04-08 System and method for improved program launch time

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008107164A Division JP4571992B2 (ja) 1998-04-15 2008-04-16 プログラム・コードを論理ディスクにインストールして最適化する方法

Publications (3)

Publication Number Publication Date
JP2002511615A true JP2002511615A (ja) 2002-04-16
JP2002511615A5 JP2002511615A5 (ja) 2008-06-19
JP4235362B2 JP4235362B2 (ja) 2009-03-11

Family

ID=22031234

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2000543892A Expired - Fee Related JP4235362B2 (ja) 1998-04-15 1999-04-08 プログラムのインストール方法およびコンピュータ読取可能な記録媒体
JP2008107164A Expired - Fee Related JP4571992B2 (ja) 1998-04-15 2008-04-16 プログラム・コードを論理ディスクにインストールして最適化する方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2008107164A Expired - Fee Related JP4571992B2 (ja) 1998-04-15 2008-04-16 プログラム・コードを論理ディスクにインストールして最適化する方法

Country Status (7)

Country Link
US (1) US6202121B1 (ja)
EP (2) EP1607855B1 (ja)
JP (2) JP4235362B2 (ja)
CN (1) CN1212563C (ja)
DE (2) DE69926227T2 (ja)
TW (1) TW432317B (ja)
WO (1) WO1999053395A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006520032A (ja) * 2003-02-12 2006-08-31 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ファイルシステムデータおよびアプリケーション起動データのための確保領域を有する記憶媒体
US7823197B2 (en) 2004-06-30 2010-10-26 Panasonic Corporation Program execution device and program execution method

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6675233B1 (en) * 1998-03-26 2004-01-06 O2 Micro International Limited Audio controller for portable electronic devices
US6895448B2 (en) * 1998-03-26 2005-05-17 O2 Micro, Inc. Low-power audio CD player for portable computers
US6954804B2 (en) * 1998-03-26 2005-10-11 Micro, Inc. Controller for portable electronic devices
US6202121B1 (en) * 1998-04-15 2001-03-13 Microsoft Corporation System and method for improved program launch time
US6317875B1 (en) * 1999-01-15 2001-11-13 Intel Corporation Application execution performance through disk block relocation
JP2001007745A (ja) * 1999-06-24 2001-01-12 Techno Collage:Kk 非接触データ転送システム
JP2001117783A (ja) * 1999-08-10 2001-04-27 Seiko Epson Corp プログラム起動システム及びプログラム起動制御方法
WO2001015159A1 (en) * 1999-08-24 2001-03-01 O2 Micro International Limited Launch key, low power cd-rom player for portable computers
US6496977B1 (en) * 1999-10-21 2002-12-17 International Business Machines Corporation Method and system for implementing network filesystem-based aid for computer operating system upgrades
US6735678B2 (en) * 2000-05-24 2004-05-11 Seagate Technology Llc Method and apparatus for disc drive defragmentation
US7130930B1 (en) * 2000-06-16 2006-10-31 O2 Micro Inc. Low power CD-ROM player with CD-ROM subsystem for portable computer capable of playing audio CDs without supply energy to CPU
US6681391B1 (en) * 2000-06-21 2004-01-20 Microsoft Corporation Method and system for installing software on a computer system
US6763428B1 (en) * 2000-08-02 2004-07-13 Symantec Corporation Methods and systems for performing push-pull optimization of files while file storage allocations are actively changing
US20020069353A1 (en) * 2000-12-01 2002-06-06 Smith R. Doug Automated device driver installation
US7522966B2 (en) * 2000-12-01 2009-04-21 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7818443B2 (en) * 2000-12-01 2010-10-19 O2Micro International Ltd. Low power digital audio decoding/playing system for computing devices
US7526349B2 (en) * 2000-12-01 2009-04-28 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7890741B2 (en) * 2000-12-01 2011-02-15 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7522964B2 (en) 2000-12-01 2009-04-21 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7522965B2 (en) * 2000-12-01 2009-04-21 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
WO2002052396A2 (en) * 2000-12-22 2002-07-04 Koninklijke Philips Electronics N.V. Method and system for reducing fragmentation
US6480932B1 (en) * 2001-01-31 2002-11-12 Western Digital Technologies, Inc. Computer system having a host computer coupled to a disk drive with a drive-selected-application partition for storing data for execution by the host computer in response to drive-determined conditions
JP2002304823A (ja) * 2001-04-10 2002-10-18 Fujitsu Ltd リオーダリングコントローラ、リオーダリング方法及び記憶装置
US6990574B2 (en) * 2001-05-01 2006-01-24 General Electric Company Object oriented framework for scanner/workstation configuration
US20030079217A1 (en) * 2001-10-19 2003-04-24 Chern-Muh Wang Method for subserving preloaded programs
US6924667B2 (en) * 2002-07-19 2005-08-02 O2Micro International Limited Level shifting and level-shifting amplifier circuits
US20040068667A1 (en) * 2002-10-03 2004-04-08 International Business Machines Corporation Method and apparatus for securing and managing cluster computing in a network data processing system
GB2399188B (en) * 2003-03-04 2005-11-30 Fujitsu Serv Ltd Reducing the boot-up time of a computer system
US7607000B1 (en) 2003-05-13 2009-10-20 Apple Inc. Method for booting an operating system
TW591538B (en) * 2003-07-25 2004-06-11 Via Tech Inc Process for loading operating system
JP4608434B2 (ja) * 2003-12-03 2011-01-12 パナソニック株式会社 情報記録媒体のデータ処理装置及びデータ記録方法
US20050165856A1 (en) * 2004-01-27 2005-07-28 International Business Machines Corporation System and method for autonomic performance enhancement of storage media
US7536593B2 (en) * 2004-03-05 2009-05-19 International Business Machines Corporation Apparatus, system, and method for emergency backup
US7275150B2 (en) * 2004-03-15 2007-09-25 International Business Machines Corporation Method and system for adding frequently selected applications to a computer startup sequence
JP2005301801A (ja) * 2004-04-14 2005-10-27 Nec Corp 情報処理装置、メモリ管理装置、およびプログラム
FR2875923B1 (fr) * 2004-09-28 2006-12-22 Thales Sa Dispositif d'optimisation et de mise en route d'une application commandee par un calculateur a systeme d'exploitation multitache
US7689979B1 (en) * 2005-08-02 2010-03-30 Adobe Systems Inc. Methods and apparatus to improve application launch time
US7926053B1 (en) * 2005-08-26 2011-04-12 Adobe Systems Incorporated Methods and apparatus for optimizing installation location of software
US7669044B2 (en) * 2006-09-29 2010-02-23 Microsoft Corporation Accelerated system boot
CN100451993C (zh) * 2006-12-21 2009-01-14 威盛电子股份有限公司 多来源数据处理方法
US8087017B1 (en) * 2007-04-09 2011-12-27 Moka5, Inc. Trace-assisted prefetching of virtual machines in a distributed system
US7793266B2 (en) * 2007-06-04 2010-09-07 International Business Machines Corporation Method, apparatus and computer program product for optimizing access to the content of a virtual application container on a fixed, read-only medium
US7793265B2 (en) * 2007-06-04 2010-09-07 International Business Machines Corporation Method, apparatus and computer program product for optimizing file accesses for an application executing in a virtual container
KR101434297B1 (ko) * 2007-09-11 2014-08-27 삼성전자주식회사 파일할당표를 이용한 파일 디바이드 및 머지 방법
US8799429B1 (en) * 2008-05-06 2014-08-05 American Megatrends, Inc. Boot acceleration by consolidating client-specific boot data in a data storage system
US8127122B2 (en) * 2008-09-16 2012-02-28 Hewlett-Packard Development Company, L.P. Selection of boot drive in a computer system
CN101478462B (zh) * 2008-12-17 2010-12-08 成都市华为赛门铁克科技有限公司 存储数据读取和写入的装置和方法及固态硬盘
US20110099327A1 (en) * 2009-10-27 2011-04-28 Sony Ericsson Mobile Communications Ab System and method for launching an application programming utilizing a hybrid version of demand paging
WO2011053312A1 (en) * 2009-10-30 2011-05-05 Hewlett-Packard Development Company, L.P. Systems and methods of creating a restorable computer installation
US8443167B1 (en) 2009-12-16 2013-05-14 Western Digital Technologies, Inc. Data storage device employing a run-length mapping table and a single address mapping table
US8194340B1 (en) 2010-03-18 2012-06-05 Western Digital Technologies, Inc. Disk drive framing write data with in-line mapping data during write operations
US8687306B1 (en) 2010-03-22 2014-04-01 Western Digital Technologies, Inc. Systems and methods for improving sequential data rate performance using sorted data zones
US8693133B1 (en) 2010-03-22 2014-04-08 Western Digital Technologies, Inc. Systems and methods for improving sequential data rate performance using sorted data zones for butterfly format
US8856438B1 (en) 2011-12-09 2014-10-07 Western Digital Technologies, Inc. Disk drive with reduced-size translation table
US9330715B1 (en) 2010-03-22 2016-05-03 Western Digital Technologies, Inc. Mapping of shingled magnetic recording media
US8699185B1 (en) 2012-12-10 2014-04-15 Western Digital Technologies, Inc. Disk drive defining guard bands to support zone sequentiality when butterfly writing shingled data tracks
US8621133B1 (en) 2010-06-29 2013-12-31 Western Digital Technologies, Inc. Reading multiple metadata files across multiple tracks
CN102375850B (zh) * 2010-08-23 2013-10-30 联想(北京)有限公司 电子设备的文件排布方法、启动方法及电子设备
JP5342522B2 (ja) * 2010-08-26 2013-11-13 株式会社デジタル インストール方法及びプログラム
US8478979B2 (en) 2010-09-09 2013-07-02 Hewlett-Packard Development Company, L.P. Disable a feature of a computing machine
US8756361B1 (en) 2010-10-01 2014-06-17 Western Digital Technologies, Inc. Disk drive modifying metadata cached in a circular buffer when a write operation is aborted
US8954664B1 (en) 2010-10-01 2015-02-10 Western Digital Technologies, Inc. Writing metadata files on a disk
US8832708B2 (en) 2010-10-12 2014-09-09 Microsoft Corporation Process pool of empty application hosts to improve user perceived launch time of applications
US9569351B2 (en) 2010-10-25 2017-02-14 Seagate Technology Llc Storing corresponding data units in a common storage unit
US8793429B1 (en) 2011-06-03 2014-07-29 Western Digital Technologies, Inc. Solid-state drive with reduced power up time
US8756382B1 (en) 2011-06-30 2014-06-17 Western Digital Technologies, Inc. Method for file based shingled data storage utilizing multiple media types
EP2557497A1 (en) * 2011-08-08 2013-02-13 Advanced Digital Broadcast S.A. Method for improving booting of a computing device
US9213493B1 (en) 2011-12-16 2015-12-15 Western Digital Technologies, Inc. Sorted serpentine mapping for storage drives
JP5679074B2 (ja) * 2011-12-19 2015-03-04 富士通株式会社 ソフトウェアのインストール順序を決定する方法、プログラム、及び装置
US8819367B1 (en) 2011-12-19 2014-08-26 Western Digital Technologies, Inc. Accelerated translation power recovery
US8612706B1 (en) 2011-12-21 2013-12-17 Western Digital Technologies, Inc. Metadata recovery in a disk drive
CN102609291B (zh) * 2012-02-29 2015-05-27 记忆科技(深圳)有限公司 基于固态硬盘的系统启动方法和固态硬盘
US10078474B1 (en) * 2012-06-29 2018-09-18 Emc Corporation Method of maintaining list of scratch volumes in shared filesystems across multiple nodes
CN102981874B (zh) * 2012-11-15 2015-12-02 北京奇虎科技有限公司 计算机处理系统和注册表重定向方法
CN103530319B (zh) * 2013-09-16 2017-12-15 华为技术有限公司 一种操作请求的处理方法和装置
US8953269B1 (en) 2014-07-18 2015-02-10 Western Digital Technologies, Inc. Management of data objects in a data object zone
US9875055B1 (en) 2014-08-04 2018-01-23 Western Digital Technologies, Inc. Check-pointing of metadata
JP6668840B2 (ja) * 2016-03-11 2020-03-18 富士通株式会社 ソフトウェア導入支援プログラム、ソフトウェア導入支援装置、及びソフトウェア導入支援方法
CN107402721A (zh) * 2017-06-30 2017-11-28 郑州云海信息技术有限公司 一种硬盘的控制方法、装置及服务器

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05216594A (ja) * 1992-01-31 1993-08-27 Nec Corp 再配置ディスク装置
US5325532A (en) * 1992-09-25 1994-06-28 Compaq Computer Corporation Automatic development of operating system boot image
US5473767A (en) * 1992-11-03 1995-12-05 Intel Corporation Method and apparatus for asynchronously stopping the clock in a processor
US5432937A (en) * 1993-08-20 1995-07-11 Next Computer, Inc. Method and apparatus for architecture independent executable files
JP3564732B2 (ja) * 1994-06-30 2004-09-15 ソニー株式会社 ディスク制御方法および装置
US5732266A (en) * 1994-09-02 1998-03-24 Compaq Computer Corporation Storage medium storing application programs and application initialization files and automatic launching of computer applications stored on the storage medium
US5574907A (en) 1994-11-30 1996-11-12 Microsoft Corporation Two-pass defragmentation of compressed hard disk data with a single data rewrite
US5778392A (en) 1996-04-01 1998-07-07 Symantec Corporation Opportunistic tile-pulling, vacancy-filling method and apparatus for file-structure reorganization
JPH09293007A (ja) * 1996-04-26 1997-11-11 Nec Corp プログラムインストール装置
US5802593A (en) * 1996-09-06 1998-09-01 Intel Corporation Method and apparatus for improving disk drive performance
US5857101A (en) * 1997-04-15 1999-01-05 Acceleration Software International Corporation Program lunch acceleration
US5933630A (en) * 1997-06-13 1999-08-03 Acceleration Software International Corporation Program launch acceleration using ram cache
US6202121B1 (en) * 1998-04-15 2001-03-13 Microsoft Corporation System and method for improved program launch time

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006520032A (ja) * 2003-02-12 2006-08-31 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ファイルシステムデータおよびアプリケーション起動データのための確保領域を有する記憶媒体
US7823197B2 (en) 2004-06-30 2010-10-26 Panasonic Corporation Program execution device and program execution method

Also Published As

Publication number Publication date
DE69943066D1 (de) 2011-02-03
EP1607855A2 (en) 2005-12-21
EP1607855A3 (en) 2007-07-04
CN1212563C (zh) 2005-07-27
JP2008251018A (ja) 2008-10-16
JP4235362B2 (ja) 2009-03-11
EP1073947B1 (en) 2005-07-20
CN1296582A (zh) 2001-05-23
US6202121B1 (en) 2001-03-13
EP1073947A1 (en) 2001-02-07
WO1999053395A1 (en) 1999-10-21
EP1607855B1 (en) 2010-12-22
TW432317B (en) 2001-05-01
DE69926227T2 (de) 2006-04-13
DE69926227D1 (de) 2005-08-25
JP4571992B2 (ja) 2010-10-27

Similar Documents

Publication Publication Date Title
JP2002511615A (ja) コンピュータ読取可能な記録媒体、プログラム・コードをインストール・ディスクからディスクにインストールする方法、プログラム・コードをロジカル・ディスク上にインストールして最適化する方法
US20220350498A1 (en) Method and system for implementing writable snapshots in a virtualized storage environment
US5956745A (en) System and method for automatically resizing a disk drive volume
US8051044B1 (en) Method and system for continuous data protection
US8074035B1 (en) System and method for using multivolume snapshots for online data backup
US5930828A (en) Real-time apparatus and method for minimizing disk fragmentation in a computer system
US6453383B1 (en) Manipulation of computer volume segments
US6108759A (en) Manipulation of partitions holding advanced file systems
US6173291B1 (en) Method and apparatus for recovering data from damaged or corrupted file storage media
US9665304B2 (en) Storage system with fast snapshot tree search
US7539828B2 (en) Method and system for automatically preserving persistent storage
US7032107B2 (en) Virtual partition for recording and restoring computer data files
US6671772B1 (en) Hierarchical file system structure for enhancing disk transfer efficiency
KR100962055B1 (ko) 컴퓨터 시스템들간의 객체 공유
US7216251B2 (en) Computer imaging recovery without a working partition or a secondary medium
CZ9701859A3 (cs) Ukládání počítačových dat
KR100317691B1 (ko) 로그 구조화 목표 저장장치를 사전에 구성하여 볼륨을 효율적으로 복사하는 방법 및 장치
US20070061540A1 (en) Data storage system using segmentable virtual volumes
JP2008146408A (ja) データ記憶装置、そのデータ再配置方法、プログラム
CN109407971B (zh) 升级磁盘锁的方法及装置
US8359439B2 (en) Backup apparatus, backup method, and file reading apparatus
US20040044886A1 (en) Partition recovery method
US6574704B1 (en) Information storage management device and method, control device and method
CN115221117A (zh) 一种可跨磁盘转移数据的方法及系统
US7191297B2 (en) Method for volume manager to have configurable device type and subtype for application use

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050517

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050517

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050517

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071116

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080215

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080222

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20080313

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080314

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080324

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20080313

A524 Written submission of copy of amendment under section 19 (pct)

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20080416

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080523

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080821

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20080826

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20080826

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080926

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: 20081114

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: 20081215

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111219

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: 20111219

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121219

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131219

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees