JP7541893B2 - 情報処理装置、制御方法およびプログラム - Google Patents

情報処理装置、制御方法およびプログラム Download PDF

Info

Publication number
JP7541893B2
JP7541893B2 JP2020176265A JP2020176265A JP7541893B2 JP 7541893 B2 JP7541893 B2 JP 7541893B2 JP 2020176265 A JP2020176265 A JP 2020176265A JP 2020176265 A JP2020176265 A JP 2020176265A JP 7541893 B2 JP7541893 B2 JP 7541893B2
Authority
JP
Japan
Prior art keywords
firmware
information processing
processing device
area
startup
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
JP2020176265A
Other languages
English (en)
Other versions
JP2022067523A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2020176265A priority Critical patent/JP7541893B2/ja
Priority to CN202111201620.8A priority patent/CN114385249A/zh
Priority to US17/503,576 priority patent/US11797292B2/en
Publication of JP2022067523A publication Critical patent/JP2022067523A/ja
Application granted granted Critical
Publication of JP7541893B2 publication Critical patent/JP7541893B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理装置、制御方法およびプログラムに関し、特にデジタル複合機を始めとした情報処理装置におけるスワップファイルの生成・切替を制御する情報処理装置、制御方法およびプログラムに関する。
近年、デジタル複合機では、オフィスユースのデジタル複合機との強固な連携が可能なコンパクトな製品が求められている。このようなコンパクトな製品を実現するには、オフィスユースのデジタル複合機の様々な機能と連携しつつ、メモリやストレージの容量を小さくしてハードウェアをコストダウンすることが必要である。一方、このように容量が小さいメモリやストレージ上で、オフィスユースのデジタル複合機が持つ機能と連携可能な高機能なソフトウェアを動作させようとした場合、使用するメモリ領域が十分に確保できないという課題がある。
デジタル複合機のような画像形成装置において、メモリの容量を大きくすることなくパフォーマンスの向上を実現する従来技術が、例えば、特許文献1に開示されている。
特許文献1では、画像処理用メモリ領域の一部を使用してOS用のスワップファイルを生成し、OS用のスワップファイルをストレージにバックアップしておく。その後、画像処理用メモリ領域が画像処理デバイスに使用されるときにバックアップしておいたOS用のスワップファイルに切り替える。
特許第6524928号公報
しかしながら、特許文献1では、OS用のスワップファイルの生成に画像処理用メモリ領域の一部を使用するため、画像処理メモリ領域サイズを超えたOS用のスワップファイルは生成することができない。例えば、画像処理メモリ領域のサイズが1GBだった場合、2GBのOS用のスワップファイルの生成はできない。このような場合、画像処理用メモリ領域が2GBより大きくなるようメモリを増設すればOS用のスワップファイルの生成が可能となるが、コストアップにつながってしまう。
また、一般的にメモリ(DRAM)は、ストレージとして使用される半導体記憶装置(SSDやeMMC)やHDDと比較すると高価であるという問題もある。
さらに、特許文献1では、OS用のスワップファイルをストレージに常時、バックアップさせるため、ストレージの容量を大きくする必要があり、コストアップにつながっていた。
そこで本発明は、メモリやストレージの容量を大きくすることなく、パフォーマンスを向上することができる情報処理装置、制御方法およびプログラムを提供することを目的とする。
本発明の請求項1に係る情報処理装置は、第1のファームウェアを格納する第1の領域及び第2のファームウェアを格納する第2の領域を有する記憶装置を備える情報処理装置であって、前記記憶装置は、前記第1及び第2のファームウェアのいずれかを用いてを起動したときに使用する共通領域を更に有し、前記情報処理装置は、前記第1のファームウェアを用いて前記情報処理装置を起動する第1の起動手段と、前記第2のファームウェアを用いて前記情報処理装置を起動する第2の起動手段と、前記第1の起動手段による起動中において、前記共通領域にスワップファイルを生成してスワップを有効にするスワップ有効手段と、前記第2の起動手段による起動中において、前記共通領域にスワップファイルが存在する場合は、前記共通領域から前記スワップファイルを削除するスワップファイル削除手段とを備えることを特徴とする。
本発明によれば、メモリやストレージの容量を大きくすることなく、パフォーマンスを向上することができる。
本発明の実施例に係る情報処理装置のハードウェア構成の一例を示すブロック図である。 情報処理装置の制御部のハードウェア構成の一例を示すブロック図である。 制御部に含まれるeMMCのシステム領域のパーティション構成の一例を示す図である。 eMMC内のシステム領域の各パーティションへのマウント方法の一例を示すマウント構成表を示す図である。 情報処理装置が有するファームウェアモジュールの構成の一例を示すブロック図である。 本発明の実施例における、情報処理装置の通常起動時のスワップファイルの生成、有効化処理のフローチャートである。 本発明の実施例における、ファームウェアアップデート時のスワップファイルの削除処理のフローチャートである。 図7Aのフローチャートの続きである。
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。尚、実施形態に係る情報処理装置としてデジタル複合機(MFP:Multi Function Peripheral)を例に説明する。しかしながら適用範囲はデジタル複合機に限定はせず、情報処理装置であればよい。
<装置の説明>
図1は、本発明の実施例に係る情報処理装置10のハードウェア構成の一例を示すブロック図である。また、図2は、情報処理装置10の制御部120のハードウェア構成の一例を示すブロック図である。
情報処理装置10は、外部のPC170及び外部サーバ180と、LAN110を介して接続する。また、情報処理装置10は、内部に、制御部120、操作部130、プリンタエンジン140、スキャナエンジン150、及び外部電源160を備える。
制御部120は、CPU210、Chipset211、RAM212、SRAM213、ネットワークI/Fカード(NIC)214、操作部I/F215、及びプリンタI/F216を備える。さらに制御部120は、スキャナI/F217、半導体記憶装置(eMMC)219、Embedded Controller280、LED290、及びFlash-ROM291を備える。
CPU210を含む制御部120は、情報処理装置10全体の動作を制御する。
CPU210は、eMMC219に記憶された制御プログラムを読み出して読取制御や印刷制御、ファームアップデート制御などの各種制御処理を実行する。
eMMC219は、ワークエリアやユーザデータ領域として用いられる。
Flash-ROM291は、リードオンリーメモリで、情報処理装置10のBIOS、固定パラメータ等を格納している。
RAM212は、CPU210の主メモリ、ワークエリア等の一時記憶領域として用いられる。
SRAM213は、電源を再投入してもデータが消えない不揮発メモリであり、情報処理装置10で必要となる設定値や画像調整値などを記憶する。
操作部I/F215は、操作部130と制御部120とを接続する。
操作部130は、タッチパネル機能を有する液晶表示部やキーボード等により構成される。
プリンタI/F216は、プリンタエンジン140と制御部120とを接続する。
プリンタエンジン140は、その内部にある不図示のROMにプリンタエンジンファーム141を格納する。プリンタエンジン140で印刷すべき画像データはプリンタI/F216を介して制御部120からプリンタエンジン140に転送され、プリンタエンジン140において記録媒体上に印刷される。
スキャナI/F217は、スキャナエンジン150と制御部120とを接続する。
スキャナエンジン150は、その内部にある不図示のROMにスキャナエンジンファーム151を格納する。スキャナエンジン150は、原稿上の画像を読み取って画像データを生成し、スキャナI/F217を介して制御部120に入力する。
NIC214は、制御部120(情報処理装置10)をLAN110に接続する。NIC214は、LAN110上の外部装置(例えば、外部サーバ180やPC170)に画像データや情報を送信したり、逆にアップデートファームや各種情報を受信したりする。尚、外部サーバ180は、本実施例ではLAN110上に存在するが、情報処理装置10と直接又は間接的に接続される構成であればこれに限定されない。例えば、外部サーバ180は、LAN110と接続するインターネット上に存在してもよい。また、本実施例では、ユーザは操作部130で情報処理装置10の操作を行うが、PC170上に存在する図示しないWebブラウザから情報処理装置10の操作を行うようにしてもよい。
Chipset211は、一連の関連のある複数の集積回路である。
RTC270は、RealTimeClock(リアルタイムクロック)であり、計時専用のチップである。
外部電源160は、eMMC219にある制御プログラムからの指示によりスリープへの移行時に制御部120への電源の供給を断つが、スリープ中は、Chipset211やRTC270は、制御部120にある不図示の内蔵電池から電源供給を受ける。このため、Chipset211やRTC270は、スリープ中も動作することができ、これにより、情報処理装置10のスリープからの復帰が実現できる。一方、シャットダウン中は、Chipset211やRTC270への電源供給はまったく行われないため、Chipset211やRTC270は動作することができない。
CPU281は、Embedded Controller280のソフトウェアプログラムを実行し、情報処理装置10の中で一部の制御を行う。
RAM282は、ランダムアクセスメモリで、CPU281が情報処理装置10を制御する際に、プログラムや一時的なデータの格納などに使用される。
LED290は、必要に応じて点灯し、ソフトウェアやハードウェアの異常を外部に伝えるために利用される。
<パーティション構成>
図3は、制御部120に含まれるeMMC219内のシステム領域300のパーティション構成の一例を示す図である。
図3に示すように、システム領域300は、stdファーム格納領域301、safeファーム格納領域302、ユーザデータ格納領域303a,303b、ワーク領域304a,304b、及び共有ワーク領域305の7つのパーティションを有する。
stdファーム格納領域301は、通常起動用ファームウェアを格納するパーティションである。
safeファーム格納領域302は、通常起動用ファームウェアのアップデート用ファームウェアを格納するパーティションである。以下、説明の簡略化のために、アップデート用ファームウェアはsafeファーム、通常起動用ファームウェアはstdファームと記載する。
ユーザデータ格納領域303a,303bは夫々、各種ユーザデータを格納するパーティションであり、ワーク領域304a,304bは、ジョブ実行等のワークエリアとして使用されるパーティションである。
共有ワーク領域305(共通領域)は、通常起動時、アップデート用起動時、それぞれで共有して使用されるワークエリアとして使用されるパーティションである。
<マウント構成>
図4は、eMMC219内のシステム領域300の各パーティションへのマウント方法の一例を示すマウント構成表400を示す図である。eMMC219は、図3に示したシステム領域300内の各パーティションを、起動モードに応じてマウントして動作する。ここで起動モードとは、stdファームを用いて情報処理装置10の通常起動を行うモード(第1の起動手段)と、safeファームを用いて情報処理装置10のアップデート用起動を行うモード(第2の起動手段)を指す。またそれぞれ、起動モードの切り替えを行う機能を備え、ローダー505がSRAM213に保存される起動モードの情報に応じてstdファームとsafeファームの起動を行う。情報処理装置10は起動モードを切り替えながら後述するファームウェアアップデートを実現する。
stdファーム格納領域301は、セキュリティ上、通常起動中は読み込みのみ可(RO)のマウントを行って使用するパーティションである。また、ファームウェアアップデート時には、ファームウェアのアップデートのためにstdファーム格納領域301は書き込み可能(RW)なマウントを行う。
同様に、safeファーム格納領域302は、セキュリティ上、ファームウェアアップデート用起動中は読み込みのみ可(RO)のマウントを行って使用するパーティションである。また、通常起動時には、safeファームのアップデートが必要なければマウントしない。
ユーザデータ格納領域303a,303b、及びワーク領域304a,304bは、通常起動中に書き込み可能(RW)なマウントを行って使用するパーティションである。アップデート用起動中にはユーザデータ格納領域303a,303b、及びワーク領域304a,304bは基本的には使用しないのでマウントを行わない。
共有ワーク領域305は、通常起動中はスワップファイルや、バックグラウンドでダウンロードされる更新用の新ファームウェアを格納するため、書き込み可能(RW)なマウントを行って使用するパーティションである。アップデート用起動中においても、共有ワーク領域305は、ファームアップデート用ワークとして、旧ファームウェアのバックアップデータを格納するので、書き込み可能(RW)なマウントを行う。
<ファームウェア構成>
図5は、情報処理装置10が有するファームウェアモジュールの構成の一例を示すブロック図である。
通信管理部501は、LAN110に接続されるNIC214を制御して、LAN110を介して外部とデータの送受信を行う。
UI制御部502は、操作部I/F215を介して操作部130への入力を受け取り、入力に応じた処理や画面出力を行う。
ブートプログラム503は、情報処理装置10の電源を入れるとEmbedded Controller280のCPU281で実行されるプログラムで、起動に関わる処理を行う。
BIOS504は、ブートプログラム503実行後にCPU210で実行されるプログラムで、起動に関わる処理を行う。
ローダー505は、BIOS504の処理が終わった後にCPU210で実行されるプログラムで、起動に関わる処理を行う。ローダー505がSRAM213に保存される起動モードの情報に応じてstdファームとsafeファームの起動を行う。
stdファーム格納領域301とsafeファーム格納領域302は、前述の図3でも説明したeMMC219内に構成されるパーティションである。stdファーム格納領域301(第1の領域)は通常起動用ファームウェアであるstdファーム506を含む。safeファーム格納領域302(第2の領域)はアップデート用起動ファームウェアであるsafeファーム507を含む。
stdファーム506(第1のファームウェア)は、CPU210で実行されるプログラムであり、情報処理装置10で各機能を提供する複数のプログラムからなる。例えばスキャナI/F217やプリンタI/F216を制御するプログラムや起動プログラムなどである。また、stdファーム506は、マウント用プログラム508を含む。通常起動時にはstdファーム506の中から起動プログラムが呼び出され、マウント用プログラム508によって通常起動中に使用するeMMC219の各領域をマウントするなどの起動処理が行われる。その後、情報処理装置10の各機能を提供する複数のプログラムが起動される。また、stdファーム506はファームウェアのダウンロードを行うファームウェアダウンロード用プログラム509も含む。
safeファーム507(第2のファームウェア)は、アップデート用起動時にCPU210で実行されるプログラムである。safeファーム507は、情報処理装置10のstdファームのアップデートを実施するstdファームアップデート用プログラム510やマウント用プログラム511等、複数のプログラムからなる。
stdファームアップデート用プログラム510は、stdファーム506、プリンタエンジンファーム141(図1)、及びスキャナエンジンファーム151(図1)をアップデートする機能を備える。情報処理装置10として、例えば図示しないフィニッシャなどの、スキャナエンジンやプリンタエンジン以外の構成が接続された場合も同様になる。マウント用プログラム511は、アップデート用起動時にマウント処理を行う。
共有ワーク領域305は、前述の図3でも説明したeMMC219内に構成される共有ワーク領域用のパーティションを示す。共有ワーク領域305内には、通常起動中にダウンロードした更新用のstdファーム512を一時的に格納したり、通常起動中にスワップファイル513を格納したり、アップデート用起動中に旧stdファームのバックアップデータ514を格納したりする。
<通常起動中のスワップファイルの生成、有効化>
通常起動中のスワップファイルの生成、有効化処理について、図6のフローチャートを用いて説明する。図6に示すフローチャートは、図2に示したeMMC219に格納されたプログラムにしたがって、CPU210によって実行される。また、本処理は、CPU210が、電源ONや再起動指示等を受けた、stdファーム格納領域301のstdファーム506を用いた通常起動中に実行される。
まず、ステップS601において、マウント用プログラム508によって、図4のマウント構成表400にしたがったeMMC219内のシステム領域300の各パーティションのマウント処理を行う。
続いて、ステップS602において、マウント用プログラム508によって、ステップS601でマウントした共有ワーク領域305にスワップファイル513が存在しているかどうか確認する。スワップファイル513が存在していた場合(ステップS602でYES)、ステップS604に進み、もともと存在していたスワップファイル513によるスワップを有効化し(スワップ有効手段)、本処理を終了する。一方、スワップファイル513が存在しなかった場合(ステップS602でNO)、ステップS603に進む。
ステップS603において、マウント用プログラム508によって、スワップファイル513を生成した後、ステップS604に進む。
ステップS604において、生成したスワップファイル513の共有ワーク領域305へのスワップを有効化し、本処理を終了する。
<ファームウェアアップデート時のスワップファイル削除>
ファームウェアアップデート時のスワップファイルの削除処理について、図7A、図7Bのフローチャートを用いて説明する。図7A、図7Bに示すファームウェアアップデート処理の期間中、すなわち、アップデート用起動を開始するための再起動指示を受信してからファームウェアの更新終了後に通常起動を開始するまでの間、情報処理装置10は、ユーザ操作を受け付けない。また、同期間中、情報処理装置10は、印刷ジョブ、スキャンジョブ、FAXジョブ等のジョブも受け付けない。図7A、図7Bに示すフローチャートは、図2に示したeMMC219に格納されたプログラムにしたがって、CPU210によって実行される。
ステップS701において、stdファーム格納領域301のstdファーム506が起動している通常起動状態で、外部サーバ180もしくは操作部130から、ファームウェアのアップデート指示を受信するとステップS702に進む。このとき、CPU210は、eMMC219内のstdファーム506に含まれるファームウェアダウンロード用プログラム509を読み出し、ファームウェアのアップデート処理を開始する。また、CPU210は、アップデート処理を開始すると、まず、アップデート対象となる新ファームウェアのファームウェア情報を取得し、これを共有ワーク領域305内のファームウェア情報515として保存する。
続いて、ステップS702で操作部130に認証画面を表示する。
ステップS703において、ステップS702で表示された認証画面を用いてユーザの認証を確認すると、ステップS704に進む。
ステップS704において、外部サーバ180から新しいstdファームをバックグラウンドでダウンロードし、これを共有ワーク領域305にダウンロードした更新用のstdファーム512として保存する。このダウンロードした更新用のstdファーム512とは、stdファーム格納領域301に格納されるプログラムの新しいバージョンのプログラムである。尚、ユーザ認証の必要のないファームウェアである場合は、ステップS702,S703はスキップしてよい。
続いて、ステップS705において、共有ワーク領域305の適用時刻情報516でファームウェアの適用時刻が設定されていない場合、及びかかる設定がされており且つ設定された適用時刻に達した場合、ステップS706に進む。適用時刻の設定は予め定期実行時刻が設定されていてもよいし、ファームウェアのアップデートを受信した際に外部サーバ180から設定したり、ユーザが操作部130から設定したりしてもよい。
ステップS706において、操作部130に認証画面を表示する。
ステップS707において、ステップS706で表示された認証画面を用いてユーザの認証を確認すると、ステップS708に進み、safeファーム507によるアップデート用起動を行う。尚、ステップS702,703と同様、ユーザ認証の必要のないファームウェアである場合は、ステップS706,S707はスキップしてよい。
ステップS709において、safeファーム507によるアップデート用起動開始時にマウント用プログラム511によって、図4のマウント構成表400にしたがってstdファーム格納領域301を書き込み可(RW)の状態でマウントする。
次に、ステップS710において、共有ワーク領域305を書き込み化(RW)の状態でマウントする。
ステップS711において、マウント用プログラム511によって、マウントした共有ワーク領域305にスワップファイル513が存在しているかどうか確認する。スワップファイル513が存在していた場合(ステップS711でYES)、ステップS712に進み、共有ワーク領域305のスワップファイル513を削除する(スワップ削除手段)。スワップファイル513が共有ワーク領域305から存在しない状態になった後、マウント用プログラム511を終了し、ステップS713に進む。一方、スワップファイル513が存在していなかった場合(ステップS711でNO)、そのままマウント用プログラム511を終了し、直接ステップS713に進む。
ステップS713において、stdファームアップデート用プログラム510によって、stdファーム格納領域301に現時点で存在する旧stdファームを共有ワーク領域305に旧stdファームのバックアップデータ514として格納する(格納手段)。
ステップS714において、stdファームアップデート用プログラム510によって、共有ワーク領域305内の通常起動中にダウンロードした更新用のstdファーム512をstdファーム格納領域301に展開する。これにより、stdファーム格納領域301を更新する(更新手段)。
ステップS715において、正常にダウンロードした更新用のstdファーム512がstdファーム格納領域301に展開されたか確認する。具体的には、stdファームアップデート用プログラム510が新ファーム展開中にエラーを検知していた場合、stdファーム格納領域301が正常に更新されていないと判断し(ステップS715でNO)、ステップS716に進む。一方、かかるエラーを検知していなかった場合、stdファーム格納領域301が正常に更新されたと判断し(ステップS715でYES)、ステップS717に進む。
ステップS716において、旧stdファームのバックアップデータをstdファーム格納領域301へ再度展開し、その後、ステップS717に進む。この処理により、ファームウェアアップデート失敗時に情報処理装置10が通常起動できない状態に陥るのを防ぐ。
ステップS717において、stdファーム格納領域301と共有ワーク領域305をアンマウントする。
続いてステップS718において、更新された新しいstdファーム格納領域301のstdファーム506によって通常起動し、本処理を終了する。
以上で、図7A,図7Bの処理は終了となる。尚、ステップS701,S703において、外部サーバ180からファームウェアを取得する例を説明したが、新しいファームウェアの取得方法は他の方法であってもかまわない。例えば、USBメモリやPC170にファームウェアを格納し、デバイスに接続することでも同様の処理を実施することができる。
通常起動時は情報処理装置10の各機能を提供する複数のプログラムが動作し、多くのメモリを使用する。一方、アップデート用起動時は、通常起動時に行う様々なジョブ処理は受け付けず、ファームウェアのアップデート処理のみ行うためメモリ使用量は限られる。
そこで、実施例のように通常起動時、アップデード起動時の両方で使用する共有ワーク領域305をeMMC219内に用意し、通常起動時には共有ワーク領域305にスワップファイルを生成しスワップを有効化する。これにより、通常起動時はスワップを使用し従来通りのパフォーマンスで情報処理装置10を動作させる。一方、アップデート起動時はスワップを使用せず、共有ワーク領域305のスワップファイルを削除し、その空いた分の領域にファームウェアのバックアップデータなどを格納し、アップデート処理時のワーク領域として利用する。
このように、本実施例では、起動モードによって1つの共有ワーク領域を2つの用途で使い分け、スワップファイルの生成、使用を起動モードにより切り替える。これにより、RAM212、eMMC219等の容量を削減しつつ必要なスワップ領域を確保し、従来と同等のパフォーマンスで情報処理装置10を利用できる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
10 情報処理装置
210 CPU
219 eMMC
301 stdファーム格納領域
302 safeファーム格納領域
305 共有ワーク領域
505 ローダー
506 stdファーム
507 safeファーム
512 ダウンロードした更新用のstdファーム
513 スワップファイル
514 旧stdファームのバックアップデータ

Claims (6)

  1. 第1のファームウェアを格納する第1の領域及び第2のファームウェアを格納する第2の領域を有する記憶装置を備える情報処理装置であって、
    前記記憶装置は、前記第1及び第2のファームウェアのいずれかを用いてを起動したときに使用する共通領域を更に有し、
    前記情報処理装置は、
    前記第1のファームウェアを用いて前記情報処理装置を起動する第1の起動手段と、
    前記第2のファームウェアを用いて前記情報処理装置を起動する第2の起動手段と、
    前記第1の起動手段による起動中において、前記共通領域にスワップファイルを生成してスワップを有効にするスワップ有効手段と、
    前記第2の起動手段による起動中において、前記共通領域にスワップファイルが存在する場合は、前記共通領域から前記スワップファイルを削除するスワップファイル削除手段とを備えることを特徴とする情報処理装置。
  2. 前記第1のファームウェアは、前記情報処理装置の通常起動用ファームウェアであり、
    前記第2のファームウェアは、前記情報処理装置のアップデート用起動ファームウェアであり、
    前記第1の領域に格納された前記通常起動用ファームウェアを更新する更新手段と、
    前記更新手段において、前記共通領域に前記通常起動用ファームウェアの更新に必要なデータを格納する格納手段とを備えることを特徴とする請求項1に記載の情報処理装置。
  3. 前記通常起動用ファームウェアの更新に必要なデータは、前記第1の領域に格納された前記通常起動用ファームウェアのバックアップデータであることを特徴とする請求項2記載の情報処理装置。
  4. 前記更新手段は、前記格納手段により、前記共通領域に前記バックアップデータが格納された後、外部から前記共通領域にダウンロードした新しいバージョンの前記通常起動用ファームウェアを、前記第1の領域に展開することを特徴とする請求項3記載の情報処理装置。
  5. 第1のファームウェアを格納する第1の領域、及び第2のファームウェアを格納する第2の領域を有する記憶装置を備える情報処理装置の制御方法であって、
    前記記憶装置は、前記第1及び第2のファームウェアのいずれかを用いてを起動したときに使用する共通領域を更に有し、
    前記第1のファームウェアを用いて前記情報処理装置を起動する第1の起動ステップと、
    前記第2のファームウェアを用いて前記情報処理装置を起動する第2の起動ステップと、
    前記第1の起動ステップにおける起動中において、前記共通領域にスワップファイルを生成してスワップを有効にするスワップ有効ステップと、
    前記第2の起動ステップにおける起動中において、前記共通領域にスワップファイルが存在する場合は、前記共通領域から前記スワップファイルを削除するスワップファイル削除ステップとを有することを特徴とする制御方法。
  6. 請求項5記載の制御方法をコンピュータにより実行させることを特徴とするプログラム。
JP2020176265A 2020-10-20 2020-10-20 情報処理装置、制御方法およびプログラム Active JP7541893B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020176265A JP7541893B2 (ja) 2020-10-20 2020-10-20 情報処理装置、制御方法およびプログラム
CN202111201620.8A CN114385249A (zh) 2020-10-20 2021-10-15 使用交换文件的信息处理装置、其控制方法、以及存储介质
US17/503,576 US11797292B2 (en) 2020-10-20 2021-10-18 Information processing apparatus using swap file, control method therefor, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020176265A JP7541893B2 (ja) 2020-10-20 2020-10-20 情報処理装置、制御方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2022067523A JP2022067523A (ja) 2022-05-06
JP7541893B2 true JP7541893B2 (ja) 2024-08-29

Family

ID=81186461

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020176265A Active JP7541893B2 (ja) 2020-10-20 2020-10-20 情報処理装置、制御方法およびプログラム

Country Status (3)

Country Link
US (1) US11797292B2 (ja)
JP (1) JP7541893B2 (ja)
CN (1) CN114385249A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7541893B2 (ja) * 2020-10-20 2024-08-29 キヤノン株式会社 情報処理装置、制御方法およびプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016024775A (ja) 2014-07-24 2016-02-08 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
JP2016053839A (ja) 2014-09-03 2016-04-14 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
JP2017228010A (ja) 2016-06-21 2017-12-28 キヤノン株式会社 ストレージ制御手段、ストレージ制御手段を有する情報処理装置、ストレージ制御方法及びそのプログラム
JP2018045725A (ja) 2017-12-21 2018-03-22 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム
JP2020053002A (ja) 2018-09-20 2020-04-02 キヤノン株式会社 情報処理装置とその制御方法、及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6524928B2 (ja) 2016-01-21 2019-06-05 コニカミノルタ株式会社 画像処理装置及びメモリ制御プログラム並びにメモリ制御方法
US10430263B2 (en) * 2016-02-01 2019-10-01 Electro Industries/Gauge Tech Devices, systems and methods for validating and upgrading firmware in intelligent electronic devices
US20180046452A1 (en) * 2016-08-11 2018-02-15 Tti (Macao Commercial Offshore) Limited Systems and methods for providing over the air firmware updates
JP7541893B2 (ja) * 2020-10-20 2024-08-29 キヤノン株式会社 情報処理装置、制御方法およびプログラム
JP2023068538A (ja) * 2021-11-02 2023-05-17 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016024775A (ja) 2014-07-24 2016-02-08 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
JP2016053839A (ja) 2014-09-03 2016-04-14 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
JP2017228010A (ja) 2016-06-21 2017-12-28 キヤノン株式会社 ストレージ制御手段、ストレージ制御手段を有する情報処理装置、ストレージ制御方法及びそのプログラム
JP2018045725A (ja) 2017-12-21 2018-03-22 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム
JP2020053002A (ja) 2018-09-20 2020-04-02 キヤノン株式会社 情報処理装置とその制御方法、及びプログラム

Also Published As

Publication number Publication date
JP2022067523A (ja) 2022-05-06
US11797292B2 (en) 2023-10-24
US20220121437A1 (en) 2022-04-21
CN114385249A (zh) 2022-04-22

Similar Documents

Publication Publication Date Title
US10394549B2 (en) Information processing apparatus, updating method, and recording medium
JP5780769B2 (ja) データ処理装置、その制御方法およびプログラム、並びに記憶媒体
JP2009259197A (ja) 情報処理装置およびその起動方法
JP2014215957A (ja) 情報処理システム、情報処理装置、起動制御方法及びプログラム
JP7541893B2 (ja) 情報処理装置、制御方法およびプログラム
JP5984326B2 (ja) 情報処理装置、プログラムの更新方法及びプログラム
JP2013092940A (ja) 電子機器及びその電力制御方法
JP2015022681A (ja) 情報処理装置および情報処理装置におけるソフトウェア更新方法
JP5970867B2 (ja) 情報処理装置、画像形成装置およびプログラム
JP7229786B2 (ja) 制御装置、画像形成装置及び起動方法
JP2018078485A (ja) 情報処理装置および情報処理装置の起動方法
JP7401215B2 (ja) 情報処理装置、その制御方法およびプログラム
JP6842641B2 (ja) 画像形成装置
JP6696414B2 (ja) 画像処理装置
JP4021289B2 (ja) 画像形成装置、記憶領域確保方法
JP7424457B2 (ja) 画像形成装置及びプログラム
JP2019049907A (ja) 情報処理装置、情報処理方法及びプログラム
JP2005032014A (ja) データ処理装置、データ処理装置の起動プログラム、データ処理装置の起動方法
JP2012221326A (ja) 電子機器
JP2023086217A (ja) 情報処理装置および情報処理装置の制御方法
US20230280934A1 (en) Information processing apparatus, control method of information processing apparatus, and non-transitory storage medium
JP7033929B2 (ja) 情報処理装置と、情報処理装置におけるファームウェアの更新方法、及びプログラム
JP7095505B2 (ja) 情報処理システム、情報処理デバイスおよびプログラム
JP2021179786A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP6904143B2 (ja) 画像処理装置、スナップショット取得方法、およびコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231013

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240709

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240716

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240819

R150 Certificate of patent or registration of utility model

Ref document number: 7541893

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150