KR20140100145A - 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법 - Google Patents

화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법 Download PDF

Info

Publication number
KR20140100145A
KR20140100145A KR1020130013038A KR20130013038A KR20140100145A KR 20140100145 A KR20140100145 A KR 20140100145A KR 1020130013038 A KR1020130013038 A KR 1020130013038A KR 20130013038 A KR20130013038 A KR 20130013038A KR 20140100145 A KR20140100145 A KR 20140100145A
Authority
KR
South Korea
Prior art keywords
firmware
image forming
forming apparatus
update
information
Prior art date
Application number
KR1020130013038A
Other languages
English (en)
Other versions
KR101992680B1 (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 삼성전자주식회사
Priority to KR1020130013038A priority Critical patent/KR101992680B1/ko
Priority to US14/031,448 priority patent/US9164757B2/en
Publication of KR20140100145A publication Critical patent/KR20140100145A/ko
Application granted granted Critical
Publication of KR101992680B1 publication Critical patent/KR101992680B1/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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates

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)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

화상형성장치 펌웨어 업데이트 방법이 개시된다. 본 화상형성장치 펌웨어 업데이트 방법은, 화상형성장치의 펌웨어 업데이트가 필요한지를 판단하는 단계, 신규 펌웨어 블럭 배포 리스트를 추적장치로부터 취득하는 단계, 취득된 블럭 배포 리스트에 기초하여, 타 화상형성장치로부터 펌웨어 블럭을 수신하는 단계 및 수신된 펌웨어 블럭을 결합하여 신규 펌웨어를 생성하고, 생성된 신규 펌웨어를 이용하여 펌웨어 업데이트를 수행하는 단계를 포함한다.

Description

화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법{IMAGE FORMING APPARATUS, TRACKING APPARATUS, MANAGING APPARATUS AND METHOD FOR UPDATING FIRMWARE OF IMAGE FORMING APPARATUS}
본 발명은 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법에 관한 것으로, 더욱 상세하게는 P2P(Peer To Peer)방식을 이용하여 펌웨어를 업데이트할 수 있는 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법에 관한 것이다.
화상형성장치는 컴퓨터와 같은 단말장치에서 생성된 인쇄 데이터를 기록 용지에 인쇄하는 장치를 의미한다. 이러한 화상형성장치의 예로는 복사기, 프린터, 팩시밀리 또는 이들의 기능을 하나의 장치를 통해 복합적으로 구현하는 복합기(Multi Function Peripheral: MFP) 등을 들 수 있다.
일반적으로, 복사기, 프린터 및 팩시밀리와 같은 화상형성장치는 하드웨어를 제어하기 위한 펌웨어(Firmware)를 채용하고 있다. 이러한 펌웨어는 화상형성장치의 기능 변경, 오류 수정이 필요할 때에 업데이트(Update)를 통하여 확장할 수 있다. 펌웨어 업데이트는 보통 화상형성장치의 관리자가 각각의 화상형성장치별로 업데이트하며, 네트워크로 다수의 화상형성장치가 연결되어 있는 경우 관리장치(또는 인쇄제어장치)에서 연결된 다수의 화상형성장치에 펌웨어를 전송하여 업데이트하는 것이 일반적이었다.
그러나, 화상형성장치의 기능이 다양해지면서 펌웨어의 크기 또한 비례적으로 증가되어, 관리장치에서 네트워크를 통해 펌웨어를 화상형성장치에 직접 전송하여 업데이트하는 것은 많은 시간과 비용을 필요로 하는 문제점이 있었다.
따라서, 본 발명은 상술한 문제점을 해결하기 위하여 안출된 것으로, 본 발명의 목적은, BitTorrent 기반의 P2P방식을 이용하여 펌웨어 전송시간을 단축하고, P2P방식의 특성을 고려한 펌웨어 업데이트 절차를 제시하여 펌웨어 업데이트 관리방식을 개선할 수 있는 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법을 제공하는 데 있다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 추적장치 및 타 화상형성장치와 연결 가능한 화상형성장치 펌웨어(Firmware) 업데이트 방법은, 추적장치 및 타 화상형성장치와 연결 가능한 화상형성장치의 펌웨어(Firmware) 업데이트 방법에 있어서, 상기 화상형성장치의 펌웨어 업데이트가 필요한지를 판단하는 단계, 펌웨어 블럭 배포 리스트를 상기 추적장치로부터 취득하는 단계, 상기 취득된 펌웨어 블럭 배포 리스트에 기초하여, 상기 타 화상형성장치로부터 펌웨어 블럭을 수신하는 단계 및 상기 수신된 펌웨어 블럭을 결합하여 신규 펌웨어를 생성하고, 상기 생성된 신규 펌웨어를 이용하여 펌웨어 업데이트를 수행하는 단계를 포함할 수 있다.
이 경우, 상기 펌웨어 업데이트가 필요한지 판단하는 단계는, 상기 화상형성장치와 연결된 관리장치로부터 업데이트 정보를 수신하면, 펌웨어 업데이트가 필요한 것으로 판단할 수 있다.
여기서, 상기 업데이트 정보는, 펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함할 수 있다.
이 경우, 상기 펌웨어 업데이트를 수행하는 단계는, 상기 지속 시드 정보에 따라 지속 시드로 선정된 경우, 지속 시드 유지 일시가 지난 후에 펌웨어 업데이트를 수행할 수 있다.
한편, 상기 펌웨어 업데이트가 필요한지 판단하는 단계는, 상기 펌웨어 버전 정보를 현재 구동중인 펌웨어 버전과 비교하여 펌웨어 업데이트가 필요한지 판단할 수 있다.
한편, 상기 펌웨어 업데이트를 수행하는 단계는, 상기 신규 펌웨어가 생성된 즉시 업데이트를 수행하거나 또는 상기 화상형성장치와 연결된 관리장치로부터 펌웨어 업데이트 수행명령을 수신받는 경우 업데이트를 수행할 수 있다.
한편, 상기 펌웨어 블럭을 수신하는 단계는, 상기 취득된 펌웨어 블럭 배포 리스트 중 통신 트래픽이 가장 적은 타 화상형성장치로부터 펌웨어 블럭을 수신할 수 있다.
한편, 상기 펌웨어 블럭을 수신하는 단계는, 상기 타 화상형성장치 및 상기 화상형성장치와 연결된 관리장치로부터 수신할 수 있다.
한편, 펌웨어 업데이트 방법은, 상기 화상형성장치와 연결된 관리장치 및 상기 추적장치 중 적어도 하나에 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 전송하는 단계를 더 포함할 수 있다.
한편, 본 실시 예에 따른 적어도 하나의 화상형성장치 및 관리장치와 연결가능한 추적장치의 화상형성장치 펌웨어(Firmware) 업데이트 방법은, 상기 연결된 적어도 하나의 화상형성장치로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신받는 단계, 화상형성장치로부터 펌웨어 블럭 배포 리스트를 요청받는 경우, 상기 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 이용하여 상기 펌웨어 블럭 배포 리스트를 생성하는 단계 및 상기 펌웨어 블럭 배포 리스트를 상기 화상형성장치에 전송하는 단계를 포함할 수 있다.
이 경우, 펌웨어 업데이트 방법은, 상기 관리장치로부터 펌웨어 버전 정보, 펌웨어 데이터 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보 중 적어도 하나를 포함하는 업데이트 정보를 수신받는 단계를 더 포함하고, 상기 펌웨어 블럭 배포 리스트를 생성하는 단계는, 상기 필터 정보에 따른 네트워크 범위 내에서 화상형성장치를 선정하여 펌웨어 블럭 배포 리스트를 생성할 수 있다.
한편, 본 실시 예에 따른 적어도 하나의 화상형성장치 및 추적장치와 연결가능한 관리장치의 화상형성장치 펌웨어(Firmware) 업데이트 방법은, 상기 펌웨어의 업데이트 정보를 입력받는 단계, 상기 업데이트 정보를 상기 추적장치 및 펌웨어 업데이트 대상이 되는 적어도 하나의 화상형성장치에 전송하는 단계 및 화상형성장치로부터 펌웨어 블럭의 다운로드 요청이 수신되는 경우, 상기 펌웨어 블럭을 상기 화상형성장치로 전송하는 단계를 포함하고, 상기 업데이트 정보는, 펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함할 수 있다.
이 경우, 펌웨어 업데이트 방법은, 상기 연결된 적어도 하나의 화상형성장치로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신받는 단계 및 상기 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 화상형성장치별로 표시하는 단계를 더 포함할 수 있다.
한편, 본 실시 예에 따른 추적장치 및 타 화상형성장치와 연결 가능한 화상형성장치는, 저장부, 상기 화상형성장치의 펌웨어 업데이트가 필요한지를 판단하는 제어부 및 펌웨어 블럭 배포 리스트를 상기 추적장치로부터 취득하는 통신 인터페이스부를 포함하고, 상기 제어부는, 상기 취득된 펌웨어 블럭 배포 리스트에 기초하여, 상기 타 화상형성장치로부터 펌웨어 블럭을 수신하여 상기 저장부에 저장하고, 상기 수신된 펌웨어 블럭을 결합하여 신규 펌웨어를 생성하고, 상기 생성된 신규 펌웨어를 이용하여 펌웨어 업데이트를 수행할 수 있다.
이 경우, 상기 제어부는, 상기 화상형성장치와 연결된 관리장치로부터 업데이트 정보를 수신하면, 펌웨어 업데이트가 필요한 것으로 판단할 수 있다.
여기서, 상기 업데이트 정보는, 펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함할 수 있다.
이 경우, 상기 제어부는, 상기 지속 시드 정보에 따라 지속 시드로 선정된 경우, 지속 시드 유지 일시가 지난 후에 펌웨어 업데이트를 수행할 수 있다.
한편, 상기 제어부는, 상기 펌웨어 버전 정보를 현재 구동중인 펌웨어 버전과 비교하여 펌웨어 업데이트가 필요한지 판단할 수 있다.
한편, 상기 제어부는, 상기 신규 펌웨어가 생성된 즉시 업데이트를 수행하거나 또는 상기 화상형성장치와 연결된 관리장치로부터 펌웨어 업데이트 수행명령을 수신받는 경우 업데이트를 수행할 수 있다.
한편, 상기 제어부는, 상기 취득된 블럭 배포 리스트 중 통신 트래픽이 가장 적은 타 화상형성장치로부터 펌웨어 블럭을 수신할 수 있다.
한편, 상기 제어부는, 상기 타 화상형성장치 및 상기 화상형성장치와 연결된 관리장치로부터 상기 펌웨어 블럭을 수신할 수 있다.
한편, 상기 제어부는, 상기 화상형성장치와 연결된 관리장치 및 상기 추적장치 중 적어도 하나에 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 전송할 수 있다.
한편, 본 실시 예에 따른 적어도 하나의 화상형성장치 및 관리장치와 연결가능한 추적장치는, 상기 연결된 적어도 하나의 화상형성장치로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신받는 통신 인터페이스부 및 화상형성장치로부터 펌웨어 블럭 배포 리스트를 요청받는 경우, 상기 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 이용하여 상기 펌웨어 블럭 배포 리스트를 생성하는 제어부를 포함하고, 상기 제어부는, 상기 펌웨어 블럭 배포 리스트를 상기 화상형성장치에 전송하도록 상기 통신 인터페이스부를 제어할 수 있다.
이 경우, 상기 통신 인터페이스부는, 상기 관리장치로부터 펌웨어 버전 정보, 펌웨어 데이터 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보 중 적어도 하나를 포함하는 업데이트 정보를 수신받고, 상기 제어부는, 상기 필터 정보에 따른 네트워크 범위 내에서 화상형성장치를 선정하여 펌웨어 블럭 배포 리스트를 생성할 수 있다.
한편, 본 실시 예에 따른 적어도 하나의 화상형성장치 및 추적장치와 연결가능한 관리장치는, 업데이트할 펌웨어와 상기 펌웨어의 업데이트 정보를 입력받는 사용자 인터페이스부, 상기 업데이트 정보를 상기 추적장치 및 펌웨어 업데이트 대상이 되는 적어도 하나의 화상형성장치에 전송하는 통신 인터페이스부 및 화상형성장치로부터 펌웨어 블럭의 다운로드 요청이 수신되는 경우, 상기 펌웨어 블럭을 상기 화상형성장치로 전송하도록 상기 통신 인터페이스부를 제어하는 제어부를 포함하고, 상기 업데이트 정보는, 펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함한다.
이 경우, 상기 제어부는, 상기 연결된 적어도 하나의 화상형성장치로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신하여 화상형성장치별로 표시하도록 상기 사용자 인터페이스부를 제어할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 화상형성시스템의 구성을 도시한 블럭도,
도 2는 본 발명의 일 실시 예에 따른 관리장치, 추적장치 및 화상형성장치의 구성을 도시한 블럭도,
도 3은 본 발명의 다양한 실시 예에 따른 관리장치의 구성을 도시한 블럭도,
도 4는 본 발명의 일 실시 예에 따른 화상형성장치의 펌웨어 업데이트 방법을 설명하기 위한 도면,
도 5는 본 발명의 일 실시 예에 따른 화상형성장치의 펌웨어 업데이트 동작을 설명하기 위한 타이밍도,
도 6은 본 발명의 다양한 실시 예에 따른 화상형성장치의 펌웨어 업데이트 동작을 설명하기 위한 타이밍도,
도 7은 본 발명의 일 실시 예에 따른 필터 정보를 이용한 화상형성장치의 펌웨어 업데이트 동작을 설명하기 위한 도면,
도 8은 본 발명의 일 실시 예에 따른 화상형성장치의 펌웨어 업데이트 정보를 입력받는 관리장치의 UI를 설명하기 위한 도면,
도 9는 본 발명의 다양한 실시 예에 따른 네트워크 확장을 통한 펌웨어 업데이트 동작을 설명하기 위한 도면,
도 10 및 도 11은 본 발명의 일 실시 예에 따른 화상형성장치의 펌웨어 업데이트 방법을 설명하기 위한 흐름도,
도 12는 본 발명의 일 실시 예에 따른 추적장치의 화상형성장치 펌웨어 업데이트 방법을 설명하기 위한 흐름도,
도 13은 본 발명의 일 실시 예에 따른 관리장치의 화상형성장치 펌웨어 업데이트 방법을 설명하기 위한 흐름도, 그리고,
도 14는 본 발명의 일 실시 예에 따른 관리장치의 화상형성장치 펌웨어 업데이트 방법을 설명하기 위한 흐름도이다.
이하 첨부된 도면들을 참조하여 본 발명의 일 실시 예를 보다 상세하게 설명한다.
도 1은 본 발명의 일 실시 예에 따른 화상형성시스템의 구성을 도시한 블럭도이다.
도 1을 참고하면, 본 발명에 따른 화상형성시스템은 관리장치(100), 추적장치(200), 적어도 하나의 화상형성장치(300-1, 300-2 ~ 300-n)을 포함할 수 있다.
화상형성시스템은 네트워크(10)를 통하여 연결되어 있으며, 네트워크(10)는 근거리 통신망(LAN: Local Area Network) 및 인터넷망으로 형성될 수 있다.
관리장치(100)는 화상형성시스템의 각 구성을 제어하는 기능을 수행하며, 네트워크(10)를 통하여 연결된 적어도 하나의 화상형성장치(300-1, 300-2 ~ 300-n, 이하 설명의 편의를 위하여 300으로 표시한다)에 잡 수행 명령을 전송할 수 있다.
또한, 관리장치(100)는 화상형성장치(300)의 펌웨어 업데이트를 위하여 펌웨어 파일과 업데이트 설정을 제공하고, 업데이트 전과정을 제어할 수 있다. 관리장치(100)의 자세한 설명은 이하 도 2를 참고하여 설명하도록 한다.
여기서, 펌웨어는 하드웨어를 제어하는 마이크로 프로그램이다. 한편, 화상형성장치(300)가 복수의 프로세서로 동작하는 경우, 신규 펌웨어는 하나의 프로세서에 대한 신규 마이크로 프로그램일 수 있으며, 복수의 프로세서 각각에 대한 마이크로 프로그램의 집합일 수도 있다.
추적장치(200)는 bitTorrent 프로토콜을 기반으로 하는 P2P방식의 데이터 전송을 위해 시더(Seeder)와 피어(Peer)를 모니터링하는 구성이다. 추적장치(200)는 bitTorrent 프로토콜에서의 트래커(Tracker) 기능을 수행할 수 있다.
여기서, bitTorrent 프로토콜 기반의 P2P방식이란, Torrent 파일을 매개체로 하는 사용자간의 데이터 통신방식을 의미한다.
Torrent 파일에는 공유하고자하는 파일의 메타 데이터, 트랙커의 URL 정보등을 포함하고 있으며, Torrent 파일을 실행시키는 경우, 트랙커로부터 현재 공유파일의 시더(Seeder)에 대한 정보를 수신할 수 있다.
여기서, 시더(Seeder)는 공유파일(전체 또는 일부)을 가지고 있어 이를 배포하는 이용자를 의미한다.
이러한, bitTorrent 프로토콜 기반의 P2P방식을 이용함으로써 화상형성장치(300)의 펌웨어 배포 시간을 단축할 수 있게 된다.
이하, 화상형성장치(300), 추적장치(200) 및 관리장치(100)의 구성에 대해 구체적으로 설명하도록 한다.
도 2는 본 발명의 일 실시 예에 따른 관리장치(100), 추적장치(200) 및 화상형성장치(300)의 구성을 도시한 블럭도이다.
도 2를 참고하면, 화상형성장치(300)는 통신 인터페이스부(310), 저장부(320), 제어부(330), 사용자 인터페이스부(340) 및 잡 수행부(350)를 포함한다.
통신 인터페이스부(310)는 화상형성장치(300)를 관리장치(100), 추적장치(200) 및 타 화상형성장치와 연결하기 위한 구성으로, 근거리 통신망(LAN) 및 인터넷 망을 통하여 무선 또는 유선 방식으로 통신을 수행할 수 있다.
그리고, 통신 인터페이스부(310)는 관리장치(100)로부터 펌웨어 업데이트 정보를 수신할 수 있다.
여기서 펌웨어 업데이트 정보란, 펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치의 접근 정보, 지속 시드 정보, 필터 정보 및 펌웨어 다운로드 시작 정보 중 적어도 하나를 포함할 수 있다. 업데이트 정보에 대한 구체적인 설명은 아래와 같다.
펌웨어 버전 정보는 펌웨어의 개발 순서를 번호로 표시한 정보로 펌웨어 업데이트 필요 여부를 판단하는데 사용할 수 있다.
펌웨어 데이터 정보는 펌웨어 블럭의 크기, 펌웨어의 파일명에 대한 정보이다. 여기서 펌웨어 블럭이란 하나의 펌웨어를 기설정된 크기로 분리한 조각을 의미한다.
추적장치의 접근 정보는 추적장치에 접속하기 위한 URL(Uniform Resource Locator), 또는 IP 주소에 대한 정보이다.
지속 시드 정보는 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드에 대한 정보로, 지속 시드 선정 정보 및 지속 시드 유지 일시 정보를 포함할 수 있다.
필터 정보는 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하기 위한 정보이다.
펌웨어 다운로드 시작 정보는 펌웨어의 전송 및 업데이트를 동작을 시작시간에 대한 정보로, 네트워크의 유휴시간을 활용하여 위하여 사용되는 정보이다.
이와 같은 업데이트 정보는 P2P방식의 특성을 고려한 펌웨어 업데이트 절차에 이용되며, 이를 통하여 화상형성장치의 펌웨어 업데이트 관리방식을 개선할 수 있게된다.
한편, 통신 인터페이스부(310)는 펌웨어 블럭 배포 리스트를 추적장치(200)로부터 취득할 수 있다. 구체적으로, 통신 인터페이스부(310)는 제어부(330)의 제어에 따라 추적장치(200)에 다운받아야할 펌웨어 블럭의 배포 리스트를 요청하고, 이를 추적장치(200)로부터 수신할 수 있다.
또한, 통신 인터페이스부(310)는 제어부(330)의 제어에 따라 타 화상형성장치 및 화상형성장치에 연결된 관리장치(100)로부터 펌웨어 블럭을 수신할 수 있다.
반대로, 통신 인터페이스부(310)는 제어부(330)의 제어에 따라 타 화상형성장치로부터 펌웨어 블럭의 전송요청을 받은 경우, 타 화상형성장치에 해당 펌웨어 블럭을 전송할 수 있다.
이와 같이, 화상형성장치(300)는 펌웨어 블럭의 수신과 동시에 수신완료된 펌웨어 블럭을 전송할 수 있다.
그리고, 통신 인터페이스부(310)는 제어부(330)의 제어에 따라 관리장치(100) 및 추적장치(200) 중 적어도 하나에 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 전송할 수 있다.
저장부(320)는 제어부(330)의 제어에 따라 수신된 펌웨어 블럭을 저장하고, 모든 펌웨어 블럭을 수신하여 신규 펌웨어가 생성되면, 신규 펌웨어도 저장할 수 있다.
저장부(320)는 화상형성장치(300) 내의 저장매체 및 외부 저장 매체, 예를 들어, USB 메모리를 포함한 Removable Disk, 네트워크를 통한 웹서버(Web server) 등으로 구현될 수 있다. 본 실시 예에서는 하나의 저장부(320)만을 도시하고 설명하였지만, 저장부(320)는 데이터 저장을 위한 메모리 및 명령어 처리를 위한 구분된 메모리로 구현될 수 있다.
한편, 저장부(320)는 각각의 펌웨어 블럭뿐만 아니라 관리장치(100)에서 수신한 업데이트 정보, 추적장치(200)에서 취득한 펌웨어 블럭 배포 리스트 등을 일시적으로 저장할 수 있다. 또한, 저장부(320)는 관리장치(100) 또는 사용자 인터페이스부(340)에서 입력된 잡 수행 명령과 인쇄 데이터등을 일시적으로 저장할 수 있다.
제어부(330)는 화상형성장치의 펌웨어 업데이트가 필요한지 판단한다. 구체적으로, 제어부(330)는 관리장치(100)로부터 업데이트 정보를 수신하면, 펌웨어 업데이트가 필요한 것으로 판단할 수 있다. 또한, 제어부(330)는 펌웨어 버전 정보를 현재 구동중인 펌웨어 버전과 비교하여 펌웨어 업데이트가 필요한지 판단할 수 있다.
여기서, 제어부(330)는 현재 구동중인 펌웨어 버전이 더 최신이거나 동일한 경우 펌웨어 업데이트가 필요없다고 판단할 수 있으며, 반대로 현재 구동중인 펌웨어 버전이 낮은 경우 펌웨어 업데이트가 필요하다고 판단할 수 있다.
한편, 제어부(330)는 펌웨어 다운로드 시작 정보에 따라 다운로드 시작시간이 경과하는 경우 펌웨어 업데이트가 필요하다고 판단할 수 있다.
한편, 제어부(330)는 취득된 펌웨어 블럭 배포 리스트에 기초하여, 타 화상형성장치 또는 관리장치(100)로부터 펌웨어 블럭을 수신할 수 있다. 그리고, 제어부(330)는 수신받은 펌웨어 블럭을 저장부(320)에 저장할 수 있다.
여기서, 펌웨어 블록을 전부 수신한 경우, 제어부(330)는 수신된 펌웨어 블럭을 결합하여 신규 펌웨어를 생성하고, 생성된 신규 펌웨어를 실행시켜 펌웨어 업데이트를 수행할 수 있다.
구체적으로, 신규 펌웨어가 생성되면, 제어부(330)는 화상형성장치(300)를 리부팅할 수 있다. 이와 같은 리부팅 동작에 의하여 새로 생성된 신규 펌웨어가 CPU(구체적으로, 휘발성 메모리(예를 들어, DRAM))에 로딩 되고, 화상형성장치(300)는 신규 펌웨어에 의하여 동작하게 된다.
한편, 제어부(330)는 지속 시드 정보에 따라 화상형성장치(300)가 지속 시드로 선정된 경우, 지속 시드 유지 일시가 지난 후에 펌웨어 업데이트를 수행할 수 있다.
그러나, 지속 시드로 선정된 경우라도, 제어부(330)는 관리장치(100)로부터 펌웨어 업데이트 명령을 수신하는 경우에는 지속 시드 유지일시가 지나지 않아도 펌웨어 업데이트를 수행할 수 있다.
화상형성장치(300)가 펌웨어 업데이트를 수행하고 있는 경우에는, 화상형성장치(300)의 전체적인 기능이 불안정할 수 있으며, 또한 장치의 리부팅이 수행될 수 있으므로 펌웨어 블럭의 배포가 불안정하게 될 수 있다. 따라서, 모든 펌웨어 블럭을 수신하더라도, 바로 펌웨어 업데이트를 수행하지 않고, 펌웨어 블럭의 전송를 전담하는 지속 시드를 선정하여 안정적인 펌웨어 블럭의 배포를 도모할 수 있게한다.
한편, 제어부(330)는 신규 펌웨어가 생성된 즉시 펌웨어 업데이트를 수행할 수 있다. 이러한 경우는, 화상형성장치(300)가 지속 시드로 선정되지 않은 경우로, 다운로드 완료와 함께 업데이트가 수행될 수 있다.
한편, 제어부(330)는 취득된 블록 배포 리스트 중 통신 트래픽이 가장 적은 타 화상형성장치로부터 펌웨어 블럭을 수신할 수 있다.
한편, 제어부(330)는 화상형성장치(300) 내의 각 구성에 대한 제어를 수행하기 위한 CPU, ROM, RAM등의 구성이 내부버스를 통하여 상호 연결되어 구현될 수 있다.
사용자 인터페이스부(340)는 화상형성장치(300)에서 지원하는 각종 기능을 사용자가 설정 또는 선택할 수 있는 다수의 기능키들을 구비하며, 화상형성장치(300)에서 제공되는 각종 정보 표시할 수 있다. 사용자 인터페이스부(340)는 터치패드 등과 같이 입력과 출력이 동시에 구현되는 장치로 구현될 수 있다.
그리고 사용자 인터페이스부(340)는 펌웨어 설치(또는 펌웨어 업데이트)와 관련된 정보를 표시할 수 있다. 구체적으로, 사용자 인터페이스부(340)는 신규 펌웨어의 설치(또는 업그레이드)에 소요되는 시간, 신규 펌웨어의 구체적인 설치 동작 등의 펌웨어 설치와 관련된 정보를 사용자 인터페이스 창을 통하여 표시할 수 있다.
잡 수행부(350)는 입력된 잡 수행 명령에 대응되는 작업을 수행한다. 구체적으로, 인쇄 엔진 유닛, 스캐닝 유닛, 팩스 유닛 등의 구성을 포함하여 사용자의 잡 수행 명령에 따라 작업을 수행할 수 있다.
인쇄 엔진 유닛, 스캐닝 유닛, 팩스 유닛은 널리 알려진 구성인 바, 이에 대한 구체적인 설명은 생략하도록 한다.
이상과 같이 설명한 본 발명의 일 실시 예에 따른 화상형성장치(300)는 BitTorrent 기반의 P2P방식을 이용하여 펌웨어를 다운로드받을 수 있으며, 또한 타 화상형성장치에 펌웨어 블럭을 전송할 수 있다. 이에 따라 펌웨어 전송시간을 단축시킬 수 있다.
이하에서는 화상형성장치(300)와 연결되는 추적장치(200), 관리장치(100)에 대해 설명하도록 한다.
추적장치(200)는 통신 인터페이스부(210), 제어부(220) 및 저장부(230)를 포함할 수 있다.
통신 인터페이스부(210)는 추적장치(200)를 관리장치(100) 및 화상형성장치(300)와 연결하기 위한 구성으로, 근거리 통신망(LAN) 및 인터넷 망을 통하여 무선 또는 유선 방식으로 통신을 수행할 수 있다.
통신 인터페이스부(210) 연결된 적어도 하나의 화상형성장치(300)로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신받을 수 있다.
그리고, 통신 인터페이스부(210)는 제어부(220)의 제어에 따라 생성된 펌웨어 블럭 배포 리스트를 화상형성장치(300)에 전송할 수 있다.
한편, 통신 인터페이스부(210)는 관리장치(100)로부터 업데이트 정보를 수신받을 수 있다. 상술한 바와 같이 업데이트 정보는 펌웨어 버전 정보, 펌웨어 데이터 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보 중 적어도 하나를 포함할 수 있다.
제어부(220)는 화상형성장치(300)로부터 펌웨어 블럭 배포 리스트를 요청받는 경우, 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 이용하여 펌웨어 블럭 배포 리스트를 생성할 수 있다.
일 예로, 제1 펌웨어 블럭 배포 리스트 전송요청을 받는 경우, 제1 펌웨어 블럭을 가지고 있는 화상형성장치를 각각 화상형성장치로부터 수신받은 펌웨어 블럭 전송 상태를 기초로 검색을 하고, 검색 결과 펌웨어 업데이트를 수행하지 않은 화상형성장치를 선정하여 리스트로 생성한다.
즉, 해당 펌웨어 블럭을 가지고 있으며, 펌웨어 업데이트를 수행하지 않는 화상형성장치를 선정하여 펌웨어 블럭 배포 리스트에 포함시킬 수 있다.
그리고, 제어부(220)는 펌웨어 블럭 배포 리스트를 화상형성장치(300)에 전송하도록 통신 인터페이스부(210)를 제어할 수 있다.
한편, 제어부(220)는 업데이트 정보에 포함된 필터 정보에 따른 네트워크 범위 내에서 화상형성장치를 선정하여 펌웨어 블럭 배포 리스트를 생성할 수 있다. 구체적인 설명은 이하 도 7을 참고하여 구체적으로 설명하도록 한다.
한편, 제어부(220)는 추적장치(200) 내의 각 구성에 대한 제어를 수행하기 위한 CPU, ROM, RAM등의 구성이 내부버스를 통하여 상호 연결되어 구현될 수 있다.
저장부(230)는 연결된 화상형성장치 각각으로부터 수신한 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 저장할 뿐만 아니라 관리장치(100)에서 수신한 업데이트 정보, 제어부(220)에서 생성한 각각의 펌웨어 블럭 배포 리스트를 일시적으로 저장할 수 있다.
한편, 저장부(230)는 추적장치(200) 내의 저장매체 및 외부 저장 매체, 예를 들어, USB 메모리를 포함한 Removable Disk, 네트워크를 통한 웹서버(Web server) 등으로 구현될 수 있다. 본 실시 예에서는 하나의 저장부(230)만을 도시하고 설명하였지만, 저장부(230)는 데이터 저장을 위한 메모리 및 명령어 처리를 위한 구분된 메모리로 구현될 수 있다.
이상과 같이 설명한 본 발명의 일 실시 예에 따른 추적장치(200)는 화상형성장치(300)에게 전송받을 특정 펌웨어 블럭의 리스트를 제공하여 P2P방식의 펌웨어 전송을 가능하게 하며, 또한 필터 정보를 이용하여 펌웨어 블럭의 리스트를 생성함으로써 네트워크적으로 가까운 화상형성장치로부터 펌웨어를 안정적으로 수신할 수 있게 한다.
관리장치(100)는 사용자 인터페이스부(110), 제어부(120), 통신 인터페이스부(130) 및 저장부(140)를 포함할 수 있다.
사용자 인터페이스부(110)는 관리장치(100)에서 지원하는 각종 기능을 사용자가 설정 또는 선택할 수 있는 다수의 기능키들을 구비하며, 관리장치(100)에서 제공되는 각종 정보 표시할 수 있다. 사용자 인터페이스부(110)는 터치패드 등과 같이 입력과 출력이 동시에 구현되는 장치로 구현될 수도 있고, 마우스, 키보드 등과 같은 입력 장치 및 CRT 모니터, LCD 모니터, LED 등과 같은 표시 장치를 결합하여 구현될 수도 있다.
사용자 인터페이스부(110)는 업데이트할 펌웨어와 펌웨어의 업데이트 정보를 입력받을 수 있는 사용자 인터페이스 창을 표시할 수 있다. 사용자 인터페이스부(110)가 표시할 수 있는 사용자 인터페이스 창에 대해서는 도 8을 참고하여 후술한다.
그리고, 사용자 인터페이스부(110)는 제어부(120)의 제어에 따라 펌웨어 업데이트와 관련된 정보를 표시할 수 있다. 구체적으로, 사용자 인터페이스부(110)는 각각의 화상형성장치별로 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 사용자 인터페이스 창을 통하여 표시할 수 있다.
한편, 사용자 인터페이스부(110)는 연결된 화상형성장치에 잡을 수행하기 위한 잡 수행 명령을 입력받을 수 있으며, 화상형성장치의 종합적인 상태를 표시하여 모니터링 할 수 있게 한다.
제어부(120)는 업데이트 정보를 추적장치(200) 및 펌웨어 업데이트 대상이 되는 적어도 하나의 화상형성장치(300)에 전송하도록 통신 인터페이스부(130)를 제어한다. 구체적으로, 사용자 인터페이스부(110)로부터 입력받은 펌웨어의 업데이트 정보를 추적장치(200) 및 펌웨어 업데이트 대상으로 선택된 화상형성장치(300)에 전송할 수 있다.
여기서, 제어부(120)는 업데이트할 펌웨어를 기 설정된 다수의 블럭으로 분리할 수 있다. 이는, bitTorrent기반의 P2P방식의 전송을 하기 위함으로, 하나의 펌웨어 파일을 기 설정된 블럭 단위로 나눠 다수의 펌웨어 블럭을 생성할 수 있다.
또한, 제어부(120)는 사용자 인터페이스부(110)로부터 입력받은 업데이트 정보를 기초하여 토렌트파일(확장자가 torrent인 파일)를 생성할 수 있다.
본 발명의 일 실시 예에서는 펌웨어의 업데이트 정보는 bitTorrent 프로토콜의 토렌트 파일로 구현될 수 있다.
한편, 제어부(120)는 연결된 화상형성장치(300)로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신받아 화상형성장치별로 표시하도록 사용자 인터페이스부(110)를 제어할 수 있다.
한편, 제어부(120)는 관리장치(100) 내의 각 구성에 대한 제어를 수행하기 위한 CPU, ROM, RAM등의 구성이 내부버스를 통하여 상호 연결되어 구현될 수 있다.
통신 인터페이스부(130)는 화상형성장치(300) 또는 추적장치(200)에 사용자 인터페이스부(110)에서 입력받은 펌웨어의 업데이트 정보를 전송할 수 있다.
또한, 통신 인터페이스부(130)는 화상형성장치(300)로부터 펌웨어 블럭의 다운로드 요청이 수신되는 경우, 펌웨어 블럭을 화상형성장치(300)로 전송할 수 있다.
그리고, 통신 인터페이스부(130)는 연결된 각각의 화상형성장(300)로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 수신할 수 있다.
한편, 통신 인터페이스부(130)는 관리장치(100)를 추적장치(200) 및 화상형성장치(300)와 연결하기 위한 구성으로, 근거리 통신망(LAN) 및 인터넷 망을 통하여 무선 또는 유선 방식으로 통신을 수행할 수 있다.
저장부(140)는 펌웨어 파일을 블럭단위로 분리된 다수의 펌웨어 블럭과 업데이트 정보를 저장할 수 있다. 또한, 저장부(140)는 연결된 화상형성장치 각각으로부터 수신한 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 저장할 수 있다.
관리장치(100) 내의 저장매체 및 외부 저장 매체, 예를 들어, USB 메모리를 포함한 Removable Disk, 네트워크를 통한 웹서버(Web server) 등으로 구현될 수 있다. 본 실시 예에서는 하나의 저장부(130)만을 도시하고 설명하였지만, 저장부(140)는 데이터 저장을 위한 메모리 및 명령어 처리를 위한 구분된 메모리로 구현될 수 있다.
이상과 같이 본 발명에 따른 관리장치(100)는 각각의 화상형성장치의 펌웨어 업데이트 상태를 모니터링 할 수 있으며, 경우에 따라 전송이 완료된 화상형성장치에 펌웨어 업데이트 지시 명령을 내려 업데이트를 수행할 수 있게 한다.
도 3은 본 발명의 다양한 실시 예에 따른 관리장치(400)의 구성을 도시한 블럭도이다.
도 2에서는 관리장치(100)와 추적장치(200)를 별도의 장치로 설명하였으나, 구현 방법에 따라 도 3과 같이 추적장치(200)의 기능을 함께 포함하는 관리장치(400)로 구현될 수 있다.
도 3를 참고하면, 추적장치 기능을 포함하고 있는 관리장치(400)는 사용자 인터페이스부(410), 제어부(420), 통신 인터페이스부(430) 및 저장부(440)를 포함할 수 있다.
추적장치 기능을 포함하고 있는 관리장치(400)의 사용자 인터페이스부(410), 제어부(420), 통신 인터페이스부(430) 및 저장부(440)는 도 2의 관리장치(100)의 각 구성의 기능을 모두 수행할 수 있으므로 중복되는 설명은 생략하도록 한다.
제어부(420)는 도 2의 관리장치(100)의 제어부(120)의 기능에 더하여, 화상형성장치(300)로부터 펌웨어 블럭 배포 리스트를 요청받는 경우, 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 이용하여 펌웨어 블럭 배포 리스트를 생성할 수 있으며 또한, 제어부(420)는 펌웨어 블럭 배포 리스트를 화상형성장치(300)에 전송하도록 통신 인터페이스부(430)를 제어할 수 있다.
한편, 제어부(420)는 업데이트 정보에 포함된 필터 정보에 따른 네트워크 범위 내에서 화상형성장치를 선정하여 펌웨어 블럭 배포 리스트를 생성할 수 있다.
통신 인터페이스부(430)는 도 2의 관리장치(100)의 통신 인터페이스부(130)의 기능에 더하여, 제어부(420)의 제어에 따라 생성된 펌웨어 블럭 배포 리스트를 화상형성장치(300)에 전송할 수 있다.
저장부(440)는 제어부(220)에서 생성한 각각의 펌웨어 블럭 배포 리스트를 일시적으로 저장할 수도 있다.
위와 같이 설명한 도 3의 관리장치(400)는 도 2의 관리장치(100)의 기능뿐만 아니라 도 2의 추적장치(200)의 기능을 수행할 수 있다.
도 4는 본 발명의 일 실시 예에 따른 화상형성장치(300)의 펌웨어 업데이트 방법을 설명하기 위한 도면이다.
도 4를 참고하면, (1)관리장치(100)에서 펌웨어 파일을 등록하고, 업데이트 정보를 입력받을 수 있다.
그리고, (2)관리장치(100)는 추적장치(200)에 업데이트 정보를 전송하고, (3)펌웨어 업데이트를 수행할 MFP(Multi Function Peripheral, 이하 화상형성장치로 칭한다)(300-1, 300-2)에 업데이트 정보를 전송할 수 있다.
(4)업데이트 정보를 수신한 화상형성장치(300-1)은 펌웨어 업데이트 여부를 판단한다. 업데이트 여부 판단 기준은 도 2에서 상술한 바와 같이 펌웨어 버전 정보를 기초로 판단할 수 있다. 판단 결과, 펌웨어 업데이트가 필요하다고 판단되는 경우, (5)화상형성장치(300-1)은 추적장치(200)에 다운받고자하는 펌웨어 블럭을 전송받을수 있는 펌웨어 블럭 배포 리스트를 요청하여 취득할 수 있다.
그 후, (6) 화상형성장치(300-1)는 펌웨어 블럭 배포 리스트를 기초로 가장 트래픽이 적은 타 화상형성장치(300-2) 또는 관리장치(100)에 펌웨어 블럭의 다운로드를 요청하여 펌웨어 블럭을 수신받을 수 있다.
그리고, (7) 화상형성장치는 펌웨어 블럭 전송 상태 및 업데이트 상태를 관리장치(100) 및 추적장치(200)에 전송할 수 있다.
화상형성장치(300-1)는 펌웨어 파일의 모든 블럭을 다운로드 할 때까지, (5)~(7)단계를 반복하여, 모든 펌웨어 블럭을 수신하는 경우 신규 펌웨어를 생성하여 업데이트를 수행할 수 있다.
도 5는 본 발명의 일 실시 예에 따른 화상형성장치의 펌웨어 업데이트 동작을 설명하기 위한 타이밍도이다.
도 5를 참고하면, 관리장치(100)에서 펌웨어 업데이트 설정이 입력되면(501), 관리장치(100)는 추적장치(200)로 업데이트 정보를 전송할 수 있다(502).
여기서, 업데이트 정보는 bitTorrent프로토콜의 토렌트 파일일 수 있다.
추적장치(200)는 수신된 업데이트 정보를 등록할 수 있다(503).
그리고, 관리장치(100)는 제1 MFP(Multi Function Peripheral, 이하 화상형성장치로 칭한다)(300-1)에 펌웨어 업데이트 정보를 전송할 수 있다(504).
여기서, 제1 화상형성장치(300-1)는 지속 시드로 선정되어 있다고 가정한다.
제1 화상형성장치(300-1)는 제1 펌웨어 블럭을 다운로드하기 위하여, 추적장치(200)에 제1 펌웨어 블럭 배포 리스트를 요청하고(506), 이에 따라 추적장치(200)는 제1 화상형성장치(300-1)에 제1 펌웨어 블럭 배포 리스트를 전송할 수 있다(507).
여기서, 제1 펌웨어 블럭 배포 리스트에는 관리장치(100)만 포함되어 있다.
따라서, 제1 화상형성장치(300-1)은 관리장치(100)에 제1 펌웨어 블럭의 전송을 요청하고(508), 관리장치(509)는 요청에 대응하여 제1 펌웨어 블럭을 제1 화상형성장치(300-1)에 전송할 수 있다(509).
그리고, 제1 화상형성장치(300-1)는 제1 펌웨어 블럭 전송 상태를 관리장치(100) 및 추적장치(200)에 전송할 수 있다(510). 이는 관리장치(100)로 하여금 펌웨어 블럭의 다운로드 상태를 모니터링하기 위함이다.
한편, 추적장치(200)는 제1 펌웨어 블럭 전송 상태를 수신받아 제1 펌웨어 블럭을 가지고 있는 장치의 리스트에 제1 화상형성장치(300-1)를 추가시킬 수 있다.
그리고, 관리장치(100)는 제2 화상형성장치(300-2)에 업데이트 정보를 전송한다(511). 여기서, 관리장치(100)는 제2 화상형성장치(300-2)보다 제1 화상형성장치(300-1)에 먼저 업데이트 정보를 전송하는 것으로 설명하였으나, 네트워크에 연결된 화상형성장치에 동시에 전송할 수 있으며, 또한 그 순서를 바꿔 전송할 수 도 있다.
이 후, 제2 화상형성장치(300-2)는 506, 507 단계와 동일하게 추적장치(200)에 제1 펌웨어 블럭 배포 리스트를 요청하고(512), 추적장치(200)는 제2 화상형성장치(300-2)에 전송할 수 있다(513).
여기서, 제1 펌웨어 블럭 배포 리스트에는 관리장치(100)뿐만 아니라, 제1 화상형성장치(300-1)도 포함되어 있다.
따라서, 제2 화상형성장치(300-2)는 관리장치(100) 또는 제1 화상형성장치(300-1)에 제1 펌웨어 블럭의 전송을 요청할 수 있다.
한편, 제2 화상형성장치(300-1)는 관리장치(100) 또는 제1 화상형성장치(300-1) 중 어느 하나를 선택하여 제1 펌웨어 블럭의 전송을 요청할 수 있다. 선택의 기준으로, 네트워크 트래픽 상태, 지속 시드 여부 등이 고려될 수 있다.
이하 514~516 단계는 제1 화상형성장치(300-1)에 제1 펌웨어 블럭을 요청하여 전송받는 단계를 나타내며, 517~519 단계는 관리서버(100)에 제1 펌웨어 블럭을 요청하여 전송받는 단계를 나타낸다.
514~516 단계 및 517~519단계는 상술한 508~509단계와 동일한 방식으로 수행되므로 중복되는 내용은 생략하도록 한다.
위와 같은 방식으로 제2 펌웨어 블럭 내지 제n 펌웨어 블럭(펌웨어가 n개의 블럭으로 분리되었다고 가정)을 업데이트를 수행하는 각각의 화상형성장치에 배포할 수 있다.
제1 화상형성장치(300-1)에 모든 펌웨어 블럭을 다운로드 완료한 경우(520), 바로 펌웨어 업데이트를 수행하지 않고, 다운로드 완료한 상태만 관리장치(100) 및 추적장치(200)에 전송할 수 있다(521).
이는 제1 화상형성장치(300-1)가 지속 시드로 선정되어 있기 때문에, 펌웨어 블럭의 배포를 위해 업데이트를 수행하지 않는 것이다.
반대로, 지속 시드로 선정되지 않은 제2 화상형성장치(300-2)는 모든 펌웨어 블럭을 다운로드 완료한 경우(522), 신규 펌웨어를 생성하여 펌웨어 업데이트를 수행할 수 있다(523).
펌웨어 업데이트를 수행하고, 제2 화상형성장치(300-2)는 업데이트 상태를 관리장치(100) 및 추적장치(200)에 전송할 수 있다.
한편, 지속 시드로 선정된 제1 화상형성장치(300-1)은 관리장치(100)에서 별도의 업데이트 지시가 수신되는 경우(525), 펌웨어 업데이트를 수행할 수 있다(526).
위와 같이 지속 시드로 선정된 화상형성장치는 펌웨어 블럭을 모두 수신하였더라도, 바로 업데이트를 수행하지 않고 타 화상형성장치에 펌웨어 블럭을 배포하는 기능을 수행한다.
도 6은 본 발명의 다양한 실시 예에 따른 화상형성장치의 펌웨어 업데이트 동작을 설명하기 위한 타이밍도이다.
도 6은 본 발명의 다양한 실시 예에 따른 펌웨어 블럭의 배포과정 이후에 펌웨어 업데이트 수행동작을 설명한다. 도 5의 520~524단계와 도 6의 610~614단계는 동일한 방식으로 수행되며, 중복 설명은 생략한다.
도 6을 참고하면, 도 5에서 설명한 바와 같이 지속 시드로 선정된 제1 화상형성장치(300)는 모든 펌웨어 블럭을 다운로드 완료한 경우(610), 바로 펌웨어 업데이트를 수행하지 않고, 다운로드 완료한 상태만 관리장치(100) 및 추적장치(200)에 전송할 수 있다(611).
이후, 지속 시드 정보에 포함되어 있는 지속 유지 시간이 경과되어 만족하는 경우(615), 지속 시드로 선정된 화상형성장치(300)는 펌웨어 블럭을 중단하고, 펌웨어 업데이트를 수행할 수 있다(616)
위와 같이 관리장치(100)의 별도의 지시가 없더라도 사용자가 입력한 지속 유지 시간이 경과하면, 화상형성장치는 자동적으로 업데이트를 수행할 수 있다.
도 7은 본 발명의 일 실시 예에 따른 필터 정보를 이용한 화상형성장치의 펌웨어 업데이트 동작을 설명하기 위한 도면이다.
도 7을 참고하면, 하나의 관리장치(100) 및 추적장치(200)에 2개의 네트워크(301, 302)가 공통되어 연결되어 있다.
(10.10.*.*)의 주소를 가지는 제1 네트워크(301)의 화상형성장치에서 (10.11.*.*)의 주소를 가지는 제2 네트워크(302)의 화상형성장치에 데이터를 전송하는 경우, 동일 네트워크상의 화상형성장치에 데이터를 전송하는 것보다 불안정하며, 전송이 지연될 확률이 높다.
따라서, 사용자는 펌웨어 블럭을 배포하는 화상형성장치의 네트워크의 범위를 설정하여, 일정 범위 내의 화상형성장치로부터 펌웨어 블럭을 전송받도록 할 수 있다.
이러한 네트워크 범위는 상술한 업데이트 정보의 필터 정보에 포함될 수 있다.
도 8은 본 발명의 일 실시 예에 따른 화상형성장치의 펌웨어 업데이트 정보를 입력받는 관리장치의 UI(User Interfac)를 설명하기 위한 도면이다.
구체적으로, 도 8은 관리장치(100)의 사용자 인터페이스부(110)에 표시되는 펌웨어의 업데이트 정보를 입력받을 수 있는 사용자 인터페이스 창(800)의 일 실시 예에 해당한다.
도 8을 참고하면, 사용자 인터페이스 창(800)은 장치 목록(810), 펌웨어 파일 설정 메뉴(820), 펌웨어 업데이트 설정 메뉴(830)를 포함할 수 있다.
장치 목록(810)은 관리장치(100)에 연결되어 있는 화상형성장치의 목록을 표시할 수 있다. 구체적으로, 각 화상형성장치 별로 동작 상태, IP주소, 모델명, 펌웨어 버전을 나타내는 리스트(812)와 펌웨어 업데이트를 실행할 화상형성장치를 선택하는 체크 박스(811)로 표시될 수 있다.
펌웨어 파일 설정 메뉴(820)를 통하여, 사용자는 업데이트할 펌웨어를 선택할 수 있다.
펌웨어 업데이트 설정 메뉴(830)를 통하여, 업데이트 정보를 입력받을 수 있다. 상술한 바와 같이 업데이트 정보는 지속 시드 정보, 필터 정보 및 펌웨어 다운로드 시작 정보를 포함한다. 그리고, 업데이트 정보는 최대 다운로드/업로드 속도 제한 정보를 포함할 수 있다.
펌웨어 다운로드 시작 정보는 업데이트 정보를 수신받은 화상형성장치가 펌웨어 다운로드를 시작하는 시간을 지정한다. 이를 통하여 네트워크 유휴시간을 활용할 수 있다.
필터 정보는 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하기 위한 정보이다. 도 7에서 설명한 바와 같이 펌웨어 블럭의 안정적인 배포 및 전송속도를 높이기 위함이다.
지속 시드 정보는 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드에 대한 정보로, 지속 시드 선정 정보 및 지속 시드 유지 일시 정보를 포함할 수 있다.
지속 시드 선정은 사용자가 직접 선정하는 수동방식과 기설정된 알고리즘에 의해 선정하는 자동방식이 있어 이를 선택할 수 있다.
자동방식은 아래의 표 1과 같은 규칙이 적용되며, 사용자가 선택한 항목들은 AND 조건으로 적용될 수 있다. 자동방식으로 지속 시드가 선정되지 않은 경우, 관리장치(100)는 경고 메세지를 표시할 수 있다.
항목
선정비율 선정된 화상형성장치 중 지속 시드로 사용할 화상형성장치의 최대비율(%)로서 항상 정수값으로 계산됨
계산된 화상형성장치의 수가 1보다 작을 경우 1로 설정
저장공간 화상형성장치의 저장부의 크기
일 예로, 사용자가 선정비율:5%, 저장공간:100MB의 규칙으로 100대의 화상형성장치를 선택하면 100MB의 저장공간을 갖는 화상형성장치를 5대 선정할 수 있다. 만약 이 조건을 만족하는 화상형성장치가 3대인 경우 3대가 지속 시드로 선정될 수 있다.
한편, 지속 시드 유지 일시 정보는 지속 시드로 선정된 화상형성장치가 무한정 업데이트가 진행되지 않는 것을 방지하는데 이용될 수 있다.
최대 다운로드/업로드 속도 제한 정보를 통하여 펌웨어 블럭을 전송 또는 수신할때의 최대 속도를 설정할 수 있다. 여기서, 속도는 단위 초당 전송할 수 있는 데이터 크기를 의미한다. 최대 다운로드/업로드 속도 제안 정보를 통하여 네트워크 트래픽 발생을 제한할 수 있다.
이와 같은 사용자 인터페이스 창을 통하여, 관리장치(100)는 사용자에게 펌웨어의 업데이트 정보를 입력받을 수 있다. 이러한 업데이트 정보는 P2P방식의 특성을 고려한 펌웨어 업데이트 절차에 이용되며, 이를 통하여 화상형성장치의 펌웨어 업데이트 관리방식을 개선할 수 있게 된다.
도 9는 본 발명의 다양한 실시 예에 따른 네트워크 확장을 통한 펌웨어 업데이트 동작을 설명하기 위한 도면이다. 구체적으로, 도 9는 분리된 네트워크에서의 펌웨어 업데이트 동작을 설명한다.
도 9를 참고하면, 제1 관리장치(100-1) 및 제1 추적장치(200-1)에 연결된 제1 네트워크와 제2 관리장치(100-2) 및 제2 추적장치(200-2)에 연결된 제2 네트워크는 분리되어 존재한다.
제1 관리장치(100-1)는 제2 관리장치(100-2)로부터 분리된 네트워크상의 화상형성장치의 정보를 확인하고 펌웨어 업데이트 정보를 설정할 수 있다.
그리고, 제1 관리장치(100-1)는 제2 관리장치(100-2)에 펌웨어 파일 및 업데이트 정보를 전송하여 펌웨어 업데이트를 수행하게 할 수 있다. 이후, 펌웨어 배포 및 업데이트 동작은 도 2 내지 도 8에서 상술한 방법과 동일하게 이루어진다.
제2 관리장치는 펌웨어 업데이트가 완료되는 경우, 그 결과를 제1 관리장치에 전송할 수 있다.
위와 같은 방법을 통하여, 지점, 본사, 해외지사 등 분산된 네트워크를 가지고 있는 환경에서 펌웨어 업데이트를 제1 관리장치(100-1)의 관리하에 수행할 수 있게 된다.
도 10 및 도 11은 본 발명의 일 실시 예에 따른 화상형성장치의 펌웨어 업데이트 방법을 설명하기 위한 흐름도이다.
도 10을 참고하면, 화상형성장치(300)는 펌웨어 업데이트가 필요한지를 판단한다(S1010).
화상형성장치(300)와 연결된 관리장치(100)로부터 업데이트 정보를 수신하면, 펌웨어 업데이트가 필요한 것으로 판단할 수 있다.
여기서 업데이트 정보는, 상술한 바와 같이 펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치(200)의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치(300)의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함할 수 있다.
이 후, 펌웨어 업데이트가 필요하다고 판단되면(S1010:Yes), 화상형성장치(100)는 펌웨어 블럭 배포 리스트를 추적장치(200)로부터 취득한다(S1020).
구체적으로, 화상형성장치(300)는 추적장치(200)에 펌웨어 블럭 배포 리스트를 요청하고, 추적장치(200)는 해당 펌웨어 블럭의 배포 리스트를 생성하여 화상형성장치(300)에 전송할 수 있다.
그리고, 화상형성장치(300)는 취득된 펌웨어 블럭 배포 리스트에 기초하여, 타 화상형성장치로부터 펌웨어 블럭을 수신한다(S1030).
한편, 화상형성장치(300)는 타 화상형성장치 뿐만아니라 화상형성장치(300)와 연결된 관리장치(100)로부터 펌웨어 블럭을 수신할 수도 있다.
여기서, 화상형성장치(300)는 취득된 펌웨어 블럭 배포 리스트 중에서 통신 트래픽이 가장 적은 타 화상형성장치 또는 관리장치로부터 펌웨어 블럭을 수신할 수 있다.
그리고, 화상형성장치(300)는 S1020, S1030 단계를 반복하여, 펌웨어 블럭을 모두 수신하는 경우(S1040:Yes), 수신된 펌웨어 블럭을 결합하여 신규 펌웨어를 생성하고, 생성된 신규 펌웨어를 이용하여 펌웨어 업데이트를 수행한다(S1050).
이상 도 10을 참고하여 화상형성장치(300)의 펌웨어 업데이트 방법에 대해 설명하였다. 아래의 도 11은 도 10의 화상형성장치(300)의 펌웨어 업데이트 방법를 더 상세하게 구체화한 흐름도이다.
도 11을 참고하면, 화상형성장치(300)와 연결된 관리장치(100)로부터 업데이트 정보를 수신하면, 펌웨어 업데이트가 필요한 것으로 판단하여 펌웨어 업데이트 방법을 진행할 수 있다(S1110).
여기서 업데이트 정보는, 상술한 바와 같이 펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치(200)의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치(300)의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함할 수 있다.
그리고, 화상형성장치(300)는 펌웨어 버전 정보를 현재 화상형성장치(300)에 설치되어 구동중인 펌웨어 버전과 비교하여 펌웨어 업데이트가 필요한지 판단할 수 있다(S1120). 여기서, 화상형성장치(300)는 현재 구동중인 펌웨어 버전이 더 최신이거나 동일한 경우 펌웨어 업데이트가 필요없다고 판단할 수 있으며, 반대로 현재 구동중인 펌웨어 버전이 낮은 경우 펌웨어 업데이트가 필요하다고 판단할 수 있다.
한편, 화상형성장치(300)는 펌웨어 다운로드 시작 정보에 따라 다운로드 시작시간이 경과하는 경우 펌웨어 업데이트가 필요하다고 판단할 수 있다.
판단 결과 펌웨어 업데이트가 필요하다고 판단되면(S1120:YES), 화상형성장치(300)는 펌웨어 블럭 배포 리스트를 추적장치(200)로부터 취득할 수 있다(S1130).
구체적으로, 화상형성장치(300)는 추적장치(200)에 펌웨어 블럭 배포 리스트를 요청하고, 추적장치(200)는 해당 펌웨어 블럭의 배포 리스트를 생성하여 화상형성장치(300)에 전송할 수 있다.
그리고, 화상형성장치(300)는 취득된 펌웨어 블럭 배포 리스트에 기초하여, 타 화상형성장치로부터 펌웨어 블럭을 수신한다(S1140).
한편, 화상형성장치(300)는 타 화상형성장치 뿐만아니라 화상형성장치(300)와 연결된 관리장치(100)로부터 펌웨어 블럭을 수신할 수도 있다.
여기서, 화상형성장치(300)는 취득된 펌웨어 블럭 배포 리스트 중에서 통신 트래픽이 가장 적은 타 화상형성장치 또는 관리장치로부터 펌웨어 블럭을 수신할 수 있다.
그리고, 화상형성장치(300)는 S1130, S1140 단계를 반복하여, 펌웨어 블럭을 모두 수신하는 경우(S1150:Yes), 수신된 펌웨어 블럭을 결합하여 신규 펌웨어를 생성할 수 있다(S1160).
생성된 신규 펌웨어를 이용하여 펌웨어 업데이트를 수행하는지 여부는 아래와 같은 단계를 거친다.
우선, 화상형성장치(300)가 지속 시드로 선정되었는지 판단할 수 있다(S1170).
여기서, 화상형성장치(300)가 지속 시드로 선정되지 않은 경우(S1170:NO), 신규 펌웨어가 생성된 즉시 펌웨어 업데이트를 수행할 수 있다.
반대로, 화상형성장치(300)가 지속 시드로 선정된 경우(S1170:YES). 펌웨어 업데이트를 바로 수행하지 않는다. 이는 상술한 바와 같이 지속 시드로 선정된 화상형성장치는 타 화상형성장치에게 펌웨어 블럭을 지속적으로 전송하여야 하므로 펌웨어 업데이트를 바로 수행하지 않는다.
따라서, 이 경우에는 지속 시드 정보의 지속 시드 유지 일시가 지나거나(S1180:YES), 또는 관리장치(100)로부터 펌웨어 업데이트 수행명령을 수신하는 경우(S1185:YES)에만 생성된 신규 펌웨어를 이용하여 펌웨어 업데이트를 수행할 수 있다(S1190).
한편, 도 10 또는 도 11과 같은 화상형성장치의 펌웨어 업데이트 방법은, 도 2의 구성을 가지는 화상형성장치(300)에서 실시될 수 있으며, 그 밖의 구성을 가지는 화상형성장치에서도 실행될 수 있다.
도 12는 본 발명의 일 실시 예에 따른 추적장치(200)의 화상형성장치 펌웨어 업데이트 방법을 설명하기 위한 흐름도이다.
도 12를 참고하면, 추적장치(200)에 연결된 적어도 하나의 화상형성장치로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신한다(S1210).
한편, 추적장치(200)는 S1210단계 이전에, 관리장치(100)로부터 펌웨어 버전 정보, 펌웨어 데이터 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보 중 적어도 하나를 포함하는 업데이트 정보를 수신받을 수 있다.
그리고, 추적장치(200)는 화상형성장치(300)로부터 펌웨어 블럭 배포 리스트를 요청받는 경우, 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 이용하여 펌웨어 블럭 배포 리스트를 생성한다(S1220).
구체적으로, 화상형성장치(300)로부터 특정 펌웨어 블럭을 전송할 수 있는 화상형성장치의 리스트인 펌웨어 블럭 배포 리스트를 요청받는 경우, 추적장치(200)는 연결된 화상형성장치의 펌웨어 블럭 전송 상태와 펌웨어 업데이트 상태를 고려하여 해당 펌웨어 블럭을 전송가능한 화상형성장치의 리스트를 생성할 수 있다.
한편, 추적장치(200)는 관리장치(100)로부터 수신받은 필터 정보에 따라 배포가능한 화상형성장치의 네트워크 범위 중에서 선정하여 펌웨어 블럭 배포 리스트를 생성할 수 있다. 이에 대한 설명은 도 7에서 구체적으로 설명하였는 바, 중복설명은 생략한다.
이후, 추적장치(200)는 리스트를 요청한 화상형성장치(300)에 펌웨어 블럭 배포 리스트를 전송할 수 있다(S1130).
상술한 도 12와 같은 추적장치(200)의 펌웨어 업데이트 방법을 통하여 화상형성장치(300)에게 전송받을 특정 펌웨어 블럭의 리스트를 제공하여 P2P방식의 펌웨어 전송을 가능하게 하며, 또한 필터 정보를 이용하여 펌웨어 블럭의 리스트를 생성함으로써 네트워크적으로 가까운 화상형성장치로부터 펌웨어를 안정적으로 수신할 수 있게 한다.
한편, 도 12와 같은 추적장치의 화상형성장치 펌웨어 업데이트 방법은, 도 2의 구성을 가지는 추적장치(200)에서 실시될 수 있으며, 그 밖의 구성을 가지는 추적장치에서도 실행될 수 있다.
도 13은 본 발명의 일 실시 예에 따른 관리장치(100)의 화상형성장치 펌웨어 업데이트 방법을 설명하기 위한 흐름도이다.
도 13을 참고하면, 관리장치(100)는 업데이트할 펌웨어와 펌웨어의 업데이트 정보를 입력받으면(S1310), 업데이트 정보를 추적장치(200) 및 펌웨어 업데이트 대상이 되는 적어도 하나의 화상형성장치(300)에 전송한다(S1320).
여기서 업데이트 정보는, 펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치(300)의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함할 수 있다.
이후, 화상형성장치(300)로부터 펌웨어 블럭의 다운로드 요청이 수신되는 경우, 요청된 펌웨어 블럭을 화상형성장치(300)로 전송한다(S1330).
도 13에서 설명한 바와 같이 본 발명에 따른 관리장치(100)는 사용자로부터 펌웨어 업데이트 정보를 입력받아 각 화상형성장치 및 추적장치를 제어하는 기능을 수행할 수 있다. 또한 관리장치(100)는 펌웨어의 최초 배포자로의 역할을 수행할 수 있다.
도 14는 본 발명의 다양한 실시 예에 따른 관리장치(100)의 화상형성장치 펌웨어 업데이트 방법을 설명하기 위한 흐름도이다.
도 14를 참고하면, 관리장치(100)에 연결된 적어도 하나의 화상형성장치(300)로부터 펌웨어 블럭의 전송 상태 및 펌웨어 업데이트 상태를 수신할 수 있다.
그리고, 관리장치(100)는 수신된 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 화상형성장치별로 표시할 수 있다.
상술한 바와 같이 펌웨어 블럭 전송 상태는 화상형성장치에 해당 펌웨어 블럭이 전송되어 저장하고 있는지에 대한 상태 정보이며, 펌웨어 업데이트 상태는 해당 화상형성장치에 펌웨어가 업데이트 되었는지에 대한 상태 정보이다.
도 14에서 설명한 바와 같이 본 발명에 따른 관리장치(100)는 각각의 화상형성장치의 펌웨어 업데이트 상태를 모니터링 할 수 있으며, 경우에 따라 전송이 완료된 화상형성장치에 펌웨어 업데이트 지시 명령을 내려 업데이트를 수행할 수 있게 한다.
한편, 도 13 및 도 14에 따른 관리장치의 화상형성장치 펌웨어 업데이트 방법은, 도 2의 구성을 가지는 관리장치(100)에서 실시될 수 있으며, 그 밖의 구성을 가지는 관리장치에서도 실행될 수 있다.
또한, 상술한 바와 같은 펌웨어 업데이트 방법은 컴퓨터에서 실행될 수 있는 실행 가능한 알고리즘을 포함하는 프로그램으로 구현될 수 있고, 상기 프로그램은 비일시적 판독 가능 매체(non-transitory computer readable medium)에 저장되어 제공될 수 있다.
비일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 어플리케이션 또는 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비 일시적 판독 가능 매체에 저장되어 제공될 수 있다.
이상과 같이, 본 발명의 다양한 실시 예에 따르면, BitTorrent 기반의 P2P방식을 이용하여 펌웨어 전송시간을 단축하고, P2P방식의 특성을 고려한 펌웨어 업데이트 절차를 제시하여 화상형성장치의 펌웨어 업데이트 관리방식을 개선할 수 있게된다.
한편, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어 져서는 안 될 것이다.
10 : 네트워크 100 : 관리장치
200 : 추적장치 300 : 화상형성장치

Claims (26)

  1. 추적장치 및 타 화상형성장치와 연결 가능한 화상형성장치의 펌웨어(Firmware) 업데이트 방법에 있어서,
    상기 화상형성장치의 펌웨어 업데이트가 필요한지를 판단하는 단계;
    펌웨어 블럭 배포 리스트를 상기 추적장치로부터 취득하는 단계;
    상기 취득된 펌웨어 블럭 배포 리스트에 기초하여, 상기 타 화상형성장치로부터 펌웨어 블럭을 수신하는 단계; 및
    상기 수신된 펌웨어 블럭을 결합하여 신규 펌웨어를 생성하고, 상기 생성된 신규 펌웨어를 이용하여 펌웨어 업데이트를 수행하는 단계;를 포함하는 펌웨어 업데이트 방법.
  2. 제1항에 있어서,
    상기 펌웨어 업데이트가 필요한지 판단하는 단계는,
    상기 화상형성장치와 연결된 관리장치로부터 업데이트 정보를 수신하면, 펌웨어 업데이트가 필요한 것으로 판단하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  3. 제2항에 있어서,
    상기 업데이트 정보는,
    펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  4. 제3항에 있어서,
    상기 펌웨어 업데이트를 수행하는 단계는,
    상기 지속 시드 정보에 따라 지속 시드로 선정된 경우, 지속 시드 유지 일시가 지난 후에 펌웨어 업데이트를 수행하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  5. 제3항에 있어서,
    상기 펌웨어 업데이트가 필요한지 판단하는 단계는,
    상기 펌웨어 버전 정보를 현재 구동중인 펌웨어 버전과 비교하여 펌웨어 업데이트가 필요한지 판단하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  6. 제1항에 있어서,
    상기 펌웨어 업데이트를 수행하는 단계는,
    상기 신규 펌웨어가 생성된 즉시 업데이트를 수행하거나 또는 상기 화상형성장치와 연결된 관리장치로부터 펌웨어 업데이트 수행명령을 수신받는 경우 업데이트를 수행하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  7. 제1항에 있어서,
    상기 펌웨어 블럭을 수신하는 단계는,
    상기 취득된 펌웨어 블럭 배포 리스트 중 통신 트래픽이 가장 적은 타 화상형성장치로부터 펌웨어 블럭을 수신하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  8. 제1항에 있어서,
    상기 펌웨어 블럭을 수신하는 단계는,
    상기 타 화상형성장치 및 상기 화상형성장치와 연결된 관리장치로부터 수신하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  9. 제1항에 있어서,
    상기 화상형성장치와 연결된 관리장치 및 상기 추적장치 중 적어도 하나에 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 전송하는 단계;를 더 포함하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  10. 적어도 하나의 화상형성장치 및 관리장치와 연결가능한 추적장치의 화상형성장치 펌웨어(Firmware) 업데이트 방법에 있어서,
    상기 연결된 적어도 하나의 화상형성장치로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신받는 단계;
    화상형성장치로부터 펌웨어 블럭 배포 리스트를 요청받는 경우, 상기 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 이용하여 상기 펌웨어 블럭 배포 리스트를 생성하는 단계; 및
    상기 펌웨어 블럭 배포 리스트를 상기 화상형성장치에 전송하는 단계;를 포함하는 펌웨어 업데이트 방법.
  11. 제10항에 있어서,
    상기 관리장치로부터 펌웨어 버전 정보, 펌웨어 데이터 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보 중 적어도 하나를 포함하는 업데이트 정보를 수신받는 단계;를 더 포함하고,
    상기 펌웨어 블럭 배포 리스트를 생성하는 단계는,
    상기 필터 정보에 따른 네트워크 범위 내에서 화상형성장치를 선정하여 펌웨어 블럭 배포 리스트를 생성하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  12. 적어도 하나의 화상형성장치 및 추적장치와 연결가능한 관리장치의 화상형성장치 펌웨어(Firmware) 업데이트 방법에 있어서,
    상기 펌웨어의 업데이트 정보를 입력받는 단계;
    상기 업데이트 정보를 상기 추적장치 및 펌웨어 업데이트 대상이 되는 적어도 하나의 화상형성장치에 전송하는 단계; 및
    화상형성장치로부터 펌웨어 블럭의 다운로드 요청이 수신되는 경우, 상기 펌웨어 블럭을 상기 화상형성장치로 전송하는 단계;를 포함하고,
    상기 업데이트 정보는,
    펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함하는 펌웨어 업데이트 방법.
  13. 제12항에 있어서,
    상기 연결된 적어도 하나의 화상형성장치로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신받는 단계; 및
    상기 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 화상형성장치별로 표시하는 단계;를 더 포함하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  14. 추적장치 및 타 화상형성장치와 연결 가능한 화상형성장치에 있어서,
    저장부;
    상기 화상형성장치의 펌웨어 업데이트가 필요한지를 판단하는 제어부; 및
    펌웨어 블럭 배포 리스트를 상기 추적장치로부터 취득하는 통신 인터페이스부;를 포함하고,
    상기 제어부는,
    상기 취득된 펌웨어 블럭 배포 리스트에 기초하여, 상기 타 화상형성장치로부터 펌웨어 블럭을 수신하여 상기 저장부에 저장하고, 상기 수신된 펌웨어 블럭을 결합하여 신규 펌웨어를 생성하고, 상기 생성된 신규 펌웨어를 이용하여 펌웨어 업데이트를 수행하는 화상형성장치.
  15. 제14항에 있어서,
    상기 제어부는,
    상기 화상형성장치와 연결된 관리장치로부터 업데이트 정보를 수신하면, 펌웨어 업데이트가 필요한 것으로 판단하는 것을 특징으로 하는 화상형성장치.
  16. 제15항에 있어서,
    상기 업데이트 정보는,
    펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함하는 것을 특징으로 하는 화상형성장치.
  17. 제16항에 있어서,
    상기 제어부는,
    상기 지속 시드 정보에 따라 지속 시드로 선정된 경우, 지속 시드 유지 일시가 지난 후에 펌웨어 업데이트를 수행하는 것을 특징으로 하는 화상형성장치.
  18. 제16항에 있어서,
    상기 제어부는,
    상기 펌웨어 버전 정보를 현재 구동중인 펌웨어 버전과 비교하여 펌웨어 업데이트가 필요한지 판단하는 것을 특징으로 하는 화상형성장치.
  19. 제14항에 있어서,
    상기 제어부는,
    상기 신규 펌웨어가 생성된 즉시 업데이트를 수행하거나 또는 상기 화상형성장치와 연결된 관리장치로부터 펌웨어 업데이트 수행명령을 수신받는 경우 업데이트를 수행하는 것을 특징으로 하는 화상형성장치.
  20. 제14항에 있어서,
    상기 제어부는,
    상기 취득된 블럭 배포 리스트 중 통신 트래픽이 가장 적은 타 화상형성장치로부터 펌웨어 블럭을 수신하는 것을 특징으로 하는 화상형성장치.
  21. 제14항에 있어서,
    상기 제어부는,
    상기 타 화상형성장치 및 상기 화상형성장치와 연결된 관리장치로부터 상기 펌웨어 블럭을 수신하는 것을 특징으로 하는 화상형성장치.
  22. 제14항에 있어서,
    상기 제어부는,
    상기 화상형성장치와 연결된 관리장치 및 상기 추적장치 중 적어도 하나에 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 전송하는 것을 특징으로 하는 화상형성장치.
  23. 적어도 하나의 화상형성장치 및 관리장치와 연결가능한 추적장치에 있어서,
    상기 연결된 적어도 하나의 화상형성장치로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신받는 통신 인터페이스부; 및
    화상형성장치로부터 펌웨어 블럭 배포 리스트를 요청받는 경우, 상기 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태를 이용하여 상기 펌웨어 블럭 배포 리스트를 생성하는 제어부;를 포함하고,
    상기 제어부는,
    상기 펌웨어 블럭 배포 리스트를 상기 화상형성장치에 전송하도록 상기 통신 인터페이스부를 제어하는 추적장치.
  24. 제23항에 있어서,
    상기 통신 인터페이스부는,
    상기 관리장치로부터 펌웨어 버전 정보, 펌웨어 데이터 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보 중 적어도 하나를 포함하는 업데이트 정보를 수신받고,
    상기 제어부는,
    상기 필터 정보에 따른 네트워크 범위 내에서 화상형성장치를 선정하여 펌웨어 블럭 배포 리스트를 생성하는 것을 특징으로 하는 추적장치.
  25. 적어도 하나의 화상형성장치 및 추적장치와 연결가능한 관리장치에 있어서,
    업데이트할 펌웨어와 상기 펌웨어의 업데이트 정보를 입력받는 사용자 인터페이스부;
    상기 업데이트 정보를 상기 추적장치 및 펌웨어 업데이트 대상이 되는 적어도 하나의 화상형성장치에 전송하는 통신 인터페이스부; 및
    화상형성장치로부터 펌웨어 블럭의 다운로드 요청이 수신되는 경우, 상기 펌웨어 블럭을 상기 화상형성장치로 전송하도록 상기 통신 인터페이스부를 제어하는 제어부;를 포함하고,
    상기 업데이트 정보는,
    펌웨어 버전 정보, 펌웨어 데이터 정보, 추적장치의 접근 정보, 펌웨어 업데이트를 수행하지 않고 지속적으로 펌웨어 블럭을 전송하는 지속 시드 정보, 펌웨어 블럭을 제공하는 화상형성장치의 네트워크 범위를 제한하는 필터 정보 및 펌웨어 다운로드 시작 정보를 포함하는 관리장치.
  26. 제25항에 있어서,
    상기 제어부는,
    상기 연결된 적어도 하나의 화상형성장치로부터 펌웨어 블럭 전송 상태 및 펌웨어 업데이트 상태 중 적어도 하나를 수신하여 화상형성장치별로 표시하도록 상기 사용자 인터페이스부를 제어하는 것을 특징으로 하는 관리장치.
KR1020130013038A 2013-02-05 2013-02-05 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법 KR101992680B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130013038A KR101992680B1 (ko) 2013-02-05 2013-02-05 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법
US14/031,448 US9164757B2 (en) 2013-02-05 2013-09-19 Image forming apparatus, tracking apparatus, managing apparatus and method of updating firmware of image forming apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130013038A KR101992680B1 (ko) 2013-02-05 2013-02-05 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법

Publications (2)

Publication Number Publication Date
KR20140100145A true KR20140100145A (ko) 2014-08-14
KR101992680B1 KR101992680B1 (ko) 2019-06-25

Family

ID=51260450

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130013038A KR101992680B1 (ko) 2013-02-05 2013-02-05 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법

Country Status (2)

Country Link
US (1) US9164757B2 (ko)
KR (1) KR101992680B1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8938731B2 (en) * 2012-10-24 2015-01-20 Telefonaktiebolaget L M Ericsson (Publ) Cost optimization for firmware updates for globally mobile machine-to-machine devices
FR3016031B1 (fr) * 2013-12-26 2016-02-05 Grdf Teledistribution d'une mise a jour logicielle a des terminaux de tele-releve
EP3110067A4 (en) * 2014-02-17 2017-08-23 Nec Corporation Network system, management apparatus, communication apparatus, management method, and communication method
JP2015219587A (ja) * 2014-05-14 2015-12-07 株式会社リコー 画像形成装置、画像形成方法、及び画像形成プログラム。
US9459857B2 (en) * 2015-01-21 2016-10-04 HGST Netherlands B.V. Managing wear of system areas of storage devices
US10416979B2 (en) * 2017-05-16 2019-09-17 Red Hat, Inc. Package installation on a host file system using a container
JP2019016012A (ja) * 2017-07-03 2019-01-31 東芝テック株式会社 プリンタ装置及びプログラム
US10313850B2 (en) * 2017-07-24 2019-06-04 Honeywell International Inc. Systems and methods for upgrading firmware in multiple devices of a wireless fire detection system
US10212302B1 (en) * 2017-08-18 2019-02-19 Kabushiki Kaisha Toshiba Cloning system and method for multifunction peripherals
TWI676933B (zh) * 2018-07-05 2019-11-11 慧榮科技股份有限公司 韌體更新方法
US10963239B2 (en) 2018-10-18 2021-03-30 International Business Machines Corporation Operational file management and storage
JP7408931B2 (ja) 2019-06-28 2024-01-09 株式会社リコー 電子機器、情報処理システム、情報処理方法およびプログラム
GB2588816B (en) * 2019-11-08 2022-05-11 Advanced Risc Mach Ltd Generating a delta update
WO2021117939A1 (ko) * 2019-12-12 2021-06-17 엘지전자 주식회사 펌웨어 제공 장치 및 그 제공 방법
KR20220033311A (ko) 2020-09-09 2022-03-16 삼성전자주식회사 전자 디바이스 및 이의 동작 방법과 네트워크 시스템
TWI823311B (zh) * 2022-03-29 2023-11-21 新唐科技股份有限公司 用於更新韌體的方法及資料結構產品

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080288936A1 (en) * 2007-05-16 2008-11-20 Canon Kabushiki Kaisha Communication apparatus, data processing system, control method for communication apparatus, control method for data processing system, and program therefor
KR20100003059A (ko) * 2008-06-30 2010-01-07 주식회사 이노그리드 콘텐츠 다운로드 서버와 피투피 제어 서버를 이용하여콘텐츠를 다운로드 하는 피어 장치 및 방법
KR20110079437A (ko) * 2009-12-30 2011-07-07 주식회사 알티캐스트 소프트웨어 업데이트 방법 및 장치
US20120303715A1 (en) * 2009-08-28 2012-11-29 International Business Machines Corporation P2p file transmission management method and system

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3620166B2 (ja) * 1996-09-25 2005-02-16 ブラザー工業株式会社 多機能周辺装置
US7263524B2 (en) * 2001-10-25 2007-08-28 Hewlett-Packard Development Company, L.P. Data access methods and multifunction device therefor
US7600006B2 (en) * 2004-08-31 2009-10-06 Inter-Tel, Inc Peer-to-peer distribution of firmware
US7814480B2 (en) * 2005-09-05 2010-10-12 Seiko Epson Corporation Control software updating technique for a network apparatus
TW200830876A (en) * 2006-08-24 2008-07-16 Chumby Ind Inc Networked personal audiovisual device having flexible housing
US20080127159A1 (en) * 2006-10-02 2008-05-29 Mark Van Regenmorter Multi-function peripheral device capable of independent firmware updating
US8560654B2 (en) * 2007-02-02 2013-10-15 Hewlett-Packard Development Company Change management
US9112891B2 (en) * 2007-02-02 2015-08-18 Sharp Laboratories Of America, Inc. Remote firmware management for electronic devices
US8019794B2 (en) * 2007-04-02 2011-09-13 Sharp Laboratories Of America, Inc. Firmware repository for MFP devices
JP4958692B2 (ja) * 2007-08-31 2012-06-20 キヤノン株式会社 配信装置、配信方法、及びコンピュータプログラム
US8266260B2 (en) * 2007-12-11 2012-09-11 Sharp Laboratories Of America, Inc. Method and system for updating the software of multiple network nodes
US20110161468A1 (en) * 2009-12-31 2011-06-30 Schneider Electric USA, Inc. Method and system for cascading peer-to-peer configuration of large systems of ieds
WO2012092602A2 (en) * 2010-12-30 2012-07-05 Peerapp Ltd. Methods and systems for caching data communications over computer networks
US20120311010A1 (en) * 2011-05-31 2012-12-06 Amit Shah Mechanism for peer-to-peer file sharing by individual client networking applications
JP5843637B2 (ja) * 2012-02-01 2016-01-13 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、及びプログラム
US8661429B2 (en) * 2012-02-28 2014-02-25 Seagate Technology Llc Updating peripheral device firmware via a portable device
JP5943681B2 (ja) * 2012-04-09 2016-07-05 キヤノン株式会社 情報処理装置、情報処理装置のファームウエア更新方法及びプログラム
US20140280433A1 (en) * 2013-03-14 2014-09-18 Rackspace Us, Inc. Peer-to-Peer File Distribution for Cloud Environments
JP5939180B2 (ja) * 2013-03-15 2016-06-22 ブラザー工業株式会社 情報処理装置、中継サーバ、情報中継方法、情報中継プログラム及び通信システム
JP5860436B2 (ja) * 2013-06-14 2016-02-16 京セラドキュメントソリューションズ株式会社 ソフトウェア更新プログラムおよびソフトウェア更新装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080288936A1 (en) * 2007-05-16 2008-11-20 Canon Kabushiki Kaisha Communication apparatus, data processing system, control method for communication apparatus, control method for data processing system, and program therefor
KR20100003059A (ko) * 2008-06-30 2010-01-07 주식회사 이노그리드 콘텐츠 다운로드 서버와 피투피 제어 서버를 이용하여콘텐츠를 다운로드 하는 피어 장치 및 방법
US20120303715A1 (en) * 2009-08-28 2012-11-29 International Business Machines Corporation P2p file transmission management method and system
KR20110079437A (ko) * 2009-12-30 2011-07-07 주식회사 알티캐스트 소프트웨어 업데이트 방법 및 장치

Also Published As

Publication number Publication date
US20140223424A1 (en) 2014-08-07
KR101992680B1 (ko) 2019-06-25
US9164757B2 (en) 2015-10-20

Similar Documents

Publication Publication Date Title
KR101992680B1 (ko) 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법
US11216266B2 (en) Information processing apparatus and firmware updating method
US20060215221A1 (en) Image forming apparatus, terminal apparatus and management apparatus
US8472057B2 (en) Information processing apparatus, and information processing method
US10389653B2 (en) Request distribution system, management system, and method for controlling the same
JP2006172472A (ja) アップデートをダウンロードする方法およびシステム
JP2007334898A (ja) データ配信システム及びデータ配信方法
US10175971B2 (en) Distribution system, distribution method, and program
US20130174270A1 (en) License install support system, license install support method
US20130086574A1 (en) Management Device for Causing Devices to Update Programs and Computer Readable Media
US20140380502A1 (en) License install support system, license install support method
US20130088751A1 (en) Job management apparatus, job control system, and job control method
JP2015219587A (ja) 画像形成装置、画像形成方法、及び画像形成プログラム。
US9912827B2 (en) Information processing apparatus for managing setting values of client device, method of controlling the same, and storage medium
US8332494B2 (en) Device management system, servers, method for managing device, and computer readable medium
US10298719B2 (en) Network system, and control method for network system
JP2014038368A (ja) 管理装置、管理装置の制御方法およびコンピュータプログラム
JP2012133618A (ja) 情報処理装置、情報処理システム、及びプログラム
JP2007323653A (ja) データ配信システム、データ配信方法及びデータ配信プログラム
US20200053244A1 (en) Non-transitory computer-readable recording medium storing computer-executable instructions and setup system
JP2010157134A (ja) 情報処理装置、情報処理方法及び情報処理システム
JP2020017236A (ja) 機器管理装置、機器管理プログラム及び機器管理システム
JP5787688B2 (ja) サーバ装置、クライアント装置、情報処理方法及びプログラム
KR20150007146A (ko) 소프트웨어 배포 방법 및 이를 수행하는 소프트웨어 배포 서버
US10264068B2 (en) Information processing apparatus that sets synchronization destination of setting information, image processing apparatus, communication system, synchronization method, and storage medium

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant