JPH10320248A - 実行時ルックアップ及び読出し専用アクセス用バイナリイメージへファイルを埋込むための装置及びその方法 - Google Patents
実行時ルックアップ及び読出し専用アクセス用バイナリイメージへファイルを埋込むための装置及びその方法Info
- Publication number
- JPH10320248A JPH10320248A JP9297318A JP29731897A JPH10320248A JP H10320248 A JPH10320248 A JP H10320248A JP 9297318 A JP9297318 A JP 9297318A JP 29731897 A JP29731897 A JP 29731897A JP H10320248 A JPH10320248 A JP H10320248A
- Authority
- JP
- Japan
- Prior art keywords
- file
- data
- data file
- snapshot
- files
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【課題】 コンピュータメモリ中に仮想ファイルシ
ステムを効率的に生成するための方法及び装置を提供す
る。 【解決手段】 仮想ファイルシステム生成方法は、ファ
イルシステムからデータファイルを引き出し、引出済デ
ータファイルからスナップショットを生成し、オブジェ
クトデータファイルに変換する。変換済オブジェクトデ
ータファイルは1個以上の他のオブジェクトデータファ
イルに関連付けられる。スナップショットは引出済デー
タファイルを1個以上の他のデータファイルに結合する
ことにより生成されても良い。方法は、オブジェクトデ
ータファイル内にデータファイル中のデータのための空
間を予約する命令を含む、スナップショットからオブジ
ェクトデータファイルを生成するための1組のアセンブ
ラ命令を生成し、1組のアセンブラ命令を予約済空間を
含むオブジェクトデータファイルに変換する。
ステムを効率的に生成するための方法及び装置を提供す
る。 【解決手段】 仮想ファイルシステム生成方法は、ファ
イルシステムからデータファイルを引き出し、引出済デ
ータファイルからスナップショットを生成し、オブジェ
クトデータファイルに変換する。変換済オブジェクトデ
ータファイルは1個以上の他のオブジェクトデータファ
イルに関連付けられる。スナップショットは引出済デー
タファイルを1個以上の他のデータファイルに結合する
ことにより生成されても良い。方法は、オブジェクトデ
ータファイル内にデータファイル中のデータのための空
間を予約する命令を含む、スナップショットからオブジ
ェクトデータファイルを生成するための1組のアセンブ
ラ命令を生成し、1組のアセンブラ命令を予約済空間を
含むオブジェクトデータファイルに変換する。
Description
【0001】
【発明の属する技術分野】本発明は、一般的にコンピュ
ータファイルの管理及びコンピュータファイルへアクセ
スするための方法、装置、及びソフトウェアに関する。
より詳細には、本発明は、コンピュータシステム上で実
行中のソフトウェアによって使用される仮想ファイルシ
ステムを生成するためにデータファイル及びファイル名
称をオブジェクトファイル中へ効率的に埋め込むための
方法、装置、及びソフトウェアに関する。
ータファイルの管理及びコンピュータファイルへアクセ
スするための方法、装置、及びソフトウェアに関する。
より詳細には、本発明は、コンピュータシステム上で実
行中のソフトウェアによって使用される仮想ファイルシ
ステムを生成するためにデータファイル及びファイル名
称をオブジェクトファイル中へ効率的に埋め込むための
方法、装置、及びソフトウェアに関する。
【0002】
【従来の技術】ネットワークに接続されているコンピュ
ータシステムはしばしば、異なるプログラム間、及び異
なるオペレーティングシステム間でさえも共有されるフ
ァイルシステムを有する。一般的にオペレーティングシ
ステム内の基本システム機能を管理する1つ以上のプロ
グラムを含むカーネルは、コンピュータがカーネルを実
行している間、またはアプリケーションプログラムを実
行している間、遠隔的に又は局所的に絶えず物理ファイ
ルにアクセスしなければならない。この要求は時間を浪
費すると共に多くのコンピュータシステムリソースを使
用する。例えば、遠隔ハードディスク上に在るファイル
システムに絶えずアクセスしなければならないという事
実は、一般的に、カーネルが実行し得る全体の速度及び
効率を低下させる。このことは、コンピュータシステム
全体の性能に順次、影響を及ぼし得る。
ータシステムはしばしば、異なるプログラム間、及び異
なるオペレーティングシステム間でさえも共有されるフ
ァイルシステムを有する。一般的にオペレーティングシ
ステム内の基本システム機能を管理する1つ以上のプロ
グラムを含むカーネルは、コンピュータがカーネルを実
行している間、またはアプリケーションプログラムを実
行している間、遠隔的に又は局所的に絶えず物理ファイ
ルにアクセスしなければならない。この要求は時間を浪
費すると共に多くのコンピュータシステムリソースを使
用する。例えば、遠隔ハードディスク上に在るファイル
システムに絶えずアクセスしなければならないという事
実は、一般的に、カーネルが実行し得る全体の速度及び
効率を低下させる。このことは、コンピュータシステム
全体の性能に順次、影響を及ぼし得る。
【0003】結果として、「仮想」ファイルシステム
が、ランダムアクセスメモリ(RAM)又はリードオン
リメモリ(ROM)といったコンピュータメモリ中に生
成され得る。これら仮想ファイルシステムは、ファイル
システムを使用することが予想されるカーネル又はアプ
リケーションプログラムと同時にコンピュータメモリ中
にロードされ得る。仮想ファイルシステムは、ファイル
システム中に含まれるカーネル又はプログラムに関連す
るデータ部分だけを備えるので、カーネル又はプログラ
ムがロードされる際に同時に仮想ファイルシステムをロ
ードすることが可能である。すなわち、プログラムによ
り使用されるファイルシステムは、一般的に識別可能な
ので、プログラムと共にロードされ得るデータと共にフ
ァイルシステムの仮想代表を含むことができる。
が、ランダムアクセスメモリ(RAM)又はリードオン
リメモリ(ROM)といったコンピュータメモリ中に生
成され得る。これら仮想ファイルシステムは、ファイル
システムを使用することが予想されるカーネル又はアプ
リケーションプログラムと同時にコンピュータメモリ中
にロードされ得る。仮想ファイルシステムは、ファイル
システム中に含まれるカーネル又はプログラムに関連す
るデータ部分だけを備えるので、カーネル又はプログラ
ムがロードされる際に同時に仮想ファイルシステムをロ
ードすることが可能である。すなわち、プログラムによ
り使用されるファイルシステムは、一般的に識別可能な
ので、プログラムと共にロードされ得るデータと共にフ
ァイルシステムの仮想代表を含むことができる。
【0004】ファイルシステムは、通常データファイル
を含んでいるので、仮想ファイルシステムの生成は、一
般的に、仮想ファイルシステムとしてのコンピュータメ
モリ中へロードされる実行可能コードのイメージを取得
するために、関連付けられているであろうオブジェクト
ファイル中へのデータファイル、及びデータファイル名
称の具象化を含む。当業者にとって明らかであるよう
に、実行可能コードのイメージは、基本的にコンピュー
タプロセッサによって理解され得ると共に処理され得る
形式のコンピュータ命令を含むコンピュータプログラム
である。データファイルのオブジェクトファイルへの具
象化に用いられる方法は、通常、データの高級プログラ
ミング言語用ソースコードへの変換、あるいは、例え
ば、C言語で生成されたアレイといったデータの高級言
語データ構造への直接変換のいずれかを含む。一般的
に、その後、データファイルに含まれているデータのソ
ースコードのバージョン、あるいは、高級言語データ構
造のいずれかを用いてオブジェクトファイルが取得され
得る。
を含んでいるので、仮想ファイルシステムの生成は、一
般的に、仮想ファイルシステムとしてのコンピュータメ
モリ中へロードされる実行可能コードのイメージを取得
するために、関連付けられているであろうオブジェクト
ファイル中へのデータファイル、及びデータファイル名
称の具象化を含む。当業者にとって明らかであるよう
に、実行可能コードのイメージは、基本的にコンピュー
タプロセッサによって理解され得ると共に処理され得る
形式のコンピュータ命令を含むコンピュータプログラム
である。データファイルのオブジェクトファイルへの具
象化に用いられる方法は、通常、データの高級プログラ
ミング言語用ソースコードへの変換、あるいは、例え
ば、C言語で生成されたアレイといったデータの高級言
語データ構造への直接変換のいずれかを含む。一般的
に、その後、データファイルに含まれているデータのソ
ースコードのバージョン、あるいは、高級言語データ構
造のいずれかを用いてオブジェクトファイルが取得され
得る。
【0005】データファイルのソースコード、あるい
は、高級言語データ構造への変換は、時間を要する。デ
ータファイルは、プログラムにより使用される仮想デー
タファイルが最近のファイルであることを保証するため
に、一般的に、データファイルに関連付けられているプ
ログラムが実行される毎に変換されなければならないの
で、データ変換プロセスは、ユーザによるオペレーショ
ナルソフトウェアに対するアクセスを妨げるプログラム
構築時の速度、すなわち、変換速度、コンパイル速度、
関連付け速度を飛躍的に低減することができる。
は、高級言語データ構造への変換は、時間を要する。デ
ータファイルは、プログラムにより使用される仮想デー
タファイルが最近のファイルであることを保証するため
に、一般的に、データファイルに関連付けられているプ
ログラムが実行される毎に変換されなければならないの
で、データ変換プロセスは、ユーザによるオペレーショ
ナルソフトウェアに対するアクセスを妨げるプログラム
構築時の速度、すなわち、変換速度、コンパイル速度、
関連付け速度を飛躍的に低減することができる。
【0006】
【発明が解決しようとする課題】本発明は、上記した従
来技術の問題点を解決するためになされたものであり、
コンピュータメモリ中に仮想ファイルシステムを効率的
に生成するための方法及び装置を提供することを目的と
する。
来技術の問題点を解決するためになされたものであり、
コンピュータメモリ中に仮想ファイルシステムを効率的
に生成するための方法及び装置を提供することを目的と
する。
【0007】
【課題を解決するための手段】本発明によれば、データ
ファイルのスナップショット(すなわち、瞬間的なデー
タファイルの内容)を撮影(すなわち、記憶)すること
によりデータファイルからオブジェクトファイルを生成
するための方法、システム、及びソフトウェアを備える
ことにより、データファイルを効率的にソースコード、
あるいは、高級言語データ構造に変換する際の上記問題
点が解決される。本明細書中に記載される方法、装置及
びソフトウェアは、仮想ファイルシステムを生成するた
めの有効な解決方法を提供する。
ファイルのスナップショット(すなわち、瞬間的なデー
タファイルの内容)を撮影(すなわち、記憶)すること
によりデータファイルからオブジェクトファイルを生成
するための方法、システム、及びソフトウェアを備える
ことにより、データファイルを効率的にソースコード、
あるいは、高級言語データ構造に変換する際の上記問題
点が解決される。本明細書中に記載される方法、装置及
びソフトウェアは、仮想ファイルシステムを生成するた
めの有効な解決方法を提供する。
【0008】上記目的を達成するために請求項1に記載
の発明に係るコンピュータメモリ内に仮想ファイルシス
テムを生成するための方法は、ファイルシステムからデ
ータファイルを引き出すステップ、前記データファイル
のスナップショットを生成するステップ、前記データフ
ァイルのスナップショットをオブジェクトデータファイ
ルに変換するステップとを備えることを特徴とする。
の発明に係るコンピュータメモリ内に仮想ファイルシス
テムを生成するための方法は、ファイルシステムからデ
ータファイルを引き出すステップ、前記データファイル
のスナップショットを生成するステップ、前記データフ
ァイルのスナップショットをオブジェクトデータファイ
ルに変換するステップとを備えることを特徴とする。
【0009】ここで、本仮想ファイルシステム生成方法
はさらに、前記オブジェクトデータファイルを1個以上
の他のオブジェクトデータファイルに関連付けるステッ
プを備えても良く、前記スナップショットは前記引出済
データファイルを1個以上の他のデータファイルに結合
することにより生成されても良い。さらに、本仮想ファ
イルシステム生成方法はさらに、前記オブジェクトデー
タファイル内に前記データファイル中のデータのための
空間を予約する命令を含む、前記スナップショットから
オブジェクトデータファイルを生成するための1組のア
センブラ命令を生成するステップ、前記1組のアセンブ
ラ命令を予約済空間を含む前記オブジェクトデータファ
イルに変換するステップ、前記スナップショットを前記
予約済空間にコピーするステップとを備えるても良い。
はさらに、前記オブジェクトデータファイルを1個以上
の他のオブジェクトデータファイルに関連付けるステッ
プを備えても良く、前記スナップショットは前記引出済
データファイルを1個以上の他のデータファイルに結合
することにより生成されても良い。さらに、本仮想ファ
イルシステム生成方法はさらに、前記オブジェクトデー
タファイル内に前記データファイル中のデータのための
空間を予約する命令を含む、前記スナップショットから
オブジェクトデータファイルを生成するための1組のア
センブラ命令を生成するステップ、前記1組のアセンブ
ラ命令を予約済空間を含む前記オブジェクトデータファ
イルに変換するステップ、前記スナップショットを前記
予約済空間にコピーするステップとを備えるても良い。
【0010】また、請求項5に記載の発明に係るコンピ
ュータメモリ中に仮想ファイルシステムを生成するため
のプログラムを記録した記録媒体は、ファイルシステム
からデータファイルを引き出すステップ、前記データフ
ァイルのスナップショットを生成するステップ、前記デ
ータファイルのスナップショットをオブジェクトデータ
ファイルに変換するステップとを備える仮想ファイルシ
ステム生成プログラムを記録することを特徴とする。
ュータメモリ中に仮想ファイルシステムを生成するため
のプログラムを記録した記録媒体は、ファイルシステム
からデータファイルを引き出すステップ、前記データフ
ァイルのスナップショットを生成するステップ、前記デ
ータファイルのスナップショットをオブジェクトデータ
ファイルに変換するステップとを備える仮想ファイルシ
ステム生成プログラムを記録することを特徴とする。
【0011】ここで、前記プログラムはさらに、前記オ
ブジェクトデータファイルを1個以上の他のオブジェク
トデータファイルに関連付けるステップを備えても良
く、また、前記スナップショットは前記引出済データフ
ァイルを1個以上の他のデータファイルに結合すること
により生成されても良い。また、前記プログラムはさら
に、前記オブジェクトデータファイル内に前記データフ
ァイル中のデータのための空間を予約する命令を含む、
前記スナップショットからオブジェクトデータファイル
を生成するための1組のアセンブラ命令を生成するステ
ップ、前記1組のアセンブラ命令を予約済空間を含む前
記オブジェクトデータファイルに変換するステップ、前
記スナップショットを前記予約済空間にコピーするステ
ップとを備えても良い。
ブジェクトデータファイルを1個以上の他のオブジェク
トデータファイルに関連付けるステップを備えても良
く、また、前記スナップショットは前記引出済データフ
ァイルを1個以上の他のデータファイルに結合すること
により生成されても良い。また、前記プログラムはさら
に、前記オブジェクトデータファイル内に前記データフ
ァイル中のデータのための空間を予約する命令を含む、
前記スナップショットからオブジェクトデータファイル
を生成するための1組のアセンブラ命令を生成するステ
ップ、前記1組のアセンブラ命令を予約済空間を含む前
記オブジェクトデータファイルに変換するステップ、前
記スナップショットを前記予約済空間にコピーするステ
ップとを備えても良い。
【0012】さらに、請求項9に記載の発明に係るコン
ピュータメモリ、及び1個以上のデータファイルを有す
るファイルシステムを備えると共に、コンピュータメモ
リ中に仮想ファイルシステムを生成するために構成され
ているコンピュータシステムは、ファイルシステムから
データファイルを引き出すための引出機構、前記データ
ファイルのスナップショットを生成するためのデータ取
得機構、前記データファイルのスナップショットをオブ
ジェクトデータファイルに変換するための構築装置とを
備えることを特徴とする。
ピュータメモリ、及び1個以上のデータファイルを有す
るファイルシステムを備えると共に、コンピュータメモ
リ中に仮想ファイルシステムを生成するために構成され
ているコンピュータシステムは、ファイルシステムから
データファイルを引き出すための引出機構、前記データ
ファイルのスナップショットを生成するためのデータ取
得機構、前記データファイルのスナップショットをオブ
ジェクトデータファイルに変換するための構築装置とを
備えることを特徴とする。
【0013】ここで、本コンピュータシステムはさら
に、前記オブジェクトデータファイルを1個以上の他の
オブジェクトデータファイルに関連付けるための関連付
け装置を備えても良く、また、前記スナップショットを
前記引出済データファイルを1個以上の他のデータファ
イルに結合するための結合装置を備えても良い。さら
に、コンピュータシステムは、前記オブジェクトデータ
ファイル内に空間を予約する命令を含むと共に、前記結
合済データファイルからオブジェクトデータファイルを
生成するための1組のアセンブラ命令を生成するための
アセンブラ、前記1組のアセンブラ命令を予約済空間を
含む前記オブジェクトデータファイルに変換するステッ
プ、前記スナップショットを前記予約済空間にコピーす
るコピー装置とを備えても良い。
に、前記オブジェクトデータファイルを1個以上の他の
オブジェクトデータファイルに関連付けるための関連付
け装置を備えても良く、また、前記スナップショットを
前記引出済データファイルを1個以上の他のデータファ
イルに結合するための結合装置を備えても良い。さら
に、コンピュータシステムは、前記オブジェクトデータ
ファイル内に空間を予約する命令を含むと共に、前記結
合済データファイルからオブジェクトデータファイルを
生成するための1組のアセンブラ命令を生成するための
アセンブラ、前記1組のアセンブラ命令を予約済空間を
含む前記オブジェクトデータファイルに変換するステッ
プ、前記スナップショットを前記予約済空間にコピーす
るコピー装置とを備えても良い。
【0014】
【発明の実施の形態】以下、ソースコード又は高級言語
データ構造へのデータ変換を伴わないデータファイル及
びファイル名称のオブジェクトファイルへの埋込を含む
仮想ファイルシステムを生成するための方法、装置、及
びソフトウェアについてのいくつか発明の実施の形態に
ついて図面を参照して説明する。本明細書に記載する方
法、装置、及びソフトウェアを使用することにより、仮
想ファイルシステムを一層効率的に構成することが可能
となり、これによりオペレーティングシステム及びアプ
リケーションソフトウェア双方の性能を改善することが
できる。
データ構造へのデータ変換を伴わないデータファイル及
びファイル名称のオブジェクトファイルへの埋込を含む
仮想ファイルシステムを生成するための方法、装置、及
びソフトウェアについてのいくつか発明の実施の形態に
ついて図面を参照して説明する。本明細書に記載する方
法、装置、及びソフトウェアを使用することにより、仮
想ファイルシステムを一層効率的に構成することが可能
となり、これによりオペレーティングシステム及びアプ
リケーションソフトウェア双方の性能を改善することが
できる。
【0015】図1は、本発明の発明の実施の形態に従
う、その上でカーネルイメージが生成され得ると共に、
そのイメージを実行し得るコンピュータシステム例を図
示する。ネットワークに接続されているコンピュータシ
ステム102は、その上でカーネル又はアプリケーショ
ンプログラム106が構築され得る構築マシン104を
有している。カーネル106が構築マシン104上で構
築されるために、一般的にカーネル106は、カーネル
ソフトウェア(又はプログラム)の実行に必要な種々の
ファイルにアクセスしなければならない。カーネル10
6中に含まれる仮想ファイルと共に、カーネル106中
に含まれる仮想ファイルに類似するあらゆるプログラム
に含まれる仮想ファイルについて以下説明する。例え
ば、カーネルが起動(ランチ)される場合、ファイル構
造を含むこれらのファイルは、これに限定されるもので
はないがさらに、プロパティファイル108、プログラ
ムコード(PC)112、データファイル(D)11
6、及び/又はフォントファイル(F)120を含み得
る。これらのファイルは、例えば、124で示すネット
ワーク接続を通じて構築マシン104に対してアクセス
可能である。例えば、データサーバ130上に存在し得
るプロパティファイル108は、ネットワークバックボ
ーン126を越えネットワーク接続124を通じて構築
マシン104に対してアクセス可能である。あるいは、
例えば、プログラムコード112、データファイル11
6、及びフォントファイル120といったファイルは、
構築マシン104に直接関連付けられているデータサー
バ134上に存在し得る。
う、その上でカーネルイメージが生成され得ると共に、
そのイメージを実行し得るコンピュータシステム例を図
示する。ネットワークに接続されているコンピュータシ
ステム102は、その上でカーネル又はアプリケーショ
ンプログラム106が構築され得る構築マシン104を
有している。カーネル106が構築マシン104上で構
築されるために、一般的にカーネル106は、カーネル
ソフトウェア(又はプログラム)の実行に必要な種々の
ファイルにアクセスしなければならない。カーネル10
6中に含まれる仮想ファイルと共に、カーネル106中
に含まれる仮想ファイルに類似するあらゆるプログラム
に含まれる仮想ファイルについて以下説明する。例え
ば、カーネルが起動(ランチ)される場合、ファイル構
造を含むこれらのファイルは、これに限定されるもので
はないがさらに、プロパティファイル108、プログラ
ムコード(PC)112、データファイル(D)11
6、及び/又はフォントファイル(F)120を含み得
る。これらのファイルは、例えば、124で示すネット
ワーク接続を通じて構築マシン104に対してアクセス
可能である。例えば、データサーバ130上に存在し得
るプロパティファイル108は、ネットワークバックボ
ーン126を越えネットワーク接続124を通じて構築
マシン104に対してアクセス可能である。あるいは、
例えば、プログラムコード112、データファイル11
6、及びフォントファイル120といったファイルは、
構築マシン104に直接関連付けられているデータサー
バ134上に存在し得る。
【0016】他のコンピュータは、カーネル106のイ
メージがそれらコンピュータ上にロードされる(存在す
る、loaded)とき、カーネル106に関連するファイル
構造に対するアクセスを要求し得る。これらコンピュー
タは、ファイル構造の必須ファイルに対して直接アクセ
スすることができる。しかしながら、一般的に、ファイ
ル構造に対する直接のアクセスは非効率的であり、場合
によっては、仮想ファイルシステムに対する効率的なア
クセスを可能にするために作用するコンピュータに関連
するメモリ中に仮想ファイルシステムを生成することは
実施不可能である。
メージがそれらコンピュータ上にロードされる(存在す
る、loaded)とき、カーネル106に関連するファイル
構造に対するアクセスを要求し得る。これらコンピュー
タは、ファイル構造の必須ファイルに対して直接アクセ
スすることができる。しかしながら、一般的に、ファイ
ル構造に対する直接のアクセスは非効率的であり、場合
によっては、仮想ファイルシステムに対する効率的なア
クセスを可能にするために作用するコンピュータに関連
するメモリ中に仮想ファイルシステムを生成することは
実施不可能である。
【0017】その上でカーネル又はアプリケーションプ
ログラム106のイメージが実行されるコンピュータ1
40は、カーネル(又はアプリケーション)106の全
代表、及びカーネル106に関連するあらゆるファイル
構造をコンピュータ140に関連するメモリ142中に
ダウンロードし得る。すなわち、カーネル106のイメ
ージ150及び関連ファイル構造は、矢印148によっ
て概念的に示されるようにメモリ142中にダウンロー
ドされ得る。ある発明の実施の形態では、イメージ15
0は、ネットワークバックボーン126を越え、ネット
ワーク接続を通じて構築マシン104からダウンロード
され得る。他の実施の形態では、イメージ150をメモ
リ142中にダウンロードするために、リードオンリメ
モリ(ROM)、またはハードディスクが用いられ得
る。
ログラム106のイメージが実行されるコンピュータ1
40は、カーネル(又はアプリケーション)106の全
代表、及びカーネル106に関連するあらゆるファイル
構造をコンピュータ140に関連するメモリ142中に
ダウンロードし得る。すなわち、カーネル106のイメ
ージ150及び関連ファイル構造は、矢印148によっ
て概念的に示されるようにメモリ142中にダウンロー
ドされ得る。ある発明の実施の形態では、イメージ15
0は、ネットワークバックボーン126を越え、ネット
ワーク接続を通じて構築マシン104からダウンロード
され得る。他の実施の形態では、イメージ150をメモ
リ142中にダウンロードするために、リードオンリメ
モリ(ROM)、またはハードディスクが用いられ得
る。
【0018】前述のように、一般的に仮想ファイルシス
テムは、カーネル又は他のコンピュータプログラム実行
中における断続的な物理ファイルシステムへのアクセス
の必要性を取り除くために生成される。一般的に、仮想
ファイルシステムは、例えば、ランダムアクセスメモリ
(RAM)又は、リードオンリメモリ(ROM)といっ
たコンピュータメモリ中に存在し、この結果、たとえ仮
想ファイルシステムがローカルファイルシステムであっ
たとしても、仮想ファイルシステムに対するプログラム
のアクセスを可能にする。物理ファイルに対応するオブ
ジェクトファイルは、実行可能なプログラム、又はプロ
グラムイメージを生成するために、プログラムに関連す
る他のファイルと共に関連付けられ得るよう生成され得
る。コンピュータプログラム実行中に通常アクセスされ
るファイルにはデータファイルが含まれる。データファ
イルからオブジェクトファイルを生成するために、デー
タファイルは、通常、高級プログラミング言語用ソース
コードに変換される。ソースコードへのデータファイル
の変換はまた、一般的に、変換されたソースコードがデ
ータファイルから取得されるオブジェクトファイルに適
切なアセンブラ言語であることを必要とする。
テムは、カーネル又は他のコンピュータプログラム実行
中における断続的な物理ファイルシステムへのアクセス
の必要性を取り除くために生成される。一般的に、仮想
ファイルシステムは、例えば、ランダムアクセスメモリ
(RAM)又は、リードオンリメモリ(ROM)といっ
たコンピュータメモリ中に存在し、この結果、たとえ仮
想ファイルシステムがローカルファイルシステムであっ
たとしても、仮想ファイルシステムに対するプログラム
のアクセスを可能にする。物理ファイルに対応するオブ
ジェクトファイルは、実行可能なプログラム、又はプロ
グラムイメージを生成するために、プログラムに関連す
る他のファイルと共に関連付けられ得るよう生成され得
る。コンピュータプログラム実行中に通常アクセスされ
るファイルにはデータファイルが含まれる。データファ
イルからオブジェクトファイルを生成するために、デー
タファイルは、通常、高級プログラミング言語用ソース
コードに変換される。ソースコードへのデータファイル
の変換はまた、一般的に、変換されたソースコードがデ
ータファイルから取得されるオブジェクトファイルに適
切なアセンブラ言語であることを必要とする。
【0019】データファイルを直接オブジェクトファイ
ルに埋め込むことにより、データファイルの変換に必要
なリソース及び時間が低減され得る。発明の実施の形態
の1つによれば、データファイルを直接オブジェクトフ
ァイルに埋め込むための1つの方法には、プログラム構
築時におけるデータファイルの「スナップショット(瞬
間的なデータファイルの内容)」の記憶(撮影)、及び
プログラム実行時におけるスナップショット又はデータ
ファイルを結合することによるメモリ中におけるプログ
ラムに対するアクセスの容易化が含まれる。したがっ
て、プログラム又はカーネルのイメージは、データファ
イルを含む仮想ファイルシステムを直ちに利用すること
ができる。
ルに埋め込むことにより、データファイルの変換に必要
なリソース及び時間が低減され得る。発明の実施の形態
の1つによれば、データファイルを直接オブジェクトフ
ァイルに埋め込むための1つの方法には、プログラム構
築時におけるデータファイルの「スナップショット(瞬
間的なデータファイルの内容)」の記憶(撮影)、及び
プログラム実行時におけるスナップショット又はデータ
ファイルを結合することによるメモリ中におけるプログ
ラムに対するアクセスの容易化が含まれる。したがっ
て、プログラム又はカーネルのイメージは、データファ
イルを含む仮想ファイルシステムを直ちに利用すること
ができる。
【0020】図2は発明の実施の形態に従う、コンピュ
ータシステム上に新規カーネルを起動するプロセスを図
示するフローチャートである。カーネルはオペレーティ
ングシステムのコアを構成するプログラムセットを備え
るので、以後、本明細書中にてカーネルは一般的なプロ
グラムを意味し得るものとする。したがって、「カーネ
ル」、「アプリケーションプログラム」、又は「プログ
ラム」の用語は、同意義の用語として混在して用いられ
るものとする。新規カーネルのコンピュータシステム上
への実装は、202にて開始する。ステップ204で
は、カーネルの新規イメージが構築される。一般的に、
カーネルの新規イメージは、図1を参照して前述したよ
うに、カーネルを収容すると共にカーネルのイメージを
生成するために必要な全ファイルに対するアクセスを有
するコンピュータである構築マシン上にて構築される。
カーネルの新規イメージの構築に関連するステップにつ
いては、図3を参照して後述する。カーネルの新規イメ
ージが構築された後、カーネルの新規イメージがステッ
プ206にて実行される。例えば、カーネルのイメージ
を使用するコンピュータシステム上の「ブータ(boote
r)」(すなわち、他のソフトウェアを起動させると共に
作動させるために作用するソフトウェア)は、カーネル
の新規イメージをイメージが実行されるメモリ中にロー
ドする。一旦、カーネルの新規イメージが実行される
と、新規イメージの起動プロセスは208にて終了す
る。
ータシステム上に新規カーネルを起動するプロセスを図
示するフローチャートである。カーネルはオペレーティ
ングシステムのコアを構成するプログラムセットを備え
るので、以後、本明細書中にてカーネルは一般的なプロ
グラムを意味し得るものとする。したがって、「カーネ
ル」、「アプリケーションプログラム」、又は「プログ
ラム」の用語は、同意義の用語として混在して用いられ
るものとする。新規カーネルのコンピュータシステム上
への実装は、202にて開始する。ステップ204で
は、カーネルの新規イメージが構築される。一般的に、
カーネルの新規イメージは、図1を参照して前述したよ
うに、カーネルを収容すると共にカーネルのイメージを
生成するために必要な全ファイルに対するアクセスを有
するコンピュータである構築マシン上にて構築される。
カーネルの新規イメージの構築に関連するステップにつ
いては、図3を参照して後述する。カーネルの新規イメ
ージが構築された後、カーネルの新規イメージがステッ
プ206にて実行される。例えば、カーネルのイメージ
を使用するコンピュータシステム上の「ブータ(boote
r)」(すなわち、他のソフトウェアを起動させると共に
作動させるために作用するソフトウェア)は、カーネル
の新規イメージをイメージが実行されるメモリ中にロー
ドする。一旦、カーネルの新規イメージが実行される
と、新規イメージの起動プロセスは208にて終了す
る。
【0021】次に図3を参照して、発明の実施の形態の
1つに従うカーネルの新規イメージ構築に関連するステ
ップについて説明する。すなわち、図2のステップ20
4を詳述する。図示された実施の形態では、ステップ3
04にて関連するカレントクラスファイルセットが構築
マシンによって取得される。クラスファイルは、クラス
ファイルを使用して構築され得るオブジェクトのデー
タ、例えば、状態、及び方法、例えば、挙動を定義する
ソフトウェア構造を含むファイルとして定義され得る。
実施の形態の1つでは、クラスファイルは、米国カリフ
ォルニア州マウンテンビュー市所在のサンマイクロシス
テムズから入手可能なJavaプログラミング言語にて
記述されたソースファイルをコンパイルすることにより
生成される。カレントクラスファイルは、一般的に、入
手可能なクラスファイルの最新版である。ある発明の実
施の形態では、クラスファイルの取得は、構築マシン上
におけるクラスファイルの位置の突き止めを伴う。他の
発明の実施の形態では、クラスファイルは、コンピュー
タネットワーク、あるいは、外部記憶ディスクから取得
され得る。しかしながら、既述のクラスファイル以外の
ファイルが本発明に係る方法、装置及びソフトウェアに
従って用いられ得ることは明らかである。
1つに従うカーネルの新規イメージ構築に関連するステ
ップについて説明する。すなわち、図2のステップ20
4を詳述する。図示された実施の形態では、ステップ3
04にて関連するカレントクラスファイルセットが構築
マシンによって取得される。クラスファイルは、クラス
ファイルを使用して構築され得るオブジェクトのデー
タ、例えば、状態、及び方法、例えば、挙動を定義する
ソフトウェア構造を含むファイルとして定義され得る。
実施の形態の1つでは、クラスファイルは、米国カリフ
ォルニア州マウンテンビュー市所在のサンマイクロシス
テムズから入手可能なJavaプログラミング言語にて
記述されたソースファイルをコンパイルすることにより
生成される。カレントクラスファイルは、一般的に、入
手可能なクラスファイルの最新版である。ある発明の実
施の形態では、クラスファイルの取得は、構築マシン上
におけるクラスファイルの位置の突き止めを伴う。他の
発明の実施の形態では、クラスファイルは、コンピュー
タネットワーク、あるいは、外部記憶ディスクから取得
され得る。しかしながら、既述のクラスファイル以外の
ファイルが本発明に係る方法、装置及びソフトウェアに
従って用いられ得ることは明らかである。
【0022】ステップ304にて取得されたクラスファ
イルは、ステップ306にてオブジェクトファイルに変
換される。当業者にとって明らかであるように、クラス
ファイルをオブジェクトファイルに変換するためにあら
ゆる好適な方法が用いられ得る。クラスファイルがオブ
ジェクトファイルに変換された後、ステップ308に
て、例えば、C言語コード又はアセンブラ言語といった
ソースコードから生成されたあらゆるオブジェクトファ
イルが取得される。カーネルに関連するオブジェクトフ
ァイルだけが取得されることに留意すべきである。ステ
ップ310では、カーネルに関連する「特別(specia
l)」オブジェクトファイルが取得される。特別オブジェ
クトファイルは、一般的に、変換される必要のない、あ
るいは、他のファイルから生成される必要のないオブジ
ェクトファイルであると考えられる。特別オブジェクト
ファイルは、先に生成されたオブジェクトファイルのラ
イブラリから取得され得る。例えば、ライブラリ中に置
かれたオブジェクトファイルは、ほとんど変わることの
ないクラスコード及びソースコードに対応するオブジェ
クトファイルであり得る。カーネルがソースコードファ
イルを必要とする度にソースコードファイルからオブジ
ェクトファイルを生成することは非効率的であり、特に
ソースコードファイルが決して変わらない場合には殊更
に非効率である。したがって、ソースコードファイル用
の特別オブジェクトファイルは、ソースコードファイル
が要求される度に、新規オブジェクトファイルが生成さ
れる必要のなきよう生成され得る。
イルは、ステップ306にてオブジェクトファイルに変
換される。当業者にとって明らかであるように、クラス
ファイルをオブジェクトファイルに変換するためにあら
ゆる好適な方法が用いられ得る。クラスファイルがオブ
ジェクトファイルに変換された後、ステップ308に
て、例えば、C言語コード又はアセンブラ言語といった
ソースコードから生成されたあらゆるオブジェクトファ
イルが取得される。カーネルに関連するオブジェクトフ
ァイルだけが取得されることに留意すべきである。ステ
ップ310では、カーネルに関連する「特別(specia
l)」オブジェクトファイルが取得される。特別オブジェ
クトファイルは、一般的に、変換される必要のない、あ
るいは、他のファイルから生成される必要のないオブジ
ェクトファイルであると考えられる。特別オブジェクト
ファイルは、先に生成されたオブジェクトファイルのラ
イブラリから取得され得る。例えば、ライブラリ中に置
かれたオブジェクトファイルは、ほとんど変わることの
ないクラスコード及びソースコードに対応するオブジェ
クトファイルであり得る。カーネルがソースコードファ
イルを必要とする度にソースコードファイルからオブジ
ェクトファイルを生成することは非効率的であり、特に
ソースコードファイルが決して変わらない場合には殊更
に非効率である。したがって、ソースコードファイル用
の特別オブジェクトファイルは、ソースコードファイル
が要求される度に、新規オブジェクトファイルが生成さ
れる必要のなきよう生成され得る。
【0023】関連データファイルのスナップショットが
ステップ312にて記憶される。すなわち、スナップシ
ョットは、カーネルがアクセスを要求するファイルシス
テムの一部であるデータファイルについて記憶される。
関連データファイルのスナップショットの記憶に関連す
るサブステップについては、図4を参照して後述する。
ステップ312にてデータファイルのスナップショット
が記録された後、プロセスフローは、データファイルの
スナップショットがオブジェクトファイルに変換される
ステップ314に移行する。スナップショットをオブジ
ェクトファイルに変換するために用いられる1つの方法
については、図5を参照して後述する。
ステップ312にて記憶される。すなわち、スナップシ
ョットは、カーネルがアクセスを要求するファイルシス
テムの一部であるデータファイルについて記憶される。
関連データファイルのスナップショットの記憶に関連す
るサブステップについては、図4を参照して後述する。
ステップ312にてデータファイルのスナップショット
が記録された後、プロセスフローは、データファイルの
スナップショットがオブジェクトファイルに変換される
ステップ314に移行する。スナップショットをオブジ
ェクトファイルに変換するために用いられる1つの方法
については、図5を参照して後述する。
【0024】一旦、スナップショットがオブジェクトフ
ァイルに変換されると、ステップ316にてカーネルに
関連する全オブジェクトファイルが相互に関連付けられ
る(リンクされる、linked)。オブジェクトファイルの
関連付け(リンク、linking)の目的は、カーネルの実
行可能イメージを取得するところにある。実行可能ファ
イルを生成するためにオブジェクトファイルを関連付け
る(リンクする、link)際に用いられる方法は、当業者
に周知である。ある発明の実施の形態では、先にステッ
プ310にて取得された特別オブジェクトファイルは、
変換、あるいは、生成される必要がないので、特別オブ
ジェクトファイルは、全ての関連オブジェクトファイル
に関連付ける(リンクする、linking)ステップの一部
として取得され得る。換言すれば、特別オブジェクトフ
ァイルは、ステップ316の一部として取得され得る。
イメージが取得された後、カーネルの新規イメージを構
築するプロセスは318にて終了する。
ァイルに変換されると、ステップ316にてカーネルに
関連する全オブジェクトファイルが相互に関連付けられ
る(リンクされる、linked)。オブジェクトファイルの
関連付け(リンク、linking)の目的は、カーネルの実
行可能イメージを取得するところにある。実行可能ファ
イルを生成するためにオブジェクトファイルを関連付け
る(リンクする、link)際に用いられる方法は、当業者
に周知である。ある発明の実施の形態では、先にステッ
プ310にて取得された特別オブジェクトファイルは、
変換、あるいは、生成される必要がないので、特別オブ
ジェクトファイルは、全ての関連オブジェクトファイル
に関連付ける(リンクする、linking)ステップの一部
として取得され得る。換言すれば、特別オブジェクトフ
ァイルは、ステップ316の一部として取得され得る。
イメージが取得された後、カーネルの新規イメージを構
築するプロセスは318にて終了する。
【0025】オブジェクトファイルが多くの異なる方法
によって関連付けられ(リンクされ、linked)得ること
は明らかである。例えば、いくつかのオブジェクトファ
イルは、1個の「大きな」オブジェクトファイルを形成
するために互いに関連付けられ(リンクされ、linked)
得る。そして、この大きなオブジェクトファイルは、イ
メージを生成するために他のオブジェクトファイルと関
連付けられ(リンクされ、linked)得る。さらに、ある
発明の実施の形態では、全ての関連データファイルは、
当初、ステップ312にて識別され得ない。このよう
に、ステップ312及びステップ314は、全関連デー
タファイルのスナップショットがオブジェクトファイル
に変換されるまで、繰り返し実行され得る。さらに、既
述の連続操作は、本発明の範囲を逸脱することなくその
実行順序を変更し得ることは理解されるべきである。
によって関連付けられ(リンクされ、linked)得ること
は明らかである。例えば、いくつかのオブジェクトファ
イルは、1個の「大きな」オブジェクトファイルを形成
するために互いに関連付けられ(リンクされ、linked)
得る。そして、この大きなオブジェクトファイルは、イ
メージを生成するために他のオブジェクトファイルと関
連付けられ(リンクされ、linked)得る。さらに、ある
発明の実施の形態では、全ての関連データファイルは、
当初、ステップ312にて識別され得ない。このよう
に、ステップ312及びステップ314は、全関連デー
タファイルのスナップショットがオブジェクトファイル
に変換されるまで、繰り返し実行され得る。さらに、既
述の連続操作は、本発明の範囲を逸脱することなくその
実行順序を変更し得ることは理解されるべきである。
【0026】次に図4を参照して、発明の実施の形態の
1つに従うデータファイルのスナップショット記憶プロ
セス、すなわち図3のステップ312、について説明す
る。新規イメージの構築に必要なデータファイルのリス
トがステップ402にて取得される。発明の実施の形態
の1つでは、データファイルのリストは既知の従属性に
基づき生成され得る。他の発明の実施の形態では、デー
タファイルのリストは、手でコンピュータシステム中に
入力され得る。データファイルのリストが取得された
後、リスト中のデータファイルは、単一のデータファイ
ルを形成するために、ステップ404にて結合される。
ファイルの結合に用いられる方法は、当業者に周知であ
る。通常、データファイルを結合することによりステッ
プ404にて単一の大型ファイルが形成されるが、単一
の大型ファイルを形成する代わりにいくつかの小型ファ
イルが生成され得ることは理解されるべきである。
1つに従うデータファイルのスナップショット記憶プロ
セス、すなわち図3のステップ312、について説明す
る。新規イメージの構築に必要なデータファイルのリス
トがステップ402にて取得される。発明の実施の形態
の1つでは、データファイルのリストは既知の従属性に
基づき生成され得る。他の発明の実施の形態では、デー
タファイルのリストは、手でコンピュータシステム中に
入力され得る。データファイルのリストが取得された
後、リスト中のデータファイルは、単一のデータファイ
ルを形成するために、ステップ404にて結合される。
ファイルの結合に用いられる方法は、当業者に周知であ
る。通常、データファイルを結合することによりステッ
プ404にて単一の大型ファイルが形成されるが、単一
の大型ファイルを形成する代わりにいくつかの小型ファ
イルが生成され得ることは理解されるべきである。
【0027】既述の発明の実施の形態では、結合された
データファイルの単一ファイルは、個々のデータファイ
ルに含まれている全てのデータを含んでいる。データフ
ァイルを結合することにより形成された単一の大型ファ
イルは、データファイルのスナップショットであると考
えられる。データファイルがつなぎ合わされた後、デー
タファイルのスナップショット記憶プロセスはステップ
406にて終了する。
データファイルの単一ファイルは、個々のデータファイ
ルに含まれている全てのデータを含んでいる。データフ
ァイルを結合することにより形成された単一の大型ファ
イルは、データファイルのスナップショットであると考
えられる。データファイルがつなぎ合わされた後、デー
タファイルのスナップショット記憶プロセスはステップ
406にて終了する。
【0028】図5は、発明の実施の形態に従うデータフ
ァイルのスナップショットをオブジェクトファイルに変
換する際に実行されるステップを示すフローチャートで
ある。すなわち、図5は図3中のステップ314を詳述
する。ステップ502では、データファイルの新規リス
トが生成される。図4のステップ402にて用いられる
データファイルのリストは、仮想ファイル構造に適当な
新規ファイル名称を含むデータファイルの新規リストを
生成するために処理される。すなわち、仮想ファイル構
造内のファイルの位置を突き止めるために、実行時カー
ネルが使用し得るファイル名称が生成される。例えば、
データファイルの名称を備えるストリングは、通常、デ
ィレクトリパスを含む。仮想ファイル構造は、異なるデ
ィレクトリパスを必要とし得るので、発明の実施の形態
の1つでは、データファイル名称は、名称から旧ディレ
クトリパスを除去すると共に新規ディレクトリパスを追
加するために変更され、これによりデータファイルにつ
いての新規名称が本質的に生成される。
ァイルのスナップショットをオブジェクトファイルに変
換する際に実行されるステップを示すフローチャートで
ある。すなわち、図5は図3中のステップ314を詳述
する。ステップ502では、データファイルの新規リス
トが生成される。図4のステップ402にて用いられる
データファイルのリストは、仮想ファイル構造に適当な
新規ファイル名称を含むデータファイルの新規リストを
生成するために処理される。すなわち、仮想ファイル構
造内のファイルの位置を突き止めるために、実行時カー
ネルが使用し得るファイル名称が生成される。例えば、
データファイルの名称を備えるストリングは、通常、デ
ィレクトリパスを含む。仮想ファイル構造は、異なるデ
ィレクトリパスを必要とし得るので、発明の実施の形態
の1つでは、データファイル名称は、名称から旧ディレ
クトリパスを除去すると共に新規ディレクトリパスを追
加するために変更され、これによりデータファイルにつ
いての新規名称が本質的に生成される。
【0029】ステップ504では、データアロケーショ
ンファイル用アセンブラ言語命令が生成される。データ
アロケーションセクションは、一般的に、データのスナ
ップショットを保持するために生成されるオブジェクト
ファイルに関連するサイジング(sizing)情報を含むセ
クションである。本発明に従いデータを保持するために
形成されたオブジェクトファイルは、当初、オブジェク
トファイル中に含まれる「ホール(hole)」、あるい
は、予約済スペース(reserved space)と共に形成され
る。このホールは、図4を参照して前述したように取得
されたデータスナップショットを包含するためのもので
ある。このように、ホールは、スナップショットを含む
ために、適当にそのサイズが決定されなければならな
い。したがって、データアロケーションファイルは、一
般的に、ファイル名称ルックアップ構造ファイル中にて
用いられる識別記号に関する情報に加え、ホールのサイ
ズに関連する情報を含む。
ンファイル用アセンブラ言語命令が生成される。データ
アロケーションセクションは、一般的に、データのスナ
ップショットを保持するために生成されるオブジェクト
ファイルに関連するサイジング(sizing)情報を含むセ
クションである。本発明に従いデータを保持するために
形成されたオブジェクトファイルは、当初、オブジェク
トファイル中に含まれる「ホール(hole)」、あるい
は、予約済スペース(reserved space)と共に形成され
る。このホールは、図4を参照して前述したように取得
されたデータスナップショットを包含するためのもので
ある。このように、ホールは、スナップショットを含む
ために、適当にそのサイズが決定されなければならな
い。したがって、データアロケーションファイルは、一
般的に、ファイル名称ルックアップ構造ファイル中にて
用いられる識別記号に関する情報に加え、ホールのサイ
ズに関連する情報を含む。
【0030】ファイル名称ルックアップ構造ファイル用
アセンブラ言語命令は、ステップ506にて生成され
る。ファイル名称ルックアップ構造は、新規ファイル名
称、すなわち、ステップ502にて生成されたリストか
らのファイル名称をデータに関連付けるために用いられ
る。一般的に、ルックアップ構造は、カーネル実行中、
ファイル名称を適当なデータに関連付けるために用いら
れる。ルックアップ構造ファイルの1つについては図6
を参照して後述する。
アセンブラ言語命令は、ステップ506にて生成され
る。ファイル名称ルックアップ構造は、新規ファイル名
称、すなわち、ステップ502にて生成されたリストか
らのファイル名称をデータに関連付けるために用いられ
る。一般的に、ルックアップ構造は、カーネル実行中、
ファイル名称を適当なデータに関連付けるために用いら
れる。ルックアップ構造ファイルの1つについては図6
を参照して後述する。
【0031】ステップ508では、データアロケーショ
ンファイル及びルックアップ構造ファイルからのアセン
ブラ言語命令がオブジェクトファイルを生成するために
用いられる。すなわち、ステップ504及びステップ5
06にて生成されるアセンブラ言語命令は、ステップ5
08にてオブジェクトファイルに変換され得る。アセン
ブラ言語命令は、あらゆる好適なアセンブラを使用して
オブジェクトファイルに変換され得る。ステップ508
は、実質的に図3中のステップ308と同一であること
は理解されるべきである。しかしながら、ステップ30
8ではオブジェクトファイルがソースコード又はアセン
ブラ言語命令のいずれかから生成されるのに対して、ス
テップ508ではオブジェクトファイルはアセンブラ言
語命令からのみ生成される。ステップ508にて生成さ
れる各オブジェクトファイルは、データアロケーション
ファイル中にて特定されたスナップショット内に含まれ
るデータに適応させるのに十分なサイズのホールを含
む。一般的に、オブジェクトファイルは、ルックアップ
構造用アセンブラ言語命令に対応するオブジェクトファ
イルの部分が、オブジェクトファイルに関連する全ルッ
クアップ構造が容易に関連付け時に配置され得るよう特
定のセクションに置かれるように調整される。このよう
に、ルックアップ構造は、オブジェクトファイルが相互
に関連付けられる(リンクされる、linked)とき、関連
付け装置(リンカ、linker)によって構築され得る。す
なわち、ルックアップ構造は、図3中のステップ316
にて生成され得る。
ンファイル及びルックアップ構造ファイルからのアセン
ブラ言語命令がオブジェクトファイルを生成するために
用いられる。すなわち、ステップ504及びステップ5
06にて生成されるアセンブラ言語命令は、ステップ5
08にてオブジェクトファイルに変換され得る。アセン
ブラ言語命令は、あらゆる好適なアセンブラを使用して
オブジェクトファイルに変換され得る。ステップ508
は、実質的に図3中のステップ308と同一であること
は理解されるべきである。しかしながら、ステップ30
8ではオブジェクトファイルがソースコード又はアセン
ブラ言語命令のいずれかから生成されるのに対して、ス
テップ508ではオブジェクトファイルはアセンブラ言
語命令からのみ生成される。ステップ508にて生成さ
れる各オブジェクトファイルは、データアロケーション
ファイル中にて特定されたスナップショット内に含まれ
るデータに適応させるのに十分なサイズのホールを含
む。一般的に、オブジェクトファイルは、ルックアップ
構造用アセンブラ言語命令に対応するオブジェクトファ
イルの部分が、オブジェクトファイルに関連する全ルッ
クアップ構造が容易に関連付け時に配置され得るよう特
定のセクションに置かれるように調整される。このよう
に、ルックアップ構造は、オブジェクトファイルが相互
に関連付けられる(リンクされる、linked)とき、関連
付け装置(リンカ、linker)によって構築され得る。す
なわち、ルックアップ構造は、図3中のステップ316
にて生成され得る。
【0032】オブジェクトファイルが生成された後、ス
テップ510にてデータファイルのスナップショット中
に含まれるファイルデータがオブジェクトファイル中に
コピーされる。すなわち、スナップショットからのデー
タは、オブジェクトファイル中に埋め込まれる。特に、
スナップショット中に含まれるデータは、ステップ50
8にてオブジェクトファイルが生成されたときオブジェ
クトファイル中に含まれていたホール中にコピーされ
る。一旦、スナップショット中に含まれるデータがオブ
ジェクトファイルにコピーされると、スナップショット
のデータファイルへの変換プロセスは512にて終了す
る。
テップ510にてデータファイルのスナップショット中
に含まれるファイルデータがオブジェクトファイル中に
コピーされる。すなわち、スナップショットからのデー
タは、オブジェクトファイル中に埋め込まれる。特に、
スナップショット中に含まれるデータは、ステップ50
8にてオブジェクトファイルが生成されたときオブジェ
クトファイル中に含まれていたホール中にコピーされ
る。一旦、スナップショット中に含まれるデータがオブ
ジェクトファイルにコピーされると、スナップショット
のデータファイルへの変換プロセスは512にて終了す
る。
【0033】次に図6を参照して、発明の実施の形態の
1つに従う、図5を参照して前述したファイル名称ルッ
クアップ構造、及びファイルデータ間におけるマッピン
グについて説明する。ルックアップテーブルセクション
602は、一般的に、ファイルデータセクション604
に対するシンボリック関連付け(シンボリックリンク、
symbolic link)を有している。ルックアップテーブル
セクション602は、ルックアップテーブルセクション
602の始まりを示すシンボルである開始エントリ60
6を含む。ルックアップテーブルセクション中の中間エ
ントリ、例えば、中間エントリ608は、仮想ファイル
構造に適当なデータファイル名称を保持する。すなわ
ち、エントリ608は、図5中のステップ502にて生
成された新規ファイル名称を保持している。エントリ6
08はまた、ファイル名称608aに加えて他の種々の
情報を保持することができる。この他のデータには、こ
れに限定されるものではないが、属性608b及びアド
レス608cが含まれ得る。他のデータにはさらに、フ
ァイル名称608aに対応するファイルに関連する情報
を含む、他のセクション又はファイルに対する参照が含
まれ得る。ルックアップテーブルセクション602中に
含まれる終了エントリ610は、一般的に、ルックアッ
プテーブルセクションの最後を識別するために配置され
る。図示する実施の形態では、終了エントリ610が0
値を備えるので、終了エントリ610は、空のエントリ
である。
1つに従う、図5を参照して前述したファイル名称ルッ
クアップ構造、及びファイルデータ間におけるマッピン
グについて説明する。ルックアップテーブルセクション
602は、一般的に、ファイルデータセクション604
に対するシンボリック関連付け(シンボリックリンク、
symbolic link)を有している。ルックアップテーブル
セクション602は、ルックアップテーブルセクション
602の始まりを示すシンボルである開始エントリ60
6を含む。ルックアップテーブルセクション中の中間エ
ントリ、例えば、中間エントリ608は、仮想ファイル
構造に適当なデータファイル名称を保持する。すなわ
ち、エントリ608は、図5中のステップ502にて生
成された新規ファイル名称を保持している。エントリ6
08はまた、ファイル名称608aに加えて他の種々の
情報を保持することができる。この他のデータには、こ
れに限定されるものではないが、属性608b及びアド
レス608cが含まれ得る。他のデータにはさらに、フ
ァイル名称608aに対応するファイルに関連する情報
を含む、他のセクション又はファイルに対する参照が含
まれ得る。ルックアップテーブルセクション602中に
含まれる終了エントリ610は、一般的に、ルックアッ
プテーブルセクションの最後を識別するために配置され
る。図示する実施の形態では、終了エントリ610が0
値を備えるので、終了エントリ610は、空のエントリ
である。
【0034】中間エントリ608は、ファイルデータセ
クション604中のデータファイルエントリに対応する
ファイル名称608aを保持する。データファイルエン
トリ、例えば、データファイルエントリ612は、一般
的に、オブジェクトファイル中へ埋め込まれた、あるい
は、埋め込まれるべきデータファイルに対応する情報を
保持している。データファイルエントリ612中の情報
には、データファイルのサイズにパターニングする(関
連する、pertaining to)属性614a、及びデータフ
ァイルのアドレスに対応する現実のメモリアドレスロケ
ーションを関連付け得るシンボリック参照が含まれ得
る。データファイルエントリ612にはまた、一般的
に、データ614bが含まれる。シンボリック参照は、
一般的に、それのために図5中のステップ504にてア
センブラ言語命令が生成されたデータアロケーションフ
ァイルによって提供される。図に示すように、中間エン
トリ608は、データファイルエントリ614に関連付
けられている。特に、図示するように、属性608bは
データファイルエントリ612の属性614aに関連付
けられており、データアドレス608cはデータ614
bに関連付けられている。したがって、データファイル
エントリ612中の情報は、中間エントリ608中のデ
ータファイル名称に対応する。データファイルセクショ
ン640中の開始エントリ616は、データファイルセ
クション604の始まりを示すシンボルである。
クション604中のデータファイルエントリに対応する
ファイル名称608aを保持する。データファイルエン
トリ、例えば、データファイルエントリ612は、一般
的に、オブジェクトファイル中へ埋め込まれた、あるい
は、埋め込まれるべきデータファイルに対応する情報を
保持している。データファイルエントリ612中の情報
には、データファイルのサイズにパターニングする(関
連する、pertaining to)属性614a、及びデータフ
ァイルのアドレスに対応する現実のメモリアドレスロケ
ーションを関連付け得るシンボリック参照が含まれ得
る。データファイルエントリ612にはまた、一般的
に、データ614bが含まれる。シンボリック参照は、
一般的に、それのために図5中のステップ504にてア
センブラ言語命令が生成されたデータアロケーションフ
ァイルによって提供される。図に示すように、中間エン
トリ608は、データファイルエントリ614に関連付
けられている。特に、図示するように、属性608bは
データファイルエントリ612の属性614aに関連付
けられており、データアドレス608cはデータ614
bに関連付けられている。したがって、データファイル
エントリ612中の情報は、中間エントリ608中のデ
ータファイル名称に対応する。データファイルセクショ
ン640中の開始エントリ616は、データファイルセ
クション604の始まりを示すシンボルである。
【0035】当業者によって理解されるように、データ
ファイルエントリ612の開始エントリ616における
シンボルは、属性614a及びデータ614bに関連付
けられる。単一シンボルと属性614a及びデータ61
4bとの関連付けは、データファイルエントリが隣接し
ているという事実によって可能である。しかしながら、
属性614a及びデータ614bが異なるセクションに
配置されている場合には、属性614a及びデータ61
4bは、別の異なるシンボルに関連付けられ得る。
ファイルエントリ612の開始エントリ616における
シンボルは、属性614a及びデータ614bに関連付
けられる。単一シンボルと属性614a及びデータ61
4bとの関連付けは、データファイルエントリが隣接し
ているという事実によって可能である。しかしながら、
属性614a及びデータ614bが異なるセクションに
配置されている場合には、属性614a及びデータ61
4bは、別の異なるシンボルに関連付けられ得る。
【0036】図7は本発明が適用される一般的なコンピ
ュータシステムを図示する。コンピュータシステム73
0は、1個以上のプロセッサ732(中央演算処理装
置、または、CPUともいう)を備えている。CPU7
32は、一次記憶装置734(一般的に、リードオンリ
メモリ(ROM))、及び一時記憶装置736(一般的
に、ランダムアクセスメモリ(RAM))を含む記憶装
置と結合されている。当業者にとって周知のように、R
OM734は、データ及び命令をCPUに対して単一方
向に転送し、RAM736は、一般的にデータ及び命令
を双方向に転送する。一次記憶装置734、736は共
に上述のあらゆる好適なコンピュータ読取り可能媒体を
含み得る。大容量記憶装置738もまた、双方向に転送
可能であるようにCPU732と接続されており、追加
データ記憶容量を提供する。大容量記憶装置738は、
プログラム、データ等を記憶するために用いられる、一
般的に、一次記憶装置734、736よりも遅いハード
ディスクのような二次記憶装置である。大容量記憶装置
738は、磁気又は紙テープリーダ、あるいは、他の良
く知られている装置の形を採ることができる。大容量記
憶装置738内に残されている情報は、適当な場合に、
標準的な方法により仮想メモリの形でRAM736の一
部として組み込まれるであろうことが理解される。CD
−ROMといった特定の大容量記憶装置もまた、CPU
に対してデータを単一方向に転送し得る。
ュータシステムを図示する。コンピュータシステム73
0は、1個以上のプロセッサ732(中央演算処理装
置、または、CPUともいう)を備えている。CPU7
32は、一次記憶装置734(一般的に、リードオンリ
メモリ(ROM))、及び一時記憶装置736(一般的
に、ランダムアクセスメモリ(RAM))を含む記憶装
置と結合されている。当業者にとって周知のように、R
OM734は、データ及び命令をCPUに対して単一方
向に転送し、RAM736は、一般的にデータ及び命令
を双方向に転送する。一次記憶装置734、736は共
に上述のあらゆる好適なコンピュータ読取り可能媒体を
含み得る。大容量記憶装置738もまた、双方向に転送
可能であるようにCPU732と接続されており、追加
データ記憶容量を提供する。大容量記憶装置738は、
プログラム、データ等を記憶するために用いられる、一
般的に、一次記憶装置734、736よりも遅いハード
ディスクのような二次記憶装置である。大容量記憶装置
738は、磁気又は紙テープリーダ、あるいは、他の良
く知られている装置の形を採ることができる。大容量記
憶装置738内に残されている情報は、適当な場合に、
標準的な方法により仮想メモリの形でRAM736の一
部として組み込まれるであろうことが理解される。CD
−ROMといった特定の大容量記憶装置もまた、CPU
に対してデータを単一方向に転送し得る。
【0037】CPU732はまた、これらに限定される
ものではないが、ビデオモニタ、トラックボール、マウ
ス、キーボード、マイクロホン、接触感応ディスプレ
イ、トランスジューサカードリーダ、磁気又は紙テープ
リーダ、タブレット、スタイラス、音声又は手書き認識
装置、当然のことながら他のコンピュータといった他の
周知の入力装置を含む、1つ以上の入出力装置740と
接続されている。最後に、CPU732は、712とし
て一般的に示されているネットワーク接続回路を使用し
てコンピュータ、あるいは、例えば、インターネットワ
ーク、またはイントラネットワークといった通信ネット
ワークと任意に接続され得る。このようなネットワーク
接続を備えることにより、CPUは、上記方法のステッ
プを実行することにより、ネットワークから情報を受け
取り、あるいは、ネットワークに向けて情報を出力でき
ることが予想される。上述の装置、及び機器は、コンピ
ュータハードウェア、及びソフトウェアの技術分野にお
ける当業者に馴染みのあるものであろう。
ものではないが、ビデオモニタ、トラックボール、マウ
ス、キーボード、マイクロホン、接触感応ディスプレ
イ、トランスジューサカードリーダ、磁気又は紙テープ
リーダ、タブレット、スタイラス、音声又は手書き認識
装置、当然のことながら他のコンピュータといった他の
周知の入力装置を含む、1つ以上の入出力装置740と
接続されている。最後に、CPU732は、712とし
て一般的に示されているネットワーク接続回路を使用し
てコンピュータ、あるいは、例えば、インターネットワ
ーク、またはイントラネットワークといった通信ネット
ワークと任意に接続され得る。このようなネットワーク
接続を備えることにより、CPUは、上記方法のステッ
プを実行することにより、ネットワークから情報を受け
取り、あるいは、ネットワークに向けて情報を出力でき
ることが予想される。上述の装置、及び機器は、コンピ
ュータハードウェア、及びソフトウェアの技術分野にお
ける当業者に馴染みのあるものであろう。
【0038】以上、いくつかの発明の実施の形態に基づ
き本発明を説明したが、本発明の趣旨から逸脱しない範
囲で種々の変更改良が可能であることは理解されるべき
である。例えば、カーネルのイメージの構築に関連する
ステップは、広く変更され得る。ステップは、本発明の
趣旨から逸脱しない範囲で追加、あるいは、削除され得
る。さらに、オブジェクトファイルの取得及び関連付け
プロセスは、特定のコンピュータシステムの要求に基づ
き変更され得る。
き本発明を説明したが、本発明の趣旨から逸脱しない範
囲で種々の変更改良が可能であることは理解されるべき
である。例えば、カーネルのイメージの構築に関連する
ステップは、広く変更され得る。ステップは、本発明の
趣旨から逸脱しない範囲で追加、あるいは、削除され得
る。さらに、オブジェクトファイルの取得及び関連付け
プロセスは、特定のコンピュータシステムの要求に基づ
き変更され得る。
【0039】
【発明の効果】以上説明したように、本発明によれば、
コンピュータメモリ中に仮想ファイルシステムを効率的
に生成することができる。
コンピュータメモリ中に仮想ファイルシステムを効率的
に生成することができる。
【図1】 本発明に係る発明の実施の形態の1つに従
う、カーネルイメージが生成されると共にイメージが実
行されるコンピュータシステムを例示するブロック図で
ある。
う、カーネルイメージが生成されると共にイメージが実
行されるコンピュータシステムを例示するブロック図で
ある。
【図2】 本発明に係る発明の実施の形態の1つに従
う、新規カーネルのコンピュータシステム上への起動に
関連するステップを図示するフローチャートである。
う、新規カーネルのコンピュータシステム上への起動に
関連するステップを図示するフローチャートである。
【図3】 本発明に係る発明の実施の形態の1つに従
う、カーネルの新規イメージの構築に関連するステップ
を図示するフローチャートである。
う、カーネルの新規イメージの構築に関連するステップ
を図示するフローチャートである。
【図4】 本発明に係る発明の実施の形態の1つに従
う、データファイルのスナップショットの記憶に関連す
るステップを図示するフローチャートである。
う、データファイルのスナップショットの記憶に関連す
るステップを図示するフローチャートである。
【図5】 本発明に係る発明の実施の形態の1つに従
う、スナップショットのオブジェクトファイルへの変換
に関連するステップを図示するフローチャートである。
う、スナップショットのオブジェクトファイルへの変換
に関連するステップを図示するフローチャートである。
【図6】 本発明に係る発明の実施の形態の1つに従
う、ルックアップテーブル及びファイルデータ間におけ
るマッピング例を示す概念図である。新規カーネルのコ
ンピュータシステム上への起動に関連するステップを図
示す
う、ルックアップテーブル及びファイルデータ間におけ
るマッピング例を示す概念図である。新規カーネルのコ
ンピュータシステム上への起動に関連するステップを図
示す
【図7】 本発明に係る発明の実施の形態の1つに従
う、一般的なコンピュータシステムを例示するブロック
図である。
う、一般的なコンピュータシステムを例示するブロック
図である。
102…コンピュータシステム、104…構築マシン、
106…カーネル(アプリケーションプログラム)、1
08…プロパティファイル、112…プログラムコード
(PC)、116…データファイル(D)、120…フ
ォントファイル(F)、124…ネットワーク接続、1
26…ネットワークバックボーン、134…データサー
バ、140…コンピュータ、142…メモリ、150…
イメージ、602…ルックアップテーブルセクション、
604…ファイルデータセクション、606…開始エン
トリ、608…中間エントリ、608a…ファイル名
称、608b…属性、608c…アドレス、610…終
了エントリ、612…データファイルエントリ、614
a…属性、614b…データ、730…コンピュータシ
ステム、732…CPU、734…ROM、736…R
AM、738…大容量記憶装置。
106…カーネル(アプリケーションプログラム)、1
08…プロパティファイル、112…プログラムコード
(PC)、116…データファイル(D)、120…フ
ォントファイル(F)、124…ネットワーク接続、1
26…ネットワークバックボーン、134…データサー
バ、140…コンピュータ、142…メモリ、150…
イメージ、602…ルックアップテーブルセクション、
604…ファイルデータセクション、606…開始エン
トリ、608…中間エントリ、608a…ファイル名
称、608b…属性、608c…アドレス、610…終
了エントリ、612…データファイルエントリ、614
a…属性、614b…データ、730…コンピュータシ
ステム、732…CPU、734…ROM、736…R
AM、738…大容量記憶装置。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 グラハム ハミルトン アメリカ合衆国, カリフォルニア州, パロ アルト, デイヴィッド コート 3143 (72)発明者 ネディム フレスコ アメリカ合衆国, カリフォルニア州, キャンプベル, ジェフリー アヴェニュ ー 725
Claims (12)
- 【請求項1】 コンピュータメモリ内に仮想ファイルシ
ステムを生成するための方法であって、その方法は、 ファイルシステムからデータファイルを引き出すステッ
プ、 前記データファイルのスナップショットを生成するステ
ップ、 前記データファイルのスナップショットをオブジェクト
データファイルに変換するステップとを備える、仮想フ
ァイルシステム生成方法。 - 【請求項2】 請求項1に記載の仮想ファイルシステム
生成方法はさらに、前記オブジェクトデータファイルを
1個以上の他のオブジェクトデータファイルに関連付け
るステップを備える、仮想ファイルシステム生成方法。 - 【請求項3】 請求項1に記載の仮想ファイルシステム
生成方法において、前記スナップショットは前記引出済
データファイルを1個以上の他のデータファイルに結合
することにより生成される、仮想ファイルシステム生成
方法。 - 【請求項4】 請求項3に記載の仮想ファイルシステム
生成方法はさらに、 前記オブジェクトデータファイル内に前記データファイ
ル中のデータのための空間を予約する命令を含む、前記
スナップショットからオブジェクトデータファイルを生
成するための1組のアセンブラ命令を生成するステッ
プ、 前記1組のアセンブラ命令を予約済空間を含む前記オブ
ジェクトデータファイルに変換するステップ、 前記スナップショットを前記予約済空間にコピーするス
テップとを備える、仮想ファイルシステム生成方法。 - 【請求項5】 コンピュータメモリ中に仮想ファイルシ
ステムを生成するためのプログラムを記録した記録媒体
であって、そのプログラムは、 ファイルシステムからデータファイルを引き出すステッ
プ、 前記データファイルのスナップショットを生成するステ
ップ、 前記データファイルのスナップショットをオブジェクト
データファイルに変換するステップとを備える、仮想フ
ァイルシステム生成プログラムを記録した記録媒体。 - 【請求項6】 請求項5に記載の仮想ファイルシステム
生成プログラムを記録した記録媒体において、前記プロ
グラムはさらに、前記オブジェクトデータファイルを1
個以上の他のオブジェクトデータファイルに関連付ける
ステップを備える、仮想ファイルシステム生成プログラ
ムを記録した記録媒体。 - 【請求項7】 請求項5に記載の仮想ファイルシステム
生成プログラムを記録した記録媒体において、前記スナ
ップショットは前記引出済データファイルを1個以上の
他のデータファイルに結合することにより生成される、
仮想ファイルシステム生成プログラムを記録した記録媒
体。 - 【請求項8】 請求項7に記載の仮想ファイルシステム
生成プログラムを記録した記録媒体において、前記プロ
グラムはさらに、 前記オブジェクトデータファイル内に前記データファイ
ル中のデータのための空間を予約する命令を含む、前記
スナップショットからオブジェクトデータファイルを生
成するための1組のアセンブラ命令を生成するステッ
プ、 前記1組のアセンブラ命令を、予約済空間を含む前記オ
ブジェクトデータファイルに変換するステップ、 前記スナップショットを前記予約済空間にコピーするス
テップとを備える、仮想ファイルシステム生成プログラ
ムを記録した記録媒体。 - 【請求項9】 コンピュータメモリ、及び1個以上のデ
ータファイルを有するファイルシステムを備えると共
に、コンピュータメモリ中に仮想ファイルシステムを生
成するために構成されているコンピュータシステムであ
って、そのコンピュータシステムは、 ファイルシステムからデータファイルを引き出すための
引出機構、 前記データファイルのスナップショットを生成するため
のデータ取得機構、 前記データファイルのスナップショットをオブジェクト
データファイルに変換するための構築装置とを備える、
コンピュータシステム。 - 【請求項10】請求項9に記載のコンピュータシステム
はさらに、前記オブジェクトデータファイルを1個以上
の他のオブジェクトデータファイルに関連付けるための
関連付け装置を備える、コンピュータシステム。 - 【請求項11】請求項10に記載のコンピュータシステ
ムはさらに、前記スナップショットを前記引出済データ
ファイルを1個以上の他のデータファイルに結合するた
めの結合装置を備える、コンピュータシステム。 - 【請求項12】請求項11に記載のコンピュータシステ
ムはさらに、 前記オブジェクトデータファイル内に空間を予約する命
令を含むと共に、前記結合済データファイルからオブジ
ェクトデータファイルを生成するための1組のアセンブ
ラ命令を生成するためのアセンブラ、 前記スナップショットを前記予約済空間にコピーするコ
ピー装置とを備える、コンピュータシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US3374896P | 1996-10-29 | 1996-10-29 | |
US60/033748 | 1996-10-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10320248A true JPH10320248A (ja) | 1998-12-04 |
Family
ID=21872204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9297318A Pending JPH10320248A (ja) | 1996-10-29 | 1997-10-29 | 実行時ルックアップ及び読出し専用アクセス用バイナリイメージへファイルを埋込むための装置及びその方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5991763A (ja) |
EP (1) | EP0840242A3 (ja) |
JP (1) | JPH10320248A (ja) |
SG (1) | SG65695A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014051592A1 (en) * | 2012-09-27 | 2014-04-03 | Hewlett-Packard Development Company, L.P. | Replacing virtual file system data structures deleted by a forced unmount |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385618B1 (en) * | 1997-12-22 | 2002-05-07 | Sun Microsystems, Inc. | Integrating both modifications to an object model and modifications to a database into source code by an object-relational mapping tool |
US6199059B1 (en) * | 1998-04-22 | 2001-03-06 | International Computex, Inc. | System and method for classifying and retrieving information with virtual object hierarchy |
US6327703B1 (en) * | 1999-02-26 | 2001-12-04 | Advanced Micro Devices, Inc. | Variable symbolic links for a file in UNIX operating system |
US7634453B1 (en) * | 1999-08-13 | 2009-12-15 | Storage Technology Corporation | Distributed file data location |
US6594675B1 (en) * | 1999-08-26 | 2003-07-15 | International Business Machines Corporation | Method, system for using file name to access application program where a logical file system processes pathname to determine whether the request is a file on storage device or operation for application program |
US6985901B1 (en) | 1999-12-23 | 2006-01-10 | Accenture Llp | Controlling data collection, manipulation and storage on a network with service assurance capabilities |
WO2002057988A2 (en) * | 2001-01-18 | 2002-07-25 | Dana Corporation | Method, apparatus and system for quality performance evaluation of a supplier base |
US6970892B2 (en) * | 2001-02-16 | 2005-11-29 | Stratus Technologies Bermuda Ltd | Implementing standards-based file operations in proprietary operating systems |
US7007047B2 (en) * | 2002-03-29 | 2006-02-28 | Panasas, Inc. | Internally consistent file system image in distributed object-based data storage |
KR100800371B1 (ko) * | 2002-12-31 | 2008-02-04 | 인터내셔널 비지네스 머신즈 코포레이션 | 데이터 처리 방법 및 컴퓨터 판독 가능 매체 |
US7213103B2 (en) | 2004-04-22 | 2007-05-01 | Apple Inc. | Accessing data storage systems without waiting for read errors |
JP4325524B2 (ja) * | 2004-09-29 | 2009-09-02 | 日本電気株式会社 | スイッチ装置とシステム並びにバックアップ及びリストア方法とプログラム |
US8495015B2 (en) | 2005-06-21 | 2013-07-23 | Apple Inc. | Peer-to-peer syncing in a decentralized environment |
US7523146B2 (en) | 2005-06-21 | 2009-04-21 | Apple Inc. | Apparatus and method for peer-to-peer N-way synchronization in a decentralized environment |
US7797670B2 (en) | 2006-04-14 | 2010-09-14 | Apple Inc. | Mirrored file system |
US7860826B2 (en) | 2006-08-04 | 2010-12-28 | Apple Inc. | Method and system for using global equivalency sets to identify data during peer-to-peer synchronization |
US7657769B2 (en) | 2007-01-08 | 2010-02-02 | Marcy M Scott | N-way synchronization of data |
US8762972B2 (en) * | 2011-02-08 | 2014-06-24 | Nokia Corporation | Methods and apparatuses for facilitating execution of applications requiring runtime compilation |
US10321167B1 (en) | 2016-01-21 | 2019-06-11 | GrayMeta, Inc. | Method and system for determining media file identifiers and likelihood of media file relationships |
US10719492B1 (en) | 2016-12-07 | 2020-07-21 | GrayMeta, Inc. | Automatic reconciliation and consolidation of disparate repositories |
US11372853B2 (en) * | 2019-11-25 | 2022-06-28 | Caret Holdings, Inc. | Object-based search processing |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5226161A (en) * | 1987-08-21 | 1993-07-06 | Wang Laboratories, Inc. | Integration of data between typed data structures by mutual direct invocation between data managers corresponding to data types |
US5051893A (en) * | 1988-07-11 | 1991-09-24 | Digital Equipment Corporation | System for processing data to facilitate the creation of executable images |
US5163131A (en) * | 1989-09-08 | 1992-11-10 | Auspex Systems, Inc. | Parallel i/o network file server architecture |
JPH03130874A (ja) * | 1989-10-17 | 1991-06-04 | Fujitsu Ltd | リレーショナル・データベースの検索処理方式 |
CA2010591C (en) * | 1989-10-20 | 1999-01-26 | Phillip M. Adams | Kernels, description tables and device drivers |
JPH04191941A (ja) * | 1990-11-27 | 1992-07-10 | Hitachi Ltd | オブジェクト管理システム |
US5594903A (en) * | 1991-02-26 | 1997-01-14 | Lynx Real-Time Systems, Inc. | Operating System architecture with reserved memory space resident program code identified in file system name space |
US5450586A (en) * | 1991-08-14 | 1995-09-12 | Hewlett-Packard Company | System for analyzing and debugging embedded software through dynamic and interactive use of code markers |
US5452454A (en) * | 1991-12-10 | 1995-09-19 | Digital Equipment Corporation | Generic remote boot for networked workstations by creating local bootable code image |
US5530862A (en) * | 1992-11-18 | 1996-06-25 | Canon Kabushiki Kaisha | In an interactive network board, method and apparatus for loading independently executable modules in prom |
US5649200A (en) * | 1993-01-08 | 1997-07-15 | Atria Software, Inc. | Dynamic rule-based version control system |
DE69424597T2 (de) * | 1993-06-17 | 2001-03-01 | Sun Microsystems, Inc. | Erweiterbares Dateiensystem |
US5675802A (en) * | 1995-03-31 | 1997-10-07 | Pure Atria Corporation | Version control system for geographically distributed software development |
US5819276A (en) * | 1995-10-06 | 1998-10-06 | International Business Machines Corporation | Method for supporting multiple file-systems in file input/output operations |
EP0770966B1 (en) * | 1995-10-27 | 2002-08-28 | Ncr International Inc. | Method and apparatus for computing filenames with a high probability of uniqueness |
US5778384A (en) * | 1995-12-22 | 1998-07-07 | Sun Microsystems, Inc. | System and method for automounting and accessing remote file systems in Microsoft Windows in a networking environment |
US5845295A (en) * | 1996-08-27 | 1998-12-01 | Unisys Corporation | System for providing instantaneous access to a snapshot Op data stored on a storage medium for offline analysis |
-
1997
- 1997-10-21 US US08/955,432 patent/US5991763A/en not_active Expired - Lifetime
- 1997-10-27 EP EP97308536A patent/EP0840242A3/en not_active Withdrawn
- 1997-10-28 SG SG1997003883A patent/SG65695A1/en unknown
- 1997-10-29 JP JP9297318A patent/JPH10320248A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014051592A1 (en) * | 2012-09-27 | 2014-04-03 | Hewlett-Packard Development Company, L.P. | Replacing virtual file system data structures deleted by a forced unmount |
Also Published As
Publication number | Publication date |
---|---|
SG65695A1 (en) | 1999-06-22 |
US5991763A (en) | 1999-11-23 |
EP0840242A2 (en) | 1998-05-06 |
EP0840242A3 (en) | 2002-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH10320248A (ja) | 実行時ルックアップ及び読出し専用アクセス用バイナリイメージへファイルを埋込むための装置及びその方法 | |
US7774752B2 (en) | Runtime services for network software platform | |
US5931935A (en) | File system primitive allowing reprocessing of I/O requests by multiple drivers in a layered driver I/O system | |
TWI247489B (en) | Method for firmware variable storage with eager compression, fail-safe extraction and restart time compression scan | |
JP4578480B2 (ja) | オブジェクトシステム間のファイルプロパティ管理を容易にするためのプロモーションおよびデモーション技術 | |
JP4165683B2 (ja) | 複合データ構造の永続的表現の生成 | |
US5903753A (en) | Name space registry with backward compatibility for older applications | |
US7831578B2 (en) | Apparatus for file system management with virtual file name | |
US8418169B2 (en) | Management method for managing software module and information processor | |
EP0718761A1 (en) | A platform independent object and object viewer loader and method | |
US20020049731A1 (en) | Information processing method and apparatus | |
JPH1091447A (ja) | 分散オブジェクトシステムにおいて分散オブジェクトの再利用を促進するカタログ装置 | |
US7562342B2 (en) | Method and apparatus for incrementally processing program annotations | |
JP2003526827A (ja) | ソフトウェアコードを圧縮するためのシステムおよび方法 | |
EP3198452B1 (en) | On-demand loading of dynamic scripting language code for reduced memory usage | |
JP2001142600A (ja) | 多国語表示切替装置およびその切替方法 | |
US6766350B1 (en) | Shared management of data objects in a communication network | |
US6795891B2 (en) | System and method of composing and decomposing a ROM image | |
JP2000357082A (ja) | 企業環境において展開記述子を実施するための方法と装置 | |
US8615736B2 (en) | Module facility for JAVASCRIPT language | |
JP4060890B2 (ja) | 階層化ドライバ入出力システム内の複数ドライバによる入出力要求の再処理を可能にするファイル・システム・プリミティブ | |
JP3310308B2 (ja) | プログラム群管理システム | |
JP7060797B2 (ja) | テーブル生成方法、テーブル生成装置およびテーブル生成プログラム | |
US20220398290A1 (en) | System and method for image file generation using a web browser | |
JP4776972B2 (ja) | キャッシュ生成方法、装置、プログラム及び記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041008 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080129 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080624 |