KR101590275B1 - 주변 장치, 주변 장치의 제어 방법 및 펌웨어의 다운로드 시스템 - Google Patents

주변 장치, 주변 장치의 제어 방법 및 펌웨어의 다운로드 시스템 Download PDF

Info

Publication number
KR101590275B1
KR101590275B1 KR1020147005428A KR20147005428A KR101590275B1 KR 101590275 B1 KR101590275 B1 KR 101590275B1 KR 1020147005428 A KR1020147005428 A KR 1020147005428A KR 20147005428 A KR20147005428 A KR 20147005428A KR 101590275 B1 KR101590275 B1 KR 101590275B1
Authority
KR
South Korea
Prior art keywords
program data
overwrite
peripheral device
download
card reader
Prior art date
Application number
KR1020147005428A
Other languages
English (en)
Other versions
KR20140043837A (ko
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 니혼 덴산 산쿄 가부시키가이샤
Publication of KR20140043837A publication Critical patent/KR20140043837A/ko
Application granted granted Critical
Publication of KR101590275B1 publication Critical patent/KR101590275B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

본원은 구형 주변 장치에 대응한 프로그램 데이터가 상위 장치로부터 신형 주변 장치에 다운로드되는 것을 방지하면서, 주변 장치를 포함하는 시스템의 다운을 회피하는 것이 가능한 주변 장치를 제공한다. 예를 들어, 펌웨어의 프로그램 데이터를 상위 장치(2)로부터 다운로드 가능한 주변 장치(3A)는 상위 장치(2)에 기억되는 다운로드 파일(7)에, 주변 장치(3A)에 기억되어 있는 프로그램 데이터를 상위 장치(2)에 기억되어 있는 프로그램 데이터로 덮어쓰기하는 것을 허가시키기 위한 덮어쓰기 허가 데이터가 포함되어 있으면, 주변 장치(3A)에 기억되어 있는 프로그램 데이터를 상위 장치(2)로부터 보내지는 프로그램 데이터로 덮어쓰기하여, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치(2)로 돌려보내고, 포함되어 있지 않으면, 주변 장치(3A)에 기억되어 있는 프로그램 데이터를 상위 장치(2)로부터 보내지는 프로그램 데이터로 덮어쓰기하지 않고, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치(2)로 돌려보낸다.

Description

주변 장치, 주변 장치의 제어 방법 및 펌웨어의 다운로드 시스템{PERIPHERAL, METHOD OF CONTROLLING PERIPHERAL, AND FIRMWARE DOWNLOADING SYSTEM}
본 발명은 상위 장치에 접속되는 주변 장치이며, 주변 장치를 동작시키는 펌웨어의 프로그램 데이터를 상위 장치로부터 다운로드 가능한 주변 장치에 관한 것이다. 또한, 본 발명은 이 주변 장치의 제어 방법, 및 이 주변 장치가 접속 가능한 상위 장치를 구비하는 펌웨어의 다운로드 시스템에 관한 것이다.
종래, 상위 장치로부터 카드 리더로 펌웨어의 프로그램 데이터를 다운로드하기 위한 펌웨어의 다운로드 방법이 제안되어 있다(예를 들어, 특허문헌 1 참조). 특허문헌 1에 기재된 다운로드 방법에서는, 프로그램 데이터를 포함하는 다운로드 파일이 상위 장치에 기억되어 있고, 상위 장치에 기억되어 있는 다운로드 파일의 리비젼 정보와, 상위 장치가 카드 리더에 대해서 발행한 리비젼 취득 커맨드의 리스펀스가 일치하지 않는 경우에, 상위 장치로부터 카드 리더로 프로그램 데이터가 다운로드되고 있다.
일본 특허 공개 제2004-13782호 공보
상위 장치에 접속되는 카드 리더는, 그 기능을 향상시키거나, 사용되고 있는 부품의 제조 중지에 대처하거나 하기 위해, 구형의 것에서 신형의 것으로 교환되는 경우가 있다. 한편, 상위 장치에 기억되어 있는 펌웨어의 프로그램 데이터가 신형 카드 리더에 대응한 프로그램 데이터라는 보장은 없고, 예를 들어 상위 장치에 기억되어 있는 펌웨어의 프로그램 데이터가 구형 카드 리더에 대응한 프로그램 데이터인 경우에, 신형 카드 리더가 상위 장치에 접속되는 경우가 있다.
상위 장치에 신형 카드 리더가 접속되고, 또한 구형 카드 리더에 대응한 프로그램 데이터가 상위 장치에 기억되어 있는 경우에, 특허문헌 1에 기재된 다운로드 방법으로 다운로드가 행해지면, 구형 카드 리더에 대응한 프로그램 데이터가 신형 카드 리더에 다운로드되어 버릴 우려가 있다. 즉, 상위 장치에 기억되어 있는 프로그램 데이터에 따라서는, 기능의 향상을 도모하기 위해, 혹은 사용 부품의 제조 중지에 대처하기 위해 생산된 신형 카드 리더에, 구형 카드 리더에 대응한 프로그램 데이터가 다운로드되어 버릴 우려가 있고, 그 결과, 상위 장치에 접속되는 카드 리더를 신형의 것으로 교환했음에도 불구하고, 그 기능의 향상을 도모하거나, 사용 부품의 제조 중지에 대처하거나 할 수 없게 될 우려가 있다. 또한, 신형 카드 리더에, 구형 카드 리더에 대응한 프로그램 데이터가 다운로드되면, 신형 카드 리더가 동작하지 않게 될 우려도 있다.
구형 카드 리더에 대응한 프로그램 데이터가 신형 카드 리더에 다운로드되는 것을 방지하기 위해서는, 구형 카드 리더에 대응한 프로그램 데이터가 상위 장치에 기억되어 있는 경우에, 구형 카드 리더에 대응한 프로그램 데이터의 다운로드를 신형 카드 리더가 거부하면 된다. 즉, 상위 장치로부터의 프로그램 데이터의 다운로드 커맨드 등에 대해서, 신형 카드 리더가 다운로드의 거부 응답을 돌려보내면 된다. 그러나, 신형 카드 리더가 다운로드의 거부 응답을 돌려보내면, 상위 장치측 다운로드 처리를 정상적으로 종료시킬 수 없고, 상위 장치를 포함하는 시스템이 다운되어 버릴(즉, 시스템 전체의 동작이 정지해 버릴) 우려가 있다.
따라서, 본 발명의 과제는, 구형 주변 장치에 대응한 프로그램 데이터가 상위 장치로부터 다운로드되는 것을 방지하면서, 주변 장치를 포함하는 시스템의 다운을 회피하는 것이 가능한 주변 장치를 제공하는 데 있다. 또한, 본 발명의 과제는, 구형 주변 장치에 대응한 프로그램 데이터가 상위 장치로부터 다운로드되는 것을 방지하면서, 주변 장치를 포함하는 시스템의 다운을 회피하는 것이 가능해지는 주변 장치의 제어 방법을 제공하는 데 있다. 또한, 본 발명의 과제는, 이러한 주변 장치가 접속 가능한 상위 장치를 구비하는 펌웨어의 다운로드 시스템을 제공하는 데 있다.
상기 과제를 해결하기 위해서, 본 발명의 주변 장치는, 상위 장치에 접속되는 주변 장치이며, 주변 장치를 동작시키는 펌웨어의 프로그램 데이터를 상위 장치로부터 다운로드 가능한 주변 장치에 있어서, 주변 장치에 기억되어 있는 프로그램 데이터의 덮어쓰기를 제어하는 덮어쓰기 제어부를 구비하고, 프로그램 데이터를 포함함과 함께 상위 장치에 기억되는 다운로드 파일에, 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치에 기억되어 있는 프로그램 데이터로 덮어쓰기하는 것을 덮어쓰기 제어부에 허가시키기 위한 덮어쓰기 허가 데이터가 포함되어 있는 경우에, 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기하고, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치로 돌려보냄과 함께, 다운로드 파일에 덮어쓰기 허가 데이터가 포함되어 있지 않은 경우에, 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기하지 않고, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치로 돌려보내는 것을 특징으로 한다.
본 발명의 주변 장치에서는, 상위 장치에 기억되는 다운로드 파일에 덮어쓰기 허가 데이터가 포함되어 있는 경우에는, 주변 장치에 기억되어 있는 프로그램 데이터가 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기 되지만, 다운로드 파일에 덮어쓰기 허가 데이터가 포함되어 있지 않은 경우에는, 주변 장치에 기억되어 있는 프로그램 데이터가 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기 되지 않는다. 그로 인해, 본 발명에서는, 신형 주변 장치에 대응한 프로그램 데이터가 포함되는 다운로드 파일 중에 덮어쓰기 허가 데이터를 포함시킴으로써, 구형 주변 장치에 대응한 프로그램 데이터가 상위 장치로부터 신형 주변 장치로 다운로드되는 것을 방지하는 것이 가능해진다.
또한, 본 발명의 주변 장치는, 다운로드 파일에 덮어쓰기 허가 데이터가 포함되지 않아, 주변 장치에 기억되어 있는 프로그램 데이터가 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기 되지 않는 경우에도, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치로 돌려보내고 있다. 그로 인해, 상위 장치로부터 주변 장치로 프로그램 데이터가 다운로드되지 않아도, 상위 장치측 다운로드 처리를 정상적으로 종료시키는 것이 가능해진다. 따라서, 본 발명에서는 주변 장치를 포함하는 시스템의 다운을 회피하는 것이 가능해진다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 주변 장치의 제어 방법은, 상위 장치에 접속되는 주변 장치이며, 주변 장치를 동작시키는 펌웨어의 프로그램 데이터를 상위 장치로부터 다운로드 가능한 주변 장치의 제어 방법에 있어서, 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치에 기억되어 있는 프로그램 데이터로 덮어쓰기하는 것을 허가시키기 위한 덮어쓰기 허가 데이터가, 프로그램 데이터를 포함함과 함께 상위 장치에 기억되는 다운로드 파일에 포함되어 있는지 여부를 판별하는 덮어쓰기 허가 판별 스텝과, 덮어쓰기 허가 판별 스텝에서, 덮어쓰기 허가 데이터가 다운로드 파일에 포함되어 있는 경우에, 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기하고, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치로 돌려보내는 덮어쓰기 스텝과, 덮어쓰기 허가 판별 스텝에서, 덮어쓰기 허가 데이터가 다운로드 파일에 포함되어 있지 않은 경우에, 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기하지 않고, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치로 돌려보내는 의사 덮어쓰기 스텝을 구비하는 것을 특징으로 한다.
본 발명의 주변 장치의 제어 방법에서는, 덮어쓰기 허가 판별 스텝에서, 덮어쓰기 허가 데이터가 다운로드 파일에 포함되어 있는 경우에는, 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기하고 있지만, 덮어쓰기 허가 판별 스텝에서, 덮어쓰기 허가 데이터가 다운로드 파일에 포함되어 있지 않은 경우에는, 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기하지 않고 있다. 그로 인해, 본 발명에서는, 신형 주변 장치에 대응한 프로그램 데이터가 포함되는 다운로드 파일 중에 덮어쓰기 허가 데이터를 포함시킴으로써, 구형 주변 장치에 대응한 프로그램 데이터가 상위 장치로부터 신형 주변 장치로 다운로드되는 것을 방지하는 것이 가능해진다.
또한, 본 발명의 주변 장치의 제어 방법에서는, 덮어쓰기 허가 판별 스텝에서, 덮어쓰기 허가 데이터가 다운로드 파일에 포함되지 않고, 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기하지 않는 경우에도, 의사 덮어쓰기 스텝에서, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치로 돌려보내고 있다. 그로 인해, 상위 장치로부터 주변 장치로 프로그램 데이터가 다운로드되지 않아도, 상위 장치측 다운로드 처리를 정상적으로 종료시키는 것이 가능해진다. 따라서, 본 발명에서는, 주변 장치를 포함하는 시스템의 다운을 회피하는 것이 가능해진다.
본 발명의 주변 장치 또는 본 발명의 제어 방법에 의해 제어되는 주변 장치는, 이 주변 장치가 접속 가능한 상위 장치를 구비하는 펌웨어의 다운로드 시스템에 사용할 수 있다. 이 펌웨어의 다운로드 시스템에서는, 구형 주변 장치에 대응한 프로그램 데이터가 상위 장치로부터 신형 주변 장치로 다운로드되는 것을 방지하면서, 시스템의 다운을 회피하는 것이 가능해진다.
본 발명에 있어서, 덮어쓰기 허가 데이터는, 다운로드 파일의 프로그램 데이터 내에 포함되어 있는 것이 바람직하다. 이와 같이 구성하면, 예를 들어 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치에 기억되어 있는 프로그램 데이터로 덮어쓰기해도 되는지 여부를 판별하기 위한 덮어쓰기 대조 커맨드가 다운로드 파일에 포함되어 있지 않은 경우나, 다운로드 파일에 포함되는 덮어쓰기 대조 커맨드를 주변 장치가 접수하지 않은 경우에도, 다운로드 파일에 덮어쓰기 허가 데이터가 포함되어 있는지 여부를 판별하는 것이 가능해진다.
본 발명에 있어서, 다운로드 파일에는, 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치에 기억되어 있는 프로그램 데이터로 덮어쓰기해도 되는지 여부를 판별하기 위한 덮어쓰기 대조 커맨드가 포함되고, 덮어쓰기 허가 데이터는 덮어쓰기 대조 커맨드에 붙여져 있어도 된다. 이 경우에는, 예를 들어 프로그램 데이터로 덮어쓰기 허가 데이터를 포함시킬 필요가 없게 되기 때문에, 프로그램 데이터의 구조를 간소화하는 것이 가능해진다.
본 발명에 있어서, 상위 장치에는, 주변 장치보다도 구형인 제2 주변 장치가 접속 가능하고, 제2 주변 장치는, 다운로드 파일에 덮어쓰기 허가 데이터가 포함되어 있는지 여부를 판별하지 않고, 제2 주변 장치에 기억되어 있는 프로그램 데이터를 상위 장치로부터 보내지는 프로그램 데이터로 덮어쓰기하는 것이 바람직하다. 이와 같이 구성하면, 신형 주변 장치에 대응하는 프로그램 데이터가 상위 장치에 기억되어 있는 경우에는, 이 프로그램 데이터가 상위 장치로부터 제2 주변 장치로 다운로드되기 때문에, 이 프로그램 데이터에 의해, 제2 주변 장치를 동작시키는 것이 가능해진다. 즉, 상위 장치에 기억되어 있는 신형 주변 장치에 대응하는 1개의 프로그램 데이터에 의해, 주변 장치 및 제2 주변 장치를 동작시키는 것이 가능해진다.
또한, 이와 같이 구성하면, 제2 주변 장치에 대응하는 프로그램 데이터가 상위 장치에 기억되어 있는 경우, 이 프로그램 데이터는, 제2 주변 장치에는 다운로드되지만, 주변 장치에는 다운로드되지 않는다. 따라서, 이 경우에는, 주변 장치에 대응하는 프로그램 데이터에 의해 주변 장치를 동작시키고, 또한 제2 주변 장치에 대응하는 프로그램 데이터에 의해 제2 주변 장치를 동작시키는 것이 가능해진다. 즉, 상위 장치에 기억되어 있는 프로그램 데이터가 1개여도, 주변 장치 및 제2 주변 장치를 적절하게 동작시키는 것이 가능해진다.
그 결과, 이와 같이 구성하면, 상위 장치에 주변 장치가 접속되느냐, 혹은 제2 주변 장치가 접속되느냐에 따라, 상위 장치를 변경할 필요가 없어진다. 따라서, 다운로드 시스템을 사용하는 유저의 편리성을 높이는 것이 가능해진다.
이상과 같이, 본 발명의 주변 장치, 주변 장치의 제어 방법 및 펌웨어의 다운로드 시스템에서는, 구형 주변 장치에 대응한 프로그램 데이터가 상위 장치로부터 신형 주변 장치로 다운로드되는 것을 방지하면서, 주변 장치를 포함하는 시스템의 다운을 회피하는 것이 가능해진다.
도 1은 본 발명의 실시 형태에 관한 펌웨어의 다운로드 시스템의 개략 구성을 도시하는 블록도.
도 2는 도 1에 도시하는 상위 장치에 기억되는 다운로드 파일의 데이터 구조의 일례를 나타내는 개념도.
도 3은 도 1에 도시하는 상위 장치에 접속되는 카드 리더와 상위 장치에 기억되는 다운로드 파일의 조합 패턴을 설명하기 위한 개념도.
도 4는 도 1에 도시하는 상위 장치에서의, 펌웨어의 다운로드 시의 처리 플로우의 일례를 나타내는 플로우차트.
도 5는 도 1에 도시하는 카드 리더에서의, 펌웨어의 다운로드 시의 처리 플로우의 일례를 나타내는 플로우차트.
도 6은 본 발명의 다른 실시 형태에 관한 다운로드 파일의 데이터 구조의 일례를 나타내는 개념도.
도 7은 본 발명의 다른 실시 형태에 관한 카드 리더에서의, 펌웨어의 다운로드 시의 처리 플로우의 일례를 나타내는 플로우차트.
이하, 도면을 참조하면서, 본 발명의 실시 형태를 설명한다.
(펌웨어의 다운로드 시스템의 구성)
도 1은 본 발명의 실시 형태에 관한 펌웨어의 다운로드 시스템(1)의 개략 구성을 도시하는 블록도이다. 도 2는 도 1에 도시하는 상위 장치(2)에 기억되는 다운로드 파일(7)의 데이터 구조의 일례를 나타내는 개념도이다. 도 3은 도 1에 도시하는 상위 장치(2)에 접속되는 카드 리더(3)와 상위 장치(2)에 기억되는 다운로드 파일(7)의 조합 패턴을 설명하기 위한 개념도이다.
본 형태의 펌웨어의 다운로드 시스템(1)(이하, 「다운로드 시스템(1)」이라 함)은, 호스트 컴퓨터 등의 상위 장치(2)와, 상위 장치(2)에 통신 가능하게 접속되는 카드 리더(3)를 구비하고 있다. 이 다운로드 시스템(1)은, 카드 리더(3)를 동작시키는 펌웨어의 프로그램 데이터(4)(도 2 참조)를 상위 장치(2)로부터 카드 리더(3)로 다운로드한다.
본 형태에서는, 기능을 향상시키거나, 사용되고 있는 부품의 제조 중지에 대처하거나 하기 위해 제조된 신형 카드 리더(3)인 카드 리더(3A)와, 카드 리더(3A)보다도 구형 카드 리더(3)인 카드 리더(3B)가, 상위 장치(2)에 접속 가능하게 되어 있고, 상위 장치(2)에는, 예를 들어 카드 리더(3A) 또는 카드 리더(3B) 중 어느 1대가 접속되어 있다. 본 형태의 카드 리더(3A)는, 주변 장치이며, 카드 리더(3B)는 제2 주변 장치이다.
상위 장치(2)는 카드 리더(3)에 프로그램 데이터(4)를 다운로드하기 위한 제어를 행하는 다운로드 제어부(5)를 구비하고 있다. 다운로드 제어부(5)는 상위 장치(2) 내의 통신 수단이나 제어용 프로그램 등에 의해 구성되어 있다. 또한, 상위 장치(2)는 하드디스크 드라이브 등의 외부 기억부(6)를 구비하고 있다. 외부 기억부(6)에는, 프로그램 데이터(4)를 포함하는 다운로드 파일(7)이 기억되어 있다. 본 형태에서는, 카드 리더(3A)에 대응하는 프로그램 데이터(4)를 포함하는 다운로드 파일(7A)(도 3의 (A), (C) 참조) 또는 카드 리더(3B)에 대응하는 프로그램 데이터(4)를 포함하는 다운로드 파일(7B)(도 3의 (B), (D) 참조) 중 어느 하나가 외부 기억부(6)에 기억되어 있다.
카드 리더(3)는, 예를 들어 카드를 수동으로 이동시키면서 카드에 기록된 자기 데이터의 판독 등을 행하는 수동식 카드 리더, 혹은 카드의 반송 기구에 의해 카드를 반송시키면서 카드에 기록된 자기 데이터의 판독 등을 행하는 카드 반송식 카드 리더이다.
카드 리더(3A)는 카드 리더(3A)를 제어하는 카드 리더 제어부(8)를 구비하고 있다. 카드 리더 제어부(8)는 ROM, RAM, 불휘발성 메모리 등의 기억 수단이나 CPU 등의 연산 수단 등에 의해 구성되어 있다. 또한, 카드 리더 제어부(8)는 카드 리더(3A)에 기억되어 있는 프로그램 데이터의 덮어쓰기를 제어하는 덮어쓰기 제어부(9)와, 프로그램 데이터를 포함하는 펌웨어가 저장(기억)되는 펌웨어 저장부(10)를 구비하고 있다.
카드 리더(3B)는 카드 리더(3B)를 제어하는 카드 리더 제어부(13)를 구비하고 있다. 카드 리더 제어부(13)는 ROM, RAM, 불휘발성 메모리 등의 기억 수단이나 CPU 등의 연산 수단 등에 의해 구성되어 있다. 또한, 카드 리더 제어부(13)는 카드 리더(3B)에 기억되어 있는 프로그램 데이터의 덮어쓰기를 제어하는 덮어쓰기 제어부(14)와, 프로그램 데이터를 포함하는 펌웨어가 저장되는 펌웨어 저장부(15)를 구비하고 있다.
다운로드 파일(7)에는 프로그램 데이터(4)에 더하여, 프로그램 데이터(4)의 리비젼 정보(17)와, 이레이즈 커맨드(18)와, 다운로드 커맨드(19)와, EOF(End Of File mark, 파일 말단 코드)(20)가 기술되어 있다. 리비젼 정보(17)는 다운로드 파일(7)의 1행째에 기술되고, 이레이즈 커맨드(18)는 다운로드 파일(7)의 2행째에 기술되어 있다. 다운로드 커맨드(19) 및 프로그램 데이터(4)는, 다운로드 파일(7)의 3행째 이후에 기술되고, EOF(20)는 다운로드 파일(7)의 최종행에 기술되어 있다.
리비젼 정보(17)는, 다운로드 파일(7)에 있어서의 프로그램 데이터(4)의 개정 정보이다. 리비젼 정보(17)의 포맷은, 예를 들어 상위 장치(2)가 카드 리더(3)에 대해서 프로그램 데이터의 리비젼 취득 커맨드를 발행시킨 경우에 얻어지는 카드 리더(3)로부터의 리스펀스(응답)와, 동일 포맷으로 되어 있다. 리비젼 취득 커맨드는 카드 리더(3)에 기억되어 있는 프로그램 데이터의 리비젼 정보를 취득하기 위한 커맨드이다.
이레이즈 커맨드(18)는 카드 리더(3)의 펌웨어 저장부(10, 15) 중 지정한 영역을 소거(이레이즈)하기 위한 커맨드이다.
다운로드 파일(7) 중 3행째 이후의 각 행의 프로그램 데이터(4) 각각은, 상위 장치(2)와 카드 리더(3) 사이의 통신 프로토콜에 적합한 규정의 데이터 형식 및 데이터 길이로 미리 정형되어 있고, 또한 다운로드 커맨드(19)에 세트되어 있다. 또한, 카드 리더(3A)에 대응하는 프로그램 데이터(4)를 포함하는 다운로드 파일(7A) 중 3행째의 프로그램 데이터(4)에는, 카드 리더(3A)에 기억되어 있는 프로그램 데이터를 외부 기억부(6)에 기억되는 다운로드 파일(7A)의 프로그램 데이터(4)로 덮어쓰기하는 것을 덮어쓰기 제어부(9)에 허가시키기 위한 덮어쓰기 허가 데이터(22)가 기술되어 있다. 한편, 카드 리더(3B)에 대응하는 프로그램 데이터(4)를 포함하는 다운로드 파일(7B) 중 3행째의 프로그램 데이터(4)에는, 이 덮어쓰기 허가 데이터(22)가 기술되어 있지 않다. 또한, 덮어쓰기 허가 데이터(22)는 암호화된 암호문에 의해 프로그램 데이터(4) 내에 기술되어도 되고, 암호화되어 있지 않은 평문에 의해 프로그램 데이터(4) 내에 기술되어도 된다.
상술한 바와 같이, 상위 장치(2)에는 카드 리더(3A)와 카드 리더(3B)가 접속 가능하게 되어 있다. 또한, 외부 기억부(6)에는 카드 리더(3A)에 대응하는 프로그램 데이터(4)를 포함하는 다운로드 파일(7A) 또는 카드 리더(3B)에 대응하는 프로그램 데이터(4)를 포함하는 다운로드 파일(7B)이 기억되어 있다. 그로 인해, 상위 장치(2)에 접속되는 카드 리더(3)와 상위 장치(2)에 기억되는 다운로드 파일(7)의 조합으로서, 도 3에 도시하는 4개의 패턴이 생각된다.
즉, 도 3의 (A)에 도시한 바와 같이, 상위 장치(2)에 카드 리더(3A)가 접속되고, 외부 기억부(6)에 다운로드 파일(7A)이 기억되는 패턴과, 도 3의 (B)에 도시한 바와 같이, 상위 장치(2)에 카드 리더(3A)가 접속되고, 외부 기억부(6)에 다운로드 파일(7B)이 기억되는 패턴과, 도 3의 (C)에 도시한 바와 같이, 상위 장치(2)에 카드 리더(3B)가 접속되고, 외부 기억부(6)에 다운로드 파일(7A)이 기억되는 패턴과, 도 3의 (D)에 도시한 바와 같이, 상위 장치(2)에 카드 리더(3B)가 접속되고, 외부 기억부(6)에 다운로드 파일(7B)이 기억되는 패턴의 4개의 패턴이 생각된다.
또한, 외부 기억부(6)에 다운로드 파일(7A)이 기억되어 있는 경우, 다운로드 파일(7A)에 포함되는 프로그램 데이터(4)의 리비젼은, 예를 들어 도 3의 (A), (C)에 도시한 바와 같이, "Rev.B"이다. 또한, 외부 기억부(6)에 다운로드 파일(7B)이 기억되어 있는 경우, 다운로드 파일(7B)에 포함되는 프로그램 데이터(4)의 리비젼은, 예를 들어 도 3의 (B), (D)에 도시한 바와 같이, "Rev.b"이다. 또한, 카드 리더(3A)의 펌웨어 저장부(10)에 기억되어 있는 프로그램 데이터의 리비젼은, 예를 들어 도 3의 (A), (B)에 도시한 바와 같이, "Rev.A"이고, 카드 리더(3B)의 펌웨어 저장부(15)에 기억되어 있는 프로그램 데이터의 리비젼은, 예를 들어 도 3의 (C), (D)에 도시한 바와 같이, "Rev.a"이다.
또한, 본 형태에서는, 카드 리더(3A)에 대응하는 프로그램 데이터(4)가 카드 리더(3B)에 다운로드된 경우에도, 카드 리더(3B)는 정상적으로 동작한다. 한편, 카드 리더(3B)에 대응하는 프로그램 데이터(4)가 카드 리더(3A)에 다운로드되면, 카드 리더(3A)는, 정상적으로 동작하지 않게 된다.
(펌웨어의 다운로드 방법:상위 장치에서의 처리)
도 4는 도 1에 도시하는 상위 장치(2)에서의, 펌웨어의 다운로드 시의 처리 플로우의 일례를 나타내는 플로우차트이다.
상위 장치(2)로부터 카드 리더(3)에 프로그램 데이터(4)를 다운로드할 때는, 우선 다운로드 제어부(5)는 다운로드 파일(7)의 1행째를 판독하여, 리비젼 정보(17)를 판독하고(스텝 S1), 카드 리더(3)에 대해서 리비젼 취득 커맨드를 발행한다(스텝 S2). 그 후, 다운로드 제어부(5)는 다운로드 파일(7)로부터 판독한 리비젼 정보(17)와, 리비젼 취득 커맨드에 대한 카드 리더(3)로부터의 응답을 비교한다(스텝 S3). 즉, 스텝 S3에서는 상위 장치(2)에(구체적으로는, 외부 기억부(6)에) 기억되어 있는 다운로드 파일(7)에 포함되는 프로그램 데이터(4)의 리비젼과, 펌웨어 저장부(10, 15)에 기억되어 있는 프로그램 데이터의 리비젼을 비교한다.
스텝 S3에서, 상위 장치(2)에 기억되어 있는 다운로드 파일(7)에 포함되는 프로그램 데이터(4)의 리비젼과, 펌웨어 저장부(10, 15)에 기억되어 있는 프로그램 데이터의 리비젼이 일치하지 않은 경우에는(스텝 S3에서 "아니오"인 경우에는), 다운로드 제어부(5)는 다운로드 처리를 실행하기 위해, 카드 리더(3)에 대해서 초기화 커맨드를 발행한다(스텝 S4).
즉, 도 3의 (A)에 도시한 바와 같이, 상위 장치(2)(구체적으로는, 외부 기억부(6))에 기억되어 있는 다운로드 파일(7A)에 포함되는 프로그램 데이터(4)의 리비젼이 "Rev.B"이고, 펌웨어 저장부(10)에 기억되어 있는 프로그램 데이터의 리비젼이 "Rev.A"인 경우, 도 3의 (B)에 도시한 바와 같이, 상위 장치(2)에 기억되어 있는 다운로드 파일(7B)에 포함되는 프로그램 데이터(4)의 리비젼이 "Rev.b"이고, 펌웨어 저장부(10)에 기억되어 있는 프로그램 데이터의 리비젼이 "Rev.A"인 경우, 도 3의 (C)에 도시한 바와 같이, 상위 장치(2)에 기억되어 있는 다운로드 파일(7A)에 포함되는 프로그램 데이터(4)의 리비젼이 "Rev.B"이고, 펌웨어 저장부(15)에 기억되어 있는 프로그램 데이터의 리비젼이 "Rev.a"인 경우, 도 3의 (D)에 도시한 바와 같이, 상위 장치(2)에 기억되어 있는 다운로드 파일(7B)에 포함되는 프로그램 데이터(4)의 리비젼이 "Rev.b"이고, 펌웨어 저장부(15)에 기억되어 있는 프로그램 데이터의 리비젼이 "Rev.a"인 경우 등에는, 상위 장치(2)에 기억되어 있는 다운로드 파일(7)에 포함되는 프로그램 데이터(4)의 리비젼과, 펌웨어 저장부(10, 15)에 기억되어 있는 프로그램 데이터의 리비젼이 일치하지 않기 때문에, 스텝 S4에서 다운로드 제어부(5)는, 카드 리더(3)에 대해서 초기화 커맨드를 발행한다.
그 후, 다운로드 제어부(5)는 이 초기화 커맨드에 대한 카드 리더(3)의 리스펀스로부터, 카드 리더(3)가 다운로드 모드(프로그램 데이터(4)의 다운로드가 가능한 상태)인지 여부를 판단한다(스텝 S5). 스텝 S5에서, 카드 리더(3)가 다운로드 모드가 아니면(스텝 S5에서 "아니오"인 경우에는), 다운로드 제어부(5)는 카드 리더(3)에 대해서 모드 전환 커맨드를 발행해서(스텝 S6), 카드 리더(3)를 다운로드 모드로 천이시키고 나서 스텝 S4로 되돌아간다.
한편, 스텝 S5에서, 카드 리더(3)가 다운로드 모드이면(스텝 S5에서 "예"인 경우에는), 다운로드 제어부(5)는 다운로드 파일(7)의 2행째 이후를 1행마다 판독하고(스텝 S7), 판독한 1행이 최종행(EOF(20))인지 여부를 판단한다(스텝 S8).
스텝 S8에서, 판독한 1행이 최종행이 아니면(스텝 S8에서 "아니오"인 경우에는), 다운로드 제어부(5)는 이 판독한 다운로드 파일(7)의 1행을 커맨드로서 카드 리더(3)에 대해서 발행한다. 예를 들어, 판독한 1행이 다운로드 파일(7)의 2행째이면, 이레이즈 커맨드(18)가 카드 리더(3)에 대해서 발행된다. 또한, 판독한 1행이 다운로드 파일(7)의 3행째 이후이면, 다운로드 커맨드(19)가 정형된 프로그램 데이터(4)와 함께 카드 리더(3)에 대해서 발행된다.
그 후, 다운로드 제어부(5)는 카드 리더(3)의 응답에 기초하여 커맨드가 정상적으로 실행되었는지 여부를 판단한다(스텝 S10). 카드 리더(3)의 응답이 정상 응답이면(스텝 S10에서 "예"인 경우에는), 스텝 S7로 되돌아가서, 다운로드 파일(7)의 다음 행을 판독한다. 한편, 카드 리더(3)의 응답이 이상 응답이면(스텝 S10에서 "아니오"인 경우에는), 다운로드 제어부(5)는 프로그램 데이터(4)의 다운로드 실패라고 판단하고, 다운로드 처리를 종료한다. 또한, 이 경우에는, 다운로드 시스템(1)이 다운되는(다운로드 시스템(1)의 동작이 정지해 버리는) 경우가 있다.
또한, 스텝 S8에서, 다운로드 파일(7)로부터 판독한 1행이 최종행으로 되면(스텝 S8에서 "예"인 경우), 프로그램 데이터(4)의 다운로드는 정상 종료로 된다.
또한, 스텝 S3에서, 상위 장치(2)에 기억되어 있는 프로그램 데이터(4)의 리비젼과, 펌웨어 저장부(10, 15)에 기억되어 있는 프로그램 데이터의 리비젼이 일치하는 경우에는(스텝 S3에서 "예"인 경우에는), 다운로드 제어부(5)는 프로그램 데이터(4)의 다운로드는 불필요하다고 판단하고, 다운로드 처리를 종료한다. 예를 들어, 도 3의 (A)에 있어서, 상위 장치(2)에 기억되어 있는 프로그램 데이터(4)의 리비젼이 "Rev.A"인 경우에는, 상위 장치(2)에 기억되어 있는 프로그램 데이터(4)의 리비젼과, 펌웨어 저장부(10)에 기억되어 있는 프로그램 데이터의 리비젼이 일치하기 때문에, 다운로드 제어부(5)는 다운로드 처리를 종료한다.
(펌웨어의 다운로드 방법: 카드 리더에서의 처리)
도 5는 도 1에 도시하는 카드 리더(3)에서의, 펌웨어의 다운로드 시의 처리 플로우의 일례를 나타내는 플로우차트이다.
도 3의 (C), (D)에 도시한 바와 같이, 상위 장치(2)에 카드 리더(3B)가 접속되어 있는 경우에는, 다운로드 파일(7A, 7B) 중 어느 하나가 상위 장치(2)에 기억되어 있는 경우에도, 카드 리더(3B)에서는 펌웨어의 다운로드 시에, 상술한 특허문헌 1에 기재된 카드 리더의 처리와 마찬가지의 처리가 행해진다.
즉, 상술한 스텝 S7에서 판독된 1행이 다운로드 파일(7)의 2행째이면, 스텝 S9에서 발행되는 이레이즈 커맨드(18)에 기초하여, 카드 리더 제어부(13)는 이레이즈 커맨드(18)를 실행한다. 구체적으로는, 덮어쓰기 제어부(14)가 펌웨어 저장부(15) 중 지정된 영역을 소거한다. 보다 구체적으로는, 덮어쓰기 제어부(14)가, 프로그램 데이터(4)에 대응하는 펌웨어 저장부(15) 내의 프로그램 데이터를 소거한다. 또한, 카드 리더 제어부(13)는 이레이즈 커맨드(18)가 정상적으로 실행되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다.
또한, 스텝 S7에서 판독된 1행이 다운로드 파일(7)의 3행째 이후이면, 스텝 S9에서 발행되는 다운로드 커맨드(19)에 기초하여, 카드 리더 제어부(13)는, 다운로드 커맨드(19)를 실행한다. 구체적으로는, 덮어쓰기 제어부(14)가, 상위 장치(2)로부터 보내져 오는 프로그램 데이터(4)를, 펌웨어 저장부(15) 중 지정된 영역에 저장(기억)한다. 즉, 덮어쓰기 제어부(14)가 상위 장치(2)로부터 보내져 오는 프로그램 데이터(4)를, 펌웨어 저장부(15)에 기입한다. 또한, 덮어쓰기 제어부(14)는 다운로드 커맨드(19)가 정상적으로 실행되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다.
한편, 도 3의 (A), (B)에 도시한 바와 같이, 상위 장치(2)에 카드 리더(3A)가 접속되어 있는 경우에는, 카드 리더(3A)에서는, 펌웨어의 다운로드 시에, 상술한 특허문헌 1에 기재된 카드 리더의 처리와 다른 처리가 행해진다. 구체적으로는, 카드 리더(3A)에서는, 도 5에 도시하는 플로우에 따라서, 이하와 같이 처리가 행해진다.
상술한 스텝 S7에서 판독된 1행이 다운로드 파일(7)의 2행째이며, 스텝 S9에서 발행된 다운로드 파일(7)의 2행째(즉, 이레이즈 커맨드(18))를 덮어쓰기 제어부(9)가 수신하면(스텝 S21), 덮어쓰기 제어부(9)는, 이 2행째의 이레이즈 커맨드(18)를 실행하지 않고, 이레이즈 커맨드(18)가 정상적으로 실행되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다(스텝 S22). 즉, 스텝 S22에서는, 덮어쓰기 제어부(9)가 펌웨어 저장부(10)에 기억되어 있는 프로그램 데이터를 소거하지 않고, 이레이즈 커맨드(18)가 정상적으로 실행되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다.
그 후, 스텝 S9에서 발행된 다운로드 파일(7)의 3행째(즉, 다운로드 커맨드(19) 및 프로그램 데이터(4))를 덮어쓰기 제어부(9)가 수신하면(스텝 S23), 덮어쓰기 제어부(9)는 3행째의 프로그램 데이터(4)로 덮어쓰기 허가 데이터(22)가 기술되어 있는지 여부를 판단한다(스텝 S24). 즉, 스텝 S24에서, 덮어쓰기 제어부(9)는 상위 장치(2)에 기억되어 있는 프로그램 데이터(4)가 카드 리더(3A)에 대응하는 프로그램 데이터(4)인지 여부를 판별한다.
도 3의 (A)에 도시한 바와 같이, 상위 장치(2)에 다운로드 파일(7A)이 기억되어 있고, 스텝 S24에서 3행째의 프로그램 데이터(4)에 덮어쓰기 허가 데이터(22)가 기술되어 있는 경우(즉, 다운로드 파일(7)에 덮어쓰기 허가 데이터(22)가 포함되어 있는 경우, 스텝 S24에서 "예"인 경우)에는, 덮어쓰기 제어부(9)는 다운로드 파일(7A)의 2행째의 커맨드 및 3행째의 커맨드(즉, 이레이즈 커맨드(18) 및 다운로드 커맨드(19))를 실행하고, 다운로드 커맨드(19)가 정상적으로 실행되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다(스텝 S25). 구체적으로는, 스텝 S25에서, 덮어쓰기 제어부(9)가 펌웨어 저장부(10)에 기억되어 있는 프로그램 데이터를 소거하고, 또한 상위 장치(2)로부터 보내져 오는 프로그램 데이터(4)를 펌웨어 저장부(10) 중 지정된 영역에 저장(기억)하고, 정상 응답을 다운로드 제어부(5)로 돌려보낸다.
그 후, 덮어쓰기 제어부(9)는 다운로드 파일(7A)의 4행째 이후를 차례로, 수신하고(스텝 S26), 수신한 행의 다운로드 커맨드(19)를 차례로, 실행하고(즉, 상위 장치(2)로부터 보내져 오는 프로그램 데이터(4)를 펌웨어 저장부(10) 중 지정된 영역에 저장(기억)하고), 다운로드 커맨드(19)가 정상적으로 실행되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다(스텝 S27).
한편, 도 3의 (B)에 도시한 바와 같이, 상위 장치(2)에 다운로드 파일(7B)이 기억되어 있고, 스텝 S24에서, 3행째의 프로그램 데이터(4)에 덮어쓰기 허가 데이터(22)가 기술되어 있지 않은 경우(즉, 다운로드 파일(7)에 덮어쓰기 허가 데이터(22)가 포함되어 있지 않은 경우, 스텝 S24에서 "아니오"인 경우)에는, 덮어쓰기 제어부(9)는 다운로드 파일(7B)의 3행째의 커맨드(즉, 다운로드 커맨드(19))를 실행하지 않고, 다운로드 커맨드(19)가 정상적으로 실행되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다(스텝 S28). 구체적으로는, 스텝 S28에서는, 덮어쓰기 제어부(9)가 상위 장치(2)로부터 보내져 오는 프로그램 데이터(4)를 펌웨어 저장부(10)에 저장(기억)하지 않고, 정상 응답을 다운로드 제어부(5)로 돌려보낸다.
그 후, 덮어쓰기 제어부(9)는 다운로드 파일(7B)의 4행째 이후를 차례로, 수신하고(스텝 S29), 수신한 행의 다운로드 커맨드(19)를 실행하지 않고, 다운로드 커맨드(19)가 정상적으로 실행되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다(스텝 S30).
본 형태의 스텝 S24는 덮어쓰기 허가 데이터(22)가 다운로드 파일(7)에 포함되어 있는지 여부를 판별하는 덮어쓰기 허가 판별 스텝이다. 또한, 본 형태의 스텝 S25, S27은, 덮어쓰기 허가 데이터(22)가 다운로드 파일(7)에 포함되어 있는 경우에, 카드 리더(3A)에 기억되어 있는 프로그램 데이터를 상위 장치(2)로부터 보내지는 프로그램 데이터(4)로 덮어쓰기하고, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치(2)로 돌려보내는 덮어쓰기 스텝이다. 또한, 본 형태의 스텝 S28, S30은 덮어쓰기 허가 데이터(22)가 다운로드 파일(7)에 포함되어 있지 않은 경우에, 카드 리더(3A)에 기억되어 있는 프로그램 데이터를 상위 장치(2)로부터 보내지는 프로그램 데이터(4)로 덮어쓰기하지 않고, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치(2)로 돌려보내는 의사 덮어쓰기 스텝이다.
(본 형태의 주된 효과)
이상 설명한 바와 같이, 본 형태에서는, 다운로드 파일(7)에 덮어쓰기 허가 데이터(22)가 포함되어 있는 경우에는, 카드 리더(3A)에 기억되어 있는 프로그램 데이터가 상위 장치(2)로부터 보내져 오는 프로그램 데이터(4)로 덮어쓰기 되지만, 다운로드 파일(7)에 덮어쓰기 허가 데이터(22)가 포함되어 있지 않은 경우에는, 카드 리더(3A)에 기억되어 있는 프로그램 데이터가 상위 장치(2)로부터 보내져 오는 프로그램 데이터(4)로 덮어쓰기 되지 않는다. 즉, 본 형태에서는, 카드 리더(3A)에 대응하는 프로그램 데이터(4)가 상위 장치(2)에 기억되어 있는 경우에는, 카드 리더(3A)에 기억되어 있는 프로그램 데이터가 상위 장치(2)로부터 보내져 오는 프로그램 데이터(4)로 덮어쓰기 되지만, 카드 리더(3B)에 대응하는 프로그램 데이터(4)가 상위 장치(2)에 기억되어 있는 경우에는, 카드 리더(3A)에 기억되어 있는 프로그램 데이터가 상위 장치(2)로부터 보내져 오는 프로그램 데이터(4)로 덮어쓰기 되지 않는다. 그로 인해, 본 형태에서는, 구형 카드 리더(3B)에 대응하는 프로그램 데이터(4)가 상위 장치(2)로부터 신형 카드 리더(3A)에 다운로드되는 것을 방지할 수 있다. 따라서, 본 형태에서는, 구형 카드 리더(3B)에 대응하는 프로그램 데이터(4)가 카드 리더(3A)에 다운로드되어, 카드 리더(3A)가 정상적으로 동작하지 않게 된다고 하는 문제를 회피하는 것이 가능해진다.
본 형태에서는, 다운로드 파일(7)에 덮어쓰기 허가 데이터(22)가 포함되지 않고, 카드 리더(3A)에 기억되어 있는 프로그램 데이터가 상위 장치(2)로부터 보내지는 프로그램 데이터(4)로 덮어쓰기 되지 않는 경우에도(즉, 이레이즈 커맨드(18) 및 다운로드 커맨드(19)를 덮어쓰기 제어부(9)가 실행하지 않은 경우에도), 덮어쓰기 제어부(9)는 데이터 덮어쓰기의 정상 완료 응답을 상위 장치(2)로 돌려보내고 있다. 그로 인해, 상위 장치(2)로부터 카드 리더(3A)로 프로그램 데이터(4)가 다운로드되지 않아도, 상위 장치(2)의 다운로드 처리를 정상적으로 종료시킬 수 있다. 따라서, 본 형태에서는, 다운로드 시스템(1)의 다운을 회피하는 것이 가능해진다.
본 형태에서는, 상위 장치(2)에 카드 리더(3B)가 접속되어 있는 경우, 카드 리더(3B)는 다운로드 파일(7)에 덮어쓰기 허가 데이터(22)가 포함되는지 여부를 판별하지 않고, 카드 리더(3B)에 기억되어 있는 프로그램 데이터를 상위 장치(2)로부터 보내지는 프로그램 데이터(4)로 덮어쓰기하고 있다. 그로 인해, 카드 리더(3A)에 대응하는 프로그램 데이터(4)가 상위 장치(2)에 기억되어 있는 경우에는, 이 프로그램 데이터(4)에 의해, 카드 리더(3B)를 동작시킬 수 있다. 즉, 본 형태에서는, 카드 리더(3A)에 대응하는 1개의 프로그램 데이터(4)에 의해, 카드 리더(3A, 3B)를 동작시킬 수 있다.
또한, 카드 리더(3B)에 대응하는 프로그램 데이터(4)가 상위 장치(2)에 기억되어 있는 경우에는, 이 프로그램 데이터(4)는 카드 리더(3B)에는 다운로드되지만, 카드 리더(3A)에는 다운로드되지 않는다. 그로 인해, 카드 리더(3A)에 대응하는 프로그램 데이터에 의해 카드 리더(3A)를 동작시키고, 또한 카드 리더(3B)에 대응하는 프로그램 데이터에 의해 카드 리더(3B)를 동작시킬 수 있다. 따라서, 본 형태에서는, 상위 장치(2)에 기억되어 있는 프로그램 데이터(4)가 1개여도, 카드 리더(3A, 3B)를 적절하게 동작시키는 것이 가능해진다.
이와 같이, 본 형태에서는 상위 장치(2)에 기억되어 있는 프로그램 데이터(4)가 1개여도, 카드 리더(3A, 3B)를 적절하게 동작시키는 것이 가능해지기 때문에, 상위 장치(2)에 카드 리더(3A)가 접속될 것인지, 혹은 카드 리더(3B)가 접속될 것인지에 따라, 상위 장치(2)를 변경할 필요가 없게 된다. 따라서, 본 형태에서는, 다운로드 시스템(1)을 사용하는 유저의 편리성을 높이는 것이 가능해진다.
(다운로드 파일 및 다운로드 방법의 변형예)
도 6은 본 발명의 다른 실시 형태에 관한 다운로드 파일(7)의 데이터 구조의 일례를 나타내는 개념도이다. 도 7은 본 발명의 다른 실시 형태에 관한 카드 리더(3)에서의, 펌웨어의 다운로드 시의 처리 플로우의 일례를 나타내는 플로우차트이다.
상술한 형태에서는, 다운로드 파일(7)에, 카드 리더(3)에 기억되어 있는 프로그램 데이터를 상위 장치(2)에 기억되어 있는 프로그램 데이터(4)로 덮어쓰기해도 되는지 여부를 판별하기 위한 덮어쓰기 대조 커맨드(23)가 포함되어 있지 않지만, 도 6에 도시한 바와 같이, 다운로드 파일(7)에 덮어쓰기 대조 커맨드(23)가 포함되어 있어도 된다. 이 경우에는, 예를 들어 덮어쓰기 대조 커맨드(23)에, 카드 리더(3)에 기억되어 있는 프로그램 데이터를 외부 기억부(6)에 기억되는 프로그램 데이터(4)로 덮어쓰기하는 것을 덮어쓰기 제어부(9, 14)에 허가시키기 위한 덮어쓰기 허가 데이터가 붙여져 있다. 또한, 다운로드 파일(7A)의 덮어쓰기 대조 커맨드(23)에 붙여지는 덮어쓰기 허가 데이터와, 다운로드 파일(7B)의 덮어쓰기 대조 커맨드(23)에 붙여지는 덮어쓰기 허가 데이터는 다르다.
이 변형예에 관한 다운로드 파일(7)에서는, 도 6에 도시한 바와 같이, 덮어쓰기 대조 커맨드(23)는 다운로드 파일(7)의 2행째에 기술되고, 이레이즈 커맨드(18)는 다운로드 파일(7)의 3행째에 기술되고, 다운로드 커맨드(19) 및 프로그램 데이터(4)는 다운로드 파일(7)의 4행째 이후에 기술되어 있다. 또한, 덮어쓰기 제어부(9)에는, 다운로드 파일(7A)의 덮어쓰기 대조 커맨드(23)에 붙여지는 덮어쓰기 허가 데이터에 일치하거나 또는 이 덮어쓰기 허가 데이터에 1 대 1로 대응하는 허가 데이터가 기억되고, 덮어쓰기 제어부(14)에는 다운로드 파일(7B)의 덮어쓰기 대조 커맨드(23)에 붙여지는 덮어쓰기 허가 데이터에 일치하거나 또는 이 덮어쓰기 허가 데이터에 1 대 1로 대응하는 허가 데이터가 기억되어 있다.
이 변형예에서는, 도 7에 도시한 바와 같이, 상술한 스텝 S9에서 발행된 다운로드 파일(7)의 2행째(즉, 덮어쓰기 대조 커맨드(23))를 덮어쓰기 제어부(9)가 수신하면(스텝 S41), 덮어쓰기 제어부(9)는 덮어쓰기 대조 커맨드(23)에 붙여진 덮어쓰기 허가 데이터가, 덮어쓰기 제어부(9)에 기억되는 허가 데이터와 일치하는지(혹은, 이 허가 데이터와 대응하는지) 여부를 판단한다(스텝 S42). 즉, 덮어쓰기 제어부(9)는, 스텝 S42에서, 덮어쓰기 대조 결과 매칭되는지 여부를 판단한다.
상위 장치(2)에 다운로드 파일(7A)이 기억되어 있고, 스텝 S42에서, 덮어쓰기 대조 결과 매칭되는 경우(스텝 S42에서 "예"인 경우)에는, 덮어쓰기 제어부(9)는 덮어쓰기 대조 결과 매칭되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다(스텝 S43). 그 후, 덮어쓰기 제어부(9)는, 다운로드 파일(7A)의 3행째 이후를 차례로, 수신하고(스텝 S44), 수신한 행의 이레이즈 커맨드(18)나 다운로드 커맨드(19)를 차례로, 실행하고, 이레이즈 커맨드(18)나 다운로드 커맨드(19)가 정상적으로 실행되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다(스텝 S45).
한편, 스텝 S42에서, 덮어쓰기 대조 결과 매칭되지 않는 경우(스텝 S42에서 "아니오"인 경우)에는, 덮어쓰기 제어부(9)는 덮어쓰기 대조 커맨드(23)에 붙여진 덮어쓰기 허가 데이터가, 다운로드 파일(7B)의 덮어쓰기 대조 커맨드(23)에 붙여진 덮어쓰기 허가 데이터인지, 아니면 다른 기종의 카드 리더 등의 다운로드 파일의 덮어쓰기 대조 커맨드에 붙여진 덮어쓰기 허가 데이터인지를 판단한다(스텝 S46). 즉, 스텝 S46에서, 덮어쓰기 제어부(9)는 상위 장치(2)에 기억되어 있는 프로그램 데이터가 구형 카드 리더(3B)에 대응하는 것인지, 아니면 다른 기종의 카드 리더 등에 대응하는 것인지를 판단한다.
스텝 S46에서, 상위 장치(2)에 기억되어 있는 프로그램 데이터가 카드 리더(3B)에 대응하는 것인 경우(즉, 상위 장치(2)에 다운로드 파일(7B)이 기억되어 있는 경우, 스텝 S46에서 "예"인 경우)에는, 덮어쓰기 제어부(9)는 덮어쓰기 대조 결과 매칭되지 않았음에도 불구하고 덮어쓰기 대조 결과 매칭되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다(스텝 S47). 그 후, 덮어쓰기 제어부(9)는 다운로드 파일(7B)의 3행째 이후를 차례로, 수신하고(스텝 S48), 수신한 행의 이레이즈 커맨드(18)나 다운로드 커맨드(19)를 실행하지 않고, 이레이즈 커맨드(18)나 다운로드 커맨드(19)가 정상적으로 실행되었다는 정상 응답을 다운로드 제어부(5)로 돌려보낸다(스텝 S49).
또한, 스텝 S46에서, 상위 장치(2)에 기억되어 있는 프로그램 데이터가 다른 기종의 카드 리더 등에 대응하는 것인 경우(스텝 S46에서 "아니오"인 경우)에는, 덮어쓰기 제어부(9)는 이상 응답을 다운로드 제어부(5)로 돌려보낸다(스텝 S50). 이상 응답을 수신한 다운로드 제어부(5)는 프로그램 데이터(4)의 다운로드 실패라고 판단하고, 다운로드 처리를 종료한다.
이 변형예에 있어서도, 상술한 형태와 마찬가지의 효과를 얻을 수 있다. 또한, 이 변형예에서는, 프로그램 데이터(4)에 덮어쓰기 허가 데이터(22)를 포함시킬 필요가 없게 되기 때문에, 프로그램 데이터(4)의 구조를 간소화하는 것이 가능해진다. 또한, 프로그램 데이터(4)에 덮어쓰기 허가 데이터(22)가 포함되어 있는 경우에는, 다운로드 파일(7)에 덮어쓰기 대조 커맨드(23)가 포함되어 있지 않은 경우나 덮어쓰기 대조 커맨드(23)를 카드 리더(3A)가 접수하지 않은 경우에도, 다운로드 파일(7)에 덮어쓰기 허가 데이터가 포함되어 있는지 여부를 판별하는 것이 가능해진다.
또한, 이 변형예에 있어서의 스텝 S42는, 카드 리더(3A)에 기억되어 있는 프로그램 데이터를 상위 장치(2)에 기억되어 있는 프로그램 데이터(4)로 덮어쓰기하는 것을 덮어쓰기 제어부(9)에 허가시키기 위한 덮어쓰기 허가 데이터가 다운로드 파일(7)에 포함되어 있는지 여부를 판별하는 덮어쓰기 허가 판별 스텝이다. 또한, 스텝 S45는 카드 리더(3A)에 기억되어 있는 프로그램 데이터를 상위 장치(2)에 기억되어 있는 프로그램 데이터(4)로 덮어쓰기하는 것을 덮어쓰기 제어부(9)에 허가시키기 위한 덮어쓰기 허가 데이터가 다운로드 파일(7)에 포함되어 있는 경우에, 카드 리더(3A)에 기억되어 있는 프로그램 데이터를 상위 장치(2)로부터 보내지는 프로그램 데이터(4)로 덮어쓰기하고, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치(2)로 돌려보내는 덮어쓰기 스텝이다. 또한, 스텝 S49는 카드 리더(3A)에 기억되어 있는 프로그램 데이터를 상위 장치(2)에 기억되어 있는 프로그램 데이터(4)로 덮어쓰기하는 것을 덮어쓰기 제어부(9)에 허가시키기 위한 덮어쓰기 허가 데이터가 다운로드 파일(7)에 포함되어 있지 않은 경우에, 카드 리더(3A)에 기억되어 있는 프로그램 데이터를 상위 장치(2)로부터 보내지는 프로그램 데이터(4)로 덮어쓰기하지 않고, 데이터 덮어쓰기의 정상 완료 응답을 상위 장치(2)로 돌려보내는 의사 덮어쓰기 스텝이다.
(다른 실시 형태)
상술한 형태 및 변형예는, 본 발명의 적합한 형태의 일례이지만, 이것에 한정되는 것은 아니며 본 발명의 요지를 변경하지 않는 범위에서 여러가지 변형 실시가 가능하다.
상술한 형태에서는, 덮어쓰기 허가 데이터(22)는, 다운로드 파일(7A) 중 3행째의 프로그램 데이터(4)에 기술되어 있다. 이 밖에도 예를 들어, 덮어쓰기 허가 데이터(22)는 다운로드 파일(7A) 중 4행째 이후의 n행째의 프로그램 데이터(4)에 기술되어도 된다. 이 경우에는, 덮어쓰기 제어부(9)는, n행째의 프로그램 데이터(4)에 덮어쓰기 허가 데이터(22)가 기술되어 있는지 여부를 판단한 후에, 2행째로부터 n행째까지의 커맨드를 실행하여 정상 응답을 다운로드 제어부(5)로 돌려보내거나, 혹은 2행째부터 n행째까지의 커맨드를 실행하지 않고 정상 응답을 다운로드 제어부(5)로 돌려보낸다.
상술한 형태에서는, 상위 장치(2)에 통신 가능하게 접속되는 주변 장치, 제2 주변 장치는 카드 리더(3)이지만, 상위 장치(2)에 통신 가능하게 접속되는 주변 장치, 제2 주변 장치는 카드 프린터 등의 카드 리더(3) 이외의 각종 장치여도 된다.
1 : 다운로드 시스템(펌웨어의 다운로드 시스템)
2 : 상위 장치
3(3A) : 카드 리더(주변 장치)
3(3B) : 카드 리더(제2 주변 장치)
4 : 프로그램 데이터
7(7A, 7B) : 다운로드 파일
9 : 덮어쓰기 제어부
22 : 덮어쓰기 허가 데이터
23 : 덮어쓰기 대조 커맨드
S24, S42 : 덮어쓰기 허가 판별 스텝
S25, S27, S45 : 덮어쓰기 스텝
S28, S30, S49 : 의사 덮어쓰기 스텝

Claims (6)

  1. 상위 장치에 접속되는 주변 장치이며, 상기 주변 장치를 동작시키는 펌웨어의 프로그램 데이터를 상기 상위 장치로부터 다운로드 가능한 주변 장치로서,
    상기 주변 장치에 기억되어 있는 상기 프로그램 데이터의 덮어쓰기를 제어하는 덮어쓰기 제어부를 구비하고,
    상기 프로그램 데이터를 포함함과 함께 상기 상위 장치에 기억되는 다운로드 파일에, 상기 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치에 기억되어 있는 상기 프로그램 데이터로 덮어쓰기하는 것을 상기 덮어쓰기 제어부에 허가시키기 위한 덮어쓰기 허가 데이터가 포함되어 있는 경우에, 상기 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치로부터 보내지는 상기 프로그램 데이터로 덮어쓰기하고, 데이터 덮어쓰기의 정상 완료 응답을 상기 상위 장치로 돌려보냄과 함께,
    상기 다운로드 파일에 상기 덮어쓰기 허가 데이터가 포함되어 있지 않은 경우에, 상기 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치로부터 보내지는 상기 프로그램 데이터로 덮어쓰기하지 않고, 데이터 덮어쓰기의 정상 완료 응답을 상기 상위 장치로 돌려보내는 것을 특징으로 하는 주변 장치.
  2. 상위 장치에 접속되는 주변 장치이며, 상기 주변 장치를 동작시키는 펌웨어의 프로그램 데이터를 상기 상위 장치로부터 다운로드 가능한 주변 장치의 제어 방법으로서,
    상기 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치에 기억되어 있는 상기 프로그램 데이터로 덮어쓰기하는 것을 허가시키기 위한 덮어쓰기 허가 데이터가, 상기 프로그램 데이터를 포함함과 함께 상기 상위 장치에 기억되는 다운로드 파일에 포함되어 있는지 여부를 판별하는 덮어쓰기 허가 판별 스텝과,
    상기 덮어쓰기 허가 판별 스텝에서, 상기 덮어쓰기 허가 데이터가 상기 다운로드 파일에 포함되어 있는 경우에, 상기 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치로부터 보내지는 상기 프로그램 데이터로 덮어쓰기하고, 데이터 덮어쓰기의 정상 완료 응답을 상기 상위 장치로 돌려보내는 덮어쓰기 스텝과,
    상기 덮어쓰기 허가 판별 스텝에서, 상기 덮어쓰기 허가 데이터가 상기 다운로드 파일에 포함되어 있지 않은 경우에, 상기 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치로부터 보내지는 상기 프로그램 데이터로 덮어쓰기하지 않고, 데이터 덮어쓰기의 정상 완료 응답을 상기 상위 장치로 돌려보내는 의사 덮어쓰기 스텝을 구비하는 것을 특징으로 하는 주변 장치의 제어 방법.
  3. 상위 장치, 및
    상기 상위 장치에 접속되는 주변 장치이며, 상기 주변 장치를 동작시키는 펌웨어의 프로그램 데이터를 상기 상위 장치로부터 다운로드 가능한 주변 장치를 포함하는 펌웨어의 다운로드 시스템으로서,
    상기 프로그램 데이터를 포함함과 함께 상기 상위 장치에 기억되는 다운로드 파일에, 상기 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치에 기억되어 있는 상기 프로그램 데이터로 덮어쓰기하는 것을 허가시키기 위한 덮어쓰기 허가 데이터가 포함되어 있는 경우에, 상기 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치로부터 보내지는 상기 프로그램 데이터로 덮어쓰기하고, 데이터 덮어쓰기의 정상 완료 응답을 상기 상위 장치로 돌려보냄과 함께,
    상기 다운로드 파일에 상기 덮어쓰기 허가 데이터가 포함되어 있지 않은 경우에, 상기 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치로부터 보내지는 상기 프로그램 데이터로 덮어쓰기하지 않고, 데이터 덮어쓰기의 정상 완료 응답을 상기 상위 장치로 돌려보내는 것을 특징으로 하는, 펌웨어의 다운로드 시스템.
  4. 제3항에 있어서,
    상기 덮어쓰기 허가 데이터는, 상기 다운로드 파일의 상기 프로그램 데이터 내에 포함되어 있는 것을 특징으로 하는 펌웨어의 다운로드 시스템.
  5. 제3항에 있어서,
    상기 다운로드 파일에는, 상기 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치에 기억되어 있는 상기 프로그램 데이터로 덮어쓰기해도 되는지 여부를 판별하기 위한 덮어쓰기 대조 커맨드가 포함되고,
    상기 덮어쓰기 허가 데이터는, 상기 덮어쓰기 대조 커맨드에 붙여져 있는 것을 특징으로 하는 펌웨어의 다운로드 시스템.
  6. 제3항 내지 제5항 중 어느 한 항에 있어서,
    상기 상위 장치에는, 상기 주변 장치보다도 구형인 제2 주변 장치가 접속 가능하고,
    상기 제2 주변 장치는, 상기 다운로드 파일에 상기 덮어쓰기 허가 데이터가 포함되어 있는지 여부를 판별하지 않고, 상기 제2 주변 장치에 기억되어 있는 상기 프로그램 데이터를 상기 상위 장치로부터 보내지는 상기 프로그램 데이터로 덮어쓰기하는 것을 특징으로 하는 펌웨어의 다운로드 시스템.
KR1020147005428A 2011-09-01 2012-08-27 주변 장치, 주변 장치의 제어 방법 및 펌웨어의 다운로드 시스템 KR101590275B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011190465A JP5734139B2 (ja) 2011-09-01 2011-09-01 周辺装置、周辺装置の制御方法およびファームウェアのダウンロードシステム
JPJP-P-2011-190465 2011-09-01
PCT/JP2012/071564 WO2013031719A1 (ja) 2011-09-01 2012-08-27 周辺装置、周辺装置の制御方法およびファームウェアのダウンロードシステム

Publications (2)

Publication Number Publication Date
KR20140043837A KR20140043837A (ko) 2014-04-10
KR101590275B1 true KR101590275B1 (ko) 2016-01-29

Family

ID=47756207

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147005428A KR101590275B1 (ko) 2011-09-01 2012-08-27 주변 장치, 주변 장치의 제어 방법 및 펌웨어의 다운로드 시스템

Country Status (6)

Country Link
US (1) US8954621B2 (ko)
JP (1) JP5734139B2 (ko)
KR (1) KR101590275B1 (ko)
CN (1) CN103765389B (ko)
BR (1) BR112014004449A2 (ko)
WO (1) WO2013031719A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6101073B2 (ja) * 2012-12-27 2017-03-22 日本電産サンキョー株式会社 周辺装置、周辺装置の制御方法、ファームウェアのダウンロードシステム、およびプログラム
JP2018136816A (ja) * 2017-02-23 2018-08-30 住友電気工業株式会社 プログラム更新システム、制御装置、プログラム更新方法、及びコンピュータプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001134428A (ja) 1999-11-09 2001-05-18 Matsushita Electric Ind Co Ltd 運用プログラム更新方法及び装置
JP2004259224A (ja) 2003-02-28 2004-09-16 Canon Inc 周辺装置
JP2007293514A (ja) 2006-04-24 2007-11-08 Canon Inc バージョン管理および自動アップデート機能
JP2009053901A (ja) 2007-08-27 2009-03-12 Seiko Epson Corp プリンタ

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3028055B2 (ja) * 1996-02-19 2000-04-04 日本電気株式会社 Pcカードシステム及びプログラム書き換え方法
JP2004013782A (ja) * 2002-06-11 2004-01-15 Sankyo Seiki Mfg Co Ltd ファームウェアのダウンロード方法
JP4021407B2 (ja) * 2003-12-16 2007-12-12 シャープ株式会社 情報処理装置
US7730326B2 (en) * 2004-11-12 2010-06-01 Apple Inc. Method and system for updating firmware stored in non-volatile memory
JP2007004377A (ja) * 2005-06-22 2007-01-11 Ricoh Co Ltd 画像形成装置及びファームウェアの更新方法
JP2008181228A (ja) * 2007-01-23 2008-08-07 Sony Corp 管理システムおよび管理方法、端末装置、管理サーバ、並びにプログラム
CN101557584A (zh) * 2009-05-14 2009-10-14 中兴通讯股份有限公司 一种实现移动终端应用权限控制的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001134428A (ja) 1999-11-09 2001-05-18 Matsushita Electric Ind Co Ltd 運用プログラム更新方法及び装置
JP2004259224A (ja) 2003-02-28 2004-09-16 Canon Inc 周辺装置
JP2007293514A (ja) 2006-04-24 2007-11-08 Canon Inc バージョン管理および自動アップデート機能
JP2009053901A (ja) 2007-08-27 2009-03-12 Seiko Epson Corp プリンタ

Also Published As

Publication number Publication date
CN103765389A (zh) 2014-04-30
JP5734139B2 (ja) 2015-06-10
WO2013031719A1 (ja) 2013-03-07
KR20140043837A (ko) 2014-04-10
CN103765389B (zh) 2016-08-17
US20140223036A1 (en) 2014-08-07
BR112014004449A2 (pt) 2017-03-28
JP2013054426A (ja) 2013-03-21
US8954621B2 (en) 2015-02-10

Similar Documents

Publication Publication Date Title
CN100412818C (zh) 信息处理设备、存储设备和存储控制设备
US9361138B2 (en) Peripheral device, method of controlling peripheral device, firmware download system and program
CN106340312A (zh) 磁盘装置及磁盘装置的控制方法
JP4829370B1 (ja) メモリ制御装置、メモリ装置および停止制御方法
KR101590275B1 (ko) 주변 장치, 주변 장치의 제어 방법 및 펌웨어의 다운로드 시스템
JP4798672B2 (ja) 磁気ディスク装置
US20100058145A1 (en) Storage device and method of controlling storage device
JP2013229005A5 (ja) カード識別情報管理システム、プログラム、受付装置及び方法
EP1347458A1 (en) Information storage apparatus
JP5884663B2 (ja) 電子制御装置およびデータ書換システム
US20070245100A1 (en) Data processor, data processing method, and computer readable medium storing program therefor
JP4460850B2 (ja) Icカードとicカードの処理方法
CN105706067B (zh) 内置闪存的微型计算机和向内置于微型计算机的闪存的数据写入方法
JP2004348234A (ja) 携帯可能電子媒体、携帯可能電子媒体の発行装置、携帯可能電子媒体の発行システム、及び、携帯可能電子媒体の発行方法
US20070174739A1 (en) Disk device, method of writing data in disk device, and computer product
JP2001167236A (ja) 携帯可能電子装置
CN111052075B (zh) 提高在位固件更新稳健性的方法及装置
JP4836707B2 (ja) 携帯可能電子装置およびicカード
JP5341947B2 (ja) Icカード、icカードの制御方法、および携帯可能電子装置の制御方法
JP5821788B2 (ja) 電子制御装置
JP2004013782A (ja) ファームウェアのダウンロード方法
JP4810108B2 (ja) Icカードとその制御方法
KR101532654B1 (ko) 대용량 저장장치의 복구 방법 및 복구 방법을 갖춘 대용량 저장장치
JP6401070B2 (ja) ソフトウェア書き換え装置
JP2004185419A (ja) 携帯可能電子媒体と、その携帯可能電子媒体の発行システム、処理方法及び発行方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190117

Year of fee payment: 4