JP2013520744A - 最小ブートイメージの生成方法及びその装置 - Google Patents

最小ブートイメージの生成方法及びその装置 Download PDF

Info

Publication number
JP2013520744A
JP2013520744A JP2012554941A JP2012554941A JP2013520744A JP 2013520744 A JP2013520744 A JP 2013520744A JP 2012554941 A JP2012554941 A JP 2012554941A JP 2012554941 A JP2012554941 A JP 2012554941A JP 2013520744 A JP2013520744 A JP 2013520744A
Authority
JP
Japan
Prior art keywords
boot image
data
operating system
volatile memory
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012554941A
Other languages
English (en)
Inventor
クン−フン・バク
ジン−ヘ・チェ
ス−チャン・ウ
サエ−ナ・キム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2013520744A publication Critical patent/JP2013520744A/ja
Pending 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/4418Suspend and resume; Hibernate and awake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • 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
    • 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/4405Initialisation of multiprocessor systems
    • 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/4416Network booting; Remote initial program loading [RIPL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Storing Facsimile Image Data (AREA)

Abstract

アプリケーションの実行のためのコードを除外してブートイメージを生成する方法及びその装置、このようなブートイメージを利用してデバイスをブーティングする方法及びその装置が開示される。

Description

本発明は、ブートイメージを生成する方法及びその装置に係り、さらに詳細には、デバイスのブーティングに必要な必須要素を含むブートイメージを生成する方法及びその装置に関する。
デバイスに電源をつけて、オペレーティングシステム(OS:operating system)がデバイスのメモリにロード(load)され、デバイスを使用可能な状態にする過程をブーティング(booting)という。オペレーティングシステムが、デバイスのCPU(central processing unit)、メモリなどのコンピュータ資源を制御し、オペレーティングシステムに基づいて、所定のアプリケーションが実行される状態にした後、多様なサービス・アプリケーション(service application)が実行され、デバイスが作動できるようにする過程をいう。一般的に、オペレーティングシステムをメモリにロードし、入出力デバイスと同じ周辺デバイスを設定し、サービス・アプリケーションを実行し、デバイスを使用可能な状態にする過程では、多くの時間が消耗され、このようなブーティングに消耗される時間は、ユーザの不満足を招く可能性が高い。
本発明が解決しようとする技術的課題は、早いブーティングのためのブートイメージを生成する方法及びその装置を提供するところにあり、前記ブートイメージに基づいて、ブーティングを行う方法及びその装置を提供するものである。また、前記方法を実行するためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供するものである。
前記技術的課題を解決するための本発明の一実施形態によるブートイメージを生成する方法は、所定時点でデバイスで実行されているあらゆるアプリケーションの実行のためのコード(code)を、前記デバイスの揮発性メモリから消去する段階と、前記あらゆるアプリケーションの実行のためのデータを不揮発性メモリに保存する段階と、前記時点で、前記デバイスのオペレーティングシステム(OS)の実行のためのコード及び前記オペレーティングシステムの実行のためのデータのうち少なくとも一つを含むブートイメージ(boot image)を生成する段階と、を含む。
本発明の他の実施形態によれば、前記アプリケーションの実行のためのコードは、前記アプリケーションの実行のために、前記不揮発性メモリで、前記揮発性メモリにコピーされたコードであり、前記オペレーティングシステムの実行のためのデータは、前記不揮発性メモリで、前記アプリケーション実行のためのコード及び前記アプリケーションの実行のためのデータのうち少なくとも一つが保存された位置についての情報をさらに含む。
本発明のさらに他の実施形態によれば、前記ブートイメージは、前記時点で、前記デバイスに装着された少なくとも1つの周辺デバイス(peripheral device)の状態についての情報をさらに含む。
本発明のさらに他の実施形態によれば、前記ブートイメージは、前記時点で実行中であるプロセスと関連したファイルについての情報をさらに含む。
本発明のさらに他の実施形態によれば、前記ブートイメージは、前記時点で、前記デバイスに表示される画面についての情報をさらに含む。
本発明のさらに他の実施形態によれば、前記ブートイメージは、前記ブートイメージで、前記画面についての情報が保存された位置についての情報をさらに含む。
本発明のさらに他の実施形態によれば、前記ブートイメージを生成する方法は、前記揮発性メモリに保存されているブートイメージを不揮発性メモリに保存する段階をさらに含む。
本発明のさらに他の実施形態によれば、前記時点は、前記デバイスで、前記オペレーティングシステム及び前記デバイスの作動のために実行される少なくとも1つのサービス・アプリケーションを除外した他のアプリケーションは実行されていないアイドル(idle)状態である時点であることを特徴とする。
本発明のさらに他の実施形態によれば、前記ブートイメージに含まれた内容の変更が生じれば、前記ブートイメージを再び生成する段階をさらに含む。
前記技術的課題を解決するための本発明の一実施形態によるブーティング方法は、所定時点でデバイスで実行されているあらゆるアプリケーションの実行のためのコードを前記デバイスの揮発性メモリから消去し、前記あらゆるアプリケーションの実行のためのデータを不揮発性メモリに保存し、前記時点で、前記デバイスのオペレーティングシステムの実行のためのコード及び前記オペレーティングシステムの実行のためのデータのうち少なくとも一つを含むように生成されたブートイメージを、揮発性メモリにロードする段階と、前記ロードされたブートイメージに基づいて、前記デバイスの状態を、前記時点の状態に復元する段階と、を含む。
前記技術的課題を解決するための本発明の一実施形態によるブートイメージを生成する装置は、所定時点でデバイスで実行されているあらゆるアプリケーションの実行のためのコードを、前記デバイスの揮発性メモリから消去し、前記あらゆるアプリケーションの実行のためのデータを不揮発性メモリに保存するスワッピング部と、前記時点で、前記デバイスのオペレーティングシステムの実行のためのコード及び前記オペレーティングシステムの実行のためのデータのうち少なくとも一つを含むブートイメージを生成するブートイメージ生成部と、を含む。
前記技術的課題を解決するための本発明の一実施形態によるブーティング装置は、所定時点でデバイスで実行されているあらゆるアプリケーションの実行のためのコードを、前記デバイスの揮発性メモリから消去し、前記あらゆるアプリケーションの実行のためのデータを不揮発性メモリに保存し、前記時点で、前記デバイスのオペレーティングシステムの実行のためのコード及び前記オペレーティングシステムの実行のためのデータのうち少なくとも一つを含むように生成されたブートイメージを揮発性メモリにロードするローディング部と、前記ロードされたブートイメージに基づいて、前記デバイスの状態を、前記時点の状態に復元するブーティング部と、を含む。
前記技術的課題を解決するために、本発明の一実施形態は、前記ブートイメージ生成方法及びブーティング方法を実行するためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供する。
本発明によれば、ブーティングに必要な必須要素だけを含む小サイズのブートイメージを生成し、生成されたブートイメージを利用し、速い速度でエラーなしにブーティングを行うことができる。
本発明の一実施形態によるブートイメージ生成装置及びブーティング装置を含むデバイスを図示する図面である。 本発明の一実施形態によるブートイメージ生成装置を図示する図面である。 本発明の一実施形態によるブートイメージを生成するための揮発性メモリの制御方法を説明するための図面である。 本発明の一実施形態によるブートイメージを生成するための揮発性メモリの制御方法を説明するための図面である。 本発明の一実施形態によるブートイメージを図示する図面である。 本発明の一実施形態によるブートイメージを図示する図面である。 本発明の一実施形態によるブーティング装置を図示する図面である。 本発明の一実施形態によるブートイメージを生成する方法について説明するためのフローチャートである。 本発明の他の実施形態によるブートイメージを生成する方法を図示するフローチャートである。 本発明の一実施形態によるブーティング方法について説明するためのフローチャートである。 本発明の一実施形態によるブートイメージの生成時に実行中であったプロセスと関連したファイルを削除または修正する方法を図示するフローチャートである。
以下、図面を参照しつつ、本発明の望ましい実施形態について詳細に説明する。
図1は、本発明の一実施形態によるブートイメージ生成装置及びブーティング装置を含むデバイスを図示している。
図1を参照すれば、本発明の一実施形態によるデバイス100は、CPU(central processing unit)110、揮発性メモリ120、ブートイメージ生成装置130、ブーティング装置140、周辺デバイス150,152、及び不揮発性メモリ160を含む。
CPU 110は、揮発性メモリ120及び不揮発性メモリ160に保存されているデータを利用し、オペレーティングシステム(OS)の実行及びアプリケーションの実行のためのコードを処理する。
揮発性メモリ120は、実行されているオペレーティングシステム及びアプリケーションと関連したコード及びデータを、不揮発性メモリ160から読み取ってロードすることにより、CPU 110が、オペレーティングシステム及びアプリケーションと関連したコード及びデータにアクセスできるようにする。揮発性メモリ120は、メインメモリであって、RAM(random-access memory)であってもよい。
ブートイメージ生成装置130は、デバイス100のブートイメージを生成する。特定時点のデバイス100の状態についての情報を抽出し、抽出された状態についての情報に基づいて、ブートイメージを生成する。
ブートイメージとは、デバイス100を特定時点の状態に復元するために必要なあらゆる情報を含むデータであり、1つのファイルとして生成されもする。デバイス100の状態についての情報は、特定時点で、揮発性メモリ120に保存されているコード、データ及び周辺デバイス150,152の状態についての情報を含んでもよい。本発明の一実施形態によるブートイメージ及びブートイメージを生成する方法については、図3及び図4を参照して詳細に説明する。
ブーティング装置140は、ブートイメージ生成装置130で生成されたブートイメージに基づいて、デバイス100のブーティングを行う。ブートイメージが生成された時点でのデバイス100の状態をブートイメージに基づいて復元する。ブートイメージが生成された時点で揮発性メモリ120にロードされているコード及びデータを復元し、周辺デバイス150,152の状態を復元することができる。
周辺デバイス150,152は、特定機能を行うために、デバイス100に装着されたデバイスであり、デバイス100に装着されたグラフィック・モジュール(例えば、コンピュータに装着されたグラフィックカード)、外部デバイスとの通信のための通信モジュールなどがこれに該当する。
不揮発性メモリ160は、デバイス100のオペレーティングシステム及びアプリケーションの実行のためのコード及びデータを保存する装置であり、ハードディスクドライブ(hard disk drive)、メモリカードのように、揮発性メモリ120とは異なり、デバイス100の電源が消えても保存されたデータが消去されないメモリデバイスである。
図2は、本発明の一実施形態によるブートイメージ生成装置を図示している。
図2を参照すれば、本発明の一実施形態によるブートイメージ生成装置130は、スワッピング部210及びブートイメージ生成部220を含む。スワッピング部210は、ブートイメージを生成する時点で、揮発性メモリ120に保存されているコード及びデータを消去したり、不揮発性メモリに保存する。
揮発性メモリ120には、デバイス100のオペレーティングシステム及びアプリケーションと関連したコード及びデータが保存されている。コードは、オペレーティングシステムまたはアプリケーションの実行のために、CPU 100によって解析されて処理されるビット列(bit stream)を意味し、データは、オペレーティングシステムまたはアプリケーションを実行する最中に、オペレーティングシステムまたはアプリケーションによって参照されたり、生成されるビット列を意味する。データは、オペレーティングシステムまたはアプリケーションの実行のために、不揮発性メモリ160から揮発性メモリ120にロードされもする。
本発明によるブートイメージ生成装置130は、オペレーティングシステムと関連した情報を有し、ブーティングに必要な必須要素だけを抽出してブートイメージを生成するが、スワッピング部210は、ブーティングに必要な必須要素を除外した残りのコード及びデータを、揮発性メモリ120から消去する。図3を参照して詳細に説明する。
ブートイメージが生成される時点は、デバイス100の作動のためのオペレーティングシステム及び少なくとも1つのサービス・アプリケーションを除外した他のアプリケーションは駆動にならないアイドル(idle)状態である時点である。サービス・アプリケーションは、オペレーティングシステム以外に、デバイスの作動のために必須的に実行されるアプリケーションを意味する。例えば、スマートホンの場合には、通信のためのアプリケーション、ディスプレイ装置を制御するためのアプリケーションなどがこれに該当しうる。
しかし、オペレーティングシステム及びサービス・アプリケーション以外に、他のアプリケーションも駆動している時点で、ブーティングイメージを生成できるということは、本発明が属する技術分野で当業者であるならば、容易に分かるであろう。
図3Aは、本発明の一実施形態によるブートイメージを生成するための揮発性メモリ120の制御方法について説明するための図面である。
図3Aを参照すれば、ブートイメージを生成する時点で、揮発性メモリ120には、オペレーティングシステムと関連した情報(OSコード,OSデータ)310、アプリケーション・コード320、アプリケーション・データ330及びキャッシュデータ340がロードされている。
オペレーティングシステムと関連した情報310は、オペレーティングシステムの実行のためのコード(OSコード)及びオペレーティングシステムの実行のためのデータ(OSデータ)を含む。
オペレーティングシステムの実行のためのコードは、オペレーティングシステムを維持するために基本的に実行されるコードを含み、オペレーティングシステムの実行のためのデータは、オペレーティングシステムを実行している最中に派生して参照されるデータ及びデータ構造を含んでもよい。オペレーティングシステムの実行のためのデータは、オペレーティングシステムの実行のために、不揮発性メモリ160からロードされるデータであってもよい。
オペレーティングシステムの実行のためのデータは、ページテーブル(page table)、オペレーティングシステムの実行のために利用されるページ情報(page structure)、アプリケーションに割り当てられる作業の構造(task structure)、メモリ構造(memory structure)などについての情報を含んでもよい。
本発明によるブートイメージ300に基づいてデバイスを復元するとき、アプリケーションの実行状態を復元するために、オペレーティングシステムの実行のためのデータは、アプリケーションの実行のためのコード及びアプリケーションの実行のためのデータが保存されている不揮発性メモリ160での位置についての情報を含んでもよい。
アプリケーション・コード320は、アプリケーションの実行のためのコードであってもよい。一般的に、デバイス100で、所定のアプリケーションが駆動されれば、迅速なアクセスのために、アプリケーションの実行のためのコードを、揮発性メモリ120にロードし、CPU 110は、揮発性メモリ120にロードされたコードにアクセスする。アプリケーション・コード320は、このようなアプリケーションの実行のために、不揮発性メモリ160から揮発性メモリ120にコピーされたコードであってもよい。
アプリケーション・データ330は、アプリケーションの実行のためのデータであってもよい。アプリケーションを実行することによって生成され、実行中であるアプリケーションが参照するあらゆるデータ及びデータ構造がアプリケーションの実行のためのデータであってもよい。オペレーティングシステムの実行のためのデータと同様に、アプリケーションの実行のためのデータも、不揮発性メモリ160からロードされたデータであってもよい。
キャッシュデータ340は、実行中であるオペレーティングシステムまたはアプリケーションが、早くアクセスされるように、不揮発性メモリから揮発性メモリにロードされたデータであってもよい。
スワッピング部210は、揮発性メモリ120に保存されているデータのうち、アプリケーション・コード320及びキャッシュデータ340を消去する。アプリケーション・コード320は、不揮発性メモリ160に保存されているアプリケーションの実行のためのコードをそのままコピーしたものであるので、消去しても、システム復元時に、不揮発性メモリ160から再びロードされる。
また、キャッシュデータ340も、オペレーティングシステムまたはアプリケーションが、早くアクセスすることができるように、臨時で生成されるデータであり、オペレーティングシステムまたはアプリケーションは、再び実行されれば、さらに生成されるので、揮発性メモリ120から消去される。
特定時点の揮発性メモリ120にロードされているアプリケーション・コード320を不揮発性メモリ160からコピーして復元するためには、アプリケーション・コード320が不揮発性メモリ160のどの位置に保存されているか知らなければならない。従って、前述のオペレーティングシステムの実行のためのデータは、不揮発性メモリ160で、アプリケーション・コード320がどんな位置に保存されているかを示す情報を含んでいる。デバイス100の復元時には、この情報を参照し、アプリケーション・コード320を再び不揮発性メモリ160からロードすることができる。
スワッピング部110は、揮発性メモリ120にロードされているデータのうち、オペレーティングシステムと関連した情報310及びアプリケーション・データ330を不揮発性メモリ160に保存する。オペレーティングシステムと関連した情報310は、デバイス100の復元に必須なデータであるから、ブートイメージ300に含めて保存し、アプリケーション・データ330は、ブートイメージ300と別途に保存されてもよい。アプリケーション・データ330は、オペレーティングシステムの復元後、アプリケーションを再び実行するときに必要なデータであるから、補助ブートイメージとして、ブートイメージ330と別途に保存することができる。
図3Bは、本発明の他の実施形態によるブートイメージを生成するための揮発性メモリ120の制御方法について説明するための図面である。
図3Bを参照すれば、アプリケーション・データ330のうち一部は、ブートイメージ300に含まれてもよい。アプリケーション・データ330のうち、オペレーティングシステムまたはアプリケーションによって頻繁にアクセスされるデータは、デバイス100を復元するとき、早く復元されねばならないので、ブートイメージ302に、アクティブ・アプリケーション・データとして含める。
オペレーティングシステムは、所定のアルゴリズムを介して、アプリケーション・データ330において、頻繁にアクセスされるデータを決定することができる。例えば、LRU(least recently used)アルゴリズムを介して、アプリケーション・データ330のうち、最も最近にアクセスされたデータを決定したり、ブートイメージが生成される以前に、所定基準時間の間データがアクセスされた回数をカウントし、頻繁にアクセスされるデータを判断することができる。
スワッピング部110は、このような所定のアルゴリズムによって決定された頻繁にアクセスされるデータを除外した残りのデータをアプリケーション・データ330から分離し、分離されたデータを不揮発性メモリ160に保存する。
再び図2を参照すれば、ブートイメージ生成部220は、スワッピング部210の消去及び保存の結果に基づいて、デバイス100のブーティングのためのブートイメージを生成する。図4A及び図4Bを参照して詳細に説明する。
図4Aは、本発明の一実施形態によるブートイメージを図示している。
図4Aを参照すれば、本発明の一実施形態によるブートイメージ300は、最小ブート情報410、デバイス状態情報420、プロセスファイル情報430及びスクリーン情報保存位置440を含んでもよい。
最小ブート情報410は、前述のオペレーティングシステムと関連した情報310を含む。前述のように、オペレーティングシステムと関連した情報310は、ブートイメージの生成時、揮発性メモリ120にロードされているオペレーティングシステムの実行のためのコード及びオペレーティングシステムの実行のためのデータを含んでもよい。
また、最小ブート情報410は、ブートイメージの生成時、デバイス100に表示された画面についての情報を含んでもよいが、デバイス100のディスプレイ装置に表示された画面についての情報を最小ブート情報410に含めることによって、ブートイメージを利用してブーティングしたとき、ユーザに表示される画面を速い速度で復元することができる。
デバイス状態情報420は、ブートイメージ300を生成する時点での、周辺デバイス150,152の状態についての情報を含む。周辺デバイス150,152を中止させた後、周辺デバイス150,152の中止された状態についての情報として、ブートイメージ300に含まれてもよい。
プロセスファイル情報430は、ブートイメージ300の生成時での、デバイス100で実行中であるプロセスと関連したファイルについての情報430を含む。ブートイメージ300に基づいてシステムをブーティングしたとき、ブートイメージ300の生成時に実行中であるプロセスと関連したファイルが、デバイス100に存在しないならば、システムエラーが発生しうる。
例えば、ブートイメージ300生成時に実行中であるプロセスとファイルAが関連しており、ブートイメージ300生成後、ファイルAがデバイス100から削除されたとすれば、ブートイメージ300に基づいて、再びデバイス100をブーティングすれば、ブートイメージ300生成時のプロセスをそのまま復元し、再び遂行されない。従って、ブートイメージ300に実行中であるプロセスと関連したファイルについての情報430を保存し、デバイス100のユーザが、プロセスと関連したファイルを削除または修正することを不可能にする。
スクリーン情報保存位置440についての情報は、デバイス100に表示された画面についての情報の保存位置についての情報を含む。前述のように、デバイス100がブーティングされたときに表示される画面を速い速度で復元するために、ブートイメージ生成する時点で、デバイス100の画面についての情報を、最小ブート情報410に含める。しかし、ユーザが、ブーティングされたときに表示される画面を変更する場合(例えば、コンピュータのデスクトップ、またはスマートホンのデスクトップを変更)、ブートイメージ300が変更されなければ、さらなるブーティング時、変更された画面がデバイス100に表示されない。
従って、ユーザが画面を変更するたびにブートイメージ300を再び生成してこそ、ユーザが変更した画面が、次のブーティング時にも、デバイス100に表示される。ところで、画面を除外した残りの状態をブーティングするたびに続けて同一に復元するためには、一度生成されたブートイメージを反復して使用しなければならない。従って、ブートイメージ300で、画面についての情報だけ変更せねばならない。このために、ブートイメージ300は、デバイス100の画面についての情報が保存されている位置についての情報440を別途に含む。
図4Bは、本発明の他の実施形態によるブートイメージ302を図示している。
図4Bを参照すれば、ブートイメージ302は、アクティブ・アプリケーション・データ450をさらに含む。図3Bと関連して説明したように、アプリケーション・データ300において、頻繁にアクセスされるデータが、ブートイメージ302に含まれる。最小ブート情報410、デバイス状態情報420、プロセスファイル情報430及びスクリーン情報保存位置440は、図4Aに図示されたブートイメージ300と同一である。
ブートイメージ生成部220は、図4Aまたは図4Bに図示されたようなブートイメージ300,302をまず揮発性メモリ120に生成した後、不揮発性メモリ160に保存することができる。ブートイメージ300,302を生成するためには、あらゆるプロセス及び周辺デバイスを中止させなければならないが、このとき、中止される周辺デバイスには、不揮発性メモリ160に対するアクセスを制御するデバイスも含まれる。従って、デバイスを中止させた状態で、揮発性メモリ120にブートイメージ300,302を生成し、ブートイメージ300,302の生成が完了すれば、中止を解除し、ブートイメージ300,302を、不揮発性メモリ160にコピーする。図7を参照して詳細に後述する。
図3A、図3B、図4A及び図4Bと関連して説明したように、本発明によるブートイメージ生成装置130は、揮発性メモリ120にロードされているあらゆるアプリケーション・コード320を消去し、オペレーティングシステムと関連した最小限の情報310だけ含むように、ブートイメージ300,302を生成する。これにより、ブートイメージ300,302のサイズは小さく、小サイズのブートイメージ300,302に基づいて、速い速度でデバイス100の状態を復元することができるが、このようなブートイメージ生成方法及びブーティング方法を、「全体ページレクレーム(full-page reclaim)」技法と命名することができる。
続けて同じ状態でデバイス100を復元するためには、前述のように、ブートイメージを反復して使用することが望ましい。しかし、ブートイメージ300,302に含まれた内容に変更が生じ、ブートイメージ300,302の再生成(regenerate)が不回避である場合には、ブートイメージ生成装置130は、前述のブートイメージ生成過程を再び遂行し、ブートイメージを再生成する。
前述の画面の変更は、ブートイメージに含まれたスクリーン情報保存位置440を利用し、ブートイメージを再生成することなしに、ブートイメージに変更を反映することができる。しかし、オペレーティングシステムのアップデートやアプリケーションのアップデートによって、ブートイメージ生成時のコード及び/またはデータが変更される場合には、ブートイメージの再生成が不回避である。従って、このような場合に、ブートイメージ生成装置130は、ブートイメージ300,302に保存された内容に変更が生じ、ブートイメージの修正を介して変更を反映することができないので、ブートイメージ300,302を再生成する。
図5は、本発明の一実施形態によるブーティング装置を図示している。
図5を参照すれば、本発明の一実施形態によるブーティング装置140は、ローディング部510及びブーティング部520を含む。
ローディング部510は、図3A、図3B、図4A及び図4Bに図示されたように生成されたブートイメージ300,302を揮発性メモリ120にロードする。不揮発性メモリ160に保存されているブートイメージ300,302を読み取り、揮発性メモリ120にロードする。
復元部520は、ローディング部510によってローディングされたブートイメージ300,302に基づいて、デバイス100の状態を復元する。デバイス100の揮発性メモリ120にロードされている最小ブート情報410を基にオペレーティングシステムを復元する。
オペレーティングシステムが復元されれば、プロセスが再び実行され、プロセスにおいて、ブートイメージ生成時に実行中であったアプリケーションと関連したプロセスは、アプリケーション・コード320が揮発性メモリ120にロードされておらず、エラー(例えば、ページフォールト(page fault))が生じる。このとき、不揮発性メモリ160で、アプリケーション・コード320が保存された不揮発性メモリ160の位置についての情報を参照し、アプリケーション・コード320を再び揮発性メモリ120にロードしてプロセスを続ける。アプリケーション・コード320が保存された位置についての情報は、前述のように、オペレーティングシステムと関連した情報310に含まれている。アプリケーション・データ330もまた、アプリケーション・コード320が復元される方式と同様に、必要によって、不揮発性メモリ160で、アプリケーション・データ330が保存された位置についての情報を参照して復元される。補助ブートイメージとして、不揮発性メモリ160に保存されているアプリケーション・データ330を復元する。
アプリケーション・データにおいて、頻繁にアクセスされるデータがアクティブ・アプリケーション・データ450として、ブートイメージ302に含まれている場合には、アクティブ・アプリケーション・データ450をまず復元し、補助ブートイメージに含まれている残りのアプリケーション・データを復元する。
ブーティング後の最初画面は、最小ブート情報410に含まれているデバイスの画面についての情報に基づいて表示されてもよい。
周辺デバイス150,152の状態も、ブートイメージ300,302のデバイス状態情報420に基づいて復元する。周辺デバイス150,152のレジスタ(例えば、デバイスの内部あるいは外部に位置したレジスタ)を、ブートイメージに保存された状態についての情報に基づいて復元する。
図6は、本発明の一実施形態によるブートイメージ300,302を生成する方法について説明するためのフローチャートである。
図6を参照すれば、段階610で、ブートイメージ生成装置130は、ブートイメージの生成を始める時点で、デバイス100で駆動しているあらゆるアプリケーションの実行のためのコード、すなわち、アプリケーション・コード320を揮発性メモリ120から消去する。図3と関連して説明したように、アプリケーションの実行のためのコードは、不揮発性メモリ160から再びコピーすることができるので、ブートイメージを生成するのに不要である。従って、揮発性メモリ120から消去する。キャッシュデータ340も、アプリケーション・コード320と共に、揮発性メモリ120から消去されることは、前述の通りである。
段階620で、ブートイメージ生成装置130は、ブートイメージ生成時に実行中であるあらゆるアプリケーションの実行のためのデータ、すなわち、アプリケーション・データ330を不揮発性メモリ160に保存する。アプリケーション・データ330の全部をブートイメージ300に含めずに、別途の補助ブートイメージとして不揮発性メモリ160に保存することができる。また、アプリケーション・データ330において、頻繁にアクセスされるデータは、ブートイメージ302に含め、残りのデータを補助ブートイメージとして、不揮発性メモリ160に保存することができる。
段階630で、ブートイメージ生成装置130は、段階610の消去及び段階620の保存が終わり、揮発性メモリに残っているデバイス100のオペレーティングシステムと関連した情報に基づいて、ブートイメージ300,302を生成する。ブートイメージ300,302は、オペレーティングシステムと関連した情報310以外に、他の情報も含まれることは、図4を参照して説明した。
オペレーティングシステムのアップデートやアプリケーションのアップデートによって、ブートイメージ生成時のコード及び/またはデータが変更される場合には、ブートイメージの再生成が不回避であるので、ブートイメージ生成装置130は、段階610ないし630を再び遂行し、ブートイメージ300,302を再生成する。
図7は、本発明の他の実施形態によるブートイメージを生成する方法を図示している。
図7を参照すれば、段階710で、ブートイメージ生成装置130は、特定時点で実行中のあるあらゆるプロセスを中止する。
段階720で、ブートイメージ生成装置130は、全体ページをリクレーム(reclaim)する。図3と関連して説明したように、ブートイメージ300の生成時点で、実行されているあらゆるアプリケーションの実行のためのコード、すなわち、アプリケーション・コード320を揮発性メモリ120から消去し、キャッシュデータ340も消去する。また、アプリケーション・データ330を不揮発性メモリ160に保存する。その後、オペレーティングシステムと関連した情報310を含むブートイメージ300,302を、揮発性メモリ120に生成する。オペレーティングシステムと関連した情報310、及びデバイス100の画面についての情報を含む最小ブート情報410を含むブートイメージ300,302を生成することができる。アプリケーション・データ330において、頻繁にアクセスされるデータは、ブートイメージ302に含まれてもよいことは説明した。
段階730で、周辺デバイスをいずれも中止させれば、不揮発性メモリ160に対するアクセスを制御する入出力制御装置も、作動が中止されるので、不揮発性メモリ160にアクセスすることができない。従って、ブートイメージ300,302を、まず揮発性メモリ120に生成しておき、ブートイメージ300,302に、図4Aまたは図4Bに図示されたようなあらゆる情報が保存されれば、段階770で、ブートイメージ300,302を不揮発性メモリ160に保存する。
段階730で、ブートイメージ生成装置130は、デバイス100に装着された周辺デバイス150,152をいずれも中止させる。
段階740で、ブートイメージ生成装置130は、中止された周辺デバイス150,152の状態についての情報420を、ブートイメージ300,302に保存する。中止された周辺デバイス150,152のレジスタに保存されているデータを、周辺デバイス150,152の状態についての情報420として、ブートイメージ300,302に保存する。
段階750で、ブートイメージ生成装置130は、実行中であったプロセスと関連したファイルについての情報を保存する。図4A及び図4Bを参照して説明したように、ブートイメージ300,302の生成時に実行中であったプロセスと関連したファイルが、ブートイメージ300,302の生成後、デバイス100から削除されれば、ブートイメージ300によって、ブーティング後にプロセスを正しく復元することができず、システムエラーが発生しうる。従って、段階750で、ブートイメージ生成装置130は、段階710で中止されたプロセス、すなわち、ブートイメージ300,302の生成を始めるときに実行中であったプロセスと関連したファイルについての情報を、ブートイメージ300,302に保存する。
段階760で、ブートイメージ生成装置130は、ブートイメージ300,302で、画面についての情報が保存された位置情報を保存するための領域を割り当てる。ブートイメージ300,302に保存される最小ブート情報410は、オペレーティングシステムと関連した情報310及びブーティング後にデバイス100に表示される画面についての情報を含んでいる。また、図4A及び図4Bに図示されたように、ブートイメージ300,302は、画面についての情報が保存された位置情報440を含むが、段階760で、ブートイメージ生成装置130は、画面についての情報が保存された位置情報440を保存するための領域を、ブートイメージ300,302の内部に割り当てる。
段階770で、ブートイメージ生成装置130は、段階710ないし760によって生成されたブートイメージ300,302を、不揮発性メモリ160に保存する。不揮発性メモリ160に対するアクセスを制御する周辺デバイスを再び作動させ、揮発性メモリに保存されているブートイメージ300,302を、不揮発性メモリ160に保存する。
段階780で、ブートイメージ生成部130は、画面についての情報が、不揮発性メモリ160のどの位置に保存されているかを判断し、位置情報を、ブートイメージ300,302に保存する。段階770で、ブートイメージ300が、不揮発性メモリ160に移動したので、不揮発性メモリ160のどの位置に、画面についての情報が保存されているかが分かる。従って、この位置についての情報を、ブートイメージ300,302内のスクリーン情報保存位置440として保存する。
ブートイメージ300,302の生成後、ユーザがブーティング時に表示される画面を変更すれば、ブートイメージ300,302の画面についての情報が保存された位置についての情報を参照し、画面についての情報を変更することができる。これにより、ブートイメージ300,302の全体を再び生成する必要がなくなり、最小ブート情報410に含まれている画面についての情報だけ変更される。
しかし、オペレーティングシステムのアップデートやアプリケーションのアップデートによって、ブートイメージ生成時のコード及び/またはデータが変更される場合には、段階710ないし780を再び遂行し、ブートイメージ300,302を再生成して保存する。
図8は、本発明の一実施形態によるブーティング方法について説明するためのフローチャートである。
図8を参照すれば、段階810で、本発明の一実施形態によるブーティング装置140は、不揮発性メモリ160に保存されているブートイメージ300,302を、揮発性メモリ120にロードする。デバイス100のハードウェアを、不揮発性メモリ120にアクセスすることができる最小限の状態に初期化し、不揮発性メモリ160に、ブートイメージ300,302が存在するか否かを判断する。ブートイメージ300,302が存在しなければ、ブートイメージ300,302を利用しない一般的なブーティングを行う。しかし、ブートイメージ300,302が存在すれば、ブートイメージ300,302を、ローディング部510を利用し、不揮発性メモリ160で読み取り、揮発性メモリ120にロードする。
段階820で、ブーティング装置140は、段階810でロードされたブートイメージ300,302に基づいて、デバイスの状態を復元する。
デバイス100の揮発性メモリ120にロードされている最小ブート情報410を基に、オペレーティングシステムを復元する。
オペレーティングシステムの復元が完了すれば、周辺デバイス150,152の状態も、ブートイメージ300,302のデバイス状態情報420に基づいて復元する。周辺デバイス150,152のレジスタを、ブートイメージに保存された状態についての情報に基づいて復元する。その後、ブートイメージ300の生成時に中止されたプロセスを再び実行する。このとき、アプリケーション・データ330も、必要によって、揮発性メモリ120にロードする。アプリケーション・データ330において、頻繁にアクセスされるデータは、ブートイメージ302に含まれている。
図9は、本発明の一実施形態によるブートイメージの生成時に実行中であったプロセスと関連したファイルを、削除または修正する方法を図示している。
図9を参照すれば、段階910で、デバイス100のユーザは、ブートイメージ300,302によって、デバイス100をブーティングした後、所定のファイルを削除または修正しようと試みる。
段階920で、デバイス100は、揮発性メモリ120にロードされているブートイメージ300,302のプロセスファイル情報430を確認する。
段階930で、段階920の確認結果、段階910で、削除または修正しようというファイルが、ブートイメージ300,302の生成時に実行中であったプロセスと関連したファイルであるか否かを判断する。ブートイメージ300,302の生成時に実行中であったプロセスと関連したファイルである場合には、ファイルを削除または修正すれば、ブートイメージ300,302によって、デバイス100をブーティングした後、プロセスを正しく実行することができず、システムエラーが発生するので、ファイルの削除または修正を禁止させる。
しかし、段階910で、削除または修正しようとするファイルが、ブートイメージ300,302の生成時に実行中であったプロセスと関連しないファイルであるならば、段階940で、ファイルを削除または修正する。
図9は、ファイルの削除または修正なしにも、オペレーティングシステム及び/またはアプリケーションの実行に問題が発生しない場合、ファイルの削除または修正を選択的に行う方法について説明する。しかし、前述のように、オペレーティングシステムのアップデートやアプリケーションのアップデートが行われる場合には、ファイルを削除または修正しなければ、アップデートを完了することができない。従って、ファイルの削除または修正が不回避であるので、無条件ファイルの削除または修正を遂行し、ブートイメージ300,302を再生成する。
以上のように、本発明は、たとえ限定された実施形態と図面とによって説明したにしても、本発明が、前記の実施形態に限定されるものではなく、それらは、本発明が属する分野で当業者であるならば、このような記載から多様な修正及び変形が可能であろう。従って、本発明の思想は、特許請求の範囲によってのみ把握されねばならず、それと均等である、あるいは等価的な変形は、いずれも本発明の思想の範疇に属するのである。また、本発明によるシステムは、コンピュータで読み取り可能な記録媒体に、コンピュータで読み取り可能なコードとして具現することが可能である。
例えば、本発明の例示的な実施形態によるブートイメージ生成装置及びブーティング装置は、図1、図2及び図5に図示されたような装置のそれぞれのユニットにカップリングされたバス、前記バスに結合された少なくとも1つのプロセッサを含んでもよい。また、命令、受信されたメッセージまたは生成されたメッセージを保存するために、前記バスに結合され、前述のような命令を遂行するための少なくとも1つのプロセッサにカップリングされたメモリを含んでもよい。
また、コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取り可能なデータが保存されるあらゆる種類の記録装置を含む。記録媒体の例としては、ROM(read-only memory)、RAM(random-access memory)、CD−ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ保存装置などを含む。また、コンピュータで読み取り可能な記録媒体は、ネットワークに連結されたコンピュータシステムに分散され、分散方式でコンピュータで読み取り可能なコードが保存されて実行される。
100 デバイス
110 CPU(central processing unit)
120 揮発性メモリ
130 ブートイメージ生成装置130
140 ブーティング装置
150、152 周辺デバイス
160 不揮発性メモリ
210 スワッピング部
220 ブートイメージ生成装置

Claims (15)

  1. 所定時点でデバイスで実行されているアプリケーションの実行のためのコードを、前記デバイスの揮発性メモリから消去する段階と、
    前記アプリケーションの実行のためのデータを、不揮発性メモリに保存する段階と、
    前記時点で、前記デバイスのオペレーティングシステム(OS)の実行のためのコード及び前記オペレーティングシステムの実行のためのデータのうち少なくとも一つを含むブートイメージを生成する段階と、を含むことを特徴とするブートイメージ生成方法。
  2. 前記アプリケーションの実行のためのコードは、前記アプリケーションの実行のために、前記不揮発性メモリから前記揮発性メモリにコピーされたコードであり、
    前記オペレーティングシステムの実行のためのデータは、前記不揮発性メモリであり、前記アプリケーション実行のためのコード及び前記アプリケーションの実行のためのデータのうち少なくとも一つが保存された位置についての情報をさらに含むことを特徴とする請求項1に記載のブートイメージ生成方法。
  3. 前記ブートイメージは、
    前記時点で、前記デバイスに装着された少なくとも1つの周辺デバイスの状態についての情報をさらに含むことを特徴とする請求項2に記載のブートイメージ生成方法。
  4. 前記ブートイメージを生成する段階は、
    前記時点で、前記デバイスのオペレーティングシステムの実行のためのコード及び前記オペレーティングシステムの実行のためのデータのうち少なくとも一つを含むブートイメージを揮発性メモリに保存する段階と、
    前記少なくとも1つの周辺デバイスを中止させる段階と、
    前記中止された少なくとも1つの周辺デバイスの状態についての情報を、前記ブートイメージに保存する段階と、を含むことを特徴とする請求項3に記載のブートイメージ生成方法。
  5. 前記ブートイメージは、
    前記時点で実行中であるプロセスと関連したファイルについての情報をさらに含むことを特徴とする請求項3に記載のブートイメージ生成方法。
  6. 前記プロセスと関連したファイルについての情報は、
    不揮発性メモリで、前記プロセスと関連したファイルが保存されている位置についての情報を含むことを特徴とする請求項5に記載のブートイメージ生成方法。
  7. 前記ブートイメージを生成する段階は、
    前記時点で、前記デバイスのオペレーティングシステムの実行のためのコード及び前記オペレーティングシステムの実行のためのデータのうち少なくとも一つを含むブートイメージを揮発性メモリに保存する段階と、
    前記少なくとも1つの周辺デバイスを中止させる段階と、
    前記中止された少なくとも1つの周辺デバイスの状態についての情報を、前記ブートイメージに保存する段階と、
    前記実行中であるプロセスと関連したファイルについての情報を前記ブートイメージに保存する段階と、を含むことを特徴とする請求項5に記載のブートイメージ生成方法。
  8. 前記ブートイメージは、
    前記時点で、前記デバイスに表示される画面についての情報をさらに含むことを特徴とする請求項5に記載のブートイメージ生成方法。
  9. 前記ブートイメージは、
    前記時点で、前記画面についての情報が保存された位置についての情報をさらに含むことを特徴とする請求項8に記載のブートイメージ生成方法。
  10. 前記揮発性メモリに保存されているブートイメージを、不揮発性メモリに保存する段階をさらに含むことを特徴とする請求項7に記載のブートイメージ生成方法。
  11. 前記時点は、
    前記デバイスで、前記オペレーティングシステム及び前記デバイスの作動のために実行される少なくとも1つのサービス・アプリケーションを除外した他のアプリケーションは、実行されていないアイドル状態である時点であることを特徴とする請求項1に記載のブートイメージ生成方法。
  12. 所定時点でデバイスで実行されているアプリケーションの実行のためのコードを、前記デバイスの揮発性メモリから消去し、前記アプリケーションの実行のためのデータを不揮発性メモリに保存し、前記時点で、前記デバイスのオペレーティングシステム(OS)の実行のためのコード、及び前記オペレーティングシステムの実行のためのデータのうち少なくとも一つを含むように生成されたブートイメージを、揮発性メモリにロードする段階と、
    前記ロードされたブートイメージに基づいて、前記デバイスの状態を、前記時点の状態に復元する段階と、を含むことを特徴とするブーティング方法。
  13. 所定時点でデバイスで実行されているアプリケーションの実行のためのコードを、前記デバイスの揮発性メモリから消去し、前記アプリケーションの実行のためのデータを不揮発性メモリに保存するスワッピング部と、
    前記時点で、前記デバイスのオペレーティングシステム(OS)の実行のためのコード及び前記オペレーティングシステムの実行のためのデータのうち少なくとも一つを含むブートイメージを生成するブートイメージ生成部と、を含むことを特徴とするブートイメージ生成装置。
  14. 所定時点でデバイスで実行されているアプリケーションの実行のためのコードを、前記デバイスの揮発性メモリから消去し、前記アプリケーションの実行のためのデータを不揮発性メモリに保存し、前記時点で、前記デバイスのオペレーティングシステム(OS)の実行のためのコード及び前記オペレーティングシステムの実行のためのデータのうち少なくとも一つを含むように生成されたブートイメージを、揮発性メモリにロードするローディング部と、
    前記ロードされたブートイメージに基づいて、前記デバイスの状態を、前記時点の状態に復元するブーティング部と、を含むことを特徴とするブーティング装置。
  15. 請求項1ないし請求項12のうち、いずれか1項に記載の方法を実行するためのプログラムを記録したコンピュータで読み取り可能な記録媒体。
JP2012554941A 2010-02-26 2011-02-25 最小ブートイメージの生成方法及びその装置 Pending JP2013520744A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2010-0018237 2010-02-26
KR1020100018237A KR101636870B1 (ko) 2010-02-26 2010-02-26 최소 부트 이미지의 생성 방법 및 장치
PCT/KR2011/001362 WO2011105860A2 (en) 2010-02-26 2011-02-25 Method and apparatus for generating minimum boot image

Publications (1)

Publication Number Publication Date
JP2013520744A true JP2013520744A (ja) 2013-06-06

Family

ID=44505925

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012554941A Pending JP2013520744A (ja) 2010-02-26 2011-02-25 最小ブートイメージの生成方法及びその装置

Country Status (6)

Country Link
US (1) US20110213954A1 (ja)
EP (1) EP2539807A4 (ja)
JP (1) JP2013520744A (ja)
KR (1) KR101636870B1 (ja)
CN (1) CN102770841A (ja)
WO (1) WO2011105860A2 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10394570B2 (en) 2010-02-26 2019-08-27 Hp Printing Korea Co., Ltd. Method of generating boot image for fast booting and image forming apparatus for performing the method, and method of performing fast booting and image forming apparatus for performing the method
KR101813641B1 (ko) * 2011-11-15 2018-01-02 에스프린팅솔루션 주식회사 화상형성장치 및 하이버네이션 기능을 갖는 화상형성장치를 부팅하는 방법
JP6041522B2 (ja) * 2012-04-18 2016-12-07 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、プログラム及び記憶媒体
US9367333B2 (en) * 2012-07-30 2016-06-14 Hewlett-Packard Development Company, L.P. Booting a printer
KR101959359B1 (ko) 2012-11-06 2019-03-18 에이치피프린팅코리아 유한회사 빠른 부팅을 위한 부트 이미지를 업데이트하는 방법 및 이를 수행하는 화상형성장치
CN103885901B (zh) * 2012-12-21 2019-06-25 联想(北京)有限公司 文件读取方法、存储设备和电子设备
US9836306B2 (en) * 2013-07-31 2017-12-05 Marvell World Trade Ltd. Parallelizing boot operations
US10050901B2 (en) * 2014-04-22 2018-08-14 Cisco Technology, Inc. Efficient management and configuration of in-band resources
US9710198B2 (en) 2014-05-07 2017-07-18 Sandisk Technologies Llc Method and computing device for controlling bandwidth of swap operations
US20150324132A1 (en) * 2014-05-07 2015-11-12 Sandisk Technologies Inc. Method and Computing Device for Fast Erase of Swap Memory
US9665296B2 (en) * 2014-05-07 2017-05-30 Sandisk Technologies Llc Method and computing device for using both volatile memory and non-volatile swap memory to pre-load a plurality of applications
US9633233B2 (en) 2014-05-07 2017-04-25 Sandisk Technologies Llc Method and computing device for encrypting data stored in swap memory
US9928169B2 (en) 2014-05-07 2018-03-27 Sandisk Technologies Llc Method and system for improving swap performance
KR102219877B1 (ko) * 2014-10-14 2021-02-24 삼성전자주식회사 디스플레이 장치 및 이의 제어 방법
US10521618B1 (en) * 2015-10-20 2019-12-31 Marvell International Ltd. Methods and apparatus for secure root key provisioning
US11288077B2 (en) * 2017-09-26 2022-03-29 Hewlett-Packard Development Company, L.P. Boot image loading
CN108197184A (zh) * 2017-12-25 2018-06-22 深圳天珑无线科技有限公司 文件存储的方法及文件存储设备、存储装置
KR102406571B1 (ko) * 2017-12-28 2022-06-08 삼성전자주식회사 디스플레이 장치 및 그 동작방법
CN110427582A (zh) * 2018-04-28 2019-11-08 华为技术有限公司 文件缓存的读取方法和装置
KR20200125258A (ko) 2019-04-26 2020-11-04 삼성전자주식회사 어플리케이션 실행을 제어하기 위한 방법, 이를 위한 전자 장치 및 저장 매체

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003084977A (ja) * 2001-09-11 2003-03-20 Ricoh Co Ltd コンピュータシステム及びその制御方法
JP2008165554A (ja) * 2006-12-28 2008-07-17 Sony Corp 情報処理装置、起動方法、およびプログラム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5325532A (en) * 1992-09-25 1994-06-28 Compaq Computer Corporation Automatic development of operating system boot image
JP2525122B2 (ja) * 1992-11-09 1996-08-14 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュ―タ・システムのバックアップ記録方法、復元方法およびシステム
US5557777A (en) * 1994-09-30 1996-09-17 Apple Computer, Inc. Method and apparatus for system recovery from power loss
US5933631A (en) * 1997-03-17 1999-08-03 International Business Machines Corporation Dynamic boot filesystem selection
KR19990011346A (ko) * 1997-07-23 1999-02-18 윤종용 압축된 부팅 롬 생성 방법
US6098158A (en) * 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
JP3204251B2 (ja) * 1999-06-30 2001-09-04 インターナショナル・ビジネス・マシーンズ・コーポレーション ハイバネーション装置及び方法、それを格納した記録媒体並びにそれを適用したコンピュータ
KR100319292B1 (ko) * 1999-12-02 2002-01-05 윤종용 빠른 부팅 속도를 갖는 컴퓨터 시스템 및 그 방법
US6609182B1 (en) * 2000-01-20 2003-08-19 Microsoft Corporation Smart hibernation on an operating system with page translation
US7062643B2 (en) * 2000-08-01 2006-06-13 Fujitsu Limited System method and apparatus for controlling a boot process of a computer
JP2004348677A (ja) * 2003-05-26 2004-12-09 Sony Corp プログラムおよび情報処理方法
US7475186B2 (en) * 2003-10-31 2009-01-06 Superspeed Software System and method for persistent RAM disk
US8001348B2 (en) * 2003-12-24 2011-08-16 Intel Corporation Method to qualify access to a block storage device via augmentation of the device's controller and firmware flow
US7590839B2 (en) * 2005-03-22 2009-09-15 Qnx Software Systems Gmbh & Co. Kg System employing fast booting of application programs
US7634689B2 (en) * 2005-09-22 2009-12-15 Advanced Micro Devices, Inc. Boot performance optimization for hard drive for personal internet communicator
JP4933822B2 (ja) * 2006-04-21 2012-05-16 株式会社Cspフロンティア研究所 データ消去システム、管理サーバ、データ消去方法およびプログラム
US7519808B2 (en) * 2006-04-25 2009-04-14 Apple Inc. Method and apparatus for quickly reanimating devices from hibernation
US7673131B2 (en) * 2006-05-05 2010-03-02 Microsoft Corporation Booting an operating system in discrete stages
JP2007334383A (ja) * 2006-06-12 2007-12-27 Sony Corp 情報処理装置とその起動方法およびプログラム
US7743242B2 (en) * 2006-10-16 2010-06-22 Scalent Systems Inc. Method and system for automatic generation of operating system boot images
JP4857201B2 (ja) * 2007-06-20 2012-01-18 キヤノン株式会社 情報処理装置
JP2009193379A (ja) * 2008-02-14 2009-08-27 Konica Minolta Business Technologies Inc 画像処理装置及び同装置の起動方法
US8386757B1 (en) * 2009-02-13 2013-02-26 Unidesk Corporation Managed desktop system
CN101515239A (zh) * 2009-04-08 2009-08-26 南京航空航天大学 X86飞控计算机快速启动方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003084977A (ja) * 2001-09-11 2003-03-20 Ricoh Co Ltd コンピュータシステム及びその制御方法
JP2008165554A (ja) * 2006-12-28 2008-07-17 Sony Corp 情報処理装置、起動方法、およびプログラム

Also Published As

Publication number Publication date
KR20110098567A (ko) 2011-09-01
EP2539807A4 (en) 2014-10-08
WO2011105860A3 (en) 2011-11-24
US20110213954A1 (en) 2011-09-01
EP2539807A2 (en) 2013-01-02
CN102770841A (zh) 2012-11-07
KR101636870B1 (ko) 2016-07-06
WO2011105860A2 (en) 2011-09-01

Similar Documents

Publication Publication Date Title
JP2013520744A (ja) 最小ブートイメージの生成方法及びその装置
US10067835B2 (en) System reset
KR20140118093A (ko) 메모리 가상화 기반 스냅샷 부트 장치 및 방법
EP3769224B1 (en) Configurable recovery states
KR101673299B1 (ko) 운영 시스템 복구 방법 및 장치, 그리고 단말기기
JP2012252576A (ja) 情報処理装置、起動方法およびプログラム
CN110704161B (zh) 虚拟机创建方法、装置及计算机设备
US9852029B2 (en) Managing a computing system crash
JP5683186B2 (ja) 起動高速化方法、情報処理装置及びプログラム
US11176089B2 (en) Systems and methods for implementing dynamic file systems
JP2013257679A (ja) 情報処理装置および方法、並びに、プログラム
KR100994723B1 (ko) 시스템에서 초기 구동시간을 단축시키는 선택적 서스펜드 리쥼 방법 및 그 기록매체
US10564894B2 (en) Free space pass-through
JP6080492B2 (ja) 情報処理装置、起動方法およびプログラム
JP2012174031A (ja) 情報処理装置、情報処理装置の起動方法、プログラム
JP2009288950A (ja) 情報処理装置およびデータ整合性検査方法
JP2021111093A (ja) 情報処理装置および情報処理方法
JP5400099B2 (ja) 情報処理装置、電子機器及びパッチプログラムの適用方法、並びにコンピュータ・プログラム
JP6080491B2 (ja) 情報処理装置、起動方法およびプログラム
JP2011165129A (ja) 要実行パッチリスト作成装置および方法
KR20140040018A (ko) 하이버네이션 기반 스냅샷 이미지 생성 및 부팅 장치 및 방법
JP2009086757A (ja) 情報処理装置およびファイルシステム
JP2015176334A (ja) 情報処理システム、情報処理装置起動方法および起動プログラム
JP2012128568A (ja) 情報処理装置、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140221

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20141226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150209

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150629