KR20130029995A - 화상형성장치 및 펌웨어 업그레이드 방법 - Google Patents

화상형성장치 및 펌웨어 업그레이드 방법 Download PDF

Info

Publication number
KR20130029995A
KR20130029995A KR1020110093462A KR20110093462A KR20130029995A KR 20130029995 A KR20130029995 A KR 20130029995A KR 1020110093462 A KR1020110093462 A KR 1020110093462A KR 20110093462 A KR20110093462 A KR 20110093462A KR 20130029995 A KR20130029995 A KR 20130029995A
Authority
KR
South Korea
Prior art keywords
firmware
new
installation
job
unit
Prior art date
Application number
KR1020110093462A
Other languages
English (en)
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 KR1020110093462A priority Critical patent/KR20130029995A/ko
Priority to EP12178700.6A priority patent/EP2570919B1/en
Priority to US13/617,641 priority patent/US20130074060A1/en
Publication of KR20130029995A publication Critical patent/KR20130029995A/ko

Links

Images

Classifications

    • 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
    • G06F3/1201Dedicated interfaces to print systems
    • 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
    • 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
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/123Software or firmware update, e.g. device firmware management
    • 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
    • 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/451Execution arrangements for user interfaces
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

화상형성장치가 개시된다. 본 화상형성장치는, 펌웨어를 저장하는 제1 저장부, 저장된 펌웨어를 로드하여 잡을 수행하는 제어부, 신규 펌웨어를 입력받는 통신 인터페이스부, 및, 입력받은 신규 펌웨어를 제1 저장부에 설치하는 업그레이드부를 포함하고, 제어부는, 신규 펌웨어 설치 중에 신규 잡의 수행을 요청받으면, 신규 펌웨어의 설치가 중지되도록 업그레이드부를 제어하고, 요청받은 신규 잡을 수행한다.

Description

화상형성장치 및 펌웨어 업그레이드 방법{IMAGE FORMING APPARATUS AND METHOD FOR UPGRADING FIRMWARE}
본 발명은 화상형성장치 및 펌웨어 업그레이드 방법에 관한 것으로, 더욱 상세하게는 화상형성장치의 펌웨어를 업그레이드하는 과정에서도 사용자가 요청하는 잡을 처리할 수 있는 화상형성장치 및 펌웨어 업그레이드 방법에 관한 것이다.
화상형성장치는 컴퓨터와 같은 단말장치에서 생성된 인쇄 데이터를 기록 용지에 인쇄하는 장치를 의미한다. 이러한 화상형성장치의 예로는 복사기, 프린터, 팩시밀리 또는 이들의 기능을 하나의 장치를 통해 복합적으로 구현하는 복합기(Multi Function Peripheral: MFP) 등을 들 수 있다.
일반적으로, 복사기, 프린터 및 팩시밀리와 같은 화상형성장치는 하드웨어를 제어하기 위한 펌웨어(Firmware)를 채용하고 있으며, 펌웨어는 Flash ROM 또는 EEPROM에 저장되어 사용된다. 이러한 펌웨어는 화상형성장치의 성능을 향상시키기 위해 지속적으로 업그레이드(upgrade)되고 있다.
그러나 종래에는 화상형성장치의 펌웨어를 업그레이드하는 과정에서는 사용자의 잡을 처리할 수 없었다는 점에서 불편함이 존재하였다. 더욱이 최근의 화상형성장치는 다양한 기능을 제공한다는 점에서, 펌웨어 프로그램의 크기가 커져 펌웨어 설치에 상당한 시간이 소요된다는 점에서, 사용자의 불편함은 상당하였다.
본 발명이 이루고자 하는 기술적 과제는, 화상형성장치의 펌웨어를 업그레이드하는 과정에서도 사용자가 요청하는 잡을 처리할 수 있는 화상형성장치 및 펌웨어 업그레이드 방법을 제공하는 데 있다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 화상형성장치는 화상형성장치에 있어서, 펌웨어를 저장하는 제1 저장부, 상기 저장된 펌웨어를 로드하여 잡을 수행하는 제어부, 신규 펌웨어를 입력받는 통신 인터페이스부, 및, 상기 입력받은 신규 펌웨어를 상기 제1 저장부에 설치하는 업그레이드부를 포함하고, 상기 제어부는, 상기 신규 펌웨어 설치 중에 신규 잡의 수행을 요청받으면, 상기 신규 펌웨어의 설치가 중지되도록 상기 업그레이드부를 제어하고, 상기 요청받은 신규 잡을 수행한다.
이 경우, 상기 제어부는, 상기 요청받은 신규 잡의 수행이 완료되면, 상기 중지된 신규 펌웨어의 설치가 재개되도록 상기 업그레이드부를 제어한다.
한편, 상기 업그레이드부는, 상기 신규 펌웨어를 섹터 또는 블록 단위로 플래싱(flashing)하고, 플래싱된 데이터를 상기 제1 저장부에 기록하는 것이 바람직하다.
이 경우, 상기 업그레이드부는, 상기 섹터 또는 블록 단위마다 신규 잡의 수행이 요청되었는지를 확인하는 것이 바람직하다.
한편, 본 화상형성장치는, 사용자로부터 신규 잡의 수행을 요청받는 사용자 인터페이스부, 및, 상기 통신 인터페이스부 또는 상기 사용자 인터페이스로부터 요청된 신규 잡을 인터럽트 또는 폴링 방식으로 상기 제어부에 통지하는 I/O 제어부를 더 포함할 수 있다.
이 경우, 상기 업그레이드부는, 상기 신규 펌웨어의 설치 개시시 폴링 방식으로 요청된 신규 잡이 통지되도록 상기 I/O 제어부를 제어하고, 상기 신규 펌웨어의 설치가 종료되면 인터럽트 방식으로 요청된 신규 잡이 통지되도록 상기 I/O 제어부를 제어하는 것이 바람직하다.
한편, 본 화상형성장치는, 상기 입력받는 신규 펌웨어를 저장하는 제2 저장부를 더 포함할 수 있다.
한편, 상기 제1 저장부는 복수개의 플래시 메모리를 포함하고, 상기 업그레이드부는, 상기 복수개가 플래시 메모리 각각에 대한 신규 펌웨어를 설치할 수 있다.
한편, 상기 업그레이드부는, 상기 신규 펌웨어의 설치가 종료되고, 상기 화상형성장치가 아이들(idle) 상태인 경우에 상기 화상형성장치를 리부팅하고, 상기 리부팅 시간이 기설정되어 있는 경우, 상기 신규 펌웨어의 설치가 종료되고, 기설정된 리부팅 시간이 도달하면 상기 화상형성장치를 리부팅 하는 것이 바람직하다.
한편, 본 화상형성장치는, 상기 신규 펌웨어의 설치에 소요되는 시간을 사용자 인터페이스 창을 통하여 표시하는 사용자 인터페이스부를 더 포함할 수 있다.
이 경우, 상기 사용자 인터페이스부는, 신규 펌웨어 설치 중에 신규 잡의 수행을 요청받으면, 상기 신규 잡의 수행 시간을 반영하여 상기 신규 펌웨어의 설치에 소요되는 시간을 표시하는 것이 바람직하다.
한편, 상기 사용자 인터페이스 창은, 상기 신규 펌웨어의 설치에 소요되는 시간을 표시하는 제1 영역, 상기 신규 펌웨어의 구체적인 설치 동작을 표시하는 제2 영역, 상기 신규 펌웨어의 설치 중지 명령을 입력받는 제3 영역 및 상기 신규 펌웨어의 설치 중단 명령을 입력받는 제4 영역 중 적어도 하나의 영역을 포함할 수 있다.
한편, 본 실시 예에 따른 펌웨어 업그레이드 방법은, 신규 펌웨어를 입력받는 단계, 상기 입력받은 신규 펌웨어를 설치하는 단계, 및, 상기 신규 펌웨어 설치 중에 신규 잡의 수행을 요청받으면, 상기 신규 펌웨어의 설치를 중지하고, 상기 요청받은 신규 잡을 수행하는 단계를 포함한다.
이 경우, 본 펌웨어 업그레이드 방법은, 상기 요청받은 신규 잡의 수행이 완료되면, 상기 중지된 신규 펌웨어의 설치를 재개하는 단계를 더 포함할 수 있다.
한편, 상기 설치하는 단계는, 상기 신규 펌웨어를 섹터 또는 블록 단위로 플래싱(flashing)하고, 플래싱된 데이터를 상기 화상형성장치에 기록하는 것이 바람직하다.
이 경우, 상기 설치하는 단계는, 상기 섹터 또는 블록 단위마다 신규 잡의 수행이 요청되었는지를 확인하는 것이 바람직하다.
한편, 상기 설치하는 단계는, 상기 신규 펌웨어의 설치 개시시 상기 신규 잡의 수행이 폴링 방식으로 통지되도록 제어하고, 상기 신규 펌웨어의 설치가 종료되면 상기 신규 잡의 수행이 인터럽트 방식으로 통지되도록 제어하는 것이 바람직하다.
한편, 본 펌웨어 업그레이드 방법은, 상기 입력받는 신규 펌웨어를 저장하는 단계를 더 포함할 수 있다.
한편, 상기 화상형성장치는 복수의 플래시 메모리를 이용하여 펌웨어를 저장하고, 상기 설치하는 단계는, 상기 복수개가 플래시 메모리 각각에 대한 신규 펌웨어를 설치하는 것이 바람직하다.
한편, 본 펌웨어 업그레이드 방법은, 상기 신규 펌웨어의 설치가 종료되면 상기 화상형성장치를 리부팅 하는 단계를 더 포함할 수 있다.
이 경우, 상기 리부팅 하는 단계는, 상기 신규 펌웨어의 설치가 종료되고, 상기 화상형성장치가 아이들(idle) 상태인 경우 또는 상기 리부팅 시간이 기설정되어 있는 경우, 상기 신규 펌웨어의 설치가 종료되고 기설정된 리부팅 시간이 도달하면 상기 화상형성장치를 리부팅 할 수 있다.
한편, 본 펌웨어 업그레이드 방법은, 상기 신규 펌웨어의 설치에 소요되는 시간을 사용자 인터페이스 창을 통하여 표시하는 단계를 더 포함할 수 있다.
이 경우, 상기 표시하는 단계는, 신규 펌웨어 설치 중에 신규 잡의 수행을 요청받으면, 상기 신규 잡의 수행 시간을 반영하여 상기 신규 펌웨어의 설치에 소요되는 시간을 표시하는 것이 바람직하다.
이 경우, 상기 사용자 인터페이스 창은, 상기 신규 펌웨어의 설치에 소요되는 시간을 표시하는 제1 영역, 상기 신규 펌웨어의 구체적인 설치 동작을 표시하는 제2 영역, 상기 신규 펌웨어의 설치 중지 명령을 입력받는 제3 영역 및 상기 신규 펌웨어의 설치 중단 명령을 입력받는 제4 영역 중 적어도 하나의 영역을 포함할 수 있다.
도 1은 본 발명의 일 실시 예에 의한 화상형성장치의 구체적인 구성을 도시한 블록도,
도 2는 다른 실시 예에 따른 화상형성장치의 구성을 도시한 블록도,
도 3은 본 실시 예에 따른 펌웨어 데이터를 도시한 도면,
도 4 및 도 5는 도 1의 사용자 인터페이스부에서 표시될 수 있는 사용자 인터페이스 창의 다양한 예를 도시한 도면,
도 6은 본 실시 예에 다른 펌웨어 업그레이드 방법을 설명하기 위한 흐름도이다.
도 7은 도 1의 잡 제어부의 동작을 설명하기 위한 도면,
도 8은 도 1의 업그레이드부의 동작을 설명하기 위한 도면, 그리고,
도 9는 펌웨어 업그레이드 동작시 도 1의 I/O 제어부, 잡 제어부 및 업그레이드부의 동작을 설명하기 위한 도면이다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명의 일 실시 예에 의한 화상형성장치의 구체적인 구성을 도시한 블록도이다.
도 1을 참고하면, 화상형성장치(100)는 통신 인터페이스부(110), 사용자 인터페이스부(120), 제1 저장부(130), 제2 저장부(140), 화상 형성부(150), I/O 제어부(160), 잡 제어부(170), 업그레이드부(180) 및 제어부(190)를 포함한다.
통신 인터페이스부(110)는 화상형성장치(100)를 인쇄 제어 단말장치(10)와 연결하기 위해 형성되며, 근거리 통신망(LAN: Local Area Network) 및 인터넷 망을 통하여 무선 또는 유선 방식으로 접속되는 형태뿐만 아니라, USB(Universal Serial Bus) 포트를 통하여 접속되는 형태도 가능하다.
그리고 통신 인터페이스부(110)는 인쇄 제어 단말장치(10)로부터 신규 펌웨어를 수신할 수 있다. 여기서 펌웨어는 하드웨어를 제어하는 마이크로 프로그램이다. 한편, 화상형성장치(100)가 복수의 프로세서로 동작하는 경우, 수신된 신규 펌웨어는 하나의 프로세서에 대한 신규 마이크로 프로그램일 수 있으며, 복수의 프로세서 각각에 대한 마이크로 프로그램의 집합일 수도 있다. 여기서는, 인쇄 제어 단말장치(10)를 통하여 신규 펌웨어를 수신하는 것만을 설명하였지만, USB 메모리 스틱과 같은 장치에 의하여 수신될 수도 있다.
그리고 통신 인터페이스부(110)는 잡의 수행을 요청받을 수 있다. 구체적으로, 통신 인터페이스부(110)는 인쇄 제어 단말장치(10)로부터 인쇄 잡, 스캔 잡, 팩스 수신 잡 등의 화상형성장치(100)의 기능과 관련된 잡의 수행을 요청받을 수 있다. 그리고 통신 인터페이스부(110)는 각 잡에 관련된 데이터(예를 들어, 인쇄 잡, 스캔 잡)를 송수신할 수 있다.
사용자 인터페이스부(120)는 화상형성장치(100)에서 지원하는 각종 기능을 사용자가 설정 또는 선택할 수 있는 다수의 기능키들을 구비하며, 화상형성장치(100)에서 제공되는 각종 정보 표시할 수 있다. 사용자 인터페이스부(120)는 터치패드 등과 같이 입력과 출력이 동시에 구현되는 장치로 구현될 수도 있고, 마우스, 키보드 등과 같은 입력 장치 및 CRT 모니터, LCD 모니터, LED 등과 같은 표시 장치를 결합하여 구현될 수도 있다.
사용자 인터페이스부(120)는 펌웨어 설치 명령(또는 펌웨어 업그레이드 명령)을 입력받기 위한 사용자 인터페이스 창을 표시할 수 있다. 따라서, 사용자는 표시된 사용자 인터페이스 창을 통하여 펌웨어 설치 명령을 입력할 수 있다. 한편, 이상에서는 펌웨어 설치 명령을 사용자 인터페이스부(120)를 통하여 입력받는 것만을 설명하였지만, 구현시에는 인쇄 제어 단말장치(10) 등과 같은 외부 장치로부터 펌웨어 설치 명령을 입력받을 수도 있다.
그리고 사용자 인터페이스부(120)는 펌웨어 설치(또는 펌웨어 업그레이드)와 관련된 정보를 표시할 수 있다. 구체적으로, 사용자 인터페이스부(120)는 신규 펌웨어의 설치(또는 업그레이드)에 소요되는 시간, 신규 펌웨어의 구체적인 설치 동작 등의 펌웨어 설치와 관련된 정보를 사용자 인터페이스 창을 통하여 표시할 수 있다. 한편, 펌웨어 설치 중간에 신규 잡이 수행되는 경우, 신규 펌웨어의 설치에 소요되는 시간은 신규 잡의 수행 시간을 반영하여 계산될 수 있다.
그리고 사용자 인터페이스부(120)는 펌웨어 설치 중간에 사용자로부터 신규 잡의 수행 명령, 펌웨어 설치 중지 명령, 펌웨어 설치 중단 명령 등을 입력받을 수 있다. 여기서 신규 잡의 수행 명령은 펌웨어 설치 중에 화상형성장치(100)의 기능과 관련된 잡에 대한 요청이고, 펌웨어 설치 중지 명령은 펌웨어 설치를 일시적으로 중지하도록 하는 명령이고, 펌웨어 설치 중단은 펌웨어 설치를 종료하는 명령이다. 사용자 인터페이스부(120)가 표시할 수 있는 사용자 인터페이스 창에 대해서는 도 4 및 도 5를 참고하여 후술한다.
제1 저장부(130)는 펌웨어를 저장한다. 구체적으로, 제1 저장부(130)는 화상형성장치(100)의 기능을 수행하기 위한 마이크로 프로그램인 펌웨어를 저장한다. 이러한 펌웨어는 후술한 업그레이드부(180)에 의하여 업그레이드될 수 있다. 그리고 이러한 펌웨어는 화상형성장치(100)의 초기 구동시에 프로세서(CPU, 구체적으로는 프로세서에 연결된 휘발성 메모리(예를 들어, DRAM))에 로딩 된다. 한편, 제1 저장부(130)는 재기록이 가능한 저장매체, 예를 들어, 플래시 롬(Flash ROM) 또는 EEPROM(Electrically Erasable Programmable Read-Only Memory) 등일 수 있다.
제2 저장부(140)는 수신된 신규 펌웨어를 저장한다. 구체적으로, 제2 저장부(140)는 상술한 통신 인터페이스부(110)를 통하여 입력받은 신규 펌웨어를 저장한다. 그리고 제2 저장부(140)는 통신 인터페이스부(110) 또는 사용자 인터페이스부(120)를 통하여 요청된 잡과 관련된 데이터(예를 들어, 인쇄 데이터, 스캔 데이터) 등을 저장할 수 있다. 한편, 제2 저장부(140)는 화상형성장치 내의 저장매체(예를 들어, 플래시 메모리, 하드디스크(HDD) 등) 및 외부 저장매체(예를 들어 USB 메모리를 포함한 Removable Disk, 호스트(Host)에 연결된 저장매체, 네트워크를 통한 웹 서버(Web server)) 등으로 구현될 수 있다.
화상 형성부(150)는 화상을 형성한다. 구체적으로, 화상 형성부(150)는 통신 인터페이스부(110)를 통하여 수신된 인쇄 잡에 대한 화상을 형성할 수 있다. 본 실시 예에서는 인쇄 잡을 수행하는 화상 형성부(150)만을 도시하고 설명하였지만, 화상형성장치(100)가 스캔 잡 및 팩스 잡 등을 수행할 수 있는 복합기(MFP)인 경우, 화상형성장치(100)는 스캔 잡을 수행하는 구성 및 팩스 전송/수신 잡을 수행하는 구성을 더 구비할 수도 있다.
I/O 제어부(160)는 통신 인터페이스부(110) 또는 사용자 인터페이스부(120)로부터 요청된 신규 잡을 인터럽트(interrupt) 또는 폴링(polling) 방식으로 제어부(190)에 통지한다. 구체적으로, I/O 제어부(160)는 화상형성장치(100)가 일반 모드인 경우, 인터럽트 방식으로 요청된 신규 잡을 제어부(190)에 통지하고, 화상형성장치(100)가 펌웨어 설치시에는 폴링 방식으로 요청된 신규 잡을 제어부(190)에 통지한다. 여기서 인터럽트는 신규 잡이 요청되면 바로 제어부(190)에 신규 잡이 발생했다는 것을 알리는 방식이고, 폴링 방식은 신규 잡이 요청되면, 요청 사실을 저장하고 있다가 제어부(190)가 요청하는 시점에 신규 잡이 발생했다는 것을 알리는 방식이다.
잡 제어부(170)는 요청된 잡을 처리한다. 구체적으로, 잡 제어부(170)는 사용자가 요청한 잡이 펌웨어 업그레이드 잡인지 화상형성장치(100)의 기능과 관련된 잡인지를 구분하고, 사용자의 요청이 펌웨어 업그레이드 잡인 경우, 펌웨어 업그레이드가 수행되도록 이를 업그레이드부(180)에 통지한다. 반면에 요청된 잡이 펌웨어 업그레이드 잡이 아닌 경우에, 잡 제어부(170)는 요청된 잡을 수행한다. 예를 들어, 요청된 신규 잡이 인쇄 잡인 경우, 잡 제어부(170)는 요청된 인쇄 잡이 수행되도록 화상 형성부(150)를 제어한다. 한편, 본 실시 예에서는 잡 제어부(170) 및 제어부(190)를 별도의 구성인 것으로 도시하고 설명하였으나, 구현시에는 하나의 구성으로 구현할 수도 있다.
업그레이드부(180)는 입력받은 신규 펌웨어를 제1 저장부(130)에 설치한다. 구체적으로, 업그레이드부(180)는 신규 펌웨어 설치 명령이 입력되면, 신규 펌웨어가 제2 저장부(140)에 저장되도록 통신 인터페이스부(110)를 제어할 수 있다.
그리고 업그레이드부(180)는 업그레이드 과정 시에 사용자의 신규 잡의 요청이 폴링 방식으로 통지되도록 I/O 제어부(160)를 제어할 수 있다.
그리고 업그레이드부(180)는 제2 저장부(140)에 저장된 신규 펌웨어를 섹터 또는 블록 단위로 플래싱(flashing) 하고, 섹터 또는 블록 단위로 플래싱된 신규 펌웨어를 제1 저장부(130)에 기록하여, 신규 펌웨어를 제1 저장부(130)에 설치할 수 있다.
한편, 업그레이드부(180)는 섹터 또는 블록 단위마다 신규 잡의 수행이 요청되었는지 확인할 수 있다. 구체적으로, 업그레이드부(180)는 하나의 섹터 또는 하나의 블록이 플래싱되면, I/O 제어부(160)에 신규 잡이 요청되었는지를 확인하고, 신규 잡의 요청이 없는 경우, 플래싱된 하나의 섹터 또는 블록을 제1 저장부(130)에 기록할 수 있다. 만약, I/O 제어부(160)에 신규 잡의 요청이 있는 경우, 업그레이드부(180)는 신규 펌웨어의 설치를 중지하고(즉, 플래싱된 하나의 섹터 또는 블록의 기록을 수행하지 않고), 요청된 신규 잡이 수행되도록 잡 제어부(170)를 제어할 수 있다. 구체적으로, 신규 펌웨어가 제1 저장부(130)에 기록 중인 경우에도, 기존의 펌웨어는 CPU(구체적으로, 휘발성 메모리(예를 들어, DRAM))에 로딩된 상태이기 때문에, 로딩 되어 있는 펌웨어를 이용하여 화상형성장치(100)는 사용자가 요청한 신규 잡을 수행할 수 있다.
한편, 본 실시 예에서는 플래싱 이후에 신규 잡이 요청되었는지를 확인하는 것으로 설명하였으나, 구현시에는 플래싱된 펌웨어의 기록 이후에 신규 잡이 요청되었는지를 확인하는 형태로도 구현할 수 있다.
그리고 신규 잡의 수행이 완료되면, 업그레이드부(180)는 중지된 신규 펌웨어의 설치를 재개할 수 있다. 구체적으로, 업그레이드부(180)는 제1 저장부(130)에 기록되지 않은 플래싱된 신규 펌웨어를 제1 저장부(130)에 기록할 수 있다.
그리고 업그레이드부(180)는 신규 펌웨어의 설치가 완료되면, 신규 잡이 인터럽트 방식으로 통지되도록 I/O 제어부(160)를 제어할 수 있다. 그리고 업그레이드부(180)는 화상형성장치(100)가 리부팅 되도록 제어할 수 있다. 구체적으로, 업그레이드부(180)는 신규 펌웨어의 설치가 완료되고, 화상형성장치(100) 아이들(idle)상태(즉, 잡을 수행하고 있지 않은 경우)인 경우, 화상형성장치(100)를 리부팅 할 수 있다. 한편, 리부팅 시간이 사용자가 설정하거나, 펌웨어에 설정되어 있는 경우, 업그레이드부(180)는 신규 펌웨어 설치 완료 후, 기설정된 리부팅 시간이 도달하면 화상형성장치(100)를 리부팅 할 수 있다. 이와 같은 리부팅 동작에 의하여 제1 저장부(130)에 새로 기록된 신규 펌웨어가 CPU(구체적으로, 휘발성 메모리(예를 들어, DRAM))에 로딩 되고, 화상형성장치(100)는 신규 펌웨어에 의하여 동작하게 된다.
제어부(190)는 제어 코어(CPU) 및 휘발성 메모리(예를 들어, DRAM)를 포함하며, 초기 부팅시에 제어부(190)는 제1 저장부(130)에 저장된 펌웨어를 휘발성 메모리에 로딩하고, 로딩된 펌웨어를 이용하여 화상형성장치(100)에 포함된 각 구성을 제어할 수 있다.
그리고 화상형성장치(100)의 기능과 관련된 잡이 요청되면, 제어부(190)는 요청된 잡이 수행되도록 잡 제어부(170) 및 화상 형성부(150)를 제어할 수 있다.
그리고 펌웨어 설치 명령이 입력되면, 제어부(190)는 펌웨어가 수신되도록 통신 인터페이스부(110)를 제어하고, 수신된 펌웨어가 설치되도록 업그레이드부(180)를 제어할 수 있다.
그리고 제어부(190)는 펌웨어 설치 중에, 신규 잡의 수행을 요청받으면, 신규 펌웨어의 설치가 중지되도록 업그레이드부(180)를 제어하고, 요청받은 신규 잡이 수행되도록 잡 제어부(170) 및 화상 형성부(150)를 제어할 수 있다. 그리고 제어부(190)는 펌웨어 설치 중에 요청받은 신규 잡의 수행이 완료되면, 중지된 신규 펌웨어의 설치가 재개되도록 업그레이드부(180)를 제어할 수 있다.
이상과 같이 본 실시 예에 따른 화상형성장치(100)는 펌웨어 설치 중에도 사용자가 요청한 잡을 처리할 수 있는바, 사용자 편의성이 향상된다.
도 1을 설명함에 있어서, 잡 제어부(170), 업그레이드부(180) 및 제어부(190)를 별도의 구성인 것으로 도시하고 설명하였으나, 구현시에는 하나의 구성으로 구현될 수 있다.
이상에서는 화상형성장치(100)가 하나의 제어 코어만으로 동작하는 것으로 설명하였으나, 화상형성장치(100)는 복수의 제어 코어를 구비할 수 있으며, 이에 대한 펌웨어 설치 동작에 대해서는 도 2를 참고하여 설명한다.
도 2는 다른 실시 예에 따른 화상형성장치의 구성을 도시한 블록도이다.
도 2를 참고하면, 화상형성장치(100')는 복수의 보드(210, 220, 230)를 포함한다.
구체적으로, 복수의 보드(210, 220, 230) 각각은 제어 코어(CPU, 190-1, 190-2, 190-3) 및 메모리 소자(130-1, 130-2, 130-3)를 포함할 수 있다. 여기서 메모리 소자 각각(130-1, 130-2, 130-3)은 각각의 제어 코어(CPU, 190-1, 190-2, 190-3)의 동작에 필요한 펌웨어를 저장한다.
메인 컨트롤러 보드(210)는 화상형성장치(100)의 전반적인 동작을 제어하는 보드(또는 기판)로, 상술한 바와 같은 제어부(190)의 기능을 수행할 수 있다.
엔진 컨트롤러 보드(220)는 인쇄 잡과 관련된 동작을 제어하는 보드(또는 기판)로, 도 1의 잡 제어부(170) 또는 화상 형성부(150)의 기능을 수행할 수 있다.
액세서리 보드(230)는 화상형성장치(100)의 추가적인 기능, 예를 들어, 스캔 기능, 팩스 기능, 용지 적재함의 제어 기능을 수행할 수 있다.
이상과 같이 화상형성장치(100')가 복수의 제어 코어(190-1, 190-2, 190-3) 및 복수의 메모리 소자(130-1, 130-2, 130-3)를 갖는 경우, 업그레이드부(180)는 메모리 소자(130-1, 130-2, 130-3)에 저장된 펌웨어를 신규 펌웨어로 업그레이드할 수 있다.
구체적으로, 업그레이드부(180)는 기설정된 순서에 따라 복수의 메모리 소자(130-1, 130-2, 130-3) 각각에 대한 펌웨어 업그레이드를 수행할 수 있다. 예를 들어, 업그레이드부(180)는 제1 메모리 소자(130-1)에 대한 펌웨어 업그레이드를 수행하고, 제1 메모리 소자(130-1)에 대한 펌웨어 업그레이드가 완료되면, 제2 메모리 소자(130-2)에 대한 펌웨어 업그레이드를 수행하고, 제2 메모리 소자(130-2)에 대한 펌웨어 업그레이드가 완료되면, 제3 메모리 소자(130-3)에 대한 펌웨어 업그레이드를 수행할 수 있다.
그리고 제1 내지 제3 메모리 소자 각각에 대한 펌웨어 업그레이드가 완료되면, 업그레이드부(180)는 화상형성장치(100)를 리부팅 할 수 있다. 이상에서는 모든 메모리 소자에 대한 펌웨어 설치가 완료되면 리부팅을 수행하는 것으로 설명하였으나, 구현시에는 각각의 메모리 소자에 대한 펌웨어 업그레이드 완료시마다 화상형성장치(100')가 리부팅 하도록 구현할 수도 있다.
도 2를 설명함에 있어서, 화상형성장치(100')에 3개의 보드가 구비되는 것만을 설명하였으나, 구현시에는 화상형성장치(100')에 2개의 보드가 구비될 수 있으며, 4개 이상의 보드가 구비될 수도 있다.
도 3은 본 실시 예에 따른 펌웨어를 도시한 도면이다.
도 3을 참고하면, 펌웨어는 전체 펌웨어 이미지의 헤더, 복수의 펌웨어 이미지를 포함한다.
전체 펌웨어 이미지의 헤더는 'indicator', 'Model ID', 'version Information', 'Special Information' 등의 정보를 저장한다. 여기서, 'indicator'는 해당 데이터는 펌웨어 이미지임을 알리는 정보가 기록되는 영역이고, 'Model ID'는 펌웨어가 적용되는 화상형성장치(100)의 모델명이 기록되는 영역이고, 'version Information'는 해당 펌웨어의 버전 정보가 기록되는 영역이고, 'Special Information'는 해당 펌웨어의 특이 사항 등이 기록되는 영역이다.
복수의 펌웨어 이미지 각각은 'header', 'Binary data' 등의 정보를 저장한다. 여기서 'Binary data' 는 화상형성장치(100)의 제1 저장부(130)에 기록될 펌웨어 데이터이고, 'header'는 'binary data'가 어떠한 구성(예를 들어, 메인 컨트롤러 보드(210)의 플래시 메모리(130-1), 엔진 컨트롤러 보드(220)의 플래시 메모리(130-2))에 적용되는 것인지를 나타내는 정보가 기록되는 영역이다.
도 4 및 도 5는 도 1의 사용자 인터페이스부에서 표시될 수 있는 사용자 인터페이스 창의 다양한 예를 도시한 도면이다.
구체적으로, 도 4는 정상 모드에서 표시되는 사용자 인터페이스 창의 예를 도시한 도면이고, 도 5a 및 도 5b는 펌웨어 설치시 표시되는 사용자 인터페이스 창의 예를 도시한 도면이다.
도 4를 참고하면, 사용자 인터페이스 창(400)은 화상형성장치(100)에서 지원하는 각종 기능을 표시한다. 이러한 정상 모드에서 사용자가 펌웨어 설치 명령을 입력하면, 펌웨어 설치가 시작되고, 사용자 인터페이스부(120)는 도 5a와 같은 사용자 인터페이스 창을 표시할 수 있다.
도 5a를 참고하면, 사용자 인터페이스 창(500)은 펌웨어 설치 과정 중에 잡의 수행을 요청받는 영역(510) 및 펌웨어 설치와 관련된 정보를 표시하는 영역(520)을 포함한다.
'잡의 수행을 요청받는 영역'(510)은 펌웨어 설치를 중지하고, 요청한 잡을 우선적으로 처리하도록 하는 명령을 입력받는 영역이다. 사용자가 '잡의 수행을 요청받는 영역'(510)을 선택하면, 화상형성장치(100)는 현재 설치 중인 펌웨어 설치를 중지하고 사용자가 요청한 잡을 선행적으로 수행할 수 있다.
'펌웨어 설치와 관련된 정보를 표시하는 영역'(520)은 현재 설치 중인 펌웨어의 설치에 소요되는 시간을 표시하는 제1 영역(521), 신규 펌웨어의 설치 중지 명령을 입력받는 제3 영역(523), 신규 펌웨어의 설치 중단 명령을 입력받는 제4 영역(525)을 포함한다.
제1 영역(521)은 펌웨어 설치에 소요되는 시간을 표시하는 영역이다. 한편, 사용자가 '잡의 수행을 요청받는 영역'(510)을 선택하여 잡을 수행하는 경우, 제1 영역(521)은 신규 잡의 수행 시간을 반영하여 신규 펌웨어의 설치에 소요되는 시간을 표시할 수 있다.
제3 영역(523)은 신규 펌웨어 설치를 일시적으로 중지하는 설치 중지 명령을 입력받는 영역이다. 사용자가 제3 영역(523)을 선택하면, 화상형성장치(100)는 현재 작업중인 펌웨어 설치를 사용자의 펌웨어 재개 명령이 입력되기 전까지 중지할 수 있다.
그리고 제4 영역(525)은 신규 펌웨어 설치를 중단하는 설치 중단 명령을 입력받는 영역이다. 사용자가 제4 영역(525)을 선택하면, 화상형성장치(100)는 현재 작업중인 펌웨어의 설치를 중단할 수 있다.
한편, '펌웨어 설치와 관련된 정보를 표시하는 영역'(520)은 신규 펌웨어의 구체적인 설치 동작을 표시하는 제2 영역(522)을 더 포함할 수 있다. 이에 대해서는 도 5b를 참고하여 후술한다.
제2 영역(522)은 신규 펌웨어가 설치되는 보드의 종류를 표시하고, 각 보드의 업그레이드에 소요되는 시간 등의 정보를 표시한다.
이상과 같이 본 실시 예에 따른 화상형성장치(100)는 펌웨어 설치와 관련된 다양한 정보를 사용자에게 제공할 수 있는바, 사용자는 펌웨어 설치의 예상 시간을 손쉽게 확인할 수 있다. 또한, 예상 시간이 오래 걸리는 경우, 사용자는 손쉽게 현재수행중인 펌웨어 설치를 중지시키고, 필요한 잡을 수행할 수 있게 된다.
도 6은 본 실시 예에 다른 펌웨어 업그레이드 방법을 설명하기 위해 흐름도이다.
도 6을 참고하면, 먼저, 신규 펌웨어를 입력받는다(S610). 입력된 신규 펌웨어는 화상형성장치(100) 내부의 저장매체에 임시로 저장될 수 있다.
그리고 입력받은 신규 펌웨어를 설치한다(S620). 구체적으로, 업그레이드 과정 시에 사용자의 신규 잡이 폴링 방식으로 통지되도록 설정할 수 있다. 그리고 신규 펌웨어를 섹터 또는 블록 단위로 플래싱(flashing) 하고, 섹터 또는 블록 단위로 플래싱된 신규 펌웨어를 제1 저장부(130)에 기록할 수 있다. 그리고 이러한 플래싱, 및 기록 동작을 반복하여 신규 펌웨어를 화상형성장치(100)의 제1 저장부(130)에 설치할 수 있다.
그리고 신규 펌웨어의 섹터 또는 블록 단위마다 신규 잡의 수행이 요청되었는지 확인한다(S630). 만약 신규 잡의 수행이 요청되지 않으면, 상술한 바와 같은 플래싱 및 기록 동작을 반복 수행한다.
반면에, 신규 잡의 수행이 요청되어 있으면(S630-Y), 신규 펌웨어의 설치를 중지하고, 요청받은 신규 잡을 수행한다(S640). 그리고 요청받은 신규 잡의 수행이 완료되면, 중지된 신규 펌웨어의 설치를 재개한다(S650).
따라서, 본 실시 예에 따른 펌웨어 업그레이드 방법은, 펌웨어 설치 중에도 사용자가 요청한 잡을 처리할 수 있는바, 사용자 편의성이 향상된다. 도 6과 같은 펌웨어 업그레이드 방법은, 도 1의 구성을 가지는 화상형성장치 상에서 실행될 수 있으며, 그 밖의 구성을 가지는 화상형성장치 상에서도 실행될 수 있다.
도 7은 도 1의 잡 제어부의 동작을 설명하기 위한 도면이다.
도 7을 참고하면, 잡 제어부(170)는 잡 요청을 입력받는다(S710). 구체적으로, 통신 인터페이스부(110) 또는 사용자 인터페이스부(120)를 통하여 잡 요청을 입력받는다.
그리고 입력받은 잡이 펌웨어 업그레이드 잡인지를 판단한다(S720). 입력받은 잡이 펌웨어 업그레이드 잡인 경우(S720-Y), 펌웨어 업그레이드가 수행되도록 펌웨어 업그레이드 잡이 수신되었음을 업그레이드부(180)에 통지하여, 신규 펌웨어가 설치되도록 한다(S730). 한편, 입력받은 잡이 펌웨어 업그레이드 잡이 아닌 화상형성장치(100)의 기능과 관련된 잡인 경우(S720-N), 요청된 잡을 수행한다(S740).
도 8은 도 1의 업그레이드부(180)의 동작을 설명하기 위한 도면이다.
도 8을 참고하면, 먼저, 수신된 신규 펌웨어의 유효성을 검사한다(S805). 구체적으로, 수신된 신규 펌웨어의 '전체 펌웨어 이미지의 헤더'를 추출하고, 수신된 신규 펌웨어가 해당 화상형성장치(100)에 대한 펌웨어인지, 최신 버전의 펌웨어인지를 확인하여 유효한 펌웨어인지를 확인하고, 유효한 펌웨어인 경우, 이하의 동작을 수행하고, 유효한 펌웨어가 아닌 경우, 예를 들어, 해당 화상형성장치에 대한 펌웨어가 아닌 경우, 현재 설치된 펌웨어보다 낮은 버전 또는 동일한 버전의 펌웨어인 경우, 수신된 펌웨어의 설치를 수행하지 않는다.
그 다음, 수신된 신규 펌웨어가 제2 저장부(140)에 저장되었는지 판단하고(S810), 수신된 펌웨어가 제2 저장부(140)에 저장되어 있지 않은 경우(S810-N), 수신된 신규 펌웨어를 제2 저장부(140)에 저장할 수 있다(S815).
그 다음, 업그레이드 과정 시에 사용자의 신규 잡의 요청이 폴링 방식으로 통지되도록 I/O 제어부(160)의 동작 모드를 변경한다(S820). 그리고 펌웨어 설치 모드(즉, 관리 모드)에 대응되는 사용자 인터페이스 창(예를 들어, 도 5)이 표시되도록 사용자 인터페이스부(120)를 제어한다(S825).
그리고 화상형성장치(100)가 아이들(idle) 상태, 즉 다른 잡을 수행하지 않은 상태인지를 판단하고(S830), 아이들 상태가 아닌 경우(S830-N), 화상형성장치(100)가 아이들 상태일 때까지 기다린다. 그리고 화상형성장치(100)가 아이들 상태인 경우(S830-Y), 제2 저장부(140)에 저장된 신규 펌웨어를 섹터 또는 블록 단위로 플래싱(flashing) 하고(S835), 섹터 또는 블록 단위로 플래싱된 신규 펌웨어를 제1 저장부(130)에 기록하여(S840), 신규 펌웨어에 대한 설치 작업을 수행한다.
그리고 하나의 섹터 또는 하나의 블록에 대한 기록이 완료되면, 해당 기록이 마지막인지를 판단하고(S850), 해당 기록이 마지막이 아닌 경우(S850-N), I/O 제어부(160)에 신규 잡이 요청되었는지를 확인하고(S860), 신규 잡의 요청이 없는 경우(S860-N). 다음 섹터 또는 블록에 대한 업그레이드를 수행할 수 있다.
반면에 신규 잡의 요청이 있는 경우에는(S860-Y), 요청된 신규 잡이 수행되도록 잡 제어부에 펌웨어 설치가 중지되었음을 통지한다. 그리고 이러한 통지에 의하여 요청된 신규 잡이 수행 완료되면(S865), 중지된 신규 펌웨어의 설치 동작을 재개할 수 있다.
한편, 모든 섹터 또는 블록에 대한 업그레이드가 완료되면(S850-Y), 업그레이드를 종료한다(S855) 구체적으로, 신규 잡이 인터럽트 방식으로 통지되도록 하고, 화상형성장치(100)를 리부팅할 수 있다. 이러한 리부팅은 펌웨어 업그레이드 정책에 따라, 바로 리부팅 되거나, 기설정된 시간에 리부팅 될 수 있다.
도 9는 펌웨어 업그레이드 동작시 도 1의 I/O 제어부, 잡 제어부 및 업그레이드부의 동작을 설명하기 위한 도면이다.
도 9를 참고하면, 먼저, 펌웨어 업그레이드 명령을 수신하면(S911), 플래싱 과정을 위하여, 업그레이드부(180)는 인터럽트를 락(Lock)한다(S912). 그리고, 업그레이드부(180)는 플래싱 과정을 수행할 것임을 I/O 제어부(160)에 통지한다(S913), 이에 따라 I/O 제어부(160)는 통지 방식을 인터럽트 모드에서 폴링 방식으로 변경할 수 있다(S950).
그 다음 업그레이드부(180)는 신규 펌웨어를 섹터 또는 블록 단위로 플래싱(flashing) 하고, 섹터 또는 블록 단위로 플래싱된 신규 펌웨어를 기록한다(S915). 하나의 섹터 또는 블록에 대한 플래싱이 완료되면, 업그레이드부(180)는 I/O 제어부(160)에 신규 잡이 요청되었는지를 확인하고(S917), 신규 잡의 요청이 없는 경우(S917-N). 다음 섹터 또는 블록에 대한 업그레이드를 수행할 수 있다.
반면에 신규 잡의 요청이 있는 경우, 펌웨어의 설치를 중지하고(S918), 펌웨어 설치가 중지되었음을 잡 제어부(170)에 통지한다. 이러한 통지를 받은 잡 제어부(170)는 요청된 잡을 수행하고(S970), 해당 잡이 완료되면, 잡 수행이 완료되었음을 업그레이드부(180)에 통지한다(S980).
잡 수행이 완료되었음을 통지받으면, 업그레이드부(180)는 중지된 신규 펌웨어의 설치를 재개하고, 모든 섹터 또는 블록에 대한 업그레이드가 완료되면(S914-Y), 잡이 인터럽트 방식으로 통지되도록 I/O 제어부(160)를 제어한다(S916). 이에 따라 I/O 제어부(160)는 통지 방식을 폴링 방식에서 인터럽트 모드로 변경할 수 있다(S960)
그 다음, 업그레이드부(180)는 펌웨어의 업그레이드 정책을 확인하여 리부팅 시점을 확인하고(S920), 확인된 리부팅 시점에 화상형성장치(100)가 리부팅 되도록 제어할 수 있다(S930). 리부팅이 된 화상형성장치(100)는 새로운 펌웨어로 동작하게 된다(S940)
이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어 져서는 안 될 것이다.
100: 화상형성장치 110: 통신 인터페이스부
120: 사용자 인터페이스부 130: 제1 저장부
140: 제2 저장부 150: 화상 형성부
160: I/O 제어부 170: 잡 제어부
180: 업그레이드부 190: 제어부

Claims (24)

  1. 화상형성장치에 있어서,
    펌웨어를 저장하는 제1 저장부;
    상기 저장된 펌웨어를 로드하여 잡을 수행하는 제어부;
    신규 펌웨어를 입력받는 통신 인터페이스부; 및
    상기 입력받은 신규 펌웨어를 상기 제1 저장부에 설치하는 업그레이드부;를 포함하고,
    상기 제어부는, 상기 신규 펌웨어 설치 중에 신규 잡의 수행을 요청받으면, 상기 신규 펌웨어의 설치가 중지되도록 상기 업그레이드부를 제어하고, 상기 요청받은 신규 잡을 수행하는 것을 특징으로 하는 화상형성장치.
  2. 제1항에 있어서,
    상기 제어부는,
    상기 요청받은 신규 잡의 수행이 완료되면, 상기 중지된 신규 펌웨어의 설치가 재개되도록 상기 업그레이드부를 제어하는 것을 특징으로 하는 화상형성장치.
  3. 제1항에 있어서,
    상기 업그레이드부는,
    상기 신규 펌웨어를 섹터 또는 블록 단위로 플래싱(flashing)하고, 플래싱된 데이터를 상기 제1 저장부에 기록하는 것을 특징으로 하는 화상형성장치.
  4. 제3항에 있어서,
    상기 업그레이드부는,
    상기 섹터 또는 블록 단위마다 신규 잡의 수행이 요청되었는지를 확인하는 것을 특징으로 하는 화상형성장치.
  5. 제1항에 있어서,
    사용자로부터 신규 잡의 수행을 요청받는 사용자 인터페이스부; 및
    상기 통신 인터페이스부 또는 상기 사용자 인터페이스로부터 요청된 신규 잡을 인터럽트 또는 폴링 방식으로 상기 제어부에 통지하는 I/O 제어부;를 더 포함하는 것을 특징으로 하는 화상형성장치.
  6. 제5항에 있어서,
    상기 업그레이드부는,
    상기 신규 펌웨어의 설치 개시시 폴링 방식으로 요청된 신규 잡이 통지되도록 상기 I/O 제어부를 제어하고, 상기 신규 펌웨어의 설치가 종료되면 인터럽트 방식으로 요청된 신규 잡이 통지되도록 상기 I/O 제어부를 제어하는 것을 특징으로 하는 화상형성장치.
  7. 제1항에 있어서,
    상기 입력받는 신규 펌웨어를 저장하는 제2 저장부;를 더 포함하는 것을 특징으로 하는 화상형성장치.
  8. 제1항에 있어서,
    상기 제1 저장부는 복수개의 플래시 메모리를 포함하고,
    상기 업그레이드부는, 상기 복수개가 플래시 메모리 각각에 대한 신규 펌웨어를 설치하는 것을 특징으로 하는 화상형성장치.
  9. 제1항에 있어서,
    상기 업그레이드부는,
    상기 신규 펌웨어의 설치가 종료되고, 상기 화상형성장치가 아이들(idle) 상태인 경우에 상기 화상형성장치를 리부팅하고,
    상기 리부팅 시간이 기설정되어 있는 경우, 상기 신규 펌웨어의 설치가 종료되고, 기설정된 리부팅 시간이 도달하면 상기 화상형성장치를 리부팅 하는 것을 특징으로 하는 화상형성장치.
  10. 제1항에 있어서,
    상기 신규 펌웨어의 설치에 소요되는 시간을 사용자 인터페이스 창을 통하여 표시하는 사용자 인터페이스부;를 더 포함하는 것을 특징으로 하는 화상형성장치.
  11. 제10항에 있어서,
    상기 사용자 인터페이스부는,
    신규 펌웨어 설치 중에 신규 잡의 수행을 요청받으면, 상기 신규 잡의 수행 시간을 반영하여 상기 신규 펌웨어의 설치에 소요되는 시간을 표시하는 것을 특징으로 하는 화상형성장치.
  12. 제11항에 있어서,
    상기 사용자 인터페이스 창은,
    상기 신규 펌웨어의 설치에 소요되는 시간을 표시하는 제1 영역, 상기 신규 펌웨어의 구체적인 설치 동작을 표시하는 제2 영역, 상기 신규 펌웨어의 설치 중지 명령을 입력받는 제3 영역 및 상기 신규 펌웨어의 설치 중단 명령을 입력받는 제4 영역 중 적어도 하나의 영역을 포함하는 것을 특징으로 하는 화상형성장치.
  13. 펌웨어를 저장하고, 저장된 펌웨어를 로드하여 잡을 수행하는 화상형성장치에서의 펌웨어 업그레이드 방법에 있어서,
    신규 펌웨어를 입력받는 단계;
    상기 입력받은 신규 펌웨어를 설치하는 단계; 및
    상기 신규 펌웨어 설치 중에 신규 잡의 수행을 요청받으면, 상기 신규 펌웨어의 설치를 중지하고, 상기 요청받은 신규 잡을 수행하는 단계;를 포함하는 펌웨어 업그레이드 방법.
  14. 제13항에 있어서,
    상기 요청받은 신규 잡의 수행이 완료되면, 상기 중지된 신규 펌웨어의 설치를 재개하는 단계;를 더 포함하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
  15. 제13항에 있어서,
    상기 설치하는 단계는,
    상기 신규 펌웨어를 섹터 또는 블록 단위로 플래싱(flashing)하고, 플래싱된 데이터를 상기 화상형성장치에 기록하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
  16. 제15항에 있어서,
    상기 설치하는 단계는,
    상기 섹터 또는 블록 단위마다 신규 잡의 수행이 요청되었는지를 확인하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
  17. 제13항에 있어서,
    상기 설치하는 단계는,
    상기 신규 펌웨어의 설치 개시시 상기 신규 잡의 수행이 폴링 방식으로 통지되도록 제어하고, 상기 신규 펌웨어의 설치가 종료되면 상기 신규 잡의 수행이 인터럽트 방식으로 통지되도록 제어하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
  18. 제13항에 있어서,
    상기 입력받는 신규 펌웨어를 저장하는 단계;를 더 포함하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
  19. 제13항에 있어서,
    상기 화상형성장치는 복수의 플래시 메모리를 이용하여 펌웨어를 저장하고,
    상기 설치하는 단계는,
    상기 복수개가 플래시 메모리 각각에 대한 신규 펌웨어를 설치하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
  20. 제13항에 있어서,
    상기 신규 펌웨어의 설치가 종료되면 상기 화상형성장치를 리부팅 하는 단계;를 더 포함하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
  21. 제20항에 있어서,
    상기 리부팅 하는 단계는,
    상기 신규 펌웨어의 설치가 종료되고, 상기 화상형성장치가 아이들(idle) 상태인 경우 또는 상기 리부팅 시간이 기설정되어 있는 경우, 상기 신규 펌웨어의 설치가 종료되고 기설정된 리부팅 시간이 도달하면 상기 화상형성장치를 리부팅 하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
  22. 제13항에 있어서,
    상기 신규 펌웨어의 설치에 소요되는 시간을 사용자 인터페이스 창을 통하여 표시하는 단계;를 더 포함하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
  23. 제22항에 있어서,
    상기 표시하는 단계는,
    신규 펌웨어 설치 중에 신규 잡의 수행을 요청받으면, 상기 신규 잡의 수행 시간을 반영하여 상기 신규 펌웨어의 설치에 소요되는 시간을 표시하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
  24. 제22항에 있어서,
    상기 사용자 인터페이스 창은,
    상기 신규 펌웨어의 설치에 소요되는 시간을 표시하는 제1 영역, 상기 신규 펌웨어의 구체적인 설치 동작을 표시하는 제2 영역, 상기 신규 펌웨어의 설치 중지 명령을 입력받는 제3 영역 및 상기 신규 펌웨어의 설치 중단 명령을 입력받는 제4 영역 중 적어도 하나의 영역을 포함하는 것을 특징으로 하는 펌웨어 업그레이드 방법.
KR1020110093462A 2011-09-16 2011-09-16 화상형성장치 및 펌웨어 업그레이드 방법 KR20130029995A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020110093462A KR20130029995A (ko) 2011-09-16 2011-09-16 화상형성장치 및 펌웨어 업그레이드 방법
EP12178700.6A EP2570919B1 (en) 2011-09-16 2012-07-31 Image forming apparatus and method of upgrading firmware
US13/617,641 US20130074060A1 (en) 2011-09-16 2012-09-14 Image forming apparatus and method of upgrading firmware

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110093462A KR20130029995A (ko) 2011-09-16 2011-09-16 화상형성장치 및 펌웨어 업그레이드 방법

Publications (1)

Publication Number Publication Date
KR20130029995A true KR20130029995A (ko) 2013-03-26

Family

ID=46717715

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110093462A KR20130029995A (ko) 2011-09-16 2011-09-16 화상형성장치 및 펌웨어 업그레이드 방법

Country Status (3)

Country Link
US (1) US20130074060A1 (ko)
EP (1) EP2570919B1 (ko)
KR (1) KR20130029995A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101427755B1 (ko) * 2013-04-26 2014-08-07 주식회사 코아로직 Usb를 이용한 펌웨어 업그레이드 장치 및 방법

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10394570B2 (en) 2010-02-26 2019-08-27 Hp Printing Korea Co., Ltd. Method of generating boot image for fast booting and image forming apparatus for performing the method, and method of performing fast booting and image forming apparatus for performing the method
US9405526B2 (en) * 2012-08-07 2016-08-02 Microsoft Technology Licensing, Llc Initiating update operations
KR101959359B1 (ko) * 2012-11-06 2019-03-18 에이치피프린팅코리아 유한회사 빠른 부팅을 위한 부트 이미지를 업데이트하는 방법 및 이를 수행하는 화상형성장치
JP6161314B2 (ja) 2013-02-18 2017-07-12 キヤノン株式会社 画像形成装置、制御方法およびコンピュータプログラム
JP6456150B2 (ja) * 2015-01-13 2019-01-23 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、およびプログラム
US9959125B2 (en) * 2015-08-05 2018-05-01 Samsung Electronics Co., Ltd. Field update of boot loader using regular device firmware update procedure
CN105740034A (zh) * 2016-04-13 2016-07-06 深圳市高巨创新科技开发有限公司 Mcu在线升级固件的系统及方法
US20230130568A1 (en) * 2020-03-04 2023-04-27 Kyocera Document Solutions Inc. Wireless communication device, wireless communication configuration program and wireless communication configuration method

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW436734B (en) * 1998-12-24 2001-05-28 Destiny Technology Corp Printer firmware updating method
JP4596696B2 (ja) * 2001-07-16 2010-12-08 キヤノン株式会社 情報処理装置および印刷装置
CA2357382A1 (en) * 2001-09-17 2003-03-17 Soma Networks, Inc. Software update method, apparatus and system
US20060069825A1 (en) * 2004-09-24 2006-03-30 Hodder Leonard B Method and system of transferring firmware from a host device to a printing device
JP2007025821A (ja) * 2005-07-12 2007-02-01 Seiko Epson Corp 情報処理装置及び情報処理装置の制御方法
US7761864B2 (en) * 2005-08-09 2010-07-20 Intermec Ip Corp. Method, apparatus and article to load new instructions on processor based devices, for example, automatic data collection devices
US7814480B2 (en) * 2005-09-05 2010-10-12 Seiko Epson Corporation Control software updating technique for a network apparatus
US7500095B2 (en) * 2006-03-15 2009-03-03 Dell Products L.P. Chipset-independent method for locally and remotely updating and configuring system BIOS
US7962736B1 (en) * 2006-10-03 2011-06-14 American Megatrends, Inc. Interactive pre-OS firmware update with repeated disabling of interrupts
ES2371995T3 (es) * 2007-12-13 2012-01-12 Telefonaktiebolaget Lm Ericsson (Publ) Actualización del firmware de un dispositivo electrónico.
US20100031248A1 (en) * 2008-07-31 2010-02-04 Microsoft Corporation Installation Sequence Manager
WO2010080087A1 (en) * 2009-01-12 2010-07-15 Thomson Licensing Systems and methods for interrupting upgrades of content distribution systems
JP4788796B2 (ja) * 2009-03-26 2011-10-05 ブラザー工業株式会社 ネットワークシステム
JP5326918B2 (ja) * 2009-08-05 2013-10-30 株式会社リコー 電子機器,ソフトウェア更新方法,プログラム,および記録媒体
US8826261B1 (en) * 2010-02-25 2014-09-02 Bloom Energy Corporation Programming processors through CAN interface without changing the boot mode select pins
CN102270144B (zh) * 2010-06-04 2014-12-10 鸿富锦精密工业(深圳)有限公司 嵌入式网络设备及其更新固件的方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101427755B1 (ko) * 2013-04-26 2014-08-07 주식회사 코아로직 Usb를 이용한 펌웨어 업그레이드 장치 및 방법

Also Published As

Publication number Publication date
EP2570919A1 (en) 2013-03-20
EP2570919B1 (en) 2019-06-19
US20130074060A1 (en) 2013-03-21

Similar Documents

Publication Publication Date Title
EP2570919B1 (en) Image forming apparatus and method of upgrading firmware
US7506142B2 (en) Method for configuring device driver by customizing same user setting using in different image processing devices
EP2284704B1 (en) Information processing apparatus, method, and control program for determinnig the suitable monitoring time corresponding to a selected mode of processing
US20180351807A1 (en) Information processing apparatus, control method for information processing apparatus, and recording medium
US9563444B2 (en) Image forming apparatus having hibernation function according to device connection states, control method therefor, and storage medium
US20110055854A1 (en) Image forming apparatus and method
US20160004482A1 (en) Printing system, image processing apparatus, information processing apparatus, information processing method, and program
JP5948855B2 (ja) 機器、プログラム管理方法、プログラム管理プログラム、及び記録媒体
JP7022602B2 (ja) 画像処理装置、その制御方法、及びプログラム
US10778861B2 (en) Image forming apparatus, method for controlling image forming apparatus, and storage medium configured to change update processing control depending on whether an update target application is of a type for offering an authentication function
US20080079991A1 (en) Information processing apparatus device driver deletion method and storage medium storing control program for executing the method
US8775768B2 (en) Information processing apparatus and method of controlling the same
JP6264572B2 (ja) 電子機器、バックアップ先決定プログラムおよびバックアッププログラム
JP6481508B2 (ja) 端末装置、プログラム及び出力システム
US11797292B2 (en) Information processing apparatus using swap file, control method therefor, and storage medium
US11599303B2 (en) Information processing apparatus using nonvolatile semiconductor memory device and control method therefor
US20130191623A1 (en) Information processing apparatus, control method therefor, and storage medium
JP2006293638A (ja) 情報処理装置及び周辺装置
JP2013152509A (ja) 画像処理装置
US10019600B2 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
JP4150860B2 (ja) デバイス装置
US20110321046A1 (en) Process information management apparatus and method, image forming apparatus, and computer readable medium storing program therefor
US11977801B2 (en) Image processing apparatus, control method, and storage medium
JP6481666B2 (ja) 画像処理装置
JP6561748B2 (ja) 画像形成装置および管理プログラム

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid