JP6403559B2 - 情報処理装置およびその制御方法、並びにプログラム - Google Patents
情報処理装置およびその制御方法、並びにプログラム Download PDFInfo
- Publication number
- JP6403559B2 JP6403559B2 JP2014248420A JP2014248420A JP6403559B2 JP 6403559 B2 JP6403559 B2 JP 6403559B2 JP 2014248420 A JP2014248420 A JP 2014248420A JP 2014248420 A JP2014248420 A JP 2014248420A JP 6403559 B2 JP6403559 B2 JP 6403559B2
- Authority
- JP
- Japan
- Prior art keywords
- bundle
- fragment
- information processing
- fragment bundle
- safe mode
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/454—Multi-language systems; Localisation; Internationalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1417—Boot up procedures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2105—Dual mode as a secondary aspect
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Description
図1〜図7を用いて、以下に示す各実施形態に共通のフラグメントバンドルのインストール、有効化/無効化について説明する。また、図8、図9を用いて、セーフモードの基本形であるホストバンドルの開始について説明する。
図1は、情報処理装置としての画像形成装置130のハードウェア構成例を示す図である。画像形成装置130は、印刷機能やスキャン機能、ネットワーク通信機能などを備える。コントローラ100は、画像形成装置130のコントローラである。コントローラ100は、スキャナ部113やプリンタ部114と電気的に接続され、一方でLAN116を介して外部機器と接続される。CPU101は、ROM102に記憶された制御プログラム等に基づいて接続中の各種ハードウェアとのアクセスを統括的に制御する。また、CPU101は、コントローラ100内部で行われる各種処理についても統括的に制御する。
・ホストバンドルのマニフェストファイル403
Bundle−ManifestVersionに“2”を指定
Bundle−SymbolicNameには、フレームワーク内で一意な名前を付与
・フラグメントバンドルのマニフェストファイル405
Bundle−ManifestVersionに“2”を指定
Fragment−Hostには、ホストバンドルのマニフェストファイル403に記載された<ホストのバンドルシンボリック名>を指定する。本値が一致することでホストバンドルとフラグメントバンドルが同一アプリの構成要素であることを示す。
・ホストバンドルのパーミッション404
BundlePermission [バンドルシンボリック名,HOST]
・フラグメントバンドルのパーミッション406
BundlePermission [バンドルシンボリック名,FRAGMENT]
図5〜図7を用いて、アプリ管理サービス208が提供するアプリ管理画面における、ホストバンドル、およびフラグメントバンドルの管理方法について説明する。また、フラグメントバンドルの仮インストールとフラグメントバンドルの有効化/無効化について説明する。
本実施形態では、セーフモード起動時にフラグメントバンドルを無効化あるいは有効化した後、再度、通常の動作モード(通常モード)で画像形成装置を起動した場合を考える。セーフモード起動時にフラグメントバンドルを利用できなくした場合、システムによって利用を止められたフラグメントバンドルは、次回の通常モード起動時においても利用できなくなるという課題がある。これに対し、例えば、ユーザがインストールして利用を開始したフラグメントバンドルがセーフモード起動時に利用を止められた場合でも、次回通常モード起動時には利用を再開したいという要望があると考えられる。
図14は、本実施形態に係るセーフモード起動時の処理のフローチャートである。なお、S1401〜1407、S1409〜1410、およびS1412〜1413の処理それぞれについては、第一実施形態の図11で示したS1101〜1107、S1108〜1111と同じであるため、説明は省略する。つまり、ここでは、S1408、S1411の処理が新たに追加されている。
本実施形態では、ユーザによってインストールされたフラグメントバンドルを、セーフモード起動時に有効化する場合について考える。セーフモード起動において、ユーザがインストールしたフラグメントバンドルを全て無効化した場合、有効化したいフラグメントバンドルがあった場合でも利用出来なくなるため、使い勝手が低下するという課題がある。例えば、セーフモード起動で開始するシステムアプリであるホストバンドルに対して、ユーザインターフェースの表示言語をローカライズするフラグメントバンドルが無効化された場合、ユーザの操作性が低下することが考えられる。
図18は、本実施形態に係るセーフモード起動時の処理のフローチャートである。
本実施形態では、ユーザによってインストールされたフラグメントバンドルを有効化した際、そのフラグメントバンドルに問題があった場合について考える。第三の実施形態では、JavaVM上で実行可能なJava(登録商標)のバイトコードを含むクラスファイルが存在する場合は有効化しない。しかしながら、Java(登録商標)のバイトコードを含むクラスファイルは存在するが、セーフモード起動に影響を与えないことが分かっている場合、ユーザは有効化したいとの要望がある。そこで、本実施形態では、問題の生じないフラグメントバンドルおよびそのホストファイルは有効化する。その一方で、問題の生じるフラグメントバンドルについては無効化した上で、そのホストバンドルを有効化するように制御する。
図19は、本実施形態に係るセーフモード起動時の処理のフローチャートである。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
Claims (10)
- 通常の動作モードと、前記通常の動作モードよりもバンドルの機能を制限して動作するセーフモードとを備える情報処理装置であって、
ホストバンドルをインストールし、前記ホストバンドルの機能を拡張するために前記ホストバンドルに追加されるフラグメントバンドルを仮インストールとして無効化して第一のメモリ領域に格納するインストール手段と、
前記仮インストールされたフラグメントバンドルを、前記情報処理装置が前記セーフモードで起動した際に有効化するか無効化するかを定義したリストを保持する保持手段と
を有し、
前記インストール手段は、前記情報処理装置が前記セーフモードで起動した際に、前記仮インストールされたフラグメントバンドルのうち、前記リストに有効化することが定義されたフラグメントバンドルを有効化するために第二のメモリ領域へ移動させることを特徴とする情報処理装置。 - 前記セーフモードにて起動した際に、前記リストに基づいて、フラグメントバンドルの有効化もしくは無効化の状態を切り替えた場合、当該フラグメントバンドルの切り替え前の状態を記録する記録手段を更に有し、
前記セーフモードの動作の後に、前記情報処理装置が前記通常の動作モードで起動した場合、前記インストール手段は、前記記録手段にて記録した切り替え前の状態にて、前記フラグメントバンドルを有効化もしくは無効化することを特徴とする請求項1に記載の情報処理装置。 - 前記フラグメントバンドルを有効化もしくは無効化する指示をユーザから受け付ける受け付け手段を更に有し、
前記セーフモードで動作している際に、前記受け付け手段にて前記フラグメントバンドルの有効化もしくは無効化する指示を受け付けた場合、前記インストール手段は、前記記録手段にて記録した状態に関わらず、前記情報処理装置が前記通常の動作モードで起動した際には、前記受け付け手段にて受け付けた指示の状態にて前記フラグメントバンドルを有効化もしくは無効化することを特徴とする請求項2に記載の情報処理装置。 - 前記リストにおいて、ユーザによって新たに追加されたフラグメントバンドルは、前記情報処理装置が前記セーフモードで起動した際には無効化するとして扱われることを特徴とする請求項1乃至3のいずれか一項に記載の情報処理装置。
- 前記フラグメントバンドルに所定の形式のファイルが含まれているか否かを判定する判定手段を更に有し、
前記インストール手段は、前記情報処理装置が前記セーフモードで起動した際に、前記判定手段により前記所定の形式のファイルが含まれていると判定されたフラグメントバンドルは無効化し、前記判定手段により前記所定の形式のファイルが含まれていないと判定されたフラグメントバンドルは有効化することを特徴とする請求項1乃至3のいずれか一項に記載の情報処理装置。 - 前記所定の形式のファイルは、処理が定義されたバイトコードを含むクラスファイルであることを特徴とする請求項5に記載の情報処理装置。
- 前記判定手段は、前記フラグメントバンドルがリソースファイルのみから構成されている場合には、前記所定の形式のファイルが含まれていないと判定することを特徴とする請求項5または6に記載の情報処理装置。
- 前記インストール手段は、前記情報処理装置が前記セーフモードで起動した際に、前記リストに基づいてフラグメントバンドルを有効化した後、当該フラグメントバンドルが追加されているホストバンドルの開始に失敗した場合、当該フラグメントバンドルを前記第一のメモリ領域に移動して無効化した上で、再度、当該ホストバンドルを開始させることを特徴とする請求項1乃至7のいずれか一項に記載の情報処理装置。
- 通常の動作モードと、前記通常の動作モードよりもバンドルの機能を制限して動作するセーフモードとを備える情報処理装置の制御方法であって、
ホストバンドルをインストールし、前記ホストバンドルの機能を拡張するために前記ホストバンドルに追加されるフラグメントバンドルを仮インストールとして無効化して第一のメモリ領域に格納するインストール工程を有し、
前記インストール工程において、前記情報処理装置が前記セーフモードで起動した際に、前記仮インストールされたフラグメントバンドルのうち、前記情報処理装置が前記セーフモードで起動した際に有効化するか無効化するかを定義したリストにて有効化することが定義されたフラグメントバンドルを有効化するために第二のメモリ領域へ移動させることを特徴とする情報処理装置の制御方法。 - 通常の動作モードと、前記通常の動作モードよりもバンドルの機能を制限して動作するセーフモードとを備えるコンピュータを、
ホストバンドルをインストールし、前記ホストバンドルの機能を拡張するために前記ホストバンドルに追加されるフラグメントバンドルを仮インストールとして無効化して第一のメモリ領域に格納するインストール手段、
前記仮インストールされたフラグメントバンドルを、前記コンピュータが前記セーフモードで起動した際に有効化するか無効化するかを定義したリストを保持する保持手段
として機能させ、
前記インストール手段は、前記コンピュータが前記セーフモードで起動した際に、前記仮インストールされたフラグメントバンドルのうち、前記リストに有効化することが定義されたフラグメントバンドルを有効化するために第二のメモリ領域へ移動させることを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014248420A JP6403559B2 (ja) | 2014-12-08 | 2014-12-08 | 情報処理装置およびその制御方法、並びにプログラム |
US14/960,522 US9563416B2 (en) | 2014-12-08 | 2015-12-07 | Information processing apparatus, method of controlling the same and non-transitory computer readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014248420A JP6403559B2 (ja) | 2014-12-08 | 2014-12-08 | 情報処理装置およびその制御方法、並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016110461A JP2016110461A (ja) | 2016-06-20 |
JP6403559B2 true JP6403559B2 (ja) | 2018-10-10 |
Family
ID=56094401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014248420A Active JP6403559B2 (ja) | 2014-12-08 | 2014-12-08 | 情報処理装置およびその制御方法、並びにプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US9563416B2 (ja) |
JP (1) | JP6403559B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6935291B2 (ja) | 2017-09-29 | 2021-09-15 | キヤノン株式会社 | 画像形成装置及びその制御方法 |
CN108829401B (zh) * | 2018-05-21 | 2021-02-09 | 全球能源互联网研究院有限公司 | 监测模式切换方法、装置、终端及可读存储介质 |
US11226807B1 (en) | 2020-07-31 | 2022-01-18 | Rapid7, Inc. | Self-dependent upgrade of Java runtime environments |
CN114217870A (zh) * | 2021-12-10 | 2022-03-22 | 北京欧珀通信有限公司 | 安装包的加载方法及装置、电子设备、存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004334679A (ja) * | 2003-05-09 | 2004-11-25 | Canon Inc | 情報処理装置、情報処理装置のプログラム実行方式、情報処理装置のプログラム実行方式を記録した記憶媒体 |
WO2009154227A1 (ja) * | 2008-06-20 | 2009-12-23 | キヤノン株式会社 | プラグインソフトウェアプログラムおよび機能拡張方法および機能拡張装置 |
JP2010009553A (ja) * | 2008-06-30 | 2010-01-14 | Ricoh Co Ltd | 情報処理装置、情報処理方法、及び情報処理プログラム |
JP5460150B2 (ja) * | 2009-07-06 | 2014-04-02 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法、及び、プログラム |
JP5538970B2 (ja) * | 2010-03-25 | 2014-07-02 | キヤノン株式会社 | 情報処理装置、データ処理方法、プログラム |
JP5773787B2 (ja) * | 2011-07-21 | 2015-09-02 | キヤノン株式会社 | 情報処理装置およびその制御方法およびプログラム |
US9454349B2 (en) * | 2011-12-20 | 2016-09-27 | Microsoft Technology Licensing, Llc | User interface placeholders for application extensions |
JP6057740B2 (ja) * | 2013-01-24 | 2017-01-11 | キヤノン株式会社 | 画像形成装置、情報処理方法及びプログラム |
US8930067B1 (en) * | 2014-05-05 | 2015-01-06 | Nmtc, Inc. | System and method for a subscription-based diagnostic software service |
JP6368151B2 (ja) * | 2014-06-05 | 2018-08-01 | キヤノン株式会社 | 情報処理装置、アプリケーションの管理方法、およびプログラム |
-
2014
- 2014-12-08 JP JP2014248420A patent/JP6403559B2/ja active Active
-
2015
- 2015-12-07 US US14/960,522 patent/US9563416B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016110461A (ja) | 2016-06-20 |
US9563416B2 (en) | 2017-02-07 |
US20160162274A1 (en) | 2016-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6388405B2 (ja) | 情報処理装置、情報処理装置の制御方法およびプログラム | |
US8627343B2 (en) | Information processing apparatus and data output managing system | |
JP5960005B2 (ja) | 画像形成装置、アプリケーションのプレインストール方法、およびプログラム | |
JP6403559B2 (ja) | 情報処理装置およびその制御方法、並びにプログラム | |
KR101603910B1 (ko) | 장치, 제어 방법, 및 기억매체 | |
US10558405B2 (en) | Information processing apparatus and driver customizing method | |
JP6147139B2 (ja) | 情報処理装置、その制御方法、及びコンピュータプログラム | |
JP6368151B2 (ja) | 情報処理装置、アプリケーションの管理方法、およびプログラム | |
CN106250068B (zh) | 图像形成装置以及应用的删除方法 | |
US11372598B2 (en) | Application and information processing apparatus | |
EP3462363B1 (en) | Image forming apparatus and control method therefor | |
JP5178319B2 (ja) | アプリケーションプラットフォーム | |
US9940334B2 (en) | Image forming apparatus and control method thereof | |
US20110090532A1 (en) | Image forming apparatus and program operating method | |
JP6057740B2 (ja) | 画像形成装置、情報処理方法及びプログラム | |
JP2019087922A (ja) | 画像処理装置および画像処理装置の制御方法 | |
JP2017162106A (ja) | 情報処理装置及びデバイスドライバのインストール方法 | |
JP2017033380A (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171208 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180731 |
|
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: 20180813 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180911 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6403559 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |