JP4861546B2 - コンピュータにソフトウェアを自動的にインストールして組み込む方法および装置 - Google Patents

コンピュータにソフトウェアを自動的にインストールして組み込む方法および装置 Download PDF

Info

Publication number
JP4861546B2
JP4861546B2 JP2000179443A JP2000179443A JP4861546B2 JP 4861546 B2 JP4861546 B2 JP 4861546B2 JP 2000179443 A JP2000179443 A JP 2000179443A JP 2000179443 A JP2000179443 A JP 2000179443A JP 4861546 B2 JP4861546 B2 JP 4861546B2
Authority
JP
Japan
Prior art keywords
application
determining whether
user
computer
connection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2000179443A
Other languages
English (en)
Other versions
JP2001051852A (ja
Inventor
エリック・シイ・アンダーソン
デイビッド・ピタード
Original Assignee
フィーニックス  テクノロジーズ  リミテッド
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 フィーニックス  テクノロジーズ  リミテッド filed Critical フィーニックス  テクノロジーズ  リミテッド
Publication of JP2001051852A publication Critical patent/JP2001051852A/ja
Application granted granted Critical
Publication of JP4861546B2 publication Critical patent/JP4861546B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、コンピュータの自動的なコンフィギュレーションに関する。特に、本発明は、コンピュータにソフトウェアを自動的にインストールして組み込む方法および装置に関する。
【0002】
【従来技術】
情報を収集し配給するためにコンピュータを使用することが多くなり、一般の入手経路および配給経路に関する種々の問題点が明らかになってきた。例えば、ある最近のソフトウェア配給システムは、ソフトウェア・ベンダーが、ネットワークを介して多数のユーザにソフトウェアを提供できるようにしている。また、このシステムは、ユーザから要求があった時に、ソフトウェアを更新および保守することや、ネットワークを介して、ユーザの要求時に、異なるソフトウェア・ベンダーからユーザがソフトウェアを取得できるようになっている。しかし、このようなシステムは、ユーザーからの要求時にソフトウェアと関連情報とを提供するだけであり、ユーザの要求または能力を考慮に入れたものではない。その結果、ユーザの特定のニーズおよび/または能力に関してシステムが最適化されない。
【0003】
【発明が解決しようとする課題】
通常、コンピュータシステムは、全く添付ソフトウェアが無い状態でユーザに出荷される。コンピュータ製造メーカが、認知できるシステムの消費者価値を高めるために、ソフトウェア・パッケージを追加しようとすると、各々の追加ソフトウェア・パッケージを、システムの組み立て過程でインストールし検査する必要があり、コンフィギュレーションの時間と費用とがかかってしまう。時間を節約するためには、製造メーカが、ハードディスク装置のようなシステムの構成要素に予め組み込んでおく必要がある。しかし、製造メーカは、インストールしたソフトウェアの変更が必要な場合、在庫費用と無駄なコンフィギュレーション時間とを配慮する必要がある。
【0004】
システムに添付できるソフトウェアとしては、ユーザに興味を起こさせる情報を紹介するものが考えられる。このユーザに興味を起こさせる情報は、現在、オペレーティング・システムがブートされて運用可能になった後で、コンピュータ画面に表示される広告の形態でユーザに提供されている。このような情報すなわち広告は一般に、ブート後任意にユーザに提供され、またはシステムがアイドル状態のときに表示される。つまり、ブート・プロセスの間には、このような情報すなわち広告はユーザに表示されない。
従って、コンピュータにソフトウェアを自動的にインストールして組み込むための方法および装置に関する技術において、他の時間と同様にブート・プロセスの間にも情報が表示できるようにする必要がある。
【0005】
【課題を解決するための手段】
本発明は、第1の不揮発性メモリから第2の不揮発性メモリに第1のアプリケーションをコピーし、その第1のアプリケーションをスタートアップ・アプリケーションに設定するすることを含む方法を開示するものである。この方法は更に、オペレーティングシステムをブート・アップし、第1アプリケーションを実行することを含んでいる。また、この方法は、適切な接続が存続しているか否かを決定し、適切な接続に必要とされるバンド幅が利用できるか否かを決定し、さらに、適切な接続が存続しかつ適切な接続に関して必要とされるバンド幅が利用できる場合に、第2のアプリケーションをダウンロードすることを含んでいる。この方法はその後、第2のアプリケーションを実行することを含んでいる。この方法を実行するための装置も同様に開示されている。
【0006】
【発明の実施の形態】
(定義)
本明細書で論じる場合、「コンピュータシステム」はデータを処理できる回路を含む製品である。コンピュータシステムとして、限定されるものではないが、汎用コンピュータシステム(例えば、サーバ、ラップトップ、デスクトップ、パームトップ、携帯電子機器等)、パーソナル・コンピュータ(PC)、ハード・コピー機器(例えば、プリンター、プロッター、ファックス装置等)、銀行取引機器(例えば、現金自動預け払い機)等を挙げることができる。インフォメデアリ(infomediary)はウェブサイトであり、供給者や別の事業所から提供される製品および/またはサービスに関する関連情報を事業所に供給することで、製品やサービスの生産者に関する関連情報を提供するものである。「コンテンツ」は、アプリケーション・プログラム、ドライバ・プログラム、ユーティリティ・プログラム、ペイロード等、およびこれらの組合わせ、および画像、情報資料(品物、株相場等)等、単独にまたは何れかの組合わせである。「ペイロード」は、画像、情報資料(品物、株相場等)を伴うメッセージであり、ファイルやアプリケーションを含むこともある。1つの実施形態において、これは、所定時間にシステムの大容量記憶媒体に転送される。更に、「通信リンク」は、媒介物つまり通信経路を意味するものである。通信リンクとしては、限定されるものではないが、電話回線、モデム接続、インターネット接続、統合デジタル通信網(ISDN)接続、非同期転送モード(ATM)接続、フレームリレー接続、イーサネット接続、同軸接続、光ファイバー接続、衛星接続(例えば、デジタル衛星サービス等)、無線接続、無線周波数(RF)リンク、電磁リンク、双方向ページング接続等、およびこれらの組合わせを挙げることができる。
【0007】
さらに、オペレーティング・システム(「OS」)のローディングは、オペレーティング・システムのブートストラップ・ローダの初期配置を意味するものである。1つの実施形態において、OSロードの間に、情報のセクタが、ハードディスクからシステムメモリにロードされる。もしくは、ブートストラップ・ローダが、ネットワークからシステムメモリにロードされる。OS「ブート」は、ブートストラップ・ローダの実行を意味するものである。これはOSをシステムの制御の下に置くものである。OSブートの間に実行される処置として、システム・コンフィギュレーション、デバイス検出、ドライバのロードおよびユーザのログインが挙げられる。
【0008】
OSランタイムは、ブート段階の終了と、OSによるアプリケーションの実行開始とを意味するものである。1つの実施形態において、OSランタイムの間に、OSはユーザと対話して、アプリケーションを実行および/または動作する。
【0009】
パワーオン・セルフテスト(Power On Self Test:POST)は、OSをロードするに先だって、システム・ハードウエアを組み込んで検査するために実行される命令を言及するするものである。
【0010】
(システムの概略)
以下に 本発明の実施形態を具体化する例示的なシステムの概要を説明する。
本発明は、コンピュータにソフトウェアを自動的にインストールして組み込む方法および装置に関するものである。これは、システムの基本入出力システム(BIOS)からの実行可能なイメージ(例えば、アプリケーション)を、システムのハードディスクまたは他の大容量記憶手段に転送することを含んでいる。ユーザの介入なしにオペレーション・システムが立ち上がる時にはいつも、アプリケーション又は入手したアプリケーションの代替品が実行される。転送されたイメージは、本明細書ではインターネット・スタートアップ・アプリケーション(Internet Start-Up Application:ISUA)という。このアプリケーションは、インターネットユーザとシステム・プロファイルの安全で非公開のリポジトリの整備と保守とを容易にし、これは主として、保証サービス登録、インターネットサービス登録、システムプロファイル、およびユーザ嗜好から入手したものである。最初にこの情報は、ユーザが、購入したハードウェアおよびソフトウェアの製造メーカと、オンラインまたは他のサービスのプロバイダとに、ユーザ登録を行うために使用される。その後、ユーザデータがユーザプロファイルを作るために使用され、関連するソフトウェアの更新やアップグレードをユーザに通知して、関連製品のオンライン購入を促し、1対1のカスタマイズされた市場取引と他のサービスとが可能になる。
【0011】
1つの実施形態において、2つのソフトウェア・モジュールが、本発明の種々の実施形態を実施するために使用される。一方はユーザのシステムに常駐し、所定のウェブサイトにアクセスするために使用される。例えば、1つの実施形態において、オペレーティング・システムと基本入出力システム(BIOS)とは、コンピュータシステムに予めインストールされており、その後、コンピュータシステムが最初に立ち上げられた時に、あるアプリケーションが、ブート前の環境の1つまたはそれ以上の実行可能なプログラムを起動できるようにする。ここで、このアプリケーションは、議論のために、第1のソフトウェア・モジュールという。1つの実施形態において、第1のソフトウェア・モジュールは以下で説明する最初のスタートアップ・アプリケーション(ISUA)である。1つの実施形態において、第1のソフトウェア・モジュールは、OSのロード、ブート、実行および/または運用に先だって、1つまたはそれ以上の実行可能なプログラムの起動を容易にする。1つの実施形態において、ユーザは、このようなプログラム(つまり、第1のソフトウェア・モジュール)の使用を促され、別の実施形態において、このプログラムは自動的に起動される。第1のソフトウェア・モジュールに含まれるプログラムは、ツールおよびユーティリティが、適切な時間に適切なユーザ認証でもって運用されるようにし、さらにドライバ、アプリケーションおよび追加ペイロードとを含む第2のソフトウェア・モジュールをPCのインターネット接続を介してユーザがダウンロードできるようにする。このプログラムは更に、OSが正常に起動されなかった場合に、システムを遠隔管理する。
【0012】
第2のソフトウェア・モジュールが一旦配給されると、これはメモリに常駐して第1のソフトウェア・モジュールに関する転送されたコピーを無効にできる。システムの不揮発性メモリになお常駐している、第1のソフトウェア・モジュールのオリジナル・コピーは、第2のソフトウェア・モジュールが機能しなくなるか、破壊されるか、または消去されるまではアイドル状態のままであり、そのようなときには、第1のソフトウェア・モジュールのオリジナル・コピーのコピーが再度、前述したように転送される。第2のソフトウェア・モジュールは、更なる予約申し込み資料をダウンロードするための認証を求めるために、ユーザを特定のインターネットのサーバに接続し、所定のウェブサイトに導くアプリケーションを含むことができる。第2のソフトウェア・モジュールは更に、第1のソフトウェア・モジュールのコンテンツと同一かまたは類似のコンテンツを含むことができる。
【0013】
1つの実施形態において、システムは更に、読取り専用メモリ基本入出力システム(ROM BIOS)に格納される初期ペイロードを含むことができる。1つの実施形態において、初期ペイロードは、第1のソフトウェア・モジュール(例えば、ISUA)の一部である。別の実施形態において、初期ペイロードは、第1のソフトウェア・モジュールとは別個に、ROM BIOSにモジュールとして格納される。1つの実施形態として、初期ペイロードは、パワーオン・セルフテスト(POST)の後で、OSのブート、ロード、および/または実行に先だってROM BIOSから送出されて画面に表示される。これは、システムが製造され、組立てられ、検査される場合、またはエンドユーザが最初にシステムを始動させる場合といった、所定の時間に行なうことができる。別の実施形態において、この初期ペイロードは、所定の場所(システムのハードディスクといった)に、システムが製造され、組立てられ、検査される場合、またはエンドユーザが最初にシステムを始動させる場合といった所定の時間にコピーされる。一旦コピーされると、ペイロードはPOSTの後で、OSのオペレーションに先だって実行でき、画面に、画像、広告、アニメーション、JPEG(Joint Photographic Experts Group)/MPEG(Moving Picture Experts Group)形式の資料を表示できる。追加のプログラムおよび/またはペイロードが(インターネットや他の外部接続を介して)配給される場合、表示画面は、OSのブートに先だってまたはブート中にメッセージや画像の形態のカスタマイズされた画面を提供するために使用できる。さらに、第1のソフトウェア・モジュールに配給された実行可能なプログラムは、ウェブサイトからダウンロードされた後発プログラム(第2のソフトウェア・モジュールのような)と同様に、種々のデバイス形式、ドライバおよびインストール済みアプリケーションを調べてPCを調査するために使用できる。1つの実施形態において、本明細書に参考文献として組み込まれている、係属中の米国特許出願番号 号、発明の名称「コンピュータにソフトウェアを自動的にインストールして組み込む方法および装置」に説明されているように、第1のソフトウェア・モジュールは、ユーザのためのショートカットおよび/またはブックマークを確認して自動的に生成するために使用される。ウェブサイトからダウンロードされたプログラムは、ユーザの嗜好に基づいて、ユーザ・プロファイルを入手して保守するソフトウェアを含むことができる。このような情報は、インフォメデアリに与えられ、これはそれ以降、供給者や他の事業所から提供される更新、改訂情報を得るために、情報の一部および/または情報に基づく編集データを、供給者や他の事業所に転送する。
【0014】
図1を参照すると、情報供給システム10は、1つまたはそれ以上の通信リンク301−30Nを介して、1つまたはそれ以上のユーザ・コンピュータシステム401−40N(「40」)に接続されるサービスセンタ20を備えている。サービスセンタ20は、1つまたはそれ以上のサーバ22、1つまたはそれ以上のデータベース24および1つまたはそれ以上のコンピュータ261−26Nを含んでいる。1つまたはそれ以上のコンピュータ261−26Nは、ユーザ・コンピュータシステム401−40N により同時アクセス可能であり。複数のコンピュータを用いる場合、コンピュータ261−26Nはローカルエリア・ネットワーク(LAN)または、如何なる他の同様の接続技術によっても接続できる。しかし、サービスセンタ20が他の構成であることも可能である。例えば、そこで動作される多数の内部プログラムまたはプロセッサを備えた少数の大型コンピュータ(つまり、少数のメインフレーム・コンピュータ、ミニ・コンピュータ等)は、ユーザコンピュータと通信リンクを確立できる。
【0015】
サービスセンタ20は同様に、遠隔ネットワーク50(例えば、インターネット)または遠隔サイト(例えば、図1には示されていない衛星)に接続可能である。遠隔ネットワーク50または遠隔サイトは、サービスセンタ20に格納できる多種多様なコンピュータソフトウェアやコンテンツ等をサービスセンタ20が提供できるようにする。サービスセンタのコンピュータ(例えば、コンピュータ261)に接続される、1つまたはそれ以上のデータベース24は、コンピュータ26で利用できるコンピュータソフトウェアから成る、データベース項目を格納するために用いられる。1つの実施形態において、各々のユーザコンピュータ401−40Nは、それ自身の安全なデータベース(図示せず)をもっており、他のどのコンピュータからもアクセスできない。通信リンク301−30Nにより、1つまたはそれ以上のユーザコンピュータ401−40Nがコンピュータ261−26Nに同時に接続できる。接続はサーバ22により管理される。
【0016】
ユーザコンピュータシステム40が、情報サービスコンピュータ26と双方向通信を確立した後に以下に説明する方法で、コンテンツが、ユーザコンピュータシステム40に送られる。ダウンロード・コンテンツは、ユーザおよび/または、ユーザ・コンピュータシステムのハードウェアおよび/またはソフトウェアを調べて、ユーザ・プロファイルと同様にユーザシステムのプロファイルを明らかにするアプリケーションを含んでいる。ユーザおよび/または、ユーザ・コンピュータシステムから集めた情報は、その後サービスセンタ20に提供され、ユーザおよびシステム・プロファイルに基づいてユーザ・コンピュータシステム40に追加コンテンツを提供する。サービス・コンピュータ26に接続されるデータベースからのデータベース項目は、ユーザが利用可能なコンピュータソフトウェア、ハードウェア、および第3者による、サービスと製品に関する情報を含んでいる。ユーザおよび/またはコンピュータシステム・プロファイルに基づいて、コンテンツが更にユーザ・コンピュータに送られて表示される。コンテンツは同様に、現行のコンピュータソフトウェアの修正や改訂の利用可能性、現行のコンピュータソフトウェアの新しいバージョン、真新しいコンピュータソフトウェア、新しいヘルプファイルといった情報の概要を含むことができる。コンテンツは更に、ユーザにとって興味のあるハードウェアや第3者の製品やサービスの利用可能性に関する情報を含むことができる。その後、ユーザは利用できる製品やサービスの概要から、1つまたはそれ以上の選択が可能であり、製品をサービスコンピュータ26からユーザ・コンピュータに転送するよう要求できる。もしくは、ユーザは、利用可能な製品やサービスの概要から所望の製品やサービスを購入できる。
【0017】
図2は、本発明の実施形態を実現する例示的なコンピュータシステム100を示している。コンピュータシステム100は、ユーザコンピュータ401−40Nおよび/またはコンピュータ261−26N(図1)の1つの実施形態を示しているが、他の実施形態も容易に使用できる。
図2を参照すると、コンピュータシステム100は、プロセッサつまり中央処理装置(CPU)104を備えている。例示されたCPU104は、演算を行う演算論理装置(ALU)、データと命令の一時記憶のためのレジスタ群およびシステム100に関するオペレーションを制御するための制御ユニットを含んでいる。1つの実施形態において、CPU104は、インテル社から市販されているX86、PentiumTM、PentiumIITMおよびPentiumProTM、AMD社から市販されているK−6、Cyrix社から市販されている6X86MXのいずれかのマイクロプロセッサを含んでいる。別の例として、デジタル・イクイップメント社から市販されているAlphaTMプロセッサ、モトローラ社から市販されている680X0プロセッサまたはIBM社から市販されているPCTMプロセッサを含んでいる。さらに、サン・マイクロシステムズ、MIPS、IBM、モトローラ、NEC、Cyrix、AMD、Nexgen等の如何なる種類のプロセッサもCPU104を実現するために使用できる。CPU104は、マイクロ・プロセッサに限定されるものではないが、マイクロ・コントローラ、デジタル信号プロセッサ、縮小命令セット・コンピュータ(RISC)、アプリケーション特定集積回路といった、別の形態をとることもできる。1つのCPU104が示されているが、その代わりにコンピュータシステム100は複数の処理ユニットを含むこともできる。
【0018】
CPU104は、CPUバス108によりバスコントローラ112に接続されている。バスコントローラ112は、そこに一体化されたメモリコントローラ116を含んでいるが、メモリコントローラ116はバスコントローラ112の外部にあってもよい。メモリコントローラ116は、CPU104や他のデバイスがメモリバス120を介して、システムメモリ124をアクセスするためのインターフェースである。1つの実施形態において、システムメモリ124は、シンクロナス・ダイナミック・ランダム・アクセス・メモリ(SDRAM)を含んでいる。システムメモリ124は、随意的に付加的なまたは別の高速メモリ素子またはメモリ回路を含むことができる。バスコントローラ112は、システムバス128に接続されており、これは周辺相互接続(PCI)バス、業界標準アーキテクチャ(ISA)バス等であってもよい。システムバス128に接続されているものとして、画像コントローラ、画像エンジンまたはビデオコントローラ132、大容量記憶手段152、通信インターフェース装置156、1つまたは複数の入出力装置(I/O)1681−168Nおよび拡張バスコントローラ172がある。ビデオコントローラ132は、ビデオメモリ136(例えば8メガバイト)と、ビデオBIOS140に接続されており、これらの全ては、符号144で示すように1枚のカードまたは装置に統合できる。ビデオメモリ136は、表示データを格納するために使用され、表示画面148に情報を表示する。ビデオBIOS140は、ビデオコントローラ132を制御するための、コードおよびビデオサービスを含んでいる。他の実施形態において、ビデオコントローラ132は、改良型グラフックポート(AGP)バスを介してCPU104に接続されている。
【0019】
大容量記憶手段152は、限定されるものではいが、ハードディスク、フロッピディスク、CD−ROM、DVD−ROM、テープ、高密度フロッピ、大容量リムーバブル媒体、小容量リムーバブル媒体、半導体メモリ素子等、およびこれらを組合わせたものである。大容量記憶手段152は、如何なる大容量記憶媒体をも含んでいる。通信インターフェース装置156は、ネットワーク・カード、モデム・インターフェース等であり、通信リンク160を介してネットワーク164にアクセスするためのものである。I/0装置1681−168Nは、キーボード、マウス、オーディオ/サウンド・カード、プリンタ等を含んでいる。I/0装置1681−168Nは、コンパクトディスク・ドライブ、デジタルディスク・ドライブ、テープ・ドライブ、Zipドライブ、ジャズ・ドライブ、デジタル・ビデオディスク・ドライブ(DVD)、半導体メモリ素子、光磁気ディスク・ドライブ、高密度フロッピ・ドライブ、大容量リムーバブル・ドライブ、小容量媒体ドライブ、および/または、これらの組合わせたものである。拡張バスコントローラ172は、不揮発性メモリ175に接続されており、システム・ファームウェア176を含んでいる。システム・ファームウェア176は、システムBIOS82を含み、特に、コンピュータシステム100のハードウェア装置を制御するためのものである。システム・ファームウェア176は同様に、ROM180とフラッシュメモリ(またはEEPROM)とを含んでいる。拡張バスコントローラ172は同様に、RAM、ROM、および/またはフラッシュメモリ(図示せず)を有する拡張メモリ188に接続されている。システム100は更に、バスコントローラ112に接続されるメモリ・モジュール190を含むこともできる。1つの実施形態として、メモリ・モジュール190は、ROM192とフラッシュメモリ(またはEEOROM)194を備えている。
【0020】
当業者にはよく知られているように、コンピュータシステム100は更に、オペレーティング・システムOSと、少なくとも1つのアプリケーション・プログラムとを含み、1つの実施形態において、これらは大容量記憶手段152からシステムメモリ124に読み込まれ、POSTの後でブートされる。OSとしては、限定または制限されるものではないが、DOS、WindowsTM(例えば、Windows 95TM、Windows 98TM、Windows NTTM)、Unix、Linux、OS/2、OS/9、Xenix等を挙げることができる。オペレーティング・システムは、1つまたはそれ以上のプログラム一式であり、コンピュータシステムのオペレーションと資源配分を制御するものである。アプリケーション・プログラムは、1つまたはそれ以上のソフトウェア・プログラム一式であり、ユーザが所望のタスクを実行するものである。
【0021】
コンピュータ・プログラミングの当業者が実施できるように、本発明を、特に断らない限りにおいて、コンピュータシステム100により実行される、オペレーションの象徴的な表示を参照して以下に説明する。このようなオペレーションは時としてコンピュータ実行(computer-executed)として言及される。象徴的に表示されたオペレーションは、他の信号処理と同様に、CPU104によるデータビットに代表される電気信号の操作と、システムメモリ124の記憶域でのデータビットの保守とを含んでいるものとして理解できる。データビットが保守される記憶域は、物理的な位置であり、データビットに対応する特定の電気的、磁気的、光学的、または有機的な特性をもっている。
【0022】
ソフトウェアにおいて実装される場合、本発明の要素は、実質的に必須のタスクを実行するためのコード・セグメントである。プログラムまたはコード・セグメントはプロセッサ読取可能媒体に格納できるか、搬送波に包含されるコンピュータデータ信号によって伝送媒体または通信リンクに伝送できる。「プロセッサ読取可能媒体」は、情報を格納し転送できる全ての媒体を含むことができる。プロセッサ読取可能媒体としては、電子回路、半導体メモリ素子、ROM、フラッシュメモリ、消去可能ROM(EROM)、フロッピ・ディスケット、CD−ROM、光ディスク、ハードディスク、光ファイバ媒体、無線周波数(RF)リンク等を例として挙げることができる。コンピュータ・データ信号は、電気的ネットワーク経路、光ファイバ、空気、電磁気、RFリンクといった、伝送媒体に伝搬できる如何なる信号も含むことができる。コード・セグメントは、インターネット、イントラネットといったコンピュータ・ネットワークを介してダウンロードできる。
【0023】
図3は、コンピュータシステム100の論理図である。図2、3を参照すると、システム・ファームウェア176は、ソフトウェア・モジュールとデータとを含み、これらはPOSTの期間にシステムメモリ124に読み込まれ、その後プロセッサ104により実行される。1つの実施形態において、システム・ファームウェア176は、システムBIOSハンドラ、ハードウェア・ルーチン等を有するシステムBIOSモジュール82、ROMアプリケーション・プログラム・インタフェース(RAPI)モジュール86、初期スタートアップ・アプリケーション(ISUA)モジュール86、初期ペイロード88a、暗号化キー90、暗号化エンジン92、および表示エンジン94とを含んでいる。前述のモジュールとシステム・ファームウェア176の一部は、ROM180および/またはフラッシュメモリ184に収納できる。もしくは、前述のモジュールとシステム・ファームウェア176の一部は、ROM190および/またはフラッシュメモリ194に収納できる。RAPI84、ISUA86および初期ペイロード88aは、各々個別に コンピュータシステム100の第1回目の使用前に、システム・ファームウェア176にデベロープされて格納されてもよい。1つの実施形態において、RAPI84、ISUA86および初期ペイロード88aの各々は、フェニックス・テクノロジ社で開発された専売権付きソフトウェアを含む。RAPI84は、ROMアプリケーション・プログラムとシステム・ファームウェア176との間で、安全なインターフェースを提供する。RAPI84の1つの実施形態が、本明細書に参考文献として組み込まれている、フェニックス・テクノロジ社に譲渡された、1999年6月18日出願の、係属中の米国特許出願番号 、発明の名称「基本入出力システム(BIOS)を安全に利用するシステムおよび方法」に説明されている。ISUA86の1つの実施形態が、本明細書に参考文献として組み込まれている、フェニックス・テクノロジ社に譲渡された、1999年6月18日出願の、係属中の米国特許出願番号 、発明の名称「コンピュータに自動的にソフトウェアをインストールして組み込む方法および装置」に説明されている。
【0024】
1つの実施形態において、図3、4Aおよび4Bに示されるように、新品のコンピュータシステム100の電源が最初に投入された後で、システムはPOST処理を開始する。A1で示されるように、最初のPOSTの期間に、ISUA86が大容量記憶手段152に転送される。1つの実施形態において、コンピュータシステム100が、オペレーティング・システムがインストールされた後に(しかし、オペレーティング・システムをローディングし実行する前に)最初に電源が投入される時に、このような転送が製造および/または組立プロセスの間に行わる。他の実施形態において、このような転送は、製造および/または組立プロセスの後で、ユーザが受け取ってシステム100に電源を投入した後で行われる。さらに他の実施形態において、ISUA86の転送の間に、追加プログラム、アプリケーション、ドライバ、データ、画像および他の情報を、(例えば、ROMから)大容量記憶手段152に転送することもできる。例えば、転送は、大容量記憶手段152への初期ペイロードの転送を含むことができ、その後、初期ペイロードは大容量記憶手段152から供給される。もしくは、初期ペイロードはROMから供給されてもよい。このような転送を容易にするシステムと方法の1つの実施形態が、本明細書に参考文献として組み込まれている、フェニックス・テクノロジ社に譲渡された、1999年6月18日出願の、係属中の米国特許出願番号 、発明の名称「システム・フレーム・ウエアからのアプリケーション・プログラムを記憶装置に転送するシステムおよび方法」に説明されている。このような転送を容易にするシステムと方法の別の実施形態が、1999年3月19日出願の、係属中の米国特許出願番号09/272,859、発明の名称「メモリベースのデバイス・エミュレータを提供する方法および装置」と、1999年6月18日出願の、係属中の米国特許出願番号 、発明の名称「メモリベースのデバイス・エミュレータを提供する方法および装置」、および1999年6月18日出願の、係属中の米国特許出願番号 、発明の名称「1つまたはそれ以上のファイルを記憶装置に挿入するシステムおよび方法」とに説明されており、各々本発明の譲渡人であるフェニックス・テクノロジ社に譲渡されており、本明細書に参考文献として組み込まれている。
【0025】
1つの実施形態において、ISUA86は、コンピュータ・ソフトウェア実行可能プログラムであり、こらは、エンドユーザのシステムに常駐している、プリインストールされたプログラムがあるかどうかを決定する。あれば、このプリインストールされたプログラムを認識して、ショートカット(ウインドウズ・オペレーティングシステムの場合は、ディスクトップに)やブックマークを作成し、ユーザがプログラムを自動的にブート可能にする。この実施形態において、以下に述べるように、実行可能プログラムは更に、サーバ22および/または何れか1つのサービスコンピュータ26(図1)に関する、1つまたはそれ以上のアプリケーションとの双方向通信を初期化して確立できる。さらに、1つの実施形態において、初期ペイロード88aの画像コンテンツは、表示エンジン94によってPOSTの期間にユーザの表示画面148に表示される。もしくは、初期ペイロード88aの画像コンテンツは、その後のブート・プロセスの後で表示できる。例えば、以下に述べるユーザ・プロファイルの一環として、ユーザに、1つまたはそれ以上の製品および/またはサービスの追加情報の入手を希望するか否か問い合わせてもよい。ユーザが希望する場合、所望の製品および/またはサービスに関するコンテンツが、その後のブート・プロセスの間に表示される。
【0026】
一旦POSTが終了すると、OSがロードされ、実行され、初期化される。その後、標準OSドライバおよびサービスがロードされる。その後、ユーザは、年齢、性別、趣味といった人口統計学的情報を含む、登録情報を入力するよう促される。さらに、ISUA86が実行され、バックグラウンドで動作し、コンピュータシステム100と、図2のネットワーク164上(例えばインターネット上)の遠隔サーバ(例えば、図1のサーバ22)との間で確立される通信リンクを検出するまでアイドル状態のままとなっている。1つの実施形態において、ISUA86は、プリロードされ、プリインストールされたアプリケーションがシステム上にあるか否かを決定するために、オペレーティング・システムを検索することができる。あれば、ISUA86は、自動的にショートカットおよび/またはブックマークを作成し、一旦通信リンクが確立すると所定のサーバにアプリケーションを送出できる。この通信リンクは、ソケット、または従来から公知の別の双方向通信技術の何れかをにより、ネットワーク・プロトコル・スタック(例えば、TCP/IP)を用いて確立できる。一旦通信リンク30が確立すると、コンテンツ・モジュール60から、初期コンテンツ・パッケージ62(A3で示されるような)をダウンロードするために、ISUA86は、サーバ22に要求信号を出す。この要求に応答して、サーバは初期コンテンツ・パッケージ62(A3で示されるような)をダウンロードする。このパッケージは、1つの実施形態において、これは大容量記憶手段152に格納される。1つの実施形態において、初期コンテンツ62と後発コンテンツ64とは別々にデベロープされ、初期コンテンツ62と後発コンテンツ64とが格納される前に、サーバ22で各々暗号化され、および/または暗号化キーによりデジタル署名される。初期コンテンツ62と後発コンテンツ64が、それ以降コンピュータシステム100にダウンロードされる場合に、暗号化エンジン92は、キー90を用いて、初期コンテンツ62と後発コンテンツ64とを復号化する。
【0027】
前記で検討したように、初期コンテンツ62は、アプリケーション62a、ドライバ62bおよびペイロード62cを含むことができる。1つの実施形態において、アプリケーション62aはデータローダ・アプリケーションと、プロファイル管理アプリケーションとを含んでいる。データローダ・アプリケーションはISUA86と同じように機能し、一旦ダウンロードされるとISUA86を無効にして、これに取って代わる。更に詳細には、データローダ・アプリケーションはコンピュータソフトウェア・プログラムであり、更に、サーバ22とコンピュータシステム100との間の双方向通信を初期化、確立および終了させる。データローダ・アプリケーションは更に、エンドユーザ・システムと指定サーバとの間の通信を助け、エンドユーザ・システムにコンテンツのダウンロードを行なうための別の機能と同様に、サーバ22とコンピュータシステム100との間のトラヒック・コントロール管理を行う。
【0028】
プロファイル管理アプリケーションは、ユーザの嗜好、システムハードウェアおよびコンピュータシステム100にインストールされているソフトウェアに基づいて、コンピュータシステム100のユーザおよびシステム・プロファイルを取得する。コンピュータシステム100のユーザおよびシステム・プロファイルを取得すると、プロファイル管理アプリケーションはその結果をデータローダ・アプリケーションに送る。これはその後サーバ22に、データベース24のユーザが表明した嗜好に一致する情報を提供する。この結果は、所定の時間間隔またはユーザから要請があった時に送ることができる。その後、サーバ22は、ユーザ・プロファイルまたは人口統計学的データを処理し、コンテンツをよく似たプロファイルのユーザへの対象とする。さらに、多数のユーザのユーザ・プロファイルデータはサーバ22に集められ、統合ユーザ・プロファイル・モデルを生成するために統合される。その後、ユーザ・プロファイル・データおよび/または統合ユーザ・プロファイル・モデル(A4で示されるように)に基づいて、コンテンツはユーザ・コンピュータシステムに伝送される。後発コンテンツ64は、ダウンロードされ、システム・ファームウェア176に格納され、符号88bで表される。1つの実施形態において、後発コンテンツ64は、フラッシュまたはEEPROMといった不揮発性メモリであり、当業者にはよく知られているように、後発コンテンツ64のロードはROMを再フラッシュすることで成される。後発コンテンツ64はまた、1つまたはそれ以上のファイルとして大容量記憶手段152に格納でき、または、WindowsTMシステム・ファイル(WindowsTM環境の下で)を修正するために使用できる。プロファイル入手プロセスはコンピュータシステム100が動作している間は継続する。1つの実施形態において、サーバ22がユーザのプロファイルを受信し解析した後で、コンテンツをダウンロードできる。
【0029】
コンピュータシステム100の電源が投入され(図4参照)、システムが再度POSTを実行する。予めダウンロードされ、システム・ファームウェア176に格納された著作権の問題がないコンテンツは、その後、オペレーティング・システムのロード、および/または実行の前に表示される。WindowsTM環境において、オペレーティング・システムの初期ローディングの間に表示されるWindowsTMロゴは、その後、予めシステム・ファームウェア176に格納されたダウンロード済みコンテンツを表示する、1つまたはそれ以上の画面に置き換えられる。
【0030】
コンテンツを1つまたはそれ以上のファイルとして大容量記憶手段152に格納する場合には、ROMの再フラッシュと対照的に、ブートアップとシャットダウンの間に表示されるWindowsTMロゴ・ファイルは変更または置き換えができる。この手法を利用する1つの実施形態は、対応するWindowsTMシステム・ファイルを、コンテンツ(例えば、画像ファイル)を表す1つまたはそれ以上のファイルに置き換えることを含んおり、これは、本明細書に参考文献として組み込まれた、フェニックス・テクノロジ社に譲渡された、1999年6月18日出願の、係属中の米国特許出願番号 号、発明の名称「ブートアップおよびシャットダウンの間の画像表示」に説明されている。ブートアップWindows表示ファイルは、LOGO.SYSと呼ばれ、通常Windowsディレクトリに置かれている。最初にWindowsTMのLOGO.SYSファイルが、Windowsディレクトリから他のディレクトリに転送される。その後、画像ファイルコンテンツが、LOGO.SYSに改名され、Windowsディレクトリに転送される。オペレーティング・システムが最初にブートされた時に、オペレーティング・システムはこのファイルを取り出すので、コンテンツが表示画面に表示される。WindowsTMは、LOGO.SYSファイルがビットマップ・ファイルであることを要求している。ビットマップ・ファイルは320×400の解像度で、256色であるが、WindowsTMはその後表示のために解像度を640×400へ広げる。それゆえに、画像ファイルコンテンツは、同一の画像形式(通常、LOGO.SYSに改名され前に、拡張子「.BMT」と呼ばれる)である。
【0031】
その後、オペレーティング・システムがロードされ、実行され初期化される。標準オペレーティング・システム・ドライバとアプリケーションもロードされる。その後、プロファイル管理が実行される。所定のウェブサイトとのリンクが確立されると、追加コンテンツがダウンロードされ、それに続いて表示される。このような追加コンテンツは、随意に、またはユーザまたはユーザのシステムの調査で得られた情報に基づいて提供される。1つの実施形態において、一旦ブート・プロセスが終了すると、以前に表示されたメッセージまたは広告に関する詳細情報にアクセスするために使用するアイコンまたはショートカットを表示するために、表示画面の一部を使用できる。別の実施形態において、メッセージまたは広告はシャットダウン・プロセスの間に再度表示でき、例えば、「Windowsをシャットダウンしています」または「コンピュータの電源を切っても安全です」というメッセージを表示する画面表示を、別の選択されたコンテンツに置き換える。
【0032】
図5は、ISUA86の1つの実施形態を示すブロック図である。ISUA86は、スクリプト・プロセッサ・モジュール500と、ネットワーク接続検出部502、ダウンロード・モジュール504、URL/ショートカット・モジュール506、およびデータ・モジュール508とを含んでいる。図3に示されるように、ISUA86は、ユーザコンピュータのBIOS176を含んでいる。
【0033】
スクリプト・プロセッサ・モジュール500は、ISUA86の処理要素である。1つの実施形態において、スクリプト・プロセッサ・モジュール500は、対のオペレーション・コードまたはコマンドコードを読取りこれを実行する。
【0034】
スクリプト・プロセッサでサポートされる幾つかの特徴点は以下の通りである。
・Windowsディスクトップへのショートカットのインストール
・ウェブサイトへのショートカットのインストール
・インターネット・クライアント/アプリケーションのダウンロード
・宣伝、無料アプリケーションのダウンロード
・ロード済みのWindowsアプリケーション/インストールの実行、
・カスタム・ペイロードの実行
【0035】
カスタム・ペイロードの実行は、ISUA86の特有の特徴点である。これは、製造メーカまたはISUA86のユーザが、ISUA86の内部又はシステムBIOSに、別の画像を組み込むことを可能にするものである。このコードが行なう処置は製造メーカ次第である。
【0036】
ネットワーク接続検出部502はISUA86に含まれているモジュールである。これはバックグラウンドで動作し、インターネット接続または適切なネットワーク接続を監視する。一旦接続が検出されると、ISUA86は、追加コンテンツ、アプリケーション、またはワールドワイドウェブからの宣伝を入手するために、ダウンロード・モジュール504を呼び出すことができる。
【0037】
ダウンロード・モジュール504は、ISUA86に含まれる構成要素であって、追加データをインターネットから大容量記憶手段152(例えば、ユーザのハードディスク)へ転送させる。ダウンロード・モジュール504は、データ領域508の情報を読み取り、IPアドレスとファイル名情報とを取得する。
【0038】
URL/ショートカット・モジュール506は、ISUA86がインターネットに接続することなく、エンドユーザのWindows経歴を変更することができる。URL/ショートカット・モジュール506はデータ領域508の情報を処理して、Windowsディスクトップとインストール済みインターネット・ブラウザの構成方法を決定する。1つの実施形態において、URL/ショートカット・モジュール506でサポートされる機能は以下の通りである。
・Windowsディスクトップへショートカットの配置
・大容量記憶手段152(例えば、ユーザのハードディスク)内のインストール済みソフトウェアの検索およびその実行、またはWindowsディスクトップへのそのローカル・ショートカットの配置、および
・インターネット・ブラウザのホームページの変更
【0039】
ISUA86のデータ領域508を分離することは、データ領域508を、コード領域の再フラッシュを必要とせずに遠隔フラッシュできるので重要である。このことは、サポーティング・コードの完全性を危うくすることなく、ISUA86の働きを変更できる。さらに、柔軟性に富んだアーキテクチャと、ISUA86の特定の構成要素を容易に更新する能力とを与えるために、データ領域508とは別に、各々のモジュールが単独に更新できるよう種々のモジュールが内部に収納されている。
【0040】
図6は、コンピュータシステム100の電源投入時に、ISUA86(例えば、シーケンサ)を転送するBIOS176のオペレーションに関するフローチャートである。
【0041】
ブロック600において、データローダ・アプリケーション(WDL)62aが大容量記憶手段152に配置されているか否かを決定する。前述のように、WDL62aは、先にISUA86が正常に実行された場合にダウンロードされる初期コンテンツパッケージ62の一部である。WDL62aの存在は、WDL62aの幾つかの又は全ての構成要素がファイルシステムにあるか否かを調べるために、大容量記憶手段152のファイルシステムに問い合わせるオペレーションにより決定できる。もしくは、WDL62aの存在は、フラグの設定、BIOS176又は大容量記憶手段152の特定のビットにより確認できる。WDL62aがファイルシステム上に検出されなかった場合、その後オペレーションはブロック602に進む。
【0042】
ブロック602において、ISUA86(シーケンサとして示される)が大容量記憶手段152にあるか否かを決定する。この場合も先と同様に、ISUA86の存在の検出は、WDL62aの検出と同じやり方で行なうことができる。ISUA86が検出された場合、次にオペレーションはブロック608に進む。ISUA86が検出されなかった場合、オペレーションはブロック604に進む。
【0043】
ブロック604において、ISUA86パッケージが大容量記憶手段152にコピーされる。1つの実施形態において、ISUA86パッケージは、最初に圧縮され、大容量記憶手段152に転送された時に圧縮解除される。別の実施形態において、ISUA86が直接転送され、その後に随意的に圧縮解除される。さらに、ISUA86パッケージを暗号化することができ、そのためにISUA86パッケージを複号化するための復号器が必要になる。ISUA86パッケージが大容量記憶手段152に転送された後で、オペレーションはブロック606に進む。
【0044】
ブロック606において、制御はオペレーティング・システムに戻されて、普通どおりコンピュータのブートアップと初期化とに進む。
【0045】
図7は、オペレーティング・システムがロードされ、かつISUA86がロードされた後の、ISUA86の1つの実施形態に関するフローチャートである。
【0046】
ブロック700において、ISUA86のネットワーク接続検出器502は調査を実行して、インターネットまたは必須のネットワーク接続が存続しているか否かを検出する。ネットワーク接続検出器502は、オペレーティング・システムに問い合わせることで、または、1次サーバが利用できるか否かを調べるために、初期コンテンツ・パッケージ62をもつ1次サーバにpingを打つことで、必須のネットワーク接続が存続しているか否かを決定する。別の実施形態において、ネットワーク接続検出器502は、サーバの1つが応答するまでサーバ一覧表に接触を試みてもよい。ネットワーク接続が存続している場合、その後オペレーションブロック702に進む。そうでなければ、オペレーションはブロック704に進む。
【0047】
ブロック702において、ネットワーク接続検出器502がネットワーク接続を検出しない場合、遅延時間の間待機したあとでブロック700に戻る。1つの実施形態において、遅延時間は10秒である。
【0048】
ブロック700において、ネットワーク接続検出器502が必須のネットワーク接続を検出した場合、その後、ブロック704において、ネットワーク接続検出器502は、ユーザがどれ位のバンド幅を使用しているかを調べるために問い合わせる。このことは、ユーザのバンド幅の使用に著しく影響を及ぼすことなく情報を転送するために、ISUA86に対して利用可能な充分なバンド幅があるか否かを決定するためのものである。ユーザが、ISUA86がバンド幅を使用していることに気づかないことが好ましい。1つの実施形態において、ネットワーク接続検出器502は、使用中のバンド幅と、ISUA86が接続を使用することが適切か否かを決定するために用いられる時間と解析するのに経験則を利用できる。例えば、ネットワーク接続検出器502は、ISUA86が接続を使用し始める前の5分間に、ユーザが使用するバンド幅が50%未満になるまで待機できる。別の実施形態において、バンド幅がISUA86での使用に利用できるか否かを決定するために、所定の閾値を利用できる。つまり、例えば、別のプロセッサで費やされる接続バンド幅の量が、バンド幅の総量の10%だけである場合、そのときには、ISUA86により利用可能な充分なバンド幅があると判断される。ISUA86により使用されるバンド幅は、ユーザにより使用されるバンド幅とISUA86により使用されるべきバンド幅との間の、単純な比率又はある数学的関係に基づいている。バンド幅が利用できる場合、その後、オペレーションはブロック706に進む。そうでなければ、オペレーションはブロック710に進む。
【0049】
ブロック706において、ISUA86のダウンロード・モジュール504は、WDL62aのデータの各部分を別々にダウンロードするのではなく、WDL62aのデータ・ブロックをダウンロードする。
【0050】
ブロック708において、ダウンロード・モジュール504は、WDL62aが完全にダウンロードされたか否かを決定する。WDL62aが完全にダウンロードされた場合、その後、オペレーションはブロック716に進む。そうでなければ、オペレーションはブロック700に戻る。
【0051】
ブロック716において、一旦ダウンロード・モジュール504が、WDL62aが完全にダウンロードされたと決定すると、ダウンロード・モジュール504は、WDL62aの完全性と完全な状態とを確証する。例えば、ダウンロード・モジュール504は、ダウンロード時にエラーが起こったか否かを決定するために、ダウンロードされたWDL62aに関するチェックサム演算を行うことができる。WDL62aが確証されると、オペレーションはブロック712に進む。そうでなければ、オペレーションはブロック718に進む。
【0052】
ブロック712において、一旦WDL62aが確証されると、その後、URL/ショートカット・モジュール506が、インターネット・サービスプロバイダまたはウエブサイト・リンクに関するセットアップ/サインアップ・プログラムといった、全てのアプリケーションのためのショートカットをインストールする。さらに、一旦WDL62aが確証されると、オペレーティング・システムによって、スタートアップ・アプリケーションとしてWDL62aが実行される。URL/ショートカット・モジュール506がショートカットを変更した後で、オペレーションが終了する。
【0053】
ブロック718において、ブロック716でWDL62aが確証されてない場合、その後、ダウンロード・モジュールがWDL62aを大容量記憶手段152から削除する。その後、オペレーションはブロック700に進み、ここではネットワーク接続検出器502が、再度、必須のネットワーク接続が存続しているか否かを検出するために調査を行なう。
【0054】
本発明は、特定の好適な実施形態に関して説明されているが、さらに本発明の範疇にある他の実施形態も当業者には明らかである。従って、本発明の範疇は以下の請求の範囲のみにより定義されることが意図されている。
【図面の簡単な説明】
【図1】本発明の装置と方法とが用いられる情報配給システムの1つの実施形態のシステムブロック図である。
【図2】本発明の実施形態を実施できる例示的なプロセッサ・システムまたはユーザ・コンピュータシステムを示す。
【図3】図1の情報配給システムの1つの実施形態の細部のブロック図を示す。
【図4A】本発明の原理により提供されるプロセス・フローチャートに関する1つの実施形態を示す。
【図4B】本発明の原理により提供されるプロセス・フローチャートに関する1つの実施形態を示す。
【図5】本発明の原理により構成された初期ブートアプリケーションの1つの実施形態のブロック図を示す。
【図6】本発明の原理により実行される初期ブートアプリケーションのローディング・オペレーションの1つの実施形態の詳細なフローチャートを示す。
【図7】本発明の原理により実行される初期ブートアプリケーションの複数のオペレーションの1つの実施形態の詳細なフローチャートを示す。
【符号の説明】
10 情報供給装置、20 サービスセンタ、22 サーバ、24 データベース、26 情報サービスコンピュータ、40 ユーザコンピュータ、50 ウェブサイト、52 登録ウェブサイト、54 1次ウェブサイト、56 2次ウェブサイト。

Claims (23)

  1. コンピュータシステムにより実行される方法であって、
    初期ペイロードを含む第1のアプリケーションを、前記コンピュータシステムのためのBIOSを含む第1の不揮発性メモリから第2の不揮発性メモリにコピーし;
    期ペイロードに含まれる画像コンテンツを表示画面に表示し;
    第1のアプリケーションをスタートアップ・アプリケーションに設定し;
    オペレーティングシステムをブートアップし;
    第1アプリケーションを実行し;
    適切な接続が存続しているか否かを決定し;
    適切な接続に関する必要とされるバンド幅が利用できるか否かを決定し;
    適切な接続が存続しかつ適切な接続に関する必要とされるバンド幅が利用できる場合に、第2のアプリケーションをダウンロードし;および、
    第2のアプリケーションを実行する;
    ことを備え
    前記初期ペイロードは、画像、情報資料を伴うメッセージであり、前記画像コンテンツは、パワーオン・セルフテスト(POST)の期間において初めて表示される方法。
  2. 前記第2の不揮発性メモリが大容量記憶手段である請求項1に記載の方法。
  3. 前記第1のアプリケーションをスタートアップ・アプリケーションに設定することは、
    第1のアプリケーションへのショートカットを生成し;および、
    所定の場所に前記第1のアプリケーションへのショートカットを配置する;
    ことを備えている請求項1に記載の方法。
  4. 前記適切な接続が存続しているか否かを決定することは、通信がサーバで達成できるか否かを決定することを含んでいる請求項1に記載の方法。
  5. 前記適切な接続が存続しているか否かを決定することは、ネットワーク接続が存続しているか否かを決定することを含んでいる請求項1に記載の方法。
  6. 前記適切な接続に関する必要とされるバンド幅が利用できるか否かを決定することは、
    全バンド幅に対して適切な接続のために消費されるバンド幅との間の比を決定し;および、
    前記比率を第1の閾値と比較する;
    ことを含んでいる請求項1に記載の方法
  7. さらに、前記比率が前記第1の閾値未満である期間を決定し;および、
    前記期間を第2の閾値と比較する;
    ことを備えている請求項6に記載の方法。
  8. さらに、前記第2のアプリケーションが正常にダウンロードされたか否かを決定することを備えている請求項1に記載の方法。
  9. 前記第2のアプリケーションが正常にダウンロードされたか否かを決定することは、前記第2のアプリケーションの完全性の検査を行うことを含んでいる請求項8に記載の方法。
  10. 前記第2のアプリケーションが正常にダウンロードされたか否かを決定することは、前記第2のアプリケーションが完全にダウンロードされたか否かを決定することを含んでいる請求項8に記載の方法。
  11. 初期ペイロードを含む第1のアプリケーションを、コンピュータシステムのためのBIOSを含む第1の不揮発性メモリから第2の不揮発性メモリにコピーする手段と;
    期ペイロードに含まれる画像コンテンツを表示画面に表示する手段と;
    第1のアプリケーションをスタートアップ・アプリケーションに設定する手段と;
    オペレーティング・システムをブートアップする手段と;
    第1アプリケーションを実行する手段と;
    適切な接続が存続しているか否かを決定する手段と;
    適切な接続に関する必要とされるバンド幅が利用できるか否かを決定する手段と;
    適切な接続が存続しかつ適切な接続に関する必要とされるバンド幅が利用できる場合に、第2のアプリケーションをダウンロードする手段と;
    第2のアプリケーションを実行する手段と;
    を備え
    前記初期ペイロードは、画像、情報資料を伴うメッセージであり、前記画像コンテンツは、パワーオン・セルフテスト(POST)の期間において初めて表示される装置。
  12. 前記第2の不揮発性メモリが大容量記憶手段である請求項11に記載の装置。
  13. 前記第1のアプリケーションをスタートアップ・アプリケーションに設定する手段は、
    第1のアプリケーションへのショートカットを生成する手段と;
    所定の場所に前記第1のアプリケーションへのショートカットを配置する手段と;
    を備えている請求項11に記載の装置。
  14. 前記適切な接続が存続しているか否かを決定する手段は、通信がサーバで達成できるか否かを決定する手段を含んでいる請求項11に記載の装置。
  15. 前記適切な接続が存続しているか否かを決定する手段は、インターネット接続が存続しているか否かを決定する手段を含んでいる請求項11に記載の装置。
  16. 前記適切な接続に関する必要とされるバンド幅が利用できるか否かを決定する手段は、
    全バンド幅に対して適切な接続のために消費されるバンド幅との間の比を決定する手段;および、
    前記比率を第1の閾値と比較する手段;
    を含んでいる請求項11に記載の装置。
  17. さらに、前記比率が前記第1の閾値未満である期間を決定する手段;および、
    前記期間を第2の閾値と比較する手段;
    を備えている請求項16に記載の装置。
  18. さらに、前記第2のアプリケーションが正常にダウンロードされたか否かを決定する手段を備えている請求項11に記載の装置。
  19. 前記第2のアプリケーションが正常にダウンロードされたか否かを決定する手段は、前記第2のアプリケーションの完全性の検査を行う手段を含んでいる請求項18に記載の装置。
  20. 前記第2のアプリケーションが正常にダウンロードされたか否かを決定する手段は、前記第2のアプリケーションが完全にダウンロードされたか否かを決定する手段を含んでいる請求項18に記載の装置。
  21. 前記第1のアプリケーションは、前記コンピュータシステムのユーザが前記コンピュータシステムに常駐しているプリインストールプログラムを自動的に起動できるように、(a)前記プリインストールログラムを特定し、(b)前記コンピュータシステムのオペレーティングシステムのデスクトップ上にブックマークまたはショートカットを作成するように設計されている請求項1に記載の方法。
  22. 前記画像コンテンツは、前記コンピュータシステムのユーザによって表示することを要求された製品またはサービスについての情報を、前記ブートアップ処理の期間において表示する請求項1に記載の方法。
  23. 前記画像コンテンツの構成は統合ユーザ・プロファイルに基づくものであり、前記統合ユーザ・プロファイルは、複数のコンピュータシステムと複数のコンピュータシステムのユーザの特性を表すデータセットである請求項1に記載の方法。
JP2000179443A 1999-06-18 2000-06-15 コンピュータにソフトウェアを自動的にインストールして組み込む方法および装置 Expired - Fee Related JP4861546B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/336289 1999-06-18
US09/336,289 US6578142B1 (en) 1999-06-18 1999-06-18 Method and apparatus for automatically installing and configuring software on a computer

Publications (2)

Publication Number Publication Date
JP2001051852A JP2001051852A (ja) 2001-02-23
JP4861546B2 true JP4861546B2 (ja) 2012-01-25

Family

ID=23315424

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000179443A Expired - Fee Related JP4861546B2 (ja) 1999-06-18 2000-06-15 コンピュータにソフトウェアを自動的にインストールして組み込む方法および装置

Country Status (4)

Country Link
US (1) US6578142B1 (ja)
JP (1) JP4861546B2 (ja)
CN (1) CN1211734C (ja)
TW (1) TW543002B (ja)

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1199368C (zh) * 1999-01-16 2005-04-27 皇家菲利浦电子有限公司 无线电通信系统
US6486883B1 (en) * 1999-06-18 2002-11-26 Phoenix Technologies, Ltd. Apparatus and method for updating images stored in non-volatile memory
US7395324B1 (en) * 1999-10-18 2008-07-01 Wnf Consulting Method and apparatus for maintaining a computer system
US20020073181A1 (en) * 1999-12-07 2002-06-13 Tracylee Christensen Lan configurator
US20020166127A1 (en) * 1999-12-15 2002-11-07 Hitachi America, Ltd. System and method for providing advertisements in a wireless terminal
US7562128B1 (en) * 2000-03-06 2009-07-14 Philips Koninklijke Philips Electronics N.V. STB connects remote to web site for customized code downloads
EP1118949A1 (en) * 2000-01-21 2001-07-25 Hewlett-Packard Company, A Delaware Corporation Process and apparatus for allowing transaction between a user and a remote server
US7237101B1 (en) * 2000-02-12 2007-06-26 International Business Machines Corporation Methods and apparatus for self describing devices
US6817017B2 (en) * 2000-04-24 2004-11-09 Leotel, Technologies, Inc. Universal interface system
US7389214B1 (en) * 2000-05-01 2008-06-17 Accenture, Llp Category analysis in a market management
US7395193B1 (en) 2000-05-01 2008-07-01 Accenture, Llp Manufacture for a market management framework
US7949564B1 (en) * 2000-05-31 2011-05-24 Western Digital Technologies, Inc. System and method of receiving advertisement content from advertisers and distributing the advertising content to a network of personal computers
US6889380B1 (en) * 2000-06-30 2005-05-03 Intel Corporation Delaying loading of host-side drivers for cluster resources to avoid communication failures
US7103650B1 (en) * 2000-09-26 2006-09-05 Microsoft Corporation Client computer configuration based on server computer update
US7703092B1 (en) * 2000-10-12 2010-04-20 International Business Machines Corporation Method, system, computer program product, and article of manufacture for installation and configuration of a computer program according to a stored configuration
US7032015B1 (en) * 2000-10-31 2006-04-18 General Electric Company System and method for integrating a power system over a network
US6950863B1 (en) 2000-12-21 2005-09-27 Cisco Technology, Inc. Method and system for verifying a software upgrade for a communication device
US20020083362A1 (en) * 2000-12-22 2002-06-27 Objectsoft Corp. System and method for providing unattended personality acquisition, self-recovery and remote maintenance to internet-based end-user devices
US6892216B2 (en) * 2001-02-13 2005-05-10 Snap-On Incorporated Common platform for use in automotive services
US6915418B2 (en) * 2001-03-16 2005-07-05 Phoenix Technologies Ltd. Interrupt 21h ROM client loader and payload delivery method
GB2374688B (en) 2001-04-19 2004-12-29 Ibm A method and system for distributing software features to a computer
US7356705B2 (en) * 2001-05-18 2008-04-08 Imprivata, Inc. Biometric authentication for remote initiation of actions and services
US7328007B2 (en) * 2001-07-26 2008-02-05 Kyocera Wireless Corp. System and method for organizing wireless communication device system software
US7027806B2 (en) * 2001-07-26 2006-04-11 Kyocera Wireless, Corp. System and method for field downloading a wireless communications device software code section
US7200389B2 (en) * 2001-07-26 2007-04-03 Kyocera Wireless Corp. Dynamic interface software for wireless communication devices
US7159214B2 (en) 2001-07-26 2007-01-02 Kyocera Wireless Corp. System and method for compacting field upgradeable wireless communication device software code sections
US7184793B2 (en) * 2001-07-26 2007-02-27 Kyocera Wireless Corp. System and method for over the air area code update
US7386846B2 (en) * 2001-07-26 2008-06-10 Kyocera Wireless Corp. System and method for the management of wireless communications device system software downloads in the field
US7143407B2 (en) * 2001-07-26 2006-11-28 Kyocera Wireless Corp. System and method for executing wireless communications device dynamic instruction sets
US7197302B2 (en) 2001-07-26 2007-03-27 Kyocera Wireless Corp. System and method for interchangeable modular hardware components for wireless communication devices
US9554268B2 (en) 2001-07-26 2017-01-24 Kyocera Corporation System and method for updating persistent data in a wireless communications device
US7184759B2 (en) * 2001-07-26 2007-02-27 Kyocera Wireless Corp. Modular software components for wireless communication devices
US6961537B2 (en) * 2001-08-10 2005-11-01 Kyocera Wireless Corp. System and method for peer-to-peer handset communication
US7254386B2 (en) 2001-08-10 2007-08-07 Kyocera Wireless Corp. System and method for improved security in handset reprovisioning and reprogramming
JP2003067208A (ja) * 2001-08-23 2003-03-07 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
US7150025B2 (en) * 2001-08-31 2006-12-12 Hewlett-Packard Development Company, L.P. System and method for providing hardware driver installation
US7007081B2 (en) * 2001-12-19 2006-02-28 Kabushiki Kaisha Toshiba Peripheral equipment of computer
GB2384066A (en) * 2002-01-09 2003-07-16 Hewlett Packard Co Installation of software components having multiple implementations
US6947772B2 (en) * 2002-01-31 2005-09-20 Qualcomm Incorporated System and method for providing messages on a wireless device connecting to an application server
US6996394B2 (en) * 2002-08-30 2006-02-07 Qualcomm Incorporated Server processing in providing messages for a wireless device connecting to a server
US7039398B2 (en) * 2002-08-30 2006-05-02 Qualcomm Incorporated Server processing of interactive screens for a wireless device
JP4408033B2 (ja) * 2002-09-24 2010-02-03 株式会社リコー 遠隔管理システム
US20040088700A1 (en) * 2002-10-31 2004-05-06 Chung-I Lee System and method for automatically installing software on client computers via a network
US7113249B2 (en) * 2003-01-06 2006-09-26 Dai Nippon Printing Co., Ltd. Monochrome liquid crystal display having higher spaces in pixel area than in peripheral area and production method therefor
US6901590B2 (en) * 2003-03-03 2005-05-31 Computer Associates Think, Inc. System and method for single transparent deployment flow
US7822962B2 (en) * 2003-05-05 2010-10-26 Peter Ar-Fu Lam Application software configured to work with two operating systems
US8095783B2 (en) 2003-05-12 2012-01-10 Phoenix Technologies Ltd. Media boot loader
US7814126B2 (en) * 2003-06-25 2010-10-12 Microsoft Corporation Using task sequences to manage devices
US20050034118A1 (en) * 2003-07-15 2005-02-10 Siemens Business Services Inc. Systems and methods for transferring information to a computer memory
CN100346298C (zh) * 2003-07-23 2007-10-31 华为技术有限公司 远程加载或升级程序的系统及其方法
US7287251B1 (en) * 2003-10-16 2007-10-23 Microsoft Corporation Source engine for transferring a resource to local secure cache
US20050132360A1 (en) * 2003-12-11 2005-06-16 Chu Simon C. Network boot sequence in the absence of a DHCP server
US7225325B2 (en) * 2003-12-30 2007-05-29 International Business Machines Corporation Customizing a computer system by using stored configuration parameters in a configuration mechanism
US7107443B2 (en) * 2003-12-30 2006-09-12 International Business Machines Corporation Method for customizing a computer system by using stored configuration parameters in a configurism mechanism
US20050144429A1 (en) * 2003-12-30 2005-06-30 International Business Machines Corporation System for customizing a computer system
US7206929B2 (en) 2003-12-30 2007-04-17 Lenovo (Singapore) Pte. Ltd. Method for customizing a computer system by using stored configuration parameters in a configurism mechanism
US7761794B1 (en) 2004-01-22 2010-07-20 Cisco Technology, Inc. Integrated audit and configuration techniques
US9357031B2 (en) 2004-06-03 2016-05-31 Microsoft Technology Licensing, Llc Applications as a service
US8812613B2 (en) 2004-06-03 2014-08-19 Maxsp Corporation Virtual application manager
US7664834B2 (en) * 2004-07-09 2010-02-16 Maxsp Corporation Distributed operating system management
US7853826B2 (en) * 2004-09-24 2010-12-14 Phoenix Technologies, Ltd. Operating system transfer and launch without performing post
EP1691304B1 (en) * 2005-02-09 2008-11-12 Sony United Kingdom Limited Method for displaying display information
US8151258B2 (en) * 2005-03-09 2012-04-03 Ipass Inc. Managing software patches
US20060277340A1 (en) * 2005-06-03 2006-12-07 Mar David B System and method for providing layered profiles
KR100694124B1 (ko) * 2005-06-08 2007-03-12 삼성전자주식회사 화상형성장치의 드라이버 갱신 방법 및 장치
US8291405B2 (en) * 2005-08-30 2012-10-16 Novell, Inc. Automatic dependency resolution by identifying similar machine profiles
US8811396B2 (en) 2006-05-24 2014-08-19 Maxsp Corporation System for and method of securing a network utilizing credentials
US8898319B2 (en) 2006-05-24 2014-11-25 Maxsp Corporation Applications and services as a bundle
US7984432B2 (en) * 2006-05-30 2011-07-19 Infineon Technologies Ag Method for patching a read-only memory and a data processing system comprising a means of patching the read-only memory based on patch contexts
US9317506B2 (en) 2006-09-22 2016-04-19 Microsoft Technology Licensing, Llc Accelerated data transfer using common prior data segments
US20080077622A1 (en) * 2006-09-22 2008-03-27 Keith Robert O Method of and apparatus for managing data utilizing configurable policies and schedules
US7844686B1 (en) 2006-12-21 2010-11-30 Maxsp Corporation Warm standby appliance
KR101196431B1 (ko) * 2007-03-27 2012-11-01 삼성전자주식회사 외부 저장장치 및 상기 외부 저장장치의 자동 실행방법
US8307239B1 (en) 2007-10-26 2012-11-06 Maxsp Corporation Disaster recovery appliance
US8175418B1 (en) 2007-10-26 2012-05-08 Maxsp Corporation Method of and system for enhanced data storage
US8645515B2 (en) 2007-10-26 2014-02-04 Maxsp Corporation Environment manager
US20110099547A1 (en) * 2009-10-28 2011-04-28 Gaurav Banga Approaches for installing software using bios
CN102236563A (zh) * 2010-04-28 2011-11-09 腾讯科技(深圳)有限公司 软件升级的方法及系统
US8578368B2 (en) * 2010-05-05 2013-11-05 Insyde Software Corporation Injecting a file from the bios into an operating system
US9069584B2 (en) * 2010-09-13 2015-06-30 Samsung Electronics Co., Ltd. Multi-platform application player
US9319406B2 (en) * 2011-07-12 2016-04-19 Apple Inc. System and method for linking pre-installed software to a user account on an online store
US20140344801A1 (en) * 2012-06-01 2014-11-20 Google Inc. Integrating a web application into an operating system
WO2015068518A1 (ja) * 2013-11-05 2015-05-14 株式会社リコー 通信装置、通信システム、通信方法および通信プログラム
JP2015103105A (ja) 2013-11-26 2015-06-04 株式会社リコー 通信装置、通信システム、及び通信プログラム
US10043185B2 (en) 2014-05-29 2018-08-07 Apple Inc. User interface for payments
US10216506B2 (en) * 2017-04-07 2019-02-26 International Business Machines Corporation Location-based automatic software application installation
US10360010B1 (en) * 2017-07-21 2019-07-23 Jpmorgan Chase Bank, N.A. Method and system for implementing an ATM management and software policy tool
AU2020239759B9 (en) * 2020-04-10 2022-09-22 Apple Inc. User interfaces for enabling an activity
DK202070633A1 (en) 2020-04-10 2021-11-12 Apple Inc User interfaces for enabling an activity
US20230401049A1 (en) * 2022-06-09 2023-12-14 Vmware, Inc. Multi-mode support for a launcher

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5146568A (en) 1988-09-06 1992-09-08 Digital Equipment Corporation Remote bootstrapping a node over communication link by initially requesting remote storage access program which emulates local disk to load other programs
US5121345A (en) 1988-11-03 1992-06-09 Lentz Stephen A System and method for protecting integrity of computer data and software
US5142680A (en) 1989-04-26 1992-08-25 Sun Microsystems, Inc. Method for loading an operating system through a network
US5131089A (en) 1989-06-12 1992-07-14 Grid Systems Corporation Solid state disk drive emulation
JPH03168828A (ja) 1989-11-29 1991-07-22 Canon Inc 情報処理装置
US5307497A (en) 1990-06-25 1994-04-26 International Business Machines Corp. Disk operating system loadable from read only memory using installable file system interface
US5214695A (en) 1990-07-23 1993-05-25 International Business Machines Corporation Apparatus and method for loading a system reference diskette image from a system partition in a personal computer system
US5128995A (en) 1990-07-23 1992-07-07 International Business Machines Corp. Apparatus and method for loading a system reference diskette image from a system partition in a personal computer system
EP0483865A3 (en) 1990-11-02 1992-09-02 Kabushiki Kaisha Toshiba Personal computer capable of changing boot priority
DE69130667T2 (de) 1990-12-06 1999-05-06 Tandberg Data Datenspeicherungssystem mit auswechselbaren Medien zum Laden eines Steuerprogrammes von den auswechselbaren Medien
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
US5452454A (en) 1991-12-10 1995-09-19 Digital Equipment Corporation Generic remote boot for networked workstations by creating local bootable code image
US5471674A (en) 1992-02-07 1995-11-28 Dell Usa, L.P. Computer system with plug-in override of system ROM
EP0559222A2 (en) 1992-03-06 1993-09-08 Microsoft Corporation Improved method for loading programs
US5325532A (en) 1992-09-25 1994-06-28 Compaq Computer Corporation Automatic development of operating system boot image
US5469573A (en) 1993-02-26 1995-11-21 Sytron Corporation Disk operating system backup and recovery system
US5463766A (en) 1993-03-22 1995-10-31 Dell Usa, L.P. System and method for loading diagnostics routines from disk
US5522076A (en) 1993-05-13 1996-05-28 Kabushiki Kaisha Toshiba Computer system having BIOS (basic input/output system)-ROM (Read Only Memory) writing function
US5444850A (en) 1993-08-04 1995-08-22 Trend Micro Devices Incorporated Method and apparatus for controlling network and workstation access prior to workstation boot
US5418918A (en) 1993-09-10 1995-05-23 Compaq Computer Corp. Scanning initial CD-ROM sectors for a boot record and executing said boot record to load and execute floppy disk image corresponding to the existing floppy drive
US5379431A (en) 1993-12-21 1995-01-03 Taligent, Inc. Boot framework architecture for dynamic staged initial program load
JPH07225725A (ja) * 1994-02-09 1995-08-22 Sharp Corp ダウンロード方法及びセンター通信システム
FR2718262B1 (fr) 1994-03-31 1996-05-24 Sgs Thomson Microelectronics Mémoire tampon à adressage modulo.
US5504905A (en) 1994-05-17 1996-04-02 International Business Machines Corporation Apparatus for communicating a change in system configuration in an information handling network
US5604890A (en) 1994-08-16 1997-02-18 Miller; Paul B. Coupling device for the switching of data lines between a data storage device controller and a plurality of bootable data storage devices
US5864698A (en) 1994-08-24 1999-01-26 Packard Bell Nec Disk based bios
JPH0887460A (ja) 1994-09-19 1996-04-02 Seiko Epson Corp インストールシステム
US5586327A (en) 1994-09-27 1996-12-17 International Business Machines Corporation Extended initialization for personal data processing systems
US5694583A (en) 1994-09-27 1997-12-02 International Business Machines Corporation BIOS emulation parameter preservation across computer bootstrapping
US5802363A (en) 1994-09-27 1998-09-01 International Business Machines Corporation Bios dynamic emulation of multiple diskettes from a single media
US5652868A (en) 1994-09-27 1997-07-29 International Business Machines Corporation Data processor having BIOS decryption of emulated media images
US5652886A (en) 1994-10-03 1997-07-29 United Technologies Corporation System for loading a boot program into an initially blank programmable memory of a microprocessor using state machine and serial bus
US5581740A (en) 1994-10-04 1996-12-03 Dell Usa, L.P. System for reading CD ROM data from hard disks
US5715456A (en) 1995-02-13 1998-02-03 International Business Machines Corporation Method and apparatus for booting a computer system without pre-installing an operating system
US6282712B1 (en) * 1995-03-10 2001-08-28 Microsoft Corporation Automatic software installation on heterogeneous networked computer systems
US5781758A (en) 1995-03-23 1998-07-14 Apple Computer, Inc. Software emulation system with reduced memory requirements
US5701477A (en) 1995-03-30 1997-12-23 Cirrus Logic, Inc. Method and apparatus for master boot record shadowing
US5832251A (en) 1995-06-02 1998-11-03 Nec Corporation Emulation device
US5748957A (en) 1995-06-27 1998-05-05 Klein; Dean A. Computer system usage determination based on hard disk drive activity
JP3088269B2 (ja) 1995-07-26 2000-09-18 日本電気通信システム株式会社 コンピュータネットワークシステム及びそのオペレーティングシステムの版数管理方法
US5913040A (en) * 1995-08-22 1999-06-15 Backweb Ltd. Method and apparatus for transmitting and displaying information between a remote network and a local computer
US5664194A (en) 1995-12-04 1997-09-02 Metricom, Inc. Method for autonomously transferring code to a computer without accessing local memory by the central processing unit
US5819063A (en) 1995-09-11 1998-10-06 International Business Machines Corporation Method and data processing system for emulating a program
US5845077A (en) * 1995-11-27 1998-12-01 Microsoft Corporation Method and system for identifying and obtaining computer software from a remote computer
US5754853A (en) 1995-12-15 1998-05-19 Dell Usa, Lp System for executing utility programs while preserving the state of a native operating system
US5790849A (en) 1995-12-22 1998-08-04 Intel Corporation Method and apparatus to permit the boot of a shared memory buffer architecture employing an arbitrary operating system
US5796984A (en) 1996-01-26 1998-08-18 Dell Usa, L.P. Operating system independent apparatus and method for eliminating peripheral device functions
US5805880A (en) 1996-01-26 1998-09-08 Dell Usa, Lp Operating system independent method for avoiding operating system security for operations performed by essential utilities
US5694600A (en) 1996-02-09 1997-12-02 Iomega Corporation Methods and apparatus for booting a computer having a removable media disk drive
US5732268A (en) 1996-02-26 1998-03-24 Award Software International Extended BIOS adapted to establish remote communication for diagnostics and repair
US6049671A (en) * 1996-04-18 2000-04-11 Microsoft Corporation Method for identifying and obtaining computer software from a network computer
US5870610A (en) * 1996-06-28 1999-02-09 Siemens Business Communication Systems, Inc. Autoconfigurable method and system having automated downloading
US5805882A (en) 1996-07-19 1998-09-08 Compaq Computer Corporation Computer system and method for replacing obsolete or corrupt boot code contained within reprogrammable memory with new boot code supplied from an external source through a data port
US5907679A (en) 1996-08-19 1999-05-25 Visiontek Hard drive upgrade system
JP3011105B2 (ja) * 1996-08-21 2000-02-21 日本電気株式会社 あふれ呼迂回システム
US5854905A (en) 1996-09-03 1998-12-29 Intel Corporation Extensible bios for boot support of devices on multiple hierarchical buses
US5764593A (en) 1996-12-04 1998-06-09 Keylabs, Inc. Method and system for the interception and control of the computer boot process
US6009274A (en) * 1996-12-13 1999-12-28 3Com Corporation Method and apparatus for automatically updating software components on end systems over a network
US5887164A (en) 1997-06-06 1999-03-23 National Instruments Corporation System and method for enabling a target computer to use storage resources of a host computer
US5901310A (en) 1997-09-11 1999-05-04 Ati Technologies, Inc. Storing firmware in compressed form
US6405309B1 (en) * 1999-06-18 2002-06-11 Phoenix Technologies Ltd. Method and apparatus for creating and deploying smaller Microsoft Windows applications for automatic configuration of a computing device

Also Published As

Publication number Publication date
CN1282023A (zh) 2001-01-31
TW543002B (en) 2003-07-21
US6578142B1 (en) 2003-06-10
JP2001051852A (ja) 2001-02-23
CN1211734C (zh) 2005-07-20

Similar Documents

Publication Publication Date Title
JP4861546B2 (ja) コンピュータにソフトウェアを自動的にインストールして組み込む方法および装置
US6373498B1 (en) Displaying images during boot-up and shutdown
JP4842421B2 (ja) アプリケーションを自動的にアンインストールまたは再インストールするための方法とシステム
US6405309B1 (en) Method and apparatus for creating and deploying smaller Microsoft Windows applications for automatic configuration of a computing device
US6622179B2 (en) Method and apparatus for providing content on a computer system based on usage profile
US6438750B1 (en) Determining loading time of an operating system
US6449682B1 (en) System and method for inserting one or more files onto mass storage
US6477642B1 (en) Method and apparatus for extending BIOS control of screen display beyond operating system boot process
US6734864B2 (en) Re-generating a displayed image
US6401202B1 (en) Multitasking during BIOS boot-up
US6791572B1 (en) Generating media output during BIOS boot-up
US6457122B1 (en) Fault tolerant process for the delivery of programs to writeable storage device utilizing pre-operating system software/firmware
US6594757B1 (en) Remote BIOS upgrade of an appliance server by rebooting from updated BIOS that has been downloaded into service partition before flashing programmable ROM
CN1307544C (zh) 通过后加载镜像布置软件的方法与装置
US7363482B2 (en) Method and apparatus to support remote configuration code
US6715043B1 (en) Method and system for providing memory-based device emulation
JP5684962B2 (ja) システム・ファームウェアから記憶装置にアプリケーション・プログラムを転送するための方法およびシステム
US20080295110A1 (en) Framework for Startup of Local Instance of Remote Application
JP2009524121A (ja) システム動作前の動的広告板サービス
JP5170604B2 (ja) 不揮発性メモリに格納された画像を更新するための装置および方法
US20090144722A1 (en) Automatic full install upgrade of a network appliance
JP2001056719A (ja) Biosブートアップ中にメディア出力を生成する方法
TW550509B (en) Method and system for providing memory-based device emulation
US20030046372A1 (en) System, apparatus, and method to configure a server in the field

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070612

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100720

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101020

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101221

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110317

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110531

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110908

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110913

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

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

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20141111

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees