JP6740785B2 - Information processing device and program - Google Patents

Information processing device and program Download PDF

Info

Publication number
JP6740785B2
JP6740785B2 JP2016149504A JP2016149504A JP6740785B2 JP 6740785 B2 JP6740785 B2 JP 6740785B2 JP 2016149504 A JP2016149504 A JP 2016149504A JP 2016149504 A JP2016149504 A JP 2016149504A JP 6740785 B2 JP6740785 B2 JP 6740785B2
Authority
JP
Japan
Prior art keywords
data
information
name
setting information
data structure
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
JP2016149504A
Other languages
Japanese (ja)
Other versions
JP2018018369A (en
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2016149504A priority Critical patent/JP6740785B2/en
Publication of JP2018018369A publication Critical patent/JP2018018369A/en
Application granted granted Critical
Publication of JP6740785B2 publication Critical patent/JP6740785B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)

Description

本発明は、情報処理装置及びプログラムに関する。 The present invention relates to an information processing device and a program.

従来、自装置に関する設定情報を記憶する情報処理装置が知られている。例えば、複合機などの画像処理装置には、プリント機能を選択したときのプリント設定(初期設定)などを示す設定情報が、画像処理装置内に設けられる記憶部に記憶される。これらの設定情報は、例えば情報処理装置の利用者あるいは管理者などにより設定される。 BACKGROUND ART Conventionally, an information processing device that stores setting information about its own device is known. For example, in an image processing apparatus such as a multifunction peripheral, setting information indicating print settings (initial settings) when the print function is selected is stored in a storage unit provided in the image processing apparatus. The setting information is set by, for example, a user or an administrator of the information processing device.

情報処理装置上で動作するソフトウェア(例えばファームウェア)のバージョンが変更された場合、変更前と変更後との間において、設定情報の互換性が問題となる場合がある。そこで、従来、情報処理装置上で動作するソフトウェアのバージョンが変更された場合であっても、バージョン変更前の設定情報をバージョン変更後においても利用できるようにする技術が提案されている。 When the version of software (for example, firmware) operating on the information processing apparatus is changed, compatibility of setting information before and after the change may become a problem. Therefore, conventionally, a technique has been proposed in which the setting information before the version change can be used even after the version change even when the version of the software operating on the information processing device is changed.

例えば、特許文献1には、設定情報に含まれる各データのバージョン変更前と変更後における対応関係を示す変換ルール情報に基づいて設定情報を変換する技術が開示されている。また、特許文献2には、予め用意された設定移行プログラムによって、情報処理装置上で動作するソフトウェアのバージョン変更に伴って、設定情報の移行(変換)処理を実行するシステムが開示されている。 For example, Patent Document 1 discloses a technique of converting setting information based on conversion rule information indicating a correspondence relationship between before and after version change of each data included in setting information. Further, Patent Document 2 discloses a system that executes a setting information transfer (conversion) process in accordance with a version change of software operating on an information processing device, using a prepared setting transfer program.

特開2010−287055号公報JP, 2010-287055, A 特開2009−164902号公報JP, 2009-164902, A

情報処理装置において、記憶部(例えばメモリなど)の容量削減、あるいは設定情報の高速な読み書きを実現するために、データ容量の小さいバイナリ形式で設定情報を記憶部に記憶することが考えられる。一般的に、記憶部からのバイナリデータの読み出しは、読み出し部(例えば制御部など)が、当該バイナリデータのデータ構造を示す情報に基づいて、記憶部のメモリアドレスあるいはデータサイズなどを指定することで実行される。 In an information processing apparatus, in order to reduce the capacity of a storage unit (for example, a memory) or to read and write setting information at high speed, it is possible to store the setting information in the storage unit in a binary format with a small data capacity. Generally, when reading binary data from a storage unit, a reading unit (for example, a control unit) specifies a memory address or a data size of the storage unit based on information indicating the data structure of the binary data. Run on.

情報処理装置上で動作するソフトウェアのバージョンが変更され、設定情報のデータ構造が変更されると、設定情報に含まれる各データが格納されるべきメモリアドレスあるいはサイズなどが変更される。バイナリ形式で設定情報が記憶されている場合、ソフトウェアのバージョン変更により設定情報のデータ構造が変更されると、読み出し部が参照するデータ構造と、記憶部に実際に記憶されている設定情報のデータ構造とが互いに異なることになる。その結果、設定情報を読み出せなくなってしまう。これにより、情報処理装置の利用者あるいは管理者などは、ソフトウェアのバージョン変更後に、再度、設定情報の設定を行わなければならないという問題があった。なお、ソフトウェアのバージョン変更前後における設定情報に含まれる各データの対応関係を示す情報や、設定情報の変換処理を行うための専用プログラムは、それ自体の容量が膨大となるのが一般的であり、バイナリ形式で設定情報を記憶する情報処理装置においてそれらを適用するのは好ましくない。 When the version of software operating on the information processing device is changed and the data structure of the setting information is changed, the memory address or size in which each data included in the setting information is stored is changed. When the setting information is stored in binary format, if the data structure of the setting information is changed by changing the software version, the data structure referenced by the reading unit and the data of the setting information actually stored in the storage unit The structure will be different from each other. As a result, the setting information cannot be read. As a result, the user or administrator of the information processing apparatus has to set the setting information again after changing the software version. Note that the information indicating the correspondence relationship between each data included in the setting information before and after the software version change and the dedicated program for performing the conversion processing of the setting information generally have an enormous capacity. It is not preferable to apply them in an information processing device that stores setting information in binary format.

本発明の目的は、設定情報がバイナリデータ形式で記憶された情報処理装置上で動作するソフトウェアのバージョンが変更された場合に、バージョン変更前において設定済みの設定情報の内容をバージョン変更後においても維持することにある。 An object of the present invention is to, even when the version of the software operating on the information processing device in which the setting information is stored in the binary data format is changed, the contents of the setting information set before the version change are changed even after the version change. To maintain.

請求項1に係る発明は、自装置に関する、データ構造が構造体で定義される設定情報をバイナリ形式で記憶する設定情報記憶部と、自装置上で動作するソフトウェアのバージョン変更前における前記設定情報のデータ構造である第1構造体の構造体名、前記第1構造体のメンバのデータ型、及び、前記第1構造体のメンバのメンバ名を記憶する第1データ構造情報記憶部と、前記ソフトウェアのバージョン変更後における前記設定情報のデータ構造である第2構造体の構造体名、前記第2構造体のメンバのデータ型、及び、前記第2構造体のメンバのメンバ名と、前記第1構造体の構造体名、前記第1構造体のメンバのデータ型、及び、前記第1構造体のメンバのメンバ名との比較に基づいて、前記設定情報の内容の少なくとも一部を維持しつつ、前記設定情報のデータ構造を前記第1構造体から前記第2構造体に転換する転換処理を実行する設定情報転換部と、を備えることを特徴とする情報処理装置である。 The invention according to claim 1 is a setting information storage unit for storing, in a binary format, setting information whose data structure is defined by a structure, and the setting information before version change of software operating on the own apparatus. A structure name of a first structure which is a data structure of the first structure, a data type of a member of the first structure, and a member name of a member of the first structure, and a first data structure information storage unit, The structure name of the second structure, which is the data structure of the setting information after changing the software version, the data type of the member of the second structure, the member name of the member of the second structure, and the Maintain at least a portion of the contents of the configuration information based on a structure name of one structure, a data type of a member of the first structure, and a member name of a member of the first structure. The information processing apparatus further includes a setting information conversion unit that executes a conversion process of converting the data structure of the setting information from the first structure to the second structure .

請求項2に係る発明は、記設定情報転換部は、前記第1構造体のメンバに設定された設定値を、当該第1構造体と同一の構造体名を持つ前記第2構造体の、当該メンバと同一のデータ型及びメンバ名を持つメンバの設定値として割り当てる、ことを特徴とする請求項1に記載の情報処理装置である。 The invention according to claim 2, the pre-Symbol setting information converting unit, a setting value set in the members of the first structure, the second structure with the same structure name as the first structure The information processing apparatus according to claim 1 , wherein the member is assigned as a setting value of a member having the same data type and member name as the member .

請求項3に係る発明は、前記設定情報転換部は、前記第1構造体前記第2構造体とが互いに異なる場合に、前記転換処理を実行する、ことを特徴とする請求項1又は2に記載の情報処理装置である。 The invention according to claim 3 is characterized in that the setting information conversion unit executes the conversion processing when the first structure and the second structure are different from each other. The information processing apparatus described in 1.

請求項4に係る発明は、前記設定情報及び前記第1構造体を示す情報をテキスト形式で出力するテキストデータ出力部、をさらに備えることを特徴とする請求項1から3のいずれか1項に記載の情報処理装置である。 The invention according to claim 4 further comprises a text data output unit that outputs the setting information and the information indicating the first structure in a text format. It is the information processing device described.

請求項5に係る発明は、コンピュータを、自装置に関する、データ構造が構造体で定義される設定情報をバイナリ形式で記憶する設定情報記憶部と、自装置上で動作するソフトウェアのバージョン変更前における前記設定情報のデータ構造である第1構造体の構造体名、前記第1構造体のメンバのデータ型、及び、前記第1構造体のメンバのメンバ名を記憶する第1データ構造情報記憶部と、前記ソフトウェアのバージョン変更後における前記設定情報のデータ構造である第2構造体の構造体名、前記第2構造体のメンバのデータ型、及び、前記第2構造体のメンバのメンバ名と、前記第1構造体の構造体名、前記第1構造体のメンバのデータ型、及び、前記第1構造体のメンバのメンバ名との比較に基づいて、前記設定情報の内容の少なくとも一部を維持しつつ、前記設定情報のデータ構造を前記第1構造体から前記第2構造体に転換する転換処理を実行する設定情報転換部と、として機能させることを特徴とするプログラムである。
According to a fifth aspect of the present invention, there is provided a computer in which a setting information storage unit, which stores setting information in which a data structure is defined by a structure in a binary format, and a computer before the version change of software operating on the own device. A first data structure information storage unit that stores a structure name of a first structure that is a data structure of the setting information, a data type of a member of the first structure, and a member name of a member of the first structure. And a structure name of a second structure which is a data structure of the setting information after the version change of the software, a data type of a member of the second structure, and a member name of a member of the second structure. , The structure name of the first structure, the data type of the member of the first structure, and at least a part of the content of the setting information based on the comparison with the member name of the member of the first structure. And a setting information conversion unit that executes a conversion process for converting the data structure of the setting information from the first structure to the second structure while maintaining the above.

請求項1、2、又は5に記載の発明によれば、設定情報がバイナリデータ形式で記憶された情報処理装置上で動作するソフトウェアのバージョンが変更された場合に、バージョン変更前において設定済みの設定情報の内容をバージョン変更後においても維持することができる。 According to the invention described in claim 1, 2, or 5, when the version of the software operating on the information processing device in which the setting information is stored in the binary data format is changed, the setting is performed before the version change. The contents of the setting information can be maintained even after the version is changed.

請求項3に記載の発明によれば、ソフトウェアのバージョン変更により設定情報のデータ構造が変更された場合のみ転換処理を行うことができる。 According to the third aspect of the invention, the conversion process can be performed only when the data structure of the setting information is changed due to the change of the software version.

請求項4に記載の発明によれば、設定情報及び第1データ構造情報を管理者あるいは利用者が編集することができる。 According to the invention described in claim 4, the administrator or the user can edit the setting information and the first data structure information.

本実施形態に係る画像処理装置の構成概略図である。It is a schematic configuration diagram of an image processing apparatus according to the present embodiment. NV側スキーマ情報の内容の例を示す概念図である。It is a conceptual diagram which shows the example of the content of NV side schema information. ROM側スキーマ情報の内容の例を示す概念図である。It is a conceptual diagram which shows the example of the content of ROM side schema information. 本実施形態の処理の流れを示すフローチャートである。It is a flow chart which shows a flow of processing of this embodiment. 設定情報のコンバート処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a conversion process of setting information. RAM上に展開された旧キャッシュデータ及び新キャッシュデータを示す概念図である。It is a conceptual diagram which shows the old cache data and new cache data expanded on RAM. 新キャッシュデータに設定値が割り当てられた状態を示す概念図である。It is a conceptual diagram which shows the state where the setting value was allocated to the new cache data.

以下、本発明の実施形態を図面に基づいて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1には、本実施形態に係る情報処理装置としての画像処理装置10の構成概略図が示されている。画像処理装置10は、いわゆる複合機であり、プリント機能、コピー機能、スキャン機能、あるいはファックス機能などを有する装置である。 FIG. 1 shows a schematic configuration diagram of an image processing apparatus 10 as an information processing apparatus according to the present embodiment. The image processing device 10 is a so-called multi-function peripheral, and is a device having a print function, a copy function, a scan function, a fax function, or the like.

不揮発性メモリ12は、例えばハードディスクあるいはフラッシュメモリ(SDメモリカードあるいはUSB(Universal Serial Bus)メモリ)などから構成される。不揮発性メモリ12は、画像処理装置10に対して着脱可能となっていてもよい。不揮発性メモリ12は、電源の供給を遮断しても記憶済みの情報を保持するものである。不揮発性メモリ12には、設定情報としてのユーザデータ14、及び第1データ構造情報としてのNV側スキーマ情報16が記憶される。つまり、不揮発性メモリ12は、設定情報記憶部及び第1データ構造情報記憶部として機能する。 The nonvolatile memory 12 is composed of, for example, a hard disk or a flash memory (SD memory card or USB (Universal Serial Bus) memory). The non-volatile memory 12 may be removable from the image processing apparatus 10. The non-volatile memory 12 holds the stored information even when the power supply is cut off. The non-volatile memory 12 stores user data 14 as setting information and NV side schema information 16 as first data structure information. That is, the non-volatile memory 12 functions as a setting information storage unit and a first data structure information storage unit.

ユーザデータ14は、画像処理装置10の動作に関する情報である。例えば、ユーザデータ14には、画像処理装置10において各機能が選択された場合の当該機能の設定(初期設定)などの情報が含まれる。ユーザデータ14は、画像処理装置10の利用者(ユーザ)あるいは管理者によって適宜設定されてよい。ユーザが画像処理装置10を利用する場合にユーザを識別するための認証処理が行われる場合は、ユーザデータ14はユーザ毎に記憶されてもよい。 The user data 14 is information regarding the operation of the image processing apparatus 10. For example, the user data 14 includes information such as the setting (initial setting) of the function when each function is selected in the image processing apparatus 10. The user data 14 may be appropriately set by the user (user) or the administrator of the image processing apparatus 10. When an authentication process for identifying a user is performed when the user uses the image processing apparatus 10, the user data 14 may be stored for each user.

ユーザデータ14は、バイナリ形式で記憶される。これにより、不揮発性メモリ12の低容量化が実現され、あるいは、不揮発性メモリ12からのユーザデータ14の高速な読み書き処理が実現される。 The user data 14 is stored in a binary format. As a result, the capacity of the non-volatile memory 12 is reduced, or high-speed reading/writing processing of the user data 14 from the non-volatile memory 12 is realized.

ユーザデータ14のデータ構造は、後述のROM(Read Only Memory)18に記憶される、画像処理装置10上で動作するソフトウェアとしてのファームウェアによって定義される。本実施形態においては、ユーザデータ14のデータ構造は、1又は複数の変数としてのメンバを含む構造体で定義され、C言語によって以下のように定義されるものとする。
struct AAA{
int aaa;
double bbb;
long ccc;
}
The data structure of the user data 14 is defined by firmware, which is stored in a ROM (Read Only Memory) 18 described later and operates as software on the image processing apparatus 10. In the present embodiment, the data structure of the user data 14 is defined by a structure including members as one or a plurality of variables, and is defined by the C language as follows.
struct AAA{
int aaa;
double bbb;
long ccc;
}

ここで、「AAA」は構造体名である。「int aaa」、「double bbb」、及び「long ccc」がそれぞれメンバを示す。「int aaa」を例に取ると、「int」がメンバのデータ型を示し、「aaa」がメンバのメンバ名を示す。1つの構造体においては、同じデータ型とメンバ名の組を使用することはできない。したがって、構造体名、データ型、及びメンバ名によって、ユーザデータ14内のメンバを一意に特定することができる。なお、上記例では、ユーザデータ14は1つの構造体から定義されているが、ユーザデータ14のデータ構造は複数の構造体から定義されてもよい。 Here, “AAA” is a structure name. “Int aaa”, “double bbb”, and “long ccc” respectively indicate members. Taking "int aaa" as an example, "int" indicates the data type of the member, and "aaa" indicates the member name of the member. The same data type and member name pair cannot be used in one structure. Therefore, the member in the user data 14 can be uniquely specified by the structure name, the data type, and the member name. In the above example, the user data 14 is defined by one structure, but the data structure of the user data 14 may be defined by a plurality of structures.

ユーザデータ14としては、上記のような構造体の各メンバに設定される設定値を含む。例えば、メンバ「int aaa」に対する設定値、メンバ「double bbb」に対する設定値、及び「long ccc」に対する設定値を含む。 The user data 14 includes setting values set for each member of the above structure. For example, the setting value for the member “int aaa”, the setting value for the member “double bbb”, and the setting value for “long ccc” are included.

NV側スキーマ情報16は、不揮発性メモリ12に記憶されているユーザデータ14のデータ構造を示すものである。上述の通り、ユーザデータ14は、構造体により定義されるため、本実施形態におけるNV側スキーマ情報16は、ユーザデータ14の構造体に関する情報を含む。なお、NV側スキーマ情報16もバイナリ形式で不揮発性メモリ12に記憶される。 The NV-side schema information 16 indicates the data structure of the user data 14 stored in the nonvolatile memory 12. As described above, since the user data 14 is defined by the structure, the NV-side schema information 16 in this embodiment includes information about the structure of the user data 14. The NV-side schema information 16 is also stored in the non-volatile memory 12 in a binary format.

ROM18に記憶されるファームウェアのバージョン変更(バージョンアップ及びバージョンダウンの双方を含む)が行われることによって、新バージョンのファームウェア(以下「新ファームウェア」と記載する)におけるユーザデータ14のデータ構造(以下「新データ構造」と記載する)が変更された場合であっても、不揮発性メモリ12は、旧バージョンのファームウェア(以下「旧ファームウェア」と記載する)におけるユーザデータ14のデータ構造(以下「旧データ構造」と記載する)をNV側スキーマ情報16として保持し続ける。つまり、ファームウェアのバージョンが変更された場合、NV側スキーマ情報16は第1データ構造としての旧データ構造を示すものとなる。 By changing the version of the firmware stored in the ROM 18 (including both version upgrade and version down), the data structure of the user data 14 in the new version firmware (hereinafter referred to as “new firmware”) (hereinafter “ Even if the “new data structure” is changed, the nonvolatile memory 12 stores the data structure (hereinafter “old data”) of the user data 14 in the firmware of the old version (hereinafter, “old firmware”). (Described as “structure”) is retained as the NV-side schema information 16. That is, when the firmware version is changed, the NV side schema information 16 shows the old data structure as the first data structure.

図2に、NV側スキーマ情報16の内容が示されている。NV側スキーマ情報16は、ユーザデータ14を定義する構造体の構造体名、当該構造体のデータ容量である構造体サイズ、及び第1変数としてのメンバに関する情報を含んでいる。メンバに関する情報は、メンバのデータ型、メンバ名、メンバのデータ容量であるメンバサイズ、当該構造体の先頭アドレスからメンバに対応するデータ領域の先頭アドレスまでのバイトオフセットであるオフセット、を示す各情報を含んでいる。上述の通り、構造体名、メンバのデータ型、及びメンバのメンバ名により、ユーザデータ14に含まれるメンバを一意に特定できる。したがって、構造体名、メンバのデータ型、及びメンバのメンバ名を示す各情報は、第1変数識別情報として機能する。また、図2には示されていないが、NV側スキーマ情報16は、ユーザデータ14が格納されている不揮発性メモリ12内のデータ領域の先頭アドレスを示す情報も含んでいる。 FIG. 2 shows the content of the NV-side schema information 16. The NV-side schema information 16 includes information about a structure name of a structure that defines the user data 14, a structure size that is the data capacity of the structure, and a member as a first variable. The information about the member includes the data type of the member, the member name, the member size that is the data capacity of the member, and the offset that is the byte offset from the start address of the structure to the start address of the data area corresponding to the member. Is included. As described above, the member included in the user data 14 can be uniquely specified by the structure name, the member data type, and the member member name. Therefore, each information indicating the structure name, the data type of the member, and the member name of the member functions as the first variable identification information. Although not shown in FIG. 2, the NV-side schema information 16 also includes information indicating the start address of the data area in the nonvolatile memory 12 in which the user data 14 is stored.

ROM18には、画像処理装置10を動作させるためのプログラムが記憶される。また、ROM18には、画像処理装置10上で動作する種々のソフトウェアが記憶される。当該ソフトウェアには、画像処理装置10の各機能に対応するファームウェア、あるいは画像処理装置10の機能全体に対応するファームウェアなどが含まれてよい。本実施形態では、ROM18には画像処理装置10の機能全体に対応するファームウェアがインストールされ、当該ファームウェアのバージョンによりユーザデータ14のデータ構造が変更され得るとする。当該ファームウェアは画像処理装置10のユーザあるいは管理者などによってインストールされる。 A program for operating the image processing device 10 is stored in the ROM 18. Further, the ROM 18 stores various software that operates on the image processing apparatus 10. The software may include firmware corresponding to each function of the image processing apparatus 10 or firmware corresponding to all functions of the image processing apparatus 10. In the present embodiment, it is assumed that the ROM 18 is installed with firmware corresponding to all the functions of the image processing apparatus 10, and the data structure of the user data 14 can be changed depending on the version of the firmware. The firmware is installed by the user of the image processing apparatus 10 or the administrator.

ROM18には、ROM18にインストールされたファームウェアにおけるユーザデータ14のデータ構造を示す第2データ構造情報としてのROM側スキーマ情報20が記憶される。NV側スキーマ情報16同様、ROM側スキーマ情報20は、ユーザデータ14の構造体に関する情報を含む。 The ROM 18 stores ROM-side schema information 20 as second data structure information indicating the data structure of the user data 14 in the firmware installed in the ROM 18. Like the NV-side schema information 16, the ROM-side schema information 20 includes information regarding the structure of the user data 14.

ここで、ファームウェアのバージョン変更が行われ、ROM18に新ファームウェアがインストールされた場合、上述のように、NV側スキーマ情報16としては、旧データ構造が保持される一方、ROM側スキーマ情報20には新データ構造が保持される。つまり、ファームウェアのバージョンが変更された場合、ROM側スキーマ情報20は、第2データ構造としての新データ構造を示すものとなる。 Here, when the firmware version is changed and new firmware is installed in the ROM 18, as described above, the NV-side schema information 16 retains the old data structure, while the ROM-side schema information 20 retains the old data structure. The new data structure is retained. That is, when the firmware version is changed, the ROM side schema information 20 indicates a new data structure as the second data structure.

新データ構造も、旧データ構造同様に、1又は複数のメンバを含む構造体で構成される。また、本実施形態においては、旧データ構造と新データ構造とが互いに異なるものとし、新データ構造は以下のような構造体で定義されるとする。
struct AAA{
int aaa;
double bbb;
int zzz;
long ccc;
}
Like the old data structure, the new data structure is also composed of a structure including one or more members. In the present embodiment, the old data structure and the new data structure are different from each other, and the new data structure is defined by the following structure.
struct AAA{
int aaa;
double bbb;
int zzz;
long ccc;
}

本実施形態においては、新データ構造は、第2変数としてのメンバを4つ含む。詳しくは、旧データ構造に比して「int zzz」が追加されている。このような場合、従来においては、メンバ「long ccc」のオフセットが変更されるため、当該メンバの値を適切に読み込むことができなくなる。その結果、後述の制御部26は、ユーザデータ14が構造体「AAA」のデータであることを認識できず、旧ファームウェア時に設定されたユーザデータ14全体を読み込むことができなくなってしまう。 In the present embodiment, the new data structure includes four members as the second variable. For details, "int zzz" is added compared to the old data structure. In such a case, conventionally, the offset of the member "long ccc" is changed, so that the value of the member cannot be read properly. As a result, the control unit 26, which will be described later, cannot recognize that the user data 14 is the data of the structure “AAA” and cannot read the entire user data 14 set in the old firmware.

図3に、ROM側スキーマ情報20の内容が示されている。NV側スキーマ情報16同様、ROM側スキーマ情報20は、ユーザデータ14を定義する構造体の構造体名、構造体サイズ、及びメンバに関する情報を含んでいる。メンバに関する情報は、メンバのデータ型、メンバ名、メンバサイズ、及びオフセットを示す各情報を含んでいる。つまり、ROM側スキーマ情報20は、第2変数識別情報としての、構造体名、メンバのデータ型、及びメンバのメンバ名を示す各情報を含んでいる。また、図3には示されていないが、ROM側スキーマ情報20は、ユーザデータ14が格納されている不揮発性メモリ12内のデータ領域の先頭アドレスを示す情報を含んでいる。 FIG. 3 shows the contents of the ROM side schema information 20. Like the NV-side schema information 16, the ROM-side schema information 20 includes information about the structure name of the structure that defines the user data 14, the structure size, and the member. The information regarding the member includes each information indicating the data type of the member, the member name, the member size, and the offset. That is, the ROM-side schema information 20 includes, as the second variable identification information, each piece of information indicating the structure name, the member data type, and the member member name. Although not shown in FIG. 3, the ROM-side schema information 20 includes information indicating the start address of the data area in the nonvolatile memory 12 in which the user data 14 is stored.

RAM(Random Access Memory)22には、各種データが一時的に書き込まれる。画像処理装置10において処理が行われる際に、必要なデータがRAM22上に展開され、展開されたデータに基づいて制御部26が処理を行う。なお、RAM22は揮発性メモリであり、画像処理装置10がパワーオフされるなどしてRAM22への電源の供給が遮断されると、RAM22に記憶された内容は消去される。 Various data are temporarily written in a RAM (Random Access Memory) 22. When processing is performed in the image processing apparatus 10, necessary data is expanded on the RAM 22 and the control unit 26 performs processing based on the expanded data. The RAM 22 is a volatile memory, and the contents stored in the RAM 22 are erased when the power supply to the RAM 22 is cut off, for example, when the image processing apparatus 10 is powered off.

入力部24は、タッチパネルあるいはボタンなどを含んで構成される。入力部24は、画像処理装置10のユーザあるいは管理者などの指示を画像処理装置10に入力するために用いられる。例えば、ユーザがユーザデータ14を入力する際に入力部24が用いられる。 The input unit 24 includes a touch panel or buttons. The input unit 24 is used for inputting an instruction from the user of the image processing apparatus 10 or an administrator to the image processing apparatus 10. For example, the input unit 24 is used when the user inputs the user data 14.

制御部26は、例えばCPU(Central Processing Unit)、あるいはマイクロコンピュータなどを含んで構成され、ROM18に記憶されたプログラムに従って画像処理装置10の各部を動作させるものである。制御部26は、当該プログラムにより、設定情報転換部としてのコンバート処理部28、及びテキストデータ出力部としてのXMLデータ生成部30としても機能する。 The control unit 26 includes, for example, a CPU (Central Processing Unit), a microcomputer, or the like, and operates each unit of the image processing apparatus 10 according to a program stored in the ROM 18. The control unit 26 also functions as a conversion processing unit 28 as a setting information conversion unit and an XML data generation unit 30 as a text data output unit according to the program.

コンバート処理部28は、NV側スキーマ情報16が示す旧データ構造、及びROM側スキーマ情報20が示す新データ構造に基づいて、ユーザデータ14の内容の少なくとも一部を維持しつつ、ユーザデータ14のデータ構造を旧データ構造から新データ構造に転換する転換処理としてのコンバート処理を行う。 The conversion processing unit 28 maintains at least a part of the contents of the user data 14 based on the old data structure indicated by the NV-side schema information 16 and the new data structure indicated by the ROM-side schema information 20, while A conversion process is performed as a conversion process for converting the data structure from the old data structure to the new data structure.

具体的には、NV側スキーマ情報16が有する第1変数識別情報(旧データ構造における構造体名、メンバのデータ型、及びメンバ名)、及び、ROM側スキーマ情報20が有する第2変数識別情報(新データ構造における構造体名、メンバのデータ型、及びメンバ名)に基づいて、旧データ構造の各メンバに設定された設定値を、新データ構造の対応する各メンバの設定値として割り当てる(設定する)。当該コンバート処理により、たとえファームウェアのバージョン変更により旧データ構造と新データ構造とが互いに異なるものとなったとしても、ユーザデータ14の内容を引き継ぐことができる。 Specifically, the first variable identification information (structure name in the old data structure, member data type, and member name) included in the NV side schema information 16 and the second variable identification information included in the ROM side schema information 20. Based on (the structure name in the new data structure, the data type of the member, and the member name), the setting value set for each member of the old data structure is assigned as the setting value of each corresponding member of the new data structure ( Set). By the conversion process, even if the old data structure and the new data structure are different from each other due to the firmware version change, the contents of the user data 14 can be inherited.

本実施形態では、コンバート処理部28は、ファームウェアのバージョンが変更された後に、画像処理装置10が起動されたタイミングでコンバート処理を行う。また、ファームウェアのバージョンが変更されても、旧データ構造と新データ構造が同じである場合には、コンバート処理部28はコンバート処理を行わないようにしてもよい。つまり、ファームウェアのバージョン変更によって旧データ構造と新データ構造とが異なるものとなった場合にのみコンバート処理を行うようにしてもよい。コンバート処理部28が行う処理の詳細については後述する。 In the present embodiment, the conversion processing unit 28 performs conversion processing at the timing when the image processing apparatus 10 is activated after the firmware version is changed. Further, even if the firmware version is changed, if the old data structure and the new data structure are the same, the conversion processing unit 28 may not perform the conversion process. That is, the conversion process may be performed only when the old data structure and the new data structure become different due to the firmware version change. Details of the processing performed by the conversion processing unit 28 will be described later.

XMLデータ生成部30は、バイナリ形式で記憶されたユーザデータ14及びNV側スキーマ情報16をテキスト形式のデータに変換して出力する。本実施形態では、当該テキスト形式としてXML形式が採用される。XML形式のデータは、不揮発性メモリ12、特にSDカードあるいはUSBメモリのように外部へ持ち出す(エクスポートする)ことができる不揮発性メモリ12に記憶させる。テキスト形式のデータは他の装置(パーソナルコンピュータなど)においてユーザが判読できる形式であるため、テキスト形式でユーザデータ14及びNV側スキーマ情報16をエクスポートすることで、ユーザは他の装置においてこれらの情報を編集することができる。エクスポートされたユーザデータ14及びNV側スキーマ情報16は、再度画像処理装置10に戻され(インポートされ)、その後コンバート処理部28によるコンバート処理に用いられてよい。 The XML data generation unit 30 converts the user data 14 and the NV-side schema information 16 stored in the binary format into text format data and outputs it. In this embodiment, the XML format is adopted as the text format. The data in the XML format is stored in the non-volatile memory 12, particularly the non-volatile memory 12 that can be taken out (exported) like the SD card or the USB memory. Since the text format data is in a format that can be read by the user on other devices (such as personal computers), the user data 14 and the NV-side schema information 16 can be exported in the text format so that the user can use the information on other devices. Can be edited. The exported user data 14 and NV-side schema information 16 may be returned (imported) to the image processing apparatus 10 again, and then used for conversion processing by the conversion processing unit 28.

画像処理装置10の構成概略は以上の通りである。以下、図4及び図5に示すフローチャートに従って、画像処理装置10の処理の流れについて説明する。図5に示すフローチャートは、図4に示すフローチャートに含まれる、設定情報のコンバート処理(ステップS16)の詳細を示すものである。なお、ここでは、図4に示すフローチャートの開始時において、不揮発性メモリ12には、図2に示す内容のNV側スキーマ情報16が記憶され、ユーザデータ14として、メンバ「int aaa」に対する設定値「5」、メンバ「double bbb」に対する設定値「10」、及び、メンバ「long ccc」に対する設定値「15」が記憶されているものとする。 The outline of the configuration of the image processing device 10 is as described above. The flow of processing of the image processing apparatus 10 will be described below with reference to the flowcharts shown in FIGS. 4 and 5. The flowchart shown in FIG. 5 shows details of the setting information conversion process (step S16) included in the flowchart shown in FIG. Here, at the start of the flowchart shown in FIG. 4, the NV-side schema information 16 having the content shown in FIG. 2 is stored in the non-volatile memory 12, and the set value for the member “int aaa” is stored as the user data 14. It is assumed that "5", the setting value "10" for the member "double bbb", and the setting value "15" for the member "long ccc" are stored.

ステップS10において、画像処理装置10のユーザあるいは管理者によって、画像処理装置10に新ファームウェアがインストールされ、ROM18に新ファームウェアが記憶される。それと共に、ROM18には、ユーザデータ14の新データ構造を示すROM側スキーマ情報20が記憶される。ここでは、図3に示すROM側スキーマ情報20が記憶されたとする。 In step S10, the new firmware is installed in the image processing apparatus 10 by the user or the administrator of the image processing apparatus 10, and the new firmware is stored in the ROM 18. At the same time, the ROM-side schema information 20 indicating the new data structure of the user data 14 is stored in the ROM 18. Here, it is assumed that the ROM side schema information 20 shown in FIG. 3 is stored.

ステップS12において、コンバート処理部28は、不揮発性メモリ12にNV側スキーマ情報16が記憶されているか否かを判定する。ここでは、不揮発性メモリ12にNV側スキーマ情報16が記憶されているため(ここで、NV側スキーマ情報16が示すのは旧データ構造となる)ステップS14に進む。仮に、画像処理装置10の初回起動時など、不揮発性メモリ12にNV側スキーマ情報16が記憶されていない場合はステップS18に進む。 In step S12, the conversion processing unit 28 determines whether the NV-side schema information 16 is stored in the non-volatile memory 12. Since the NV-side schema information 16 is stored in the nonvolatile memory 12 (here, the NV-side schema information 16 indicates the old data structure), the process proceeds to step S14. If the NV-side schema information 16 is not stored in the non-volatile memory 12 when the image processing apparatus 10 is first started, the process proceeds to step S18.

ステップS14において、コンバート処理部28は、NV側スキーマ情報16とROM側スキーマ情報20とを比較して、新データ構造と旧データ構造との間に差異があるか否かを判定する。差異がある場合はステップS16のユーザデータ14のコンバート処理に進み、差異がない場合はユーザデータ14のコンバート処理を行わずにステップS18に進む。 In step S14, the conversion processing unit 28 compares the NV-side schema information 16 and the ROM-side schema information 20 and determines whether or not there is a difference between the new data structure and the old data structure. If there is a difference, the process proceeds to the conversion process of the user data 14 in step S16, and if there is no difference, the process proceeds to step S18 without performing the conversion process of the user data 14.

ステップS16において、コンバート処理部28は、ユーザデータ14の内容を維持しつつ、ユーザデータ14のデータ構造を旧データ構造から新データ構造にコンバートするコンバート処理を行う。当該コンバート処理の詳細については図5のフローチャートを参照して後述する。 In step S16, the conversion processing unit 28 performs conversion processing for converting the data structure of the user data 14 from the old data structure to the new data structure while maintaining the content of the user data 14. Details of the conversion process will be described later with reference to the flowchart of FIG.

ステップS18において、コンバート処理部28は、ROM側スキーマ情報20の内容をNV側スキーマ情報16として不揮発性メモリ12に記憶させる。これにより、NV側スキーマ情報16は、新データ構造を示すものとなる。つまり、NV側スキーマ情報16は、新データ構造にコンバートされたユーザデータ14のデータ構造を示すものとなる。 In step S18, the conversion processing unit 28 stores the content of the ROM side schema information 20 in the nonvolatile memory 12 as the NV side schema information 16. As a result, the NV side schema information 16 shows a new data structure. That is, the NV-side schema information 16 indicates the data structure of the user data 14 converted into the new data structure.

以下、図5に示すフローチャートに従って、ユーザデータ14のコンバート処理の詳細について説明する。 The details of the conversion process of the user data 14 will be described below with reference to the flowchart shown in FIG.

ステップS30において、コンバート処理部28は、旧データ構造を示すNV側スキーマ情報16に基づいて、RAM22上において旧データ構造を展開する。旧データ構造の展開処理は、以下の通りに実行される。まず、コンバート処理部28は、RAM22の空きデータ領域において、NV側スキーマ情報16が示す構造体「AAA」の構造体サイズ分のデータ領域を確保する。ここでは、16バイト分のデータ領域を確保する(図2参照)。次いで、NV側スキーマ情報16が示す各メンバのサイズ及びオフセットに基づいて、各メンバに対応するデータ領域を定義する。具体的には、確保領域の先頭から4バイト分の領域をメンバ「int aaa」に対応するデータ領域として定義する。同様に、確保領域のオフセット4バイトから8バイト分の領域をメンバ「double bbb」に対応するデータ領域として定義し、確保領域のオフセット12バイトから4バイト分の領域をメンバ「long ccc」に対応するデータ領域として定義する。 In step S30, the conversion processing unit 28 expands the old data structure on the RAM 22 based on the NV-side schema information 16 indicating the old data structure. The expansion processing of the old data structure is executed as follows. First, the conversion processing unit 28 secures a data area corresponding to the structure size of the structure “AAA” indicated by the NV-side schema information 16 in the empty data area of the RAM 22. Here, a 16-byte data area is secured (see FIG. 2). Next, the data area corresponding to each member is defined based on the size and offset of each member indicated by the NV-side schema information 16. Specifically, an area of 4 bytes from the head of the reserved area is defined as a data area corresponding to the member "int aaa". Similarly, an area of offset 4 bytes to 8 bytes of the reserved area is defined as a data area corresponding to the member "double bbb", and an area of offset 12 bytes to 4 bytes of the reserved area corresponds to the member "long ccc". It is defined as the data area to be used.

ステップS32において、コンバート処理部28は、RAM22上に展開された旧データ構造にユーザデータ14を設定する処理を行う。具体的には、まず、コンバート処理部28は、NV側スキーマ情報16を用いて、ユーザデータ14を不揮発性メモリ12から読み出す。例えば、NV側スキーマ情報16が示す構造体「AAA」の先頭アドレスから4バイト分のデータであるメンバ「int aaa」の設定値を不揮発性メモリ12から読み出す。そして、RAM22上の確保領域の先頭から4バイト分の領域に当該読み出したデータを書き込む。これにより、旧データ構造のメンバ「int aaa」に対応するデータ領域に設定値が設定されたことになる。以下同様にして、コンバート処理部28は、旧データ構造の各メンバの設定値を設定する。 In step S32, the conversion processing unit 28 performs processing of setting the user data 14 in the old data structure expanded on the RAM 22. Specifically, first, the conversion processing unit 28 uses the NV-side schema information 16 to read the user data 14 from the nonvolatile memory 12. For example, the setting value of the member “int aaa”, which is 4-byte data from the start address of the structure “AAA” indicated by the NV-side schema information 16, is read from the nonvolatile memory 12. Then, the read data is written in an area of 4 bytes from the head of the reserved area on the RAM 22. As a result, the set value is set in the data area corresponding to the member "int aaa" of the old data structure. Similarly, the conversion processing unit 28 sets the setting value of each member of the old data structure.

ステップS30及びS32の処理により、図6に示されるように、旧データ構造に対応するデータ領域にユーザデータ14が設定された旧キャッシュデータ40がRAM22上に形成される。 By the processing of steps S30 and S32, as shown in FIG. 6, the old cache data 40 in which the user data 14 is set in the data area corresponding to the old data structure is formed on the RAM 22.

ステップS34において、コンバート処理部28は、新データ構造を示すROM側スキーマ情報20に基づいて、RAM22上において新データ構造を展開する。新データ構造の展開処理の詳細は旧データ構造の展開処理と同様であるため詳細な説明は省略する。 In step S34, the conversion processing unit 28 develops the new data structure on the RAM 22 based on the ROM side schema information 20 indicating the new data structure. The details of the expansion processing of the new data structure are the same as the expansion processing of the old data structure, and thus detailed description will be omitted.

ステップS34の処理により、図6に示されるように、新データ構造に対応するデータ領域である新キャッシュデータ42がRAM22上に形成される。ステップS34の時点では、新キャッシュデータ42の各メンバには設定値「0」が設定されている。 By the processing of step S34, as shown in FIG. 6, new cache data 42, which is a data area corresponding to the new data structure, is formed on the RAM 22. At the time of step S34, the setting value "0" is set to each member of the new cache data 42.

ステップS36において、コンバート処理部28は、新データ構造を示すROM側スキーマ情報20に含まれる1つのメンバ(注目メンバ)の構造体名、データ型、及びメンバ名の組が、旧データ構造を示すNV側スキーマ情報16に含まれるか否かを判定する。ここでは、構造体名「AAA」、データ型「int」、及びメンバ名「aaa」の組がNV側スキーマ情報16に含まれるか否かを判定する。図2を参照して、当該組はNV側スキーマ情報16に含まれるため、ステップS38に進む。 In step S36, the conversion processing unit 28 indicates that the set of the structure name, the data type, and the member name of one member (member of interest) included in the ROM-side schema information 20 indicating the new data structure indicates the old data structure. It is determined whether or not it is included in the NV-side schema information 16. Here, it is determined whether or not the combination of the structure name “AAA”, the data type “int”, and the member name “aaa” is included in the NV side schema information 16. Referring to FIG. 2, since the set is included in the NV side schema information 16, the process proceeds to step S38.

ステップS38において、コンバート処理部28は、RAM22上において、ステップS36で判定された新キャッシュデータ42のメンバに、旧キャッシュデータ40の対応するメンバの設定値をコピーする。ここでは、新キャッシュデータ42の構造体「AAA」のメンバ「int aaa」に対応するデータ領域に、旧キャッシュデータ40の構造体「AAA」のメンバ「int aaa」に対応するデータ領域に設定されたデータをコピーする。これにより、新キャッシュデータ42の「int aaa」に対応するデータ領域に設定値「5」が設定される。 In step S38, the conversion processing unit 28 copies the setting value of the corresponding member of the old cache data 40 to the member of the new cache data 42 determined in step S36 on the RAM 22. Here, it is set in the data area corresponding to the member “int aaa” of the structure “AAA” of the new cache data 42 and in the data area corresponding to the member “int aaa” of the structure “AAA” of the old cache data 40. Copied data. As a result, the setting value “5” is set in the data area corresponding to “int aaa” of the new cache data 42.

ステップS40において、コンバート処理部28は、新データ構造に含まれる全てのメンバについて、ステップS36以下の処理を終えたか否かを判定する。ここでは、未処理のメンバが残っているとしてステップS36に戻る。 In step S40, the conversion processing unit 28 determines whether or not the processing from step S36 has been completed for all the members included in the new data structure. Here, it is assumed that there are unprocessed members and the process returns to step S36.

再度のステップS36において、コンバート処理部28は、新データ構造を示すROM側スキーマ情報20に含まれる他のメンバの構造体名、データ型、及びメンバ名の組が、旧データ構造を示すNV側スキーマ情報16に含まれるか否かを判定する。ここでは、構造体名「AAA」、データ型「int」、及びメンバ名「zzz」の組がNV側スキーマ情報16に含まれるか否かを判定する。図2を参照して、当該組はNV側スキーマ情報16に含まれないため、ステップS42に進む。 In step S36 again, the conversion processing unit 28 determines that the set of the structure name, the data type, and the member name of the other member included in the ROM-side schema information 20 indicating the new data structure indicates the NV side indicating the old data structure. It is determined whether or not it is included in the schema information 16. Here, it is determined whether or not the combination of the structure name “AAA”, the data type “int”, and the member name “zzz” is included in the NV side schema information 16. Referring to FIG. 2, since the set is not included in the NV side schema information 16, the process proceeds to step S42.

ステップS42において、コンバート処理部28は、RAM22上において、ステップS36で判定された新キャッシュデータ42のメンバに、予め定められた所定値を設定する。当該所定値は、画像処理装置10のユーザあるいは管理者によって設定されてもよく、あるいは固定値(例えば「0」)であってもよい。ここでは、新キャッシュデータ42のメンバ「int zzz」に対応するデータ領域に設定値「0」を設定する。 In step S42, the conversion processing unit 28 sets a predetermined value to the member of the new cache data 42 determined in step S36 on the RAM 22. The predetermined value may be set by the user of the image processing apparatus 10 or the administrator, or may be a fixed value (for example, “0”). Here, the set value “0” is set in the data area corresponding to the member “int zzz” of the new cache data 42.

ステップS36からステップS42までの処理を繰り返すことで、新キャッシュデータ42の全てのメンバの設定値が設定される。新キャッシュデータ42の全てのメンバの設定値が設定された状態が図7に示されている。図7に示される通り、新キャッシュデータ42には、旧キャッシュデータ40の設定値、つまりファームウェアのバージョン変更前に設定されたユーザデータ14が引き継がれている。なお、旧データ構造に存在したメンバが新データ構造において無くなった場合は、旧データ構造において当該メンバに設定されていた設定値は新キャッシュデータ42には引き継がれない。 By repeating the processing from step S36 to step S42, the setting values of all the members of the new cache data 42 are set. FIG. 7 shows a state in which the setting values of all members of the new cache data 42 are set. As shown in FIG. 7, the set value of the old cache data 40, that is, the user data 14 set before the firmware version change is carried over to the new cache data 42. When a member existing in the old data structure disappears in the new data structure, the setting value set for the member in the old data structure is not inherited by the new cache data 42.

再度のステップS40で、新データ構造に含まれる全てのメンバについて、ステップS36以下の処理を終えたとコンバート処理部28が判定した場合は、ステップS44に進む。 In step S40 again, if the conversion processing unit 28 determines that the processing of step S36 and subsequent steps has been completed for all members included in the new data structure, the process proceeds to step S44.

ステップS44において、コンバート処理部28は、新キャッシュデータ42に含まれる、各メンバの設定値をユーザデータ14として不揮発性メモリ12に記憶させる。このとき、既に不揮発性メモリ12に記憶されているユーザデータ14を上書きする形で新キャッシュデータ42を不揮発性メモリ12に記憶させてよい。具体的には、不揮発性メモリ12において、ROM側スキーマ情報20が示す構造体「AAA」の先頭アドレスから4バイト分のデータ領域に新キャッシュデータ42のメンバ「int aaa」の設定値を書き込む。同様に、構造体「AAA」のオフセット4バイトから8バイト分のデータ領域に新キャッシュデータ42のメンバ「double bbb」の設定値を書き込み、構造体「AAA」のオフセット12バイトから4バイト分のデータ領域に新キャッシュデータ42のメンバ「int zzz」の設定値を書き込み、構造体「AAA」のオフセット16バイトから4バイト分のデータ領域に新キャッシュデータ42のメンバ「long ccc」の設定値を書き込む。 In step S44, the conversion processing unit 28 causes the nonvolatile memory 12 to store the setting value of each member included in the new cache data 42 as the user data 14. At this time, the new cache data 42 may be stored in the non-volatile memory 12 by overwriting the user data 14 already stored in the non-volatile memory 12. Specifically, in the non-volatile memory 12, the set value of the member “int aaa” of the new cache data 42 is written in the data area of 4 bytes from the start address of the structure “AAA” indicated by the ROM side schema information 20. Similarly, the setting value of the member "double bbb" of the new cache data 42 is written into the data area of 4 bytes from the offset of 4 bytes of the structure "AAA", and 4 bytes from the offset of 12 bytes of the structure "AAA". Write the setting value of the member "int zzz" of the new cache data 42 to the data area, and set the setting value of the member "long ccc" of the new cache data 42 to the data area of 4 bytes from the offset 16 bytes of the structure "AAA". Write.

以上説明した本実施形態によれば、画像処理装置10のファームウェアのバージョンが変更され、ユーザデータ14のデータ構造が変更されたとしても、旧データ構造のユーザデータ14の内容が新データ構造のユーザデータ14において維持される。これにより、画像処理装置10のユーザあるいは管理者は、ファームウェアのバージョンが変更され、ユーザデータ14のデータ構造が変更された場合であっても、ユーザデータ14を再設定する必要がなくなる。 According to the present embodiment described above, even if the firmware version of the image processing apparatus 10 is changed and the data structure of the user data 14 is changed, the content of the user data 14 of the old data structure is the user of the new data structure. Maintained in data 14. As a result, the user or administrator of the image processing apparatus 10 does not need to reset the user data 14 even if the firmware version is changed and the data structure of the user data 14 is changed.

以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。 Although the embodiment according to the present invention has been described above, the present invention is not limited to the above embodiment, and various modifications can be made without departing from the spirit of the present invention.

例えば、本実施形態においては、情報処理装置として画像処理装置10を例に説明したが、本発明が適用される情報処理装置としてはこれに限られず、自装置に関する設定情報を記憶し、自装置上で動作するソフトウェアのバージョンが変更された場合に当該設定情報のデータ構造が変更され得るものである限りどのような装置(コンピュータ)であってもよい。 For example, in the present embodiment, the image processing apparatus 10 has been described as an example of the information processing apparatus, but the information processing apparatus to which the present invention is applied is not limited to this. Any device (computer) may be used as long as the data structure of the setting information can be changed when the version of the software operating above is changed.

また、本実施形態においては、NV側スキーマ情報16は、不揮発性メモリ12に記憶されていたが、NV側スキーマ情報16は、他の記憶部に記憶されるようにしてもよい。例えば、ROM18に記憶されてもよい。 Further, in the present embodiment, the NV-side schema information 16 is stored in the non-volatile memory 12, but the NV-side schema information 16 may be stored in another storage unit. For example, it may be stored in the ROM 18.

10 画像処理装置、12 不揮発性メモリ、14 ユーザデータ、16 NV側スキーマ情報、18 ROM、20 ROM側スキーマ情報、22 RAM、24 入力部、26 制御部、28 コンバート処理部、30 XMLデータ生成部、40 旧キャッシュデータ、42 新キャッシュデータ。 10 image processing device, 12 non-volatile memory, 14 user data, 16 NV side schema information, 18 ROM, 20 ROM side schema information, 22 RAM, 24 input section, 26 control section, 28 conversion processing section, 30 XML data generation section , 40 Old cache data, 42 New cache data.

Claims (5)

自装置に関する、データ構造が構造体で定義される設定情報をバイナリ形式で記憶する設定情報記憶部と、
自装置上で動作するソフトウェアのバージョン変更前における前記設定情報のデータ構造である第1構造体の構造体名、前記第1構造体のメンバのデータ型、及び、前記第1構造体のメンバのメンバ名を記憶する第1データ構造情報記憶部と、
前記ソフトウェアのバージョン変更後における前記設定情報のデータ構造である第2構造体の構造体名、前記第2構造体のメンバのデータ型、及び、前記第2構造体のメンバのメンバ名と、前記第1構造体の構造体名、前記第1構造体のメンバのデータ型、及び、前記第1構造体のメンバのメンバ名との比較に基づいて、前記設定情報の内容の少なくとも一部を維持しつつ、前記設定情報のデータ構造を前記第1構造体から前記第2構造体に転換する転換処理を実行する設定情報転換部と、
を備えることを特徴とする情報処理装置。
A setting information storage unit that stores setting information, which has a data structure defined by a structure, in a binary format regarding its own device,
The structure name of the first structure, which is the data structure of the setting information before the version change of the software operating on the own device, the data type of the member of the first structure, and the member of the first structure A first data structure information storage unit that stores a member name ;
Structure name of the second structure is a data structure of the setting information after the version change of the software, the data type of a member of the second structure, and a member name of a member of the second structure, wherein Maintaining at least a portion of the content of the configuration information based on a structure name of the first structure, a data type of a member of the first structure, and a comparison with a member name of a member of the first structure. At the same time, a setting information conversion unit that executes a conversion process for converting the data structure of the setting information from the first structure to the second structure ,
An information processing apparatus comprising:
記設定情報転換部は、前記第1構造体のメンバに設定された設定値を、当該第1構造体と同一の構造体名を持つ前記第2構造体の、当該メンバと同一のデータ型及びメンバ名を持つメンバの設定値として割り当てる、
ことを特徴とする請求項1に記載の情報処理装置。
Before Symbol setting information conversion unit, a setting value set in the members of the first structure, the said second structure having a first structure and the same structure name, the same data type and the member And assign it as a setting value of a member that has a member name ,
The information processing apparatus according to claim 1, wherein:
前記設定情報転換部は、前記第1構造体前記第2構造体とが互いに異なる場合に、前記転換処理を実行する、
ことを特徴とする請求項1又は2に記載の情報処理装置。
The setting information conversion unit performs the conversion process when the first structure and the second structure are different from each other,
The information processing apparatus according to claim 1 or 2, characterized in that.
前記設定情報及び前記第1構造体を示す情報をテキスト形式で出力するテキストデータ出力部、
をさらに備えることを特徴とする請求項1から3のいずれか1項に記載の情報処理装置。
A text data output unit for outputting the setting information and the information indicating the first structure in a text format,
The information processing apparatus according to any one of claims 1 to 3, further comprising:
コンピュータを、
自装置に関する、データ構造が構造体で定義される設定情報をバイナリ形式で記憶する設定情報記憶部と、
自装置上で動作するソフトウェアのバージョン変更前における前記設定情報のデータ構造である第1構造体の構造体名、前記第1構造体のメンバのデータ型、及び、前記第1構造体のメンバのメンバ名を記憶する第1データ構造情報記憶部と、
前記ソフトウェアのバージョン変更後における前記設定情報のデータ構造である第2構造体の構造体名、前記第2構造体のメンバのデータ型、及び、前記第2構造体のメンバのメンバ名と、前記第1構造体の構造体名、前記第1構造体のメンバのデータ型、及び、前記第1構造体のメンバのメンバ名との比較に基づいて、前記設定情報の内容の少なくとも一部を維持しつつ、前記設定情報のデータ構造を前記第1構造体から前記第2構造体に転換する転換処理を実行する設定情報転換部と、
として機能させることを特徴とするプログラム。
Computer,
A setting information storage unit that stores setting information, which has a data structure defined by a structure, in a binary format regarding its own device,
The structure name of the first structure, which is the data structure of the setting information before the version change of the software operating on the own device, the data type of the member of the first structure, and the member of the first structure A first data structure information storage unit that stores a member name ;
Structure name of the second structure is a data structure of the setting information after the version change of the software, the data type of a member of the second structure, and a member name of a member of the second structure, wherein Maintaining at least a portion of the content of the configuration information based on a structure name of the first structure, a data type of a member of the first structure, and a comparison with a member name of a member of the first structure. At the same time, a setting information conversion unit that executes a conversion process for converting the data structure of the setting information from the first structure to the second structure ,
A program characterized by making it function as.
JP2016149504A 2016-07-29 2016-07-29 Information processing device and program Active JP6740785B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016149504A JP6740785B2 (en) 2016-07-29 2016-07-29 Information processing device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016149504A JP6740785B2 (en) 2016-07-29 2016-07-29 Information processing device and program

Publications (2)

Publication Number Publication Date
JP2018018369A JP2018018369A (en) 2018-02-01
JP6740785B2 true JP6740785B2 (en) 2020-08-19

Family

ID=61076180

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016149504A Active JP6740785B2 (en) 2016-07-29 2016-07-29 Information processing device and program

Country Status (1)

Country Link
JP (1) JP6740785B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7456348B2 (en) 2019-11-29 2024-03-27 株式会社リコー Information processing system, information processing device, information processing method, and program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3808240B2 (en) * 1999-07-08 2006-08-09 Necエンジニアリング株式会社 Data structure conversion system, conversion method, conversion program recording medium
JP2009254513A (en) * 2008-04-15 2009-11-05 Fujinon Corp Method of updating electronic endoscope firmware
JP2012118869A (en) * 2010-12-02 2012-06-21 Fuji Xerox Co Ltd Update program and image formation apparatus

Also Published As

Publication number Publication date
JP2018018369A (en) 2018-02-01

Similar Documents

Publication Publication Date Title
JP4843222B2 (en) Semiconductor memory device control method, memory card, and host device
JP6875808B2 (en) Information processing device
JP4876051B2 (en) Image processing apparatus and control method thereof
JP2006268377A (en) Program start-up controller and program start-up control method
US20150256687A1 (en) Image processing apparatus and method for controlling the same, and storage medium
JP6740785B2 (en) Information processing device and program
JP5929809B2 (en) Firmware update method and firmware program
JP6518159B2 (en) Method and apparatus for transferring a binary image to a memory device
JP5060241B2 (en) Information processing apparatus and control method thereof
JP4826610B2 (en) Image processing apparatus and image erasing program
JP5417820B2 (en) System file sharing apparatus, system file sharing method and program
JP2018018370A (en) Information processor and program
JP2001060196A (en) Image processor
JP2013045285A (en) Information processor, image forming device, and program
JP4918276B2 (en) Information processing apparatus and information processing method
JP2020170477A (en) Storage device, control method thereof, and program
JP4976759B2 (en) Image processing device
JP2006344022A (en) Equipment and program starting method
JP7107188B2 (en) Information processing device, image forming device and program
JP5842437B2 (en) Information processing apparatus and information processing program
US10768846B2 (en) Information processing apparatus and control method of information processing apparatus
JP2006126987A (en) Image processor
JP2007076043A (en) Printer
JP5326547B2 (en) Information processing apparatus, information processing method, and information processing program
JP2004295177A (en) Controller of electronic equipment and printer controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190520

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200407

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200602

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200706

R150 Certificate of patent or registration of utility model

Ref document number: 6740785

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