説明

レジューム方法、プログラムおよび情報処理装置

【課題】 サスペンド/ハイバネーションから使用中の状態に復帰するとき、デバイスの設定やメモリの使用状態を戻すのに多くの時間を要する。また、復帰後アプリケーションを、ハードウェア初期化を含む初期状態で再起動するとさらに多くの時間を要してしまう。
【解決手段】 情報処理装置がサスペンド/ハイバネーション要求を受信した場合、起動中のアプリケーションを再起動し、アプリケーションは初期化処理のうちハードウェアの初期化処理を除く初期化処理を実行した後にサスペンド/ハイバネーション状態に移行すると共に、サスペンド/ハイバネーション状態からの復帰時には情報処理装置の復帰処理の後、ハードウェアの初期化処理から開始するようにする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置のレジューム機能に関し、特にレジューム動作時のアプリケーションの扱いに関する。
【背景技術】
【0002】
PC(Personal Computer)など、消費電力を抑えるためにレジューム(Resume)機能を搭載する機器が増えている。サスペンドまたはハイバネーション状態に移行するとバックアップ用の電源を除きPC本体の電源を停止することができる。そして使用する前には必要な情報を復元し、サスペンドまたはハイバネーションになった直前の状態から作業を再開することができる。
【0003】
近年の機器への搭載メモリ容量の増加やOS(Operating System)のコード量の増加もあり、この復元作業にかかる時間が増加する傾向にある。
【0004】
このため、復帰時にはあらかじめ用意した、起動が完了した時点の各プログラムのメモリイメージをロードすることで、アプリケーションの起動開始から起動完了までの時間を短縮する発明が提案されている(特許文献1を参照)。
【特許文献1】特開2005−284491号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
レジューム機能は、使用中の状態を維持したまま暫時の不使用時間における省電力を実現する機能である。しかしながら、サスペンドまたはハイバネーションから使用中の状態に復帰するとき、デバイスの設定やメモリの使用状態を復元するのに多くの時間を要する。また、復帰後アプリケーションを、ハードウェア初期化を含む初期状態で再起動するとさらに多くの時間を要することとなる。
【0006】
本発明は上記の事情に鑑みてなされたもので、サスペンドまたはハイバネーション状態から復帰するときに要する時間を短縮可能なレジューム方法、プログラムおよび情報処理装置の提供を目的とする。
【課題を解決するための手段】
【0007】
本発明のレジューム方法は、
情報処理装置における、サスペンドまたはハイバネーション状態からの復帰時にハードウェアの初期化を伴うレジューム方法であって、前記情報処理装置がサスペンドまたはハイバネーション要求を受信した場合、起動中のアプリケーションを終了後、再び前記アプリケーションを起動し、起動した該アプリケーションは初期化処理のうち、ハードウェアの初期化処理を除く初期化処理を実行した後に起動処理を停止し、該アプリケーションの停止後、前記情報処理装置がサスペンドまたはハイバネーション状態に移行すると共に、前記情報処理装置がサスペンドまたはハイバネーション状態からの復帰要求を受信した場合、該情報処理装置はサスペンドまたはハイバネーション状態からの復帰処理を開始し、停止していた前記アプリケーションは、前記情報処理装置の復帰処理の後、前記ハードウェアの初期化処理を開始すると共に前記起動処理を再開することを特徴とする。
【0008】
また別の態様のレジューム方法は、
情報処理装置における、サスペンドまたはハイバネーション状態からの復帰時にハードウェアの初期化を伴うレジューム方法であって、アプリケーションがサスペンドまたはハイバネーション要求を受信した場合、起動中の当該アプリケーションを終了後再起動し、該アプリケーションは初期化処理のうち、ハードウェアの初期化処理を除く初期化処理を実行した後に、前記情報処理装置に対しサスペンドまたはハイバネーション状態に移行するよう指示すると共に起動処理を停止し、該アプリケーションの停止後、前記情報処理装置がサスペンドまたはハイバネーション状態に移行すると共に、前記情報処理装置がサスペンドまたはハイバネーション状態からの復帰要求を受信した場合、該情報処理装置はサスペンドまたはハイバネーション状態からの復帰処理を開始し、停止していた前記アプリケーションは、前記情報処理装置の復帰処理の後、前記ハードウェアの初期化処理を開始すると共に前記起動処理を再開することを特徴とする。
【0009】
また、これらのレジューム方法を実現するためのプログラムおよび情報処理装置が提供される。
【発明の効果】
【0010】
サスペンドまたはハイバネーション状態から復帰するときに要する時間を短縮可能なレジューム機能を実現する。
【発明を実施するための最良の形態】
【0011】
図1は、本実施形態にかかる情報処理装置のブロック構成図の一例を示す図である。図1には、PC100、CPU101、メモリ102、入力装置103、表示装置104、HDD105、通信部106、LAN107、内部バス108および電源部109が示されている。
【0012】
PC100は、レジューム機能を備えたノートPCである。ここでいうレジュームとは、PCの電源を切る直前の状態を保存し、次に電源を入れたときに電源を切る前の状態から作業を再開する機能を指す。レジューム機能には2つの実現方法が含まれる。一つは中断する際にメモリ上のデータを磁気ディスクなどに丸ごとコピーしてメモリの電源も切れるようにしたハイバネーションと、作業状態をメモリ上に保持したまま省電力モード状態とするサスペンドである。いずれの方法も、いちいちOSやアプリケーションソフトの終了や起動を行なう場合よりも時間や手間がかからず、消費電力も抑えることができる。好適にはこの機能をノードPCなどの持ち運びができる機器に応用すると、必要なときに使用をやめてすぐに携行できるうえ、使用するときでもすぐさま使用することができる。携行中など使用していないときにはバッテリーの消耗を抑えることもでき、機器の利便性を高めることができる。以降の説明ではレジューム機能のうち、ハイバネーションを例に説明するが、これに限定されるものではない。
【0013】
CPU101は、PC100が内蔵するCPU(Central Processing Unit)である。PC100の全体の制御も司る。
【0014】
メモリ102は、半導体メモリから構成されるメモリ装置である。通常は、CPU101が処理するプログラムや一時データが格納される。
【0015】
入力装置103は、たとえばキーボードやマウス、タッチパッドが考えられる。PC100に備えられており、コマンド等利用者の指示を入力するのに利用される。
【0016】
表示装置104は、たとえばPC100が内蔵するLCDディスプレイである。
【0017】
HDD105は、PC100が内蔵する磁気ディスク装置である。CPU101が処理するプログラムはあらかじめHDD105に格納される。また、ハイバネーションする場合、HDD105にメモリ等のデータを保存する場所としても使用される。
【0018】
内部バス106は、PC100内の各構成ユニットを接続し、データの交換を行うためのバスである。各構成ユニットは内部バス106を介してデータの授受を実現する。
【0019】
電源部107は、PC100に内蔵する各構成部分に電力を供給する。また、必要に応じて構成部分毎に電力を供給したり遮断したりすることができる。たとえば、サスペンドに移行した時にはメモリ102に電力を供給したままにするが、他の構成部分の電力は遮断する場合が考えられる。
【0020】
図2は、従来のレジューム機能の動作フローを示す図である。
【0021】
その機器の利用者がハイバネーションに移行しようとしたとき、まず起動中のアプリケーションの処理を終了する(ステップS01)。本実施形態のアプリケーションはレジューム動作の有無には関わりなく、機器の電源が落ちる場合にはハードウェアの初期化をすべきであって再度初期状態から起動させたいアプリケーションを想定している。たとえば組込み機器上で稼動するアプリケーションなど、その機器の立ち上げ時間は短縮したいが復帰の際には作業域のメモリやハードウェアの初期化が好ましい場合が考えられる。
【0022】
次にOSによるハイバネーション動作が開始され(ステップS02)、電源部109により機器の電源が遮断される(ステップS03)。
【0023】
利用者が使用を再開するためその機器の電源スイッチを操作する、あるいはキーボードを叩くなどの操作をトリガーとして電源部109から電源が供給されると(ステップS04)、最初に立ち上がったOSによってハイバネーション以前へ復帰するための処理が開始される(ステップS05)。
【0024】
OSは必要な復帰処理が終わったところで、先に終了したアプリケーションを起動する(ステップS06)。起動すると自身の稼動に必要なライブラリのロード、メモリ領域の初期化などを実行する。
【0025】
次にアプリケーションは自身が稼動するのに必要なハードウェアの初期化処理を済ませ(ステップS07)、通常の処理を開始する(ステップS08)。
【0026】
図3は、本実施形態にかかるレジューム機能の動作フローの一例を示す図である。従来行われていたレジューム動作と比べてアプリケーションの動作が異なる。
【0027】
利用者がハイバネーションを指示すると、OSからこの指示を受けたアプリケーションは一旦終了し(ステップS11)、その後、そのアプリケーションを再起動する(ステップS12)。このときアプリケーションは自身の稼動に必要なライブラリのロード、メモリ領域の初期化などを実行後、ハードウェアの初期化処理の前で一旦処理を停止する。
【0028】
次にOSによるハイバネーション動作が開始され(ステップS13)、電源部109により機器の電源が遮断される(ステップS14)。
【0029】
利用者が使用を再開するためその機器の電源スイッチを操作する、あるいはキーボードを叩くなどの操作をトリガーとして電源部109から電源が供給されると(ステップS15)、最初に立ち上がったOSによってハイバネーション以前へ復帰するための処理が開始される(ステップS16)。
【0030】
OSは必要な復帰処理が終わったところで、先に停止していたアプリケーションに処理の継続を指示することで、アプリケーションはハードウェアの初期化処理を開始する(ステップS17)。その後、アプリケーションは通常の処理を開始する(ステップS18)。
【0031】
このとき、アプリケーションによるハードウェアの初期化(ステップS17)は、電源が落ちるとリセットされてしまうためレジューム後電源が供給されてからでなければならない。
【0032】
このように構成すると、アプリケーションによるハードウェア初期化処理直前までのメモリ状態保存しておけるため復帰後の処理が軽減される。よって、ハイバネーション状態から復帰するときに要するアプリケーションの起動時間を短縮できる。
【0033】
図4は、本実施形態にかかるアプリケーションのレジューム動作フローの一例を示す図である。
【0034】
アプリケーションはハイバネーションの指示を受けたと判断すると(ステップS21でYes)、一旦終了して再起動する(ステップS22)。ハイバネーション指示は、アプリケーションが利用者からOSを介することで取得する。
【0035】
再起動の後、自身の稼動に必要なライブラリのロード、メモリ領域の初期化などを実行後(ステップS23)、ハードウェアの初期化処理を残して一旦処理を停止する。
【0036】
ハードウェアの初期化をのぞく必要な初期化が終わった場合、ハイバネーションに入る準備が完了したことをOSに通知する(ステップS24)。
【0037】
図5は、本実施系地にかかるOSのレジューム動作フローの一例を示す図である。
【0038】
OSは利用者からハイバネーションの指示をうけたと判断すると(ステップS31でYes)、起動中のアプリケーションにハイバネーションを指示する(ステップS32)。この実施形態はOS側で利用者のハイバネーション要求を取得する場合である。変形例としてはアプリケーションが利用者のレジューム要求を受け取ることも考えられ、この場合にはアプリケーションからOSに対してハイバネーション指示があったことを通知することになる。いずれの場合であっても以降の処理フローおよび効果に違いは無い。
【0039】
次にアプリケーションのハイバネーション準備が完了したか否かを判断する(ステップS33)。アプリケーションがハイバネーション準備完了とならない間(No)、OSによるハイバネーション処理は待たされる。
【0040】
アプリケーションのハイバネーション準備が完了した場合(Yes)、OSはハイバネーション処理を再開する(ステップS34)。
【0041】
図6は、本実施形態にかかるアプリケーションの復帰動作フローの一例を示す図である。
【0042】
ハイバネーション状態となっていたアプリケーションは、OSによる復帰処理によりスケジュールされるようになると自動的に処理を再開する。このとき、OSが中途半端な状態のまま稼動するのを避けるため、OSの復帰処理が終わったか否かを判断する(ステップS42)。OSが復帰していない間は(No)、初期化処理についてはハイバネーション準備完了をOSに通知した時点の状態で待機し続ける。
【0043】
OSが復帰した場合(Yes)、アプリケーションはハードウェアの初期化を実行する(ステップS42)。その後、アプリケーションは通常の処理を開始する(ステップS43)。
【0044】
OSが復帰したか否かの判断に際しては、OS側からイベントを発行し、これを受けることで待機状態を終了させる方法が考えられる。
【0045】
図7は、本実施形態にかかるOSの復帰動作フローの一例を示す図である。
【0046】
ハイバネーション状態から復帰したOSは、ハイバネーション前の状態へと復帰する(ステップS51)。その後、ハードウェア初期化処理直前で待機状態にあるアプリケーションに対し、初期化作業を継続しても良いことを通知する(ステップS52)。
【0047】
このように構成すると、アプリケーションによるハードウェア初期化処理直前までのメモリ状態を保存しておけるため復帰後の処理が軽減される。よって、ハイバネーションあるいはサスペンド状態から復帰するときに要するアプリケーションの起動時間を短縮できる。
【0048】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0049】
【図1】本実施形態にかかる情報処理装置のブロック構成図の一例を示す図である。
【図2】従来のレジューム機能の動作フローを示す図である。
【図3】本実施形態にかかるレジューム機能の動作フローの一例を示す図である。
【図4】本実施形態にかかるアプリケーションのレジューム動作フローの一例を示す図である。
【図5】本実施系地にかかるOSのレジューム動作フローの一例を示す図である。
【図6】本実施形態にかかるアプリケーションの復帰動作フローの一例を示す図である。
【図7】本実施形態にかかるOSの復帰動作フローの一例を示す図である。
【符号の説明】
【0050】
100・・・PC、101・・・CPU、102・・・メモリ、103・・・入力装置、104・・・表示装置、105・・・HDD、106・・・内部バス、107・・・電源部

