JP2009048649A - カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム - Google Patents

カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム Download PDF

Info

Publication number
JP2009048649A
JP2009048649A JP2008256707A JP2008256707A JP2009048649A JP 2009048649 A JP2009048649 A JP 2009048649A JP 2008256707 A JP2008256707 A JP 2008256707A JP 2008256707 A JP2008256707 A JP 2008256707A JP 2009048649 A JP2009048649 A JP 2009048649A
Authority
JP
Japan
Prior art keywords
software
medium
computer
storage device
identification
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
JP2008256707A
Other languages
English (en)
Other versions
JP4404940B2 (ja
Inventor
Coligan Tom
トム・コリガン
Elis Jonathan
ジョナサン・エリス
Robertson Hunter
ハンター・ロバートソン
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.)
Dell USA LP
Original Assignee
Dell USA LP
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 Dell USA LP filed Critical Dell USA LP
Publication of JP2009048649A publication Critical patent/JP2009048649A/ja
Application granted granted Critical
Publication of JP4404940B2 publication Critical patent/JP4404940B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】 本発明は、注文生産されたソフトウェア画像を、低価格で容易にコンピュータの記憶装置へ供給することを目的とする。
【解決手段】 コンピュータは、プロセッサと、プロセッサに結合され、プロセッサにより実行可能なソフトウェア画像を記憶する記憶装置122 と、プロセッサに結合された媒体駆動装置120 と、ソフトウェア転送パッケージとを備え、ソフトウェア転送パッケージは、メディア駆動装置112 へロード可能であり、ソフトウェア画像を記憶するソフトウェア転送媒体を備え、ソフトウェア転送媒体とプロセッサは相互にキー入力され、それによりソフトウェア画像は特定されたコンピュータの記憶装置たけにダウンロード可能であり、他へはダウンロード不可能であることを特徴とする。ソフトウェア転送媒体はCD ROM106 とフロッピー(登録商標)ディスク108 と指導シート110 を含んでいる。
【選択図】 図1

Description

コンピュータシステムは典型的にハードウェアとソフトウェアの結合されたシステムとして購入され供給されている。過去において、ソフトウェアは、購入者により手動でディスケット単位でディスケット駆動装置に負荷され、ダウンロードされるフレキシブルな(フロッピー(登録商標))ディスケットにより与えられる。メモリおよびディスク駆動装置の容量は拡張され、ソフトウェア画像の寸法が大きくなるにつれて、フレキシブルなディスケットによるソフトウェアの負荷は非常に厄介になる。例えば、典型的なソフトウェアシステム画像の寸法は2〜600メガバイトの範囲へ拡張され、将来的に拡張し続けることが予測されている。一般的には50程度の多数のフレキシブルなディスケットがソフトウェアシステム画像の転送に使用されている。
多数のコンピュータシステム供給業者はフレキシブルなディスケットをソフトウェア画像の供給用の高容量のコンパクトディスク(CD)ROMに置換している。CD ROMにソフトウェアを供給するコンピュータシステム供給業者は、より少数(例えば2または3)のソフトウェア構造を利用する限定された数(例えば4または8)のみのハードウェア構造を販売している。ソフトウェアシステムは特定の構造をもつ全てのコンピュータシステムの中で使用するための共通の動作システム、ハードウェア駆動装置、ソフトウェアユーティリティ、アプリケーションプログラムを含んでいる。これらのコンピュータシステム供給業者はソフトウェアディスケットを纏めて、通常は一万〜十万の範囲のバッチでプレスし、それによって同一のソフトウェアシステムが多数のコンピュータシステムへ交換可能に与えられる。
一般的なハードウェアコンピュータシステムは典型的に種々の異なったハードウェアサブシステムを含んでいる。これらの一般的な大量生産のソフトウェアシステムをハードウェアコンピュータシステムへインストールする期間中、いくつかのソフトウェア形態が通常実行される。ダウンロードプロセスは自動的にハードウェアサブシステムの識別値を検出し、検出されたサブシステムに対する適切な駆動装置を構築するルーチンをしばしば含んでいる。
多数の異なったハードウェアの販売者はハードウェアサブシステムを供給し、しばしば多数の異なったソフトウェア供給業者は大量生産されたディスケットに与えられるソフトウェアモジュールを供給する。大量生産されたソフトウェアを用いてソフトウェアをコンピュータシステムへ供給する一般的な技術に関する共通の問題は、種々のハードウェアサブシステムとソフトウェアモジュールの中でしばしば生じる種々の不一致である。最初に、特定のハードウェア−ソフトウェアシステム構造が結合されるのは、システムが工場から出荷されてから長時間後に顧客がシステムを起動しようとするときである。典型的に顧客は特定のハードウェア構造でソフトウェアを最適に実行するためのハードウェアおよびソフトウェアの種々の構成可能な特性を正確に設定した経験がない。それ故、システムの起動はしばしばコンピュータシステム顧客と、販売業者の顧客補助サービスを頻繁に使用する顧客をもつ販売業者との両者にとって困難であり、時間を浪費する。
デルコンピュータ社(商標名)は注文に応じて各コンピュータシステムを“カスタム化”することによりソフトウェア−ハードウェアシステムを一体化する難点を克服している。顧客はコンピュータを注文し、特定のハードウェアサブシステムとソフトウェアパッケージを特定化する。コンピュータに全て固有のモードをインストールされるハードウェア用の特定の駆動装置をインストールすることを含んでいるソフトウェア−ハードウェアの一体化は、結合されたシステムが工場から出荷する前に、デルコンピュータ社(商標名)により工場で行われ、試験され、適合性を確証される。ソフトウェアはしたがって特定の注文されたハードウェアシステムで動作することを確認され、または特定の駆動装置および動作システムと共に動作することも確認される。
注文によって製造されたビジネスモデルの1つの結果は、各ソフトウェア負荷が潜在的に特有であることである。それ故、ソフトウェアは大量生産されたディスケットにより供給されることができない。デル社(商標名)はそれ故、工場で特定化されたハードウェアでソフトウェアを起動し、ソフトウェア負荷が適切に動作することを確証し、ソフトウェア画像がコンピュータシステムのハードディスク駆動装置にロードされているソフトウェア画像を有するコンピュータシステムを出荷する。
ハードディスク駆動装置は多少揮発性を有する媒体であり、それ故、ハードディスク駆動装置の画像は意図的にまたは非意図的に変化されることができる。ソフトウェア画像がハードディスク駆動装置に与えられるので、ソフトウェア画像における不適切な変化は容易に補正されない。顧客が正確なデータをハードディスクに書込むことによって補正される問題を有し、顧客がバックアップ媒体を作っていないとき、デル社は供給されたオリジナルなソフトウェア画像を含んでいる交換用ハードディスクを与えることによって補正する。典型的に、第3者のメンテナンス員が顧客位置に派遣され、壊れたハード駆動装置を交換用ハード駆動装置と交換し、インストレーションプロセスを行う。デル社はハード駆動装置の難点がシステム故障によるものか、または顧客が許可なくまたは禁止された動作を行うことにより生じるものであると交換を行う。例えば、顧客は異なったハードウェアサブシステムをインストールし、ハードウェアサブシステムを制御するためのソフトウェア駆動装置を不適当にインストールし、それによってハード駆動装置を故障させる。
交換用ハードディスク駆動装置は多数の問題を補正するためソフトウェアをフィールドへ送るための主要な方法として使用される。問題は例えば顧客またはウィルスによるファイルの故障、工場によって供給していないハードウェアサブシステムのインストレーションによる難点、顧客による動作システム変更の決定、不適当な工場のソフトウェアのダウンロード、ハード駆動装置の故障等を含んでいる。
残念ながら、ハード駆動装置の交換は高価であり、多くは顧客にとって不便である。ハード駆動装置の交換が高価であるのはハード駆動装置の価格によるだけでなく、第3者のメンテナンス員を呼ぶのに同等の多額の費用がかかり、返却されたハード駆動装置の広範囲にわたる管理および試験のためである。
“注文による製造”のソフトウェア画像をコンピュータシステムに与えて、価格を低下させ便宜性を改良するシステムおよび技術が必要である。
発明の概要
ソフトウェア画像をコンピュータシステムへ供給する方法およびシステムは、特定の個々のコンピュータシステムのために構成され、特定化された個々のコンピュータシステムのみにダウンロードされ動作可能であるように制限されているカスタムプログラムされたコンパクトディスク(CD)ROMを利用する。この方法およびシステムはさらに、コンピュータが初期的な構成およびダウンロードされた後に工場から出荷された時点のソフトウェア状態へ、特定化されたコンピュータシステムを回復するためのインストレーション手順を利用する。カスタムプログラムCD ROMは、ブート可能なフレキシブルディスケットと、コンピュータシステムを“工場から出荷したて”のソフトウェア状態に回復するために顧客が使用するための教育用の技術指導シートと共に顧客へ発送される。
手動で特有のキーを入力されるコンピュータシステム、カスタムプログラムCD ROM、ブート可能なフレキシブルディスケットを含む3つの構成要素を使用して、秘密保護技術が限定され、それによって全ての3つの構成要素が組み合わせられて使用されるときのみにソフトウェア画像のロードが可能である。したがって同一のキー入力を有するカスタムプログラムCD ROMおよび特定のブート可能なフレキシブルディスケットは同一のキー入力を有する特定のコンピュータシステムハードウェアにソフトウェアをダウンロードすることのみに使用される。秘密保護技術は、ソフトウェアを受信するようにキー入力をされたコンピュータハードウェア以外のコンピュータハードウェアにソフトウェア画像がロードされる可能性を除去する。秘密保護技術は、タグIDをカスタムプログラムCD ROMとブート可能なフレキシブルディスケットに書込むことを含む全ての3つのキー項目上の相互参照タグ識別(ID)番号と、コンピュータハードウェアの特有のサービスタグ番号とを使用する。特有の相互キー入力されたカスタムプログラムCD ROMと、特定の関連するブート可能なフレキシブルディスケットと、特有のキー入力をされたコンピュータハードウェアとの組合わせが整合して共に使用されることによって、カスタムプログラムCD ROMに含まれるソフトウェア画像の再ロードが可能にされる。
秘密保護技術の第1の動作は、特有のキー入力をされたカスタムプログラムCD ROMとブート可能なフレキシブルディスケットの組合わせを生成することである。オリジナルの顧客注文が処理され、特定の顧客が決定されたソフトウェア画像のロードがオリジナルの顧客注文にしたがってコンパイルされる。ソフトウェア画像は通常工場でコンピュータシステムハードウェアにダウンロードされ、その後顧客へ出荷される。顧客が決定したソフトウェア負荷は、特定化されたコンピュータシステムハードェアのハードディスク駆動装置へ書込むために特別に構成されたソフトウェア画像である。ソフトウェア画像と組合わせられて、タグ識別(ID)ファイルは、ソフトウェア画像を受信する権限をもつ特定されたコンピュータシステムハードウェアのサービスタグ番号を含んだカスタムプログラムCD ROMに書込まれる。ソフトウェア画像と識別ファイルの組合わせはCD ROM媒体プラッタへ焼き付けられる。特定されたブート可能なフレキシブルディスケットは、カスタムプログラムCD ROMのID番号を含んでいる書込まれた対応する識別(ID)ファイルと、カスタムプログラムCD ROMに対するタグ情報を含んでいるカスタムプログラムCD ROM上の識別ファイルの名称を有する。ブート可能なフレキシブルディスケットはまた、ソフトウェア画像をコンピュータシステムへ回復するプロセスを制御するCDプログラムと実行可能なファイルを記憶する。関連するカスタムプログラムCD ROMとブート可能なフレキシブルディスケットはサービスキット技術指導シートと共に顧客へ発送される。顧客はオリジナルの注文して構成されたコンピュータシステムハードウェアを有する。
顧客が受取ったとき、サービスキット技術指導シートは、ブート可能なフレキシブルディスケットをコンピュータシステムのフレキシブルディスク駆動装置のスロットへ挿入し、カスタムプログラムCD ROMをコンピュータシステムのCD ROMスロットに挿入し、コンピュータシステムを再度ブートするように指令する。ブート可能なフレキシブルディスケットはコンピュータシステムのブート負荷のときに付勢されるCD回復プログラムを記憶する。CD回復プログラムは最初にCD画像に含まれているタグIDファイルをカスタムプログラムCD ROMからダウンロードし、開く。カスタムプログラムCD ROM上のタグIDファイルを開くことに加えて、CD回復プログラムはブート可能なフレキシブルディスケットからIDファイルを開き、IDファイルのタグ情報がカスタムプログラムCD ROMおよびブート可能なフレキシブルディスケットと整合することを確認する。
CD回復プログラムは、インストレーションプログラムを実行するコンピュータからサービスタグ番号を獲得するインストレーションプログラムを含んでいる。このコンピュータサービスタグ番号は、カスタムプログラムCD ROMに記憶されているIDファイルを含んだタグ情報と比較される。コンピュータハードウェアサービスタグがカスタムプログラムCD ROMのタグIDと整合したならば、回復プログラムは、ハード駆動装置の情報をクリアし、カスタムプログラムCD ROMからのソフトウェア画像をハードディスク駆動装置へダウンロードすることによりハード駆動装置の回復プログラムを完了する。サービスタグ番号が整合しないならば、コンピュータハードウェアからアクセスされたサービスタグ番号は顧客に対する付加的なサービス補助を指令する命令と共に顧客に報告される。
多数の利点が前述のシステムおよび動作方法により実現される。1つの利点は、ソフトウェア転送システムがこの分野でソフトウェアプログラムのトラブルシューティングおよび補正を行う価格を低下することである。ソフトウェア転送システムはハードディスク駆動装置の初期フィールド発生率と、供給業者から最初に発送されたときのコンピュータの信頼性尺度の欠陥を効率的に減少する。ソフトウェア転送システムはハードディスク駆動装置の故障数を減少し、コンピュータシステムの返却の際の試験を繰返すことがない利点を有する。
秘密保護技術は、資格が与えられたソフトウェアの使用を1つの特定のコンピュータに限定する利点を有し、この資格はコンピュータの自由なソフトウェア負荷を可能にする基本的なプロセスとの干渉を避けながら認可される。
詳細な説明
優秀であるとされている前述の実施形態の特徴を特許請求の範囲で特別に説明する。しかしながら、構造および動作方法との両者に関する本発明の実施形態は以下の説明と添付図面を参照して最良に理解されるであろう。
図1を参照すると、概略ブロック図は、パーソナルコンピュータ(PC)などのコンピュータ104 へソフトウェア画像102 を供給するためのソフトウェア転送システム100 の1実施形態を示している。図示のソフトウェア転送システム100 はデータベース116 およびコンパクトディスク(CD)ROMバーナ118 を含んでおり、これらが組合わさって3つのソフトウェア転送構成要素:(1)カスタムプログラムコンパクトディスク(CD)ROM106 と、(2)ブート可能なフレキシブルディスケット108 と、(3)サービスキット技術指導シート110 を生成する。3つの構成要素は組み合わさって、コンピュータ104 を“工場から出荷したて”のソフトウェア状態、即ちコンピュータ104 を最初に構成しダウンロードした後の工場から出たときの状態と同一状態に回復するためのインストレーション処理を規定し、実行する。
3つの構成要素は異なった目的を有する。カスタムプログラムCD ROM106 はソフトウェア画像102 をコンピュータ104 の主実行可能な記憶装置、典型的にはハードディスク駆動装置112 へ転送するためのソフトウェア転送媒体である。ブート可能なフレキシブルディスケット108 はカスタムプログラムCD ROM106 からのダウンロードを制御するためのソフトウェアダウンロード媒体である。サービスキット技術指導シート110 は、ブート可能なフレキシブルディスケット108 を使用して、カスタムプログラムCD ROM106 からソフトウェア画像102 をダウンロードするようにユーザに命令する指令リストである。
データベース116 は大容量記憶装置制御装置120 と、大容量記憶装置122 を含んでおり、大容量記憶装置122 は典型的にハードディスク駆動装置、CD ROM駆動装置、磁気テープ等を含む多数の大容量記憶装置を含んでいる。大容量記憶装置制御装置120 は大容量記憶装置122 を制御し、それによってソース、オブジェクト、絶対、2進コード、ソフトウェア画像等を含む種々のフォーマットでソフトウェアコードのような情報をアクセスする。大容量記憶装置制御装置120 は、アセンブラ、コンパイラ、リンカ等のソフトウェアコードを処理し、プログラム動作のためのコンピュータのハードディスク駆動装置に典型的にダウンロードされるソフトウェア画像を形成するための種々のプログラムを含んでいる。
図示の実施形態では、大容量記憶装置制御装置120 は大容量記憶装置122 と、CD ROMバーナ118 に接続され、大容量記憶装置122 からCD ROM媒体へソフトウェアコードを転送する。大容量制御装置120 はコンピュータ104 へも接続可能であり、プログラムを大容量記憶装置122 からコンピュータ104 のハードディスク駆動装置112 へダウンロードする。
大容量制御装置120 の1動作は、コンピュータ104 のハードディスク駆動装置112 へダウンロードするためのソフトウェア画像102 を生成し、それに続いて、コンピュータ104 によりプログラムを実行することである。コンピュータ104 のハードウェアおよびソフトウェア構造は大容量記憶装置制御装置120 へ入力され、ソフトウェア画像102 に含まれるソフトウェア構成要素を決定する。大容量記憶装置制御装置120 はソフトウェア画像102 を生成するために種々の処理プログラムを実行する。画像はコンピュータ104 へダウンロードされ、コンピュータ104 を構成するハードウェアおよびソフトウェアパッケージが顧客へ発送される。顧客の注文を入力してソフトウェアをダウンロードするまでのソフトウェア画像を供給するプロセスが自動化されるか半分自動化される。
同一の自動化されたプロセスがカスタムプログラムCD ROM106 を生成するために使用される。カスタムプログラムCD ROM106 はコンピュータシステムに問題が生じた場合に顧客に対して利用可能にされる。あるシステムでは、コンピュータシステムのオリジナルのプログラミング中に生成されたソフトウェア画像102 は大容量記憶装置122 に記憶される。他のシステムでは、必要なときにソフトウェア画像102 はオリジナルの顧客の注文を単に再度入力することにより再生成される。
例えば例示のシステムでは、同一の自動化されたプロセスがハードディスク駆動装置へダウンロードするためのソフトウェア画像を生成し、CD ROMへ焼き付ける画像を生成するために使用される。しかしながら、画像をハード駆動装置へダウンロードする代わりに、ソフトウェア画像は、ソフトウェア画像102 をカスタムプログラムCD ROM106 へ書込むためのCD ROMバーナ118 へ転送され、ブート可能なフレキシブルディスケット108 がプログラムされ、CD ROMとディスケットパッケージが顧客へ送られる。自動化されたプロセスは、カスタムプログラムCD ROM106 とブート可能なフレキシブルディスケット108 を有効な価格で効率的な方法により生成する自動化されたまたは半自動化された技術を使用して組立てられた内部プロセス制御スクリプトを有効に利用する。制御スクリプトは潜在的に複雑であるが、自動化された技術は熟練したオペレータを必要とせずにソフトウェア転送媒体を生成する。
カスタムプログラムされたコンパクトディスク(CD)ROM106 は特定された個々のコンピュータハードウェア用に構成され、実行のため特定された個々のコンピュータへのみダウンロードされるように限定される。ブート可能なフレキシブルディスケット108 は、カスタムプログラムCD ROM106 と特定された個々のコンピュータに整合するように個別にコード化される。カスタムプログラムCD ROM106 に形成されるソフトウェア画像102 はコンピュータハードウェアの構成を各装置、バス、BIOS、装置の駆動装置、動作システム等の詳細なレベルに正確に整合する。ソフトウェア画像102 はハードディスク駆動装置112 へ書込まれ、コンピュータ104 はインストールされたハードウェアを駆動するために正確なソフトウェア構造で直ちに付勢されることが有効である。
ソフトウェア転送システム100 は、相互に特定化されたキー入力をされるコンピュータ104 、カスタムプログラムCD ROM106 、ブート可能なフレキシブルディスケット108 の特別構造によりさらに秘密保護技術を構成し、それによって全ての3つの構成要素が組み合わされて使用されるときのみにソフトウェア画像のロードが可能である。
カスタムプログラムCD ROM106 とブート可能なフレキシブルディスケット108 は同じ識別キー入力を有する共通のソフトウェア転送システムパッケージを形成し、同じ識別キー入力を有する特定化されたコンピュータハードウェア104 へソフトウェア画像102 をダウンロードすることのみに使用可能である。相互参照タグ識別(ID)番号はタグIDをカスタムプログラムCD ROM106 とブート可能なフレキシブルディスケット108 へ供給することによりコード化される。コンピュータハードウェア104 はまた1つのコンピュータを特定して識別する特有のサービスタグ識別子を有する。サービスタグは典型的にコンピュータ104 内の記憶装置のセクション中にプログラムされるか“焼付け”される多数の符号の数字文字ストリングである。幾つかのシステムでは、サービスタグはコンピュータ104 の製造プロセス中に非揮発性メモリの隠れたセクションに焼き付けられる。
秘密保護技術はソフトウェア画像102 を受信するためにキー入力をされたコンピュータハードウェア104 以外のコンピュータハードウェアへソフトウェア画像102 をロードすることを禁止する。カスタムプログラムCD ROM106 に含まれるソフトウェア画像102 をコンピュータ104 のハードディスク駆動装置112 へ再ロードすることは、特有の相互キー入力されたカスタムプログラムされたD ROM106 と、特定の関連するブート可能なフレキシブルディスケット108 と、特有のキー入力されたコンピュータハードウェア104 が整合した組合わせであるときのみ可能にされる。
図1と共に図2を参照すると、フローチャートはソフトウェア転送システム100 の秘密保護技術200 を適用して実行される動作を示している。秘密保護技術200 は資格が与えられたソフトウェアの使用を1つの特定のコンピュータに効果的に限定し、資格はコンピュータの自由なソフトウェア負荷を可能にする基本的なプロセスの干渉を避けながら認可される。
ソフトウェア画像生成動作202 では、オリジナルの顧客注文が処理され、特定の顧客により決定されたソフトウェア画像102 のロードがオリジナルの顧客注文にしたがってコンパイルされる。顧客が決定した負荷は、特定のコンピュータハードウェア104 のハード駆動装置112 へ書込むために特別に構成されたソフトウェア画像102 である。したがって、ソフトウェア画像102 は、工場でコンピュータシステムハードウェアのハードディスクにダウンロードされ、顧客に発送されたオリジナルのハードディスク画像と同じである。
ソフトウェア画像102 が一度生成されると、秘密保護技術200 はキー入力パッケージ生成動作204 を行い、ここでは特有のキー入力をされたカスタムプログラムCD ROM106 とブート可能なフレキシブルディスケット108 の組合わせのためにキーコードが形成される。キーは、ソフトウェア画像102 を受信する権限を与えられている特定化されたコンピュータハードウェア104 のサービスタグ番号をステップ206 でアクセスし、サービスタグ番号を含むタグ識別(ID)ファイルをステップ208 で形成することにより生成される。サービスタグに基づくキーに加えて、動作208 を形成するタグIDはランダムな番号符号を生成する動作を含んでいる。例示の実施形態では、コンピュータ104 からのサービスタグとランダム番号はカスタムプログラムCD ROM106 とブート可能なフレキシブルディスケット108 との両者に書込まれるキーとして使用され、それによって、資格が与えられたソフトウェアを有するコンピュータ104 以外のコンピュータで資格を有するソフトウェアを使用することを防止する基本的な識別子の役目を行う。
CD ROM書き込み動作210 は組み合わされたソフトウェア画像102 とタグIDファイルをカスタムプログラムCD ROM媒体へ焼き付ける。
キー入力されたパッケージ生成動作204 の他の動作はブート可能なフレキシブルディスケット108 を処理することである。フレキシブルディスケットIDファイル生成動作212 は、サービスタグとランダム番号タグのコード化を含むカスタムプログラムCD ROM106 のタグ情報と、カスタムプログラムCD ROM106 のタグIDファイルの名称とを含んでいるIDタグファイルを形成する。フレキシブルディスケットIDファイル生成動作212 はその後、ブート可能なフレキシブルディスケット108 へIDタグファイルを書込む。回復プログラム生成動作214 はブート可能なフレキシブルディスケット108 へCD回復プログラムを記憶する。CD回復プログラムはソフトウェア画像102 をコンピュータ104 のハードディスク駆動装置112 へ回復するために顧客等のユーザにより動作される実行可能なファイルである。幾つかの実施形態では,CD回復プログラムはユーザの割込みなく自動的に動作する。幾つかの実施形態では、CD回復プログラムは、警告メッセージの表示と、ユーザが警告メッセージに応答することを可能にする待ち時間の割込みのみで自動的に動作する。
ソフトウェア転送パッケージ送付動作216 では、カスタムプログラムCD ROM106 とブート可能なフレキシブルディスケット108 とサービスキット技術指導シート110 を含むパッケージがユーザまたは顧客へ送付される。ユーザはオリジナルの注文し構成したコンピュータシステムハードウェア104 を所有することを想定される。サービスキット技術指導シート110 は、カスタムプログラムCD ROM106 とブート可能なフレキシブルディスケット108 とを使用してハードディスク駆動装置112 を、工場から最初に発送したときのコンピュータ104 の正確なソフトウェア状態に回復する指令をユーザに与える。オリジナルの発送後に、コンピュータ104 にインストールされたソフトウェアまたはハードディスク駆動装置112 へ負荷されたデータは除去され、それによって全てのデータ値およびプロセッサ状態は初期化される。
ユーザはソフトウェア転送パッケージを受取り、サービスキット技術指導シート110 は、カスタムプログラムCD ROM106 をコンピュータシステムCD ROM読取り装置へ設置し、コンピュータシステムのフレキシブルディスク駆動装置のスロットにブート可能なフレキシブルディスケット108 を挿入し、コンピュータ104 を再ブートすることにより回復プログラム218 を実行するようにユーザに指令する。コンピュータ104 を再ブートする1つの技術は、コンピュータのパワーを落とし、約30秒待機し、パワーをコンピュータ104 へ与える。ブート可能なフレキシブルディスケット108 はコンピュータ104 のブートストラップ負荷のときに付勢される回復プログラムを記憶する。ブート可能なフレキシブルディスク108 はコンピュータ104 のブートストラップロードを付勢する回復プログラムを記憶する。回復プログラム実行動作218 はハードディスク駆動装置112 のマスターブート記録を特別な回復動作システムを発動するように変更することによって製造プロセスのソフトウェアダウンロード部分をシミュレートする。EXE、BAT、COFIG.SYSファイルを含んでいる特別な動作システムファイルはCD ROM駆動装置を負荷するように付勢され、CD ROM上のソフトウェア画像102 を発見する。
IDタグチェック動作220 では、回復プログラムは最初に、カスタムプログラムCD ROM106 からCD画像に含まれているタグIDファイルをダウンロードして開く。カスタムプログラムCD ROM106 上のタグIDファイルを開くことに加えて、回復プログラムはブート可能なフレキシブルディスケット108 からIDファイルを開き、IDファイル中のタグ情報がカスタムプログラムCD ROM106 とブート可能なフレキシブルディスケット108 で整合することを確認する。
インストレーションプログラム実行動作222 では、インストレーションプログラムはインストレーションプログラムを実行しているコンピュータ104 からサービスタグ番号を得る。インストレーションプログラムは典型的にブート可能なフレキシブルディスケット108 に記憶されるが、他の実施形態ではカスタムプログラムCD ROM106 のような他の記憶装置に記憶されてもよい。
インストレーションプログラムはいくつかのアクセス技術のうちの1つによりコンピュータ104 中のサービスタグをアクセスする。例示的に、インストレーションプログラムはコンピュータ104 のプロセッサ中の選択された記憶位置を読取るXBIOS呼を使用してサービスタグ番号をアクセスする。他の構造では、その他の技術または技術の組合わせがサービスタグ番号のアクセスに使用されてもよい。例えば、多数のタイプのコンピュータシステムに適用可能な秘密保護技術はサービスタグをアクセスするための多数の技術を使用することができる。1つの構造では、コンピュータシステムIDコードは実行するコンピュータのハードウェアおよびソフトウェアプラットフォームを決定するためインストレーションプログラムによりアクセスされ、それによってサービスタグをアクセスするための適切な技術を示す。第1のタイプのコンピュータでは、XBIOS呼はサービスタグのアクセスに使用される。第2のタイプのコンピュータはCMOS ROMと、バッテリー支持の非揮発性メモリまたは記憶装置を読取るための所有技術によりアクセスされるサービスタグを有する。第3のタイプのコンピュータはデスクトップ管理インターフェイス(DMI)呼を使用してアクセスされるサービスタグを有する。
システムIDコードは一般的なタイプのコンピュータを示している。サービスタグのアクセスの仕方を決定するためにコンピュータのシステムIDコードを使用することは、ソフトウェア転送システム100 が多数のタイプと世代のコンピュータを支持することを可能にする利点がある。サービスタグをアクセスするために異なった技術を使用することもソフトウェア転送システム100 が種々の動作システムを作動するコンピュータを支持することを可能にする利点がある。例えば、内部記憶位置へのアクセスはウィンドウズ95(登録商標)とウィンドウズNT (登録商標)動作システムを作動するコンピュータでは異なっている。
ハードウェアキー確認動作224 はコンピュータ104 のサービスタグ番号を、カスタムプログラムCD ROM106 に記憶されたIDファイルに含まれているタグID情報と比較する。コンピュータ104 のサービスタグがカスタムプログラムCD ROM106 上のタグIDと整合したならば、回復プログラムは警告メッセージを表示し、ユーザが回復プログラムを中止できるように待機し、ハードディスク駆動装置の回復プロセスを完了する。警告メッセージはハード駆動装置は消去されていることをユーザに通知し、回復プロセスを中止するためのボタンアイコンを与える。したがって、ハードディスクから重要なデータを消去する前にユーザは動作を中止し、データを転送することを可能にされる。
ハード駆動装置の回復プロセスは、ステップ226 でハード駆動装置112 上の情報をクリアし、ステップ228 でソフトウェア画像102 をカスタムプログラムCD ROM106 からハードディスク駆動装置112 へダウンロードすることにより完了される。回復プログラムはハード駆動装置112 をフォーマットすることによってハードディスク駆動装置をクリアし、それによって破壊されている可能性があるデータを消去し、駆動装置の適切な動作を確実にし、駆動装置112 に感染しているウィルスを除去する。回復プログラムは、オリジナルな注文されカスタムプログラムCD ROM106 から構成された全てのソフトウェアを正確な順序でハードディスク駆動装置112 へコピーすることによってソフトウェア画像102 をダウンロードする。ファイルがハードディスク駆動装置112 へコピーされるとき、ファイル属性はソフトウェア画像102 の動作のために正確に割当てられまたはリセットされる。コピープロセスはかなり時間がかかり、典型的に10〜25分間継続する。ファイルのコピーに続いて、ソフトウェア転送チェック動作230 はソフトウェア−ハードウェアキー入力とソフトウェアダウンロードが正確に行われ実行されたことを確認するルーチンを実行する。ユーザに読取り装置からCD ROMを除去するように要求するメッセージをコンピュータ上に表示し、駆動装置からブート可能なフレキシブルディスケット108 を除去し、コンピュータ104 を再ブートすることによって回復プログラムはステップ232 で終了する。第2の再ブート動作に続いて、コンピュータ104 は、ユーザまたは顧客と工場の代表者との間の契約によってオリジナルのソフトウェア注文に応じて変形されたことから起こりうる相違点を除いて、コンピュータ104 は最初に発送したときのコンピュータと同一状態である。
種々の実施形態において、付加的な秘密保護技術が実行されてもよい。例えば幾つかのシステムでは、カスタムプログラムCD ROM106 のファイルからのデータはカスタムプログラムCD ROM106 のプログラミングに先立って限定された方法で変更されてもよい。回復プログラムはソフトウェア画像102 がハードディスク駆動装置112 に書込まれたとき、限定された変更を逆にする。付加的な秘密保護技術は、カスタムプログラムCD ROM106 からデータを権限を持たずに読取り、ユーティリィティプログラムを使用してディスクへデータを書込むことを防止する。
コンピュータ104 のサービスタグがカスタムプログラムCD ROM106 のタグIDと整合しないならば、回復プログラムは234 でエラー状況信号を発生する。回復プログラムは、コンピュータハードウェア104 からアクセスされたサービスタグ番号を含んでいる診断情報を与え、ユーザが付加的なサービス補助をするように指導する命令を与える。
図3、4を参照すると、フローチャートはソフトウェア転送パッケージを製造するために行われる動作を含むプロセスの1例を示している。ソフトウェア転送パッケージは、顧客へ発送するためのカスタムプログラムCD ROM106 と、ブート可能なフレキシブルディスケット108 と、サービスキット技術指導シート110 とを含んでいる。
ソフトウェア転送パッケージプロセス300 は、ステップ302 において発送者が注文番号を自動化またはコンピュータ化されたシステムへ入力して顧客の注文記録を検索するときに開始する。顧客注文記録は部品番号により顧客が注文したソフトウェアを特定化する。発送者はステップ304 で顧客の注文でリクエストされたソフトウェアの部品番号を入力する。発送者はその後、ステップ306 で購入注文(PO)フィールドと発送方法と、タイ(tie )番号を含んでいる短い注文として発送発行状態を入力する。発送者はステップ308 で発送アドレスが正確であることを確認する。発送者はステップ310 で交換注文番号を生成し、ステップ312 で発送を発送コメントログへ記録する。
記録された注文はステップ314 で自動的にフィールドサービスに印刷される。フィールドサービスは、ステップ316 で負荷されている顧客が特定したソフトウェアを含んだハード駆動装置を組立ててCD ROM焼付けステーションへ発送する。
CD ROM焼付けステーションプロセスがステップ318 で開始され、CD ROM焼付けステーションのフィールドサービス員はステップ320 でハード駆動装置をCD焼付けステーションへ接続する。フィールドサービス員はステップ322 で発送者からの顧客サービスタグを検索する。フィールドサービス員はステップ324 でPREP BATルーチンを作動し、このPREP BATルーチンはソフトウェア画像をコピーするためハードディスク駆動装置を処理し、ファイルをハードディスク駆動装置からフレキシブルディスケットにコピーし、相互に関連するコンピュータCD ROMとブート可能なフレキシブルディスケットについて先に説明した識別タグとを作るMAKETAG EXEルーチンを行う。PREP BATルーチンはサービスタグの入力を行う。
フィールドサービス員はステップ326 でカスタムプログラムCD ROM106 を焼付けるCDBURN FLUを行う。フィールドサービス員はステップ328 でサービスタグを焼付けステーションソフトウェアへ入力し、ステップ330 でカスタムプログラムCD ROM106 に顧客による注文のソフトウェア画像を焼付ける。ステップ332 でフィールドサービス員は在庫品(ストック)からサービスキット技術指導シート110 を引出し、ステップ334 でカスタムプログラムCD ROM106 と、ブート可能なフレキシブルディスケット108 と、サービスキット技術指導シート110 を出荷カートンへ積込む。ステップ336 でフィールドサービス員はその後、出荷カートンを発送し、顧客へ発送する。
図5を参照すると、ユーティリィティプログラムを実行するための環境と独立して動作システムを生成するためのシステムを動作するコンピュータシステム400 が示されている。コンピュータシステム400 、典型的にはパーソナルコンピュータは、プロセッサ410 と、システムランダムアクセスメモリ(RAM)420 と、システムROM422 と、ハードディスク駆動装置430 と、種々の他の入力/出力装置440 とを含んでいる。これらのシステム構成要素は、データ、アドレス、制御ラインを含んでいるバス450 によって通信する。バス450 を介してプロセッサ410 へ接続されているCMOSクロック非揮発性RAM460 は典型的にコンピュータシステム400 へのパワーが遮断されたときでさえも情報を記憶するために使用される。環境と独立した動作システムを生成するシステムを作り上げるプログラム命令はプロセッサ410 に接続されているハードディスク駆動装置430 またはシステムROM422 等の記憶装置に記憶される。プロセッサ410 、例えば486,586 のようなx86プロセッサまたはペンティアム(登録商標)プロセッサはコンピュータシステム400 の計算動作を実行する。
図6を参照すると、コンピュータシステムのメモリマップ500 は、0000Hの開始アドレスを有するプログラムメモリ510 と、0A000Hの開始アドレスを有するビデオメモリ512 と、アドレス0F000H〜0FFFFHに位置されるBIOSメモリ514 とを示している。基本的な入力出力システム(BIOS)は動作システムを特定のコンピュータへカスタム化する動作システムの一部である。BIOSは例えばシステムクロック、ハードディスク、ディスプレイ等の共通の装置に対する最低レベルのインターフェイスを形成する。BIOSメモリ514 は拡張基本入力出力システムXBIOS520 へインターフェイスするための情報を含んでいる。
XBIOS520 はコンピュータシステムのBIOS機能を拡張する。特に種々のコンピュータシステム積分器は拡張された特性を標準的なBIOS機能に与えるためXBIOSメモリ520 を含んでいる。これらのうち幾つかの特性はコンピュータユーザのプログラムの使用を容易にするために含まれている。特に、本発明にしたがった1実施形態により実現される機能に関しては、BIOS機能は制御ブロックのアドレスをシステム管理モード(SMM)に送るために使用され、システム管理モード(SMM)は制御ブロックにより指示される動作を行う。1つのこのような動作は秘密保護される区画表の更新である。別の動作はディスク駆動装置上の特定の物理的セクタ位置の識別である。BIOSにより典型的に行われる他の特性は、再充電可能なバッテリーの残りのバッテリー寿命を表示し、パワー管理パラメータを設定する制御パネルを動作するバッテリーアイコンの管理を含んでいる。この特性はまたWinCPLも含んでおり、このアプリケーションはシステムのセットアップ動作を発動せずにパワー管理機能の実行を可能にする。WinCPLはパスワードの設定、スピーカ音量の制御、シミュレートされたキークリックの許容、輝度およびコントラスト等のディスプレイパラメータの変更のような種々の秘密保護動作を制御する。この特性はさらにアセットタグユーティリィティを含んでおり、これはコンピュータユーザが特定のコンピュータシステムを識別するためのアセットタグを割当て、割当てられたアセットタグを読取ることを可能にする。アセットタグは会計目的等でコンピュータシステムを識別し目録記入するのに便利である。さらに別の特性はビデオバイアス、モニタ再生速度等のビデオモニタパラメータを制御するモニタexe実行可能なファイルである。
XBIOS520 はXBIOS表522 のエントリを指示する複数のポインタを記憶する。XBIOS表522 は種々の割当てられたアプリケーションプログラム機能524 のメモリアドレスに対する複数のポインタを含んでいる。各個々のXBIOSプログラム機能524 はXBIOS表522 の別々のエントリと、XBIOS表522 に記憶されている別々のエントリポイントを有する。
1つの動作モードでは、XBIOS520 のプログラムコードは動作識別子とパラメータをCMOSメモリ460 を転送し、SMI#信号を呼出す入力/出力命令を実行する。SMI#信号はシステム管理モード(SMM)が動作するように付勢する信号である。プロセッサ410 が命令境界でSMI#信号を認識するとき、プロセッサ410 は全ての記憶動作が終了するまで待機する。プロセッサ410 はその後、プロセッサレジスタの状態をシステム管理RAM(SMRAM)スペースと呼ばれるメモリ領域に保存し、SMMハンドラルーチンの実行を開始する。SMI#割込みはデバック例外および外部割込みよりも優先順位が高く、それによってSMMプロセスはデバックおよび外部割込み状態に代って動作する。それに続くSMI#とマスク可能ではない割込み(NMI)リクエストは、プロセッサがシステム管理モードで動作中には承認されない。
システム管理モード(SMM)プロセスは一般的にソフトウェアルーチンが限定されたパターンまたはコードを特定の限定されたSMI入力/出力I/O位置に書込む技術により行われる。パターンは適切に複雑であるように定められているので、不正確で不適切なパターンは不適切に設定されない。通常、パターンは十分な量の動作情報をエンコードするので、この複雑性のレベルは容易に実現される。パターンコード化は発動される正確なXBIOS動作に対して十分に特定されるが、安全保護された動作システムの秘密保護は妥協されない利点があるが有用な機能が動作することを可能にされており、これは他の場合には動作システムにより禁止されている。SMI I/O位置へこのパターンを書込むことによりSMI#信号が発生し、システム管理モードの割込みを呼出す。
図7を参照すると、全XBIOS機能を与えるソフトウェアシステム600 の動作を示したブロック図が示されている。ソフトウェアシステム600 はシステム管理モード(SMM)動作用のインターフェイスを提供する。このインターフェイスでは、アプリケーションプログラム610 はSM#割込みを直接的に発動しようとするのではなく、代わりにアプリケーションプログラム610 はSMM動作620 をリクエストするためにXBIOS614 を呼出す。SMM動作620 は動作システム602 の動作と制御とは無関係に独立して付勢される。
ソフトウェアシステム600 においては、アプリケーションソフトウェアプログラム610 はウィンドウズNT(登録商標)、ウィンドウズ95(登録商標)、OS/2(登録商標)などのターゲット動作システム602 の動的リンク能力を使用して実行するように処理されており、それによって動的リンク環境は動作システム602 により支配されるリンクステップおよびプログラム負荷ステップを含んでいる。リンカ(linker)は1組の動的リンクライブラリ(DLL)604 を走査する。幾つかのライブラリは実行可能なファイル612 に連結されているラン時間支持コードを含んでいる。インポートライブラリと呼ばれる他のライブラリは、動作システム602 が実行のためプログラム実行可能ファイル612 をロードするまで十分に分析されない機能の参照を含んでいる。動作システム602 のリンカはインポートライブラリを走査し、ターゲットモジュール名と数字のエントリポイントを実行可能なファイル612 へ組込む。動作システム602 が実行のために実行可能なファイル612 をロードしたとき、動作システム602 はこれらの参照を、機能呼で使用するのに有効なアドレスと置換する。動的リンクライブラリ(DLL)は動的リンクによりこれらの参照を満足するモジュールである。DLLは外部参照を満足する1組のエントリポイントを通告する。
動的リンクライブラリ(DLL)604 の種々のライブラリはXBIOSリクエスト604 に通知するXBIOS呼を行うための動作コードを含んでおり、それによってXBIOSルーチン608 を開始する。種々の低レベルの機能のための1以上のXBIOS呼を使用するアプリケーションプログラム610 は、データを処理するためのデータ記憶素子を割当てる。典型的に、メモリ中の既知の位置は、実行される特定のシステム管理機能を示す情報を記憶することによって、信号614 を通知するアプリケーションプログラム610 により割当てられる。しかしながら、ウィンドウズNT(登録商標)等の幾つかの秘密保護動作システムはメモリの特定の既知の位置のアクセスまたは割当てを可能にしない。それ故、ソフトウェアシステム600 では、プロセッサ410 の一般的な目的のレジスタは、信号614 を通知し、リクエストされた特定のシステム管理機能を指定する情報を記憶し、SMM動作620 とXBIOSルーチン608 によりサービスされるときにSMM/XBIOS処理の応答を記憶するために割当てられる。幾つかの実施形態では、ソフトウェアシステム600 は、SMM動作620 とXBIOSルーチン608 を呼出すパターンを記憶するためのAX、BX、CX、DXのような16ビットの一般的な目的のレジスタを割当てる。他の実施形態では、EAX、EBX、ECX、EDXのような32ビットレジスタは付勢パターンを記憶することに使用される。
本発明を種々の実施形態を参照して説明したが、これらの実施形態は例示であり、本発明の技術的範囲を限定するものではないことが理解されよう。説明した実施形態における多数の変形、変更、付加、改良が可能である。例えば、当業者はここで説明した構造および方法を行うために必要なステップを容易に実行し、プロセスパラメータ、材料、寸法が例示のためにのみ与えられたものであり、本発明の技術的範囲内で所望の構造および変形を実現するように変形されることが可能であることを理解するであろう。ここで説明した実施形態の変化および変形が特許請求の範囲内に限定されている本発明の技術的範囲を逸脱することなくここでの説明に基づいて行われてもよい。
例えば、実施形態はウィンドウズNT(登録商標)とウィンドウズ95(登録商標)動作システムの保護および秘密保護特性を与えるシステムとして説明される。本発明は例えばOS/2(登録商標)等の類似の秘密保護手段として使用されるその他の動作システムに関して応用可能である。さらに、説明した実施形態はポーリング信号を通信するための一般目的のレジスタの使用を論述している。他の実施形態では、その他の種々のタイプの一時的な記憶セルが動作システムにより重ね書きされない限り応用可能である。
パーソナルコンピュータなどのコンピュータへソフトウェア画像を供給するためのソフトウェア転送システムの1実施形態を示した概略ブロック図。 ソフトウェア転送システムの保護技術を適用して実行される動作のフローチャート。 ソフトウェア転送パッケージを製造する動作のフローチャート。 ソフトウェア転送パッケージを製造する動作のフローチャート。 基本的なユーティリィティにより行われる動作の動作システム秘密保護性を避けるため、動作システム独立方法を実行しているコンピュータシステムハードウェアのブロック図。 図5で示されているコンピュータシステムにおけるメモリのメモリマップの概略図。 動作システムの秘密保護性を失わずに全XBIOS機能を与えるソフトウェアシステムの種々の機能ブロックのブロック図。

