JP6178515B2 - オペレーティングシステムの更新 - Google Patents

オペレーティングシステムの更新 Download PDF

Info

Publication number
JP6178515B2
JP6178515B2 JP2016536708A JP2016536708A JP6178515B2 JP 6178515 B2 JP6178515 B2 JP 6178515B2 JP 2016536708 A JP2016536708 A JP 2016536708A JP 2016536708 A JP2016536708 A JP 2016536708A JP 6178515 B2 JP6178515 B2 JP 6178515B2
Authority
JP
Japan
Prior art keywords
computing device
operating system
copy
computer
processors
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.)
Active
Application number
JP2016536708A
Other languages
English (en)
Other versions
JP2016539426A (ja
Inventor
サンドラ フォン−ジョーンズ、エリザベス
サンドラ フォン−ジョーンズ、エリザベス
アレクサンダー ドゥルーリー、ウィリアム
アレクサンダー ドゥルーリー、ウィリアム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2016539426A publication Critical patent/JP2016539426A/ja
Application granted granted Critical
Publication of JP6178515B2 publication Critical patent/JP6178515B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

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

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)
  • Stored Programmes (AREA)
  • Retry When Errors Occur (AREA)

Description

本発明の技術は、コンピューティングデバイスのオペレーティングシステムの更新に関する。
オペレーティングシステムのメーカは、オペレーティングシステムを実装しているコンピュータにネットワークを介して伝送されるオペレーティングシステムに対する更新を提供する。いくつかの場合、その更新をインストールするために、ユーザがコンピュータを再起動するか、コンピュータが自動的に再起動される。
いくつかの態様では、本発明は、オペレーティングシステムを更新するためのコンピュータ実装方法に関する。
その方法は、コンピューティングデバイスのオペレーティングシステムのための更新をコンピューティングデバイスで第1時刻に受信することを含む。方法はコンピューティングデバイスの再起動前の状態を第2時刻に格納することを含み、当該再起動前の状態は、コンピューティングデバイスの特定のユーザとしてコンピューティングデバイスにログインするためのログイン情報を含み、コンピューティングデバイスの特定のユーザは、第2時刻においてコンピューティングデバイスにログインした状態である。当該方法はコンピューティングデバイスを再起動することを含む。コンピューティングデバイスの再起動前に、あるいは再起動中に、コンピューティングデバイスのオペレーティングシステムは前記受信した更新によって更新される。当該方法はコンピューティングデバイスを再起動した後に前記コンピューティングデバイスの格納された再起動前の状態により前記更新されたオペレーティングシステムへのユーザアクセスを提供することを含む。
いくつかの態様では、本発明は、実行可能な指示を備える符号化された非一時的コンピュータ可読媒体に関する。指示は、コンピュータのオペレーティングシステムのための更新を受信するためのコードを含む。指示は、コンピュータの再起動前の状態を格納するためのコードを含み、再起動前の状態は、コンピュータの特定のユーザとしてコンピュータにログインするためのログイン情報を含む。指示はコンピュータを再起動するためのコードを含み、コンピュータの再起動前に、あるいは再起動中に、コンピュータのオペレーティングシステムは受信した更新によって更新される。指示は、コンピュータを再起動した後にコンピュータの格納された再起動前の状態により更新されたオペレーティングシステムへのユーザアクセスを提供するためのコードを含む。
いくつかの態様では、本発明は、コンピューティングデバイスに関する。コンピューティングデバイスは1つ以上のプロセッサおよび1つのメモリを含む。メモリは指示を含む。指示は、オペレーティングシステムの第1のコピーがコンピューティングデバイス上で稼動しているときに、コンピューティングデバイスのオペレーティングシステムのための更新をコンピューティングデバイスで受信するためのコードを含む。指示は、コンピューティングデバイスの再起動前の状態を格納するためのコードを含む。再起動前の状態は、コンピューティングデバイスの特定のユーザとしてコンピューティングデバイスにログインするためのログイン情報を含む。指示はコンピューティングデバイスを再起動するためのコードを含む。コンピューティングデバイスの再起動前に、あるいは再起動中に、コンピューティングデバイスのオペレーティングシステムの第2のコピーは、受信した更新によって更新される。コンピューティングデバイスの再起動後に、コンピューティングデバイスのオペレーティングシステムの第2のコピーは、コンピューティングデバイス上で稼動している状態である。指示は、コンピューティングデバイスを再起動した後にコンピューティングデバイスの格納された再起動前の状態により前記オペレーティングシステムの更新された第2のコピーへのユーザアクセスを提供するためのコードを含む。指示は、受信した更新によりコンピューティングデバイスのオペレーティングシステムの第1のコピーを更新するためのコードを含む。
本発明の技術の他の構成が後述する詳細な説明から容易に明白なものとなることが理解され、本発明の技術の様々な構成が実例により示されるとともに記述される。実現されるように、本発明の技術は他の異なる構成となり得、そのそれぞれの詳細は、様々な他の点で、本発明の技術の範囲から逸脱することなくすべて変更可能である。従って、図面および詳細な説明は本来例示的なものであり、限定的なものではないとみなされる。
本発明の技術の特徴は添付の特許請求の範囲に開示される。しかしながら、説明の目的のために、本発明のうちのいくつかの態様を以下の図面に示す。
図1Aはコンピューティングデバイスのオペレーティングシステムを更新するためのネットワークシステム例を示す。 図1Bは、オペレーティングシステムを更新するコンピューティングデバイス例を示す。 図2は、それによってコンピューティングデバイスのオペレーティングシステムが更新されるプロセス例を示す。 図3は、本発明の技術のいくつかの実装例を組み込んだ電子装置例を概略的に示す。
後述する詳細な説明は、本発明の技術の様々な構成の開示として意図され、本発明の技術が実行される1つの構成のみを表すようには意図されない。添付の図面がここに組み込まれ、詳細な説明の一部を構成する。詳細な説明は、本発明の技術についての完全な理解を提供する目的で特定の詳細を含む。しかしながら、本発明の技術がここに述べられる特定の詳細に制限されるものではなく、これらの特定の詳細を伴うことなく実施されてもよいことは明瞭かつ明白であろう。いくつかの実例において、所定の構造体および要素は、本発明の技術の概念が不明瞭とならないようにブロック図の形式で示される。
上述したように、オペレーティングシステムのメーカは、オペレーティングシステムを実行するコンピュータにネットワークを介して伝送されるオペレーティングシステムに対する更新を提供する。いくつかの場合には、インストールされる更新のために、ユーザがコンピュータを再起動するか、コンピュータが自動的に再起動される。ユーザが作業しているか、ユーザが作成したデータを保存する際にウィンドウを閉じる必要がある場合、コンピュータの再起動はユーザフレンドリな経験ではないであろう。ユーザは、どのウィンドウが再起動前に開いていたかを記憶するとともにウィンドウを再び開くために時間を費やす。更に、ユーザはコンピュータの再起動時にコンピュータにアクセスするためにそのユーザのログイン情報(例えばパスワード、あるいはユーザ名とパスワードの組み合わせ)を再入力する必要がある。上記に示すように、オペレーティングシステムを更新するための新規なアプローチが望ましい。
本発明の技術はコンピューティングデバイスのオペレーティングシステムを更新するための技術を提供する。コンピューティングデバイスは、ネットワークを介してコンピューティングデバイスのオペレーティングシステムのための更新を第1時刻に受信する。コンピューティングデバイスは、コンピューティングデバイスの再起動前の状態を第2時刻に格納する。第2時刻は、第1時刻と同時、または第1時刻の直後(例えば、コンピューティングデバイスの処理速度に依存して、例えば0.1秒、0.5秒、1秒、2秒といった任意の計画的遅延を伴うことなく)に発生してよい。これに代えて、第2時刻は、第1時刻の後の計画的遅延すなわち予め定められた時間期間(例、1秒、1分、1時間など)に発生してもよい。例えば、コンピューティングデバイスがスリープモードにあるときに第2時刻が発生し、コンピューティングデバイスが起動しているモードにあるときに第1時刻が発生してよい。再起動前の状態は、コンピューティングデバイスの特定のユーザとしてコンピューティングデバイスにログインするためのログイン情報(例、パスワード)を含み、コンピューティングデバイスの特定のユーザは、第2時刻においてコンピューティングデバイスにログインした状態である。再起動前の状態は、コンピューティングデバイスで開いている1組のウィンドウ、組のウィンドウ内で開いている1組のタブ、組のウィンドウ内の情報、および組のウィンドウ内の現在のアクティブウィンドウを更に識別する。例えば、再起動前の状態は、ドキュメントプロセッサアプリケーション、ウェブブラウザ、およびオーディオプレイヤアプリケーションがコンピューティングデバイス上で開いていることを示すデータを識別する。ドキュメントプロセッサアプリケーションはアクティブであり、文書「サムへのレター」の3ページを表示している。ウェブブラウザは、ウェブページexample.com/abcおよびexample.com/defのタブを表示している。オーディオプレイヤアプリケーションは、オーディオファイル「物理学−101−講義」の位置1:02で休止される。ログイン情報を含む再起動前の状態の情報への無許可のアクセスを防ぐために、再起動前の状態は暗号化された位置に格納される。
再起動前の状態を格納した後に、コンピューティングデバイスはそれ自体を再起動する。再起動前に、あるいは再起動中に、コンピューティングデバイスのオペレーティングシステム、あるいはコンピューティングデバイスのオペレーティングシステムの少なくとも1つのコピーは、受信した更新によって更新される。再起動後に、コンピューティングデバイスは、コンピューティングデバイスの格納された再起動前の状態により更新したオペレーティングシステムへのユーザアクセスを提供する。コンピューティングデバイスは、ユーザがログイン情報を再入力することを必要とせずに、再起動前の状態のログイン情報によりコンピューティングデバイスにログインできる。コンピューティングデバイスは、更新したオペレーティングシステム内、組のウィンドウ内、組のタブ内で、組のウィンドウ内の情報および再起動前の状態の現在のアクティブウィンドウを再生成する。
有利なことに、ここに開示されるいくつかの実装例の結果、コンピューティングデバイスの再起動後、そのコンピューティングデバイスは再起動前のコンピューティングデバイスの状態に戻る。その結果、ユーザの作業は失われず、ユーザは、いくつかの場合に、再起動前に先行してファイルを保存するとともにどのウィンドウおよびタブが開いていたかを思い出すことができる。更に、オペレーティングシステムの再起動および更新プロセスの間にユーザによるログイン情報の再入力を必要としないことにより、コンピューティングデバイスが再起動する間のユーザの時間および作業は節約される。
図1Aはコンピューティングデバイスのオペレーティングシステムを更新するための例によるネットワークシステム100Aを示す。図示のように、ネットワークシステムはネットワーク130Aに接続されるコンピューティングデバイス110Aおよびサーバ120Aを含む。コンピューティングデバイス110Aおよびサーバ120Aはネットワーク130Aを介して互いに通信する。ネットワーク130Aは、例えばインターネット、イントラネット、セルラネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、有線ネットワーク、無線ネットワーク、仮想プライベートネットワークなど(VPN)の任意の1つ以上のネットワークを含む。コンピューティングデバイス110Aは、任意のコンピューティングデバイス、例えば1つ以上のプロセッサおよびメモリに接続される、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、携帯電話、携帯情報端末(PDA)、電子音楽プレイヤ、スマートウォッチ、テレビ等である。コンピューティングデバイス110Aは、ここに開示される技術を使用して更新されるオペレーティングシステムを含む。サーバ120Aは、コンピューティングデバイス110Aのオペレーティングシステムのディベロッパのサーバであり、ネットワーク130Aを介して、オペレーティングシステムを実装する1つ以上のコンピュータ(例えばコンピューティングデバイス110A)の1つ以上のオペレーティングシステムのための更新を送信する。
図1Bは、オペレーティングシステムを更新するように構成される例によるコンピューティングデバイス100Bを示す。コンピューティングデバイス100Bは図1Aのコンピューティングデバイス110Aに相当し、1つ以上のプロセッサおよびメモリに接続される、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、携帯電話、携帯情報端末(PDA)、電子音楽プレイヤ、スマートウォッチ、テレビ等である。
図示のように、コンピューティングデバイス100Bは、処理装置102B、ネットワークインターフェイス104B、およびメモリ106Bを含む。処理装置102Bは1つ以上のプロセッサを含む。処理装置102Bは、中央処理装置(CPU)、グラフィック処理装置(GPU)、あるいは任意の他の処理装置を含む。処理装置102Bは、コンピュータ可読媒体、例えばメモリ106Bに格納されるコンピュータ指示を実行する。ネットワークインターフェイス104Bにより、コンピューティングデバイス100Bは、ネットワーク、例えば図1Aのネットワーク130Aにおいてデータを送受信可能である。メモリ106Bはデータおよび指示のうちの少なくともいずれか一方を格納する。メモリ106Bは、キャッシュユニット、格納装置、内部記憶装置、あるいは外部記憶装置のうちの1つ以上である。図示のように、メモリ106Bはユーザ変更不能メモリ領域108Bを含み、メモリ領域108Bはオペレーティングシステムのコピー110Bおよびコピー112B、受信した更新114B、並びに自動更新モジュール116Bを格納する。メモリ106Bは格納された再起動前の状態118Bおよびアプリケーション120B.1−nを更に格納する。
ユーザ変更不能メモリ領域108Bは、コンピューティングデバイス100Bのユーザによっては変更できないオペレーティングシステムのコピー110Bおよびコピー112B、受信した更新114B、並びに自動更新モジュール116Bを含むデータや指示を格納する。ユーザ変更不能メモリ領域108Bにおけるデータあるいは指示は、例えば、ネットワークインターフェイス104Bを使用してネットワーク上で受信した更新(例えば、受信した更新114B)により変更可能である。
オペレーティングシステムのコピー110Bおよびコピー112Bは、コンピューティングデバイス100Bによって実行されるオペレーティングシステムのコピーである。オペレーティングシステムがコンピューティングデバイス100B上で稼動している場合はいつでも、オペレーティングシステムの1つのコピーがアクティブであり稼動しており、別のコピーはアクティブではなく稼動していない。コンピューティングデバイス100Bはオペレーティングシステムの2つのコピー110Bおよび112Bを格納するものと示したが、コンピューティングデバイス100Bはオペレーティングシステムの1つのコピー(これはコンピューティングデバイス100Bが稼動している場合必ず稼動している)、あるいはオペレーティングシステムの2つを超えるコピーを格納する。コンピューティングデバイスは1つ以上のアプリケーション、例えば稼動しているオペレーティングシステムのコピー110Bまたは112B内の1つ以上のアプリケーション120B.1−nを実行する。
受信した更新114Bは、ネットワーク上でネットワークインターフェイス104Bを使用して受信したコンピューティングデバイス100Bのオペレーティングシステムのための更新である。受信した更新114Bは、オペレーティングシステムのメーカによって、コンピューティングデバイス100Bのメーカによって、コンピューティングデバイス100Bに関連付けられるメーカによってなどして提供される。受信した更新114Bを実装するために、コンピューティングデバイス100B上で稼動しているオペレーティングシステムのコピー110Bまたは112Bが、受信した更新114Bによって変更される。
自動更新モジュール116Bにより、実行時に、処理装置102Bはネットワークインターフェイス104Bを介してオペレーティングシステム用の更新114Bを第1時刻に受信する。第1時刻には、オペレーティングシステムのコピー110Bは、コンピューティングデバイス100B上で稼動しており、オペレーティングシステムのコピー112Bは稼動していない。従って、オペレーティングシステムのコピー112Bがオペレーティングシステムのコピー110Bの機能を妨げることなく更新されるため、オペレーティングシステムのコピー112Bはその第1時刻に更新される。
自動更新モジュール116Bにより、実行時に、処理装置102Bはコンピューティングデバイス100Bの再起動前の状態118Bを第2時刻に格納する。格納された再起動前の状態118Bは、コンピューティングデバイスの特定のユーザとしてコンピューティングデバイスにログインするためのログイン情報を含み、特定のユーザは、第2時刻においてコンピューティングデバイスにログインした状態である。格納された再起動前の状態118Bは、コンピューティングデバイス100B上で開いているアプリケーション120B.1−n、アプリケーションで開いているタブ、アプリケーション内に格納されるデータ(例えばブラウザアプリケーションの入力ボックスにタイプ入力されたデータや、ドキュメントプロセッサアプリケーションでタイプされているデータ)、およびアクティブなアプリケーションの表示を更に含む。第2時刻は、第1時刻と同時あるいはその直後に発生してもよい。これに代えて、第2時刻は、第1時刻の後の計画的遅延すなわち予め定められた時間期間(例、1秒、1分、1時間など)、例えばコンピューティングデバイス100Bがスリープモードにあるときに発生してもよい。
自動更新モジュール116Bにより、実行時に、処理装置102Bはコンピューティングデバイス100Bを再起動する。再起動中に、あるいは再起動後に、処理装置102Bは、オペレーティングシステムのコピー112Bがオペレーティングシステムのコピー110Bよりも後に更新されたと判断する。従って、オペレーティングシステムのコピー112Bがオペレーティングシステムのコピー110Bよりも後に更新されたという判断に基づいて、処理装置102Bは、オペレーティングシステムのコピー112Bに整合するようにオペレーティングシステムのコピー110Bを更新する。処理装置102Bはオペレーティングシステムのコピー110Bにオペレーティングシステムのコピー112Bをコピーし、あるいは、処理装置102Bはオペレーティングシステムのコピー110Bに受信した更新114Bを適用する。再起動後に、オペレーティングシステムのコピー112Bは稼動しており、オペレーティングシステムのコピー110Bは稼動していない。そこで処理装置102Bはオペレーティングシステムのコピー110Bに書き込む。
コンピューティングデバイス100Bを再起動した後に、処理装置102Bは、ユーザが自身の作業を妨害されることなく、あるいは妨害が最小限にとどめられ、ユーザがコンピューティングデバイス100Bで作業を継続することができるように、格納された再起動前の状態118Bにより、コンピューティングデバイス100Bで稼動している更新したオペレーティングシステムのコピー112Bへのユーザアクセスを提供する。例えば、ユーザがログイン情報を再入力することを必要とせずに、ユーザは格納された再起動前の状態118Bのログイン情報によりコンピューティングデバイス100Bにログインした状態となる。いくつかの場合には、ここに開示される技術の結果、アプリケーション120B.1−nの開いたウィンドウ、開いたウィンドウ内の開いたタブ、および現在のアクティブウィンドウは、オペレーティングシステムへの更新がインストールされている間、維持される。
アプリケーション120B.1−nは、コンピューティングデバイス100B上で実行する任意のアプリケーションを含む。例えば、アプリケーション120B.1−nは、ウェブブラウザアプリケーション、電子メールアプリケーション、ドキュメントプロセッサアプリケーション、スプレッドシートアプリケーション、スライドショーアプリケーション、テレビ電話アプリケーションなどのうちの1つ以上を含む。
いくつかの例によれば、メモリ106Bはディスクおよびランダムアクセスメモリ(RAM)を含む。格納された再起動前の状態118Bはディスク上で暗号化されて格納され、格納された再起動前の状態118Bは、更新したオペレーティングシステムのコピー112Bの再起動後、RAMに電力が供給され続けるとともにディスク上の暗号化されたデータが削除されない限り、利用可能である。いくつかの例において、格納された再起動前の状態118Bは、コンピューティングデバイスのユーザにアクセス可能ではなく、あるいはユーザによって変更可能であり、これにより、格納された再起動前の状態118Bの情報は、許可の無い人によって確実にアクセスされない。更に、コンピューティングデバイス100Bは、コンピューティングデバイス100Bを使用することを認められる1人以上のユーザの1つ以上のユーザアカウントを含む。ユーザアカウントは他のユーザアカウントによってアクセス可能ではないその暗号化されたデータに関連付けられる。コンピューティングデバイス100Bが自動更新モジュール116Bの作動によって再起動されると、ユーザは自身のアカウントに再度サインインし、これにより、格納された再起動前の状態118Bにおけるデータへのアクセスが得られる。ユーザは再度認証される(例えば、そのユーザのユーザ名かパスワードを再入力する)ことを要することなく、かつコンピューティングデバイス100B上の、格納された再起動前の状態18Bを含む、格納され暗号化されたデータの任意の他のセキュリティプロパティを変更することなく自身のアカウントに再度サインインする。
図2は、コンピューティングデバイスのオペレーティングシステムが更新される例によるプロセス200を示す。
プロセス200は、コンピューティングデバイス(例えばコンピューティングデバイス100B)が、コンピューティングデバイスのオペレーティングシステム用の更新(例えば、受信される更新114B)を第1時刻に受信する工程210から始まる。オペレーティングシステム用の更新はネットワークインターフェイス(例えばネットワークインターフェイス104B)を介してネットワーク上で受信される。第1時刻には、オペレーティングシステムの第1のコピー(例えばオペレーティングシステムのコピー110B)は、コンピューティングデバイス上で稼動しており、オペレーティングシステムの第2のコピー(例えばオペレーティングシステムのコピー112B)は、コンピューティングデバイス上で稼動していない。
工程220において、第2時刻に、コンピューティングデバイスは、コンピューティングデバイスの再起動前の状態(例えば格納される再起動前の状態118B)を格納する。再起動前の状態は、コンピューティングデバイスの特定のユーザとしてコンピューティングデバイスにログインするためのログイン情報を含む。コンピューティングデバイスの特定のユーザは、第2時刻においてコンピューティングデバイスにログインした状態である。再起動前の状態は、コンピューティングデバイスで開いている1組のウィンドウ、組のウィンドウ内で開いている1組のタブ、組のウィンドウ内の情報、および組のウィンドウ内の現在のアクティブウィンドウを更に識別する。第2時刻は、第1時刻と一致して、すなわち第1時刻の後に計画的遅延なしでリアルタイムに発生する。これに代えて、第1時刻と第2時刻との間に計画的遅延すなわち予め定められた時間期間(例えば1秒、1分、1時間など)があってもよい。例えば、第1時刻は、コンピューティングデバイスがネットワークに接続され、オペレーティングシステムの更新がコンピューティングデバイスにネットワーク上で送信されるときに発生することがある。第2時刻は、コンピューティングデバイスがスリープモードにあるか使用されていないときに発生することがある。
工程230で、コンピューティングデバイスはそれ自体を再起動する。コンピューティングデバイスの再起動前に、あるいは再起動中に、オペレーティングシステムの第2のコピーは受信した更新によって更新される。例えば、受信した更新は、オペレーティングシステムの第2のコピーに適用される。コンピューティングデバイスの再起動後に、コンピューティングデバイスのオペレーティングシステムの第2のコピーは、コンピューティングデバイス上で稼動し、オペレーティングシステムの第1のコピーはコンピューティングデバイス上で稼動していない。
工程240で、コンピューティングデバイスは、コンピューティングデバイスを再起動した後にコンピューティングデバイスの格納された再起動前の状態によりオペレーティングシステムの更新した第2のコピーへのユーザアクセスを提供する。その結果、コンピューティングデバイスが再起動された後、ユーザは格納された再起動前の状態からコンピューティングデバイスで作業を継続でき、また、コンピューティングデバイスにおけるユーザの作業は中断されず、あるいは中断が最小限に抑えられる。例えば、コンピューティングデバイスは、ユーザがログイン情報を再入力することを必要とせずに、再起動前の状態のログイン情報によりコンピューティングデバイスにログインできる。コンピューティングデバイスは、再起動前の状態で格納されたウィンドウおよびタブを更に再度生成し、これにより、ユーザは再度生成されたウィンドウおよびタブで作業を継続することができる。
工程250で、コンピューティングデバイスは、受信した更新により、コンピューティングデバイスのオペレーティングシステムの第1のコピーを更新する。例えば、受信した更新は、オペレーティングシステムの第1のコピーに適用される。これに代えて、再起動前に、あるいは再起動の間に既に更新されたオペレーティングシステムの第2のコピーが、オペレーティングシステムの第1のコピーにコピーされてもよい。工程250の後、プロセス200は終了する。
図3は、本発明の技術のいくつかの実装例が組み込まれる電子装置300を概略的に示す。例えば、コンピューティングデバイス100Bは電子装置300の構成を使用して実行される。電子装置300は、コンピュータ(例えば携帯電話、PDA)、あるいは任意の他のタイプの電子装置である。そのような電子装置は、様々な他のタイプのコンピュータ可読媒体用の様々なタイプのコンピュータ可読媒体およびインターフェイスを含む。電子装置300は、バス305、1つ以上の処理装置310、システムメモリ315、読み出し専用メモリ320、恒久的記憶装置325、入力装置インターフェイス330、出力装置インターフェイス335、およびネットワークインターフェイス340を含む。
バス305は、電子装置300の多数の内部装置を通信で接続するシステム、周辺装置およびチップセットバスをすべて集合的に示す。例えば、バス305は、読み出し専用メモリ320、システムメモリ315および恒久的記憶装置325に処理装置310を通信できるように接続する。
これらの様々な記憶素子から、1つ以上の処理装置310は、本発明の技術のプロセスを実行するために、実行するべき指示および処理するべきデータを検索する。1つ以上の処理装置は、異なる実装例では、シングルプロセッサあるいはマルチコアプロセッサになり得る。
読み出し専用メモリ(ROM)320は、1つ以上の処理装置310および電子装置の他のモジュールが必要とする静的データおよび指示を格納する。恒久的記憶装置325は他方では、読み取りおよび書き込みメモリ素子である。この装置は、電子装置300がオフである場合においても指示およびデータを格納する不揮発性の記憶素子である。本発明の技術のいくつかの実装例は恒久的記憶装置325として大容量記憶装置(例えば磁気または光ディスク、およびその対応するディスクドライブ)を使用する。
他の実装例は恒久的記憶装置325としてリムーバブル記憶装置(例えばフロッピーディスク(登録商標)、フラッシュドライブ、およびその対応するディスクドライブ)を使用する。恒久的記憶装置325と同様に、システムメモリ315は読み取りおよび書き込みメモリ素子である。しかしながら、記憶装置325とは異なり、システムメモリ315は、ランダムアクセスメモリのような揮発性の読み取りおよび書き込みメモリである。システムメモリ315は、プロセッサがランタイムに必要とする指示およびデータのうちのいくつかを格納する。いくつかの実装例では、本発明の技術のプロセスは、システムメモリ315、恒久的記憶装置325、あるいは読み出し専用メモリ320に格納される。例えば、様々な記憶素子は、いくつかの実装例に従ってオペレーティングシステムソフトウェアを更新するための指示を含む。これらの様々な記憶素子から、1つ以上の処理装置310は、いくつかの実装例のプロセスを実行するために実行するべき指示および処理するべきデータを検索する。
バス305は、入力装置インターフェイス330および出力装置インターフェイス335に更に接続する。ユーザは入力装置インターフェイス330により情報を通信し、電子装置に対する指令を選択することができる。入力装置インターフェイス330と組み合わせて使用される入力装置は、例えば英数字キーボードおよびポインティングデバイス(「カーソル制御装置」とも呼ぶ)を含む。出力装置インターフェイス335により、例えば、電子装置300によって生成される画像の表示が可能となる。出力装置インターフェイス335と組み合わせて使用される出力装置は、例えばプリンタおよびディスプレイ装置、例えば陰極線管(CRT)や液晶ディスプレイ(LCD)を含む。いくつかの実装例は装置、例えば入出力両方の装置として機能するタッチスクリーンを含む。
最後に、図3に示すように、バス305はネットワークインターフェイス340を介して電子装置300をネットワーク(図示しない)に更に接続する。このように、電子装置300は、コンピュータのネットワークの一部(例えばローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、イントラネット、複数のネットワークのネットワーク、例えばインターネット)になり得る。電子装置300のうちの任意の要素あるいはすべての要素は、本発明の技術と組み合わせて使用可能である。
上記特徴および応用は、コンピュータ可読記憶媒体(コンピュータ可読媒体とも呼ぶ)に記録される1組の指示として特定されるソフトウェアプロセスとして実行することができる。これらの指示が1つ以上の処理装置(例えば1つ以上のプロセッサ、プロセッサのコア、あるいは他の処理装置)によって実行されると、これらにより処理装置は指示に示されるアクションを実行する。コンピュータ可読媒体の例は、CD−ROM、フラッシュドライブ、RAMチップ、ハードドライブ、EPROMなどを含むが、これらに制限されるものではない。コンピュータ可読媒体は無線あるいは有線接続を通過する搬送波および電子信号を含まない。
本明細書では、用語「ソフトウェア」は、磁気記憶装置やフラッシュ記憶装置、例えばソリッドステートドライブに格納される読み出し専用メモリまたはアプリケーションに存在するファームウェアを含むように構成され、これはプロセッサによって処理するためにメモリに読み込むことができる。更に、いくつかの実装例において、複数のソフトウェア技術がより大きなプログラムのサブ部として実行可能であるが、ソフトウェア技術は個別の状態を維持する。いくつかの実装例において、複数のソフトウェア技術は個別のプログラムとして更に実装可能である。最後に、ここに開示されるソフトウェア技術を組み合わせて実行する個別のプログラムの任意の組み合わせも本発明の技術の範囲内にある。いくつかの実装例において、ソフトウェアプログラムは、1つ以上の電子装置上で作動するようにインストールされると、ソフトウェアプログラムのオペレーションを実行及び実施する1つ以上の特定の機械の実装を定義する。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、あるいはコードとしても周知)は、コンパイラ言語またはインタープリタ型言語、宣言型言語または手続き型言語を含む任意の形態のプログラミング言語で記述され、スタンドアロンのプログラムとして、あるいはモジュール、コンポーネント、サブルーチン、オブジェクト、あるいはコンピューティング環境における使用に好適な他のユニットとしてなどを含む任意の形態で展開可能である。コンピュータプログラムは、ファイルシステムにおけるファイルに一致するが、必ずしも一致する必要はない。プログラムは、他のプログラムあるいはデータ(例えば、1つ以上のスクリプト、マークアップ言語ドキュメントに格納された)を保持するファイルの一部に、問題のプログラム専用の1つのファイルに、あるいは複数の統合ファイル(例えば1つ以上のモジュール、サブプログラムあるいはコードの部分を格納するファイル)に格納することができる。コンピュータプログラムは、1台のコンピュータ上で、あるいは1つのサイトに配置されるか複数のサイトを横断して配置されるとともに通信ネットワークによって相互に接続される複数のコンピュータ上で実行されるように展開することができる。
上述した機能は、コンピュータソフトウェア、ファームウェア、あるいはハードウェアにおけるデジタル電子回路類において実行可能である。本技術は1つ以上のコンピュータプログラム製品を使用して実行可能である。プログラム可能なプロセッサおよびコンピュータはモバイルデバイスに含まれるか、パッケージ化される。プロセスおよびロジックのフローは、1つ以上のプログラム可能なプロセッサによって、および1つ以上のプログラマブルロジック回路類によって実行可能である。汎用および専用コンピューティングデバイスの記憶装置は通信ネットワークを介して相互に接続可能である。
いくつかの実施は、機械可読またはコンピュータ可読媒体(これに代えて、コンピュータ可読記憶媒体、機械可読媒体、あるいは機械可読記憶媒体とも呼ぶ)にコンピュータプログラムの命令を格納する電子部品、例えばマイクロプロセッサ、記憶装置、およびメモリを含む。そのようなコンピュータ可読媒体のいくつかの例は、RAM、ROM、読み出し専用のコンパクトディスク(CD−ROM)、追記型コンパクトディスク(CD−R)、書き換え可能なコンパクトディスク(CD−RW)、読み出し専用のデジタルバーサタイルディスク(例えばDVD−ROMおよび2層DVD−ROM)、様々な記録可能/書き換え可能なDVD(例えば、DVD−RAM、DVD−RW、DVD+RWなど)、フラッシュメモリ(例えばSDカード、ミニSDカード、マイクロSDカードなど)、磁気ハードドライブまたはソリッドステートハードドライブ、読み出し専用Blu−ray(登録商標)ディスクおよび追記型Blu−ray(登録商標)ディスク、超密度光ディスク、任意の他の光学または磁気媒体、およびフロッピーディスク(登録商標)を含む。コンピュータ可読媒体は、少なくとも1つの処理装置によって実行可能であるとともに様々なオペレーションを行うための組の指示を含むコンピュータプログラムを格納することができる。コンピュータプログラムまたはコンピュータコードの例は、例えばコンパイラによって生成される機械コード、並びにインタープリタを使用するコンピュータ、電子コンポーネント、あるいはマイクロプロセッサによって実行されるより高い水準のコードを含むファイルを含む。
上記は主にソフトウェアを実行するマイクロプロセッサやマルチコアプロセッサを示すが、いくつかの実施は、1つ以上の集積回路、例えば特定用途向けIC(ASIC)や、フィールドプログラマブルゲートアレイ(FPGA)によって行われる。いくつかの実施では、そのような集積回路は、回路自体上に格納される指示を実行する。
本明細書、および本願の任意の請求項において使用されるように、用語「コンピュータ」、「サーバ」、「プロセッサ」、および「メモリ」は、すべて電子装置または他の技術的な装置を示す。これらの用語は人々あるいは人々の群を除外する。特定するために、用語ディスプレイあるいは表示は、電子装置上に表示することを示す。本明細書および本願の任意の請求項において使用されるように、1つまたは複数の「コンピュータ可読媒体」なる用語は、コンピュータによって判読可能な形態で情報を格納する明確な物理的な物体に完全に制限される。これらの用語はいかなる無線信号、有線ダウンロード信号、および他のエフェメラル信号も除外する。
ユーザと対話するために、本明細書に開示される発明の実施は、ユーザに情報を表示するためのディスプレイ装置、例えば陰極線管(CRT)や液晶ディスプレイ(LCD)モニタ、並びにユーザがコンピュータに入力可能なキーボードおよびポインティングデバイス、例えばマウスやトラックボールを有するコンピュータ上で実行することができる。他の種類の装置が同様にユーザと対話するために使用可能であり、例えば、ユーザに提供されるフィードバックは、例えば視覚フィードバック、聴覚フィードバック、あるいは触覚フィードバックなどの任意の形態の知覚のフィードバックであり、ユーザからの入力は聴覚、音声、あるいは触覚の入力を含む任意の形態で受信可能である。付加的に、コンピュータはユーザによって使用される装置にドキュメントを送信することにより、また、この装置からドキュメントを受信することにより、例えばウェブブラウザから受信したリクエストに応じてユーザのクライアント装置上のウェブブラウザにウェブページを送信することによってユーザと対話することができる。
本明細書に開示される発明は、例えばデータサーバとしてのバックエンドコンポーネントを含むか、例えばアプリケーションサーバのようなミドルウェアコンポーネントを含むか、例えばユーザが本明細書に開示される発明の実施と対話できるグラフィカルユーザインターフェースまたはウェブブラウザを有するクライアントコンピュータなどのフロントエンドコンポーネント、あるいは1つ以上の上記バックエンドコンポーネント、ミドルウェアコンポーネントや、フロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムにおいて実施される。システムの要素は、デジタルデータ通信、例えば通信ネットワークの任意の形態あるいは媒体によって相互に接続される。通信ネットワークの例はローカルエリアネットワーク(LAN)および広域ネットワーク(WAN)、相互ネットワーク(例えばインターネット)、並びにピアツーピアネットワーク(例えばアドホックのピアツーピアネットワーク)を含む。
コンピューティングシステムはクライアントおよびサーバを含む。クライアントおよびサーバは、通常互いに隔離され、通常通信ネットワークを介して対話する。クライアントおよびサーバの関係は、それぞれのコンピュータ上で作動するとともに互いにクライアントサーバ関係を有するコンピュータプログラムによって生じる。本発明のいくつかの態様において、サーバは、クライアント装置に(例えば、クライアント装置と対話するユーザにデータを表示するとともにユーザからユーザ入力を受信するために)データ(例えばHTMLページ)を送信する。クライアント装置で生成されたデータ(例えばユーザとの対話の結果)は、サーバでクライアント装置から受信することができる。
開示したプロセスにおける工程の任意の特定の順序や階層は、アプローチの例示であるものと理解される。設計の選択に基づいて、プロセスにおける工程の特定の順序または階層は再構成されてもよいこと、あるいはすべての図示した工程が行われてもよいことが理解される。工程のうちのいくつかは同時に行われてもよい。例えば、所定の状況において、マルチタスクおよび並列処理が効果的である。更に、上述した様々なシステムコンポーネントの分離はそのような分離を必要とするものとして理解する必要はなく、上述したプログラムコンポーネントおよびシステムは、通常1つのソフトウェアプロダクトに一体的に統合されるか、複数のソフトウェア製品にパッケージ化され得るものと理解されるべきである。
これらの態様に対する様々な変更が容易に明白なものとなり、また、ここに定義される総括的な原理は、他の態様に適用されてもよい。従って、請求項は、ここに示した態様に制限されるようには意図されないが、言語の請求項と一致する全体の範囲に一致するように意図され、単数の要素への言及は、特に記載が無い限り「1つで1つのみ」を意味するようには意図されないが、むしろ「1つ以上」を意味するように意図される。特に別記しない限り、用語「いくつかの」は1つ以上を示す。男性代名詞(例えば彼の)は、女性および中性のジェンダ(例えば、彼女の、およびその)を含み、その逆もいえる。標題および副題は、もしあれば、便宜のためにのみ使用され、本発明の技術を制限するものではない。
例えば「態様」などの句は、態様が本発明の技術にとって必要であること、あるいは態様が本発明の技術のすべての構成に適用されることを示唆するものではない。態様に関する開示は、すべての構成、あるいは1つ以上の構成に適用される。例えば、態様などの句は1つ以上の態様を示し、その逆もいえる。例えば、「構成」などの句は、構成が本発明の技術にとって必要であること、あるいは構成が本発明の技術のすべての構成に適用されることを示唆するものではない。構成に関する開示は、すべての構成、あるいは1つ以上の構成に適用される。例えば、構成などの句は1つ以上の構成を示し、その逆もいえる。

Claims (20)

  1. コンピューティングデバイスのオペレーティングシステムのための更新を前記コンピューティングデバイスで第1時刻に受信することであって、前記第1時刻には前記オペレーティングシステムの第1のコピーが前記コンピューティングデバイスの1つ以上のプロセッサ上で稼動している、前記受信すること;
    受信した前記更新に基づき、前記オペレーティングシステムの前記第1のコピーを実行している前記1つ以上のプロセッサが、前記オペレーティングシステムの第2のコピーを更新すること;
    前記コンピューティングデバイスの再起動前の状態を第2時刻に格納すること;
    前記コンピューティングデバイスを再起動することであって、前記コンピューティングデバイスの再起動、前記オペレーティングシステムの前記第2のコピーが前記1つ以上のプロセッサ上で稼働する、前記再起動すること;
    前記コンピューティングデバイスの再起動後に、前記格納された再起動前の状態に少なくとも一部基づき前記コンピューティングデバイスの前記1つ以上のプロセッサ上で稼動している前記オペレーティングシステムの前記更新された第2のコピーへのユーザアクセスを提供すること
    を含むことを特徴とする方法。
  2. 前記再起動前の状態は、前記コンピューティングデバイスの特定のユーザとして前記コンピューティングデバイスにログインするためのログイン情報を含み、前記コンピューティングデバイスの前記特定のユーザは、前記第2時刻において前記コンピューティングデバイスにログインした状態であることを特徴とする請求項1に記載の方法。
  3. 前記コンピューティングデバイスの前記格納された再起動前の状態に少なくとも一部基づき前記オペレーティングシステムの前記更新された第2のコピーへの前記ユーザアクセスを提供することは、
    ユーザが前記ログイン情報を再入力することを必要とせずに、前記再起動前の状態の前記ログイン情報に少なくとも一部基づき前記コンピューティングデバイスにログインすることを含むことを特徴とする請求項2に記載の方法。
  4. 前記第2時刻は、前記第1時刻と同時にあるいは前記第1時刻の後の予め設定された期間内に発生することを特徴とする請求項1に記載の方法。
  5. 前記第2時刻は、前記コンピューティングデバイスがスリープモードにあるときに発生し、前記第2時刻は予め定められた時間期間差で前記第1時刻の次に起こることを特徴とする請求項1に記載の方法。
  6. 前記オペレーティングシステムの前記第1および第2のコピーは前記オペレーティングシステムのための前記更新とは異なることを特徴とする請求項1に記載の方法。
  7. 前記コンピューティングデバイスの再起動後に、前記オペレーティングシステムの前記第2のコピーは前記コンピューティングデバイスの前記1つ以上のプロセッサ上で稼動しており、前記オペレーティングシステムの前記第1のコピーは前記コンピューティングデバイスの前記1つ以上のプロセッサ上で稼動していないことを特徴とする請求項6に記載の方法。
  8. 前記オペレーティングシステムの前記第2のコピーを実行する前記1つ以上のプロセッサによって、前記コンピューティングデバイスの再起動後に、前記受信した更新に少なくとも一部基づき前記オペレーティングシステムの前記第1のコピーを更新することを更に含むことを特徴とする請求項7に記載の方法。
  9. 前記再起動前の状態は前記コンピューティングデバイスのディスク上に暗号化されて格納され、前記コンピューティングデバイスのランダムアクセスメモリ(RAM)は前記コンピューティングデバイスの再起動中に駆動された状態を保持することを特徴とする請求項1に記載の方法。
  10. 前記再起動前の状態は、前記コンピューティングデバイスで開いているウィンドウの組、前記ウィンドウの組内で開いているタブの組、前記ウィンドウの組内の情報、および前記ウィンドウの組内の現在のアクティブウィンドウを識別するものであり、前記コンピューティングデバイスの前記格納された再起動前の状態に少なくとも一部基づき前記オペレーティングシステムの前記更新された第2のコピーへの前記ユーザアクセスを提供することは、
    前記オペレーティングシステムの前記更新された第2のコピー内において、前記ウィンドウの組、前記タブの組、前記ウィンドウの組内の前記情報、および前記再起動前の状態の前記現在のアクティブウィンドウを再表示することを含むことを特徴とする請求項1に記載の方法。
  11. コンピュータの1つ以上のプロセッサによって実行されるときに前記コンピュータの前記1つ以上のプロセッサに方法を実行させる指示を含む非一時的コンピュータ可読媒体であって、前記方法は、
    オペレーティングシステムの第1のコピーが前記コンピュータの前記1つ以上のプロセッサ上で稼動しているときに、前記コンピュータの前記オペレーティングシステムのための更新を受信すること;
    前記オペレーティングシステムの前記第1のコピーを実行している前記コンピュータの前記1つ以上のプロセッサによって、前記受信した更新に少なくとも一部基づき前記オペレーティングシステムの第2のコピーを更新すること;
    前記コンピュータの再起動前の状態を格納すること;
    前記コンピュータを再起動することであって、前記コンピュータを再起動した後に、前記オペレーティングシステムの前記第2のコピーは前記コンピュータの前記1つ以上のプロセッサ上で稼動している、前記コンピュータを再起動すること;
    前記コンピュータの再起動後に前記コンピュータの前記格納された再起動前の状態に少なくとも一部基づき前記オペレーティングシステムの前記更新された第2のコピーへのユーザアクセスを提供すること
    を含むことを特徴とする非一時的コンピュータ可読媒体。
  12. 前記再起動前の状態は、前記コンピュータの特定のユーザとして前記コンピュータにログインするためのログイン情報を含むことを特徴とする請求項11に記載の非一時的コンピュータ可読媒体。
  13. 前記コンピュータの前記格納された再起動前の状態に少なくとも一部基づき前記オペレーティングシステムの前記更新された第2のコピーへの前記ユーザアクセスを提供することは、
    ユーザが前記ログイン情報を再入力することを必要とせずに、前記再起動前の状態の前記ログイン情報に少なくとも一部基づき前記コンピュータにログインすることを含み、前記再起動前の状態が格納されると、前記コンピュータの前記特定のユーザは前記コンピュータにログインした状態となることを特徴とする請求項12に記載の非一時的コンピュータ可読媒体。
  14. 前記コンピュータの前記オペレーティングシステムのための前記更新は第1時刻に受信され、前記コンピュータの前記再起動前の状態は第2時刻に格納されることを特徴とする請求項11に記載の非一時的コンピュータ可読媒体。
  15. 前記第2時刻は、前記第1時刻と同時あるいは前記第1時刻の後の予め設定された期間内に発生することを特徴とする請求項14に記載の非一時的コンピュータ可読媒体。
  16. 前記第2時刻は、前記コンピュータがスリープモードにあるときに発生し、前記第2時刻は予め定められた時間期間の差で前記第1時刻の次に起こることを特徴とする請求項14に記載の非一時的コンピュータ可読媒体。
  17. 前記オペレーティングシステムの前記第1のコピーおよび前記オペレーティングシステムの前記第2のコピーは前記オペレーティングシステムのための更新とは異なることを特徴とする請求項14に記載の非一時的コンピュータ可読媒体。
  18. 前記方法は、前記オペレーティングシステムの前記第2のコピーを実行している前記1つ以上のプロセッサによって、前記コンピュータの再起動後に、前記受信した更新に少なくとも一部基づき前記オペレーティングシステムの前記第1のコピーを更新することを更に含むことを特徴とする請求項17に記載の非一時的コンピュータ可読媒体。
  19. コンピューティングデバイスであって、
    1つ以上のプロセッサと、
    前記1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに方法を実行させる指示を含むメモリとを備え、前記方法は、
    オペレーティングシステムの第1のコピーが前記コンピューティングデバイスの前記1つ以上のプロセッサ上で稼動しているときに、前記コンピューティングデバイスのオペレーティングシステムのための更新を前記コンピューティングデバイスで受信すること;
    前記コンピューティングデバイスの再起動前の状態を格納すること;
    前記コンピューティングデバイスを再起動することであって、前記コンピューティングデバイスの再起動前に、あるいは再起動中に、前記コンピューティングデバイスの前記オペレーティングシステムの第2のコピーは、受信した前記更新に少なくとも一部基づき前記1つ以上のプロセッサによって更新され、前記コンピューティングデバイスの再起動後に、前記コンピューティングデバイスの前記オペレーティングシステムの前記第2のコピーは、前記コンピューティングデバイスの前記1つ以上のプロセッサ上で稼動する、コンピューティングデバイスを再起動すること;
    前記コンピューティングデバイスの再起動後に、前記コンピューティングデバイスの前記格納された再起動前の状態に少なくとも一部基づき前記1つ以上のプロセッサ上で稼動している前記オペレーティングシステムの前記更新された第2のコピーへのユーザアクセスを提供すること;
    前記コンピューティングデバイスを再起動した後に、前記オペレーティングシステムの前記第2のコピーが前記1つ以上のプロセッサ上で稼動しているときに、前記受信した更新に少なくとも一部基づき前記コンピューティングデバイスの前記オペレーティングシステムの前記第1のコピーを前記1つ以上のプロセッサによって更新すること
    を含むことを特徴とするコンピューティングデバイス。
  20. 前記メモリは、前記オペレーティングシステムの前記第1のコピーおよび前記オペレーティングシステムの前記第2のコピーを格納するユーザ変更不能メモリ領域を更に含み、前記オペレーティングシステムの前記第1のコピーおよび前記オペレーティングシステムの前記第2のコピーは、前記オペレーティングシステムのための前記更新とは異なることを特徴とする請求項19に記載のコンピューティングデバイス。
JP2016536708A 2013-12-05 2014-12-05 オペレーティングシステムの更新 Active JP6178515B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/098,451 2013-12-05
US14/098,451 US8990793B1 (en) 2013-12-05 2013-12-05 Updating an operating system
PCT/US2014/068780 WO2015085167A1 (en) 2013-12-05 2014-12-05 Updating an operating system

Publications (2)

Publication Number Publication Date
JP2016539426A JP2016539426A (ja) 2016-12-15
JP6178515B2 true JP6178515B2 (ja) 2017-08-09

Family

ID=52683501

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016536708A Active JP6178515B2 (ja) 2013-12-05 2014-12-05 オペレーティングシステムの更新

Country Status (8)

Country Link
US (2) US8990793B1 (ja)
EP (1) EP3077905A4 (ja)
JP (1) JP6178515B2 (ja)
KR (1) KR101824013B1 (ja)
CN (1) CN105793817B (ja)
AU (1) AU2014360323B2 (ja)
CA (1) CA2929621C (ja)
WO (1) WO2015085167A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298931B (zh) * 2014-09-29 2018-04-10 深圳酷派技术有限公司 信息处理方法和信息处理装置
US10187362B1 (en) * 2015-06-22 2019-01-22 Amazon Technologies, Inc. Secure streamlined provisioning of remote access terminals
US10102008B2 (en) * 2015-09-02 2018-10-16 Dell Products L.P. Managed boot process system
US10936296B2 (en) * 2019-05-07 2021-03-02 Microsoft Technology Licensing, Llc Automated application updates during operating system upgrades
KR20210004288A (ko) * 2019-07-04 2021-01-13 삼성전자주식회사 전자장치 및 그 제어방법
CN111367963B (zh) * 2020-02-28 2023-07-25 北京百度网讯科技有限公司 一种确定来源渠道的方法、装置、设备和计算机存储介质

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3457032B2 (ja) * 1993-09-30 2003-10-14 富士通株式会社 オペレーティングシステム更新装置
US6944854B2 (en) * 2000-11-30 2005-09-13 International Business Machines Corporation Method and apparatus for updating new versions of firmware in the background
US6963981B1 (en) * 2001-01-29 2005-11-08 Akamai Technologies, Inc. Method and apparatus for remote installation of an operating system over a network connection
US20040187104A1 (en) * 2003-03-18 2004-09-23 Shantanu Sardesai Operating system deployment methods and systems
EP1685482A4 (en) * 2003-09-24 2007-08-29 Ti Technologies Ltd A New Zeal METHOD AND APPARATUS FOR AMORATING COMPUTER SYSTEM
TWI258671B (en) * 2004-04-16 2006-07-21 Intervideo Digital Technology System for automatic downloading for data update in computer system with two operation systems and method thereof
US20060271923A1 (en) * 2005-05-25 2006-11-30 International Business Machines Corporation Methods and apparatus for categorizing computer system states for use in identifying individual computer systems to receive state-dependent maintenance
US20070180206A1 (en) * 2006-01-18 2007-08-02 Craft Julie L Method of updating a duplicate copy of an operating system on the same disk
JP2007213494A (ja) * 2006-02-13 2007-08-23 Ntt Docomo Inc 更新起動装置及び更新起動制御方法
US8170540B2 (en) * 2006-09-07 2012-05-01 Qualcomm Incorporated System and methods for remotely upgrading software applications
US8006241B2 (en) * 2007-06-20 2011-08-23 International Business Machines Corporation Automatic software installation and cleanup
JP5167936B2 (ja) * 2008-05-08 2013-03-21 日本電気株式会社 情報処理装置
US8171276B2 (en) * 2008-06-10 2012-05-01 International Business Machines Corporation Minimal startup mode for performing multiple-reboot configuration
US8429639B2 (en) 2009-02-10 2013-04-23 Microsoft Corporation Image-based software update
US20120110562A1 (en) * 2010-10-27 2012-05-03 David Heinrich Synchronized firmware update
DE102011102425A1 (de) * 2011-05-24 2012-11-29 Heidelberger Druckmaschinen Ag Simultanes Softwareupdate
KR20130024667A (ko) * 2011-08-31 2013-03-08 삼성전자주식회사 소프트웨어를 자동으로 설치하는 방법 및 장치
US20140059534A1 (en) * 2012-08-22 2014-02-27 General Electric Company Method and system for software management
US9218178B2 (en) * 2012-08-29 2015-12-22 Microsoft Technology Licensing, Llc Secure firmware updates
US9195575B2 (en) * 2013-05-17 2015-11-24 Coherent Logix, Incorporated Dynamic reconfiguration of applications on a multi-processor embedded system

Also Published As

Publication number Publication date
CA2929621C (en) 2018-07-10
CA2929621A1 (en) 2015-06-11
WO2015085167A1 (en) 2015-06-11
US9524159B2 (en) 2016-12-20
JP2016539426A (ja) 2016-12-15
AU2014360323A1 (en) 2016-05-19
EP3077905A4 (en) 2017-06-28
CN105793817B (zh) 2019-07-26
KR20160095066A (ko) 2016-08-10
KR101824013B1 (ko) 2018-01-31
CN105793817A (zh) 2016-07-20
US20150169315A1 (en) 2015-06-18
AU2014360323B2 (en) 2020-05-21
EP3077905A1 (en) 2016-10-12
US8990793B1 (en) 2015-03-24

Similar Documents

Publication Publication Date Title
JP6178515B2 (ja) オペレーティングシステムの更新
US10552644B2 (en) Method and apparatus for displaying information content
US20200133650A1 (en) Security model for live applications in a cloud collaboration platform
US9635138B2 (en) Client-server input method editor architecture
US9722873B2 (en) Zero-downtime, reversible, client-driven service migration
US8255806B2 (en) Unified secure virtual machine player and remote desktop client
CN102779050B (zh) 提供加速的引导性能的系统和方法
US10534817B2 (en) Sharing a process in a web client
US20170083166A1 (en) Management of inactive windows
US9575840B1 (en) Recovery rollback risk reduction
US11054915B2 (en) Locally implemented terminal latency mitigation
US11734032B1 (en) Virtual desktop switching and communications
US20170131883A1 (en) Generating user interface configuration pages to configure a computing resource comprised of component computing resources
EP3371715B1 (en) Generating a deferrable data flow
US9519395B1 (en) Presenting windows or tabs
US9652130B1 (en) Auto-sizing an untrusted view
US10678646B2 (en) Self-recovering application
US20150212824A1 (en) Booting a machine using a firmware file system
US20140181103A1 (en) Modifying a user profile
Binnie et al. Loop Disks and Wubi
Halsey et al. Getting Started with Virtualization
Tawanda An Evaluation of Windows 7 Release Candidate

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160818

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160603

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170519

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170713

R150 Certificate of patent or registration of utility model

Ref document number: 6178515

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250