【特許請求の範囲】
【請求項1】
情報処理装置における、サスペンドまたはハイバネーション状態からの復帰時にハードウェアの初期化を伴うレジューム方法であって、
前記情報処理装置がサスペンドまたはハイバネーション要求を受信した場合、起動中のアプリケーションを終了後、再び前記アプリケーションを起動し、
起動した該アプリケーションは初期化処理のうち、ハードウェアの初期化処理を除く初期化処理を実行した後に起動処理を停止し、
該アプリケーションの停止後、前記情報処理装置がサスペンドまたはハイバネーション状態に移行すると共に、
前記情報処理装置がサスペンドまたはハイバネーション状態からの復帰要求を受信した場合、該情報処理装置はサスペンドまたはハイバネーション状態からの復帰処理を開始し、
停止していた前記アプリケーションは、前記情報処理装置の復帰処理の後、前記ハードウェアの初期化処理を開始すると共に前記起動処理を再開する
ことを特徴とするレジューム方法。
【請求項2】
情報処理装置における、サスペンドまたはハイバネーション状態からの復帰時にハードウェアの初期化を伴うレジューム方法であって、
アプリケーションがサスペンドまたはハイバネーション要求を受信した場合、起動中の当該アプリケーションを終了後再起動し、
該アプリケーションは初期化処理のうち、ハードウェアの初期化処理を除く初期化処理を実行した後に、前記情報処理装置に対しサスペンドまたはハイバネーション状態に移行するよう指示すると共に起動処理を停止し、
該アプリケーションの停止後、前記情報処理装置がサスペンドまたはハイバネーション状態に移行すると共に、
前記情報処理装置がサスペンドまたはハイバネーション状態からの復帰要求を受信した場合、該情報処理装置はサスペンドまたはハイバネーション状態からの復帰処理を開始し、
停止していた前記アプリケーションは、前記情報処理装置の復帰処理の後、前記ハードウェアの初期化処理を開始すると共に前記起動処理を再開する
ことを特徴とするレジューム方法。
【請求項3】
情報処理装置で稼動する、サスペンドまたはハイバネーション状態からの復帰時にハードウェアの初期化を伴うプログラムであって、
前記情報処理装置からサスペンドまたはハイバネーション要求を受信した場合、終了するステップと、
再び起動された場合、初期化処理のうちハードウェアの初期化処理を除く初期化処理を実行した後に起動処理を停止するステップと、
この停止を解除する要求を受信した場合、前記ハードウェアの初期化処理を開始すると共に前記起動処理を再開するステップと
を有することを特徴とするプログラム。
【請求項4】
情報処理装置で稼動する、サスペンドまたはハイバネーション状態からの復帰時にハードウェアの初期化を伴うプログラムであって、
サスペンドまたはハイバネーション要求を受信した場合、終了後再起動するステップと、
初期化処理のうちハードウェアの初期化処理を除く初期化処理を実行した後に、前記情報処理装置に対しサスペンドまたはハイバネーション状態に移行するよう指示すると共に起動処理を停止するステップと、
この停止を解除する要求を受信した場合、前記ハードウェアの初期化処理を開始すると共に前記起動処理を再開するステップと
を有することを特徴とするプログラム。
【請求項5】
レジューム機能を備える情報処理装置であって、
前記情報処理装置で稼動するアプリケーションと、
サスペンドまたはハイバネーション要求を受信した場合、起動中の前記アプリケーションを終了後、再び該アプリケーションを起動する手段と、
サスペンドまたはハイバネーション状態に移行する手段と、
サスペンドまたはハイバネーション状態からの復帰要求を受信した場合、サスペンドまたはハイバネーション状態からの復帰処理を開始する手段と
を備え、
前記アプリケーションは、
起動後の初期化処理のうち、前記情報処理装置のハードウェアの初期化処理を除く初期化処理を実行した後に起動処理を停止する手段と、
前記停止の解除指示を受信した場合、前記ハードウェアの初期化処理を開始すると共に前記起動処理を再開する手段と
を備えることを特徴とする情報処理装置。
【請求項6】
レジューム機能を備える情報処理装置であって、
前記情報処理装置で稼動するアプリケーションと、
サスペンドまたはハイバネーション要求を受信した場合、サスペンドまたはハイバネーション状態に移行する手段と、
サスペンドまたはハイバネーション状態からの復帰要求を受信した場合、サスペンドまたはハイバネーション状態からの復帰処理を開始する手段と
を備え、
前記アプリケーションは、
サスペンドまたはハイバネーション要求を受信した場合、終了後、再起動する手段と、
該再起動後の初期化処理のうち、前記情報処理装置のハードウェアの初期化処理を除く初期化処理を実行した後に、前記情報処理装置に対しサスペンドまたはハイバネーション状態に移行するよう指示すると共に起動処理を停止する手段と、
前記停止の解除指示を受信した場合、前記ハードウェアの初期化処理を開始すると共に前記起動処理を再開する手段と
を備えることを特徴とする情報処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2008−152708(P2008−152708A)
【公開日】平成20年7月3日(2008.7.3)
【国際特許分類】
【出願番号】特願2006−342563(P2006−342563)
【出願日】平成18年12月20日(2006.12.20)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】