(57)【特許請求の範囲】
【請求項１】
端末のアプリケーション同期化方法であって、
同期化するアプリケーションが保存されるとき、第１アプリケーションの同期化周期と、以前に保存されたアプリケーションの同期化周期及びタイミングとを獲得するステップと、
前記第１アプリケーションの同期化周期の変更が可能かどうかを識別（ｉｄｅｎｔｉｆｙｉｎｇ）するステップと、
前記第１アプリケーションの同期化周期が変更不可能な場合、前記第１アプリケーションの最初の同期化時点を前記以前に保存されたアプリケーションの同期化時点のうち、前記第１アプリケーションが保存された後、最初に発生する時点に設定するステップと、
前記第１アプリケーションの同期化周期の変更が可能な場合、前記以前に保存されたアプリケーションの周期と最大公約数とを計算するステップと、
前記計算された前記最大公約数が互いに素ではない場合、前記計算された前記最大公約数を前記第１アプリケーションの同期化周期に設定するステップと、
前記第１アプリケーションの最初の同期化時点を前記以前に保存されたアプリケーションの同期化時点のうち、前記第１アプリケーションが保存された後、最初に発生する時点に設定するステップと、
を含む、端末のアプリケーション同期化方法。
【請求項２】
前記第１アプリケーションの同期化周期が変更不可能の場合は、前記第１アプリケーションがｋｅｅｐ−ａｌｉｖｅ信号を送信するためのアプリケーションの場合である、請求項１に記載の端末のアプリケーション同期化方法。
【請求項３】
前記第１アプリケーションが保存と共に同期化動作を行う場合、前記第１アプリケーションの前記最初の同期化時点以前に前記同期化動作を遂行するステップをさらに含む、請求項１に記載の端末のアプリケーション同期化方法。
【請求項４】
アプリケーションの同期化のための端末装置であって、
アプリケーションの同期化周期及びタイミングを保存するためのメモリーと、
同期化する第１アプリケーションが保存されるとき、前記第１アプリケーションの同期化周期と以前に保存されたアプリケーションの同期化周期及びタイミングを獲得し、前記第１アプリケーションの同期化周期の変更が可能かどうかを識別（ｉｄｅｎｔｉｆｙｉｎｇ）し、前記第１アプリケーションの同期化周期が変更不可能な場合、前記第１アプリケーションの最初の同期化時点を前記以前に保存されたアプリケーションの同期化時点のうち、前記第１アプリケーションが保存された後、最初に発生する時点に設定し、前記第１アプリケーションの同期化周期の変更が可能な場合、前記以前に保存されたアプリケーションの周期と最大公約数を計算し、前記計算された前記最大公約数が互いに素ではない場合、前記計算された前記最大公約数を前記第１アプリケーションの同期化周期に設定して、前記第１アプリケーションの最初の同期化時点を前記以前に保存されたアプリケーションの同期化時点らのうち、前記第１アプリケーションが保存された後、最初に発生する時点に設定する制御部とを含む、アプリケーションの同期化のための端末装置。
【請求項５】
前記第１アプリケーションの同期化周期が変更不可能である場合、前記第１アプリケーションがｋｅｅｐ−ａｌｉｖｅ信号を送信するためのアプリケーションの場合である、請求項４に記載のアプリケーションの同期化のための端末装置。
【請求項６】
前記制御部は、前記第１アプリケーションが保存と共に、同期化動作を行うように設定された場合、前記保存と共に同期化動作をさらに行おうとする、請求項４に記載のアプリケーションの同期化のための端末装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的に端末及びその端末で使われるアプリケーションのデータを管理する方法に関し、特に複数のアプリケーションが同時にアップデートを遂行する方法及びそれを提供する端末に関する。
【背景技術】
【０００２】
スマートフォンのような端末では、メール、ＳＮＳ（Social Network Service）、ＩＭ（Instant Messaging）のように多様なアプリケーションが駆動される。このようなアプリケーションは、ネットワークと連動してデータを同期化することができる。一般的に、各アプリケーションは適切な値のデータ同期化周期が設定されて運用される。一般的に設定される同期化周期は５分、１５分、３０分、１時間、４時間など、多様な値に設定できる。アプリケーションのアップデート周期を設定する時、リアルタイムにアップデートされるデータを受けることを願うユーザは同期化周期を短い値に設定する。
【０００３】
そして、端末は該当アプリケーションに対して設定された同期化周期毎にネットワークにアップデートされたデータを要請する。すると、該当ネットワークは要請されたデータを端末に送信する。
【０００４】
端末は、各々のアプリケーションがアップデートを遂行する度に、電力消費を減らすために節電モード（IDLE）から最大動作モード（ACTIVE）に切り換えられる。したがって、複数のアプリケーションに対して各アプリケーションのための同期化周期が設定されている場合、節電モードから最大動作モードに切り換えられる回数が多くなる。
【０００５】
図１は、従来技術に従う複数のアプリケーションが各アプリケーションのための同期化周期によってアップデートを遂行する方法を示す図である。
【０００６】
図１を参照すると、アプリケーションＡ、アプリケーションＢ、アプリケーションＣの同期化周期が各々異なる場合、端末の節電モードから最大動作モードに切り換えられる回数が多くなり、節電モード維持時間が短くなる。即ち、節電モードから最大動作モードに切り換えられる回数が多いほど、端末がモード切換のために使用するシグナリングが増えて、これによる電力消耗などが不要に発生するという問題点がある。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
したがって、本発明は少なくとも前述した問題点及び／又は短所を解決し、少なくとも後述する利点を提供するために考案されたものである。
【０００８】
本発明は、端末におけるアプリケーションのデータアップデート周期を効果的に制御する方法及び装置を提供することにその目的がある。
【課題を解決するための手段】
【０００９】
上記のような問題点を解決するために、本発明の一実施形態に従う端末のアプリケーション同期化方法は、同期化するアプリケーションが追加されれば、以前に登録されている同期化対象アプリケーションの同期化時点情報あるいは複数の以前に登録されている同期化対象アプリケーションなどの共通同期化時点情報を獲得するステップ、及び上記同期化時点情報あるいは共通同期化時点情報を考慮して上記追加された同期化するアプリケーションの同期化時点を変更するステップを含むことができる。
【００１０】
また、上記のような問題点を解決するための本発明の一実施形態に従うアプリケーション同期化を遂行する端末は、同期化するアプリケーションが追加されれば、以前に登録されている同期化対象アプリケーションの同期化時点情報あるいは以前に登録されている同期化対象アプリケーションの共通同期化時点情報を獲得し、上記同期化時点情報あるいは共通同期化時点情報を考慮して上記追加された同期化するアプリケーションの同期化時点を変更する制御部を含むことができる。
【００１１】
添付図面と関連してなされる以後の詳細な説明から、本発明の特定の実施形態の前述した、そしてその他の態様、特徴、及び利点がより明確となる。
【図面の簡単な説明】
【００１２】
【図１】従来技術に従う各アプリケーションのために設定された周期によってアップデートを遂行する過程を示す図である。
【図２】本発明に従う端末の構成を示す図である。
【図３】本発明の実施形態に従うアプリケーションを同期化する制御部のＯＳ構成を示す図である。
【図４】本発明の実施形態に従うアラームリストを示す図である。
【図５】本発明の実施形態に従う制御部のＯＳ段におけるスケジューラの第１位置を示す図である。
【図６】本発明の実施形態に従う制御部のＯＳ段におけるスケジューラの第２位置を示す図である。
【図７】本発明の実施形態に従うアプリケーション管理方法を示す図である。
【図８】本発明の実施形態に従うスケジューリング同期化周期を算出する方法を示す図である。
【図９】本発明の実施形態に従うアプリケーションの同期化反復周期を設定する方法を示す図である。
【図１０】本発明の実施形態に従うアプリケーション別に設定されたスケジューリング同期化周期によってアップデートを遂行する過程を示す図である。
【図１１Ａ】本発明の一実施形態に従うアプリケーション同期化過程を示す図である。
【図１１Ｂ】本発明の一実施形態に従うアプリケーション同期化過程を示す図である。
【図１１Ｃ】本発明の一実施形態に従うアプリケーション同期化過程を示す図である。
【図１２】本発明の一実施形態に従う同期化設定過程のフローチャートである。
【図１３】本発明の他の実施形態に従う同期化設定過程のフローチャートである。
【発明を実施するための形態】
【００１３】
以下、添付図面を参照して本発明の多様な実施形態を説明する。以後の説明において、細部構成及び構成要素のような特定の明細は単に本発明のそのような実施形態の全般的な理解を助けるために提供されたものに過ぎない。したがって、本発明の範囲及び思想を逸脱することがなく、本明細書で説明される実施形態の変更及び修正がなされることができるということが当業者に明白である。また、簡単明瞭にするために、公知の機能及び構成の説明を省略する。
【００１４】
以下、本明細書において、‘端末’はデータを生成するか、または外部から送受信されるデータを処理することができる情報処理機器を意味する。ここで、端末は、コンピュータ、ノートブック、タブレットＰＣ、携帯端末、スマートフォンなどを含む。
【００１５】
図２は、本発明の一実施形態に従う端末の構成を示す図である。
【００１６】
図２を参照すると、端末は、通信部２１０、制御部２２０、及び格納部２３０を含むことができる。通信部２１０は、制御部２２０の制御下に端末と外部装置との間のデータを送受信することができる。例えば、通信部２１０は基地局と通信チャンネルを形成して、音声及び画像通信をはじめとして、文字メッセージ、イメージなどを送受信することができるデータ通信を遂行することができる。そのために、通信部２１０は送信される信号の周波数を上昇変換及び増幅するＲＦ送信部と受信される信号を低雑音増幅し、周波数を下降変換するＲＦ受信部（図示せず）を含むことができる。また、通信部２１０は制御部２２０の制御下にアップデート周期毎にネットワークと通信してデータを送受信することができる。通信部２１０は、制御部２２０を制御下にネットワークにアップデートが必要なアプリケーションと連動するネットワークにデータを要請するメッセージを転送することができる。
【００１７】
本明細書において、アプリケーションを同期化することは外部エンティティーに変更された情報を送信するか、または外部エンティティーから変更された情報を受信することだけでなく、連結維持のためのメッセージ（例えば、キープ−アライブ（keep-alive）メッセージ）を送受信することも広く含むことができる。
【００１８】
制御部２２０は、端末の全ての構成要素の状態及び動作を制御する。ここで、制御部２２０は端末で遂行される全てのアプリケーションのうち、データのアップデートを周期的に必要とするアプリケーションのアップデート周期を同期化することができる。より詳細に説明すれば、次の通りである。
【００１９】
まず制御部２２０は、同期化周期設定の要否を判断する。言い換えると、同期化周期設定モードが選択されるかを判断する。ここで、アプリケーション同期化周期設定モードはデータが周期的にアップデートされるアプリケーション登録が選択されるか、または既に設置されたアプリケーションの環境設定などでアップデート周期変更が選択されたことを意味する。
【００２０】
例えば、データが周期的にアップデートされるアプリケーションは、メール、日程、ネットワークを介して相手方から受信されるデータなどのユーザプロファイル情報を周期的にアップデートしなければならないアプリケーションを意味する。ＳＮＳ（Social Network Service）アプリケーションはより周期的なアップデートを有することによって、よりよく作動する。
【００２１】
そして、アプリケーション同期化設定モードが選択されれば、即ちアプリケーション同期化周期設定／変更が必要であると判断されれば、制御部２２０は最適同期化周期算出部２２５及び同期化スケジューラ２２７を通じて該当アプリケーションのアップデート周期を格納された他のアプリケーションのアップデート周期と同期化してスケジューリングすることができる。
【００２２】
代案的に、制御部２２０はデータが周期的にアップデートされるアプリケーションが設置されたり活性化されたりする時、または別途に指定された時刻にアプリケーションアップデート周期をスケジューリングすることもできる。
【００２３】
最適同期化周期算出部２２５は、ユーザにより選択されたアップデート周期を確認する。そして、最適同期化周期算出部２２５は端末で遂行される全てのアプリケーションのアップデート周期によって予め格納された同期化アップデート周期を確認する。即ち、アプリケーション同期化周期設定モードが設定された時、最適同期化周期算出部２２５はアプリケーションに従うスケジューリング同期化周期を算出する。
【００２４】
最適同期化周期算出部２２５は、登録が選択されたアプリケーションのアップデート周期及び予め格納された同期化アップデート周期の最大公約数を算出する。同期化アップデート周期は、現在端末で遂行できるアプリケーションの同期化されたアップデート周期を意味する。そして、アップデートを周期的に必要とするアプリケーションが登録される度に、最適同期化周期算出部２２５は同期化アップデート周期と以前に登録されたアプリケーションのアップデート周期とを比較して最大公約数を算出する。
【００２５】
例えば、アプリケーションＡ、Ｂのアップデート周期がＴａ、Ｔｂと仮定する。すると、各アプリケーションのアップデート周期の最大公約数Ｔｇｃｄは＜数式１＞のように算出される。
【００２６】
【数１】
0006048763.tif 000002
【００２７】
そして、最大公約数を通じて同期化アップデート周期が決定された後、新たなアプリケーションのアップデート周期（Ｔｘ）が追加される場合、最大公約数は＜数式２＞のように算出される。
【００２８】
【数２】
0006048763.tif 000003
【００２９】
＜数式２＞で、Ｔｘは追加される新たなアプリケーションのアップデート周期を意味する。そして、Ｔｇｃｄ＿ｏｌｄは格納された同期化アップデート周期を意味する。
【００３０】
同期化スケジューラ２２７は、最適同期化周期算出部２２５から算出された最大公約数を用いて登録が選択されたアプリケーションのアップデート周期を調節する。同期化スケジューラ２２７は、算出されたスケジューリング同期化周期によってアップデート周期をスケジューリングする。
【００３１】
まず同期化スケジューラ２２７は、登録が選択されたアプリケーションのアップデート周期及び予め格納された同期化アップデート周期が互いに素であるかを判断する。仮に、登録が選択されたアプリケーションのアップデート周期及び予め格納された同期化アップデート周期が互いに素であれば、同期化スケジューラ２２７は登録が選択されたアプリケーションのアップデート周期及び予め格納された同期化アップデート周期のうち、最小値を基準に同期化基本単位を設定する。
【００３２】
例えば、登録が選択されたアプリケーションのアップデート周期が６分であり、予め格納された同期化アップデート周期が７分であると仮定する。この際、登録が選択されたアプリケーションのアップデート周期及び予め格納された同期化アップデート周期の最大公約数は１となる。言い換えると、登録が選択されたアプリケーションのアップデート周期及び予め格納された同期化アップデート周期が互いに素であることを意味する。この場合、同期化スケジューラ２２７は登録が選択されたアプリケーションのアップデート周期及び予め格納された同期化アップデート周期の２つの値のうち、最小値である登録が選択されたアプリケーションのアップデート周期の６分を同期化基本単位に設定する。そして、設定された同期化基本単位は同期化アップデート周期として格納部２３０に格納される。
【００３３】
同期化基本単位を設定した同期化スケジューラ２２７は、登録が選択されたアプリケーションのアップデート周期が予め格納された同期化アップデート周期より大きい値を有するかを判断する。仮に、登録が選択されたアプリケーションのアップデート周期が予め格納された同期化アップデート周期より大きい値であり、互いに素であれば、同期化スケジューラ２２７は同期化基本単位倍数のうち、アップデート周期に最も近い倍数値でスケジューリング同期化周期を選択する。即ち、同期化スケジューラ２２７は＜数式３＞によりスケジューリング同期化周期を選択する。
【００３４】
【数３】
0006048763.tif 000004
【００３５】
＜数式３＞で、Ｔｘは現在選択されたアプリケーションのスケジューリング同期化周期である。現在アプリケーションのアップデート周期（Ｔｘ）が格納された同期化アップデート周期（Ｔｇｃｄ＿ｏｌｄ）より大きい場合、Ｔｘ’はＴｇｃｄ＿ｏｌｄの倍数のうち、Ｔｘに最も近い値に変更される。
【００３６】
一方、登録が選択されたアプリケーションのアップデート周期が予め格納された同期化アップデート周期より小さい値であれば、同期化スケジューラ２２７は設定された同期化基本単位を基準に同期化アップデート周期を変更して他のアプリケーションのスケジューリング同期化周期を設定する。
【００３７】
【数４】
0006048763.tif 000005
【００３８】
＜数式４＞で、Ｔｇｃｄ＿ｏｌｄ’は互いに異なる各アプリケーションに対して新しく算出される同期化アップデート周期である。現在アプリケーションのアップデート周期（Ｔｘ）が格納された同期化アップデート周期（Ｔｇｃｄ＿ｏｌｄ）より小さく、互いに素の場合、同期化基本単位は最小値である現在アプリケーションのアップデート周期であるＴｘに設定される。したがって、同期化された他のアプリケーションの周期が新しく設定される同期化基本単位によって変更されなければならない。ここに、Ｔｇｃｄ＿ｏｌｄ’はＴｘの倍数値のうち、Ｔｇｃｄ＿ｏｌｄに最も近い値に変更される。
【００３９】
登録が選択されたアプリケーションのアップデート周期及び予め格納された同期化アップデート周期が互いに素でない場合、同期化スケジューラ２２７は算出された最大公約数に同期化基本単位を設定する。このように設定された同期化基本単位は、新たな同期化アップデート周期で格納部２３０に格納される。その時にも同期化スケジューラ２２７は登録が選択されたアプリケーションのアップデート周期が予め格納された同期化アップデート周期より大きいかを判断する。そして、登録が選択されたアプリケーションのアップデート周期が予め格納された同期化アップデート周期より大きければ、同期化スケジューラ２２７は最大公約数である同期化基本単位の倍数のうち、アップデート周期に最も近い倍数値に新たなスケジューリング同期化周期を設定する。
【００４０】
一方、アップデート周期が同期化アップデート周期より小さければ、同期化スケジューラ２２７は設定された最大公約数である同期化基本単位で新たなスケジューリング同期化周期を選択する。
【００４１】
また、同期化スケジューラ２２７は登録されるアプリケーションのアップデートが初めて始まる開始時間を他のアプリケーションのスケジューリング同期化周期に合せて変更する。即ち、同期化スケジューラ２２７はアプリケーションのアップデート周期が初めて始まる時点がアップデート周期が同期化された他のアプリケーションのアップデートが発生する時点と同一であるようにスケジューリングする。
【００４２】
ここで、図２が最適同期化周期算出部２２５と同期化スケジューラ２２７が別に構成されたものと説明しているが、これに限定されるものではない。例えば、最適同期化周期算出部２２５及び同期化スケジューラ２２７は、１つの装置に結合できる。
【００４３】
制御部２２０は、最適同期化周期算出部２２５及び同期化スケジューラ２２７によりアプリケーション別に設定されたスケジューリング同期化周期及び同期化基本単位である同期化アップデート周期を格納部２３０に格納する。
【００４４】
次に、制御部２２０は同期化スケジューラ２２７によりアプリケーションのアップデート周期がアラームされれば、該当アプリケーションのアップデートを遂行する。即ち、制御部２２０はスケジューリング同期化周期によってアップデートを遂行する少なくとも１つのアプリケーションを確認し、少なくとも１つのアプリケーションをアップデートする。
【００４５】
格納部２３０は、端末の機能動作に必要なプログラムをはじめとして、端末で機能動作時、処理される各種のデータを格納する。ここで、格納部２３０は制御部２２０の制御下にアラームリスト２３１を格納する。アラームリスト２３１は、アプリケーション別スケジューリング同期化周期に対する情報を含む。ここで、スケジューリング同期化周期はアプリケーションが登録されるか、または該当アプリケーションのアップデート周期が変更される時に設定される周期であって、現端末に格納された全てのアプリケーションの同期化したアップデート周期及び登録されるアプリケーションのアップデート周期を用いて設定される。そして、格納部２３０は制御部２２０の制御下に同期化基本単位である同期化アップデート周期を格納する。
【００４６】
図２に図示してはいないが、端末は遂行される機能によって多様な構成をさらに含むことができる。例えば、端末は端末の動作状態に従うデータを表示する表示部、ユーザからの信号の入力を受けて制御部２２０に伝達する入力部、イメージを撮影することができるカメラ部、ディジタル放送データを受信することができるディジタル放送受信部、音声、オーディオデータなどを処理するためのオーディオ処理部などをさらに含むことができる。
【００４７】
前述したように、本発明の実施形態に従う端末は同一な時間に多数個のアプリケーションのアップデート周期を設定することができる。結果的に、端末は設定されたアップデート周期によって同時に多数個のアプリケーションをアップデートすることができる。これによって、電源の消費が減る。
【００４８】
図３は、本発明の実施形態に従うアプリケーションを同期化する制御部のＯＳ構成を示す図である。
【００４９】
図３を参照すると、制御部のＯＳ段は、アプリケーション段（Application）３１０、アプリケーションフレームワーク（Application Frame work）３２０、システムライブラリ（system library）３３０、及びカーネル（Kernel）３４０の階層で構成される。
【００５０】
アプリケーション段３１０は、アプリケーション３１５が動作する区間である。アプリケーションフレームワーク３２０は、特定オペレーティングシステムのための応用プログラム標準構造を具現するクラスとライブラリ集合である。即ち、アプリケーションフレームワーク３２０はアプリケーションのライフ−サイクルを管理し、イベント処理及びアプリケーションの制御機能を提供する。ここで、アプリケーションフレームワーク３２０はアプリケーションのアップデート周期の同期化を要請するアラーム管理者３２５を含む。
【００５１】
システムライブラリ３３０は、オペレーティングシステムの部分が記憶されているデータセット及びファイルの集合である。ここで、システムライブラリ３３０はアプリケーション段３１０で遂行されるアプリケーションのアップデート周期を同期化する同期化スケジューラ３３５を含む。
【００５２】
カーネル３４０は、割り込み処理、プロセス管理、メモリー管理、システム管理、プログラミングインターフェースを提供し、オペレーティングシステムで基本的な機能を提供する核心である。したがって、カーネル３４０は一般的に接近が不可能なメモリーにロードされる。即ち、カーネルはハードウェアを制御するための一種のアプリケーションと見ることができる。
【００５３】
アプリケーション段３１０は、まず登録されるアプリケーション３１５に対し、ステップ３５０でアップデート周期を同期化するための同期化周期登録をアプリケーションフレームワーク３２０のアラーム管理者３２５に要請する。すると、アラーム管理者３２５はステップ３５５で同期化スケジューラ３３５のアラームリストにアラーム追加を要請する。このような過程はアプリケーションが登録される度に、反復（３５７）的に遂行される。
【００５４】
すると、同期化スケジューラ３３５は最適同期化算出部３６０を通じて該当アプリケーションのスケジューリング同期化周期を算出し、ステップ３６３で算出されたスケジューリング同期化周期をアラームリスト３６５に追加する。
【００５５】
そして、同期化スケジューラ３３５は、ステップ３６７でアラームリストに格納されたスケジューリング同期化周期を確認して、アラーム処理部３７０を通じてアップデートをアプリケーション段３１０に知らせるためのアラーム周期を確認する。仮に、アラーム周期になれば、同期化スケジューラ３３５はステップ３７５でアプリケーションのスケジューリング同期化周期をアプリケーション段３１０に知らせる。
【００５６】
図４は、本発明の実施形態に従うアラームリストを示す図である。
【００５７】
図４を参照すると、格納部２３０に格納されるアラームリストはアプリケーション別にスケジューリング同期化周期に対する情報が区分される。各スケジューリング同期化周期に対する情報は、タイプ（type）４１５、開始時点（when）４１７、スケジューリング同期化周期（Repeat Interval）４１９などを含む。ここで、タイプ４１５はアップデート周期を知らせるアラームを設定する方法に対する情報を含み、アラームを設定する時、絶対的な時間（ＵＴＣ）を基準とするか、でなければ相対的な時間（５分、１０分後など）を基準とするかを知らせる情報である。そして、端末で使われるタイプ４１５に、ELAPSED_REALTIME_WAKEUP、RTC_WAKEUPのような情報が代表的である。ELAPSED_REALTIME_WAKEUPは、端末のシステム時間を用いてアラームをトリガーするかを決定する情報であって、現在時間を基準に時間がどれくらい経た後に動作するかを決定する情報である。RTC_WAKEUPは、ネットワークを介して獲得された時間で、アラームをトリガーするかを決定する情報であって、絶対的な時間を基準とする。
【００５８】
開始時点４１７は、アプリケーションが登録された後、初めてアップデートを遂行する時間を意味する。そして、スケジューリング同期化周期４１９は、該当アプリケーションがアップデートされる周期に対する情報であって、他のアプリケーションとのアップデート周期と同期化されるために設定される同期化基本単位を基準に設定される。
【００５９】
図５は、本発明の実施形態に従う制御部のＯＳ段におけるスケジューラの第１位置を示す図である。
【００６０】
図５を参照すると、カーネル５１０、システムライブラリ５２０、アプリケーションフレームワーク５３０で同期化スケジューラ５３５がアプリケーションフレームワーク５３０階層に位置することができる。したがって、アプリケーションＡ５４０ａ及びアプリケーションＢ５４０ｂのアップデート周期がアプリケーションフレームワーク５３０の階層に位置した同期化スケジューラ５３５で同期化される。そして、スケジューリング同期化周期によって該当アップデート時間に同期化スケジューラ５３５はアプリケーションＡ５４０ａ及びアプリケーションＢ５４０ｂの各々にアップデートを遂行せよとのアラームを知らせる。
【００６１】
図６は、本発明の実施形態に従う制御部のＯＳ段におけるスケジューラの第２位置を示す図である。
【００６２】
図６を参照すると、カーネル６１０、システムライブラリ６２０で同期化スケジューラ６１５がカーネル６１０の階層に位置することができる。アプリケーションＡ６４０ａ及びアプリケーションＢ６４０ｂのアップデート周期を同期化する要請がシステムライブラリ６２０を通じてカーネル６１０の階層に位置した同期化スケジューラ６１５に伝達される。そして、アプリケーションＡ６４０ａ及びアプリケーションＢ６４０ｂのアップデート周期がカーネル６１０の階層に位置した同期化スケジューラ６１５で同期化される。また、スケジューリング同期化周期によって該当アップデート時間に同期化スケジューラ６１５はアプリケーションＡ６４０ａ及びアプリケーションＢ６４０ｂの各々にアップデートを遂行せよとのアラームをシステムライブラリ６２０を通じて知らせる。
【００６３】
図７は、本発明の実施形態に従うアプリケーション管理方法を示す図である。
【００６４】
図７を参照すると、端末はステップ７１０で待機モードを遂行し、ステップ７１５でアプリケーション同期化周期設定モードが選択されるかを判断する。ここで、アプリケーション同期化周期設定モードはデータが周期的にアップデートされるアプリケーション登録が選択されるか、または既に設置されたアプリケーションの環境設定などでアップデート周期変更が選択された時に遂行されるモードを意味する。
【００６５】
アプリケーション同期化設定モードが選択されれば、端末はステップ７２０でアプリケーションに従うスケジューリング同期化周期を算出する。概略的に説明すれば、端末は遂行されるアプリケーションのアップデート周期によって予め格納された同期化アップデート周期をアプリケーション同期化周期設定モードで選択されたアプリケーションのアップデート周期と比較して最大公約数を算出する。そして、端末は算出された最大公約数を用いて選択されたアプリケーションのアップデート周期を他のアプリケーションのアップデート周期と同期化する。この過程について図８から図９を参照してより詳細に後述する。
【００６６】
端末は、ステップ７２５でアプリケーションのアップデート周期が始まる時点を算出されたスケジューリング同期化周期に従う開始時間に変更する。即ち、端末は選択されたアプリケーションのアップデート開始時点をアップデート周期が同期化された他のアプリケーションと同時にアップデートが遂行されるように調節する。そして、端末はステップ７３０で選択されたアプリケーションに対するスケジューリング同期化周期を格納する。
【００６７】
ステップ７１５で、アプリケーション同期化周期モードが選択されなければ、端末はステップ７３５でアプリケーションアップデートモードが選択されるかを判断する。即ち、端末は現在時間にアップデート遂行がスケジューリングされたかを判断する。
【００６８】
仮に、アプリケーションのアップデートモードであれば、端末はステップ７４０で現在時間にアップデートを遂行しなければならない少なくとも１つのアプリケーションを確認する。端末はステップ７４５で確認されたアプリケーションに対するアップデートを遂行する。即ち、端末は該当アプリケーションを遂行するために連動するネットワークにデータを要請し、ネットワークから受信されるデータを格納する。そして、端末は該当アプリケーションが遂行される時に格納されたデータを表示するか、または該当機能を遂行することができる。
【００６９】
また、ステップ７３５に戻り、端末はステップ７５０でアプリケーション遂行モードが選択されるかを判断する。仮に、アプリケーション遂行モードが選択されれば、端末はステップ７５５で該当アプリケーションを遂行する。仮に、アプリケーション遂行モードが選択されなければ、端末はステップ７１０で待機モードに残っている。
【００７０】
このような過程を通じて、本発明に従う端末はアプリケーションのアップデート周期を同期化させることができる。各アプリケーションは、同期化されたアップデート周期によってアップデートを遂行することができるので、端末は節電モードと最大動作モードに変更される周期が一定になる。これによって、端末で消費される電源が減る。
【００７１】
図８は、本発明の実施形態に従うスケジューリング同期化周期を算出する方法を示す図である。
【００７２】
図８を参照すると、端末はステップ８１０でユーザにより選択されたアップデート周期を確認する。そして、端末はステップ８２０で端末で遂行される全てのアプリケーションのアップデート周期によって予め格納された同期化アップデート周期を確認する。次に、端末はステップ８３０で確認されたアップデート周期及び同期化アップデート周期に従うスケジューリング同期化周期を算出する。スケジューリング同期化周期を算出する過程について図９を参照して説明する。
【００７３】
図９は、本発明の実施形態に従うアプリケーションの同期化反復周期を設定する方法を示す図である。
【００７４】
図９を参照すると、端末はステップ９１０で登録が選択されたアプリケーションのアップデート周期及び予め格納された同期化アップデート周期の最大公約数を算出する。即ち、アップデートを周期的に必要とするアプリケーションが登録される度に、端末は該当アプリケーションのアップデート周期と予め格納された同期化アップデート周期の最大公約数を算出する。同期化アップデート周期は、端末で遂行できるアプリケーションのアップデート周期を同期化するために算出された同期化基本単位を意味する。
【００７５】
端末は、ステップ９１５でアップデート周期及び同期化アップデート周期が互いに素であるかを判断する。仮に、アップデート周期及び同期化アップデート周期が互いに素であれば、端末はステップ９２０でアップデート周期及び同期化アップデート周期のうち、最小値を基準に同期化基本単位を設定する。
【００７６】
また、ステップ９１５に戻り、アップデート周期及び同期化アップデート周期が互いに素でなければ、端末はステップ９２５で算出された最大公約数に同期化基本単位を設定する。
【００７７】
同期化基本単位を設定した端末は、ステップ９３０でアップデート周期が同期化アップデート周期より大きい値を有するかを判断する。仮に、アップデート周期が同期化アップデート周期より大きい値であれば、端末はステップ９３５で該当アプリケーションのアップデート周期を同期化基本単位倍数のうち、アップデート周期に最も近い倍数値でスケジューリング同期化周期を選択する。この際、予め格納された同期化アップデート周期は同期化基本単位に変更される。
【００７８】
一方、アップデート周期が同期化アップデート周期より小さい値であれば、端末はステップ９４０で設定された同期化基本単位でスケジューリング同期化周期を選択する。即ち、端末は現在登録されているアプリケーションのスケジューリング同期化周期を設定された同期化基本単位に用いて変更する。即ち、現在端末に登録されているアプリケーションのアップデート周期は、同期化基本単位の倍数のうち、同期化アップデート周期に最も近い倍数値に変更される。この際、予め格納された同期化アップデート周期は同期化基本単位に変更される。
【００７９】
図１０は、本発明の実施形態に従うアプリケーション別に設定されたスケジューリング同期化周期によってアップデートを遂行する過程を示す図である。
【００８０】
図１０を参照すると、アプリケーションＡ１０１０のアップデート周期は１０分であり、アプリケーションＢ１０２０のアップデート周期が２０分であり、アプリケーションＣ１０３０のアップデート周期が５分であると仮定する。しかしながら、アプリケーションＡ１０１０、アプリケーションＢ１０２０、アプリケーションＣ１０３０の開始時点がアップデートを同時に始めることができるように変更される。そして、アプリケーションＡ１０１０、アプリケーションＢ１０２０、アプリケーションＣ１０３０は、スケジューリングに従ってスケジューリング同期化周期にアップデートを遂行する。
【００８１】
また、アプリケーションＡ１０１０は１０分に一回ずつ、アプリケーションＢ１０２０は２０分に一回ずつ、アプリケーションＣ１０３０は５分に一回ずつアップデートを遂行するようになる。アプリケーションＡ１０１０、アプリケーションＢ１０２０、アプリケーションＣ１０３０は、同期化基本単位５分を基本に同期化されたので、初めて開始時間にアプリケーションＡ１０１０、アプリケーションＢ１０２０、アプリケーションＣ１０３０の全てがアップデートを遂行する。そして、最も短い同期化反復周期を有するアプリケーションＣ１０３０は開始時間を基準に５分が経た後にアップデートを遂行する。次に、アプリケーションＡ１０１０及びＣ１０３０は、次の５分が経た後、即ち開始時間を基準に１０分が経た後、再度アップデートを同時に遂行する。すると、アプリケーションＣ１０３０は５分が経た後に更に他のアップデートを遂行する。
【００８２】
すると、アプリケーションＡ１０１０及びＣ１０３０は、次の５分が経た後、即ち開始時間を基準に２０分が経た後にアップデートを同時に遂行する。
【００８３】
図１０に示すように、本発明に従う端末は節電モードから最大動作モードに変更される時点、または最大動作モードから節電モードに変更される時点が一定の間隔で表れることができる。
【００８４】
図１１Ａから図１１Ｃは、本発明の一実施形態に従うアプリケーション同期化過程を示す図である。特別に、図１１Ａから図１１Ｃの実施形態において、制御部２２０は各アプリケーションの同期化動作バックグラウンド実行のために、実行予定時刻をシステムにアラームまたはこれと類似な形態に登録する。さらに、図１１Ａから図１１Ｃに対する説明において、時刻の表示は図１１Ａの現在時刻（０分）に対する相対的な時刻である。
【００８５】
図１１Ａを参照すると、アプリケーションＡは３０分周期で同期化動作が実行されるように設定されたアプリケーションである。制御部２２０は、ステップ１１１０で現在時刻（０分）にアプリケーションＡに対するアラームの反復周期を３０分に設定して、そのアラームを登録する。以後、特別な変動がなければ、時刻３０分、６０分、９０分、．．．．．．、にアプリケーションＡに対するアラームが発動し、それによって、アプリケーションＡに対する同期化が遂行される。但し、図１１Ｂ、図１１Ｃを参照して後述するように、以後に同期化周期に影響を及ぼす他のアプリケーションの登録がありうる。
【００８６】
図１１Ｂを参照すると、アプリケーションＢは１５分周期で同期化動作が実行されるように設定されたアプリケーションである。制御部２２０は、ステップ１１２０で現在時刻（５分）にアプリケーションＢに対するアラームの反復周期を１５分に設定して、そのアラームを登録する。アプリケーションＡに対する考慮がなければ、アプリケーションＢに対する同期化動作は、図１１Ａの現在時間（０分）から、５分、２０分、３５分．．．に実行される。
【００８７】
但し、本実施形態によれば、アプリケーションＡの同期化周期（３０分）とアプリケーションＢの同期化周期（１５分）の最大公約数である１５分が単位同期化周期となる。この周期は共通に使われる同期化周期であるので、共通同期化周期と表現することもできる。同様に、単位同期化周期によっていずれか１つのアプリケーションが同期化される時点は共通同期化時点と表現することができる。
【００８８】
従来の方式によれば、現在時刻５分から１５分後である２０分にアプリケーションＢのアラームが発生しなければならない。しかしながら、本実施形態によれば、ステップ１１３０で最初のアラーム発生時点は２０分から１５分に変更される。
【００８９】
図１１Ｂは、アプリケーションの初期同期化タイミングが２０分から１５分に調整されたことを図示しているが、その５分の差が３０分、即ち次の利用可能な同期化タイミングと２０分の間の１０分の差より短いため、アプリケーションに対する同期化タイミングを３０分に設定することも可能である。
【００９０】
変形例によれば、新しく追加されたアプリケーションの同期化時点変更は元の同期化周期が最初に到来する時に遂行されることもできる。これによれば、アプリケーションＢに対する同期化は２０分に実行された後、２番目の実行時点が３５分から３０分に変更できる。このような変形例によれば、実質的に同期化時点変更の利得がない時には、できる限り本来の同期化時点を維持させ、かつ同期化時点の変更の利得がある時に初めて同期化時点を変更させる長所がある。
【００９１】
図１１Ｃを参照すると、アプリケーションＣは８分周期で同期化動作が実行されるように設定されたアプリケーションである。制御部２２０は、ステップ１１４０で現在時刻（１１分）にアプリケーションＣに対するアラームの反復周期を８分に設定して、そのアラームを登録する。
【００９２】
従来の方式によれば、アプリケーションＣの最初のアラーム発生時点は１９分となる。ステップ１１４０の以前の単位同期化周期である１５分とアプリケーションＣの同期化周期である８分は、互いに素である。本実施形態によれば、元の単位同期化周期と新しく追加されたアプリケーションの同期化周期とが互いに素の場合、単位同期化周期と新しく追加されたアプリケーションの同期化周期は全てそのまま維持される。但し、アプリケーションＣの最初同期化時点は従来の単位同期化周期による同期化時点を参照にして変更される。
【００９３】
従来の方式によれば、アプリケーションＣは１９分に最初に同期化が遂行される。但し、本実施形態によれば、ステップ１１５０でアプリケーションＣの最初同期化時点は単位同期化周期に従う同期化が最初に遂行される１５分に変更される。単位同期化周期とアプリケーションＣの同期化周期は変更されないので、このような変更にも関わらず、１３５分になる前には２つの同期化は同時に遂行されない。但し、無理に同期化周期を半永久的に変更することは、アプリケーション特性に反することもあるので、本実施形態では同期化周期は変更しない。アプリケーションＣの最初同期化時点の変更によりアプリケーションＣと他のアプリケーションは、１２０分毎に一回ずつ同一な時点に同期化が進行できる。
【００９４】
図１２は、本発明の一実施形態に従う同期化設定過程のフローチャートである。
【００９５】
ステップ１２１０で、同期化対象アプリケーションが追加される。例えば、ユーザが特定アプリケーションの同期化を設定するか、または同期化を要するアプリケーションが新しく設置される場合、またはアプリケーションが活性化される場合、同期化対象アプリケーションが追加できる。次に、ステップ１２２０で同期化を遂行する端末は、アプリケーションにより要請された最初の同期化時点（開始時点）を記録する。その後、ステップ１２３０で、端末は前述した図２から図１１Ｃの実施形態、またはその他の後述する実施形態に従って最初同期化時点を変更する。
【００９６】
ステップ１２４０で、端末は同一な識別子（または、同一なアプリケーション）の同期化設定が要請されるかを判断する。同一な識別子の同期化設定がまた要請されない場合、同期化設定過程は終了し、変更された同期化時点及びアプリケーションにより要請された周期によって周期的に同期化が実行される。
【００９７】
しかしながら、ステップ１２４０で同一な識別子の同期化設定が再度要請される場合には、ステップ１２５０で端末は新たな同期化設定の開始時点が以前の同期化設定の開始時点と同一であるかを判断する。
【００９８】
２つの時点が同一な場合は、ステップ１２６０で端末は変更無しでアプリケーションが要請したように同期化開始時点の開始時点を維持する。
【００９９】
例えば、該当アプリケーションは同期化開始時点を２０分に設定してアラームを要請したが、端末が同期化開始時点を１５分に調整した場合、該当アプリケーションは１５分にアラームを受信する。しかしながら、該当アプリケーションは必ず２０分にアラームを受けることを願うので、また２０分を同期化開始時点に設定して同期化開始を要請する。このような場合、新たな同期化設定の開始時点がステップ１２２０で記録された以前の同期化設定の開始時点と同一な場合であるので、過程はステップ１２６０に進行して同期化開始時点の変更無しでアプリケーションが要請した開始時点を維持して、追って同期化が遂行される。
【０１００】
新たな同期化設定の開始時点がステップ１２２０で記録された以前の同期化設定の開始時点と同一でない場合、端末は図２から図１１Ｃの実施形態、またはその他の後述する実施形態に従って同期化開始時点を変更して同期化を遂行する。
【０１０１】
また、このような方式により同期化開始時点を変更せず、同期化を進行する同期化アラームの識別子（または、そのアプリケーションの識別子）を別途のリストに保有することができる。端末は、以後、該当識別子に対する同期化アラーム要請がある場合、アラーム開始時点を変更せず、維持する。
【０１０２】
図１３は、本発明の他の実施形態に従う同期化設定過程のフローチャートである。
【０１０３】
図１３を参照すると、ステップ１３１０で、同期化対象アプリケーションが追加される。例えば、ユーザが特定アプリケーションの同期化を設定するか、または同期化を要するアプリケーションが新しく設置される場合、またはアプリケーションが活性化される場合、同期化対象アプリケーションが追加できる。
【０１０４】
次に、ステップ１３２０で端末は該当アプリケーションが同期化時点変更が許容されるアプリケーションであるかを判断する。同期化時点変更が許容されるアプリケーションと同期化時点変更が許容されないアプリケーションとを区分するために、種々の方式が使用できる。
【０１０５】
例えば、格納部２３０は同期化時点変更が許容されるアプリケーションのリスト、即ちホワイトリストを格納することができる。この場合、制御部２２０は同期化対象に追加されたアプリケーションがホワイトリストに含まれた場合のみに図２から図１１Ｃの方式に従う同期化時点調節を遂行する。
【０１０６】
ホワイトリストとは反対に、格納部２３０は同期化時点変更が許容されないアプリケーションのリスト、即ちブラックリストを格納することができる。この場合、制御部２２０は同期化対象に追加されたアプリケーションがブラックリストに含まれた場合のみに図２から図１１Ｃの方式に従う同期化時点調節を遂行する。
【０１０７】
ブラックリスト及び／又はホワイトリストは、例えばユーザにより設定できる。ユーザは正規表現式を利用するか、またはブラックリスト及び／又はホワイトリストに含めようとするアプリケーションの識別子、名前、その他の情報を直接入力してブラックリスト及び／又はホワイトリストに含まれるアプリケーションを調整することができる。ユーザは、周期的なトラフィックまたは同期化過程が要求されるアプリケーションがホワイトリストに含まれるようにして、同期化時点調節が効率的に遂行できるようにすることができる。同様に、ユーザは周期的なトラフィックまたは同期化過程が要求されないアプリケーションがブラックリストに含まれるようにして、同期化時点調節が効率的に遂行できるようにすることができる。
【０１０８】
他の実施形態によれば、制御部２２０は端末のオペレーティングシステム（ＯＳ）内のアカウント管理者（Account Manager）または同期化管理者（Synchronization Manager）に登録されたアプリケーションを全てホワイトリストに含めることができる。アカウント管理者（Account Manager）または同期化管理者（Synchronization Manager）に登録されたアプリケーションは、制御部２２０に周期情報を提供せず、アラームを登録することができる。しかしながら、実際にアカウント管理者（Account Manager）または同期化管理者（Synchronization Manager）に登録されたアプリケーションは周期的に同期化を遂行する場合が多い。この場合、実際の周期はアラームが登録される時点からアラームの開始時点までの時間になることができる。制御部２２０はこのような方式により周期を推定し、図２から図１１Ｃのような方式によりアラームの時点を調整することができる。
【０１０９】
更に他の実施形態によれば、制御部２２０はディスプレイ部を通じて設置されたアプリケーションリストまたは実行中のアプリケーションのリストを提供することができる。ユーザは、端末の入力装置を通じてブラックリストまたはホワイトリストに含まれるアプリケーションを選択することができる。ユーザの選択を助けるために、制御部２２０はバックグラウンド状態で周期的にトラフィックを発生させるか、または予め設定された量以上のトラフィックを発生させるアプリケーションを他のアプリケーションと区別できるように表示してユーザの選択を助けることができる。
【０１１０】
更に他の実施形態によれば、端末は通信部２１０を通じて外部エンティティーからブラックリスト及び／又はホワイトリストの提供を受けることができる。外部エンティティーに格納されたブラックリスト及び／又はホワイトリストは管理者により管理できる。
【０１１１】
前述した実施形態に従って制御部２２０がアプリケーションの同期化時点及び／又は周期を変更するように決定した時、ユーザが同期化時点及び／又は周期を変更するか否かが選択できるインターフェースを提供することができる。例えば、アプリケーションの同期  化時点及び／又は周期を変更するように決定すれば、ディスプレイを通じて“アプリケーションＡに対する同期化周期をａ分からｂ分に変更する場合、システム電力が節約できます。変更しますか？（ｙ／ｎ）”のようなメッセージを表示し、ユーザから入力された入力によってアプリケーションの同期化時点及び／又は周期を変更したり、変更しなかったりすることができる。
【０１１２】
更に他の実施形態によれば、制御部２２０は各アプリケーションの同期化周期によってアプリケーションをグループ化して管理できる。例えば、アプリケーションの同期化周期が７の倍数である７、１４、２１、２８、．．．、の場合、これらはグループ７に含まれる。アプリケーションの同期化周期が５の倍数である５、１０、１５、２０、．．．、の場合、これらはグループ５に含まれる。グループはそのグループで最も小さい同期化周期に代表される。最も小さい同期化周期は素数となる。例えば、グループ２、３、５、７、１１、１３、１７、．．．、が存在することができる。同期化周期が６の場合、論理的にはグループ２、３に全て属することができる。
【０１１３】
本実施形態によれば、予め設定された方式によって、どの周期は１つのグループのみに属する。例えば、６分周期はグループ３に属し、３５分周期はグループ７に属する。予め設定された方式は、例えば各周期に対してどのグループに属するかを予め貯蔵して置く方式になることができる。
【０１１４】
予め設定された方式は、他の例によれば、各グループ間の優先順位が予め設定されており、それによって特定周期のアプリケーションがどのグループに属するかが決定される方式になることができる。例えば、グループ７がグループ５より優先順位が高ければ、３５分周期のアプリケーションはグループ７に属する。同じグループに属するアプリケーション同士は同期化時点が互いに一致するように図２から図１０の方式により同期化時点を調節することができる。他のグループに属するアプリケーションの場合、図１１Ｃの実施形態のように、最初の一回だけ同期化時点が一致するように調節されることもできる。
【０１１５】
前述したように、本発明のアプリケーション管理方法は相異する同期化周期を有するアプリケーションの同期化開始時点及び周期を互いに合せて調整することによって、節電モードと最大動作モードとの間の切換の数を減らし、電力消費を減少させる。
【０１１６】
本発明を特にその特定の実施形態を参照して図示及び説明したが、当該技術分野の通常の知識を有する者であれば、以後の特許請求範囲により定まる本発明の思想及び範囲を逸脱することなく、形態及び明細の多様な変更が可能であることを理解することができる。
【符号の説明】
【０１１７】
２１０  通信部
２２０  制御部
２２５  最適同期化周期算出部
２２７  同期化スケジューラ
２３０  格納部
２３１  アラームリスト
【図２】
0006048763.tif 000006
【図３】
0006048763.tif 000007
【図４】
0006048763.tif 000008
【図７】
0006048763.tif 000009
【図８】
0006048763.tif 000010
【図９】
0006048763.tif 000011
【図１２】
0006048763.tif 000012
【図１３】
0006048763.tif 000013
【図１】
0006048763.tif 000014
【図５】
0006048763.tif 000015
【図６】
0006048763.tif 000016
【図１０】
0006048763.tif 000017
【図１１Ａ】
0006048763.tif 000018
【図１１Ｂ】
0006048763.tif 000019
【図１１Ｃ】
0006048763.tif 000020