Claims (81)

  1. ソフトウェア画像をコンピュータの記憶装置へ供給するソフトウェア転送パッケージにおいて、
    ソフトウェア画像を記憶するソフトウェア転送媒体を具備し、ソフトウェア画像はただ1つの特有のコンピュータへダウンロードされ実行されるように構成され、ソフトウェア転送媒体とコンピュータは相互にキー入力され、それによってソフトウェア画像はただ1つの特有のコンピュータの記憶装置だけにダウンロード可能であり、他へはダウンロードを可能にされないソフトウェア転送パッケージ。
  2. ダウンロードプログラムを記憶し、ソフトウェア画像の記憶装置へのダウンロードを制御するソフトウェアダウンロード媒体をさらに具備している請求項1記載のソフトウェア転送パッケージ。
  3. ソフトウェアダウンロード媒体を使用するようにユーザへ指導する指導シートと、ソフトウェア画像の記録装置へのダウンロードを制御するためのソフトウェアダウンロード媒体とをさらに具備している請求項2記載のソフトウェア転送パッケージ。
  4. コンピュータは第1の媒体駆動装置と、第2の媒体駆動装置と、記憶装置を含み、
    ソフトウェア転送媒体は第1の媒体駆動装置にロード可能であり、
    ソフトウェアダウンロード媒体は第2の媒体駆動装置にロード可能であり、ソフトウェア転送媒体から記憶装置へのソフトウェア画像のダウンロードを制御する請求項2記載のソフトウェア転送パッケージ。
  5. ソフトウェアダウンロード媒体は、ソフトウェア転送媒体から記憶装置へソフトウェア画像をダウンロードする前に、記憶装置の再フォーマットを制御する請求項4記載のソフトウェア転送パッケージ。
  6. ソフトウェアダウンロード媒体は、記憶装置を再フォーマットする前に警告メッセージの表示と割込みの待機を制御する請求項5記載のソフトウェア転送パッケージ。
  7. ソフトウェアダウンロード媒体は、ソフトウェア転送媒体から記憶装置へソフトウェア画像をダウンロードする前に、記憶装置のクリアを制御する請求項4記載のソフトウェア転送パッケージ。
  8. ソフトウェアダウンロード媒体は、記憶装置をクリアする前に警告メッセージの表示と割込みの待機を制御する請求項7記載のソフトウェア転送パッケージ。
  9. コンピュータは全ての他のコンピュータからそのコンピュータを弁別する特有の識別子でエンコードされ、
    ソフトウェア転送媒体はその特有の識別子でキー入力される第1の識別ファイルを含んでおり、
    ソフトウェアダウンロード媒体はその特有の識別子でキー入力される第2の識別ファイルを含んでいる請求項2記載のソフトウェア転送パッケージ。
  10. コンピュータは全ての他のコンピュータからそのコンピュータを弁別する特有の識別子でエンコードされ、
    ソフトウェア転送媒体はその特有の識別子でキー入力される第1の識別ファイルを含んでおり、
    ソフトウェアきき転送媒体はその特有の識別子でキー入力され、第1の識別ファイルの識別子でキー入力される第2の識別ファイルを含んでいる請求項2記載のソフトウェア転送パッケージ。
  11. コンピュータは全ての他のコンピュータからそのコンピュータを弁別する特有の識別子でエンコードされ、
    ソフトウェア転送媒体はその特有の識別子とランダムに生成された番号によりキー入力される第1の識別ファイルを含んでおり、
    ソフトウェアきき転送媒体はその特有の識別子とランダムに生成された番号とによりキー入力される第2の識別ファイルを含んでいる請求項2記載のソフトウェア転送パッケージ。
  12. コンピュータはコンパクトディスク(CD)ROM読取り装置と、ブート可能なフレキシブルディスケット駆動装置とを含み、記憶装置はハードディスク駆動装置であり、
    ソフトウェア転送媒体は個々にプログラムされたCD ROMであり、
    ソフトウェアダウンロード媒体はフレキシブルなディスケットである請求項2記載のソフトウェア転送パッケージ。
  13. 計算可能で読取り可能なコードを組込まれているコンピュータの使用可能な媒体を含んでいるコンピュータプログラムプロダクトにおいて、
    ソフトウェア画像をコンピュータの記憶装置へ供給するソフトウェア転送パッケージを具備しており、このソフトウェア転送パッケージは、
    ソフトウェア画像を記憶するソフトウェア転送媒体を具備し、ソフトウェア画像はただ1つの特有のコンピュータだけにダウンロードされ実行されるように構成され、ソフトウェア転送媒体とコンピュータは相互にキー入力され、それによってソフトウェア画像はただ1つの特有のコンピュータの記憶装置だけにダウンロード可能であり、他へはダウンロードを可能にされないコンピュータプログラムプロダクト。
  14. ダウンロードプログラムを記憶し、ソフトウェア画像の記憶装置へのダウンロードを制御するソフトウェアダウンロード媒体をさらに具備している請求項13記載のコンピュータプログラムプロダクト。
  15. ソフトウェアダウンロード媒体を使用するようにユーザへ指導する指導シートと、ソフトウェア画像の記録装置へのダウンロードを制御するためのソフトウェアダウンロード媒体とをさらに具備している請求項14記載のコンピュータプログラムプロダクト。
  16. コンピュータは第1の媒体駆動装置と、第2の媒体駆動装置と、記憶装置を含み、
    ソフトウェア転送媒体は第1の媒体駆動装置にロード可能であり、
    ソフトウェアダウンロード媒体は第2の媒体駆動装置にロード可能であり、ソフトウェア転送媒体から記憶装置へのソフトウェア画像のダウンロードを制御する請求項14記載のコンピュータプログラムプロダクト。
  17. ソフトウェアダウンロード媒体は、ソフトウェア転送媒体から記憶装置へソフトウェア画像をダウンロードする前に、記憶装置の再フォーマットを制御する請求項16記載のコンピュータプログラムプロダクト。
  18. ソフトウェアダウンロード媒体は、記憶装置を再フォーマットする前に警告メッセージの表示と割込みの待機を制御する請求項17記載のコンピュータプログラムプロダクト。
  19. ソフトウェアダウンロード媒体は、ソフトウェア転送媒体から記憶装置へソフトウェア画像をダウンロードする前に、記憶装置のクリアを制御する請求項16記載のコンピュータプログラムプロダクト。
  20. ソフトウェアダウンロード媒体は、記憶装置をクリアする前に警告メッセージの表示と割込みの待機を制御する請求項19載のコンピュータプログラムプロダクト。
  21. コンピュータは全ての他のコンピュータからそのコンピュータを弁別する特有の識別子でエンコードされ、
    ソフトウェア転送媒体はこの特有の識別子でキー入力される第1の識別ファイルを含んでおり、
    ソフトウェアきき転送媒体はこの特有の識別子でキー入力される第2の識別ファイルを含んでいる請求項14記載のコンピュータプログラムプロダクト。
  22. コンピュータは全ての他のコンピュータからそのコンピュータを弁別する特有の識別子でエンコードされ、
    ソフトウェア転送媒体はこの特有の識別子でキー入力される第1の識別ファイルを含んでおり、
    ソフトウェアきき転送媒体はこの特有の識別子でキー入力され、第1の識別ファイルの識別子でキー入力される第2の識別ファイルを含んでいる請求項14記載のコンピュータプログラムプロダクト。
  23. コンピュータは全ての他のコンピュータからそのコンピュータを弁別する特有の識別子でエンコードされ、
    ソフトウェア転送媒体はこの特有の識別子とランダムに生成された番号によりキー入力される第1の識別ファイルを含んでおり、
    ソフトウェアきき転送媒体はこの特有の識別子とランダムに生成された番号とによりキー入力される第2の識別ファイルを含んでいる請求項14記載のコンピュータプログラムプロダクト。
  24. コンピュータはコンパクトディスク(CD)ROM読取り装置と、ブート可能なフレキシブルディスケット駆動装置とを含み、記憶装置はハードディスク駆動装置であり、
    ソフトウェア転送媒体は個々にプログラムされたCD ROMであり、
    ソフトウェアダウンロード媒体はフレキシブルなディスケットである請求項14記載のコンピュータプログラムプロダクト。
  25. プロセッサと、
    プロセッサに結合され、プロセッサにより実行可能なソフトウェア画像を記憶する記憶装置と、
    プロセッサに結合された媒体駆動装置と、
    ソフトウェア転送パッケージとを具備しているコンピュータにおいて、
    ソフトウェア転送パッケージは、
    メディア駆動装置へロード可能でありソフトウェア画像を記憶するソフトウェア転送媒体を具備し、ソフトウェア画像はただ1つの識別されたコンピュータだけにダウンロードされ実行されるように構成され、ソフトウェア転送媒体とプロセッサは相互にキー入力され、それによってソフトウェア画像はただ1つの特有のコンピュータの記憶装置たけにダウンロード可能であり、他へはダウンロードを可能にされないコンピュータ。
  26. プロセッサに結合された第2の媒体と、
    ソフトウェア転送パッケージとをさらに具備し、ソフトウェア転送パッケージは、
    第2の媒体駆動装置にロード可能であり、記憶装置へのソフトウェア画像のダウンロードを制御するダウンロードプログラムを記憶するソフトウェアダウンロード媒体をさらに含んでいる請求項25記載のコンピュータ
  27. ダウンロードプログラムは、記憶装置へソフトウェア画像をダウンロードする前に、記憶装置のクリアを制御する請求項26記載のコンピュータ。
  28. ダウンロードプログラムは、記憶装置をクリアする前に警告メッセージの表示と割込みの待機を制御する請求項27載のコンピュータ。
  29. ダウンロードプログラムは、記憶装置へソフトウェア画像をダウンロードする前に、記憶装置の再フォーマットを制御する請求項29記載のコンピュータ。
  30. ダウンロードプログラムは、記憶装置を再フォーマットする前に警告メッセージの表示と割込みの待機を制御する請求項29記載のコンピュータ。
  31. ソフトウェアダウンロード媒体を使用するようにユーザへ指導する指導シートと、ソフトウェア画像の記録装置へのダウンロードを制御するためのソフトウェアダウンロード媒体とをさらに具備している請求項26記載のコンピュータ。
  32. プロセッサは全ての他のコンピュータからそのコンピュータを弁別する特有の識別子でエンコードされ、
    ソフトウェア転送媒体はこの特有の識別子でキー入力される第1の識別ファイルを含んでおり、
    ソフトウェアきき転送媒体はこの特有の識別子でキー入力される第2の識別ファイルを含んでいる請求項26記載のコンピュータ。
  33. プロセッサは全ての他のコンピュータからそのコンピュータを弁別する特有の識別子でエンコードされ、
    ソフトウェア転送媒体はこの特有の識別子でキー入力される第1の識別ファイルを含んでおり、
    ソフトウェアきき転送媒体はこの特有の識別子でキー入力され、第1の識別ファイルの識別子でキー入力される第2の識別ファイルを含んでいる請求項26記載のコンピュータ。
  34. プロセッサは全ての他のコンピュータからそのコンピュータを弁別する特有の識別子でエンコードされ、
    ソフトウェア転送媒体はこの特有の識別子とランダムに生成された番号によりキー入力される第1の識別ファイルを含んでおり、
    ソフトウェアきき転送媒体はこの特有の識別子とランダムに生成された番号によりキー入力される第2の識別ファイルを含んでいる請求項26記載のコンピュータ。
  35. 媒体駆動装置は、コンパクトディスク(CD)ROM読取り装置であり、
    第2の媒体駆動装置は、ブート可能なフレキシブルディスケット駆動装置であり、
    記憶装置はハードディスク駆動装置であり、
    ソフトウェア転送媒体は個々にプログラムされたCD ROMであり、
    ソフトウェアダウンロード媒体はフレキシブルなディスケットである請求項26記載のコンピュータ。
  36. コンピュータのハードウェア−ソフトウェア構成要素の仕様を含んだ顧客の注文を受ける注文エントリシステムと、
    この注文エントリシステムに結合され、顧客が注文したハードウェア構成要素の特性に応じて顧客が注文したソフトウェア構成要素を処理し、コンピュータの記憶装置へダウンロードするためのソフトウェア画像を生成するソフトウェアプロセッサと、
    ソフトウェアプロセッサに結合され、コンピュータの特有の識別子をアクセスするタグ識別子と、
    ソフトウェアプロセッサに結合され、ソフトウェア画像と、コンピュータの特有の識別子を示すソフトウェア転送媒体タグ識別子ファイルとを形成するソフトウェア転送媒体製造装置と、
    ソフトウェアプロセッサに結合され、ソフトウェアダウンロードプログラムと、コンピュータの特有の識別子を示すソフトウェアダウンロード媒体タグ識別子ファイルとを生成するソフトウェアダウンロード媒体製造装置とを具備しているソフトウェアプロダクト製造システム。
  37. ソフトウェア転送媒体タグ識別子ファイルの識別子を示すソフトウェアダウンロード媒体タグ識別子ファイルを生成するソフトウェアダウンロード媒体製造装置をさらに具備している請求項36記載のソフトウェアプロダクト製造システム。
  38. ソフトウェアプロセッサに結合され、ランダム識別番号を生成するランダム番号発生装置と、
    ランダム識別番号を示すソフトウェア転送媒体タグ識別子を形成するソフトウェア転送媒体製造装置と、
    ランダム識別番号を示すソフトウェアダウンロード媒体タグ識別子ファイルを生成するソフトウェアダウンロード媒体製造装置とをさらに具備している請求項36記載のソフトウェアプロダクト製造システム。
  39. ソフトウェアプロセッサに結合され、ソフトウェア画像をコンピュータにインストール可能な記憶媒体にダウンロードする記憶ダウンロード装置をさらに具備し、
    ソフトウェア転送媒体製造装置は記憶媒体に接続可能であり、ソフトウェア画像をソフトウェア転送媒体に転送する請求項36記載のソフトウェアプロダクト製造システム。
  40. ソフトウェア転送媒体はコンピュータを工場における状態に回復するソフトウェア画像のコピーを記憶している請求項36記載のソフトウェアプロダクト製造システム。
  41. ソフトウェア転送媒体はカスタムプログラムされたコンパクトディスク(CD)ROM媒体であり、
    ソフトウェアダウンロード媒体はブート可能なフレキシブルディスケットであり、記憶装置はハードディスク駆動装置である請求項36記載のソフトウェアプロダクト製造システム。
  42. ソフトウェア転送媒体は、ソフトウェア画像とコンピュータの特有の識別子を示すソフトウェア転送媒体タグ識別子ファイルとを記憶し、
    ソフトウェアダウンロード媒体は、
    コンピュータの特有の識別子と、ソフトウェア転送媒体タグ識別子ファイルの識別子を示すソフトウェアダウンロード媒体タグ識別子ファイルと、
    ソフトウェアダウンロード媒体から記憶媒体へソフトウェア画像の転送を実行する実行可能なプログラムを記憶している請求項36記載のソフトウェアプロダクト製造システム。
  43. 実行可能なプログラムはソフトウェア画像をダウンロード媒体から記憶装置へ転送する前に記憶装置をクリアする請求項42記載のソフトウェアプロダクト製造システム。
  44. 実行可能なプログラムは記憶装置をクリアする前に、警告メッセージを表示し、割込みを待機する請求項43記載のソフトウェアプロダクト製造システム。
  45. 実行可能なプログラムはソフトウェア画像をダウンロード媒体から記憶装置へ転送する前に記憶装置を再フォーマットする請求項42記載のソフトウェアプロダクト製造システム。
  46. 実行可能なプログラムは記憶装置を再フォーマットする前に、警告メッセージを表示し、割込みを待機する請求項45記載のソフトウェアプロダクト製造システム。
  47. 実行可能なプログラムはユーザの割込みなしに動作する請求項42記載のソフトウェアプロダクト製造システム。
  48. コンピュータのハードウェア−ソフトウェア構成要素の仕様を含んだ顧客の注文を受信し、
    顧客が注文したハードウェア構成要素の特性に応じて顧客が注文したソフトウェア構成要素を処理し、
    処理されたソフトウェア構成要素からコンピュータの記憶装置へダウンロードするためのソフトウェア画像を生成し、
    ソフトウェア画像がロード可能であるときコンピュータを特有に識別するタグ識別子を決定し、このソフトウェア画像は他のコンピュータにはロード不可能であり、
    ソフトウェア画像と、コンピュータの特有の識別子を示すソフトウェア転送媒体タグ識別子ファイルとの記憶を含んでいるソフトウェア転送媒体製造装置を製造し、
    ソフトウェアダウンロードプログラムと、コンピュータの特有の識別子を示すソフトウェアダウンロード媒体タグ識別子ファイルとを含んでいるソフトウェアダウンロード媒体を製造するステップを有するソフトウェアプロダクトの製造方法。
  49. ソフトウェア転送媒体タグ識別子ファイルの識別子を示すソフトウェアダウンロード媒体タグ識別子ファイルを生成するステップをさらに有する請求項48記載の方法。
  50. ランダム識別番号を生成し、
    ランダム識別番号を示すソフトウェア転送媒体タグ識別子ファイルを形成し、
    ランダム識別番号を示すソフトウェアダウンロード媒体タグ識別子ファイルを生成するステップをさらに有する請求項48記載の方法。
  51. ソフトウェア画像をコンピュータにインストール可能な記憶媒体にダウンロードし、
    ソフトウェア画像をソフトウェア転送媒体に転送するステップをさらに有する請求項48記載の方法。
  52. ソフトウェア画像のコピーをソフトウェア転送媒体に記憶し、コンピュータを工場における状態に回復するステップをさらに有する請求項48記載の方法。
  53. ソフトウェア転送媒体はカスタムプログラムされたコンパクトディスク(CD)ROM媒体であり、
    ソフトウェアダウンロード媒体はブート可能なフレキシブルディスケットであり、記憶装置はハードディスク駆動装置である請求項48記載の方法。
  54. ソフトウェア転送媒体にソフトウェア画像と、コンピュータの特有の識別子を示すソフトウェア転送媒体タグ識別子ファイルを記憶し、
    ソフトウェアダウンロード媒体には、コンピュータに特有の識別子と、ソフトウェア転送媒体タグ識別子ファイルの識別子を示すソフトウェアダウンロード媒体タグ識別子ファイルおよび実行可能なプログラムを記憶し、
    実行可能なプログラムによって、ソフトウェアダウンロード媒体から記憶媒体へのソフトウェア画像の転送を実行する動作をさらに有する請求項48記載の方法。
  55. さらに、実行可能なプログラムによって、ソフトウェア画像をダウンロード媒体から記憶装置へ転送する前に記憶装置をクリアする請求項54記載の方法。
  56. サラニ、実行可能なプログラムによって、記憶装置をクリアする前に、警告メッセージを表示し、割込みを待機する請求項554記載の方法。
  57. さらに、実行可能なプログラムによって、ソフトウェア画像をダウンロード媒体から記憶装置へ転送する前に記憶装置を再フォーマットする請求項54記載の方法。
  58. さらに、実行可能なプログラムによって記憶装置を再フォーマットする前に、警告メッセージを表示し、割込みを待機する請求項57記載の方法。
  59. 実行可能なファイルルーチンはユーザの割込みなしに動作する請求項54記載の方法。
  60. 請求項48にしたがった方法を実行して実施された計算可能で読取り可能なコードを有するコンピュータの使用可能な媒体を含んでいるコンピュータプログラムプロダクト。
  61. 特有の識別子を有する権限を与えられたコンピュータの記憶装置のみにソフトウェアがダウンロードされることを許容するソフトウェア秘密保護システムにおいて、
    コンピュータの読取り可能な媒体を具備し、このコンピュータの読取り可能な媒体は、
    権限を与えられたコンピュータのハードウェア−ソフトウェア構造のために構成されたソフトウェア画像と、
    権限を与えられたコンピュータに特有の識別子にキー入力される識別タグを有するタグ識別ファイルと、
    特有の識別子にアクセスし、この特有の識別子と識別キーとを比較し、特有の識別子が識別キーに対応したときのみ、コンピュータの読取り可能な媒体から記憶装置へソフトウェア画像を転送するルーチンを含んでいる実行可能なファイルを含んでいるソフトウェア秘密保護システム。
  62. 実行可能なファイルルーチンはXBIOS呼を使用して特有の識別子をアクセスする請求項61記載のソフトウェア秘密保護システム。
  63. 実行可能なファイルルーチンはデスクトップ管理インターフェイス(DMI)呼を使用して特有の識別子をアクセスする請求項61記載のソフトウェア秘密保護システム。
  64. 実行可能なファイルルーチンはCMOS ROM読取りの技術を使用して特有の識別子をアクセスする請求項61記載のソフトウェア秘密保護システム。
  65. コンピュータの読取り可能な媒体は、
    ソフトウェア画像と、権限を与えられたコンピュータに特有の識別子に対してキー入力される識別タグを有する第1のタグ識別ファイルとを含んでいる第1の媒体と、
    権限を与えられたコンピュータに特有の識別子に対してキー入力される識別タグと、第1のタグ識別ファイルを識別する識別タグとを有する第2のタグ識別ファイル、および第2のタグ識別ファイルの識別情報を経て第1のタグ識別ファイルをアクセスし、特有の識別子をアクセスし、この特有の識別子を第1および第2のタグ識別ファイルの識別キーとを相互に比較し、この特有の識別子が識別キーに対応する場合にのみソフトウェア画像をコンピュータの読取り可能な媒体から記憶装置へ転送する実行可能なファイルを含んでいる第2の媒体とを含んでいる請求項61記載のソフトウェア秘密保護システム。
  66. 実行可能なファイルルーチンが、
    ソフトウェア画像をコンピュータの読取り可能な媒体から記憶装置へ転送する前に記憶装置をクリアするサブルーチンを含んでいる請求項65記載のソフトウェア秘密保護システム。
  67. 実行可能なファイルルーチンが、
    警告メッセージを表示し、
    記憶装置をクリアする前に割込みを待機するサブルーチンを含んでいる請求項66記載のソフトウェア秘密保護システム。
  68. 実行可能なファイルルーチンが、
    ソフトウェア画像をコンピュータの読取り可能な媒体から記憶装置へ転送する前に記憶装置を再フォーマットするサブルーチンを含んでいる請求項65記載のソフトウェア秘密保護システム。
  69. 実行可能なファイルルーチンが、
    警告メッセージを表示し、
    記憶装置を再フォーマットする前に割込みを待機するサブルーチンを含んでいる請求項68記載のソフトウェア秘密保護システム。
  70. 第1の媒体はカスタムプログラムされたコンパクトディスク(CD)ROM媒体であり、
    第2の媒体はブート可能なフレキシブルディスケットであり、
    記憶装置はハードディスク駆動装置である請求項65記載のソフトウェア秘密保護システム。
  71. コンピュータの読取り可能な媒体は、
    ソフトウェア画像と、権限を与えられたコンピュータに特有の識別子に対してキー入力される第1の識別タグを有する第1のタグ識別ファイルと、ランダムに生成された番号にキー入力される第2の識別タグとを含んでいる第1の媒体と、
    権限を与えられたコンピュータに特有の識別子にキー入力される第3の識別タグと、ランダムに生成された番号にキー入力される第4の識別タグとを有する第2のタグ識別ファイル、および第2の識別タグを第4の識別タグを比較し、特有の識別子をアクセスし、特有の識別子を第1の識別タグおよび第3の識別タグと相互に比較し、第2の識別タグが第4の識別タグに対応し、特有の識別子が第1の識別タグと第2の識別タグに対応する場合にのみソフトウェア画像をコンピュータの読取り可能な媒体から記憶装置へ転送するルーチンを含む実行可能なファイルを含んだ第2の媒体とを有する請求項61記載のソフトウェア秘密保護システム。
  72. 第1の媒体はカスタムプログラムされたコンパクトディスク(CD)ROM媒体であり、
    第2の媒体はブート可能なフレキシブルディスケットであり、
    記憶装置はハードディスク駆動装置である請求項71記載のソフトウェア秘密保護システム。
  73. 実行可能なファイルルーチンは、XBIOS呼とデスクトップ管理インターフェイス(DMI)呼とCMOS ROMを読取る技術の中から選択された命令を使用して特有の識別子をアクセスする請求項61記載のソフトウェア秘密保護システム。
  74. 実行可能なファイルルーチンは、XBIOS呼とデスクトップ管理インターフェイス(DMI)呼とCMOS ROMを読取る技術の中から選択された命令を使用して特有の識別子をアクセスし、
    実行可能なファイルルーチンは、権限を与えられたコンピュータのシステムIDコードをアクセスし、命令を選択するためシステムIDコードを使用する請求項61記載のソフトウェア秘密保護システム。
  75. 特有の識別子はサービスタグである請求項61記載のソフトウェア秘密保護システム。
  76. 実行可能なファイルルーチンはユーザの割込みなく動作する請求項61記載のソフトウェア秘密保護システム。
  77. 計算可能で読取り可能なコードを有するコンピュータの使用可能な媒体を含んだコンピュータプログラムプロダクトにおいて、
    特有の識別子を有する権限を与えられたコンピュータの記憶装置のみにソフトウェアがダウンロードされることを許容するソフトウェア秘密保護システムを具備し、このソフトウェア秘密保護システムは、
    権限を与えられたハードウェア−ソフトウェア構造のために構成されたソフトウェア画像と、
    権限を与えられたコンピュータに特有の識別子にキー入力された識別タグを有するタグ識別ファイルと、
    特有の識別子をアクセスし、この特有の識別子と識別キーとを比較し、この特有の識別子が識別キーに対応した場合にのみ、コンピュータの読取り可能な媒体から記憶装置へソフトウェア画像を転送するルーチンを含んでいる実行可能なファイルとを含んでいるコンピュータプログラムプロダクト。
  78. 前記コンピュータの使用可能な媒体は、
    ソフトウェア画像と、権限を与えられたコンピュータに特有の識別子にキー入力される識別タグを有する第1のタグ識別ファイルとを含んでいる第1の媒体と、
    権限を与えられたコンピュータに特有の識別子に対してキー入力される識別タグと、第1のタグ識別ファイルを識別する識別タグとを有する第2のタグ識別ファイル、および第2のタグ識別ファイルの識別情報を介して第1のタグ識別ファイルをアクセスし、特有の識別子をアクセスし、この特有の識別子を第1および第2のタグ識別ファイルの識別キーと相互に比較し、特有の識別子が識別キーに対応する場合にのみソフトウェア画像をコンピュータの読取り可能な媒体から記憶装置へ転送する実行可能なファイルを含んでいる第2の媒体とを含んでいる請求項77記載のコンピュータプログラムプロダクト。
  79. 第1の媒体はカスタムプログラムされたコンパクトディスク(CD)ROM媒体であり、
    第2の媒体はブート可能なフレキシブルディスケットであり、
    記憶装置はハードディスク駆動装置である請求項78記載のコンピュータプログラムプロダクト。
  80. 前記コンピュータの使用可能な媒体は、
    ソフトウェア画像と、権限を与えられたコンピュータに特有の識別子にキー入力される識別タグを有する第1のタグ識別ファイルと、ランダムに生成された番号にキー入力される第2の識別タグとを含んでいる第1の媒体と、
    権限を与えられたコンピュータに特有の識別子にキー入力される第3の識別タグと、ランダムに生成された番号にキー入力される第4の識別タグとを有する第2のタグ識別ファイル、および第2の識別タグを第4の識別タグを比較し、特有の識別子をアクセスし、この特有の識別子を第1の識別タグと第3の識別タグと相互に比較し、第2の識別タグが第4の識別タグに対応し、特有の識別子が第1の識別タグと第2の識別タグに対応するときのみソフトウェア画像をコンピュータの読取り可能な媒体から記憶装置へ転送するルーチンを含む実行可能なファイルとを含んだ第2の媒体とを有する請求項78記載のコンピュータプログラムプロダクト。
  81. 第1の媒体はカスタムプログラムされたコンパクトディスク(CD)ROM媒体であり、
    第2の媒体はブート可能なフレキシブルディスケットであり、
    記憶装置はハードディスク駆動装置である請求項80記載のコンピュータプログラムプロダクト。
JP2008256707A 1998-04-24 2008-10-01 カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム Expired - Lifetime JP4404940B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/066,128 US6298443B1 (en) 1998-04-24 1998-04-24 Method and system for supplying a custom software image to a computer system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP30062298A Division JP4510945B2 (ja) 1998-04-24 1998-10-22 カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム

Publications (2)

Publication Number Publication Date
JP2009048649A true JP2009048649A (ja) 2009-03-05
JP4404940B2 JP4404940B2 (ja) 2010-01-27

Family

ID=22067413

Family Applications (2)

Application Number Title Priority Date Filing Date
JP30062298A Expired - Lifetime JP4510945B2 (ja) 1998-04-24 1998-10-22 カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム
JP2008256707A Expired - Lifetime JP4404940B2 (ja) 1998-04-24 2008-10-01 カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP30062298A Expired - Lifetime JP4510945B2 (ja) 1998-04-24 1998-10-22 カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム

Country Status (13)

Country Link
US (1) US6298443B1 (ja)
JP (2) JP4510945B2 (ja)
KR (1) KR100714532B1 (ja)
CN (1) CN1115637C (ja)
AU (1) AU758671B2 (ja)
BR (1) BR9804293A (ja)
DE (1) DE19918640A1 (ja)
FR (2) FR2784762B1 (ja)
GB (1) GB2339488B (ja)
IT (1) IT1309082B1 (ja)
MY (1) MY116777A (ja)
SG (1) SG75138A1 (ja)
TW (1) TW396322B (ja)

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1467529B1 (en) * 1997-08-15 2007-04-11 Sony Corporation Transferring method for a data transmission apparatus
US6795814B1 (en) * 1998-06-04 2004-09-21 Gateway, Inc. System and method for CMOS integration
US6564369B1 (en) * 1998-08-20 2003-05-13 Pearson Technical Software, Inc. Conflict checking using configuration images
US6519762B1 (en) * 1998-12-15 2003-02-11 Dell Usa, L.P. Method and apparatus for restoration of a computer system hard drive
US6760708B1 (en) 1999-08-19 2004-07-06 Dell Products L.P. Method and system for migrating stored data to a build-to-order computing system
US6606716B1 (en) 1999-10-06 2003-08-12 Dell Usa, L.P. Method and system for automated technical support for computers
US6560726B1 (en) 1999-08-19 2003-05-06 Dell Usa, L.P. Method and system for automated technical support for computers
US7188255B1 (en) * 1999-09-23 2007-03-06 Hewlett-Packard Development Company, L.P. Software delivery system
US6556431B1 (en) 1999-10-06 2003-04-29 Dell Usa, L.P. System and method for converting alternating current into direct current
US6598223B1 (en) * 1999-10-06 2003-07-22 Dell Usa, L.P. Method and system for installing and testing build-to-order components in a defined configuration computer system
US6564220B1 (en) 1999-10-06 2003-05-13 Dell Usa, L.P. System and method for monitoring support activity
US6563698B1 (en) 1999-10-06 2003-05-13 Dell Usa, L.P. System and method for providing a computer system with a detachable component
US6882982B2 (en) * 2000-02-04 2005-04-19 Medtronic, Inc. Responsive manufacturing and inventory control
US6823508B1 (en) * 2000-04-27 2004-11-23 Microsoft Corporation Automatic computer program customization based on a user information store
US7065637B1 (en) 2000-08-24 2006-06-20 Veritas Operating Corporating System for configuration of dynamic computing environments using a visual interface
US7082521B1 (en) 2000-08-24 2006-07-25 Veritas Operating Corporation User interface for dynamic computing environment using allocateable resources
US7278142B2 (en) 2000-08-24 2007-10-02 Veritas Operating Corporation Dynamic computing environment using remotely allocable resources
US7043724B2 (en) 2000-09-14 2006-05-09 Veritas Operating Corporation System and services for handling computing environments as documents
US6907604B1 (en) * 2000-09-22 2005-06-14 Dell Products L.P. Instant integration model
US7027412B2 (en) * 2000-11-10 2006-04-11 Veritas Operating Corporation System for dynamic provisioning of secure, scalable, and extensible networked computer environments
US8631103B1 (en) 2000-11-10 2014-01-14 Symantec Operating Corporation Web-based administration of remote computing environments via signals sent via the internet
US20020099683A1 (en) * 2001-01-24 2002-07-25 Sloan Jeffrey N. Verification of a benefit purchase incident to a computer system purchase
US20020127263A1 (en) * 2001-02-27 2002-09-12 Wenda Carlyle Peroxisome proliferator-acitvated receptor gamma ligand eluting medical device
US7039033B2 (en) * 2001-05-07 2006-05-02 Ixi Mobile (Israel) Ltd. System, device and computer readable medium for providing a managed wireless network using short-range radio signals
US7036006B2 (en) 2001-05-17 2006-04-25 Veritas Operating Corporation System to provide computing as a product using dynamic computing environments
US7016334B2 (en) * 2001-08-17 2006-03-21 Ixi Mobile ( Israel) Ltd. Device, system, method and computer readable medium for fast recovery of IP address change
US7295532B2 (en) * 2001-08-17 2007-11-13 Ixi Mobile (R & D), Ltd. System, device and computer readable medium for providing networking services on a mobile device
US20040081129A1 (en) * 2001-08-17 2004-04-29 Amit Haller Device, system, method and computer readable medium for selectively attaching to a cellular data service
US20050030917A1 (en) * 2001-08-17 2005-02-10 Amit Haller Device, system, method and computer readable medium obtaining a network attribute, such as a DNS address, for a short distance wireless network
US20040125762A1 (en) * 2001-08-17 2004-07-01 Amit Haller Device, system, method and computer readable medium for attaching to a device identifited by an access point name in a wide area network providing particular services
US6957045B2 (en) * 2001-10-26 2005-10-18 Ixi Mobile (Israel) Ltd. Device, system, computer readable medium and method for providing status information of devices in a short distance wireless network
US20030097552A1 (en) * 2001-11-19 2003-05-22 Lewis Robert E. Resilient boot prom loader
US6845097B2 (en) 2001-11-21 2005-01-18 Ixi Mobile (Israel) Ltd. Device, system, method and computer readable medium for pairing of devices in a short distance wireless network
US7016648B2 (en) * 2001-12-18 2006-03-21 Ixi Mobile (Israel) Ltd. Method, system and computer readable medium for downloading a software component to a device in a short distance wireless network
US7013112B2 (en) * 2001-12-18 2006-03-14 Ixi Mobile (Israel) Ltd. Method, system and computer readable medium for making a business decision in response to information from a short distance wireless network
US20030158926A1 (en) * 2002-02-20 2003-08-21 Gateway, Inc. Network master hard disk drive duplicator
US7631196B2 (en) 2002-02-25 2009-12-08 Intel Corporation Method and apparatus for loading a trustable operating system
US7610583B2 (en) * 2002-04-23 2009-10-27 Gateway, Inc. Personalized software installation method for computer manufacturers
US7203865B2 (en) * 2002-04-23 2007-04-10 Gateway Inc. Application level and BIOS level disaster recovery
US6938250B2 (en) * 2002-06-12 2005-08-30 Microsoft Corporation Image-based software installation
US6947954B2 (en) * 2002-06-17 2005-09-20 Microsoft Corporation Image server store system and method using combined image views
US7464403B2 (en) * 2002-07-23 2008-12-09 Hardman Jr Thomas James Secure mobile office wireless local-area network application integration package running from CD-ROM
US6909878B2 (en) * 2002-08-20 2005-06-21 Ixi Mobile (Israel) Ltd. Method, system and computer readable medium for providing an output signal having a theme to a device in a short distance wireless network
US6986033B2 (en) * 2002-09-10 2006-01-10 Veritas Operating Corporation System for automated boot from disk image
US7058797B2 (en) * 2002-09-10 2006-06-06 Veritas Operating Corporation Use of off-motherboard resources in a computer system
US7069428B2 (en) * 2002-09-10 2006-06-27 Veritas Operating Corporation System for managing boot-up of target computers
US7356571B2 (en) * 2002-10-07 2008-04-08 Ixi Mobile (R&D), Ltd. System, method and processor readable medium for downloading information within a predetermined period of time to a device in a network responsive to price selection
US6925345B2 (en) 2002-10-16 2005-08-02 Dell Products L.P. Method and system for manufacture of information handling systems from an image cache
US7095908B2 (en) * 2002-11-12 2006-08-22 Dell Products L.P. Method and system for information handling system custom image manufacture
US7167680B2 (en) * 2003-02-05 2007-01-23 Ixi Mobile (Israel) Ltd. Method, system and computer readable medium for adjusting output signals for a plurality of devices in a short distance wireless network responsive to a selected environment
US20040259585A1 (en) * 2003-06-04 2004-12-23 Avi Yitzchak Wireless device having dual bus archeticure for interfacing with cellular signals and short-range radio signals
US7313690B2 (en) * 2003-06-27 2007-12-25 Microsoft Corporation Three way validation and authentication of boot files transmitted from server to client
US7360211B2 (en) * 2003-06-30 2008-04-15 Dell Products L.P. System for automated generation of config to order software stacks
US7366901B2 (en) * 2003-08-01 2008-04-29 Ixi Mobile (R&D), Ltd. Device, system, method and computer readable medium for identifying and authenticating a cellular device using a short-range radio address
US20050038879A1 (en) * 2003-08-14 2005-02-17 International Business Machines Corporation System and method for discovery of remote device driver functionality and interface
US7565382B1 (en) * 2003-08-14 2009-07-21 Symantec Corporation Safely rolling back a computer image
US7225440B2 (en) * 2003-08-14 2007-05-29 International Business Machines Corporation System and method for manufacturing and updating insertable portable operating system module
US7225448B2 (en) * 2003-08-14 2007-05-29 Lenovo (Singapore) Pte. Ltd. System and method for hibernating application state data on removable module
US7308584B2 (en) * 2003-08-14 2007-12-11 International Business Machines Corporation System and method for securing a portable processing module
US20050055688A1 (en) * 2003-09-08 2005-03-10 Barajas Gaston M. Integrated rapid install system for generic software images
US7565650B2 (en) * 2003-10-23 2009-07-21 International Business Machines Corporation Method, apparatus and computer program product for deploying software via post-load images
US20050091259A1 (en) * 2003-10-24 2005-04-28 Microsoft Corporation Redmond Wa. Framework to build, deploy, service, and manage customizable and configurable re-usable applications
US20050132357A1 (en) * 2003-12-16 2005-06-16 Microsoft Corporation Ensuring that a software update may be installed or run only on a specific device or class of devices
US20050138563A1 (en) * 2003-12-18 2005-06-23 International Business Machines Corporation Method and system for providing computer system software images
WO2005079369A2 (en) * 2004-02-13 2005-09-01 Eztakes Content distribution using cd/dvd burners, high speed interconnects, and a burn and return policy
US7213177B2 (en) * 2004-03-14 2007-05-01 Benq Corporation Method for detecting and eliminating errors in application data of an electronic device
US20050240815A1 (en) * 2004-04-13 2005-10-27 Sony Corporation Modular imaging of computer software for system install and restore
US7822937B2 (en) * 2004-05-03 2010-10-26 Gateway, Inc. Method and apparatus for modifying reserve area of disk drive or memory
US8260893B1 (en) 2004-07-06 2012-09-04 Symantec Operating Corporation Method and system for automated management of information technology
TW200604849A (en) * 2004-07-30 2006-02-01 Hon Hai Prec Ind Co Ltd Apparatus and method for automatically building RCD
US20060075261A1 (en) * 2004-10-05 2006-04-06 Dandekar Shree A Method for enabling services on a fixed image platform
CN1331051C (zh) * 2004-12-30 2007-08-08 英业达股份有限公司 计算机平台系统映像自动化安装方法及系统
US20060200589A1 (en) * 2005-02-18 2006-09-07 Collins Mark A Automated driver reset for an information handling system
US7509250B2 (en) * 2005-04-20 2009-03-24 Honeywell International Inc. Hardware key control of debug interface
US7512833B1 (en) 2005-05-09 2009-03-31 Adam C. Murphy Universal imaging utility program
US8554686B2 (en) * 2005-06-30 2013-10-08 Advanced Micro Devices, Inc. Anti-hack protection to restrict installation of operating systems and other software
US20070143445A1 (en) * 2005-12-20 2007-06-21 Dandekar Shree A Method for offering and refreshing digital content on fixed image platforms
US20070239861A1 (en) * 2006-04-05 2007-10-11 Dell Products L.P. System and method for automated operating system installation
US7685398B2 (en) * 2006-05-18 2010-03-23 Dell Products L.P. Intelligent system for determination of optimal partition size in a build to order environment
US20080101273A1 (en) * 2006-10-27 2008-05-01 Hewlett-Packard Development Company Lp Wireless device association
US8898659B2 (en) * 2006-11-21 2014-11-25 Dell Products L.P. Method and apparatus to customize and configure multiple operating systems on a server
TW200949692A (en) * 2008-05-20 2009-12-01 Inventec Corp Method for making test fixture
US7912993B2 (en) * 2008-06-29 2011-03-22 Dell Products L.P. Methods and media for managing interruption of the out of box experience
US8510422B2 (en) * 2009-09-30 2013-08-13 Dell Products L.P. Systems and methods for extension of server management functions
US8832369B2 (en) 2010-10-27 2014-09-09 Dell Products, Lp Systems and methods for remote raid configuration in an embedded environment
US9146812B2 (en) 2012-02-03 2015-09-29 Dell Products Lp Systems and methods for out-of-band backup and restore of hardware profile information
US8838848B2 (en) 2012-09-14 2014-09-16 Dell Products Lp Systems and methods for intelligent system profile unique data management
CN105573797B (zh) * 2015-12-18 2019-10-18 广州市中海达测绘仪器有限公司 嵌入式系统的可逆离线升级方法及装置

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4433207A (en) 1981-09-10 1984-02-21 Best Robert M Cryptographic decoder for computer programs
US4785361A (en) 1982-11-08 1988-11-15 Vault Corporation Method and apparatus for frustrating the unauthorized copying of recorded data
FR2541014B1 (fr) 1983-02-16 1988-10-14 Cii Honeywell Bull Procede de protection d'un logiciel enregistre par un fournisseur sur un support magnetique portatif
AU3993785A (en) * 1984-02-28 1985-09-24 Rising Edge Data Ltd. Computer software protection
GB2154769B (en) 1984-02-28 1987-11-18 Gandlake Software Ltd Computer software protection
US4688169A (en) 1985-05-30 1987-08-18 Joshi Bhagirath S Computer software security system
US4796220A (en) * 1986-12-15 1989-01-03 Pride Software Development Corp. Method of controlling the copying of software
US4866769A (en) 1987-08-05 1989-09-12 Ibm Corporation Hardware assist for protecting PC software
US5099516A (en) 1989-06-12 1992-03-24 Dell Corporate Services Corporation Digital computer code word identification system
US5388267A (en) 1991-05-29 1995-02-07 Dell Usa, L.P. Method and apparatus for updating and restoring system BIOS functions while maintaining BIOS integrity
JP2942837B2 (ja) 1992-01-31 1999-08-30 株式会社セガ・エンタープライゼス セキュリティチェック方法及びゲーム装置並びにそれらに用いられる情報記憶媒体
US5423028A (en) 1993-03-17 1995-06-06 Dell Usa, L.P. Diagnostic procedure for identifying presence of computer memory
US5337357A (en) * 1993-06-17 1994-08-09 Software Security, Inc. Method of software distribution protection
US5416840A (en) 1993-07-06 1995-05-16 Phoenix Technologies, Ltd. Software catalog encoding method and system
US5418837A (en) * 1993-07-30 1995-05-23 Ericsson-Ge Mobile Communications Inc. Method and apparatus for upgrading cellular mobile telephones
US5450489A (en) * 1993-10-29 1995-09-12 Time Warner Entertainment Co., L.P. System and method for authenticating software carriers
US5398285A (en) 1993-12-30 1995-03-14 Motorola, Inc. Method for generating a password using public key cryptography
US5757907A (en) * 1994-04-25 1998-05-26 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: method and apparatus for generating a machine-dependent identification
US5689560A (en) * 1994-04-25 1997-11-18 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: method and apparatus for allowing a try-and-buy user interaction
US5581740A (en) 1994-10-04 1996-12-03 Dell Usa, L.P. System for reading CD ROM data from hard disks
US5599231A (en) * 1994-10-31 1997-02-04 Nintendo Co., Ltd. Security systems and methods for a videographics and authentication game/program fabricating device
JPH08147221A (ja) * 1994-11-21 1996-06-07 Nippon Joho Kagaku Kk 外部記憶媒体読出制御方式
US5894571A (en) * 1995-08-14 1999-04-13 Dell U.S.A., L.P. Process for configuring software in a build-to-order computer system
US5745568A (en) 1995-09-15 1998-04-28 Dell Usa, L.P. Method of securing CD-ROM data for retrieval by one machine
GB2309104B (en) 1996-01-11 2000-06-07 Ibm Preloading software onto a computer system
US5694582A (en) 1996-01-26 1997-12-02 Dell Usa, Lp Operation system independent polled interface for extension BIOS (XBIOS) operations
US5825877A (en) * 1996-06-11 1998-10-20 International Business Machines Corporation Support for portable trusted software
KR100291267B1 (ko) * 1996-12-23 2001-09-17 윤종용 부트가능한데이터시디롬디스크제조시스템,그제조방법및그에의해제조딘시디롬디스크

Also Published As

Publication number Publication date
ITTO990234A1 (it) 2000-09-25
MY116777A (en) 2004-03-31
KR19990081785A (ko) 1999-11-15
JPH11327894A (ja) 1999-11-30
IT1309082B1 (it) 2002-01-16
GB2339488A (en) 2000-01-26
FR2784762A1 (fr) 2000-04-21
FR2845172B1 (fr) 2006-09-01
JP4404940B2 (ja) 2010-01-27
DE19918640A1 (de) 1999-11-18
AU8930998A (en) 1999-11-04
IE980800A1 (en) 1999-11-03
US6298443B1 (en) 2001-10-02
FR2784762B1 (fr) 2006-09-15
CN1233802A (zh) 1999-11-03
TW396322B (en) 2000-07-01
GB9907719D0 (en) 1999-05-26
CN1115637C (zh) 2003-07-23
JP4510945B2 (ja) 2010-07-28
AU758671B2 (en) 2003-03-27
SG75138A1 (en) 2000-09-19
KR100714532B1 (ko) 2008-01-25
GB2339488B (en) 2003-02-12
FR2845172A1 (fr) 2004-04-02
BR9804293A (pt) 2000-07-11

Similar Documents

Publication Publication Date Title
JP4404940B2 (ja) カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム
US6598223B1 (en) Method and system for installing and testing build-to-order components in a defined configuration computer system
US10613773B2 (en) Backing up firmware during initialization of device
US6519762B1 (en) Method and apparatus for restoration of a computer system hard drive
US7103641B2 (en) Method and apparatus for distributing computer platform firmware across a network
JP4199923B2 (ja) モバイル・デバイスのアプリケーション・インストール方法
US6944867B2 (en) Method for providing a single preloaded software image with an ability to support multiple hardware configurations and multiple types of computer systems
CN103559052B (zh) 固件更新的设备与方法
US5974567A (en) Ghost partition
US11579893B2 (en) Systems and methods for separate storage and use of system BIOS components
US20030233534A1 (en) Enhanced computer start-up methods
US7657732B2 (en) Apparatus and method for securely and conveniently rebooting a computer system
US7475203B1 (en) Methods and systems for enabling non-destructive erasure of data
US7873960B2 (en) Generic packaging tool for packaging application and component therefor to be installed on computing device
US20070113291A1 (en) Method for administrating the function access
CN102521081A (zh) 修复遭破坏的软件
CN1696910B (zh) 用于对软件打补丁的方法和系统
CN107567629A (zh) 在可信执行环境容器中的动态固件模块加载器
CN100498710C (zh) 自储存装置上读取选择只读存储器程序代码的方法
JP3001470B2 (ja) パーソナルコンピュータのブート不良検出システム
IE83290B1 (en) Method and system for supplying a custom software image to a computer system
KR20010002573A (ko) 컴퓨터 시스템으로의 소프트웨어 설치 및/또는 테스팅 방법
JP2001014146A (ja) コンピュータシステムのソフトウェアインストールおよび、または試験方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090609

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090909

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

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

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

Free format text: PAYMENT UNTIL: 20121113

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131113

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term