KR20160086754A - 펌웨어 리프레시 방법, 장치, 프로그램 및 기록매체 - Google Patents

펌웨어 리프레시 방법, 장치, 프로그램 및 기록매체 Download PDF

Info

Publication number
KR20160086754A
KR20160086754A KR1020157020627A KR20157020627A KR20160086754A KR 20160086754 A KR20160086754 A KR 20160086754A KR 1020157020627 A KR1020157020627 A KR 1020157020627A KR 20157020627 A KR20157020627 A KR 20157020627A KR 20160086754 A KR20160086754 A KR 20160086754A
Authority
KR
South Korea
Prior art keywords
firmware
electronic device
update
storage area
connected device
Prior art date
Application number
KR1020157020627A
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 시아오미 아이엔씨.
Publication of KR20160086754A publication Critical patent/KR20160086754A/ko

Links

Images

Classifications

    • 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/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
    • 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/4411Configuring for operating with peripheral devices; Loading of device drivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • 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
    • 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/445Program loading or initiating

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

본 발명은 펌웨어 리프레시 방법 및 장치에 관한 것으로서 스마트 기기 분야에 속한다. 상기 펌웨어 리프레시 방법은, 전자기기가 기동단계에 있을 경우 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하는 단계와; 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하는 단계와; 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우 전자기기에 기입된 업데이트 펌웨어를 작동시키는 단계를 포함한다. 본 발명은, 전자기기에 상응한 드라이버를 장착하지 않을 경우 전용 리프레시 툴에서 펌웨어를 판독할 수 없게 되어 펌웨어 리프레시에 실패하는 문제를 해결함으로써 펌웨어 리프레시 단계를 단순화시키고 펌웨어 리프레시의 성공율을 향상시키는 효과를 달성할 수 있다.

Description

펌웨어 리프레시 방법 및 장치 {FIRMWARE REFRESHING METHOD AND DEVICE}
본 발명은 스마트 기기 분야에 관한 것으로서, 특히 펌웨어 리프레시 방법 및 장치에 관한 것이다.
본원 발명은 출원번호가 201410778909.X이고, 출원일자가 2014년 12월 15일인 중국특허출원에 기반하여 제출하였고, 상기 중국특허출원의 우선권을 주장하는 바, 상기 중국특허출원의 모든 내용은 참조로서 본원 발명에 원용된다.
펌웨어는 전자기기 중 가장 기본적인 소프트웨어로서 전자기기의 정상적인 작동을 확보한다. 하지만 일부 외부 요인으로 인해 펌웨어에 문제가 발생되어 전자기기의 정상적인 작동에 영향을 미치게 된다.
전자기기의 펌웨어에 문제가 발생한 경우, 전용 리프레시 툴을 사용하여 펌웨어에 대해 리프레시를 수행한다. 펌웨어를 업데이트 할 경우, 일반적으로 전용 리프레시 툴을 전자기기에 접속하고 전자기기는 상기 전용 리프레시 툴과 대응하는 드라이버를 작동시킴으로써 전용 리프레시 툴의 펌웨어를 판독하여 기존 펌웨어에 대한 리프레시를 수행한다.
본 발명을 실시하는 과정에서 발명인은 상기 방식에 적어도 하기와 같은 흠결이 존재함을 발견하였다. 전자기기에 상응하는 드라이버를 장착하지 않을 경우 전용 리프레시 툴에서 펌웨어를 판독할 수 없게 되어 펌웨어 리프레시에 실패하게 된다.
관련기술 중 전자기기에 상응한 드라이버를 장착하지 않을 경우 전용 리프레시 툴에서 펌웨어를 판독할 수 없게 되어 펌웨어 리프레시에 실패하는 문제를 해결하기 위하여 본 발명의 실시예는 펌웨어 리프레시 방법 및 장치를 제공하는 바, 과제 해결 수단은 하기와 같다.
본 발명의 실시예의 제1양태에 근거하면,
전자기기가 기동단계에 있을 경우, 상기 기동단계 이전에 상기 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하는 단계와;
상기 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 상기 접속 기기 중의 업데이트 펌웨어를 상기 전자기기에 기입하는 단계와;
상기 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 상기 전자기기에 기입된 상기 업데이트 펌웨어를 작동시키는 단계를 포함하는 펌웨어 리프레시 방법을 제공한다.
선택적으로, 상기 기동단계 이전에 상기 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하는 상기 단계는,
상기 기동단계 이전에 상기 전자기기와 연결된 상기 접속 기기의 인터페이스 디스크립터 정보를 획득하는 단계와;
상기 인터페이스 디스크립터 정보가 상기 접속 기기를 대용량 저장 기기로 지시할 경우, 상기 접속 기기의 기기 유형 정보를 획득하는 단계와;
상기 기기 유형 정보가 상기 접속 기기의 기기 유형을 드라이버가 필요 없는 유형으로 지시할 경우, 상기 접속 기기를 상기 드라이버가 필요 없는 기기로 결정하는 단계를 포함한다.
선택적으로, 상기 접속 기기 중의 업데이트 펌웨어를 상기 전자기기에 기입하는 상기 단계는,
상기 접속 기기에서 상기 업데이트 펌웨어의 저장주소를 획득하는 단계와;
상기 전자기기 중의 펌웨어 저장영역을 결정하는 단계와;
상기 저장주소에 저장된 상기 업데이트 펌웨어를 상기 펌웨어 저장영역에 기입하는 단계를 포함한다.
선택적으로, 상기 접속 기기에서 상기 업데이트 펌웨어의 저장주소를 획득하는 상기 단계는,
상기 접속 기기의 특정 섹터 중의 정보를 판독하는 단계와;
상기 특정 섹터 중의 정보에 근거하여 상기 접속 기기가 특정된 파일 시스템을 적용하였는지의 여부를 판정하는 단계와;
상기 접속 기기가 특정된 파일 시스템을 적용한 것으로 판정되면, 기 설정된 저장주소를 상기 업데이트 펌웨어의 저장주소로 결정하는 단계와;
상기 접속 기기가 특정된 파일 시스템을 적용하지 않은 것으로 판정되면, 상기 특정 섹터 중의 정보가 구비한, 상기 업데이트 펌웨어의 시작 주소와 데이터 길이를 포함하는 메타 정보에 근거하여 상기 업데이트 펌웨어의 저장주소를 결정하는 단계를 포함한다.
선택적으로, 상기 저장주소에 저장된 상기 업데이트 펌웨어를 상기 펌웨어 저장영역에 기입하는 상기 단계는,
상기 접속 기기에 하나의 상기 펌웨어 저장영역이 포함될 경우, 상기 업데이트 펌웨어를 상기 펌웨어 저장영역에 저장된 기존 펌웨어로 교체하는 단계와;
상기 접속 기기에 적어도 두개의 상기 펌웨어 저장영역이 포함될 경우, 상기 업데이트 펌웨어를 그 중의 상기 전자기기가 작동하지 않는 펌웨어를 저장하기 위한 비활성 영역으로 설정된 펌웨어 저장영역에 기입하는 단계를 포함한다.
선택적으로, 상기 펌웨어 리프레시 방법은,
상기 업데이트 펌웨어가 상기 비활성 영역으로 설정된 펌웨어 저장영역에 정확히 기입되었는지의 여부를 검출하는 단계와;
상기 업데이트 펌웨어가 상기 비활성 영역으로 설정된 펌웨어 저장영역에 이미 정확히 기입되었음이 검출되면 본래 활성영역으로 설정된 펌웨어 저장영역을 비활성 영역으로 설정하고 상기 업데이트 펌웨어가 정확히 기입된 상기 펌웨어 저장영역을 활성영역으로 설정하되, 상기 활성영역으로 설정된 펌웨어 저장영역은 상기 전자기기가 정상적인 작동 단계에 있을 때 작동되는 펌웨어를 저장하기 위한 것인 단계를 더 포함한다.
본 발명의 실시예의 제2양태에 근거하면,
전자기기가 기동단계에 있을 경우, 상기 기동단계 이전에 상기 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하도록 구성된 기기 검출 모듈과;
상기 기기 검출 모듈이 상기 접속 기기가 드라이버가 필요 없는 기기임을 검출할 경우, 상기 접속 기기 중의 업데이트 펌웨어를 상기 전자기기에 기입하도록 구성된 펌웨어 기입 모듈과;
상기 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 상기 펌웨어 기입 모듈을 작동시켜 상기 전자기기 중의 상기 업데이트 펌웨어를 기입하도록 구성된 펌웨어 작동 모듈을 포함하는 펌웨어 리프레시 장치를 제공한다.
상기 기기 검출 모듈은,
상기 기동단계 이전에 상기 전자기기와 연결된 상기 접속 기기의 인터페이스 디스크립터 정보를 획득하도록 구성된 제1정보 획득 서브모듈과;
상기 제1정보 획득 서브모듈이 획득한 상기 인터페이스 디스크립터 정보가 상기 접속 기기를 대용량 저장기기로 지시할 경우, 상기 접속 기기의 기기 유형 정보를 획득하도록 구성된 제2정보 획득 서브모듈과;
상기 제2정보 획득 서브모듈이 획득한 상기 기기 유형 정보가 상기 접속 기기의 기기 유형을 드라이버가 필요 없는 유형으로 지시할 경우, 상기 접속 기기를 상기 드라이버가 필요 없는 기기로 결정하도록 구성된 기기 결정 서브모듈을 포함한다.
선택적으로, 상기 펌웨어 기입 모듈은,
상기 접속 기기에서 상기 업데이트 펌웨어의 저장주소를 획득하도록 구성된 주소 획득 서브모듈과;
상기 전자기기 중의 펌웨어 저장영역을 결정하도록 구성된 영역 결정 서브모듈과;
상기 주소 획득 서브모듈이 획득한 상기 저장주소에 저장된 상기 업데이트 펌웨어를 상기 영역 결정 서브모듈이 결정한 상기 펌웨어 저장영역에 기입하도록 구성된 펌웨어 기입 서브모듈을 포함한다.
선택적으로, 상기 주소 획득 서브모듈은,
상기 접속 기기의 특정 섹터 중의 정보를 판독하도록 구성된 섹터정보 판독 서브모듈과;
상기 섹터정보 판독 서브모듈이 획득한 상기 특정 섹터 중의 정보에 근거하여 상기 접속 기기가 특정된 파일 시스템을 적용하였는지의 여부를 판정하도록 구성된 시스템 판정 서브모듈과;
상기 시스템 판정 서브모듈이 상기 접속 기기가 특정된 파일 시스템을 적용한 것으로 판정하면 기 설정된 저장주소를 상기 업데이트 펌웨어의 저장주소로 결정하도록 구성된 제1결정 서브모듈과;
상기 시스템 판정 서브모듈이 상기 접속 기기가 특정된 파일 시스템을 적용하지 않은 것으로 판정하면 상기 특정 섹터 중의 정보가 구비한, 상기 업데이트 펌웨어의 시작 주소와 데이터 길이를 포함하는 메타 정보에 근거하여 상기 업데이트 펌웨어의 저장주소를 결정하도록 구성된 제2결정 서브모듈을 포함한다.
선택적으로, 상기 펌웨어 기입 서브모듈은,
상기 접속 기기에 하나의 상기 펌웨어 저장영역이 포함될 경우, 상기 업데이트 펌웨어를 상기 펌웨어 저장영역에 저장된 기존 펌웨어로 교체하도록 구성된 제1기입 서브모듈과;
상기 접속 기기에 적어도 두개의 상기 펌웨어 저장영역이 포함될 경우, 상기 업데이트 펌웨어를 그 중의 상기 전자기기가 작동하지 않는 펌웨어를 저장하기 위한 비활성 영역으로 설정된 펌웨어 저장영역에 기입하도록 구성된 제2기입 서브모듈을 포함한다.
선택적으로, 상기 펌웨어 리프레시 장치는,
상기 업데이트 펌웨어가 상기 비활성 영역으로 설정된 펌웨어 저장영역에 정확히 기입되었는지의 여부를 검출하도록 구성된 펌웨어 검출 모듈과;
상기 펌웨어 검출 모듈이 상기 업데이트 펌웨어가 상기 비활성 영역으로 설정된 펌웨어 저장영역에 이미 정확히 기입되었음을 검출하면 본래 활성영역으로 설정된 펌웨어 저장영역을 비활성 영역으로 설정하고 상기 업데이트 펌웨어가 정확히 기입된 상기 펌웨어 저장영역을 활성영역으로 설정하되, 상기 활성영역으로 설정된 펌웨어 저장영역은 상기 전자기기가 정상적인 작동 단계에 있을 때 작동되는 펌웨어를 저장하도록 구성된 영역 설정 모듈을 포함한다.
본 발명의 실시예의 제3양태에 근거하면,
프로세서와;
프로세서가 실행 가능한 인스트럭션을 저장하기 위한 메모리를 포함하고;
상기 프로세서는,
전자기기가 기동단계에 있을 경우, 상기 기동단계 이전에 상기 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하고;
상기 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 상기 접속 기기 중의 업데이트 펌웨어를 상기 전자기기에 기입하며;
상기 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 상기 전자기기에 기입된 상기 업데이트 펌웨어를 작동시키도록 구성된 펌웨어 리프레시 장치를 제공한다.
본 발명의 실시예에서 제공하는 과제 해결 수단은 하기와 같은 유리한 효과를 포함할 수 있다.
전자기기가 기동단계에 있을 경우 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하고 접속 기기가 드라이버가 필요 없는 기기로 검출되면 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하며 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우 전자기기에 기입된 업데이트 펌웨어를 작동시켜 전자기기에 상응한 드라이버를 장착하지 않을 경우에도 드라이버가 필요 없는 기기를 통하여 전자기기의 펌웨어 리프레시를 완성함으로써 전자기기에 상응한 드라이버를 장착하지 않을 경우 전용 리프레시 툴에서 펌웨어를 판독할 수 없게 되어 펌웨어 리프레시에 실패하는 문제를 해결하고 펌웨어 리프레시 단계를 단순화시켜 펌웨어 리프레시의 성공율을 향상시키는 효과를 달성할 수 있다.
상기의 일반적인 설명과 후술되는 구체적인 설명은 단지 예시적이고 해석적인 것이며 본 발명을 한정하는 것이 아님을 이해해야 한다.
아래의 도면은 명세서에 병합되어 명세서의 일부를 구성하는 바, 본 발명에 맞는 실시예를 예시하며 명세서와 함께 본 발명의 원리를 해석하기 위한 것이다.
도1은 본 발명의 예시적 실시예에서 제공하는 펌웨어 리프레시 방법의 흐름도이다.
도2는 본 발명의 다른 예시적 실시예에서 제공하는 펌웨어 리프레시 방법의 흐름도이다.
도3은 본 발명의 예시적 실시예에서 제공하는 펌웨어 리프레시 장치의 구조 블록도이다.
도4는 본 발명의 예시적 실시예에서 제공하는 펌웨어 리프레시 장치의 구조 블록도이다.
도5는 본 발명의 예시적 실시예에서 제공하는 펌웨어 리프레시 장치의 모식도이다.
상기 도면을 통하여 본 발명의 명확한 실시예를 도시하였고 하기 내용에서 더욱 상세히 설명한다. 이러한 도면과 문자 설명은 그 어떤 방식으로 본 발명의 취지의 범위를 한정하려는 것이 아니라 특정된 실시예를 참고로 하여 본 기술 분야의 당업자로 하여금 본 발명의 개념을 이해하도록 하기 위한 것이다.
여기서, 예시적 실시예에 대하여 상세하게 설명하고 이를 첨부되는 도면에 예시적으로 나타냈다. 하기에서 첨부되는 도면에 대하여 설명할 때 별도로 표시하지 않는 한 다른 도면의 동일한 숫자는 동일하거나 유사한 구성요소를 나타낸다. 하기의 예시적 실시예에서 설명한 실시형태는 본 발명과 일치한 모든 실시형태를 의미하는 것은 아니다. 반대로, 이들은 첨부된 특허청구범위에서 설명한 본 발명의 일부 양태와 일치한 장치와 방법에 대한 예일 뿐이다.
본 발명의 각 실시예에서 제공하는 펌웨어 리프레시 방법은 펌웨어 리프레시 기능을 구비한 전자기기에 의해 실현할 수 있다. 상기 전자기기는 스마트 폰, 스마트 TV, 태블릿 PC, 전자책 리더기, MP3 플레이어(Moving Picture Experts Group Audio Layer III, 동화상전문가그룹 오디오 계층3)와MP4(Moving Picture Experts Group Audio Layer IV, 동화상전문가그룹 오디오 계층4)플레이어 등일 수 있다.
설명을 단순화하기 위하여 하기 내용에서는 단지 펌웨어 리프레시 방법이 전자기기에 응용되는 것을 예로 들어 설명하였으나 이에 한정되지 않는다.
도 1은 본 발명의 일 예시적 실시예에서 제공하는 펌웨어 리프레시 방법의 흐름도인 바, 상기 펌웨어 리프레시 방법은 전자기기에 적용되고 하기와 같은 단계를 포함할 수 있다.
단계 101에서는, 전자기기가 기동단계에 있을 경우, 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출한다.
단계 102에서는, 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입한다.
단계 103에서는, 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 전자기기에 기입된 업데이트 펌웨어를 작동한다.
선택적으로, 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하는 단계는,
기동단계 이전에 전자기기와 연결된 접속 기기의 인터페이스 디스크립터정보(Interface Descripter Information)를 획득하는 단계와;
인터페이스 디스크립터 정보가 접속 기기를 대용량 저장 기기로 지시할 경우, 접속 기기의 기기 유형 정보를 획득하는 단계와;
기기 유형 정보가 접속 기기의 기기 유형을 드라이버가 필요 없는 유형으로 지시할 경우, 접속 기기를 드라이버가 필요 없는 기기로 결정하는 단계를 포함한다.
선택적으로, 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하는 단계는,
접속 기기에서 업데이트 펌웨어의 저장주소를 획득하는 단계와;
전자기기 중의 펌웨어 저장영역을 결정하는 단계와;
저장주소에 저장된 업데이트 펌웨어를 펌웨어 저장영역에 기입하는 단계를 포함한다.
선택적으로, 접속 기기에서 업데이트 펌웨어의 저장주소를 획득하는 단계는,
접속 기기의 특정 섹터 중의 정보를 판독하는 단계와;
특정 섹터 중의 정보에 근거하여 접속 기기가 특정된 파일 시스템을 적용하였는지의 여부를 판정하는 단계와;
접속 기기가 특정된 파일 시스템을 적용한 것으로 판정되면, 기 설정된 저장주소를 업데이트 펌웨어의 저장주소로 결정하는 단계와;
접속 기기가 특정된 파일 시스템을 적용하지 않은 것으로 판정되면, 특정 섹터 중의 정보가 구비한, 업데이트 펌웨어의 시작 주소와 데이터 길이를 포함하는 메타 정보에 근거하여 업데이트 펌웨어의 저장주소를 결정하는 단계를 포함한다.
선택적으로, 저장주소에 저장된 업데이트 펌웨어를 펌웨어 저장영역에 기입하는 단계는,
접속 기기에 하나의 펌웨어 저장영역이 포함될 경우, 업데이트 펌웨어를 펌웨어 저장영역에 저장된 기존 펌웨어로 교체하는 단계와;
접속 기기에 적어도 두개의 펌웨어 저장영역이 포함될 경우, 업데이트 펌웨어를 그 중의 전자기기가 작동하지 않는 펌웨어를 저장하기 위한 비활성 영역으로 설정된 펌웨어 저장영역에 기입하는 단계를 포함한다.
선택적으로, 본 발명의 펌웨어 리프레시 방법은, 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 정확히 기입되었는지의 여부를 검출하는 단계와;
업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 이미 정확히 기입되었음이 검출되면 본래 활성영역으로 설정된 펌웨어 저장영역을 비활성 영역으로 설정하고 업데이트 펌웨어가 정확히 기입된 펌웨어 저장영역을 활성영역으로 설정하되, 상기 활성영역으로 설정된 펌웨어 저장영역은 전자기기가 정상적인 작동 단계에 있을 때 작동되는 펌웨어를 저장하기 위한 것인 단계를 더 포함한다.
상술한 바와 같이, 본 실시예에서 제공하는 펌웨어 리프레시 방법은 전자기기가 기동단계에 있을 경우 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하고 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하며 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우 전자기기에 기입된 업데이트 펌웨어를 작동시켜 전자기기에 상응한 드라이버를 장착하지 않을 경우에도 드라이버가 필요 없는 기기를 통하여 전자기기의 펌웨어 리프레시를 완성함으로써 전자기기에 상응한 드라이버를 설치하지 않을 경우 전용 리프레시 툴에서 펌웨어를 판독할 수 없게 되어 펌웨어 리프레시에 실패하는 문제를 해결하고 펌웨어 리프레시 단계를 단순화시켜 펌웨어 리프레시의 성공율을 향상시키는 효과를 달성할 수 있다.
도 2는 본 발명의 다른 일 예시적 실시예에서 제공하는 펌웨어 리프레시 방법의 흐름도인 바, 상기 펌웨어 리프레시 방법은 전자기기에 적용되고 하기와 같은 단계를 포함할 수 있다.
단계 201에서는, 전자기기가 기동단계에 있을 경우, 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출한다.
전자기기가 기동하지 않을 경우, 접속 기기는 전자기기가 제공한 외부 인터페이스를 통하여 전자기기와 연결되되, 상기 외부 인터페이스는 전자기기의 USB(Universal Serial Bus, 범용 직렬 버스) 인터페이스일 수 있다. 전자기기에 USB 인터페이스가 제공되지 않을 경우 전자기기는 전용 케이블을 통해 접속 기기와 연결될 수도 있다. 예를 들어, 스마트폰 등 유형의 전자기기에는 USB 인터페이스가 제공되지 않으나 스마트폰은 전용 케이블을 통해 접속 기기와 연결될 수 있다.
전자기기는 접속 기기와 연결된 후 상기 전자기기를 기동시킨다. 기동단계에서 전자기기는 접속 기기와 연결되었는지의 여부를 검출하여 접속 기기와 연결되었음이 검출되면 전자기기는 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하는데 드라이버가 필요 없는 기기는 특정된 드라이버가 필요없이 기동이 가능한 기기를 가리킨다. 여기서, 전자기기가 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하는 단계는 하기와 같은 서브 단계를 포함할 수 있다.
1. 전자기기가 기동단계 이전에 전자기기와 연결된 접속 기기의 인터페이스 디스크립터 정보를 획득한다.
접속 기기의 인터페이스 디스크립터 정보는 접속 기기의 기능을 표시하기 위한 것인 바, 전자기기는 상기 인터페이스 디스크립터 정보를 획득함으로써 어떤 종류의 드라이버를 로딩하여 상기 접속 기기를 구동시킬것인지를 결정한다. 상기 인터페이스 디스크립터 정보는 인터페이스의 베이스 클래스 타입(Base class type), 인터페이스의 서브 클래스 타입(Sub class type)과 인터페이스 프로토콜(Protocol)을 포함하는 바, 전자기기는 인터페이스 열거를 통해 상기 인터페이스 디스크립터 정보 중의 인터페이스의 베이스 클래스 타입, 인터페이스의 서브 클래스 타입과 인터페이스 프로토콜 정보를 각각 획득한다. 예를 들어, 전자기기는 인터페이스 열거를 통해 상기 접속 기기의 인터페이스의 베이스 클래스 타입이 USB_CLASS_MASS_STORAGE이고, 인터페이스의 서브 클래스 타입이 USB_SCSI 이며, 인터페이스 프로토콜이 USB_PR_BULK 임을 획득한다.
2. 인터페이스 디스크립터 정보가 접속 기기를 대용량 저장 기기로 지시할 경우, 전자기기가 접속 기기의 기기 유형 정보를 획득한다.
전자기기는 인터페이스 열거 과정에서 획득한 인터페이스 디스크립터 정보를 식별하여, 상기 인터페이스 디스크립터 정보가 상기 접속 기기를 대용량 저장기기로 지시할 경우, 전자기기는 상기 접속 기기의 기기 유형 정보를 진일보로 획득하되, 상기 기기 유형 정보는 전자기기가 SCSI(Small Computer System Interface, 소형 컴퓨터 시스템 인터페이스) 획득하고, 인스트럭션을 발송함으로써 획득할 수 있다.
예를 들어, 전자기기가 획득한 접속 기기의 인터페이스 디스크립터 정보의 인터페이스의 베이스 클래스 타입이 USB_CLASS_MASS_STORAGE이고, 인터페이스의 서브 클래스 타입이 USB_SCSI이며, 인터페이스 프로토콜이 USB_PR_BULK이다. 즉 상기 접속 기기를 대용량 저장기기로 결정할 수 있고 전자기기는 SCSI 획득 인스트럭션을 발송하여 획득한 리턴값을 상기 기기의 기기 유형 정보로 결정한다.
3. 기기 유형 정보가 접속 기기의 기기 유형을 드라이버가 필요 없는 유형으로 지시할 경우, 전자기기는 접속 기기를 상기 드라이버가 필요 없는 기기로 결정한다.
여기서, 리턴값과 기기 유형의 대응관계를 미리 설정할 수 있다. 예를 들어, 전자기기가 SCSI 획득 인스트럭션을 발송한 후, 수신한 리턴값이 0x00 이면 전자기기는 상기 리턴값과 대응관계에 근거하여 상기 접속 기기가 U 디스크(U-disk)이고, 드라이버가 필요 없는 유형임을 결정할 수 있다. 즉 상기 접속 기기를 드라이버가 필요 없는 기기로 결정할 수 있다.
단계 202에서는, 접속 기기에서 업데이트 펌웨어의 저장주소를 획득한다.
상기 접속 기기를 드라이버가 필요 없는 기기로 결정하였으므로 전자기기는 특정된 드라이버를 사용할 필요가 없이 바로 상기 접속 기기에 저장된 업데이트 펌웨어를 판독할 수 있다. 업데이트 펌웨어를 판독할 경우, 접속 기기가 적용하는 파일 시스템 유형이 상이함으로 인해 대응되는 업데이트 펌웨어의 저장주소도 상이하다. 따라서 전자기기는 접속 기기의 파일 시스템 유형에 근거하여 상기 업데이트 펌웨어의 저장주소를 결정해야 하는데 상기 단계는 하기와 같은 서브 단계를 포함할 수 있다.
1. 전자기기는 접속 기기의 특정 섹터 중의 정보를 판독한다.
상이한 파일 시스템과 대응하는 특정 섹터 중의 정보 저장 포맷이 상이하므로 전자기기는 접속 기기의 특정 섹터 중의 정보를 판독함으로써 접속 기기의 파일 시스템을 결정할 수 있다. 일반적으로 전자기기는 접속 기기의 첫번째 섹터의 정보를 판독함을 유의해야 한다.
2. 전자기기가 특정 섹터 중의 정보에 근거하여 접속 기기가 특정된 파일 시스템을 적용하였는지의 여부를 판정한다.
전자기기가 판독된 특정 섹터 중의 정보에 근거하여 접속 기기에 적용한 파일 시스템의 유형을 결정할 경우, 상기 전자기기에는 특정 섹터 중의 정보와 파일 시스템 유형의 대응관계표가 미리 저장되어 있는 바, 전자기기가 판독된 특정 섹터 중의 정보에 근거하여 대응하는 파일 시스템 유형을 검색하여 대응하는 파일 시스템 유형을 찾을 수 있으면 상기 접속 기기가 특정된 파일 시스템을 적용하였음을 바로 결정할 수 있다. 여기서, 특정 섹터의 정보와 파일 시스템 유형의 대응관계표의 표 구성은 표 1에서 도시한 바와 같을 수 있다.
Figure pct00001
3. 접속 기기가 특정된 파일 시스템을 적용한 것으로 판정되면, 전자기기는 기 설정된 저장주소를 업데이트 펌웨어의 저장주소로 결정한다.
전자기기는 특정 섹터 중의 정보에 근거하여 파일 시스템을 결정한 후, 상기 파일 시스템에 근거하여 업데이트 펌웨어의 저장주소를 결정할 수 있다. 여기서, 파일 시스템과 업데이트 펌웨어의 저장위치의 대응관계표는 표 2에서 도시한 바와 같을 수 있다.
Figure pct00002
여기서, 상기 기 설정된 저장주소는 접속 기기 중의 하나의 저장경로일 수 있다. 예를 들어, 상기 기 설정된 저장주소는 "H:/펌웨어"일 수 있고 업데이트 펌웨어의 저장주소가 H 디스크 루트 디렉토리 하의 펌웨어 폴더를 나타낼 수 있다.
상이한 파일 시스템과 대응하는 업데이트 펌웨어의 저장주소는 동일할 수도 있고 상이할 수도 있다. 본 실시예는 단지 상이한 파일 시스템과 대응하는 업데이트 펌웨어의 저장주소가 상이한 경우를 예로 들어 설명하였으나 이는 본 발명을 한정하는 것은 아니다.
4. 접속 기기가 특정된 파일 시스템을 적용하지 않은 것으로 판정되면, 전자기기는 특정 섹터 중의 정보가 구비한, 업데이트 펌웨어의 시작 주소와 데이터 길이를 포함하는 메타 정보에 근거하여 업데이트 펌웨어의 저장주소를 결정하는 단계를 포함한다.
전자기기가 특정 섹터 중의 정보와 파일 시스템 유형의 대응관계표에서 판독된 특정 섹터 중의 정보와 대응하는 파일 시스템을 검색하지 못한 경우, 전자기기는 상기 접속 기기가 특정된 파일 시스템을 적용하지 않음을 결정하고 전자기기는 상기 특정 섹터 중의 정보에 포함된 메타 정보에 근거하여 상기 메타 정보에 포함된 업데이트 펌웨어의 시작 주소와 데이터 길이를 획득함으로써 업데이트 펌웨어의 저장주소를 결정한다.
단계 203에서는, 전자기기 중의 펌웨어 저장영역을 결정한다.
전자기기에서 펌웨어 저장영역의 정보는 내장 플래시 메모리의 메타 정보에 저장되어 있으므로 전자기기는 내장 플래시 메모리의 메타 정보를 판독하고 업데이트 펌웨어가 저장된 펌웨어 저장주소를 결정할 수 있다. 여기서 펌웨어 저장영역은 펌웨어를 저장하기 위한 것이다.
전자기기 중에 하나의 펌웨어 저장영역이 존재할 경우, 상기 펌웨어 저장 영역은 전자기기가 정상적인 작동 단계에 있을 경우 작동하는 펌웨어를 저장하기 위한 것이고, 전자기기 중에 적어도 두개의 펌웨어 저장영역이 존재할 경우 그 중 하나의 펌웨어 저장영역은 활성영역에 배치되며, 상기 활성영역으로 설정된 펌웨어 저장영역은 전자기기가 정상적인 작동 단계에 있을 때 작동되는 펌웨어를 저장하기 위한 것이고, 나머지 펌웨어 저장영역은 비활성 영역에 배치되며, 상기 비활성 영역으로 설정된 펌웨어 저장영역은 전자기기가 작동하지 않는 펌웨어를 저장하기 위한 것이다.
전자기기는 내장 플래시 메모리의 메타 정보를 판독할 수 있고 전자기기에 하나만 존재하는 펌웨어 저장영역을 저장 업데이트 펌웨어의 펌웨어 저장영역으로 결정하거나 또는 전자기기에서 비활성 영역으로 설정된 펌웨어 저장영역을 저장 업데이트 펌웨어의 펌웨어 저장영역으로 결정한다.
단계 202와 단계 203은 엄격한 선후관계가 없는 바, 본 실시예에서는 단지 단계 202를 단계 203 이전에 수행하는 것으로 설명하였을 뿐 이는 본 발명의 구성에 대해 한정하지 않는다.
단계 204 에서는, 저장주소에 저장된 업데이트 펌웨어를 펌웨어 저장영역에 기입한다.
업데이트 펌웨어를 상이한 펌웨어 저장영역에 기입하는 방식이 상이하므로 본 실시예는 상기 결정된 두가지 종류의 펌웨어 저장영역을 예로 들어 업데이트 펌웨어의 기입 흐름에 대해 설명한다.
첫째, 전자기기에 단지 하나의 펌웨어 저장영역만 존재할 경우, 전자기기는 펌웨어 저장영역에 저장된 기존 펌웨어를 업데이트 펌웨어로 교체한다.
전자기기 중에 단지 하나의 펌웨어 저장영역만 존재할 경우, 전자기기는 접속 기기 중의 업데이트 펌웨어를 판독하여 상기 업데이트 펌웨어를 펌웨어 저장영역에 기입하여 저장하고 상기 펌웨어 저장영역에 존재하는 기존 펌웨어를 교체한다.
선택적으로, 업데이트 펌웨어의 정확성을 확보하기 위하여 전자기기는 업데이트 펌웨어가 펌웨어 저장영역에 정확히 기입되었는지의 여부를 더 검출하여야 한다. 전자기기는 기 설정된 위치에 저장된 체크 값(Check value)에 근거하여 상기 업데이트 펌웨어가 정확히 기입되었는지의 여부를 검출하되, 상기 체크 값은 상기 업데이트 펌웨어의 앞부분 또는 뒷부분에 저장될 수 있다. 예를 들어, 전자기기는 업데이트 펌웨어의 앞부분에서 상기 체크 값을 획득하여 상기 체크 값을 사용하여 기입된 업데이트 펌웨어에 대해 CRC(Cyclic Redundancy Check, 순환 중복 검사) 체크를 실시하고 체크 결과에 근거하여 업데이트 펌웨어가 펌웨어 저장영역에 정확히 기입되었는지를 결정한다.
접속 기기 중의 업데이트 펌웨어를 펌웨어 저장영역에 기입한 후, 전자기기는 프롬프팅 메시지(Prompting message)를 발송하게 되는데 상기 프롬프팅 메시지는 업데이트 펌웨어가 기입되었음을 사용자에게 상기시켜 사용자로 하여금 접속 기기를 분리하고 전자기기를 재 기동하도록 프롬프트하기 위한 것인 바, 여기서 상기 프롬프팅 메시지는 음성 또는 문자 메시지일 수 있다.
둘째, 전자기기에 적어도 두개의 펌웨어 저장영역이 존재할 경우, 전자기기는 업데이트 펌웨어를 그 중의 전자기기가 작동하지 않는 펌웨어를 저장하기 위한 비활성 영역으로 설정된 펌웨어 저장영역에 기입한다.
예를 들어, 전자기기에 두개의 펌웨어 저장영역이 존재하고 그 중 하나는 활성영역으로 설정된 펌웨어 저장영역이고 다른 하나는 비활성 영역으로 설정된 펌웨어 저장영역이면 전자기기는 접속 기기에 존재하는 업데이트 펌웨어를 상기 비활성 영역으로 설정된 펌웨어 저장영역에 기입한다.
선택적으로, 본 실시예에서 제공하는 펌웨어 업데이트 방법은 하기와 같은 단계를 더 포함한다.
1) 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 정확히 기입되었는지의 여부를 검출하고;
2) 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 이미 정확히 기입되었음이 검출되면 본래 활성영역으로 설정된 펌웨어 저장영역을 비활성 영역으로 설정하고 업데이트 펌웨어가 정확히 기입된 펌웨어 저장영역을 활성영역으로 설정하되, 상기 활성영역으로 설정된 펌웨어 저장영역은 전자기기가 정상적인 작동 단계에 있을 때 작동되는 펌웨어를 저장하기 위한 것이다.
여기서, 업데이트 펌웨어의 정확성을 확보하기 위하여 전자기기는 기 설정된 위치에 저장되어있는 체크 값에 근거하여 상기 업데이트 펌웨어가 정확히 기입되었는지의 여부에 대해 검출을 실시하되, 상기 체크 값은 상기 업데이트 펌웨어의 앞부분 또는 뒷부분에 저장될 수 있다. 예를 들어, 전자기기는 업데이트 펌웨어의 앞부분에서 상기 체크 값을 획득하여 상기 체크 값을 사용하여 기입된 업데이트 펌웨어에 대해 CRC 체크를 실시하고 체크 결과에 근거하여 업데이트 펌웨어가 펌웨어 저장영역에 정확히 기입되었는지를 결정한다.
상기 업데이트 펌웨어가 정확히 기입되었음이 검출되면 전자기기는 상기 업데이트 펌웨어를 정확히 작동시킬 수 있음을 결정하여 상기 비활성 영역을 활성영역으로 설정한다. 전자기기에 단지 하나의 활성영역만 존재하도록 확보하기 위하여 전자기기는 또한 원 활성영역을 비활성 영역으로 설정해야 한다. 설정이 완료된 후 전자기기는 프롬프팅 메시지를 발송하게 되는데 상기 프롬프팅 메시지는 업데이트 펌웨어가 기입되었음을 사용자에게 상기시켜 사용자로 하여금 접속 기기를 분리하고 전자기기를 재 기동하도록 프롬프트하기 위한 것이다.
전자기기는 비활성 영역 중의 펌웨어를 보류할 수 있고 상기 펌웨어를 삭제하거나 교체할 수도 있는 바, 본 발명은 이에 대해 한정하지 않는다.
단계 205에서는, 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 전자기기에 기입된 업데이트 펌웨어를 작동한다.
전자기기가 기동단계에 있을 경우 접속 기기가 상기 전자기기에 연결되었는지의 여부를 검출하게 된다. 상기 전자기기에 접속 기기가 연결되었음이 검출되지 않을 경우, 전자기기는 정상적인 작동 단계에 진입하여 펌웨어 저장영역에 업데이트 펌웨어를 기입하는 단계를 수행함으로써 펌웨어의 업데이트를 실현하고, 상기 전자기기에 접속 기기가 연결되었음이 검출될 경우, 전자기기는 단계 201 내지 단계 204를 수행한다.
상술한 바와 같이, 본 실시예에서 제공하는 펌웨어 리프레시 방법은 전자기기가 기동단계에 있을 경우 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하고 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하며 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우 전자기기에 기입된 업데이트 펌웨어를 작동시켜 전자기기에 상응한 드라이버를 장착하지 않을 경우에도 드라이버가 필요 없는 기기를 통하여 전자기기의 펌웨어 리프레시를 완성함으로써 전자기기에 상응한 드라이버를 장착하지 않을 경우 전용 리프레시 툴에서 펌웨어를 판독할 수 없게 되어 펌웨어 리프레시에 실패하는 문제를 해결하고 펌웨어 리프레시 단계를 단순화시켜 펌웨어 리프레시의 성공율을 향상시키는 효과를 달성할 수 있다.
이 밖에, 전자기기를 통해 접속 기기가 특정된 파일 시스템을 적용하였는지의 여부를 검출하되, 특정된 파일 시스템을 적용한 경우 기 설정된 저장위치로부터 업데이트 펌웨어를 획득하고, 특정된 파일 시스템을 적용하지 않았을 경우 특정 섹터 중의 정보가 구비한 메타 정보에 근거하여 업데이트 펌웨어를 획득함으로써 전자기기로 하여금 상이한 파일 시스템에서 업데이트 펌웨어를 획득할 수 있도록 하여 펌웨어 리프레시의 성공율을 향상시키고 펌웨어 리프레시의 사용범위를 확대한다.
이 밖에, 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 정확히 기입되었는지의 여부를 검출하는데 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 이미 정확히 기입되었음이 검출되면 상기 펌웨어 저장영역을 활성영역으로 설정하고 업데이트 펌웨어가 정확히 기입됨이 검출될 경우 상기 비활성 영역을 활성영역으로 설정함으로써 기입된 업데이트 펌웨어의 정상적인 작동을 확보한다.
하기 내용은 본 발명의 펌웨어 리프레시 장치의 실시예로써 본 발명의 펌웨어 리프레시 방법의 실시예를 수행하는데 사용될 수 있다. 본 발명의 펌웨어 리프레시 장치의 실시예에서 공개하지 않은 세부사항은 본 발명의 펌웨어 리프레시 방법의 실시예를 참조하기 바란다.
도3은 본 발명의 일 예시적 실시예에서 제공하는 펌웨어 리프레시 장치의 구조 블록도이다. 상기 펌웨어 리프레시 장치는 소프트웨어, 하드웨어 또는 양자의 결합을 통해 전자기기의 전부 또는 일부를 형성할 수 있다. 상기 펌웨어 리프레시 장치는 기기 검출 모듈(320), 펌웨어 기입 모듈(340) 및 펌웨어 작동 모듈(360)을 포함한다.
상기 기기 검출 모듈(320)은, 전자기기가 기동단계에 있을 경우, 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하도록 구성되고;
상기 펌웨어 기입 모듈(340)은, 기기 검출 모듈(320)이 접속 기기가 드라이버가 필요 없는 기기임을 검출할 경우, 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하도록 구성되며;
상기 펌웨어 작동 모듈(360)은, 상기 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 상기 펌웨어 기입 모듈(340)을 작동시켜 전자기기 중의 업데이트 펌웨어를 기입하도록 구성된다.
상술한 바와 같이, 본 실시예에서 제공하는 펌웨어 리프레시 방법은 전자기기가 기동단계에 있을 경우 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하고 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하며 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우 전자기기에 기입된 업데이트 펌웨어를 작동시켜 전자기기에 상응한 드라이버를 장착하지 않을 경우에도 드라이버가 필요 없는 기기를 통하여 전자기기의 펌웨어 리프레시를 완성함으로써 전자기기에 상응한 드라이버를 장착하지 않을 경우 전용 리프레시 툴에서 펌웨어를 판독할 수 없게 되어 펌웨어 리프레시에 실패하는 문제를 해결하고 펌웨어 리프레시 단계를 단순화시켜 펌웨어 리프레시의 성공율을 향상시키는 효과를 달성할 수 있다.
도 4는 본 발명의 일 예시적 실시예에서 제공하는 펌웨어 리프레시 장치의 구조 블록도이다. 상기 펌웨어 리프레시 장치는 소프트웨어, 하드웨어 또는 양자의 결합을 통해 전자기기의 전부 또는 일부를 형성한다. 상기 펌웨어 리프레시 장치는, 기기 검출 모듈(420), 펌웨어 기입 모듈(440)과 펌웨어 작동 모듈(460)을 포함한다.
상기 기기 검출 모듈(420)은, 전자기기가 기동단계에 있을 경우, 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하도록 구성되고;
상기 펌웨어 기입 모듈(440)은, 기기 검출 모듈(420)이 접속 기기가 드라이버가 필요 없는 기기임을 검출할 경우, 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하도록 구성되며;
상기 펌웨어 작동 모듈(460)은, 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 펌웨어 기입 모듈(440)을 작동시켜 전자기기 중의 업데이트 펌웨어를 기입하도록 구성된다.
선택적으로, 기기 검출 모듈(420)은 제1 정보 획득 서브모듈(421), 제2 정보 획득 서브모듈(422) 및 기기 결정 서브모듈(423)을 포함한다.
상기 제1 정보 획득 서브모듈(421)은, 기동단계 이전에 전자기기와 연결된 접속 기기의 인터페이스 디스크립터 정보를 획득하도록 구성되고;
상기 제2 정보 획득 서브모듈(422)은, 제1 정보 획득 서브모듈(421)이 획득한 인터페이스 디스크립터 정보가 접속 기기를 대용량 저장기기로 지시할 경우, 접속 기기의 기기 유형 정보를 획득하도록 구성되며;
상기 기기 결정 서브모듈(423)은, 제2 정보 획득 서브모듈(422)이 획득한 기기 유형 정보가 접속 기기의 기기 유형을 드라이버가 필요 없는 유형으로 지시할 경우, 접속 기기를 드라이버가 필요 없는 기기로 결정하도록 구성된다.
선택적으로, 펌웨어 기입 모듈(440)은 주소 획득 서브모듈(441), 영역 결정 서브모듈(442) 및 펌웨어 기입 서브모듈(443)을 포함한다.
상기 주소 획득 서브모듈(441)은, 접속 기기에서 업데이트 펌웨어의 저장 주소를 획득하도록 구성되고;
상기 영역 결정 서브모듈(442)은, 전자기기 중의 펌웨어 저장영역을 결정하도록 구성되고;
상기 펌웨어 기입 서브모듈(443)은, 주소 획득 서브모듈(441)이 획득한 저장주소에 저장된 업데이트 펌웨어를 영역 결정 서브모듈(442)이 결정한 펌웨어 저장영역에 기입하도록 구성된다.
선택적으로, 주소 획득 서브모듈(441)은, 섹터정보 판독 서브모듈(441a), 시스템 판정 서브모듈(441b), 제1 결정 서브모듈(441c) 및 제2 결정 서브모듈(441d)을 포함한다.
상기 섹터정보 판독 서브모듈(441a)은, 접속 기기의 특정 섹터 중의 정보를 판독하도록 구성되고;
상기 시스템 판정 서브모듈(441b)은, 섹터정보 판독 서브모듈(441a)이 획득한 특정 섹터 중의 정보에 근거하여 접속 기기가 특정된 파일 시스템을 적용하였는지의 여부를 판정하도록 구성되고;
상기 제1 결정 서브모듈(441c)은, 시스템 판정 서브모듈(441b)이 접속 기기가 특정된 파일 시스템을 적용한 것으로 판정하면 기 설정된 저장주소를 업데이트 펌웨어의 저장주소로 결정하도록 구성되고;
상기 제2 결정 서브모듈(441d)은, 시스템 판정 서브모듈(441b)이 접속 기기가 특정된 파일 시스템을 적용하지 않은 것으로 판정하면 특정 섹터 중의 정보가 구비한, 업데이트 펌웨어의 시작 주소와 데이터 길이를 포함하는 메타 정보에 근거하여 업데이트 펌웨어의 저장주소를 결정하도록 구성된다.
선택적으로, 펌웨어 기입 서브모듈(443)은 제1 기입 서브모듈(443a)과 제2 기입 서브모듈(443b)을 포함한다.
상기 제1 기입 서브모듈(443a)은, 접속 기기에 하나의 펌웨어 저장영역이 포함될 경우, 업데이트 펌웨어를 펌웨어 저장영역에 저장된 기존 펌웨어로 교체하도록 구성되고;
상기 제2 기입 서브모듈(443b)은, 접속 기기에 적어도 두개의 펌웨어 저장영역이 포함될 경우, 업데이트 펌웨어를 그 중의 전자기기가 작동하지 않는 펌웨어를 저장하기 위한 비활성 영역으로 설정된 펌웨어 저장영역에 기입하도록 구성된다.
선택적으로, 상기 펌웨어 리프레시 장치는 펌웨어 검출 모듈과 영역 설정 모듈을 더 포함한다.
상기 펌웨어 검출 모듈(470)은, 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 정확히 기입되었는지의 여부를 검출하도록 구성되고;
상기 영역설정 모듈(480)은, 펌웨어 검출 모듈(470) 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 이미 정확히 기입되었음을 검출하면 본래 활성영역으로 설정된 펌웨어 저장영역을 비활성 영역으로 설정하고 업데이트 펌웨어가 정확히 기입된 펌웨어 저장영역을 활성영역으로 설정하되, 활성영역으로 설정된 펌웨어 저장영역은 전자기기가 정상적인 작동 단계에 있을 때 작동되는 펌웨어를 저장하도록 구성된다.
상술한 바와 같이, 본 실시예에서 제공하는 펌웨어 리프레시 방법은 전자기기가 기동단계에 있을 경우 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하고 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하며 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우 전자기기에 기입된 업데이트 펌웨어를 작동시켜 전자기기에 상응한 드라이버를 장착하지 않을 경우에도 드라이버가 필요 없는 기기를 통하여 전자기기의 펌웨어 리프레시를 완성함으로써 전자기기에 상응한 드라이버를 장착하지 않을 경우 전용 리프레시 툴에서 펌웨어를 판독할 수 없게 되어 펌웨어 리프레시에 실패하는 문제를 해결하고 펌웨어 리프레시 단계를 단순화시켜 펌웨어 리프레시의 성공율을 향상시키는 효과를 달성할 수 있다.
이 밖에, 전자기기를 통해 접속 기기가 특정된 파일 시스템을 적용하였는지의 여부를 검출하되, 특정된 파일 시스템을 적용한 경우 기 설정된 저장위치로부터 업데이트 펌웨어를 획득하고, 특정된 파일 시스템을 적용하지 않았을 경우 특정 섹터 중의 정보가 구비한 메타 정보에 근거하여 업데이트 펌웨어를 획득함으로써 전자기기로 하여금 상이한 파일 시스템에서 업데이트 펌웨어를 획득할 수 있도록 하여 펌웨어 리프레시의 성공율을 향상시키고 펌웨어 리프레시의 사용범위를 확대한다.
이 밖에, 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 정확히 기입되었는지의 여부를 검출하는데 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 이미 정확히 기입되었음이 검출되면 상기 펌웨어 저장영역을 활성영역으로 설정하고 업데이트 펌웨어가 정확히 기입됨이 검출될 경우 상기 비활성 영역을 활성영역으로 설정함으로써 기입된 업데이트 펌웨어의 정상적인 작동을 확보한다.
본 발명의 일 예시적 실시예에서는 펌웨어 리프레시 기능을 구비한 전자기기에 응용되는 펌웨어 리프레시 장치를 더 공개하는 바, 상기 펌웨어 리프레시 장치는,
프로세서와;
프로세서가 실행 가능한 인스트럭션을 저장하기 위한 메모리를 포함하고;
상기 프로세서는,
전자기기가 기동단계에 있을 경우, 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하고;
접속 기기가 드라이버가 필요 없는 기기임이 검출되면 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하며;
전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 전자기기에 기입된 업데이트 펌웨어를 작동시키도록 구성된다.
선택적으로, 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하는 단계는,
기동단계 이전에 전자기기와 연결된 접속 기기의 인터페이스 디스크립터 정보를 획득하는 단계와;
인터페이스 디스크립터 정보가 접속 기기를 대용량 저장기기로 지시할 경우, 접속 기기의 기기 유형 정보를 획득하는 단계와;
기기 유형 정보가 접속 기기의 기기 유형을 드라이버가 필요 없는 유형으로 지시할 경우, 접속 기기를 드라이버가 필요 없는 기기로 결정하는 단계를 포함한다.
선택적으로, 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하는 단계는,
접속 기기에서 업데이트 펌웨어의 저장주소를 획득하는 단계와;
전자기기 중의 펌웨어 저장영역을 결정하는 단계와;
저장주소에 저장된 업데이트 펌웨어를 펌웨어 저장영역에 기입하는 단계를 포함한다.
선택적으로, 접속 기기에서 업데이트 펌웨어의 저장주소를 획득하는 단계는,
접속 기기의 특정 섹터 중의 정보를 판독하는 단계와;
특정 섹터 중의 정보에 근거하여 접속 기기가 특정된 파일 시스템을 적용하였는지의 여부를 판정하는 단계와;
접속 기기가 특정된 파일 시스템을 적용한 것으로 판정되면, 기 설정된 저장주소를 업데이트 펌웨어의 저장주소로 결정하는 단계와;
접속 기기가 특정된 파일 시스템을 적용하지 않은 것으로 판정되면, 특정 섹터 중의 정보가 구비한, 업데이트 펌웨어의 시작 주소와 데이터 길이를 포함하는 메타 정보에 근거하여 업데이트 펌웨어의 저장주소를 결정하는 단계를 포함한다.
선택적으로, 저장주소에 저장된 업데이트 펌웨어를 펌웨어 저장영역에 기입하는 단계는,
접속 기기에 하나의 펌웨어 저장영역이 포함될 경우, 업데이트 펌웨어를 펌웨어 저장영역에 저장된 기존 펌웨어로 교체하는 단계와;
접속 기기에 적어도 두개의 펌웨어 저장영역이 포함될 경우, 업데이트 펌웨어를 그 중의 전자기기가 작동하지 않는 펌웨어를 저장하기 위한 비활성 영역으로 설정된 펌웨어 저장영역에 기입하는 단계를 포함한다.
선택적으로, 본 발명의 펌웨어 리프레시 방법은, 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 정확히 기입되었는지의 여부를 검출하는 단계와; 업데이트 펌웨어가 비활성 영역으로 설정된 펌웨어 저장영역에 이미 정확히 기입되었음이 검출되면 본래 활성영역으로 설정된 펌웨어 저장영역을 비활성 영역으로 설정하고 업데이트 펌웨어가 정확히 기입된 펌웨어 저장영역을 활성영역으로 설정하되, 상기 활성영역으로 설정된 펌웨어 저장영역은 전자기기가 정상적인 작동 단계에 있을 때 작동되는 펌웨어를 저장하기 위한 것인 단계를 더 포함한다.
상술한 바와 같이, 본 실시예에서 제공하는 펌웨어 리프레시 방법은 전자기기가 기동단계에 있을 경우 기동단계 이전에 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하고 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 접속 기기 중의 업데이트 펌웨어를 전자기기에 기입하며 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우 전자기기에 기입된 업데이트 펌웨어를 작동시켜 전자기기에 상응한 드라이버를 장착하지 않을 경우에도 드라이버가 필요 없는 기기를 통하여 전자기기의 펌웨어 리프레시를 완성함으로써 전자기기에 상응한 드라이버를 장착하지 않을 경우 전용 리프레시 툴에서 펌웨어를 판독할 수 없게 되어 펌웨어 리프레시에 실패하는 문제를 해결하고 펌웨어 리프레시 단계를 단순화시켜 펌웨어 리프레시의 성공율을 향상시키는 효과를 달성할 수 있다.
상기 실시예의 펌웨어 리프레시 장치에 있어서, 그 중 각 모듈의 작동을 실행하는 구체적인 방법은 이미 상기 펌웨어 리프레시 방법의 실시예에서 상세히 설명하였는 바, 여기서 더 이상 상세히 설명하지 않는다.
도 5는 일 예시적 실시예에 따라 예시한 펌웨어 리프레시 장치의 모식도이다. 예를 들어 장치(500)는 펌웨어 리프레시 기능을 구비한 전자기기일 수 있다.
도 5를 참조하면, 장치(500)는 프로세싱 어셈블리(502), 메모리(504), 전원 어셈블리(506), 멀티미디어 어셈블리(508), 오디오 어셈블리(510), I/O(Input/Output, 입력/출력) 인터페이스(512), 센서 어셈블리(514) 및 통신 어셈블리(516)와 같은 하나 또는 다수의 어셈블리를 포함할 수 있다.
프로세싱 어셈블리(502)는 통상적으로 표시, 전화 호출, 데이터 통신, 카메라 동작 및 기록 동작과 관련한 장치(500)의 전체 동작을 제어한다. 프로세싱 어셈블리(502)는 상기 방법의 전부 또는 일부 단계를 완성하도록 하나 또는 다수의 프로세서(520)를 포함하여 인스트럭션을 실행할 수 있다. 이 외에, 프로세싱 어셈블리(502)는 프로세싱 어셈블리(502)와 기타 어셈블리 사이의 교류가 편리하도록 하나 또는 다수의 모듈을 포함할 수 있다. 예를 들어, 프로세싱 어셈블리(502)는 멀티미디어 어셈블리(508)와 프로세싱 어셈블리(502)사이의 교류가 편리하도록 멀티미디어 모듈을 포함할 수 있다.
메모리(504)는 장치(500)의 작동을 지원하도록 각종 유형의 데이터를 저장하도록 구성된다. 이러한 데이터의 예시는 장치(500)에서 작동하기 위한 그 어느 하나의 어플리케이션 또는 방법의 인스트럭션, 연락처 데이터, 전화번호부 데이터, 메시지, 이미지, 동영상 등을 포함한다. 메모리(504)는 스태틱 랜덤 접근 메모리(SRAM), 전기적 소거 가능한 프로그램 가능 판독전용 메모리(EEPROM), 소거 및 프로그램 가능 판독전용 메모리(EPROM), 프로그램 가능 판독전용 메모리(PROM), 판독 전용 메모리(ROM), 자기 메모리, 플래시 메모리, 디스크 또는 CD와 같은 모든 유형의 휘발성 또는 비휘발성 메모리 기기 또는 그들의 조합으로 이루어질 수 있다.
전원 어셈블리(506)는 장치(500)의 각종 어셈블리에 전력을 제공한다. 전원 어셈블리(506)는 전원관리시스템, 하나 또는 다수의 전원, 장치(500)에 전원을 생성, 관리 및 분배하는 것과 관련된 기타 어셈블리를 포함할 수 있다.
멀티미디어 어셈블리(508)는 상기 장치(500)와 사용자 사이에 하나의 출력 인터페이스를 제공하는 스크린을 포함한다. 일부 실시예에서 액정디스플레이(LCD)와 터치패널(TP)을 포함할 수 있다. 스크린이 터치패널을 포함하면 스크린은 사용자가 입력한 신호를 수신하도록 터치스크린으로 구현될 수 있다.
터치패널은 터치, 슬라이딩과 터치패널의 손동작을 감지하도록 하나 또는 다수의 터치센서를 포함한다. 상기 터치센서는 터치 또는 슬라이딩 동작의 경계를 감지할 수 있을 뿐만 아니라 상기 터치 또는 슬라이딩 동작과 관련한 지속시간과 압력도 검출할 수 있다.
일부 실시예에서, 멀티미디어 어셈블리(508)는 프론트 카메라 및/또는 리어 카메라를 포함한다. 장치(500)가 작동모드, 예를 들어 촬영모드 또는 동영상 모드일 경우, 프론트 카메라 및/또는 리어 카메라는 외부의 멀티미디어 데이터를 수신할 수 있다. 매 하나의 프론트 카메라와 리어 카메라는 하나의 고정된 광학렌즈 시스템이거나 초점거리와 광학 줌 능력을 가질 수 있다.
오디오 어셈블리(510)는 오디오 신호를 출력 및/또는 입력하도록 구성된다.
예를 들어, 오디오 어셈블리(510)는 하나의 마이크(MIC)를 포함하는 바, 장치(500)가 작동모드, 예를 들어 호출모드, 기록모드 및 음성인식모드 일 경우 마이크는 외부의 오디오 신호를 수신하도록 구성된다. 수신된 오디오 신호는 진일보로 메모리(504)에 저장되거나 통신 어셈블리(516)를 거쳐 발송될 수 있다. 일부 실시예에서, 오디오 어셈블리(510)는 오디오 신호를 출력하기 위한 하나의 스피커를 더 포함한다.
I/O 인터페이스(512)는 프로세싱 어셈블리(502)와 주변 인터페이스 모듈 사이에 인터페이스를 제공하되 상기 주변 인터페이스 모듈은 키보드, 클릭 휠, 버튼 등일 수 있다. 이러한 버튼은 홈버튼, 음량버튼, 기동버튼과 잠금버튼을 포함하나 이에 한정하지는 않는다.
센서 어셈블리(514)는 하나 또는 다수의 센서를 포함하여 장치(500)에 여러 방면의 상태평가를 제공한다. 예를 들어, 센서 어셈블리(514)는 장치(500)의 온/오프상태, 어셈블리의 상대위치, 예를 들어, 상기 어셈블리는 장치(500)의 모니터와 키패드를 검출할 수 있고, 센서 어셈블리(514)는 장치(500) 또는 장치(500)의 한 어셈블리의 위치변화, 사용자와 장치(500)의 접촉여부, 장치(500) 방위 또는 가속/감속과 장치(500)의 온도변화를 검출할 수 있다. 센서 어셈블리(514)는 아무런 물리적 접촉이 없을 경우, 주변 물체의 존재를 검출하도록 구성된 근접센서를 포함할 수 있다. 센서 어셈블리(514)는 COMS 또는 CCD 영상 센서와 같은 광센서를 더 포함하여 영상응용에 사용한다. 일부 실시예에서, 상기 센서 어셈블리(514)는 가속도센서, 자이로센서, 자기센서, 압력센서 또는 온도센서를 더 포함할 수 있다.
통신 어셈블리(516)는 장치(500)와 기타 기기사이의 유선 또는 무선방식의 통신이 편리하도록 구성된다. 장치(500)는 통신표준에 의한 무선인터넷, 예를 들어, WiFi, 2G 또는 3G 또는 이들의 조합을 접속할 수 있다. 일 예시적 실시예에서, 통신 어셈블리(516)는 방송신호를 거쳐 외부방송관리시스템의 방송신호 또는 방송과 관련한 정보를 수신한다. 일 예시적 실시예에서, 상기 통신 어셈블리(516)는 근거리 통신을 촉진하도록 근거리 자기장 통신(NFC)모듈을 더 포함할 수 있다. 예를 들어, NFC 모듈은 무선 주파수 인식(RFID)기술, 적외선 통신 규격(IrDA)기술, 초광대역(UWB)기술, 블루투스(BT)기술과 기타 기술에 기반하여 실현할 수 있다.
예시적 실시예에서 장치(500)는 상기 방법을 수행하도록 하나 또는 복수개의 응용 주문형 집적 회로(ASIC), 디지털신호 프로세스(DSP), 디시털 신호처리기기(DSPD), 프로그램 가능 논리 소자(PLD), 필드 프로그램 가능 게이트 어레이(FPGA), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 또는 기타 전자 부품에 의해 실현될 수 있다.
예시적 실시예에서는 인스트렉션을 포함하는 비일시적 컴퓨터 판독 가능한 기록 매체, 예를 들어 상기 방법을 완성하도록 장치(500)의 프로세서(518)가 실행하는 인스트렉션을 포함하는 메모리(504)를 더 제공한다. 예를 들어 상기 비일시적 컴퓨터 판독 가능한 기록 매체는 ROM, 랜덤 접근 메모리(RAM), CD-ROM, 테이프, 플로피 디스켓과 광 데이터 저장기기 등일 수 있다.
상기 저장 매체의 인스트럭션이 장치(500)의 프로세서에 의해 실행될 경우, 비일시적인 컴퓨터 판독 가능한 저장 매체는 장치(500)로 하여금 펌웨어 리프레시 기능을 구비한 전자기기에 응용되는 펌웨어 리프레시 방법을 수행하도록 한다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자들은 명세서를 고려하고 여기서 공개한 발명을 실시한 후 본 발명의 기타 실시수단을 용이하게 생각해 낼 수 있다. 본원 발명은 본 발명의 모든 변형, 용도 또는 적응성 변화를 포함하고 이러한 변형, 용도 또는 적응성 변화는 본 발명의 일반적인 원리를 따르며 본 발명이 공개하지 않은 본 기술분야에서의 공지된 상식 또는 통상적인 기술수단을 포함한다. 명세서와 실시예는 단지 예시적인 것일 뿐 본 발명의 진정한 범위와 기술적 사상은 하기의 청구범위에 의해 밝혀질 것이다.
본 발명은 상기에서 설명하고 도면에서 도시한 정확한 구조에 제한되는 것이 아니라 그 범위를 벗어나지 않는 한 여러가지 수정과 변경을 할 수 있음을 이해해야 한다. 본 발명의 범위는 단지 첨부되는 청구범위에 의해 한정된다.

Claims (13)

  1. 전자기기가 기동단계에 있을 경우, 상기 기동단계 이전에 상기 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하는 단계와;
    상기 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 상기 접속 기기 중의 업데이트 펌웨어(update firmware)를 상기 전자기기에 기입하는 단계와;
    상기 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 상기 전자기기에 기입된 상기 업데이트 펌웨어를 작동시키는 단계를 포함하는 펌웨어 리프레시(firmware refresh) 방법.
  2. 제 1 항에 있어서,
    상기 기동단계 이전에 상기 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하는 상기 단계는,
    상기 기동단계 이전에 상기 전자기기와 연결된 상기 접속 기기의 인터페이스 디스크립터(descriptor) 정보를 획득하는 단계와;
    상기 인터페이스 디스크립터 정보가 상기 접속 기기를 대용량 저장 기기임을 지시할 경우, 상기 접속 기기의 기기 유형 정보를 획득하는 단계와;
    상기 기기 유형 정보가 상기 접속 기기의 기기 유형을 드라이버가 필요 없는 유형으로 지시할 경우, 상기 접속 기기를 상기 드라이버가 필요 없는 기기로 결정하는 단계를 포함하는 펌웨어 리프레시 방법.
  3. 제 1 항에 있어서,
    상기 접속 기기 중의 업데이트 펌웨어를 상기 전자기기에 기입하는 상기 단계는,
    상기 접속 기기에서 상기 업데이트 펌웨어의 저장주소를 획득하는 단계와;
    상기 전자기기 중의 펌웨어 저장영역을 결정하는 단계와;
    상기 저장주소에 저장된 상기 업데이트 펌웨어를 상기 펌웨어 저장영역에 기입하는 단계를 포함하는 펌웨어 리프레시 방법.
  4. 제 3 항에 있어서,
    상기 접속 기기에서 상기 업데이트 펌웨어의 저장주소를 획득하는 상기 단계는,
    상기 접속 기기의 특정 섹터(sector) 중의 정보를 판독하는 단계와;
    상기 특정 섹터 중의 정보에 근거하여 상기 접속 기기가 특정된 파일 시스템을 적용하였는지의 여부를 판정하는 단계와;
    상기 접속 기기가 특정된 파일 시스템을 적용한 것으로 판정되면, 기 설정된 저장주소를 상기 업데이트 펌웨어의 저장주소로 결정하는 단계와;
    상기 접속 기기가 특정된 파일 시스템을 적용하지 않은 것으로 판정되면, 상기 특정 섹터 중의 정보가 구비한, 상기 업데이트 펌웨어의 시작 주소와 데이터 길이를 포함하는 메타 정보(meta message)에 근거하여 상기 업데이트 펌웨어의 저장주소를 결정하는 단계를 포함하는 펌웨어 리프레시 방법.
  5. 제 3 항에 있어서,
    상기 저장주소에 저장된 상기 업데이트 펌웨어를 상기 펌웨어 저장영역에 기입하는 상기 단계는,
    상기 접속 기기에 하나의 상기 펌웨어 저장영역이 포함될 경우, 상기 업데이트 펌웨어를 상기 펌웨어 저장영역에 저장된 기존 펌웨어로 교체하는 단계와;
    상기 접속 기기에 적어도 두개의 상기 펌웨어 저장영역이 포함될 경우, 상기 업데이트 펌웨어를 그 중의 상기 전자기기가 작동하지 않는 펌웨어를 저장하기 위한 비활성 영역으로 설정된 펌웨어 저장영역에 기입하는 단계를 포함하는 펌웨어 리프레시 방법.
  6. 제 5 항에 있어서,
    상기 업데이트 펌웨어가 상기 비활성 영역으로 설정된 펌웨어 저장영역에 정확히 기입되었는지의 여부를 검출하는 단계와;
    상기 업데이트 펌웨어가 상기 비활성 영역으로 설정된 펌웨어 저장영역에 이미 정확히 기입되었음이 검출되면 본래 활성영역으로 설정된 펌웨어 저장영역을 비활성 영역으로 설정하고 상기 업데이트 펌웨어가 정확히 기입된 상기 펌웨어 저장영역을 활성영역으로 설정하되, 상기 활성영역으로 설정된 펌웨어 저장영역은 상기 전자기기가 정상적인 작동 단계에 있을 때 작동되는 펌웨어를 저장하기 위한 것인 단계를 더 포함하는 펌웨어 리프레시 방법.
  7. 전자기기가 기동단계에 있을 경우, 상기 기동단계 이전에 상기 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하도록 구성된 기기 검출 모듈과;
    상기 기기 검출 모듈이 상기 접속 기기가 드라이버가 필요 없는 기기임을 검출할 경우, 상기 접속 기기 중의 업데이트 펌웨어를 상기 전자기기에 기입하도록 구성된 펌웨어 기입 모듈과;
    상기 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 상기 펌웨어 기입 모듈을 작동시켜 상기 전자기기 중의 상기 업데이트 펌웨어를 기입하도록 구성된 펌웨어 작동 모듈을 포함하는 펌웨어 리프레시 장치.
  8. 제 7 항에 있어서,
    상기 기기 검출 모듈은,
    상기 기동단계 이전에 상기 전자기기와 연결된 상기 접속 기기의 인터페이스 디스크립터 정보를 획득하도록 구성된 제 1 정보 획득 서브모듈과;
    상기 제 1 정보 획득 서브모듈이 획득한 상기 인터페이스 디스크립터 정보가 상기 접속 기기를 대용량 저장기기로 지시할 경우, 상기 접속 기기의 기기 유형 정보를 획득하도록 구성된 제 2 정보 획득 서브모듈과;
    상기 제 2 정보 획득 서브모듈이 획득한 상기 기기 유형 정보가 상기 접속기기의 기기 유형을 드라이버가 필요 없는 유형으로 지시할 경우, 상기 접속 기기를 상기 드라이버가 필요 없는 기기로 결정하도록 구성된 기기 결정 서브모듈을 포함하는 펌웨어 리프레시 장치.
  9. 제 7 항에 있어서,
    상기 펌웨어 기입 모듈은,
    상기 접속 기기에서 상기 업데이트 펌웨어의 저장주소를 획득하도록 구성된 주소 획득 서브모듈과;
    상기 전자기기 중의 펌웨어 저장영역을 결정하도록 구성된 영역 결정 서브모듈과;
    상기 주소 획득 서브모듈이 획득한 상기 저장주소에 저장된 상기 업데이트 펌웨어를 상기 영역 결정 서브모듈이 결정한 상기 펌웨어 저장영역에 기입하도록 구성된 펌웨어 기입 서브모듈을 포함하는 펌웨어 리프레시 장치.
  10. 제 9 항에 있어서,
    상기 주소 획득 서브모듈은,
    상기 접속 기기의 특정 섹터 중의 정보를 판독하도록 구성된 섹터정보 판독 서브모듈과;
    상기 섹터정보 판독 서브모듈이 획득한 상기 특정 섹터 중의 정보에 근거하여 상기 접속 기기가 특정된 파일 시스템을 적용하였는지의 여부를 판정하도록 구성된 시스템 판정 서브모듈과;
    상기 시스템 판정 서브모듈이 상기 접속 기기가 특정된 파일 시스템을 적용한 것으로 판정하면 기 설정된 저장주소를 상기 업데이트 펌웨어의 저장주소로 결정하도록 구성된 제 1 결정 서브모듈과;
    상기 시스템 판정 서브모듈이 상기 접속 기기가 특정된 파일 시스템을 적용하지 않은 것으로 판정하면 상기 특정 섹터 중의 정보가 구비한, 상기 업데이트 펌웨어의 시작 주소와 데이터 길이를 포함하는 메타 정보에 근거하여 상기 업데이트 펌웨어의 저장주소를 결정하도록 구성된 제 2 결정 서브모듈을 포함하는 펌웨어 리프레시 장치.
  11. 제 9 항에 있어서,
    상기 펌웨어 기입 서브모듈은,
    상기 접속 기기에 하나의 상기 펌웨어 저장영역이 포함될 경우, 상기 업데이트 펌웨어를 상기 펌웨어 저장영역에 저장된 기존 펌웨어로 교체하도록 구성된 제 1 기입 서브모듈과;
    상기 접속 기기에 적어도 두개의 상기 펌웨어 저장영역이 포함될 경우, 상기 업데이트 펌웨어를 그 중의 상기 전자기기가 작동하지 않는 펌웨어를 저장하기 위한 비활성 영역으로 설정된 펌웨어 저장영역에 기입하도록 구성된 제 2 기입 서브모듈을 포함하는 펌웨어 리프레시 장치.
  12. 제 11 항에 있어서,
    상기 업데이트 펌웨어가 상기 비활성 영역으로 설정된 펌웨어 저장영역에 정확히 기입되었는지의 여부를 검출하도록 구성된 펌웨어 검출 모듈과;
    상기 펌웨어 검출 모듈이 상기 업데이트 펌웨어가 상기 비활성 영역으로 설정된 펌웨어 저장영역에 이미 정확히 기입되었음을 검출하면 본래 활성영역으로 설정된 펌웨어 저장영역을 비활성 영역으로 설정하고 상기 업데이트 펌웨어가 정확히 기입된 상기 펌웨어 저장영역을 활성영역으로 설정하되, 상기 활성영역으로 설정된 펌웨어 저장영역은 상기 전자기기가 정상적인 작동 단계에 있을 때 작동되는 펌웨어를 저장하도록 구성된 영역 설정 모듈을 포함하는 펌웨어 리프레시 장치.
  13. 프로세서와;
    프로세서가 실행 가능한 인스트럭션을 저장하기 위한 메모리를 포함하고;
    상기 프로세서는,
    전자기기가 기동단계에 있을 경우, 상기 기동단계 이전에 상기 전자기기와 연결된 접속 기기가 드라이버가 필요 없는 기기인지의 여부를 검출하고;
    상기 접속 기기가 드라이버가 필요 없는 기기임이 검출되면 상기 접속 기기 중의 업데이트 펌웨어를 상기 전자기기에 기입하며;
    상기 전자기기가 재 기동 후의 정상적인 작동 단계에 있을 경우, 상기 전자기기에 기입된 상기 업데이트 펌웨어를 작동시키도록 구성된 펌웨어 리프레시 장치.
KR1020157020627A 2014-12-15 2015-06-04 펌웨어 리프레시 방법, 장치, 프로그램 및 기록매체 KR20160086754A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410778909.X 2014-12-15
CN201410778909.XA CN104503786B (zh) 2014-12-15 2014-12-15 固件刷新方法及装置
PCT/CN2015/080806 WO2016095452A1 (zh) 2014-12-15 2015-06-04 固件刷新方法及装置

Publications (1)

Publication Number Publication Date
KR20160086754A true KR20160086754A (ko) 2016-07-20

Family

ID=52945187

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157020627A KR20160086754A (ko) 2014-12-15 2015-06-04 펌웨어 리프레시 방법, 장치, 프로그램 및 기록매체

Country Status (10)

Country Link
US (1) US10613848B2 (ko)
EP (1) EP3040856B1 (ko)
JP (1) JP6190978B2 (ko)
KR (1) KR20160086754A (ko)
CN (1) CN104503786B (ko)
BR (1) BR112015019779A2 (ko)
ES (1) ES2770637T3 (ko)
MX (1) MX369881B (ko)
RU (1) RU2630371C2 (ko)
WO (1) WO2016095452A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503786B (zh) 2014-12-15 2020-10-16 小米科技有限责任公司 固件刷新方法及装置
JP2017199246A (ja) * 2016-04-28 2017-11-02 京セラドキュメントソリューションズ株式会社 電子機器
US10777297B2 (en) * 2018-12-10 2020-09-15 Micron Technology, Inc. Age-based refresh of firmware
CN116136766A (zh) * 2021-11-17 2023-05-19 瑞昱半导体股份有限公司 嵌入式系统与韧体更新方法
CN114003251B (zh) * 2021-12-30 2022-04-15 北京中科网威信息技术有限公司 Fpga加速卡探测方法、装置、设备及计算机存储介质

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040093597A1 (en) 2002-11-05 2004-05-13 Rao Bindu Rama Firmware update system for facilitating firmware update in mobile handset related applications
WO2004070571A2 (en) 2003-02-03 2004-08-19 Bitfone Corporation Update system for facilitating firmware/software update in a mobile handset
US20040230963A1 (en) 2003-05-12 2004-11-18 Rothman Michael A. Method for updating firmware in an operating system agnostic manner
JP2005242555A (ja) * 2004-02-25 2005-09-08 Hitachi Ltd 記憶制御システム及び記憶制御システムが有するディスク型記憶装置にファームウェアを搭載する方法
US7308570B2 (en) * 2004-10-20 2007-12-11 Digi International Inc. System and method for booting embedded systems using removable storage
JP2006202206A (ja) * 2005-01-24 2006-08-03 Matsushita Electric Ind Co Ltd 画像形成装置及びその制御プログラムの更新方法
US7516315B2 (en) 2005-03-18 2009-04-07 Research In Motion Ltd. Electronic device having an alterable configuration and methods of manufacturing and configuring the same
JP2007047993A (ja) * 2005-08-09 2007-02-22 Rohm Co Ltd 制御回路、それを用いた電子機器およびファームウェアの更新方法
JP2007172391A (ja) 2005-12-22 2007-07-05 Canon Inc 電子機器の制御方法、電子機器の制御プログラム、電子機器、および記録装置
CN100456246C (zh) * 2007-01-23 2009-01-28 北京映翰通网络技术有限公司 一种固件程序升级的方法与装置
CN100589078C (zh) * 2007-08-21 2010-02-10 中兴通讯股份有限公司 多核终端的固件升级方法
CN101470610B (zh) 2007-12-25 2011-07-20 英业达股份有限公司 测试用程序的更新方法
KR20090111558A (ko) * 2008-04-22 2009-10-27 삼성전자주식회사 방송수신장치 및 그의 펌웨어 업그레이드 방법
US20090293052A1 (en) * 2008-05-25 2009-11-26 Seung Pil Kim Apparatus and method for port adaptor for peripheral device software and data
CN101303674A (zh) 2008-06-27 2008-11-12 彭增金 包含自身设备驱动程序的usb设备
US9870220B2 (en) * 2008-12-05 2018-01-16 Advanced Micro Devices, Inc. Memory flash apparatus and method for providing device upgrades over a standard interface
TWI384367B (zh) * 2008-12-31 2013-02-01 Askey Computer Corp 韌體更新系統及方法
US20120079473A1 (en) * 2009-06-08 2012-03-29 Haruhito Watanabe Software updating system, displaying unit and software updating method
CN101944029A (zh) 2009-07-10 2011-01-12 环旭电子股份有限公司 磁盘固件更新装置及磁盘固件更新方法
US9652755B2 (en) * 2009-08-11 2017-05-16 Silver Spring Networks, Inc. Method and system for securely updating field upgradeable units
JP5611648B2 (ja) * 2010-04-21 2014-10-22 京セラ株式会社 電子機器及び電子システム
CN102279756A (zh) 2010-06-11 2011-12-14 英业达股份有限公司 Cpld固件更新方法
CN101957765B (zh) 2010-09-02 2016-01-20 北京中星微电子有限公司 一种实现设备固件更新的方法及系统、设备
CN102707960B (zh) 2011-03-28 2016-01-27 联想(北京)有限公司 固件更新方法、便携移动终端及便携设备
TWI475485B (zh) * 2011-06-13 2015-03-01 Wistron Corp 韌體更新之方法及其相關電腦系統
US8473666B2 (en) * 2011-06-27 2013-06-25 Schneider Electric It Corporation Systems and methods for driverless operation of USB device
KR101845290B1 (ko) 2011-08-25 2018-04-04 엘지전자 주식회사 장치 관리 명령을 통한 펌웨어 갱신 방법 및 장치
CN102841801B (zh) * 2012-07-11 2017-12-12 中兴通讯股份有限公司 免驱终端的固件升级方法和装置
CN103853638B (zh) 2012-12-04 2017-07-21 联想(北京)有限公司 一种刷新固件的方法及电子设备
CN103220330B (zh) * 2013-03-11 2016-02-10 中兴通讯股份有限公司 数据终端升级装置及方法
JP6070360B2 (ja) * 2013-03-29 2017-02-01 沖電気工業株式会社 情報処理装置およびその処理方法
CN104503786B (zh) * 2014-12-15 2020-10-16 小米科技有限责任公司 固件刷新方法及装置

Also Published As

Publication number Publication date
WO2016095452A1 (zh) 2016-06-23
RU2015129670A (ru) 2017-04-28
RU2630371C2 (ru) 2017-09-07
BR112015019779A2 (pt) 2017-07-18
JP6190978B2 (ja) 2017-08-30
EP3040856A1 (en) 2016-07-06
ES2770637T3 (es) 2020-07-02
MX2015010388A (es) 2016-08-26
US10613848B2 (en) 2020-04-07
US20160210140A1 (en) 2016-07-21
CN104503786B (zh) 2020-10-16
MX369881B (es) 2019-11-25
EP3040856B1 (en) 2019-11-06
CN104503786A (zh) 2015-04-08
JP2017507441A (ja) 2017-03-16

Similar Documents

Publication Publication Date Title
CN105491113B (zh) 迁移方法、装置及终端
CN107750466B (zh) 使用经同步的提示信号配对附近设备
JP6259122B2 (ja) ファームウェアアップグレード方法、装置、プログラム及び記録媒体
WO2016011743A1 (zh) 节省存储空间的方法和装置
AU2017219385A1 (en) Electronic device and method of application data display therefor
KR20160086754A (ko) 펌웨어 리프레시 방법, 장치, 프로그램 및 기록매체
CN107113374B (zh) 相机启动和照度
KR102193704B1 (ko) 전자 장치의 락 스크린 디스플레이 방법 및 그 전자 장치
US11582377B2 (en) Apparatus and method for controlling auto focus function in electronic device
RU2663709C2 (ru) Способ и устройство для обработки информации
CN108763104B (zh) 预读取文件页的方法、装置及存储介质
CN112119623B (zh) 基于帐户组共享内容的方法和执行该方法的电子装置
CN109947671B (zh) 一种地址转换方法、装置、电子设备及储存介质
US20190303225A1 (en) Method and apparatus for communication between webpage and operating system
KR20160059455A (ko) 웹 페이지 인코딩 인식 방법, 인식 장치, 프로그램 및 저장매체
EP3035646B1 (en) Method and device for starting application
CN111966410A (zh) 启动处理方法、装置、电子设备及存储介质
US20150112997A1 (en) Method for content control and electronic device thereof
US9201576B2 (en) Display method and portable device
CN107733674B (zh) 组件升级方法及终端
US9753933B2 (en) Electronic device and method for mounting file system using virtual block device
EP3328066B1 (en) Electronic device and method for autofocusing
CN104951337A (zh) 文件增量更新方法及装置
CN107423060B (zh) 动画效果的呈现方法、装置及终端
CN105094891A (zh) 效果显示方法及装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
E601 Decision to refuse application
E801 Decision on dismissal of amendment