WO2013057825A1 - 情報処理装置、データ管理方法、データ管理プログラム - Google Patents

情報処理装置、データ管理方法、データ管理プログラム Download PDF

Info

Publication number
WO2013057825A1
WO2013057825A1 PCT/JP2011/074215 JP2011074215W WO2013057825A1 WO 2013057825 A1 WO2013057825 A1 WO 2013057825A1 JP 2011074215 W JP2011074215 W JP 2011074215W WO 2013057825 A1 WO2013057825 A1 WO 2013057825A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
information processing
application program
memory area
specific data
Prior art date
Application number
PCT/JP2011/074215
Other languages
English (en)
French (fr)
Inventor
山城 啓秀
Original Assignee
トヨタ自動車株式会社
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 トヨタ自動車株式会社 filed Critical トヨタ自動車株式会社
Priority to PCT/JP2011/074215 priority Critical patent/WO2013057825A1/ja
Publication of WO2013057825A1 publication Critical patent/WO2013057825A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • G06F11/167Error detection by comparing the memory output

Definitions

  • the present invention relates to an information processing apparatus that executes a plurality of application programs, a data management method thereof, and a data management program.
  • ECUs Electronic Control Units
  • the ECU mounted on the vehicle includes an engine ECU that performs engine ignition control, a body ECU that locks / unlocks a door lock, a brake ECU that performs solenoid control of an electronically controlled brake device, and a power steering device.
  • a steering ECU There are various types such as a steering ECU to be controlled.
  • each function before integration continues as an application program (or task) and is executed by the processor of the ECU.
  • the information processing apparatus that executes a plurality of application programs by integrating a plurality of functions can reduce the cost in terms of hardware, and thus is not limited to the in-vehicle control apparatus but in various fields. It is used.
  • Patent Document 1 describes an information processing apparatus that operates a plurality of application programs including first and second application programs in parallel on an operating system.
  • the information processing apparatus includes a monitoring unit that monitors a function call from the first application program to the operating system or a message transmitted and received between the first application program and the operating system, and a second application program based on the monitoring result. And a control unit that changes or prohibits the function call to the operating system or the message transmission / reception process.
  • FIG. 1 is a diagram simply showing a configuration for realizing memory protection which has been conventionally performed.
  • the application programs (noted as application 1 and application 2) A and B access the memory, the access is performed via the operating system C.
  • the memory E from each application is permitted or prohibited by notification from, for example, an MMU (Memory Management Unit) (D).
  • MMU Memory Management Unit
  • Applications 1 and 2 are assigned to tasks on the operating system C, and accessible memory areas are set in advance. Then, the operating system C recognizes which task is active when each application accesses the memory E by the task table, and if it is not an accessible area, the MMU (D) sends each application and the operating system. An exception interrupt is notified to the CPU executing C.
  • the present invention is for solving such problems, and has as its main object to provide an information processing apparatus and the like that can achieve both memory protection and cost reduction.
  • the first aspect of the present invention provides: An information processing apparatus that executes a plurality of application programs including a first application program and a second application program, When specific data to be protected is written by the first application program, the specific data is written into a first memory area where data is not written by the second application program. And writing the same or consistent data as the specific data in a second memory area that is not accessed by the second application program, When the specific data is read by the first application program, the corresponding data is read from the first memory area and the second memory area, and the read data is identical or consistent. It is characterized by performing processing to check whether or not, Information processing apparatus.
  • a function providing means for providing a function for executing an instruction to the first application program The specific data writing process by the first application program writes the specific data in the first memory area and writes the same or consistent data as the specific data in the second memory area. It is good also as what is performed by calling the function which instruct
  • the specific data read processing by the first application program is performed by calling a function for instructing reading corresponding data from the first memory area and the second memory area from the function providing means. It is good also as what is characterized by being performed.
  • the specific data When the specific data is written by the first application program, the specific data and the same or consistent data as the specific data are stored in the first memory area and the second memory area. It is good also as what is made to memorize
  • the corresponding data is read from the first memory area and the second memory area at a timing different from the timing when the specific data is read by the first application program, and the read data It is good also as what is characterized by performing the process which checks whether it is the same or matches.
  • the writing process of data other than the specific data by the second application program may be performed on a third memory area different from the first memory area and the second memory area.
  • the first and third memory areas may be set on the same memory, and the second memory area may be set on a separate memory from the first and third memory areas.
  • the second aspect of the present invention is: A data management method in an information processing apparatus that executes a plurality of application programs including a first application program and a second application program, Regarding the specific data to be protected, which is data handled by the first application program, The specific data is written to a first memory area where data is not written by the second application program, and the specific memory area is not accessed by the second application program. Writing data that is identical or consistent with the data; A process of reading corresponding data from the first memory area and the second memory area and checking whether the read data is the same or consistent; The data management method is characterized in that the information processing apparatus executes.
  • the third aspect of the present invention is: A data management program in an information processing apparatus that executes a plurality of application programs including a first application program and a second application program, Regarding the specific data to be protected, which is data handled by the first application program, The specific data is written to a first memory area where data is not written by the second application program, and the specific memory area is not accessed by the second application program. Writing data that is identical or consistent with the data; A process of reading corresponding data from the first memory area and the second memory area and checking whether the read data is the same or consistent; Is a data management program that causes the information processing apparatus to execute.
  • FIG. 1 is a system configuration example of an information processing apparatus 1 according to an embodiment of the present invention. It is a figure which shows a mode that the applications 1 and 2 are performed by CPU20, and the flow of information communication.
  • FIG. 4 is a diagram illustrating a state in which specific data and mirror data are stored at addresses offset with respect to physical addresses of the first memory 30 and the second memory 40. It is a flowchart which shows the flow of a process when the data writing process to a memory is performed by the application 1. FIG. It is a flowchart which shows the flow of the process performed when a dedicated Write function is called.
  • FIG. It is a flowchart which shows the flow of a process when the data reading process from a memory is performed by the application 1.
  • FIG. It is a flowchart which shows the flow of the process performed when a dedicated read function is called. It is a flowchart which shows the flow of a verification process.
  • FIG. 2 is a system configuration example of the information processing apparatus 1 according to an embodiment of the present invention.
  • the information processing apparatus 1 includes a program memory 10, a CPU (Central Processing Unit) 20, a first memory 30, and a second memory 40 as main components.
  • the program memory 10 is a non-volatile memory such as a ROM (Read Only Memory) or an EEPROM (Electrically Erasable and Programmable Read Only Memory).
  • ROM Read Only Memory
  • EEPROM Electrically Erasable and Programmable Read Only Memory
  • the program memory 10 stores application programs 11 and 12 (hereinafter simply referred to as application 1 and application 2 as necessary), a dedicated read / write IF (interface) 13, and other programs. There are no particular restrictions on the total number of application programs, the number of application programs corresponding to application 1, and the number of application programs corresponding to application 2.
  • Application 1 and application 2 are each one or a plurality of programs for executing tasks assigned to the information processing apparatus 1.
  • the application 1 is a program that handles data including specific data to be protected
  • the application 2 is a program that exclusively handles general data other than the specific data.
  • ASIL Automotive Safety Integrity Level
  • ASIL is an index value related to vehicle control or the like set by a standard for automobiles, and indicates that a high level of safety policy is required when the level is high.
  • ASIL is defined as QM, ASIL-A, ASIL-B, ASIL-C, and ASIL-D in order from the lowest level.
  • ASIL-ASIL-B ASIL-B
  • data relating to control that requires a high level of safety policy is preferably specified data
  • other data is preferably general data.
  • the dedicated read / write IF 13 is an interface function unit that provides a function for executing an instruction to the application 1 that handles specific data. The function of the dedicated read / write IF 13 will be described later.
  • the CPU 20 includes, for example, an instruction fetch unit, an arithmetic unit including an ALU (Arithmetic Logic Unit), a MUL (multiplier), a DIV (divider), an LSU (Load Memory Unit), an internal memory such as a register and a cache memory, a program A processor having a counter, a local interrupt controller, and the like.
  • the CPU 20 is a single core processor that can execute the applications 1, 2 and the like in parallel by, for example, time division processing.
  • the present invention is not limited thereto, and a multi-core processor, a multi-processor, or the like may be employed, and a plurality of processor cores (or processors) may execute the application 1 and the application 2, respectively.
  • the CPU 20 also has a first bus controller 22 for accessing the first memory 30 via the internal bus 35 and a second bus controller 24 for accessing the second memory 40 via the external bus 45.
  • a chip selector 26 for selecting which bus controller to use is incorporated.
  • Such a configuration is an example, and a configuration having a common bus connected to both the first memory 30 and the second memory 40 may be used.
  • the first memory 30 is a storage device such as an SDRAM (Synchronous Dynamic Random Access Memory) attached as an internal memory, for example. Regions A and B are set in the first memory 30.
  • SDRAM Serial Dynamic Random Access Memory
  • the area A is an area in which writing and reading are performed by the application 1, but only reading is performed by the application 2 (corresponding to the first memory area in the claims).
  • the area B is an area in which writing and reading are performed by the applications 1 and 2 (corresponding to a third memory area in the claims).
  • the second memory 40 is a storage device such as an SDRAM, EEPROM, or SRAM (Static Random Access Memory) attached as an external memory.
  • the second memory 40 is preferably a storage device separate from the first memory 30.
  • a region C is set in the second memory 40.
  • Area C is an area in which writing and reading are performed by application 1 and access (both writing and reading) by application 2 is not performed (corresponding to the second memory area in the claims).
  • the information processing apparatus 1 is directly described in the source code of each application program as to whether or not such access is possible, rather than having a monitoring mechanism different from the application program. As a result, an increase in cost and weight (when the monitoring mechanism is hardware) due to the provision of the monitoring mechanism can be suppressed.
  • FIG. 3 is a diagram illustrating a state in which the applications 1 and 2 are executed by the CPU 20 and a flow of information communication.
  • an arrow (1) indicates a flow of information communication related to reading / writing processing of specific data by the app 1
  • an arrow (2) indicates a flow of information communication related to reading processing of specific data by the app 2
  • an arrow (3) shows a flow of information communication related to reading / writing processing of general data by the applications 1 and 2
  • an arrow (4) shows a flow of information communication related to verification processing at a specific timing.
  • Consistent data refers to, for example, specific data as original data, checksum, bit inversion, hash code, etc., compression, encryption, encoding, partial deletion, carry, carry, etc. Means the data performed.
  • the data sizes of the specific data and the mirror data match.
  • the data size may be made uniform by adding dummy bits at the beginning or end.
  • the specific data and the mirror data are preferably stored in the first memory 30 and the second memory 40, for example, at addresses offset (translated) with respect to the physical addresses.
  • FIG. 4 is a diagram showing how specific data ( ⁇ 1, ⁇ 2) and mirror data ( ⁇ 1, ⁇ 2) are stored at addresses that are offset with respect to the physical addresses of the first memory 30 and the second memory 40.
  • ⁇ 1 is ⁇ 1 mirror data
  • ⁇ 2 is ⁇ 2 mirror data.
  • the read / write processing of specific data is executed by calling a function from the dedicated read / write IF 13.
  • a broken line (5) indicates a partitioning boundary line.
  • the corresponding data is read from both the area A and the area C, and the read data is A verify process for checking whether they are identical or consistent is executed.
  • the verification process may be executed by the application 1 or may be executed by a program higher than the application 1.
  • FIG. 5 is a flowchart showing the flow of processing when the application 1 performs data writing processing to the memory. This flow is executed each time a write process to the memory occurs while the application 1 is being executed.
  • the application 1 determines whether or not the data writing process is a specific data writing process (S100).
  • a dedicated write function is called from the dedicated read / write IF 13 (S102).
  • the chip selector 26 and the first bus controller 22 are instructed to write the general data to the area B (S104).
  • FIG. 6 is a flowchart showing the flow of processing executed when the dedicated Write function is called.
  • the dedicated write function instructs the chip selector 26 and the first bus controller 22 to write specific data in the area A (S200).
  • the dedicated write function instructs the chip selector 26 and the second bus controller 24 to write the mirror data to the area C (S202).
  • FIG. 7 is a flowchart showing the flow of processing when the application 1 performs data reading processing from the memory. This flow is executed whenever data reading processing from the memory occurs while the application 1 is being executed.
  • the application 1 determines whether or not the data reading process is a specific data reading process (S300).
  • the dedicated read function is called from the dedicated read / write IF 13 by designating an address (S302).
  • the general data is read from the area B by instructing the chip selector 26 and the first bus controller 22 (S304).
  • FIG. 8 is a flowchart showing the flow of processing executed when the dedicated read function is called.
  • the dedicated read function instructs the chip selector 26 and the first bus controller 22 to read specific data from the designated address in the area A (S400).
  • the dedicated read function instructs the chip selector 26 and the second bus controller 24 to read mirror data from the designated address in the area C (or an address offset by a predetermined value from the address designated in S400). (S402).
  • the dedicated read function performs the mirror data decoding process (S404).
  • the process of this step is a process of restoring based on specific data compressed, encrypted, encoded, etc., such as checksum, bit inversion, hash code, etc. as described above. Note that when the same data as the specific data is written in the area C as mirror data, the processing in this step is omitted.
  • the dedicated read function determines whether the specific data read in S400 and the mirror data read in S402 are the same or match (S406).
  • the dedicated read function returns the value indicated by the specific data to the application 1 as the return value of the dedicated read function (S408). This flow ends.
  • the dedicated read function returns an error value to the application 1 as a return value of the dedicated read function (S410). End the flow.
  • the application 1 that received the error value performs error processing according to the severity of the error, such as fail-safe or reset.
  • FIG. 9 is a flowchart showing the flow of verification processing. This flow is performed at an arbitrary timing different from the reading process shown in FIG. 7 by application 1, a program higher than application 1, and other arbitrary programs (hereinafter referred to as “verification processing unit” for convenience). Executed. As an arbitrary timing, for example, when the information processing apparatus 1 is started up or shut down every predetermined time can be considered.
  • the start timing of this flow is as follows: when the vehicle system is started, when it is shut down, when the vehicle engine is started, when the engine is stopped, when it is parked, or when it is a navigation system It may be arbitrarily determined at the start or end of a specific function such as.
  • the verification processing unit designates an address and calls a dedicated read function from the dedicated read / write IF 13 (S500).
  • the address specified in this step is determined, for example, in increments of a predetermined address in order from the top with respect to the physical address of area A.
  • the verify processing unit determines whether or not the dedicated read function related to S500 has been called for all the areas A (S502). If the dedicated read function is not called for all of the area A, the next designated address is determined (S504), and the process returns to S500. Specifically, the counter value that increases in increments of a predetermined address is increased by one step.
  • the specific data is written to the memory
  • the specific data is written in the area A where the writing process by the application 2 is not performed
  • the mirror data is written in the area C where the application 2 is not accessed.
  • an error such as an address pointer error occurs for specific data
  • at least an error is detected and an appropriate error is detected. Processing can be performed.
  • the writing process and the reading process of specific data are performed by calling a function provided by the dedicated read / write IF 13, it is possible to flexibly cope with function expansion and function integration as the information processing apparatus 1.
  • the new application program calls functions provided by the dedicated read / write IF 13 for writing and reading specific data. It may be done by. By doing so, it is possible to keep small changes in software accompanying function expansion and function integration, and thus contribute to cost reduction.
  • the memory protection function can be improved by performing the verify process at a timing different from the timing at which the specific data reading process is performed.
  • the second memory 40 is an external memory separate from the first memory 30, but may be an internal memory separate from the first memory 30.
  • the area C may be an area different from the areas A and B set on the first memory 30.
  • the present invention can be widely used in the computer software industry, the computer manufacturing industry, the manufacturing industry of apparatuses and devices incorporating a computer, and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

 第1のアプリケーションケーションプログラムにより保護対象とされる特定データの書き込み処理が行われるときには、第2のアプリケーションケーションプログラムによりデータの書き込み処理が行われない第1のメモリ領域に特定データを書き込むと共に、第2のアプリケーションケーションプログラムによりアクセスが行われない第2のメモリ領域に特定データと同一の又は整合したデータを書き込み、第1のアプリケーションケーションプログラムにより特定データの読み込み処理が行われるときには、第1のメモリ領域と第2のメモリ領域から対応するデータを読み込むと共に、読み込まれたデータが同一又は整合するか否かをチェックする処理を行う情報処理装置。

Description

情報処理装置、データ管理方法、データ管理プログラム
 本発明は、複数のアプリケーションプログラムを実行する情報処理装置、及びそのデータ管理方法並びにデータ管理プログラムに関する。
 近年、特に車載制御装置の分野において、複数のECU(Electronic Control Unit)によって実行されていた制御を統合して、一の(或いは、より少数の)ECUに実行させる機能統合が進められている。車両に搭載されるECUとしては、エンジンの点火制御等を行うエンジンECU、ドアロックの施錠/解錠等を行うボデーECU、電子制御式ブレーキ装置のソレノイド制御等を行うブレーキECU、パワーステアリング装置を制御するステアリングECU等、種々のものが存在する。機能が統合されたECUでは、統合前の各機能がそれぞれアプリケーションプログラム(或いはタスク)として存続し、ECUのプロセッサによって実行される。
 このように、複数の機能を統合したこと等により、複数のアプリケーションプログラムを実行する情報処理装置は、ハードウエア面でコスト低減を図ることができるため、車載制御装置に限らず、種々の分野で用いられている。
 特許文献1には、オペレーティングシステム上で第1および第2アプリケーションプログラムを含む複数のアプリケーションプログラムを並行に動作させる情報処理装置について記載されている。この情報処理装置は、第1アプリケーションプログラムからオペレーティングシステムに対する関数呼び出し、又は第1アプリケーションプログラムとオペレーティングシステムの間で送受信されるメッセージを監視する監視部と、その監視結果に基づいて、第2アプリケーションプログラムからオペレーティングシステムに対する関数呼び出し、又はメッセージ送受信の処理を変更または禁止する制御部とを備えている。
 ところで、複数のアプリケーションプログラムを実行する情報処理装置においては、アプリケーションプログラムが行う処理の重要性に応じて、メモリに格納されるデータの保護(以下、メモリ保護と称する)を実行する必要がある。図1は、従来実行されていたメモリ保護を実現するための構成を簡単に示す図である。図示するように、従来の情報処理装置では、アプリケーションプログラム(アプリ1、アプリ2と表記した)A、Bがメモリへのアクセスを行う際には、オペレーティングシステムCを介して行い、オペレーティングシステムCは、例えばMMU(Memory Management Unit)(D)からの通知によって、各アプリからのメモリEへのアクセスを許可又は禁止する。図中、×印は、各アプリからのメモリアクセスが禁止される様子を模式的に示している。アプリ1、アプリ2はオペレーティングシステムC上のタスクに割り付けられており、アクセス可能なメモリの領域が予め設定されている。そして、各アプリがメモリEにアクセスした時点でどのタスクがアクティブかをオペレーティングシステムCがタスクテーブルによって認識しており、アクセス可能な領域でない場合には、MMU(D)から、各アプリ及びオペレーティングシステムCを実行するCPUに例外割り込みが通知される。
特開2007-065846号公報
 しかしながら、上記従来の情報処理装置では、MMU等のハードウエアを備えることによるコスト増や重量増が生じ、低コスト化、軽量化を実現するのが困難な場合がある。また、そもそもオペレーティングシステムを搭載しない組み込みコンピュータに適用された場合、上記のような処理を実行するのが困難である。
 本発明はこのような課題を解決するためのものであり、メモリ保護とコスト低減を両立させることが可能な情報処理装置等を提供することを、主たる目的とする。
 上記目的を達成するための本発明の第1の態様は、
 第1のアプリケーションプログラムと、第2のアプリケーションプログラムと、を含む複数のアプリケーションプログラムを実行する情報処理装置であって、
 前記第1のアプリケーションケーションプログラムにより保護対象とされる特定データの書き込み処理が行われるときには、前記第2のアプリケーションケーションプログラムによりデータの書き込み処理が行われない第1のメモリ領域に前記特定データを書き込むと共に、前記第2のアプリケーションケーションプログラムによりアクセスが行われない第2のメモリ領域に前記特定データと同一の又は整合したデータを書き込み、
 前記第1のアプリケーションケーションプログラムにより前記特定データの読み込み処理が行われるときには、前記第1のメモリ領域と前記第2のメモリ領域から対応するデータを読み込むと共に、該読み込まれたデータが同一又は整合するか否かをチェックする処理を行うことを特徴とする、
 情報処理装置である。
 本発明の第1の態様において、
 命令実行のための関数を前記第1のアプリケーションプログラムに提供する関数提供手段を備え、
 前記第1のアプリケーションケーションプログラムによる前記特定データの書き込み処理は、前記第1のメモリ領域に前記特定データを書き込むと共に、前記第2のメモリ領域に前記特定データと同一の又は整合したデータを書き込むことを命令する関数を、前記関数提供手段から呼び出すことによって実行されることを特徴とするものとしてもよい。
 また、本発明の第1の態様において、
 前記第1のアプリケーションケーションプログラムによる前記特定データの読み込み処理は、前記第1のメモリ領域と前記第2のメモリ領域から対応するデータを読み込むことを命令する関数を、前記関数提供手段から呼び出すことによって実行されることを特徴とするものとしてもよい。
 また、本発明の第1の態様において、
 前記第1のアプリケーションケーションプログラムにより前記特定データの書き込み処理が行われるときには、前記特定データと、前記前記特定データと同一の又は整合したデータを、前記第1のメモリ領域と前記第2のメモリ領域のオフセットされたアドレスに記憶させることを特徴とするものとしてもよい。
 また、本発明の第1の態様において、
 前記第1のアプリケーションケーションプログラムにより前記特定データの読み込み処理が行われるタイミングとは異なるタイミングにおいて、前記第1のメモリ領域と前記第2のメモリ領域から対応するデータを読み込むと共に、該読み込まれたデータが同一又は整合するか否かをチェックする処理を行うことを特徴とするものとしてもよい。
 また、本発明の第1の態様において、
 前記第2のアプリケーションケーションプログラムによる前記特定データ以外のデータの書き込み処理は、前記第1のメモリ領域及び前記第2のメモリ領域とは異なる第3のメモリ領域に対して行われるものとしてもよい。
 この場合、
 前記第1のアプリケーションケーションプログラムにより、前記第3のメモリ領域に対する前記特定データ以外のデータの書き込み処理及び読み込み処理が行われる、
 情報処理装置。
 また、本発明の第1の態様において、
 前記第1及び第3のメモリ領域は、同体のメモリ上に設定され、前記第2のメモリ領域は、前記第1及び第3のメモリ領域とは別体のメモリ上に設定されるものとしてもよい。 本発明の第2の態様は、
 第1のアプリケーションプログラムと、第2のアプリケーションプログラムと、を含む複数のアプリケーションプログラムを実行する情報処理装置におけるデータ管理方法であって、
 前記第1のアプリケーションプログラムが扱うデータであって、保護対象とされる特定データに関して、
 前記第2のアプリケーションケーションプログラムによるデータの書き込み処理が行われない第1のメモリ領域に前記特定データを書き込むと共に、前記第2のアプリケーションケーションプログラムによりアクセスが行われない第2のメモリ領域に前記特定データと同一の又は整合したデータを書き込む処理と、
 前記第1のメモリ領域と前記第2のメモリ領域から対応するデータを読み込むと共に、該読み込まれたデータが同一又は整合するか否かをチェックする処理と、
 を前記情報処理装置が実行することを特徴とする、データ管理方法である。
 本発明の第3の態様は、
 第1のアプリケーションプログラムと、第2のアプリケーションプログラムと、を含む複数のアプリケーションプログラムを実行する情報処理装置におけるデータ管理プログラムであって、
 前記第1のアプリケーションプログラムが扱うデータであって、保護対象とされる特定データに関して、
 前記第2のアプリケーションケーションプログラムによるデータの書き込み処理が行われない第1のメモリ領域に前記特定データを書き込むと共に、前記第2のアプリケーションケーションプログラムによりアクセスが行われない第2のメモリ領域に前記特定データと同一の又は整合したデータを書き込む処理と、
 前記第1のメモリ領域と前記第2のメモリ領域から対応するデータを読み込むと共に、該読み込まれたデータが同一又は整合するか否かをチェックする処理と、
 を前記情報処理装置に実行させることを特徴とする、データ管理プログラムである。
 本発明によれば、メモリ保護とコスト低減を両立させることが可能な情報処理装置等を提供することができる。
従来実行されていたメモリ保護を実現するための構成を簡単に示す図である。 本発明の一実施例に係る情報処理装置1のシステム構成例である。 アプリ1、2がCPU20により実行される様子と、情報通信の流れを示す図である。 特定データ及びミラーデータが第1のメモリ30と第2のメモリ40の物理アドレスに関してオフセットされたアドレスに記憶される様子を示す図である。 アプリ1によりメモリへのデータ書き込み処理が行われる際の処理の流れを示すフローチャートである。 専用Write関数が呼び出された際に実行される処理の流れを示すフローチャートである。 アプリ1によりメモリからのデータ読み込み処理が行われる際の処理の流れを示すフローチャートである。 専用Read関数が呼び出された際に実行される処理の流れを示すフローチャートである。 ベリファイ処理の流れを示すフローチャートである。
 以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
 以下、図面を参照し、本発明の一実施例に係る情報処理装置、データ管理方法及びデータ管理プログラムについて説明する。
 [構成]
 図2は、本発明の一実施例に係る情報処理装置1のシステム構成例である。情報処理装置1は、主要な構成として、プログラムメモリ10と、CPU(Central Processing Unit)20と、第1のメモリ30と、第2のメモリ40と、を備える。
 プログラムメモリ10は、例えばROM(Read Only Memory)やEEPROM(Electrically Erasable and Programmable Read Only Memory)等の不揮発性メモリである。プログラムメモリ10は、CPU20が備えるプログラムカウンタの示す値が入力されると、対応するアドレスに格納された命令等を、プログラムバス15を介してCPU20に出力する。
 プログラムメモリ10には、アプリケーションプログラム11、12(以下、必要に応じて単にアプリ1、アプリ2と称する)、専用読み書きIF(インターフェース)13、その他のプログラム等が格納されている。なお、アプリケーションプログラムの総数、アプリ1に該当するアプリケーションプログラムの数、アプリ2に該当するアプリケーションプログラムの数について特段の制限は存在しない。
 アプリ1、アプリ2は、それぞれ情報処理装置1に課せられたタスクを実行するための一又は複数のプログラムである。アプリ1は、保護対象とされる特定データを含むデータを扱うプログラムであり、アプリ2は、特定データ以外の一般データを専ら扱うプログラムである。
 ここで、情報処理装置1が車両に搭載される制御装置である場合、どのデータが特定データに該当するかは、例えばASIL(Automotive Safety Integrity Level)に応じて決定されると好適である。ASILとは、自動車向けの規格により設定された車両制御等に関する指標値であり、高いレベルである場合に、高度な安全方策が求められることを示す。ASILは、低いレベルから順にQM、ASIL-A、ASIL-B、ASIL-C、ASIL-Dと定められており、情報処理装置1がASILに対応するものとして適用される場合、例えば、ASIL-C以上の制御における演算対象・演算結果等が特定データに該当し、ASIL-B以下の制御における演算対象・演算結果等が特定データ以外の一般データに該当するものとすればよい。すなわち、車両制御のうち、高度な安全方策が求められる制御に関わるデータを特定データとし、それ以外のデータを一般データとするとよい。
 専用読み書きIF13は、命令実行のための関数を、特定データを扱うアプリ1に提供するインターフェース機能部である。専用読み書きIF13の機能については後述する。
 CPU20は、例えば、命令フェッチユニット、ALU(Arithmetic Logic Unit)、MUL(乗算器)、DIV(除算器)、LSU(Load Store Unit)その他を含む演算ユニット、レジスタやキャッシュメモリ等の内部メモリ、プログラムカウンタ、ローカル割り込みコントローラ等を有するプロセッサである。CPU20は、例えば時分割処理によって、上記アプリ1、2等を並行して実行可能なシングルコア・プロセッサである。なお、これに限らず、マルチコア・プロセッサやマルチプロセッサ等が採用され、複数のプロセッサコア(又はプロセッサ)がそれぞれアプリ1、アプリ2を実行するものとしてもよい。
 また、CPU20は、内部バス35を介して第1のメモリ30にアクセスするための第1のバスコントローラ22、外部バス45を介して第2のメモリ40にアクセスするための第2のバスコントローラ24、いずれのバスコントローラを使用するかを選択するチップセレクタ26等を内蔵する。なお、係る構成は一例であり、第1のメモリ30と第2のメモリ40の双方に接続された共通バスを有する構成であってもよい。
 第1のメモリ30は、例えば内部メモリとして取り付けられるSDRAM(Synchronous Dynamic Random Access Memory)等の記憶装置である。第1のメモリ30には、領域A及びBが設定されている。
 領域Aは、アプリ1により書き込み及び読み込みが行われるが、アプリ2によっては読み込みのみが行われる領域である(特許請求の範囲における第1のメモリ領域に相当)。領域Bは、アプリ1、2により書き込み及び読み込みが行われる領域である(特許請求の範囲における第3のメモリ領域に相当)。
 第2のメモリ40は、例えば外部メモリとして取り付けられるSDRAMやEEPROM、SRAM(Static Random Access Memory)等の記憶装置である。第2のメモリ40は、第1のメモリ30とは別体の記憶装置であると好適である。第2のメモリ40には、領域Cが設定されている。
 領域Cは、アプリ1により書き込み及び読み込みが行われ、アプリ2によるアクセス(書き込み及び読み込みの双方)は行われない領域である(特許請求の範囲における第2のメモリ領域に相当)。
 このようなアクセスの可否に関して、本実施例の情報処理装置1では、アプリケーションプログラムとは別の監視機構を備えるのではなく、各アプリケーションプログラムのソースコードに直接記述されている。これによって、監視機構を備えることによるコストや重量(監視機構がハードウエアである場合)の増加を抑制することができる。
 [情報通信の流れ]
 図3は、アプリ1、2がCPU20により実行される様子と、情報通信の流れを示す図である。図中、矢印(1)は、アプリ1による特定データの読み書き処理に係る情報通信の流れを示し、矢印(2)は、アプリ2による特定データの読み込み処理に係る情報通信の流れを示し、矢印(3)はアプリ1、2による一般データの読み書き処理に係る情報通信の流れを示し、矢印(4)は特定タイミングにおけるベリファイ処理に係る情報通信の流れを示す。
 図3の矢印(1)で示すように、アプリ1により特定データの書き込み処理が行われるときには、領域Aに特定データが書き込まれると共に、領域Cに特定データと同一の又は整合したデータ(以下、「ミラーデータ」と称する)が書き込まれる。
 ここで、「整合した」データとは、例えば、特定データを元データとし、チェックサム、ビット反転、ハッシュコード等、圧縮、暗号化、符号化、一部削除、桁上げ、桁下げ等の処理が行われたデータを意味する。
 但し、同一のデータを書き込まない場合であっても、特定データとミラーデータのデータサイズは一致させると好適である。例えば整合したデータとして圧縮されたデータを採用する場合、先頭や末尾にダミービットを付加する等してデータサイズを揃えるとよい。そして、特定データとミラーデータを、第1のメモリ30と第2のメモリ40の例えば物理アドレスに関してオフセットされた(平行移動させた)アドレスに記憶させると好適である。
 これによって、並行して書き込まれた特定データ及びミラーデータのアドレスの対応付けが単純になり、アドレスの管理が容易となる。特に、後述するベリファイ処理において、対応するデータの読み込み処理を簡易に行うことができる。図4は、特定データ(α1、α2)及びミラーデータ(β1、β2)が第1のメモリ30と第2のメモリ40の物理アドレスに関してオフセットされたアドレスに記憶される様子を示す図である。ここでは、β1はα1のミラーデータであり、β2はα2のミラーデータである。
 また、図3の矢印(1)で示すように、アプリ1により特定データの読み込み処理が行われるときには、領域Aと領域Cの双方から対応するデータ(書き込み時に並行して書き込まれた、特定データ及びミラーデータ)を読み込むと共に、読み込まれたデータが同一又は整合するか否かをチェックする処理を行う。
 後述するように、特定データの読み書き処理は、専用読み書きIF13から関数を呼び出すことによって実行される。
 他方、図3の矢印(2)で示すアプリ2による領域Aからの特定データの読み込み処理、及び図3の矢印(3)で示すアプリ1、2による領域Bに対する読み書き処理は、専用読み書きIF13を利用せずに直接的に実行される。
 これらの処理によって、特定データと一般データのパーティショニング(領域分け)が実現される。図3中、破線(5)は、パーティショニングの境界線を示している。このようなパーティショニングによって、特定データと一般データが混在しないように制御されるため、高度な安全方策が求められる制御に関わる特定データが意図せぬ改竄・破壊を受けることを抑制することができる。
 また、図3の矢印(4)で示すように、アプリ1によるデータ読み込み処理が行われるタイミングとは異なるタイミングにおいて、領域Aと領域Cの双方から対応するデータを読み込むと共に、読み込まれたデータが同一又は整合するか否かをチェックするベリファイ処理が実行される。ベリファイ処理は、アプリ1によって実行されてもよいし、アプリ1よりも上位のプログラムによって実行されてもよい。
 [処理フロー]
 以下、上記各処理に係る処理の流れをフローチャートに即して説明する。
 図5は、アプリ1によりメモリへのデータ書き込み処理が行われる際の処理の流れを示すフローチャートである。本フローは、アプリ1が実行される中でメモリへの書き込み処理が発生した度に実行される。
 まず、アプリ1は、当該データ書き込み処理が、特定データの書き込み処理であるか否かを判定する(S100)。
 特定データの書き込み処理である場合は、専用読み書きIF13から専用Write関数を呼び出す(S102)。一方、一般データの書き込み処理である場合は、チップセレクタ26及び第1のバスコントローラ22に指示して領域Bに一般データを書き込む(S104)。
 図6は、専用Write関数が呼び出された際に実行される処理の流れを示すフローチャートである。
 まず、専用Write関数は、チップセレクタ26及び第1のバスコントローラ22に指示して領域Aに特定データを書き込む(S200)。
 次に、専用Write関数は、チップセレクタ26及び第2のバスコントローラ24に指示して領域Cにミラーデータを書き込む(S202)。
 図7は、アプリ1によりメモリからのデータ読み込み処理が行われる際の処理の流れを示すフローチャートである。本フローは、アプリ1が実行される中でメモリからのデータ読み込み処理が発生した度に実行される。
 まず、アプリ1は、当該データ読み込み処理が、特定データの読み込み処理であるか否かを判定する(S300)。
 特定データの読み込み処理である場合は、アドレスを指定して専用読み書きIF13から専用Read関数を呼び出す(S302)。一方、一般データの読み込み処理である場合は、チップセレクタ26及び第1のバスコントローラ22に指示して領域Bから一般データを読み込む(S304)。
 図8は、専用Read関数が呼び出された際に実行される処理の流れを示すフローチャートである。
 まず、専用Read関数は、チップセレクタ26及び第1のバスコントローラ22に指示して領域Aにおける指示されたアドレスから特定データを読み込む(S400)。
 次に、専用Read関数は、チップセレクタ26及び第2のバスコントローラ24に指示して領域Cにおける指示されたアドレス(或いはS400で指示されたアドレスから所定値分オフセットしたアドレス)からミラーデータを読み込む(S402)。
 次に、専用Read関数は、ミラーデータの復号処理を行う(S404)。本ステップの処理は、上記のようにチェックサム、ビット反転、ハッシュコード等、圧縮、暗号化、符号化等された特定データを元に復元する処理である。なお、ミラーデータとして特定データと同一のデータが領域Cに書き込まれる場合、本ステップの処理は省略される。
 次に、専用Read関数は、S400において読み込まれた特定データとS402において読み込まれたミラーデータが同一又は整合するか否かを判定する(S406)。
 専用Read関数は、S400において読み込まれた特定データとS402において読み込まれたミラーデータが同一又は整合する場合には、専用Read関数のリターン値として特定データの示す値をアプリ1に返し(S408)、本フローを終了する。
 一方、専用Read関数は、S400において読み込まれた特定データとS402において読み込まれたミラーデータが同一又は整合しない場合には、専用Read関数のリターン値としてエラー値をアプリ1に返し(S410)、本フローを終了する。エラー値を受領したアプリ1は、フェールセーフ、リセット等、エラーの深刻度に応じたエラー処理を行う。
 図9は、ベリファイ処理の流れを示すフローチャートである。本フローは、アプリ1、アプリ1よりも上位のプログラム、その他の任意のプログラム(以下、便宜的に「ベリファイ処理部」と称する)によって、図7に示した読み込み処理とは異なる任意のタイミングで実行される。任意のタイミングとしては、例えば所定時間毎、情報処理装置1の起動時又はシャットダウン時が考えられる。
 また、情報処理装置1が車両に搭載された制御装置である場合、本フローの開始タイミングは、車両システムの起動時、シャットダウン時、車両のエンジン始動時、エンジン停止時、駐車時、或いはナビゲーションシステム等の特定機能の起動時又は終了時等、任意に定めてよい。
 まず、ベリファイ処理部は、アドレスを指定して専用読み書きIF13から専用Read関数を呼び出す(S500)。本ステップで指定されるアドレスは、例えば領域Aの物理アドレスに関して先頭から順に、所定アドレス刻みで決定される。
 次に、ベリファイ処理部は、領域Aの全部についてS500に係る専用Read関数の呼び出しを行ったか否かを判定する(S502)。領域Aの全部について専用Read関数の呼び出しを行っていない場合は、次に指定するアドレスを決定し(S504)、S500に戻る。具体的には、所定アドレス刻みで増加するカウンタ値等を、1ステップ増加させる。
 図9のS500において専用Read関数が呼び出された後の専用Read関数による処理の流れについては図8で説明したものと同様であるため、説明及び図示を省略する。アプリ1は、ベリファイ処理の中でエラー値が返された場合も、特定データの読み込み処理の中でエラー値が返された場合と同様、フェールセーフ、リセット等、エラーの深刻度に応じたエラー処理を行う。
 [まとめ]
 以上説明した本実施例の情報処理装置1によれば、オペレーティングシステムやMMU等のメモリ保護機構(監視機構)を必須の構成としないため、コストや重量の増加を抑制することができる。
 一方で、特定データをメモリに書き込む際には、アプリ2による書き込み処理が行われない領域Aに特定データが書き込まれると共に、アプリ2によるアクセスが行われない領域Cにミラーデータが書き込まれ、メモリから読み込む際には対応するデータが同一又は整合するかを判定するため、特定データについて、アドレスのポインタ間違い等の異常が生じた際には、少なくとも異常が生じたことを検知して適切なエラー処理を行うことができる。
 このため、保護対象とされる特定データをできるだけ正常な状態に保つことが可能となり、コストに見合ったメモリ保護が実現される。
 従って、本実施例の情報処理装置1によれば、メモリ保護とコスト低減を両立させることができる。
 また、このようなメモリ保護のための処理を、オペレーティングシステムやMMU等のメモリ保護機構を介して行わないため、オペレーティングシステムやMMU等のメモリ保護機構を備えるものと比較すると、高速処理が可能となる。
 更に、特定データの書き込み処理及び読み込み処理を、専用読み書きIF13が提供する関数を呼び出すことによって行うため、情報処理装置1としての機能拡張、機能統合に柔軟に対応することができる。例えば、特定データを扱う新たなアプリケーションプログラムが情報処理装置1の機能として追加された場合、当該新たなアプリケーションプログラムにおいても、特定データの書き込み処理及び読み込み処理については専用読み書きIF13が提供する関数を呼び出すことによって行うものとすればよい。こうすれば、機能拡張や機能統合に伴うソフトウエアの変更を小さく留めることができ、ひいてはコストの低減に寄与することができる。
 また、特定データの読み込み処理が行われるタイミングとは異なるタイミングにおいてベリファイ処理を行うことにより、メモリ保護機能を向上させることができる。
 また、特定データとミラーデータを、第1のメモリ30と第2のメモリ40の物理アドレスに関してオフセットされたアドレスに記憶させることにより、並行して書き込まれた特定データ及びミラーデータのアドレスの対応付けが単純になり、アドレスの管理が容易となる。
 以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
 例えば、第2のメモリ40は、第1のメモリ30とは別体の外部メモリであるものとしたが、第1のメモリ30とは別体の内部メモリであってよい。また、領域Cは、第1のメモリ30上に設定された、領域A、Bとは異なる領域であっても構わない。
 本発明は、コンピュータソフトウエア産業、コンピュータ製造業、コンピュータが組み込まれた装置・機器の製造業等に、広く利用することができる。
 1  情報処理装置
 10 プログラムメモリ
 11、12 アプリケーションプログラム
 13 専用読み書きIF
 15 プログラムバス
 20 CPU
 22 第1のバスコントローラ
 24 第2のバスコントローラ
 26 チップセレクタ
 30 第1のメモリ
 35 内部バス
 40 第2のメモリ
 45 外部バス
 A、B、C 領域

Claims (11)

  1.  第1のアプリケーションプログラムと、第2のアプリケーションプログラムと、を含む複数のアプリケーションプログラムを実行する情報処理装置であって、
     前記第1のアプリケーションケーションプログラムにより保護対象とされる特定データの書き込み処理が行われるときには、前記第2のアプリケーションケーションプログラムによりデータの書き込み処理が行われない第1のメモリ領域に前記特定データを書き込むと共に、前記第2のアプリケーションケーションプログラムによりアクセスが行われない第2のメモリ領域に前記特定データと同一の又は整合したデータを書き込み、
     前記第1のアプリケーションケーションプログラムにより前記特定データの読み込み処理が行われるときには、前記第1のメモリ領域と前記第2のメモリ領域から対応するデータを読み込むと共に、該読み込まれたデータが同一又は整合するか否かをチェックする処理を行うことを特徴とする、
     情報処理装置。
  2.  請求項1に記載の情報処理装置であって、
     命令実行のための関数を前記第1のアプリケーションプログラムに提供する関数提供手段を備え、
     前記第1のアプリケーションケーションプログラムによる前記特定データの書き込み処理は、前記第1のメモリ領域に前記特定データを書き込むと共に、前記第2のメモリ領域に前記特定データと同一の又は整合したデータを書き込むことを命令する関数を、前記関数提供手段から呼び出すことによって実行されることを特徴とする、
     情報処理装置。
  3.  請求項2に記載の情報処理装置であって、
     前記第1のアプリケーションケーションプログラムによる前記特定データの読み込み処理は、前記第1のメモリ領域と前記第2のメモリ領域から対応するデータを読み込むことを命令する関数を、前記関数提供手段から呼び出すことによって実行されることを特徴とする、
     情報処理装置。
  4.  請求項1に記載の情報処理装置であって、
     前記第1のアプリケーションケーションプログラムにより前記特定データの書き込み処理が行われるときには、前記特定データと、前記前記特定データと同一の又は整合したデータを、前記第1のメモリ領域と前記第2のメモリ領域のオフセットされたアドレスに記憶させることを特徴とする、
     情報処理装置。
  5.  請求項1に記載の情報処理装置であって、
     前記第1のアプリケーションケーションプログラムにより前記特定データの読み込み処理が行われるタイミングとは異なるタイミングにおいて、前記第1のメモリ領域と前記第2のメモリ領域から対応するデータを読み込むと共に、該読み込まれたデータが同一又は整合するか否かをチェックする処理を行うことを特徴とする、
     情報処理装置。
  6.  請求項1に記載の情報処理装置であって、
     前記第2のアプリケーションケーションプログラムによる前記特定データ以外のデータの書き込み処理は、前記第1のメモリ領域及び前記第2のメモリ領域とは異なる第3のメモリ領域に対して行われる、
     情報処理装置。
  7.  請求項6に記載の情報処理装置であって、
     前記第1のアプリケーションケーションプログラムにより、前記第3のメモリ領域に対する前記特定データ以外のデータの書き込み処理及び読み込み処理が行われる、
     情報処理装置。
  8.  請求項7に記載の情報処理装置であって、
     前記第1及び第3のメモリ領域は、同体のメモリ上に設定され、前記第2のメモリ領域は、前記第1及び第3のメモリ領域とは別体のメモリ上に設定される、
     情報処理装置。
  9.  車両に搭載され、制御装置として用いられる請求項1ないし8のいずれか1項に記載の情報処理装置であって、
     車両制御のうち、一定基準以上の安全方策が求められる制御に関わるデータを前記特定データとして扱うことを特徴とする、
     情報処理装置。
  10.  第1のアプリケーションプログラムと、第2のアプリケーションプログラムと、を含む複数のアプリケーションプログラムを実行する情報処理装置におけるデータ管理方法であって、
     前記第1のアプリケーションプログラムが扱うデータであって、保護対象とされる特定データに関して、
     前記第2のアプリケーションケーションプログラムによるデータの書き込み処理が行われない第1のメモリ領域に前記特定データを書き込むと共に、前記第2のアプリケーションケーションプログラムによりアクセスが行われない第2のメモリ領域に前記特定データと同一の又は整合したデータを書き込む処理と、
     前記第1のメモリ領域と前記第2のメモリ領域から対応するデータを読み込むと共に、該読み込まれたデータが同一又は整合するか否かをチェックする処理と、
     を前記情報処理装置が実行することを特徴とする、データ管理方法。
  11.  第1のアプリケーションプログラムと、第2のアプリケーションプログラムと、を含む複数のアプリケーションプログラムを実行する情報処理装置におけるデータ管理プログラムであって、
     前記第1のアプリケーションプログラムが扱うデータであって、保護対象とされる特定データに関して、
     前記第2のアプリケーションケーションプログラムによるデータの書き込み処理が行われない第1のメモリ領域に前記特定データを書き込むと共に、前記第2のアプリケーションケーションプログラムによりアクセスが行われない第2のメモリ領域に前記特定データと同一の又は整合したデータを書き込む処理と、
     前記第1のメモリ領域と前記第2のメモリ領域から対応するデータを読み込むと共に、該読み込まれたデータが同一又は整合するか否かをチェックする処理と、
     を前記情報処理装置に実行させることを特徴とする、データ管理プログラム。
PCT/JP2011/074215 2011-10-20 2011-10-20 情報処理装置、データ管理方法、データ管理プログラム WO2013057825A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/074215 WO2013057825A1 (ja) 2011-10-20 2011-10-20 情報処理装置、データ管理方法、データ管理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/074215 WO2013057825A1 (ja) 2011-10-20 2011-10-20 情報処理装置、データ管理方法、データ管理プログラム

Publications (1)

Publication Number Publication Date
WO2013057825A1 true WO2013057825A1 (ja) 2013-04-25

Family

ID=48140502

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/074215 WO2013057825A1 (ja) 2011-10-20 2011-10-20 情報処理装置、データ管理方法、データ管理プログラム

Country Status (1)

Country Link
WO (1) WO2013057825A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015140831A1 (ja) * 2014-03-19 2015-09-24 三菱電機株式会社 情報処理装置
JP2018528111A (ja) * 2015-04-20 2018-09-27 オートリブ ディベロップメント エービー 車両安全電子制御システム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002288030A (ja) * 2001-03-27 2002-10-04 Hitachi Software Eng Co Ltd データ持ち出し禁止用プログラム
JP2002342164A (ja) * 2001-05-22 2002-11-29 Hitachi Ltd 記憶装置及びデータ処理装置並びに記憶部制御方法
JP2007065846A (ja) * 2005-08-30 2007-03-15 Internatl Business Mach Corp <Ibm> アプリケーションプログラムの制御方法およびその装置
JP2010079856A (ja) * 2008-09-29 2010-04-08 Hitachi Ltd 記憶装置およびメモリ制御方法
JP2010095954A (ja) * 2008-10-20 2010-04-30 Aisin Seiki Co Ltd シャッター装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002288030A (ja) * 2001-03-27 2002-10-04 Hitachi Software Eng Co Ltd データ持ち出し禁止用プログラム
JP2002342164A (ja) * 2001-05-22 2002-11-29 Hitachi Ltd 記憶装置及びデータ処理装置並びに記憶部制御方法
JP2007065846A (ja) * 2005-08-30 2007-03-15 Internatl Business Mach Corp <Ibm> アプリケーションプログラムの制御方法およびその装置
JP2010079856A (ja) * 2008-09-29 2010-04-08 Hitachi Ltd 記憶装置およびメモリ制御方法
JP2010095954A (ja) * 2008-10-20 2010-04-30 Aisin Seiki Co Ltd シャッター装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015140831A1 (ja) * 2014-03-19 2015-09-24 三菱電機株式会社 情報処理装置
JP2018528111A (ja) * 2015-04-20 2018-09-27 オートリブ ディベロップメント エービー 車両安全電子制御システム

Similar Documents

Publication Publication Date Title
JP5114617B2 (ja) 秘密鍵を保護する、セキュア端末、プログラム、および方法
JP4818793B2 (ja) マイクロコンピュータ及びメモリアクセスの制御方法
JP4925422B2 (ja) データ処理装置内コンテンツへのアクセス管理
US7444668B2 (en) Method and apparatus for determining access permission
US20030200448A1 (en) Control function implementing selective transparent data authentication within an integrated system
CN101874245B (zh) 用于从处理器向外围设备授予安全工作模式访问特权的方法和设备
CN104798054B (zh) 安全区域内的分页
JP5044387B2 (ja) 情報処理装置及びそのスタックポインタ更新方法
WO2019104988A1 (zh) Plc的安全处理单元及其总线仲裁方法
CN112417470B (zh) 实现gpu数据安全访问的方法、装置、电子设备及存储介质
JPWO2012132218A1 (ja) プロセッサシステム及びその制御方法
WO2020158377A1 (ja) 電子制御装置、電子制御装置のセキュリティ検証方法
JP2019020872A (ja) 電子制御装置、プログラム改ざん検知方法
WO2013057825A1 (ja) 情報処理装置、データ管理方法、データ管理プログラム
US20170091120A1 (en) Securing Writes to Memory Modules Having Memory Controllers
CN109472172B (zh) 用于防止来自存储器的未授权数据访问的方法
JP5942778B2 (ja) 情報処理装置
JP2021057043A (ja) トラストアンカコンピューティング装置を備える処理システムおよび対応する方法
JP2017204083A (ja) メモリ保護システム
JP2011222055A (ja) マイクロコンピュータ及びメモリアクセスの制御方法
JP5765311B2 (ja) マイコン
JP5603993B2 (ja) 電装ユニット及びデータ処理方法
US20230259302A1 (en) Control device, control method, recording medium in which control program is recorded, and vehicle
JP2023009818A (ja) 車両用電子制御装置及び車両用電子制御装置による制御方法
JP6438381B2 (ja) 電子制御装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11874271

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11874271

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP