KR20220092617A - 소프트웨어 업그레이드 방법, 장치 및 시스템 - Google Patents

소프트웨어 업그레이드 방법, 장치 및 시스템 Download PDF

Info

Publication number
KR20220092617A
KR20220092617A KR1020227019294A KR20227019294A KR20220092617A KR 20220092617 A KR20220092617 A KR 20220092617A KR 1020227019294 A KR1020227019294 A KR 1020227019294A KR 20227019294 A KR20227019294 A KR 20227019294A KR 20220092617 A KR20220092617 A KR 20220092617A
Authority
KR
South Korea
Prior art keywords
upgrade
upgrade package
components
information
software
Prior art date
Application number
KR1020227019294A
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 KR20220092617A publication Critical patent/KR20220092617A/ko

Links

Images

Classifications

    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1016IP multimedia subsystem [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Environmental & Geological Engineering (AREA)
  • Stored Programmes (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명의 실시예들은 소프트웨어 업그레이드 방법, 장치 및 시스템을 제공한다. 단말 내의 적어도 2개의 컴포넌트의 저장 자원 정보가 수신된다. 저장 자원 피드백 정보가 생성된다. 저장 자원 피드백 정보는 네트워크 측 디바이스에 전송된다. 네트워크 측 디바이스에 의해 생성되는 업그레이드 패키지 블록 정보가 수신되고, 업그레이드 패키지 블록 정보는 단말 소프트웨어 업그레이드를 위한 복수의 업그레이드 패키지 블록과 복수의 업그레이드 패키지 블록을 저장하기 위한 복수의 컴포넌트 사이의 일대일 대응관계를 적어도 포함한다. 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용되는 적어도 하나의 지시 정보가 생성된다. 적어도 하나의 지시 정보는 복수의 컴포넌트에 전송된다. 이것은 지능형 접속 차량 내의 복수의 컴포넌트에서의 저장 자원들을 충분히 활용하고, 소프트웨어 업그레이드 성공률을 개선시킨다.

Description

소프트웨어 업그레이드 방법, 장치 및 시스템
본 출원은 2019년 11월 18일자로 중국 지적 재산권 관리국에 출원되고 발명의 명칭이 "SOFTWARE UPGRADING METHOD, APPARATUS, AND SYSTEM"인 중국 특허 출원 제201911129069.3호에 대한 우선권을 주장하며, 이는 그 전체가 본 명세서에 참조로 포함된다.
본 발명은 단말 소프트웨어 업그레이드 기술에 관한 것으로, 특히, 지능형 접속 차량(intelligent connected vehicle)을 위한 소프트웨어 업그레이드 방법, 장치, 및 시스템에 관한 것이다.
지능형 접속 차량들의 개발로, OTA(Over the Air) 기술을 사용하는 것에 의한 자동차 컴포넌트들의 온라인 업그레이드가 지능형 접속 차량들의 중요한 기능이 되었다. 차량 제조업체는 OTA 기능을 사용하여 차량들의 관련 소프트웨어를 업그레이드한다. 이것은 제조업체가 리콜 비용을 줄이고, 요건에 신속하게 응답하고, 사용자 경험을 개선하는 것을 돕는다.
지능형 접속 차량은 복수의 컴포넌트, 예를 들어, 중앙 게이트웨이, T-박스(텔레매틱스 BOX, 차량들의 인터넷에서의 차량 통신 단말), 인간-기계 상호작용(HMI, Human-Machine Interaction) 제어기, 모바일 데이터 센터(MDC, Mobile Data Controller), 및 첨단 운전자 보조 시스템(ADAS, Advanced Driving Assistant System)을 포함한다. 차량 내의 복수의 컴포넌트는 전체 차량의 OTA 기반 업그레이드를 구현하기 위해 업그레이드될 필요가 있을 수 있다. 이러한 경우에, 비교적 큰 저장 용량을 갖는 업그레이드 소프트웨어가 다운로드될 필요가 있다. 지능형 접속 차량에 더하여, 단말은 스마트폰, 산업용 사물 인터넷 디바이스, 및 지능형 로봇과 같은 다양한 존재 형태들을 포함한다. 또한, 지능형 기술들의 진보에 따라, 단말은 증가하는 기능들을 구현하지만 점점 더 복잡한 내부 구조를 갖는다. 그러므로, 단말 소프트웨어 업그레이드 동안, 단말의 저장 공간에 대한 요건이 점점 더 높아지고 있다.
종래의 기술에서, 단일 모듈 다운로드 해결책이 사용된다. 구체적으로, 하나의 업그레이드 제어 모듈은 단말 소프트웨어 업그레이드 패키지의 다운로드, 저장, 블록 분할 및 배포를 완료하고, 단말 내의 각각의 컴포넌트를 제어하여 업그레이드 동작을 완료하는 데 사용된다. 소프트웨어 업그레이드 패키지의 데이터 볼륨이 매우 클 때, 그러한 단일 모듈 다운로드 정책에서 업그레이드 제어 모듈의 저장 공간에 대해 비교적 높은 요건이 제안된다.
업그레이드 제어 모듈 내에 충분한 저장 자원들이 존재할 때, 도 1에 도시된 바와 같이, 단일 모듈에 기초하여 단말 소프트웨어 업그레이드 패키지를 다운로드하기 위한 방법은 다음의 위상(phase)들을 포함한다.
(1) 다운로드 위상(Downloading phase): OTA 클라우드 측 디바이스가 다운로드를 시작한 후, 업그레이드 제어 모듈은 그 자신의 저장 자원을 체크하고; 저장 자원이 단말 소프트웨어 업그레이드 패키지를 다운로드하기 위한 요건을 충족하는 경우, 업그레이드 제어 모듈은 OTA 클라우드 측 디바이스로부터 모든 소프트웨어 업그레이드 패키지들을 다운로드하고, 다운로드된 파일들의 무결성을 검증한다.
(2) 배포 위상(Distribution phase): 업그레이드 제어 모듈은 소프트웨어 업그레이드 패키지를 분할하고, 업그레이드 패키지 블록들을 단말 내에 있고 업그레이드될 필요가 있는 컴포넌트들에 배포한다.
(3) 설치 위상(Installation phase): 업그레이드 제어 모듈은 업그레이드될 필요가 있는 컴포넌트들을 제어하여, 소프트웨어 업그레이드 패키지를 설치하고 업그레이드 소프트웨어를 활성화한다.
업그레이드 제어 모듈에 불충분한 저장 자원들이 존재할 때, 도 2에 도시된 바와 같이, 단일 모듈에 기초하여 단말 소프트웨어 업그레이드 패키지를 다운로드하기 위한 방법은 다음을 포함한다: OTA 클라우드 측 디바이스가 다운로드를 시작한 후, 업그레이드 제어 모듈은 그 자신의 저장 자원을 체크하고; 저장 자원이 단말 소프트웨어 업그레이드 패키지의 저장 요건을 충족하지 않는 경우, 업그레이드 제어 모듈은 자원이 불충분하다는 정보를 반환하고, 다운로드를 종료하여, 업그레이드 실패로 이어진다.
업그레이드 제어 모듈 내의 로컬 저장 자원이 불충분할 때, 단말 소프트웨어 업그레이드는 매우 쉽게 실패한다는 것을 알 수 있다. 그러므로, 단말의 소프트웨어 업그레이드 성공률을 증가시키기 위한 방법이 긴급히 필요하다.
종래 기술에서의 전술한 기술적 문제점들을 고려하여, 본 발명의 실시예들은 소프트웨어 업그레이드 방법, 장치, 및 시스템을 제공한다. 본 발명의 청구항들 및 본 명세서의 발명의 내용에서의 "소프트웨어"는 펌웨어, 컴퓨터 프로그램, 운영 체제, 드라이버, 시스템 소프트웨어, 또는 애플리케이션 프로그램을 포함하지만 이에 제한되지 않는 넓은 의미의 소프트웨어이다.
제1 양태에 따르면, 소프트웨어 업그레이드 방법이 제공되고, 이 방법은: 단말에서 적어도 2개의 컴포넌트의 저장 자원 정보를 수신하는 단계- 저장 자원 정보는 적어도 2개의 컴포넌트 각각의 적어도 가용 저장 용량을 적어도 포함하고, 적어도 2개의 컴포넌트는 적어도 2개의 가용 저장 용량에 대응함 -; 저장 자원 정보에 기초하여 저장 자원 피드백 정보를 생성하는 단계- 저장 자원 피드백 정보는 각각의 컴포넌트의 가용 저장 용량을 적어도 포함함 -; 저장 자원 피드백 정보를 네트워크 측 디바이스에 전송하는 단계; 네트워크 측 디바이스에 의해 생성된 업그레이드 패키지 블록 정보를 수신하는 단계- 업그레이드 패키지 블록 정보는 단말 소프트웨어 업그레이드를 위한 복수의 업그레이드 패키지 블록과 복수의 업그레이드 패키지 블록을 저장하기 위한 복수의 컴포넌트 사이에 일-대-일 대응관계를 적어도 포함하고, 복수의 컴포넌트는 적어도 2개의 컴포넌트의 일부 또는 전부임 -; 업그레이드 패키지 블록 정보에 기초하여, 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용되는 적어도 하나의 지시 정보를 생성하는 단계- 복수의 컴포넌트는 복수의 가용 저장 용량과 일대일 대응관계에 있음 -; 및 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하는 단계를 포함한다.
전술한 방법은 단말 측에서 수행되는 소프트웨어 업그레이드 방법이다. "적어도 일부"는 "일부 또는 전부"와 등가이다. 선택적으로, 저장 자원 피드백 정보는 적어도 2개의 컴포넌트 중 적어도 일부의 각각의 식별자를 추가로 포함한다. 저장 자원이 다 사용된 컴포넌트 또는 또 다른 동작을 위한 저장 자원을 예약하는 컴포넌트가 있을 수 있기 때문에, 적어도 2개의 컴포넌트는 단말 내의 모든 컴포넌트일 수도 있고, 또는 단말 내의 단지 일부 컴포넌트일 수도 있다. 단말 내의 적어도 2개의 컴포넌트의 저장 자원 정보를 수신하는 것은 하나 이상의 수신 방식으로 수행될 수 있다. 수신 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스 또는 하드웨어 회로 보드 상의 배선을 통한 수신 수행, 소프트웨어 모듈로부터의 파라미터 획득, 또는 저장 디바이스로부터의 정보 판독을 포함하지만, 이들로 제한되지는 않는다. 적어도 2개의 컴포넌트 각각의 가용 저장 용량에 더하여, 저장 자원 정보는 다른 정보, 예를 들어, 적어도 2개의 컴포넌트의 수량, 식별자, 또는 총 가용 저장 용량을 포함할 수 있다. 적어도 2개의 컴포넌트의 가용 저장 용량들 전부가 저장 자원 피드백 정보에 배치되는 것은 아닐 수 있는데, 그 이유는 저장 자원 정보 내의 가용 저장 용량에 기초하여 단말 측에서, 적어도 2개의 컴포넌트 내의 하나 이상의 네트워킹 모듈이 단말 소프트웨어 업그레이드 패키지를 저장하는 데 사용되지 않을 수 있다고 결정될 수 있기 때문이다. 물론, 전술한 결정 동작은 단말 측에서가 아니라 네트워크 측에서 수행될 수 있다. 업그레이드 소프트웨어는 적어도 2개의 컴포넌트 전부를 점유할 필요가 없을 수 있으므로, 복수의 컴포넌트는 적어도 2개의 컴포넌트 중 일부일 수 있다. 적어도 하나의 지시 정보를 전송하는 것은 하나 이상의 전송 방식으로 수행될 수 있다. 전송 방식은, 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스 또는 하드웨어 회로 보드 상의 배선을 통한 전송 수행, 소프트웨어 모듈로의 파라미터 입력, 또는 메모리로의 정보 기입을 포함하지만, 이들로 제한되지는 않는다. 단말의 저장 자원 정보는 네트워크 측 디바이스에 보고되고, 네트워크 측 디바이스는 단말에서의 실제 가용 저장 자원에 기초하여 분할을 통해 복수의 업그레이드 패키지 블록을 적응적으로 획득한다. 이것은 단말 내의 복수의 컴포넌트에서의 저장 자원들을 충분히 활용하고, 종래의 기술과 비교하여 단말 측 상의 컴포넌트들의 소프트웨어 패키지 저장 압력을 감소시킨다. 또한, 비교적 큰 데이터 패킷의 블록 분할 동안 비교적 많은 수량의 랜덤 저장 자원이 점유될 필요가 있기 때문에, 네트워크 측 상의 업그레이드 패키지에 대해 블록 분할이 수행될 때 단말 측 상의 컴포넌트들에서의 저장 자원들에 대한 요건이 감소될 수 있다. 마지막으로, 소프트웨어 업그레이드 성공률이 증가될 수 있다. 그러므로, 소프트웨어 업그레이드 방법은 단말(특히 지능형 접속 차량)의 소프트웨어 업그레이드에 더 적합하다.
제1 양태에 따르면, 소프트웨어 업그레이드 방법의 제1 가능한 구현예에서, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록 각각의 다운로드 어드레스를 추가로 포함하고, 적어도 하나의 지시 정보 내의 각각의 지시 정보는 복수의 업그레이드 패키지 블록 중 적어도 하나의 다운로드 어드레스를 포함한다. 단말 소프트웨어는 중앙집중 방식으로 네트워크 측 상의 하나의 디바이스에 저장될 수 있거나, 분산 방식으로 네트워크 측에서의 복수의 디바이스에 저장될 수 있다. 그러므로, 선택적으로, 복수의 업그레이드 패키지 블록에 대한 하나 이상의 다운로드 어드레스가 존재하거나, 복수의 업그레이드 패키지 블록 중 적어도 일부가 하나의 다운로드 어드레스를 공유한다. 다운로드 어드레스는 컴포넌트에 대응하는 업그레이드 패키지 블록이 위치하는 네트워크 측 디바이스를 컴포넌트에 지시하는 데 사용된다.
제1 양태 또는 제1 양태의 제1 가능한 구현예에 따르면, 소프트웨어 업그레이드 방법의 제2 가능한 구현예에서, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록 각각의 검증 정보를 추가로 포함하고, 적어도 하나의 지시 정보 내의 각각의 지시 정보는 복수의 업그레이드 패키지 블록 중 적어도 하나의 검증 정보를 포함한다. 각각의 업그레이드 패키지 블록은 독립적으로 검증되어, 단말 내의 디바이스의 컴퓨팅 자원이 더 충분히 활용될 수 있다. 선택적으로, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록의 수량을 추가로 포함하고, 방법은 각각의 업그레이드 패키지 블록의 검증 결과 및 복수의 업그레이드 패키지 블록의 수량에 기초하여 전체 검증을 수행하는 단계를 추가로 포함한다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제3 가능한 구현예에서, 적어도 하나의 지시 정보는 복수의 업그레이드 패키지 블록 중 적어도 하나를 획득하기 위해 복수의 컴포넌트에 의해 사용되는 외부 통신 자원을 포함한다. 외부 통신 자원은 단말 외부의 디바이스와 통신하기 위해 단말 내의 컴포넌트들에 의해 사용되는 통신 자원(예를 들어, 차량-간 네트워크 통신에 적용되는 셀룰러 통신 자원)이다. 외부 통신 자원은 통신 컴포넌트, 통신 채널, 통신 인터페이스, 또는 셀룰러 통신, 위성 통신, 블루투스 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), 또는 유선 통신에 사용되는 다른 통신 자원을 포함하지만, 이들로 제한되지는 않는다. 선택적으로, 외부 통신 자원은 복수의 컴포넌트 각각의 외부 통신 자원, 또는 단말 내의 복수의 컴포넌트 이외의 하나 이상의 컴포넌트의 외부 통신 자원을 포함한다. 선택적으로, 복수의 컴포넌트 각각은 컴포넌트의 외부 통신 자원을 사용함으로써 또는 컴포넌트의 외부 통신 자원 이외의 단말의 외부 통신 자원을 사용함으로써 복수의 업그레이드 패키지 블록 중 하나를 획득한다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제4 가능한 구현예에서, 적어도 하나의 지시 정보는 복수의 업그레이드 패키지 블록 중 적어도 하나를 획득하기 위해 복수의 컴포넌트에 의해 사용되는 시간 정보를 포함한다. 선택적으로, 시간 정보는 복수의 컴포넌트가 복수의 업그레이드 패키지 블록을 동시에 또는 순차적으로 획득한다는 것을 지시한다. 선택적으로, 시간 정보는 복수의 컴포넌트가 적어도 하나의 업그레이드 패키지 블록을 주기적으로 획득한다는 것을 지시한다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제5 가능한 구현예에서, 저장 자원 피드백 정보를 생성하기 전에, 이 방법은: 적어도 2개의 컴포넌트 각각의 가용 저장 용량에 기초하여, 단말에서의 가용 저장 자원이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족한다고 결정하는 단계를 추가로 포함한다. 단말 디바이스로의 다운로드를 시작할 때, 네트워크 측 디바이스는 복수의 다운로드될 단말 소프트웨어 업그레이드 패키지의 저장 요건을 단말 디바이스에 전송하고, 단말 디바이스는 단말에서의 가용 저장 자원이 복수의 단말 소프트웨어 업그레이드 패키지의 저장 요건을 충족하는지를 결정한다. 이러한 방식으로, 단말 디바이스는 더 높은 자율성 및 프라이버시를 갖는다. 선택적으로, 가용 저장 용량들의 합으로부터 소프트웨어 업그레이드 패키지들에 의해 점유된 저장 공간의 합을 감산함으로써 획득된 차이가 미리 결정된 임계값을 초과하는 경우, 단말에서의 가용 저장 자원이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족하는 것으로 결정된다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제6 가능한 구현예에서, 적어도 하나의 지시 정보는 복수의 지시 정보이고, 복수의 지시 정보는 복수의 컴포넌트와 일대일 대응관계에 있고; 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하는 것은: 복수의 지시 정보에 있고 컴포넌트에 대응하는 하나의 지시 정보를 복수의 컴포넌트 각각에 전송하는 것을 포함한다. 선택적으로, 복수의 지시 정보는 동시에 또는 순차적으로 전송된다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제7 가능한 구현예에서, 적어도 하나의 지시 정보는 하나의 지시 정보이고, 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하는 것은: 하나의 지시 정보를 복수의 컴포넌트 각각에 전송하는 것을 포함한다. 이러한 방식으로, 하나의 지시 정보는 복수의 업그레이드 패키지 블록 중 하나를 획득하기 위해 복수의 컴포넌트 각각에 의해 사용되는 관련 정보를 포함한다. 선택적으로, 하나의 지시 정보는 복수의 컴포넌트 전부에 동시에 또는 순차적으로 전송된다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제8 가능한 구현예에서, 적어도 하나의 지시 정보는 하나의 지시 정보이고, 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하는 것은: 하나의 지시 정보를 복수의 컴포넌트 중 하나에 전송하는 것을 포함한다. 이러한 방식으로, 하나의 지시 정보는 복수의 컴포넌트 사이에서 송신될 수 있다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제9 가능한 구현예에서, 방법은: 다운로드 명령어를 복수의 컴포넌트에 전송하는 단계를 추가로 포함하고, 다운로드 명령어는 복수의 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용된다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제10 가능한 구현예에서, 방법은: 업그레이드 패키지 배포 명령어를 복수의 컴포넌트에 전송하는 단계를 추가로 포함하고, 업그레이드 패키지 배포 명령어는 복수의 업그레이드 패키지 블록 중 하나 이상을 복수의 컴포넌트 이외의 단말 내의 적어도 하나의 컴포넌트에 전송하도록 복수의 컴포넌트에게 지시하는 데 사용되고, 하나 이상의 업그레이드 패키지 블록은 복수의 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록을 파싱함으로써 복수의 컴포넌트에 의해 획득된다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제11 가능한 구현예에서, 방법은: 설치 활성화 명령어를 복수의 컴포넌트에 전송하는 단계를 추가로 포함하고, 설치 활성화 명령어는 복수의 컴포넌트에서 적어도 하나의 업그레이드 소프트웨어를 설치 및 활성화하도록 지시하는 데 사용되고, 적어도 하나의 업그레이드 소프트웨어는 복수의 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록을 파싱함으로써 복수의 컴포넌트에 의해 획득된다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제12 가능한 구현예에서, 가용 저장 용량은 랜덤 액세스 메모리 RAM에서의 가용 저장 용량 또는 판독 전용 메모리 ROM에서의 가용 저장 용량 중 적어도 하나를 포함한다.
제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제13 가능한 구현예에서, 복수의 업그레이드 패키지 블록 각각은 단말 내의 적어도 하나의 컴포넌트를 업그레이드하기 위해 사용되는 업그레이드 소프트웨어 패키지들의 전부 또는 일부를 포함한다.
제2 양태에 따르면, 소프트웨어 업그레이드 방법이 제공된다. 방법은 네트워크 측에서 수행되는 소프트웨어 업그레이드 방법이며, 이 방법은: 단말 디바이스로부터 저장 자원 피드백 정보를 수신하는 단계- 저장 자원 피드백 정보는 단말 디바이스에 있고 복수의 업그레이드 패키지 블록을 저장하기 위해 사용될 수 있는 복수의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -; 저장 자원 피드백 정보에 기초하여 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하는 단계- 복수의 업그레이드 패키지 블록은 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부와 일대일 대응관계에 있음 -; 업그레이드 패키지 블록 정보를 생성하는 단계- 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록과 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부 사이의 대응관계를 적어도 포함함 -; 및 업그레이드 패키지 블록 정보를 단말 디바이스에 전송하는 단계를 포함한다.
선택적으로, 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하는 것은: 복수의 업그레이드 패키지 블록을 획득하기 위해, 비교적 큰 저장 용량을 점유하는 소프트웨어 업그레이드 패키지(예를 들어, 차량 업그레이드 패키지)에 대해 블록 분할 및 재캡슐화를 수행하는 것, 또는 복수의 업그레이드 패키지 블록을 획득하기 위해, 복수의 소프트웨어 업그레이드 패키지에 대해 그룹화 및 재캡슐화를 수행하는 것(예를 들어, 하나의 소프트웨어 업그레이드 패키지가 하나의 업그레이드 소프트웨어에 대응함)을 포함한다. 하나 이상의 소프트웨어 업그레이드 패키지는 적어도 일부 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록으로 분할된다. 이것은 단말 내의 복수의 컴포넌트에서의 저장 자원들을 충분히 활용하고, 종래의 기술과 비교하여 단말 측 상의 컴포넌트들의 소프트웨어 패키지 저장 압력을 감소시킨다. 또한, 비교적 큰 데이터 패킷의 블록 분할 동안 비교적 많은 수량의 랜덤 저장 자원이 점유될 필요가 있기 때문에, 네트워크 측 상의 업그레이드 패키지에 대해 블록 분할이 수행될 때 단말 측 상의 컴포넌트들에서의 저장 자원들에 대한 요건이 감소될 수 있다. 마지막으로, 소프트웨어 업그레이드 성공률이 증가될 수 있다. 그러므로, 소프트웨어 업그레이드 방법은 단말(특히 지능형 접속 차량)의 소프트웨어 업그레이드에 더 적합하다.
제2 양태에 따르면, 소프트웨어 업그레이드 방법의 제1 가능한 구현예에서, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록 각각의 검증 정보, 각각의 업그레이드 패키지 블록의 다운로드 어드레스, 또는 복수의 업그레이드 패키지 블록의 수량 중 적어도 하나를 포함한다. 업그레이드 패키지 블록 정보는 각각의 업그레이드 패키지 블록의 검증 정보를 포함하여, 각각의 업그레이드 패키지 블록이 독립적으로 검증될 수 있고, 그에 의해 단말 내의 복수의 가용 컴포넌트의 컴퓨팅 자원들을 충분히 활용할 수 있다. 업그레이드 패키지 블록 정보는 각각의 업그레이드 패키지 블록의 다운로드 어드레스를 포함하고, 단말 내의 복수의 컴포넌트에, 복수의 업그레이드 패키지 블록을 획득하도록 구성된 네트워크 측 디바이스를 지시할 수 있다. 업그레이드 패키지 블록 정보는 업그레이드 패키지 블록들의 수량을 포함하고, 복수의 업그레이드 패키지 블록에 대한 전체 데이터 무결성 검증을 수행하기 위해 사용될 수 있다.
제2 양태 또는 제2 양태의 제1 가능한 구현예에 따르면, 소프트웨어 업그레이드 방법의 제2 가능한 구현예에서, 단말 디바이스로부터 저장 자원 피드백 정보를 수신하기 전에, 방법은: 소프트웨어 업그레이드 시작 메시지를 단말 디바이스에 전송하는 것을 추가로 포함한다. 네트워크 측 디바이스에 더하여, 단말 디바이스가 소프트웨어 업그레이드를 시작할 수 있다.
제2 양태 또는 제2 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제3 가능한 구현예에서, 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하기 전에, 방법은: 저장 자원 피드백 정보에 기초하여, 단말 디바이스 내의 가용 저장 자원이 소프트웨어 업그레이드를 위한 저장 요건을 충족한다고 결정하는 것을 추가로 포함한다. 선택적으로, 가용 저장 용량들의 합으로부터 소프트웨어 업그레이드 패키지들에 의해 점유된 저장 공간의 합을 감산함으로써 획득된 차이가 미리 결정된 임계값을 초과하는 경우, 단말 디바이스 내의 가용 저장 자원이 소프트웨어 업그레이드를 위한 저장 요건을 충족하는 것으로 결정된다.
제2 양태 또는 제2 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제4 가능한 구현예에서, 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하는 것은: 비교적 큰 저장 공간을 점유하는 소프트웨어 업그레이드 패키지를 분할함으로써 획득된 업그레이드 패키지 블록을 비교적 큰 가용 저장 용량을 갖는 컴포넌트에 바람직하게 할당하는 것을 포함한다. 복수의 업그레이드 패키지 블록은 복수의 컴포넌트와 일대일 대응관계에 있다. 이러한 방식으로, 소프트웨어 업그레이드 패키지가 과도하게 크기 때문에 소프트웨어 업그레이드 패키지가 복수의 업그레이드 패키지 블록 중 어느 하나로서 결정될 수 없는 경우가 가능한 한 많이 회피될 수 있다.
제2 양태 또는 제2 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제5 가능한 구현예에서, 방법은: 업그레이드 패키지 배포 명령어를 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치에 전송하는 단계를 추가로 포함하고, 업그레이드 패키지 배포 명령어는 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치에게 복수의 업그레이드 패키지 블록 중 적어도 하나를 단말 디바이스에 전송하도록 지시하는 데 사용된다.
제2 양태 또는 제2 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제6 가능한 구현예에서, 방법은: 복수의 업그레이드 패키지 블록 중 적어도 하나를 단말 디바이스에 전송하는 단계를 추가로 포함한다.
제2 양태의 제6 가능한 구현예에 따르면, 소프트웨어 업그레이드 방법의 제7 가능한 구현예에서, 복수의 업그레이드 패키지 블록 중 적어도 하나를 단말 디바이스에 전송하기 전에, 방법은: 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치로부터 복수의 업그레이드 패키지 블록 중 적어도 하나를 수신하는 단계를 추가로 포함한다.
제2 양태 또는 제2 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제8 가능한 구현예에서, 가용 저장 용량은 랜덤 액세스 메모리 RAM에서의 가용 저장 용량 또는 판독 전용 메모리 ROM에서의 가용 저장 용량 중 적어도 하나를 포함한다.
제2 양태 또는 제2 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 방법의 제9 가능한 구현예에서, 복수의 업그레이드 패키지 블록 각각은 단말 내의 적어도 하나의 컴포넌트를 업그레이드하기 위해 사용되는 업그레이드 소프트웨어 패키지들의 전부 또는 일부를 포함한다.
제3 양태에 따르면, 소프트웨어 업그레이드 장치가 제공된다. 장치는: 단말 내의 적어도 2개의 컴포넌트의 저장 자원 정보를 수신하도록 구성되는 수신 유닛- 저장 자원 정보는 적어도 2개의 컴포넌트 각각의 가용 저장 용량을 적어도 포함하고, 적어도 2개의 컴포넌트는 적어도 2개의 가용 저장 용량에 대응함 -; 저장 자원 정보에 기초하여 저장 자원 피드백 정보를 생성하도록 구성되는 처리 유닛- 저장 자원 피드백 정보는 각각의 컴포넌트의 가용 저장 용량을 적어도 포함함 -; 및 저장 자원 피드백 정보를 네트워크 측 디바이스에 전송하도록 구성되는 전송 유닛을 포함한다. 수신 유닛은 네트워크 측 디바이스에 의해 생성된 업그레이드 패키지 블록 정보를 수신하도록 추가로 구성되고, 업그레이드 패키지 블록 정보는 단말 소프트웨어 업그레이드를 위한 복수의 업그레이드 패키지 블록과 적어도 2개의 가용 저장 용량에서의 복수의 가용 저장 용량 사이의 일대일 대응관계를 적어도 포함한다. 처리 유닛은, 업그레이드 패키지 블록 정보에 기초하여, 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용되는 적어도 하나의 지시 정보를 생성하도록 추가로 구성되고, 복수의 컴포넌트는 복수의 가용 저장 용량과 일대일 대응관계에 있다. 전송 유닛은 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하도록 추가로 구성된다.
장치는 단말 측에서의 소프트웨어 업그레이드 장치이다. "적어도 일부"는 "일부 또는 전부"와 등가이다. 선택적으로, 저장 자원 피드백 정보는 적어도 2개의 컴포넌트 중 적어도 일부의 각각의 식별자를 추가로 포함한다. 컴포넌트는 단말의 내부 네트워크(예를 들어, 차량-내 네트워크)에 접속되는 컴포넌트이다. 저장 자원이 다 사용된 컴포넌트 또는 또 다른 동작을 위한 저장 자원을 예약하는 컴포넌트가 있을 수 있기 때문에, 적어도 2개의 컴포넌트는 단말 내의 모든 컴포넌트일 수 있거나, 또는 단말 내의 일부 컴포넌트일 수 있다. 단말 내의 적어도 2개의 컴포넌트의 저장 자원 정보를 수신하는 것은 하나 이상의 수신 방식으로 수행될 수 있다. 수신 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스 또는 하드웨어 회로 보드 상의 배선을 통한 수신 수행, 소프트웨어 모듈로부터의 파라미터 획득, 또는 저장 디바이스로부터의 정보 판독을 포함하지만, 이들로 제한되지는 않는다. 적어도 2개의 컴포넌트 각각의 가용 저장 용량에 더하여, 저장 자원 정보는 다른 정보, 예를 들어, 적어도 2개의 컴포넌트의 수량, 식별자, 또는 총 가용 저장 용량을 포함할 수 있다. 적어도 2개의 컴포넌트의 가용 저장 용량들 전부가 저장 자원 피드백 정보에 배치되는 것은 아닐 수 있는데, 그 이유는 저장 자원 정보 내의 가용 저장 용량에 기초하여 단말 측에서, 적어도 2개의 컴포넌트 내의 하나 이상의 네트워킹 모듈이 단말 소프트웨어 업그레이드 패키지를 저장하는 데 사용되지 않을 수 있다고 결정될 수 있기 때문이다. 물론, 전술한 결정 동작은 단말 측에서가 아니라 네트워크 측에서 수행될 수 있다. 업그레이드 소프트웨어는 적어도 2개의 컴포넌트 모두를 점유할 필요가 없을 수 있으므로, 복수의 컴포넌트는 적어도 2개의 컴포넌트 중 일부일 수 있다. 적어도 하나의 지시 정보를 전송하는 것은 하나 이상의 전송 방식으로 수행될 수 있다. 전송 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스 또는 하드웨어 회로 보드 상의 배선을 통한 전송 수행, 소프트웨어 모듈로의 파라미터 입력, 또는 메모리로의 정보 기입을 포함하지만, 이들로 제한되지는 않는다. 단말의 저장 자원 정보는 네트워크 측 디바이스에 보고되고, 네트워크 측 디바이스는 단말에서 실제 가용 저장 자원에 기초하여 분할을 통해 복수의 업그레이드 패키지 블록을 적응적으로 획득한다. 이것은 단말 내의 복수의 컴포넌트에서의 저장 자원들을 충분히 활용하고, 종래의 기술과 비교하여 단말 측 상의 컴포넌트들의 소프트웨어 패키지 저장 압력을 감소시킨다. 또한, 비교적 큰 데이터 패킷의 블록 분할 동안 비교적 많은 수량의 랜덤 저장 자원이 점유될 필요가 있기 때문에, 네트워크 측 상의 업그레이드 패키지에 대해 블록 분할이 수행될 때 단말 측 상의 컴포넌트들에서의 저장 자원들에 대한 요건이 감소될 수 있다. 마지막으로, 소프트웨어 업그레이드 성공률이 증가될 수 있다. 그러므로, 소프트웨어 업그레이드 방법은 단말(특히 지능형 접속 차량)의 소프트웨어 업그레이드에 더 적합하다.
선택적으로, 수신 유닛은 복수의 수신 서브유닛을 포함하고, 복수의 수신 서브유닛 각각은 단말 내의 적어도 2개의 컴포넌트 중 적어도 하나의 저장 자원 정보를 수신하도록 구성된다. 선택적으로, 복수의 수신 서브유닛은 단말 내의 복수의 상이한 컴포넌트에 위치한다. 선택적으로, 복수의 수신 서브유닛은 적어도 하나의 수신 방식으로 저장 자원 정보를 수신한다. 수신 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스 또는 하드웨어 회로 보드 상의 배선을 통한 수신 수행, 소프트웨어 모듈로부터의 파라미터 획득, 또는 저장 디바이스로부터의 정보 판독을 포함하지만, 이들로 제한되지는 않는다.
선택적으로, 저장 자원 피드백 정보는 복수의 컴포넌트 중 적어도 일부의 가용 저장 용량들과 일-대-일 대응관계에 있는 적어도 하나의 컴포넌트의 식별자를 추가로 포함하고, 적어도 하나의 컴포넌트는 적어도 2개의 컴포넌트 중 일부 또는 전부이다.
선택적으로, 전송 유닛은 복수의 전송 서브유닛을 포함하고, 복수의 전송 서브유닛은 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하도록 각각 구성된다. 선택적으로, 복수의 전송 서브유닛은 단말 내의 복수의 상이한 컴포넌트에 위치한다. 선택적으로, 복수의 전송 서브유닛은 적어도 하나의 전송 방식으로 저장 자원 정보를 전송하고, 전송 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 로컬 영역 네트워크), WiMAX(Worldwide interoperability for microwave access, 마이크로파 액세스를 위한 전세계적 상호운용성), Bluetooth (블루투스 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스 또는 하드웨어 회로 보드 상의 배선을 통한 전송 수행, 소프트웨어 모듈로의 파라미터 입력, 또는 메모리로의 정보 기입을 포함하지만, 이들로 제한되지는 않는다.
제3 양태에 따르면, 소프트웨어 업그레이드 장치의 제1 가능한 구현예에서, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록 각각의 다운로드 어드레스를 추가로 포함하고; 적어도 하나의 지시 정보 내의 각각의 지시 정보는 복수의 업그레이드 패키지 블록 중 적어도 하나의 다운로드 어드레스를 포함한다. 단말 소프트웨어는 중앙집중 방식으로 네트워크 측 상의 하나의 디바이스에 저장될 수 있거나, 분산 방식으로 네트워크 측에서의 복수의 디바이스에 저장될 수 있다. 그러므로, 선택적으로, 복수의 업그레이드 패키지 블록에 대한 하나 이상의 다운로드 어드레스가 존재하거나, 복수의 업그레이드 패키지 블록 중 적어도 일부가 하나의 다운로드 어드레스를 공유한다. 다운로드 어드레스는 컴포넌트에 대응하는 업그레이드 패키지 블록이 위치하는 네트워크 측 디바이스를 컴포넌트에 지시하는 데 사용된다.
제3 양태 또는 제3 양태의 제1 가능한 구현예에 따르면, 소프트웨어 업그레이드 장치의 제2 가능한 구현예에서, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록 각각의 검증 정보를 추가로 포함하고, 적어도 하나의 지시 정보 내의 각각의 지시 정보는 복수의 업그레이드 패키지 블록 중 적어도 하나의 검증 정보를 포함한다. 각각의 업그레이드 패키지 블록은 독립적으로 검증되어, 단말 내의 디바이스의 컴퓨팅 자원이 더 충분히 활용될 수 있다. 선택적으로, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록의 수량을 추가로 포함하고, 장치는 각각의 업그레이드 패키지 블록의 검증 결과 및 복수의 업그레이드 패키지 블록의 수량에 기초하여 전체 검증을 수행하는 단계를 추가로 수행한다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제3 가능한 구현예에서, 적어도 하나의 지시 정보는 복수의 업그레이드 패키지 블록 중 적어도 하나를 획득하기 위해 복수의 컴포넌트에 의해 사용되는 외부 통신 자원을 포함한다. 외부 통신 자원은 단말 외부의 디바이스와 통신하기 위해 단말 내의 컴포넌트들에 의해 사용되는 통신 자원(예를 들어, 차량-간 네트워크 통신에 적용되는 셀룰러 통신 자원)이다. 외부 통신 자원은 통신 컴포넌트, 통신 채널, 통신 인터페이스, 또는 셀룰러 통신, 위성 통신, 블루투스 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), 또는 유선 통신에 사용되는 다른 통신 자원을 포함하지만, 이들로 제한되지는 않는다. 선택적으로, 외부 통신 자원은 복수의 컴포넌트 각각의 외부 통신 자원, 또는 단말 내의 복수의 컴포넌트 이외의 하나 이상의 컴포넌트의 외부 통신 자원을 포함한다. 선택적으로, 복수의 컴포넌트 각각은 컴포넌트의 외부 통신 자원을 사용함으로써 또는 컴포넌트의 외부 통신 자원 이외의 단말의 외부 통신 자원을 사용함으로써 복수의 업그레이드 패키지 블록 중 하나를 획득한다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제4 가능한 구현예에서, 적어도 하나의 지시 정보는 복수의 업그레이드 패키지 블록 중 적어도 하나를 획득하기 위해 복수의 컴포넌트에 의해 사용되는 시간 정보를 포함한다. 선택적으로, 시간 정보는 복수의 컴포넌트가 복수의 업그레이드 패키지 블록을 동시에 또는 순차적으로 획득한다는 것을 지시한다. 선택적으로, 시간 정보는 복수의 컴포넌트가 적어도 하나의 업그레이드 패키지 블록을 주기적으로 획득한다는 것을 지시한다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제5 가능한 구현예에서, 처리 유닛은 적어도 2개의 컴포넌트 각각의 가용 저장 용량에 기초하여, 단말에서의 가용 저장 자원이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족한다고 결정하도록 추가로 구성된다. 단말 디바이스로의 다운로드를 시작할 때, 네트워크 측 디바이스는 복수의 다운로드될 단말 소프트웨어 업그레이드 패키지의 저장 요건을 단말 디바이스에 전송하고, 단말 디바이스는 단말에서의 가용 저장 자원이 복수의 단말 소프트웨어 업그레이드 패키지의 저장 요건을 충족하는지를 결정한다. 이러한 방식으로, 단말 디바이스는 더 높은 자율성 및 프라이버시를 갖는다. 선택적으로, 가용 저장 용량들의 합으로부터 소프트웨어 업그레이드 패키지들에 의해 점유된 저장 공간의 합을 감산함으로써 획득된 차이가 미리 결정된 임계값을 초과하는 경우, 단말에서의 가용 저장 자원이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족하는 것으로 결정된다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제6 가능한 구현예에서, 적어도 하나의 지시 정보는 복수의 지시 정보이고, 복수의 지시 정보는 복수의 컴포넌트와 일대일 대응관계에 있고; 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하는 것은: 복수의 지시 정보에 있고 컴포넌트에 대응하는 하나의 지시 정보를 복수의 컴포넌트 각각에 전송하는 것을 포함한다. 선택적으로, 복수의 지시 정보는 동시에 또는 순차적으로 전송된다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제7 가능한 구현예에서, 적어도 하나의 지시 정보는 하나의 지시 정보이고, 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하는 것은: 하나의 지시 정보를 복수의 컴포넌트 각각에 전송하는 것을 포함한다. 이러한 방식으로, 하나의 지시 정보는 복수의 업그레이드 패키지 블록 중 하나를 획득하기 위해 복수의 컴포넌트 각각에 의해 사용되는 관련 정보를 포함한다. 선택적으로, 하나의 지시 정보는 복수의 컴포넌트 전부에 동시에 또는 순차적으로 전송된다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제8 가능한 구현예에서, 적어도 하나의 지시 정보는 하나의 지시 정보이고, 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하는 것은: 하나의 지시 정보를 복수의 컴포넌트 중 하나에 전송하는 것을 포함한다. 이러한 방식으로, 하나의 지시 정보는 복수의 컴포넌트 사이에서 송신될 수 있다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제9 가능한 구현예에서, 전송 유닛은 복수의 컴포넌트에 다운로드 명령어를 전송하도록 추가로 구성되고, 다운로드 명령어는 복수의 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용된다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제10 가능한 구현예에서, 전송 유닛은 복수의 컴포넌트에 업그레이드 패키지 배포 명령어를 전송하도록 추가로 구성되고, 업그레이드 패키지 배포 명령어는 복수의 업그레이드 패키지 블록 중 하나 이상을 복수의 컴포넌트 이외의 단말 내의 적어도 하나의 컴포넌트에 전송하도록 복수의 컴포넌트에게 지시하는 데 사용되고, 하나 이상의 업그레이드 패키지 블록은 복수의 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록을 파싱함으로써 복수의 컴포넌트에 의해 획득된다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제11 가능한 구현예에서, 전송 유닛은 설치 활성화 명령어를 복수의 컴포넌트에 전송하도록 추가로 구성되고, 설치 활성화 명령어는 복수의 컴포넌트에서 적어도 하나의 업그레이드 소프트웨어를 설치 및 활성화하도록 지시하는 데 사용되고, 적어도 하나의 업그레이드 소프트웨어는 복수의 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록을 파싱함으로써 복수의 컴포넌트에 의해 획득된다.
선택적으로, 복수의 전송 서브유닛은 다운로드 명령어, 업그레이드 패키지 배포 명령어, 또는 설치 활성화 명령어를 복수의 컴포넌트에 전송하도록 각각 구성된다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제12 가능한 구현예에서, 가용 저장 용량은 랜덤 액세스 메모리 RAM에서의 가용 저장 용량 또는 판독 전용 메모리 ROM에서의 가용 저장 용량 중 적어도 하나를 포함한다.
제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제13 가능한 구현예에서, 복수의 업그레이드 패키지 블록 각각은 단말 내의 적어도 하나의 컴포넌트를 업그레이드하기 위해 사용되는 업그레이드 소프트웨어 패키지들의 전부 또는 일부를 포함한다.
제4 양태에 따르면, 소프트웨어 업그레이드 장치가 제공된다. 소프트웨어 업그레이드 장치는 네트워크 측에 위치하고, 이 장치는: 단말 디바이스로부터 저장 자원 피드백 정보를 수신하도록 구성되는 수신 유닛- 저장 자원 피드백 정보는 단말 디바이스에 있고 복수의 업그레이드 패키지 블록을 저장하기 위해 사용될 수 있는 복수의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -; 저장 자원 피드백 정보에 기초하여 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하도록 구성되는 처리 유닛- 복수의 업그레이드 패키지 블록은 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부와 일대일 대응관계에 있고; 처리 유닛은 업그레이드 패키지 블록 정보를 생성하도록 추가로 구성되고, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록과 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부 사이의 대응관계를 적어도 포함함 -; 업그레이드 패키지 블록 정보를 단말 디바이스에 전송하도록 구성되는 전송 유닛을 포함한다. 하나 이상의 소프트웨어 업그레이드 패키지는 적어도 일부 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록으로 분할된다. 이것은 단말 내의 복수의 컴포넌트에서의 저장 자원들을 충분히 활용하고, 종래의 기술과 비교하여 단말 측 상의 컴포넌트들의 소프트웨어 패키지 저장 압력을 감소시킨다. 또한, 비교적 큰 데이터 패킷의 블록 분할 동안 비교적 많은 수량의 랜덤 저장 자원이 점유될 필요가 있기 때문에, 네트워크 측 상의 업그레이드 패키지에 대해 블록 분할이 수행될 때 단말 측 상의 컴포넌트들에서의 저장 자원들에 대한 요건이 감소될 수 있다. 마지막으로, 소프트웨어 업그레이드 성공률이 증가될 수 있다. 그러므로, 소프트웨어 업그레이드 방법은 단말(특히 지능형 접속 차량)의 소프트웨어 업그레이드에 더 적합하다.
수신 유닛은 하나 이상의 수신 방식으로 저장 자원 피드백 정보를 수신할 수 있다. 수신 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스 또는 하드웨어 회로 보드 상의 배선을 통한 수신 수행, 소프트웨어 모듈로부터의 파라미터 획득, 또는 저장 디바이스로부터의 정보 판독을 포함하지만, 이들로 제한되지는 않는다.
선택적으로, 수신 유닛은 복수의 수신 서브유닛을 포함하고, 복수의 수신 서브유닛 각각은 단말 내의 적어도 2개의 컴포넌트 중 적어도 하나의 저장 자원 정보를 수신하도록 구성된다. 선택적으로, 복수의 수신 서브유닛은 단말 내의 복수의 상이한 컴포넌트에 위치한다. 선택적으로, 복수의 수신 서브유닛은 적어도 하나의 수신 방식으로 저장 자원 정보를 수신한다. 수신 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스 또는 하드웨어 회로 보드 상의 배선을 통한 수신 수행, 소프트웨어 모듈로부터의 파라미터 획득, 또는 저장 디바이스로부터의 정보 판독을 포함하지만, 이들로 제한되지는 않는다.
전송 유닛은 하나 이상의 전송 방식으로 업그레이드 패키지 블록 정보를 전송할 수 있다. 전송 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스 또는 하드웨어 회로 보드 상의 배선을 통한 전송 수행, 소프트웨어 모듈로의 파라미터 입력, 또는 메모리로의 정보 기입을 포함하지만, 이들로 제한되지는 않는다.
선택적으로, 전송 유닛은 복수의 전송 서브유닛을 포함하고, 복수의 전송 서브유닛은 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하도록 각각 구성된다. 선택적으로, 복수의 전송 서브유닛은 단말 내의 복수의 상이한 컴포넌트에 위치한다. 선택적으로, 복수의 전송 서브유닛은 적어도 하나의 전송 방식으로 저장 자원 정보를 전송하고, 전송 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 로컬 영역 네트워크), WiMAX(Worldwide interoperability for microwave access, 마이크로파 액세스를 위한 전세계적 상호운용성), Bluetooth (블루투스 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스 또는 하드웨어 회로 보드 상의 배선을 통한 전송 수행, 소프트웨어 모듈로의 파라미터 입력, 또는 메모리로의 정보 기입을 포함하지만, 이들로 제한되지는 않는다.
선택적으로, 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하는 것은: 복수의 업그레이드 패키지 블록을 획득하기 위해, 비교적 큰 저장 용량을 점유하는 소프트웨어 업그레이드 패키지(예를 들어, 차량 업그레이드 패키지)에 대해 블록 분할 및 재캡슐화를 수행하는 것, 또는 복수의 업그레이드 패키지 블록을 획득하기 위해, 복수의 소프트웨어 업그레이드 패키지에 대해 그룹화 및 재캡슐화를 수행하는 것(예를 들어, 하나의 소프트웨어 업그레이드 패키지가 하나의 업그레이드 소프트웨어에 대응함)을 포함한다. 하나 이상의 소프트웨어 업그레이드 패키지는 적어도 일부 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록으로 분할된다. 이것은 단말에서의 저장 자원을 충분히 활용하고, 단말의 소프트웨어 업그레이드 성공률을 증가시킨다. 그러므로, 소프트웨어 업그레이드 장치는 단말(특히 지능형 접속 차량)의 소프트웨어 업그레이드에 더 적합하다.
제4 양태에 따르면, 소프트웨어 업그레이드 장치의 제1 가능한 구현예에서, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록 각각의 검증 정보, 각각의 업그레이드 패키지 블록의 다운로드 어드레스, 또는 복수의 업그레이드 패키지 블록의 수량 중 적어도 하나를 포함한다. 업그레이드 패키지 블록 정보는 각각의 업그레이드 패키지 블록의 검증 정보를 포함하여, 각각의 업그레이드 패키지 블록이 독립적으로 검증될 수 있고, 그에 의해 단말 내의 복수의 가용 컴포넌트의 컴퓨팅 자원들을 충분히 활용할 수 있다. 업그레이드 패키지 블록 정보는 각각의 업그레이드 패키지 블록의 다운로드 어드레스를 포함하고, 단말 내의 복수의 컴포넌트에게, 복수의 업그레이드 패키지 블록을 획득하도록 구성된 네트워크 측 디바이스를 지시할 수 있다. 업그레이드 패키지 블록 정보는 업그레이드 패키지 블록들의 수량을 포함하고, 복수의 업그레이드 패키지 블록에 대한 전체 데이터 무결성 검증을 수행하기 위해 사용될 수 있다.
제4 양태 또는 제4 양태의 제1 가능한 구현예에 따르면, 소프트웨어 업그레이드 장치의 제2 가능한 구현예에서, 전송 유닛은 소프트웨어 업그레이드 시작 메시지를 단말 디바이스에 전송하도록 추가로 구성된다. 네트워크 측 디바이스에 더하여, 단말 디바이스는 소프트웨어 업그레이드를 시작할 수 있다.
제4 양태 또는 제4 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제3 가능한 구현예에서, 처리 유닛은 저장 자원 피드백 정보에 기초하여, 단말 디바이스에서의 가용 저장 자원이 소프트웨어 업그레이드를 위한 저장 요건을 충족한다고 결정하도록 추가로 구성된다. 선택적으로, 가용 저장 용량들의 합으로부터 소프트웨어 업그레이드 패키지들에 의해 점유된 저장 공간의 합을 감산함으로써 획득된 차이가 미리 결정된 임계값을 초과하는 경우, 단말 디바이스 내의 가용 저장 자원이 소프트웨어 업그레이드를 위한 저장 요건을 충족하는 것으로 결정된다.
제4 양태 또는 제4 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제4 가능한 구현예에서, 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하는 것은: 바람직하게는 비교적 큰 저장 공간을 점유하는 소프트웨어 업그레이드 패키지를 비교적 큰 가용 저장 용량을 갖는 컴포넌트에 대응하는 업그레이드 패키지 블록으로서 결정하는 것을 포함한다. 복수의 업그레이드 패키지 블록은 복수의 컴포넌트와 일대일 대응관계에 있다. 이러한 방식으로, 소프트웨어 업그레이드 패키지가 과도하게 크기 때문에 소프트웨어 업그레이드 패키지가 복수의 업그레이드 패키지 블록 중 어느 하나로서 결정될 수 없는 경우가 가능한 한 많이 회피될 수 있다.
제4 양태 또는 제4 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제5 가능한 구현예에서, 전송 유닛은 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치에 업그레이드 패키지 배포 명령어를 전송하도록 추가로 구성되고, 업그레이드 패키지 배포 명령어는 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치에게 복수의 업그레이드 패키지 블록 중 적어도 하나를 단말 디바이스에 전송하도록 지시하는 데 사용된다.
제4 양태 또는 제4 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제6 가능한 구현예에서, 전송 유닛은 복수의 업그레이드 패키지 블록 중 적어도 하나를 단말 디바이스에 전송하도록 추가로 구성된다.
제4 양태의 제6 가능한 구현예에 따르면, 소프트웨어 업그레이드 장치의 제7 가능한 구현예에서, 수신 유닛은 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치로부터 복수의 업그레이드 패키지 블록 중 적어도 하나를 수신하도록 추가로 구성된다.
제4 양태 또는 제4 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제8 가능한 구현예에서, 가용 저장 용량은 랜덤 액세스 메모리 RAM에서의 가용 저장 용량 또는 판독 전용 메모리 ROM에서의 가용 저장 용량 중 적어도 하나를 포함한다.
제4 양태 또는 제4 양태의 전술한 구현예들 중 어느 하나에 따르면, 소프트웨어 업그레이드 장치의 제9 가능한 구현예에서, 복수의 업그레이드 패키지 블록 각각은 단말 내의 적어도 하나의 컴포넌트를 업그레이드하기 위해 사용되는 업그레이드 소프트웨어 패키지들의 전부 또는 일부를 포함한다.
제5 양태에 따르면, 소프트웨어 업그레이드 장치가 제공된다. 장치는 메모리 및 프로세서를 포함한다. 메모리는 컴퓨터 프로그램 명령어들을 저장하고, 프로세서는 컴퓨터 프로그램 명령어들을 실행하여 제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에서의 동작을 수행한다.
제5 양태에 따르면, 소프트웨어 업그레이드 장치의 제1 가능한 구현예에서, 장치는 저장 자원 정보 또는 업그레이드 패키지 블록 정보를 수신하도록 구성되거나, 저장 자원 피드백 정보, 적어도 하나의 지시 정보, 다운로드 명령어, 업그레이드 패키지 배포 명령어, 및 설치 활성화 명령어 중 적어도 하나를 전송하도록 구성되는 송수신기를 추가로 포함한다.
제3 또는 제5 양태, 또는 제3 또는 제5 양태의 전술한 구현예들 중 어느 하나에서 설명된 소프트웨어 업그레이드 장치는 지능형 접속 차량, 로봇, 스마트 가정용 디바이스, 또는 또다른 형태를 포함하지만, 이들로 제한되지는 않는 단말 디바이스에 적용될 수 있다. 지능형 접속 차량에 적용될 때, 소프트웨어 업그레이드 장치는 지능형 접속 차량 자체 또는 지능형 접속 차량 내의 컴포넌트, 예를 들어, 중앙 게이트웨이, T-박스(Telematics BOX, 차량들의 인터넷에서의 차량 통신 단말), 인간-기계 상호작용(HMI, Human-Machine Interaction) 제어기, 모바일 데이터 센터(MDC, Mobile Data Controller), 첨단 운전자 보조 시스템(ADAS, Advanced Driving Assistant System), 또는 전자 제어 유닛(ECU, Electronic Control Unit)일 수 있다. 대안적으로, 소프트웨어 업그레이드 장치는 전술한 컴포넌트들 내의 서브-장치일 수 있거나, 전술한 컴포넌트들 이외의 지능형 접속 차량 내의 독립 장치일 수 있다.
제6 양태에 따르면, 소프트웨어 업그레이드 장치가 제공된다. 장치는 메모리 및 프로세서를 포함한다. 메모리는 컴퓨터 프로그램 명령어들을 저장하고, 프로세서는 컴퓨터 프로그램 명령어들을 실행하여 제2 양태 또는 제2 양태의 전술한 구현예들 중 어느 하나에서의 동작을 수행한다.
제6 양태에 따르면, 소프트웨어 업그레이드 장치의 제1 가능한 구현예에서, 장치는 저장 자원 피드백 정보 또는 복수의 업그레이드 패키지 블록 중 적어도 하나를 수신하도록 구성되거나, 업그레이드 패키지 블록 정보, 소프트웨어 업그레이드 시작 메시지, 업그레이드 패키지 배포 명령어 및 적어도 하나의 업그레이드 패키지 블록 중 적어도 하나를 전송하도록 구성되는 송수신기를 추가로 포함한다.
제4 또는 제6 양태 또는 제4 또는 제6 양태의 전술한 구현예들 중 어느 하나에서 설명된 소프트웨어 업그레이드 장치는 네트워크 측에 적용될 수 있다. 예를 들어, 소프트웨어 업그레이드 장치는 네트워크 측에 서버의 형태로 존재한다.
제7 양태에 따르면, 단말 소프트웨어 업그레이드 시스템이 제공된다. 시스템은 제3 양태 또는 제3 양태의 전술한 구현예들 중 어느 하나에 따른 소프트웨어 업그레이드 장치 및 제4 양태 또는 제4 양태의 전술한 구현예들 중 어느 하나에 따른 소프트웨어 업그레이드 장치를 포함한다.
제8 양태에 따르면, 단말 소프트웨어 업그레이드 시스템이 제공된다. 시스템은 제5 양태 또는 제5 양태의 전술한 구현예들 중 어느 하나에 따른 소프트웨어 업그레이드 장치 및 제6 양태 또는 제6 양태의 전술한 구현예들 중 어느 하나에 따른 소프트웨어 업그레이드 장치를 포함한다.
제9 양태에 따르면, 컴퓨터 저장 매체가 제공된다. 컴퓨터 저장 매체는 컴퓨터 명령어들을 포함한다. 컴퓨터 명령어들이 프로세서에 의해 실행될 때, 소프트웨어 업그레이드 장치는 제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따른 방법을 수행할 수 있게 된다.
제10 양태에 따르면, 컴퓨터 저장 매체가 제공된다. 컴퓨터 저장 매체는 컴퓨터 명령어들을 포함한다. 컴퓨터 명령어들이 프로세서에 의해 실행될 때, 소프트웨어 업그레이드 장치는 제2 양태 또는 제2 양태의 전술한 구현예들 중 어느 하나에 따른 방법을 수행할 수 있게 된다.
제11 양태에 따르면, 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 프로그램 제품이 프로세서 상에서 실행될 때, 소프트웨어 업그레이드 장치는 제1 양태 또는 제1 양태의 전술한 구현예들 중 어느 하나에 따른 방법을 수행할 수 있게 된다.
제12 양태에 따르면, 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 프로그램 제품이 프로세서 상에서 실행될 때, 소프트웨어 업그레이드 장치는 제2 양태 또는 제2 양태의 전술한 구현예들 중 어느 하나에 따른 방법을 수행할 수 있게 된다.
제13 양태에 따르면, 차량 소프트웨어 업그레이드 방법이 제공된다. 방법은: 차량 내의 적어도 2개의 컴포넌트의 저장 자원 정보를 수신하는 단계- 저장 자원 정보는 적어도 2개의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -; 및 적어도 하나의 지시 정보를 차량 내의 복수의 컴포넌트에 전송하는 단계를 포함하고, 적어도 하나의 지시 정보는 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용되고, 복수의 업그레이드 패키지 블록은 하나 이상의 업그레이드 소프트웨어 패키지를 분할함으로써 저장 자원 정보에 기초하여 획득되고, 복수의 컴포넌트는 적어도 2개의 컴포넌트의 가용 저장 용량들 중 적어도 일부와 일대일 대응관계에 있다.
제14 양태에 따르면, 차량 소프트웨어 업그레이드 장치가 제공된다. 장치는: 차량 내의 적어도 2개의 컴포넌트의 저장 자원 정보를 수신하도록 구성되는 수신 유닛- 저장 자원 정보는 적어도 2개의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -; 및 적어도 하나의 지시 정보를 차량 내의 복수의 컴포넌트에 전송하도록 구성되는 전송 유닛을 포함하고, 적어도 하나의 지시 정보는 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용되고, 복수의 업그레이드 패키지 블록은 하나 이상의 업그레이드 소프트웨어 패키지를 분할함으로써 저장 자원 정보에 기초하여 획득되고, 복수의 컴포넌트는 적어도 2개의 컴포넌트의 가용 저장 용량들 중 적어도 일부와 일대일 대응관계에 있다.
제15 양태에 따르면, 차량 소프트웨어 업그레이드 방법이 제공된다. 방법은: 차량 내의 저장 자원 피드백 정보를 네트워크 측 디바이스에 전송하는 단계- 저장 자원 피드백 정보는 차량 내의 적어도 2개의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -; 및 네트워크 측 디바이스로부터, 네트워크 측 디바이스에 의해 생성된 업그레이드 패키지 블록 정보를 수신하는 단계를 포함하고, 업그레이드 패키지 블록 정보는 차량 소프트웨어 업그레이드를 위한 복수의 업그레이드 패키지 블록과 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부 사이의 일대일 대응관계를 적어도 포함한다.
제16 양태에 따르면, 차량 소프트웨어 업그레이드 장치가 제공된다. 장치는: 차량 내의 저장 자원 피드백 정보를 네트워크 측 디바이스에 전송하도록 구성되는 전송 유닛- 저장 자원 피드백 정보는 차량 내의 적어도 2개의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -; 및 네트워크 측 디바이스로부터, 네트워크 측 디바이스에 의해 생성된 업그레이드 패키지 블록 정보를 수신하도록 구성되는 수신 유닛을 포함하고, 업그레이드 패키지 블록 정보는 차량 소프트웨어 업그레이드를 위한 복수의 업그레이드 패키지 블록과 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부 사이의 일대일 대응관계를 적어도 포함한다.
제17 양태에 따르면, 차량 소프트웨어 업그레이드 방법이 제공된다. 방법은: 차량으로부터 저장 자원 피드백 정보를 수신하는 단계- 저장 자원 피드백 정보는 차량 내에 있고 복수의 업그레이드 패키지 블록을 저장하기 위해 사용될 수 있는 복수의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -; 및 업그레이드 패키지 블록 정보를 단말 디바이스에 전송하는 단계를 포함하고, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록과 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부 사이의 일대일 대응관계를 적어도 포함한다.
제18 양태에 따르면, 차량 소프트웨어 업그레이드 장치가 제공된다. 장치는: 차량으로부터 저장 자원 피드백 정보를 수신하도록 구성되는 수신 유닛- 저장 자원 피드백 정보는 차량 내에 있고 복수의 업그레이드 패키지 블록을 저장하기 위해 사용될 수 있는 복수의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -; 및 업그레이드 패키지 블록 정보를 단말 디바이스에 전송하도록 구성되는 전송 유닛을 포함하고, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록과 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부 사이의 일대일 대응관계를 적어도 포함한다.
도 1은 종래 기술에서 충분한 저장 자원들이 있을 때 사용되는 소프트웨어 업그레이드 방법의 흐름도이다.
도 2는 종래 기술에서 불충분한 저장 자원들이 있을 때 사용되는 소프트웨어 업그레이드 방법의 흐름도이다.
도 3은 본 발명의 전형적인 애플리케이션 시나리오의 개략도이다.
도 4는 본 발명의 실시예에 따른 단말 측에서의 소프트웨어 업그레이드 장치의 제1 존재 형태의 개략도이다.
도 5는 본 발명의 실시예에 따른 단말 측에서의 소프트웨어 업그레이드 장치의 제2 및 제3 존재 형태들의 개략도이다.
도 6은 본 발명의 실시예에 따른 단말 측에서의 소프트웨어 업그레이드 장치의 제4 존재 형태의 개략도이다.
도 7은 본 발명의 실시예에 따른 네트워크 측에서의 소프트웨어 업그레이드 장치의 제1 동작 모드의 개략도이다.
도 8은 본 발명의 실시예에 따른 네트워크 측에서의 소프트웨어 업그레이드 장치의 제2 동작 모드의 개략도이다.
도 9는 본 발명의 실시예에 따른 네트워크 측에서의 소프트웨어 업그레이드 장치의 제3 동작 모드의 개략도이다.
도 10은 본 발명의 실시예에 따른 네트워크 측에서의 소프트웨어 업그레이드 장치의 제4 동작 모드의 개략도이다.
도 11은 본 발명의 실시예에 따른 네트워크 측에서의 소프트웨어 업그레이드 장치의 제5 동작 모드의 개략도이다.
도 12a 및 도 12b는 본 발명의 실시예 1에 따라 단말 측에서 수행되는 소프트웨어 업그레이드 방법의 흐름도이다.
도 13a 및 도 13b는 본 발명의 실시예 2에 따른 네트워크 측에서 수행되는 소프트웨어 업그레이드 방법의 흐름도이다.
도 14는 본 발명의 실시예 3에 따른 소프트웨어 업그레이드 방법에서 단말에서의 저장 자원을 조회(query)하고 보고하는 위상(phase)의 흐름도이다.
도 15는 본 발명의 실시예 3에 따른 소프트웨어 업그레이드 방법에서 소프트웨어 업그레이드 패키지에 대해 블록 분할을 수행하는 위상의 흐름도이다.
도 16은 본 발명의 실시예 3에 따른 소프트웨어 업그레이드 방법에서 업그레이드 패키지 블록 정보 및 지시 정보를 전송하는 위상의 제1 흐름도이다.
도 17은 본 발명의 실시예 3에 따른 소프트웨어 업그레이드 방법에서 업그레이드 패키지 블록 정보 및 지시 정보를 전송하는 위상의 제2 흐름도이다.
도 18은 본 발명의 실시예 3에 따른 소프트웨어 업그레이드 방법에서 업그레이드 패키지 블록 정보 및 지시 정보를 전송하는 위상의 제3 흐름도이다.
도 19는 본 발명의 실시예 3에 따른 소프트웨어 업그레이드 방법에서 업그레이드 패키지 블록 정보 및 지시 정보를 전송하는 위상의 제4 흐름도이다.
도 20은 본 발명의 실시예 4 및 실시예 5에 따른 소프트웨어 업그레이드 장치의 구조의 블록도이다.
도 21은 본 발명의 실시예 6에 따른 소프트웨어 업그레이드 시스템의 구조의 블록도이다.
도 22는 본 발명의 실시예 7 및 실시예 8에 따른 소프트웨어 업그레이드 장치의 구조의 블록도이다.
도 23은 본 발명의 실시예 7에서 제공되는 단말 측에서의 소프트웨어 업그레이드 장치의 T-박스 상에서의 구현의 개략도이다.
도 24는 본 발명의 실시예 7에서 제공되는 단말 측에서의 소프트웨어 업그레이드 장치의 인간-기계 상호작용 제어기 상에서의 구현의 개략도이다.
본 발명의 실시예들의 목적들, 기술적 해결책들, 및 이점들을 보다 명확하게 하기 위해, 이하에서는 본 발명의 실시예들에서의 첨부 도면들을 참조하여 본 발명의 실시예들에서의 기술적 해결책들을 명확하고 완전하게 설명한다. 설명된 실시예들은 본 발명의 실시예들의 전부가 아니라 일부라는 것이 명백하다. 창의적인 노력 없이 본 발명의 실시예들에 기초하여 본 기술분야의 통상의 기술자에 의해 획득되는 모든 다른 실시예들은 본 발명의 보호 범위 내에 속할 것이다.
본 발명의 실시예들은 (지능형 접속 차량, 로봇, 또는 스마트 가정용 디바이스를 포함하지만 이에 제한되지 않는) 단말 내의 복수의 컴포넌트를 업그레이드하는 애플리케이션 시나리오에 적용될 수 있다. 도 3은 본 발명의 전형적인 애플리케이션 시나리오의 개략도이다. 지능형 접속 차량은 차량 소프트웨어 업그레이드와 관련된 메시지 및 데이터를 업로드 또는 다운로드하기 위해 무선 통신 채널을 통해 OTA 클라우드에 접속된다. 무선 통신 채널은 2G(2세대 모바일 통신 기술), 3G(3세대 모바일 통신 기술), 4G(4세대 모바일 통신 기술), 5G(5세대 모바일 통신 기술), Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide interoperability for microwave access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광학 송신, 위성 통신, 또는 적외선 통신의 형태인 무선 통신 채널을 포함하지만, 이들로 제한되지는 않는다. 지능형 접속 차량 내의 컴포넌트들은 중앙 게이트웨이, T-박스(Telematics BOX, 차량 인터넷에서의 차량 통신 단말), 인간-기계 상호작용(HMI, Human-Machine Interaction) 제어기, 모바일 데이터 센터(MDC, Mobile Data Controller), 첨단 운전자 보조 시스템(ADAS, Advanced Driving Assistant System), 복수의 전자 제어 유닛(ECU, Electronic Control Unit), 및 다른 컴포넌트를 포함한다.
본 발명의 실시예들에서 제공되는 단말 측에서의 소프트웨어 업그레이드 장치의 4개의 전형적인 존재 형태(실제 경우는 4개의 전형적인 존재 형태로 제한되지 않음)를 설명하기 위해 지능형 접속 차량의 애플리케이션 시나리오가 아래의 예로서 사용되며, 다음의 형태들을 포함한다:
제1 형태에서, 소프트웨어 업그레이드 장치는 독립적 컴포넌트(도 4에서의 소프트웨어 업그레이드 장치(401)를 참조함)로서 지능형 접속 차량에서 존재할 수도 있고, 차량-간 네트워크 통신 기능 및 차량-내 네트워크 통신 기능 둘 다를 갖고, 시그널링 또는 데이터를 네트워크 측 디바이스와 교환하고, 차량에서의 또 다른 컴포넌트와 조정하여 업그레이드 소프트웨어를 저장, 배포, 설치, 또는 활성화하도록 구성된다. 또한, 소프트웨어 업그레이드 장치(401)는 또한 차량 내에 있고 업그레이드될 필요가 있는 컴포넌트일 수도 있고, 네트워크 측 디바이스로부터 소프트웨어 업그레이드 패키지를 수신하고 소프트웨어 업그레이드 패키지를 저장한다.
제2 형태 및 제3 형태에서, 소프트웨어 업그레이드 장치는 지능형 접속 차량에서의 종래의 컴포넌트(예를 들어, 도 5에서의 T-박스(501)) 또는 종래의 컴포넌트에서의 서브-장치일 수 있고, 차량-간 네트워크 통신 기능 및 차량-내 네트워크 통신 기능 둘 다를 가질 수 있고, 네트워크 측 디바이스와 시그널링 또는 데이터를 교환하고 차량에서의 또 다른 컴포넌트와 조정하여 업그레이드 소프트웨어를 저장, 배포, 설치, 또는 활성화하도록 구성된다. 또한, 이러한 경우에 T-박스(501)는 또한 차량 내에 있고 업그레이드될 필요가 있는 컴포넌트일 수 있고, 네트워크 측 디바이스로부터 소프트웨어 업그레이드 패키지를 수신하고 소프트웨어 업그레이드 패키지를 저장한다.
제4 형태에서, 소프트웨어 업그레이드 장치는 지능형 접속 차량(예를 들어, 도 6에서의 지능형 접속 차량(601))일 수 있고, 지능형 접속 차량 내의 복수의 컴포넌트(예를 들어, 도 6에서의 T-박스(602) 및 MDC(603))와 협력하여, 단말 측에서 수행되고 본 발명의 실시예들에서 제공되는 소프트웨어 업그레이드 방법을 완성한다. 예를 들어, MDC(603)는 차량-간 네트워크 통신 기능을 갖지 않고, T-박스(602)를 사용하여 네트워크 측 디바이스와 시그널링 또는 데이터를 교환하며, MDC(603)의 차량-내 네트워크 통신 기능을 사용하여, 차량 내의 또 다른 컴포넌트와 조정하여, 업그레이드 소프트웨어를 저장, 배포, 설치 또는 활성화한다.
본 발명의 실시예들에서 제공되는 네트워크 측에서의 소프트웨어 업그레이드 장치의 5개의 전형적인 동작 모드(실제 경우는 5개의 전형적인 동작 모드로 제한되지 않음)를 설명하기 위해 지능형 접속 차량의 애플리케이션 시나리오가 아래의 예로서 사용되며, 다음의 모드들을 포함한다:
제1 모드(도 7 참조)에서, 지능형 접속 차량(704) 내의 컴포넌트의 소프트웨어 업그레이드를 위해 사용되는 모든 업그레이드 패키지 블록은 중앙집중 방식으로 네트워크 측의 서버(701)에 저장되고, 서버(701)는 본 발명의 실시예들에서 제공되는 네트워크 측에서의 소프트웨어 업그레이드 장치이다. 서버(701)는 지능형 접속 차량(704)으로부터 저장 자원 피드백 정보를 수신하고, 업그레이드 패키지 블록 정보 및 복수의 업그레이드 패키지 블록 각각을 지능형 접속 차량(704)에 전송한다.
제2 모드(도 8 참조)에서, 서버(801)는 본 발명의 실시예들에서 제공된 네트워크 측에서의 소프트웨어 업그레이드 장치이고, 지능형 접속 차량(804) 내의 컴포넌트의 소프트웨어 업그레이드를 위해 사용되는 복수의 업그레이드 패키지 블록은 분산 방식으로 네트워크 측에서의 복수의 서버(예를 들어, 서버(802) 및 서버(803)를 포함하고, 서버(801)를 포함하거나 포함하지 않을 수 있음)에 저장된다. 서버(801)는 지능형 접속 차량(804)으로부터 저장 자원 피드백 정보를 수신하고, 서버(802) 및 서버(803) 각각으로부터 적어도 하나의 업그레이드 패키지 블록을 수신하고, 업그레이드 패키지 블록 정보 및 복수의 업그레이드 패키지 블록 각각을 지능형 접속 차량(804)에 전송한다.
제3 모드(도 9 참조)에서, 서버(901)는 본 발명의 실시예들에서 제공된 네트워크 측에서의 소프트웨어 업그레이드 장치이고, 지능형 접속 차량(904) 내의 컴포넌트의 소프트웨어 업그레이드를 위해 사용되는 복수의 업그레이드 패키지 블록은 분산 방식으로 네트워크 측에서의 복수의 서버(예를 들어, 서버(902) 및 서버(903)를 포함하지만, 서버(901)를 포함하지 않음)에 저장된다. 서버(901)는 지능형 접속 차량(904)으로부터 저장 자원 피드백 정보를 수신하고, 업그레이드 패키지 블록 정보를 지능형 접속 차량(804)에 전송한다. 서버(901)에 의해 전송된 업그레이드 패키지 배포 명령어를 수신한 후에, 서버(902) 및 서버(903)는 각각 서버(902)에 저장된 적어도 하나의 업그레이드 패키지 블록 및 서버(903)에 저장된 적어도 하나의 업그레이드 패키지 블록을 지능형 접속 차량(904)에 전송한다.
제4 모드(도 10 참조)에서, 서버(1001)는 본 발명의 실시예들에서 제공된 네트워크 측에서의 소프트웨어 업그레이드 장치이고, 지능형 접속 차량(1004) 내의 컴포넌트의 소프트웨어 업그레이드를 위해 사용되는 복수의 업그레이드 패키지 블록은 분산 방식으로 네트워크 측에서의 복수의 서버(예를 들어, 서버(1002), 서버(1003) 및 서버(1001)를 포함함)에 저장된다. 서버(1001)는 지능형 접속 차량(1004)으로부터 저장 자원 피드백 정보를 수신하고, 업그레이드 패키지 블록 정보를 지능형 접속 차량(1004)에 전송한다. 서버(1001)에 의해 전송된 업그레이드 패키지 배포 명령어를 수신한 후에, 서버(1002) 및 서버(1003)는 각각 서버(1002)에 저장된 적어도 하나의 업그레이드 패키지 블록 및 서버(1003)에 저장된 적어도 하나의 업그레이드 패키지 블록을 지능형 접속 차량(1004)에 전송한다. 서버(1001)는 또한 서버(1001)에 저장된 적어도 하나의 업그레이드 패키지 블록을 지능형 접속 차량(1004)에 전송한다.
제5 모드(도 11 참조)에서, 서버(1101)는 본 발명의 실시예들에서 제공된 네트워크 측에서의 소프트웨어 업그레이드 장치이고, 지능형 접속 차량(1104) 내의 컴포넌트의 소프트웨어 업그레이드를 위해 사용되는 복수의 업그레이드 패키지 블록은 분산 방식으로 네트워크 측에서의 복수의 서버(예를 들어, 서버(1102) 및 서버(1103)를 포함하고, 서버(1101)를 포함할 수 있거나 포함하지 않을 수 있음)에 저장된다. 서버(1101)는 지능형 접속 차량(1104)으로부터 저장 자원 피드백 정보를 수신하고, 업그레이드 패키지 블록 정보를 지능형 접속 차량(1104)에 전송한다. 서버(1101)에 의해 전송된 업그레이드 패키지 배포 명령어를 수신한 후에, 서버(1102)는 서버(1102)에 저장된 적어도 하나의 업그레이드 패키지 블록을 지능형 접속 차량(1104)에 전송한다. 서버(1103)는 서버(1103)에 저장된 적어도 하나의 업그레이드 패키지 블록을 서버(1101)에 전송한다. 서버(1101)는 적어도 하나의 업그레이드 패키지 블록(서버(1103)에 저장된 적어도 하나의 업그레이드 패키지 블록을 포함함)을 지능형 접속 차량(1104)에 전송한다.
본 발명의 실시예 1은 단말 측에서 수행되는 소프트웨어 업그레이드 방법을 제공한다. 방법은 단말 측에서의 소프트웨어 업그레이드 장치(예를 들어, 위에 설명된 소프트웨어 업그레이드 장치(401), T-박스(501), T-박스(501) 내의 서브-장치, 또는 지능형 접속 차량(601))에 의해 수행된다. 도 12a 및 도 12b에 도시된 바와 같이, 방법은 다음의 단계들을 포함한다.
단계 1201: 단말 내의 적어도 2개의 컴포넌트의 저장 자원 정보를 수신- 저장 자원 정보는 적어도 2개의 컴포넌트 각각의 가용 저장 용량을 적어도 포함하고, 적어도 2개의 컴포넌트는 적어도 2개의 가용 저장 용량에 대응함 -.
선택적으로, 본 발명의 실시예 1은 단계 1202를 포함한다: 적어도 2개의 컴포넌트 각각의 가용 저장 용량에 기초하여, 단말에서의 가용 저장 자원이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족한다고 결정.
단계 1203: 저장 자원 정보에 기초하여 저장 자원 피드백 정보를 생성- 저장 자원 피드백 정보는 각각의 컴포넌트의 가용 저장 용량을 적어도 포함함 -.
단계 1204: 저장 자원 피드백 정보를 네트워크 측 디바이스에 전송.
단계 1205: 네트워크 측 디바이스에 의해 생성되는 업그레이드 패키지 블록 정보를 수신- 업그레이드 패키지 블록 정보는 단말 소프트웨어 업그레이드를 위한 복수의 업그레이드 패키지 블록과 복수의 업그레이드 패키지 블록을 저장하기 위한 복수의 컴포넌트 사이의 일대일 대응관계를 적어도 포함하고, 복수의 컴포넌트는 적어도 2개의 컴포넌트 중 일부 또는 전부임 -.
단계 1206: 업그레이드 패키지 블록 정보에 기초하여, 복수의 컴포넌트를 지시하여 복수의 업그레이드 패키지 블록을 획득하기 위해 사용되는 적어도 하나의 지시 정보를 생성- 복수의 컴포넌트는 복수의 가용 저장 용량과 일대일 대응관계에 있음 -.
단계 1207: 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송.
선택적으로, 본 발명의 실시예 1은 단계 1208을 포함한다: 다운로드 명령어를 복수의 컴포넌트에 전송- 다운로드 명령어는 복수의 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용됨 -.
선택적으로, 본 발명의 실시예 1은 단계 1209를 포함한다: 복수의 컴포넌트에 업그레이드 패키지 배포 명령어를 전송- 업그레이드 패키지 배포 명령어는 복수의 업그레이드 패키지 블록 중 하나 이상을 복수의 컴포넌트 이외의 단말 내의 적어도 하나의 컴포넌트에 전송하도록 복수의 컴포넌트에게 지시하는 데 사용되고, 하나 이상의 업그레이드 패키지 블록은 복수의 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록을 파싱함으로써 복수의 컴포넌트에 의해 획득됨 -.
선택적으로, 본 발명의 실시예 1은 단계 1210를 포함한다: 설치 활성화 명령어를 복수의 컴포넌트에 전송- 설치 활성화 명령어는 복수의 컴포넌트에서 적어도 하나의 업그레이드 소프트웨어를 설치 및 활성화하도록 지시하는 데 사용되고, 적어도 하나의 업그레이드 소프트웨어는 복수의 컴포넌트와 일대일 대응관계에 있는 복수의 업그레이드 패키지 블록을 파싱함으로써 복수의 컴포넌트에 의해 획득된다.
본 발명의 실시예 2는 네트워크 측에서 수행되는 소프트웨어 업그레이드 방법을 제공한다. 방법은 네트워크 측에서의 소프트웨어 업그레이드 장치(예를 들어, 위에서 설명된 소프트웨어 업그레이드 장치(701, 801, 901, 1001, 또는 1101))에 의해 수행된다. 도 13a 및 도 13b에 도시된 바와 같이, 방법은 다음의 단계들을 포함한다.
선택적으로, 본 발명의 실시예 2는 단계 1301을 포함한다: 소프트웨어 업그레이드 시작 메시지를 단말 디바이스에 전송.
단계 1302: 단말 디바이스로부터 저장 자원 피드백 정보를 수신- 저장 자원 피드백 정보는 단말 디바이스에 있고 복수의 업그레이드 패키지 블록을 저장하기 위해 사용될 수 있는 복수의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -.
단계 1303: 저장 자원 피드백 정보에 기초하여, 단말 디바이스에서의 가용 저장 자원이 소프트웨어 업그레이드를 위한 저장 요건을 충족한다고 결정.
단계 1304: 저장 자원 피드백 정보에 기초하여 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할- 복수의 업그레이드 패키지 블록은 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부와 일대일 대응관계에 있음 -.
단계 1305: 업그레이드 패키지 블록 정보를 생성- 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록과 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부 사이의 대응관계를 적어도 포함함 -.
단계 1306: 업그레이드 패키지 블록 정보를 단말 디바이스에 전송.
선택적으로, 본 발명의 실시예 2는 단계 1307을 포함한다: 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치로부터 복수의 업그레이드 패키지 블록 중 적어도 하나를 수신.
선택적으로, 본 발명의 실시예 2는 단계 1308을 포함한다: 복수의 업그레이드 패키지 블록 중 적어도 하나를 단말 디바이스에 전송.
선택적으로, 본 발명의 실시예 2는 단계 1309를 포함한다: 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치에 업그레이드 패키지 배포 명령어를 전송- 업그레이드 패키지 배포 명령어는 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치에게 복수의 업그레이드 패키지 블록 중 적어도 하나를 단말 디바이스에 전송하도록 지시하는 데 사용됨 -.
본 발명의 실시예 1 및 실시예 2에서 제공되는 소프트웨어 업그레이드 방법들에 있어서, 단말 내의 복수의 컴포넌트에서의 저장 자원들이 충분히 활용된다. 이러한 방식으로, 다운로딩 성공률이 증가되고, 방법들은 비교적 복잡한 단말(특히 지능형 접속 차량)의 소프트웨어 업그레이드를 위한 요건에 더 적합하다. 또한, 복수의 업그레이드 패키지 블록은 단말 내의 복수의 컴포넌트의 외부 통신 자원들을 사용하여 다운로드될 수 있다. 이러한 방식으로, 단말의 통신 자원들이 충분히 활용되고, 다운로드 속도가 증가되며, 다운로딩 신뢰성이 개선된다. 더욱이, 복수의 업그레이드 패키지 블록은 복수의 컴포넌트에 의해 독립적으로 검증될 수 있어, 단말에서의 컴퓨팅 자원이 충분히 활용되고; 컴포넌트의 업그레이드가 또 다른 컴포넌트의 불완전한 업그레이드 소프트웨어 블록 데이터로 인해 영향을 받는 경우가 회피된다.
본 발명의 실시예 1 및 실시예 2는 각각 네트워크 측에서 수행되는 소프트웨어 업그레이드 방법들 및 단말 측에서 수행되는 소프트웨어 업그레이드 방법에 관한 것이다. 본 발명의 실시예 3은 양측: 네트워크 측 및 단말 측 사이에서 수행되는 소프트웨어 업그레이드 방법을 제공하고, 소프트웨어 업그레이드 방법은 네트워크 측 및 단말 측에서 각각 수행되고 본 발명의 실시예 1 및 실시예 2에서 제공되는 2개의 소프트웨어 업그레이드 방법의 조합에 기초하여 구현될 수 있다. 단말에서의 저장 자원을 조회하고 보고하는 위상, 소프트웨어 업그레이드 패키지에 대해 블록 분할을 수행하는 위상, 및 업그레이드 패키지 블록 정보 및 지시 정보를 전송하는 위상에서 비교적 많은 수량의 병렬 해결책들이 존재하기 때문에, 이하에서는 도 14 내지 도 19를 사용하여 전술한 여러 위상을 상세히 설명한다. 본 발명의 실시예 1, 실시예 2, 및 실시예 3에 대한 상호-참조가 이루어질 수 있다는 점에 유의해야 한다. 도 14 내지 도 19에서의 단말 측 또는 네트워크 측에서의 단일-측 동작 단계들은 본 발명의 실시예 1 및 실시예 2에서의 단일-측 동작 방법들에 또한 적용될 수 있다.
도 14는 본 발명의 실시예 3에서 단말에서의 저장 자원을 조회하고 보고하는 위상의 흐름도이다. 위상은 다음의 단계들을 포함한다.
단계 1401: 네트워크 측에서의 소프트웨어 업그레이드 장치는 단말 소프트웨어 업그레이드를 시작하기 위한 메시지를 단말 소프트웨어 업그레이드 장치에 전송한다.
단계 1402: 단말 소프트웨어 업그레이드 장치는 그 자신의 가용 저장 자원(t1로서 표기됨)을 체크한다.
단계 1403: 단말 소프트웨어 업그레이드 장치는 단말 컴포넌트 1 및 단말 컴포넌트 2에 대한 저장 자원 조회 요청을 개시한다.
단계 1404: 단말 컴포넌트 1 및 단말 컴포넌트 2는 그들 자신의 가용 저장 자원들을 체크한다.
단계 1405: 단말 컴포넌트 1 및 단말 컴포넌트 2는 그들 자신의 가용 저장 자원들(각각 t2 및 t3으로 표기됨)을 단말 소프트웨어 업그레이드 장치에 보고한다.
단계 1406: 단말 소프트웨어 업그레이드 장치는 단말에서의 가용 저장 자원들의 합계를 계산하는데, 즉, t1, t2, 및 t3의 합계를 계산하여, 단말에서의 가용 저장 자원들이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족하는지를 결정한다.
단말에서의 가용 저장 자원들이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족하는 경우, 다음의 단계들이 추가로 수행된다: 단계 1407a: 단말 소프트웨어 업그레이드 장치는 저장 자원 피드백 정보를 생성한다. 단계 1408a: 단말 소프트웨어 업그레이드 장치는 저장 자원 피드백 정보를 네트워크 측에서의 소프트웨어 업그레이드 장치에 전송한다.
단말에서의 가용 저장 자원들이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족하지 않는 경우, 다음의 단계가 추가로 수행된다: 단계 1407b: 단말 소프트웨어 업그레이드 장치는 네트워크 측에서의 소프트웨어 업그레이드 장치에 에러를 반환하고, 단말 소프트웨어 업그레이드를 종료한다.
단말에서의 가용 저장 자원들이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족하는지는 단말 디바이스에 의해 또는 네트워크 측 디바이스에 의해 결정될 수 있다는 점에 유의해야 한다.
소프트웨어 업그레이드 패키지에 대해 블록 분할을 수행하는 위상에서, 단말 소프트웨어 업그레이드 장치에 의해 전송된 저장 자원 피드백 정보를 수신한 후에, 네트워크 측에서의 소프트웨어 업그레이드 장치는 복수의 단말 소프트웨어 업그레이드 패키지를 해시 체크 값들을 갖는 복수의 업그레이드 패키지 블록으로 분할한다. 블록 분할 절차는 도 15에 도시되어 있고, 다음의 단계들을 포함한다.
단계 1501: I1, ..., 및 IN으로 각각 표기되는 N개의 빈 세트(empty set)를 구성하고, N개의 변수 s1, ..., 및 sN을 사용하여 각각의 세트에서 최대 용량 값을 마킹- si=ti-C이고, ti는 단말의 제i 컴포넌트의 가용 저장 자원이고, C는 해시 체크 값에 의해 점유된 저장 공간임 -.
단계 1502: M개의 소프트웨어 업그레이드 패키지를 크기들의 내림차순으로 배열하여 패키지1, 패키지2, ..., 및 패키지M을 획득- 각각의 소프트웨어 업그레이드 패키지는 하나의 단말 컴포넌트의 소프트웨어 업그레이드를 위해 사용되는 데이터를 포함하고 저장 공간 Pi를 점유함 -.
단계 1503: 가장 큰 크기를 갖는 소프트웨어 업그레이드 패키지(즉, 패키지1)로부터 시작하여 최대 잔여 가용 용량을 갖는 세트 Iu에 패키지i를 배치- 1≤u≤N이고, su=su-Pi로 함 -.
이러한 경우에 su<0인 경우, 이는 블록 분할이 실패함을 지시하고, 다음의 단계가 추가로 수행된다: 단계 1505: 블록 분할 실패 정보를 반환하고, 다운로드를 종료한다.
이러한 경우에 su≥0인 경우, 패키지2 내지 패키지M이 전부 세트에 성공적으로 추가될 수 있을 때까지, 패키지2 내지 패키지M에 대해 단계 1503이 순차적으로 수행되고, 다음의 단계가 추가로 수행된다: 단계 1504: 각각의 비어 있지 않은 세트 및 대응하는 해시 값을 패키징하여, J1, ..., 및 JK로 표기되는, 업그레이드 패키지 블록들을 획득. K는 비어 있지 않은 세트들의 수량이고, Ji=Iu||Hu, 1≤i≤K이고, Hu는 Iu에 대응하는 해시 체크 값이고, 계산 방법은 Hu=Hash(Iu||keyu)이다. 네트워크 측에서의 소프트웨어 업그레이드 장치는 단말 내의 복수의 컴포넌트(Idu)에 대응하는 디바이스 키들(keyu)을 저장하고, 디바이스 키들은 컴포넌트들에 국부적으로 저장된 디바이스 키들과 동일하다.
단계 1506: 네트워크 측에서의 소프트웨어 업그레이드 장치는 블록 정보 패키지 J0을 생성한다. 블록 정보 패키지 J0의 내용은 블록 수량 K, 각각의 블록 Ji의 다운로드 주소 Addressi, 대응하는 다운로드 컴포넌트 Idu, 및 해시 체크 값 H0을 포함한다.
소프트웨어 업그레이드 패키지에 대해 블록 분할을 수행하는 위상에서, 단말의 단일 업그레이드될 컴포넌트에 사용되는 소프트웨어 업그레이드 패키지가 최소 유닛으로서 사용되고, 최대 공간을 점유하는 소프트웨어 업그레이드 패키지가 바람직하게 고려되고, 최대 잔여 공간을 갖는 블록에 할당된다. 블록 분할은 반복을 통해 완료되고, 그 다음에 후속 데이터 무결성 검증을 준비하기 위해 각각의 블록 데이터에 대해 해시 체크 값이 계산된다.
이하에서는 업그레이드 패키지 블록 정보 및 지시 정보를 전송하는 위상의 실행 절차를 설명한다. 4개의 병렬 기술적 해결책이 있다.
제1 해결책에 대해서는, 도 16을 참조한다. 해결책은 다음의 단계들을 포함한다.
단계 1601: 단말 소프트웨어 업그레이드 장치는 네트워크 측에서의 소프트웨어 업그레이드 장치로부터 업그레이드 패키지 블록 정보를 수신한다.
단계 1602: 단말 소프트웨어 업그레이드 장치는, 단말 컴포넌트 1에 대해, 단말 컴포넌트 1에 대응하는 하나의 업그레이드 패키지 블록을 획득하도록 단말 컴포넌트 1에게 지시하는 데 사용되는 제1 지시 정보를 생성하고, 단말 컴포넌트 2에 대해, 단말 컴포넌트 2에 대응하는 하나의 업그레이드 패키지 블록을 획득하도록 단말 컴포넌트 2에게 지시하는 데 사용되는 제2 지시 정보를 생성한다.
단계 1603: 단말 소프트웨어 업그레이드 장치는 제1 지시 정보 및 제2 지시 정보를 단말 컴포넌트 1 및 단말 컴포넌트 2에 각각 전송한다.
제2 해결책에 대해서는, 도 17을 참조한다. 해결책은 다음의 단계들을 포함한다.
단계 1701: 단말 소프트웨어 업그레이드 장치는 네트워크 측에서의 소프트웨어 업그레이드 장치로부터 업그레이드 패키지 블록 정보를 수신한다.
단계 1702: 단말 소프트웨어 업그레이드 장치는, 단말 컴포넌트 1 및 단말 컴포넌트 2에 대해, 단말 컴포넌트 1에 대응하는 업그레이드 패키지 블록을 획득하도록 단말 컴포넌트 1에게 지시하고 단말 컴포넌트 2에 대응하는 업그레이드 패키지 블록을 획득하도록 단말 컴포넌트 2에게 지시하는 데 사용되는 하나의 지시 정보를 생성한다.
단계 1703: 단말 소프트웨어 업그레이드 장치는 하나의 지시 정보를 단말 컴포넌트 1 및 단말 컴포넌트 2 둘 다에 전송한다. 선택적으로, 단말 소프트웨어 업그레이드 장치는 하나의 지시 정보를 단말 컴포넌트 1 및 단말 컴포넌트 2에 동시에 또는 순차적으로 전송할 수 있다.
제3 해결책에 대해서는, 도 18을 참조한다. 해결책은 다음의 단계들을 포함한다.
단계 1801: 단말 소프트웨어 업그레이드 장치는 네트워크 측에서의 소프트웨어 업그레이드 장치로부터 업그레이드 패키지 블록 정보를 수신한다.
단계 1802: 단말 소프트웨어 업그레이드 장치는, 단말 컴포넌트 1 및 단말 컴포넌트 2에 대해, 단말 컴포넌트 1에 대응하는 업그레이드 패키지 블록을 획득하도록 단말 컴포넌트 1에게 지시하고 단말 컴포넌트 2에 대응하는 업그레이드 패키지 블록을 획득하도록 단말 컴포넌트 2에게 지시하는 데 사용되는 제1 지시 정보를 생성한다.
단계 1803: 단말 소프트웨어 업그레이드 장치는 제1 지시 정보를 단말 컴포넌트 1에 전송한다.
단계 1804: 단말 컴포넌트 1은 제1 지시 정보를 단말 컴포넌트 2에 전달한다.
제4 해결책에 대해서는, 도 19를 참조한다. 해결책은 다음의 단계들을 포함한다:
단계 1901: 단말 소프트웨어 업그레이드 장치는 네트워크 측에서의 소프트웨어 업그레이드 장치로부터 업그레이드 패키지 블록 정보를 수신한다.
단계 1902: 단말 소프트웨어 업그레이드 장치는, 단말 컴포넌트 1 및 단말 컴포넌트 2에 대해, 단말 컴포넌트 1에 대응하는 업그레이드 패키지 블록을 획득하도록 단말 컴포넌트 1에게 지시하고 단말 컴포넌트 2에 대응하는 업그레이드 패키지 블록을 획득하도록 단말 컴포넌트 2에게 지시하는 데 사용되는 제1 지시 정보를 생성한다.
단계 1903: 단말 소프트웨어 업그레이드 장치는 제1 지시 정보를 단말 컴포넌트 1에 전송한다.
단계 1904: 단말 컴포넌트 1은 제1 지시 정보로부터, 단말 컴포넌트 1에 의한 업그레이드 패키지 블록의 획득에 관련된 정보를 삭제하고, 제1 지시 정보에서의 나머지 정보에 기초하여 제2 지시 정보를 생성한다.
단계 1905: 단말 컴포넌트 1은 제2 지시 정보를 단말 컴포넌트 2에 전송한다.
본 발명의 실시예 4 및 실시예 5는, 도 20에 도시된 바와 같이, 단말 측에서의 소프트웨어 업그레이드 장치 및 네트워크 측에서의 소프트웨어 업그레이드 장치를 각각 제공한다.
본 발명의 실시예 4에서 제공되는 단말 측에서의 소프트웨어 업그레이드 장치(20)는 다음을 포함한다:
단말 내의 적어도 2개의 컴포넌트의 저장 자원 정보 및 네트워크 측 디바이스에 의해 생성되는 업그레이드 패키지 블록 정보를 수신하도록 구성되는 수신 유닛(2001)- 저장 자원 정보는 적어도 2개의 컴포넌트 각각의 가용 저장 용량을 적어도 포함하고, 업그레이드 패키지 블록 정보는 단말 소프트웨어 업그레이드를 위한 복수의 업그레이드 패키지 블록과 복수의 업그레이드 패키지 블록을 저장하기 위한 복수의 컴포넌트 사이의 일대일 대응관계를 적어도 포함하고, 복수의 컴포넌트는 적어도 2개의 컴포넌트의 일부 또는 모든 컴포넌트임 -;
저장 자원 정보에 기초하여 저장 자원 피드백 정보를 생성하고, 업그레이드 패키지 블록 정보에 기초하여, 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용되는 적어도 하나의 지시 정보를 생성하도록 구성되는 처리 유닛(2002)- 복수의 컴포넌트는 복수의 가용 저장 용량과 일대일 대응관계에 있고; 저장 자원 피드백 정보는 적어도 2개의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -; 및
저장 자원 피드백 정보를 네트워크 측 디바이스에 전송하고, 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하도록 구성되는 전송 유닛(2003).
본 발명의 실시예 4에서 제공된 단말 측에서의 소프트웨어 업그레이드 장치(20)는 예를 들어, 소프트웨어 업그레이드 장치(401), T-박스(501), T-박스(501) 내의 서브-장치, 또는 지능형 접속 차량(601)이다.
본 발명의 실시예 5에서 제공된 네트워크 측에서의 소프트웨어 업그레이드 장치(20)는 다음을 포함한다:
단말 디바이스로부터 저장 자원 피드백 정보를 수신하도록 구성되는 수신 유닛(2001)- 저장 자원 피드백 정보는 단말 디바이스에 있고 복수의 업그레이드 패키지 블록을 저장하기 위해 사용될 수 있는 복수의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -;
저장 자원 피드백 정보에 기초하여 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하고, 업그레이드 패키지 블록 정보를 생성하도록 구성되는 처리 유닛(2002)- 복수의 업그레이드 패키지 블록은 복수의 컴포넌트 중 적어도 일부와 일대일 대응관계에 있고, 업그레이드 패키지 블록 정보는 복수의 업그레이드 패키지 블록과 적어도 일부 컴포넌트 사이에 대응관계를 적어도 포함함 -; 및
업그레이드 패키지 블록 정보를 단말 디바이스에 전송하도록 구성되는 전송 유닛(2003).
본 발명의 실시예 5에 의해 제공되는 네트워크 측에서의 소프트웨어 업그레이드 장치(20)는, 예를 들어, 전술한 소프트웨어 업그레이드 장치들(701, 801, 901, 1001, 또는 1101)이다.
실시예 4 및 실시예 5에서의 유닛들 중 하나 이상만이 소프트웨어, 하드웨어, 펌웨어, 또는 이들의 조합에 의해 구현될 수 있다. 소프트웨어 또는 펌웨어는 컴퓨터 프로그램 명령어들 또는 코드를 포함하지만 이들로 제한되지는 않으며, 하드웨어 프로세서에 의해 실행될 수 있다. 하드웨어는 중앙 처리 유닛(CPU, Central Processing Unit), 디지털 신호 프로세서(DSP, Digital Signal Processor), 필드 프로그램가능 게이트 어레이(FPGA, Field Programmable Gate Array), 또는 주문형 집적 회로(ASIC, Application-Specific Integrated Circuit)와 같은 다양한 집적 회로들을 포함하지만, 이들로 제한되지는 않는다.
선택적으로, 실시예 4 및 실시예 5에서의 수신 유닛들(2001)은 하나 이상의 수신 방식을 사용할 수 있다. 수신 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스, 또는 하드웨어 회로 보드 상의 케이블을 통한 파라미터 수신, 또는 소프트웨어 모듈로부터의 파라미터 획득, 또는 메모리로부터의 정보 판독을 포함하지만, 이들로 제한되지는 않는다.
선택적으로, 실시예 4 및 실시예 5에서의 수신 유닛(2001)은 복수의 수신 서브유닛을 포함하고, 복수의 수신 서브유닛 각각은 단말 내의 적어도 2개의 컴포넌트 중 적어도 하나의 저장 자원 정보를 수신하도록 구성된다. 선택적으로, 복수의 수신 서브유닛은 단말 내의 복수의 상이한 컴포넌트에 위치한다. 선택적으로, 복수의 수신 서브유닛은 적어도 하나의 수신 방식으로 저장 자원 정보를 수신한다. 수신 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스, 또는 하드웨어 회로 보드 상의 케이블을 통한 파라미터 수신, 또는 소프트웨어 모듈로부터의 파라미터 획득, 또는 메모리로부터의 정보 판독을 포함하지만, 이들로 제한되지는 않는다.
선택적으로, 실시예 4 및 실시예 5에서의 전송 유닛들(2003)은 하나 이상의 전송 방식을 사용할 수 있다. 전송 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스, 또는 하드웨어 회로 보드 상의 케이블을 통한 파라미터 전송, 또는 소프트웨어 모듈로의 파라미터 입력, 또는 메모리로의 정보 기입을 포함하지만, 이들로 제한되지는 않는다.
선택적으로, 실시예 4 및 실시예 5에서의 전송 유닛들(2003)은 복수의 전송 서브유닛을 포함하고, 복수의 전송 서브유닛 각각은 적어도 하나의 지시 정보를 복수의 컴포넌트에 전송하도록 구성된다. 선택적으로, 복수의 전송 서브유닛은 단말 내의 복수의 상이한 컴포넌트에 위치한다. 선택적으로, 복수의 전송 서브유닛은 적어도 하나의 전송 방식으로 저장 자원 정보를 전송한다. 전송 방식은 셀룰러 통신, Wi-Fi(Wireless Fidelity, 무선 근거리 통신망), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신, 송신 라인 통신, 하드웨어 인터페이스, 또는 하드웨어 회로 보드 상의 케이블을 통한 파라미터 전송, 또는 소프트웨어 모듈로의 파라미터 입력, 또는 메모리로의 정보 기입을 포함하지만, 이들로 제한되지는 않는다.
본 발명의 실시예 6은 소프트웨어 업그레이드 시스템을 제공한다. 도 21을 참조하면, 시스템은 네트워크 측 소프트웨어 업그레이드 장치(2101) 및 단말 소프트웨어 업그레이드 장치(2105)를 포함한다. 네트워크 측 소프트웨어 업그레이드 장치(2101)는 수신 유닛(2102), 처리 유닛(2103), 및 전송 유닛(2104)을 포함한다. 단말 소프트웨어 업그레이드 장치(2105)는 전송 유닛(2106), 처리 유닛(2107), 및 수신 유닛(2108)을 포함한다. 네트워크 측 소프트웨어 업그레이드 장치(2101) 및 단말 소프트웨어 업그레이드 장치(2105)는 각각 본 발명의 실시예 4 및 실시예 5를 참조하여 구현될 수 있다.
본 발명의 실시예 7은 단말 측 상의 또 다른 소프트웨어 업그레이드 장치를 제공한다. 도 22를 참조하면, 장치는 메모리(2201), 프로세서(2202), 및 송수신기(2203)를 포함한다. 메모리(2201)는 컴퓨터 프로그램 명령어들을 저장한다. 프로세서(2202)는 컴퓨터 프로그램 명령어들을 실행하여 실시예 1에서 설명된 단말 측에서 소프트웨어 업그레이드 방법을 실행한다. 송수신기(2203)는 저장 자원 정보 또는 업그레이드 패키지 블록 정보를 수신하도록 구성되거나, 저장 자원 피드백 정보, 적어도 하나의 지시 정보, 다운로드 명령어, 업그레이드 패키지 배포 명령어, 및 설치 활성화 명령어 중 적어도 하나를 전송하도록 구성된다.
본 발명의 실시예 7에서 제공된 단말 측에서의 소프트웨어 업그레이드 장치는, 예를 들어, 소프트웨어 업그레이드 장치(401), T-박스(501), T-박스(501) 내의 서브-장치, 또는 지능형 접속 차량(601)이다. 이하에서는 소프트웨어 업그레이드 장치가 T-박스(도 23 참조) 및 인간-기계 상호작용 제어기(도 24 참조) 상에 구현되는 예를 사용하여 지능형 단말 내의 특정 컴포넌트에 대한 본 발명의 실시예 7의 구현을 별도로 설명한다.
예를 들어, T-박스의 내부 컴포지션 구조는 도 23에 도시된 T-박스(23)의 구조이다. T-박스(23)는 GPS(Global Positioning System, 글로벌 포지셔닝 시스템) 안테나, 3G/4G 안테나, C-V2X(Cellular Vehicle-to-Everything, 셀룰러 차량-대-사물) 안테나, WLAN(Wireless Local Area Network, 무선 근거리 통신망) 안테나, 및 차량과 엑스트라넷 사이의 통신을 위해 사용되는 복수의 라디오 주파수 유닛을 포함한다. 시스템 온 칩(SOC, System-On-a-Chip)은 프로세서, 메모리, 시스템 레벨 칩 제어 논리 모듈, 복수의 인터페이스 제어 모듈, 및 복수의 상호접속 버스를 통합하고, T-박스(23)에 대한 제어, 산출, 또는 저장과 같은 기능을 제공하도록 구성된다. 프로세서의 구현 형태로서, 마이크로 제어 유닛은 또한 T-박스(23)에 대한 제어 또는 산출 기능을 제공할 수 있다. 모바일 통신 단말로서 셀룰러 통신 네트워크에 액세스할 때, 지능형 접속 차량은 T-박스(23) 내의 임베디드 SIM(Subscriber Identity Module, 사용자 아이덴티티 식별) 카드를 사용하여 아이덴티티를 식별한다. 임베디드 멀티미디어 카드는 T-박스(23)에 대한 저장 기능을 제공한다. 보안 하드웨어 모듈은 지능형 접속 차량이 엑스트라넷에 액세스하기 위한 보안 보호 기능을 제공한다. 전력 관리 유닛은 T-박스(23)에 대한 전원 관리를 제공한다. 또한, T-박스(23)는 복수의 버스(예를 들어, CAN 버스 및 이더넷 버스) 및 인터페이스들(예를 들어, 마이크로폰 인터페이스 및 스피커 인터페이스)을 통해 차량 내의 다른 컴포넌트와 추가로 상호작용한다.
실시예 7에서의 메모리(2201)는 도 23에서의 시스템 온 칩 또는 다른 내부 저장 유닛(예를 들어, 임베디드 멀티미디어 카드)에 통합된 메모리를 사용하여 구현될 수 있다. 프로세서(2202)는 도 23에서의 시스템 온 칩에 통합된 마이크로 제어 유닛 또는 프로세서를 사용하여 구현될 수 있다. 송수신기(2203)는 도 23에서의 라디오 주파수 유닛, GPS 안테나, 3G/4G 안테나, C-V2X 안테나, WLAN 안테나, CAN(Controller Area Network, 제어기 영역 네트워크) 버스, 이더넷 버스 또는 핀 커넥터를 사용하여 구현될 수 있다.
예를 들어, 인간-기계 상호작용 제어기의 내부 컴포지션 구조는 도 24에서의 인간-기계 상호작용 제어기(24)의 구조이고, 제어기는 차량과 엑스트라넷 사이의 통신을 위해 사용되는 Wi-Fi(Wireless Fidelity, 무선 근거리 통신망) 통신 모듈 및 블루투스 통신 모듈을 포함한다. 시스템 온 칩(SOC, System-On-a-Chip)은 프로세서, 메모리, 시스템 레벨 칩 제어 논리 모듈, 복수의 인터페이스 제어 모듈, 및 복수의 상호접속 버스를 통합하고, 인간-기계 상호작용 제어기(24)를 위한 제어, 산출, 또는 저장과 같은 기능을 제공한다. 프로세서의 구현 형태로서, 마이크로 제어 유닛은 또한 인간-기계 상호작용 제어기(24)에 대한 제어 또는 산출 기능을 제공할 수 있다. 멀티미디어 프로세서는 이미지, 오디오, 및 비디오와 같은 멀티미디어 정보를 위한 데이터 처리 기능을 제공한다. 인간-기계 상호작용 제어기(24)는 LVDS(Low-Voltage Differential Signal, 저전압 차동 신호) 인터페이스를 통해 다양한 카메라 센서들로부터 신호 입력을 획득하고, 아날로그 신호 인터페이스를 통해 마이크로폰으로부터 데이터 입력을 획득한다. 인간-기계 상호작용 제어기(24)는 USB (Universal Serial Bus, 범용 직렬 버스) 포트 또는 LVDS 인터페이스를 통해 USB 패널, 중앙 제어 패널, 제어 패널, 계기 패널, 및 윈드실드 헤드 장착형 디스플레이에 신호 출력을 제공한다. 또한, 인간-기계 상호작용 제어기(24)는 T-박스와 같은 차량내 컴포넌트와의 차량-내 네트워크 통신을 수행하기 위해 차량-내 네트워크 게이트웨이에 추가로 접속된다.
실시예 7에서의 메모리(2201)는 도 24에서의 시스템 온 칩 또는 또 다른 내부 저장 유닛(예를 들어, 임베디드 멀티미디어 카드)에 통합된 메모리를 사용하여 구현될 수 있다. 프로세서(2202)는 마이크로컨트롤러 또는 도 24에서의 시스템 온 칩에 통합된 프로세서를 사용하여 구현될 수 있다. 송수신기(2203)는 도 24에서의 Wi-Fi(Wireless Fidelity, 무선 근거리 통신망) 통신 모듈, 블루투스 통신 모듈, 또는 차량-내 네트워크 게이트웨이들 사이의 통신 버스를 사용하여 구현될 수 있다.
본 발명의 실시예 8은 네트워크 측에 또 다른 소프트웨어 업그레이드 장치를 제공한다. 도 22를 참조하면, 장치는 메모리(2201), 프로세서(2202), 및 송수신기(2203)를 포함한다. 메모리(2201)는 컴퓨터 프로그램 명령어들을 저장한다. 프로세서(2202)는 실시예 2에서 설명된 네트워크 측에서 소프트웨어 업그레이드 방법을 실행하기 위해 컴퓨터 프로그램 명령어들을 실행하고, 저장 자원 피드백 정보 또는 복수의 업그레이드 패키지 블록 중 적어도 하나를 수신하도록 구성되거나, 업그레이드 패키지 블록 정보, 소프트웨어 업그레이드 시작 메시지, 업그레이드 패키지 배포 명령어 및 적어도 하나의 업그레이드 패키지 블록 중 적어도 하나를 전송하도록 구성된다.
본 발명의 실시예 8에 의해 제공되는 네트워크 측에서의 소프트웨어 업그레이드 장치는 예를 들어, 전술한 소프트웨어 업그레이드 장치들(701, 801, 901, 1001, 또는 1101)이다.
본 발명의 실시예 7 및 실시예 8에서의 프로세서들은 다양한 CPU들, DSP들, 마이크로컨트롤러들, 마이크로프로세서들, 또는 인공 지능 프로세서들을 포함하지만, 이들로 제한되지는 않는다.
본 발명의 실시예 7 및 실시예 8에서의 송수신기들은 통신 인터페이스, 통신 모듈, 또는 통신 커넥터를 포함하지만 이들로 제한되지는 않는다. 송수신기의 통신 형태는 2G(2세대 모바일 통신 기술), 3G(3세대 모바일 통신 기술), 4G(4세대 모바일 통신 기술), 5G(5세대 모바일 통신 기술), 및 Wi-Fi(Wireless Fidelity, 무선 로컬 영역 네트워크), WiMAX(Worldwide Interoperability for Microwave Access, 마이크로파 액세스를 위한 전세계 상호운용성), Bluetooth(Bluetooth 통신 기술), ZigBee(ZigBee 통신 기술), 광 통신, 위성 통신, 적외선 통신 등을 포함하지만, 이들로 제한되지는 않는다.
본 기술분야의 통상의 기술자는 본 출원에서 제공되는 실시예들의 설명들이 상호 참조될 수 있다는 점을 명확하게 이해할 수 있다. 설명의 용이성 및 간결성을 위해, 예를 들어, 본 출원의 실시예들에서 제공되는 장치들 및 디바이스들 및 수행된 단계들의 기능들에 대해서는, 본 출원의 방법 실시예들에서의 관련 설명들을 참조한다. 다양한 방법 실시예들 사이에 그리고 다양한 장치 실시예들 사이에 또한 참조가 이루어질 수 있다.
본 기술분야의 통상의 기술자는 방법 실시예들의 단계들의 전부 또는 일부가 프로그램 명령어와 관련된 하드웨어를 사용하여 구현될 수 있다는 것을 이해할 수 있다. 프로그램은 컴퓨터 판독가능 저장 매체에 저장될 수 있다. 프로그램이 실행될 때, 방법 실시예들의 단계들의 일부 또는 전부가 수행된다. 전술한 저장 매체는 ROM, RAM, 자기 디스크, 또는 광 디스크와 같은, 프로그램 코드를 저장할 수 있는 다양한 매체를 포함한다.
전술한 실시예들의 전부 또는 일부는, 소프트웨어, 하드웨어, 펌웨어 또는 이들의 임의의 조합을 사용하는 것에 의해 구현될 수 있다. 실시예들을 구현하기 위해 소프트웨어가 사용될 때, 실시예들의 전부 또는 일부는 컴퓨터 프로그램 제품의 형태로 구현될 수 있다. 컴퓨터 프로그램 제품은 하나 이상의 컴퓨터 명령어를 포함한다. 컴퓨터 프로그램 명령어들이 컴퓨터 상에서 로딩되고 실행될 때, 본 발명의 실시예들에 따른 절차들 또는 기능들의 전부 또는 일부가 생성된다. 컴퓨터는, 범용 컴퓨터, 전용 컴퓨터, 컴퓨터 네트워크, 또는 다른 프로그램가능 장치일 수 있다. 컴퓨터 명령어들은 컴퓨터 판독가능 저장 매체에 저장될 수 있거나 또는 컴퓨터 판독가능 저장 매체로부터 또 다른 컴퓨터 판독가능 저장 매체로 송신될 수 있다. 예를 들어, 컴퓨터 명령어들은 웹사이트, 컴퓨터, 서버, 또는 데이터 센터로부터 유선(예를 들어, 동축 케이블, 광 섬유 또는 DSL(digital subscriber line)) 또는 무선(예를 들어, 적외선, 라디오, 또는 마이크로웨이브) 방식으로, 또 다른 웹사이트, 컴퓨터, 서버, 또는 데이터 센터로 송신될 수 있다. 컴퓨터 판독가능 저장 매체는 컴퓨터에 의해 액세스가능한 임의의 사용가능 매체, 또는 하나 이상의 사용가능 매체를 통합하는, 서버 또는 데이터 센터와 같은, 데이터 저장 디바이스일 수 있다. 사용가능 매체는 자기 매체(예를 들어, 플로피 디스크, 하드 디스크, 또는 자기 테이프), 광학 매체(예를 들어, DVD), 반도체 매체(예를 들어, 솔리드-스테이트 드라이브(SSD)) 등일 수 있다.
본 출원에서 제공되는 몇몇 실시예들에서, 개시되는 시스템, 장치, 및 방법은 본 출원의 범위를 벗어나지 않고 다른 방식들로 구현될 수 있다는 점이 이해되어야 한다. 예를 들어, 설명된 실시예는 단지 예이다. 예를 들어, 모듈들 또는 유닛들로의 분할은 단지 논리적 기능 분할이고 실제 구현에서는 다른 분할일 수 있다. 예를 들어, 복수의 유닛 또는 컴포넌트가 조합되거나 다른 시스템에 통합될 수 있거나, 또는 일부 피처가 무시되거나 수행되지 않을 수 있다. 별도의 부분들로서 설명된 유닛들은 물리적으로 분리되거나 분리되지 않을 수 있고, 유닛으로서 디스플레이된 부분들은 물리적 유닛이거나 아닐 수도 있고, 하나의 위치에 위치할 수 있거나, 또는 복수의 네트워크 유닛에 분산될 수도 있다. 모듈들의 일부 또는 전부는 실시예들의 해결책들의 목적들을 달성하기 위해 실제 필요에 따라 선택될 수 있다. 본 기술분야의 통상의 기술자는 창의적인 노력 없이 실시예들을 이해하고 구현할 수 있다.
또한, 시스템, 장치, 방법 및 상이한 실시예들을 예시하는 개략도들은 본 출원의 범위를 벗어나지 않고 다른 시스템들, 모듈들, 기술들 또는 방법들과 조합되거나 통합될 수 있다. 또한, 디스플레이되거나 논의된 상호 결합 또는 직접 결합 또는 통신 접속들은 일부 인터페이스들을 통해 구현될 수 있다. 장치들 또는 유닛들 사이의 간접 결합들 또는 통신 접속들은 전자적, 기계적 또는 다른 형태들로 구현될 수 있다.
전술한 설명들은 단지 본 출원의 구체적인 구현들이지, 본 출원의 보호 범위를 제한하도록 의도되는 것은 아니다. 본 출원에서 개시되는 기술적 범위 내에서 본 기술분야의 통상의 기술자에 의해 용이하게 도출되는 임의의 변형 또는 대체는 본 출원의 보호 범위 내에 있을 것이다. 그러므로, 본 출원의 보호 범위는 청구항들의 보호 범위의 대상일 것이다.

Claims (34)

  1. 소프트웨어 업그레이드 방법으로서,
    단말에서 적어도 2개의 컴포넌트의 저장 자원 정보를 수신하는 단계- 상기 저장 자원 정보는 상기 적어도 2개의 컴포넌트 각각의 가용 저장 용량을 적어도 포함하고, 상기 적어도 2개의 컴포넌트는 적어도 2개의 가용 저장 용량에 대응함 -;
    상기 저장 자원 정보에 기초하여 저장 자원 피드백 정보를 생성하는 단계- 상기 저장 자원 피드백 정보는 적어도 각각의 컴포넌트의 가용 저장 용량을 포함함 -;
    상기 저장 자원 피드백 정보를 네트워크 측 디바이스에 전송하는 단계;
    상기 네트워크 측 디바이스에 의해 생성된 업그레이드 패키지 블록 정보를 수신하는 단계- 상기 업그레이드 패키지 블록 정보는 단말 소프트웨어 업그레이드를 위한 복수의 업그레이드 패키지 블록과 상기 적어도 2개의 가용 저장 용량 내의 복수의 가용 저장 용량 사이의 일대일 대응관계를 적어도 포함함 -;
    상기 업그레이드 패키지 블록 정보에 기초하여, 상기 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용되는 적어도 하나의 지시 정보를 생성하는 단계- 상기 복수의 컴포넌트는 상기 복수의 가용 저장 용량과 일대일 대응관계에 있음 -; 및
    상기 적어도 하나의 지시 정보를 상기 복수의 컴포넌트에 전송하는 단계를 포함하는 방법.
  2. 제1항에 있어서, 상기 업그레이드 패키지 블록 정보는 상기 복수의 업그레이드 패키지 블록 각각의 다운로드 어드레스 또는 검증 정보를 추가로 포함하고, 상기 적어도 하나의 지시 정보에서의 각각의 지시 정보는 상기 복수의 업그레이드 패키지 블록 중 적어도 하나의 다운로드 어드레스 또는 검증 정보를 포함하는 방법.
  3. 제1항 또는 제2항에 있어서, 상기 적어도 하나의 지시 정보는 상기 복수의 업그레이드 패키지 블록 중 적어도 하나를 획득하기 위해 상기 복수의 컴포넌트에 의해 사용되는 외부 통신 자원 또는 시간 정보 중 적어도 하나를 포함하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 저장 자원 피드백 정보를 생성하는 단계 전에, 상기 방법은, 상기 적어도 2개의 컴포넌트 각각의 가용 저장 용량에 기초하여, 상기 단말에서의 가용 저장 자원이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족한다고 결정하는 단계를 추가로 포함하는 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 적어도 하나의 지시 정보는 복수의 지시 정보이고, 상기 복수의 지시 정보는 상기 복수의 컴포넌트와 일대일 대응관계에 있고; 상기 적어도 하나의 지시 정보를 상기 복수의 컴포넌트에 전송하는 단계는, 상기 복수의 지시 정보에 있고 컴포넌트에 대응하는 하나의 지시 정보를 상기 복수의 컴포넌트 각각에 전송하는 단계를 포함하는 방법.
  6. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 적어도 하나의 지시 정보는 하나의 지시 정보이고, 상기 적어도 하나의 지시 정보를 상기 복수의 컴포넌트에 전송하는 단계는, 상기 하나의 지시 정보를 상기 복수의 컴포넌트 각각에 전송하는 단계를 포함하는 방법.
  7. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 적어도 하나의 지시 정보는 하나의 지시 정보이고, 상기 적어도 하나의 지시 정보를 상기 복수의 컴포넌트에 전송하는 단계는, 상기 하나의 지시 정보를 상기 복수의 컴포넌트 중 하나에 전송하는 단계를 포함하는 방법.
  8. 소프트웨어 업그레이드 방법으로서,
    단말 디바이스로부터 저장 자원 피드백 정보를 수신하는 단계- 상기 저장 자원 피드백 정보는 상기 단말 디바이스에 있고 복수의 업그레이드 패키지 블록을 저장하는 데 사용될 수 있는 복수의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -;
    상기 저장 자원 피드백 정보에 기초하여 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하는 단계- 상기 복수의 업그레이드 패키지 블록은 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부와 일대일 대응관계에 있음 -;
    업그레이드 패키지 블록 정보를 생성하는 단계- 상기 업그레이드 패키지 블록 정보는 상기 복수의 업그레이드 패키지 블록과 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부 사이의 대응관계를 적어도 포함함 -; 및
    상기 업그레이드 패키지 블록 정보를 상기 단말 디바이스에 전송하는 단계를 포함하는 방법.
  9. 제8항에 있어서, 상기 업그레이드 패키지 블록 정보는 상기 복수의 업그레이드 패키지 블록 각각의 검증 정보, 각각의 업그레이드 패키지 블록의 다운로드 어드레스, 또는 상기 복수의 업그레이드 패키지 블록의 수량 중 적어도 하나를 포함하는 방법.
  10. 제8항 또는 제9항에 있어서, 상기 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하는 단계 전에, 상기 방법은, 상기 저장 자원 피드백 정보에 기초하여, 상기 단말 디바이스에서의 가용 저장 자원이 소프트웨어 업그레이드를 위한 저장 요건을 충족한다고 결정하는 단계를 추가로 포함하는 방법.
  11. 제8항 내지 제10항 중 어느 한 항에 있어서, 상기 방법은,
    업그레이드 패키지 배포 명령어를 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치에 전송하는 단계를 추가로 포함하고, 상기 업그레이드 패키지 배포 명령어는 상기 네트워크 측의 상기 적어도 하나의 업그레이드 소프트웨어 저장 장치에게 상기 복수의 업그레이드 패키지 블록 중 적어도 하나를 상기 단말 디바이스에 전송하도록 지시하는 데 사용되는 방법.
  12. 제8항 내지 제11항 중 어느 한 항에 있어서, 상기 방법은,
    상기 복수의 업그레이드 패키지 블록 중 적어도 하나를 상기 단말 디바이스에 전송하는 단계를 추가로 포함하는 방법.
  13. 제12항에 있어서, 상기 복수의 업그레이드 패키지 블록 중 적어도 하나를 상기 단말 디바이스에 전송하는 단계 전에, 상기 방법은,
    상기 네트워크 측의 상기 적어도 하나의 업그레이드 소프트웨어 저장 장치로부터 상기 복수의 업그레이드 패키지 블록 중 적어도 하나를 수신하는 단계를 추가로 포함하는 방법.
  14. 소프트웨어 업그레이드 장치로서,
    단말에서 적어도 2개의 컴포넌트의 저장 자원 정보를 수신하도록 구성되는 수신 유닛- 상기 저장 자원 정보는 상기 적어도 2개의 컴포넌트 각각의 가용 저장 용량을 적어도 포함하고, 상기 적어도 2개의 컴포넌트는 적어도 2개의 가용 저장 용량에 대응함 -;
    상기 저장 자원 정보에 기초하여 저장 자원 피드백 정보를 생성하도록 구성되는 처리 유닛- 상기 저장 자원 피드백 정보는 각각의 컴포넌트의 가용 저장 용량을 적어도 포함함 -; 및
    상기 저장 자원 피드백 정보를 네트워크 측 디바이스에 전송하도록 구성되는 전송 유닛을 포함하고,
    상기 수신 유닛은 상기 네트워크 측 디바이스에 의해 생성된 업그레이드 패키지 블록 정보를 수신하도록 추가로 구성되고, 상기 업그레이드 패키지 블록 정보는 단말 소프트웨어 업그레이드를 위한 복수의 업그레이드 패키지 블록과 상기 적어도 2개의 가용 저장 용량에서의 복수의 가용 저장 용량 사이의 일대일 대응관계를 적어도 포함하고;
    상기 처리 유닛은, 상기 업그레이드 패키지 블록 정보에 기초하여, 상기 복수의 업그레이드 패키지 블록을 획득하도록 복수의 컴포넌트에게 지시하는 데 사용되는 적어도 하나의 지시 정보를 생성하도록 추가로 구성되고, 상기 복수의 컴포넌트는 상기 복수의 가용 저장 용량과 일대일 대응관계에 있고;
    상기 전송 유닛은 상기 적어도 하나의 지시 정보를 상기 복수의 컴포넌트에 전송하도록 추가로 구성되는 장치.
  15. 제14항에 있어서, 상기 업그레이드 패키지 블록 정보는 상기 복수의 업그레이드 패키지 블록 각각의 다운로드 어드레스 또는 검증 정보를 추가로 포함하고, 상기 적어도 하나의 지시 정보에서의 각각의 지시 정보는 상기 복수의 업그레이드 패키지 블록 중 적어도 하나의 다운로드 어드레스 또는 검증 정보를 포함하는 장치.
  16. 제14항 또는 제15항에 있어서, 상기 적어도 하나의 지시 정보는 상기 복수의 업그레이드 패키지 블록 중 적어도 하나를 획득하기 위해 상기 복수의 컴포넌트에 의해 사용되는 외부 통신 자원 또는 시간 정보 중 적어도 하나를 포함하는 장치.
  17. 제14항 내지 제16항 중 어느 한 항에 있어서, 상기 처리 유닛은, 상기 적어도 2개의 컴포넌트 각각의 가용 저장 용량에 기초하여, 상기 단말에서의 가용 저장 자원이 단말 소프트웨어 업그레이드를 위한 저장 요건을 충족한다고 결정하도록 추가로 구성되는 장치.
  18. 제14항 내지 제17항 중 어느 한 항에 있어서, 상기 적어도 하나의 지시 정보는 복수의 지시 정보이고, 상기 복수의 지시 정보는 상기 복수의 컴포넌트와 일대일 대응관계에 있고; 상기 적어도 하나의 지시 정보를 상기 복수의 컴포넌트에 전송하는 것은, 상기 복수의 지시 정보에 있고 컴포넌트에 대응하는 하나의 지시 정보를 상기 복수의 컴포넌트 각각에 전송하는 것을 포함하는 장치.
  19. 제14항 내지 제17항 중 어느 한 항에 있어서, 상기 적어도 하나의 지시 정보는 하나의 지시 정보이고, 상기 적어도 하나의 지시 정보를 상기 복수의 컴포넌트에 전송하는 것은, 상기 하나의 지시 정보를 상기 복수의 컴포넌트 각각에 전송하는 것을 포함하는 장치.
  20. 제14항 내지 제17항 중 어느 한 항에 있어서, 상기 적어도 하나의 지시 정보는 하나의 지시 정보이고, 상기 적어도 하나의 지시 정보를 상기 복수의 컴포넌트에 전송하는 것은, 상기 하나의 지시 정보를 상기 복수의 컴포넌트 중 하나에 전송하는 것을 포함하는 장치.
  21. 소프트웨어 업그레이드 장치로서,
    단말 디바이스로부터 저장 자원 피드백 정보를 수신하도록 구성되는 수신 유닛- 상기 저장 자원 피드백 정보는 상기 단말 디바이스에 있고 복수의 업그레이드 패키지 블록을 저장하는 데 사용될 수 있는 복수의 컴포넌트 각각의 가용 저장 용량을 적어도 포함함 -;
    상기 저장 자원 피드백 정보에 기초하여 하나 이상의 소프트웨어 업그레이드 패키지를 복수의 업그레이드 패키지 블록으로 분할하도록 구성되는 처리 유닛- 상기 복수의 업그레이드 패키지 블록은 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부와 일대일 대응관계에 있고;
    상기 처리 유닛은 업그레이드 패키지 블록 정보를 생성하도록 추가로 구성되고, 상기 업그레이드 패키지 블록 정보는 상기 복수의 업그레이드 패키지 블록과 모든 컴포넌트의 가용 저장 용량들 중 적어도 일부 사이의 대응관계를 적어도 포함함 -; 및
    상기 업그레이드 패키지 블록 정보를 상기 단말 디바이스에 전송하도록 구성되는 전송 유닛을 포함하는 장치.
  22. 제21항에 있어서, 상기 업그레이드 패키지 블록 정보는 상기 복수의 업그레이드 패키지 블록 각각의 검증 정보, 각각의 업그레이드 패키지 블록의 다운로드 어드레스, 또는 상기 복수의 업그레이드 패키지 블록의 수량 중 적어도 하나를 포함하는 장치.
  23. 제21항 또는 제22항에 있어서, 상기 처리 유닛은, 상기 저장 자원 피드백 정보에 기초하여, 상기 단말 디바이스에서의 가용 저장 자원이 소프트웨어 업그레이드를 위한 저장 요건을 충족한다고 결정하도록 추가로 구성되는 장치.
  24. 제21항 내지 제23항 중 어느 한 항에 있어서, 상기 전송 유닛은,
    업그레이드 패키지 배포 명령어를 네트워크 측의 적어도 하나의 업그레이드 소프트웨어 저장 장치에 전송하도록 추가로 구성되고, 상기 업그레이드 패키지 배포 명령어는 상기 네트워크 측의 상기 적어도 하나의 업그레이드 소프트웨어 저장 장치에게 상기 복수의 업그레이드 패키지 블록 중 적어도 하나를 상기 단말 디바이스에 전송하도록 지시하는 데 사용되는 장치.
  25. 제21항 내지 제24항 중 어느 한 항에 있어서, 상기 전송 유닛은:
    상기 복수의 업그레이드 패키지 블록 중 적어도 하나를 상기 단말 디바이스에 전송하도록 추가로 구성되는 장치.
  26. 제25항에 있어서, 상기 수신 유닛은,
    상기 네트워크 측의 상기 적어도 하나의 업그레이드 소프트웨어 저장 장치로부터 상기 복수의 업그레이드 패키지 블록 중 적어도 하나를 수신하도록 추가로 구성되는 장치.
  27. 메모리 및 프로세서를 포함하는 소프트웨어 업그레이드 장치로서,
    상기 메모리는 컴퓨터 프로그램 명령어들을 저장하고, 상기 프로세서는 상기 컴퓨터 프로그램 명령어들을 실행하여 제1항 내지 제7항 중 어느 한 항에 따른 동작을 수행하는 장치.
  28. 제27항에 있어서, 상기 장치는 저장 자원 정보 또는 업그레이드 패키지 블록 정보를 수신하도록 구성되거나, 저장 자원 피드백 정보, 적어도 하나의 지시 정보, 다운로드 명령어, 업그레이드 패키지 배포 명령어, 및 설치 활성화 명령어 중 적어도 하나를 전송하도록 구성되는 송수신기를 추가로 포함하는 장치.
  29. 메모리 및 프로세서를 포함하는 소프트웨어 업그레이드 장치로서,
    상기 메모리는 컴퓨터 프로그램 명령어들을 저장하고, 상기 프로세서는 상기 컴퓨터 프로그램 명령어들을 실행하여 제8항 내지 제13항 중 어느 한 항에 따른 동작을 수행하는 장치.
  30. 제29항에 있어서, 상기 장치는 저장 자원 피드백 정보 또는 복수의 업그레이드 패키지 블록 중 적어도 하나를 수신하도록 구성되거나, 업그레이드 패키지 블록 정보, 소프트웨어 업그레이드 시작 메시지, 업그레이드 패키지 배포 명령어, 및 적어도 하나의 업그레이드 패키지 블록 중 적어도 하나를 전송하도록 구성되는 송수신기를 추가로 포함하는 장치.
  31. 제14항 내지 제20항 중 어느 한 항에 따른 소프트웨어 업그레이드 장치, 및 제21항 내지 제26항 중 어느 한 항에 따른 소프트웨어 업그레이드 장치를 포함하는 소프트웨어 업그레이드 시스템.
  32. 제27항 또는 제28항에 따른 소프트웨어 업그레이드 장치 및 제29항 또는 제30항에 따른 소프트웨어 업그레이드 장치를 포함하는 소프트웨어 업그레이드 시스템.
  33. 컴퓨터 명령어들을 포함하는 컴퓨터 판독가능 저장 매체로서,
    상기 컴퓨터 명령어들이 프로세서 상에서 실행될 때, 소프트웨어 업그레이드 장치는 제1항 내지 제7항 중 어느 한 항에 따른 방법을 수행할 수 있게 되는 컴퓨터 판독가능 저장 매체.
  34. 컴퓨터 명령어들을 포함하는 컴퓨터 판독가능 저장 매체로서,
    상기 컴퓨터 명령어들이 프로세서 상에서 실행될 때, 소프트웨어 업그레이드 장치는 제8항 내지 제13항 중 어느 한 항에 따른 방법을 수행할 수 있게 되는 컴퓨터 판독가능 저장 매체.
KR1020227019294A 2019-11-18 2020-06-28 소프트웨어 업그레이드 방법, 장치 및 시스템 KR20220092617A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201911129069.3 2019-11-18
CN201911129069.3A CN112817617A (zh) 2019-11-18 2019-11-18 软件升级方法、装置和系统
PCT/CN2020/098352 WO2021098212A1 (zh) 2019-11-18 2020-06-28 软件升级方法、装置和系统

Publications (1)

Publication Number Publication Date
KR20220092617A true KR20220092617A (ko) 2022-07-01

Family

ID=75852585

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227019294A KR20220092617A (ko) 2019-11-18 2020-06-28 소프트웨어 업그레이드 방법, 장치 및 시스템

Country Status (6)

Country Link
US (1) US11972247B2 (ko)
EP (1) EP4044024A4 (ko)
JP (1) JP2023501823A (ko)
KR (1) KR20220092617A (ko)
CN (1) CN112817617A (ko)
WO (1) WO2021098212A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115378750B (zh) * 2021-05-20 2023-09-19 海信集团控股股份有限公司 一种电子家居设备的ota升级方法及设备
CN113778490A (zh) * 2021-09-16 2021-12-10 深圳市易平方网络科技有限公司 基于智能终端的软件升级处理方法、装置、智能终端
CN113986277A (zh) * 2021-09-24 2022-01-28 成都市卡蛙科技有限公司 一种基于终端状态进行固件升级的方法
CN113867764B (zh) * 2021-09-28 2024-05-03 重庆长安汽车股份有限公司 一种多通道升级车机mcu的方法及系统
CN114756321B (zh) * 2022-04-28 2024-02-06 重庆长安汽车股份有限公司 一种基于车机实现仪表交互界面并显示的系统及方法
WO2024011366A1 (zh) * 2022-07-11 2024-01-18 Oppo广东移动通信有限公司 设备升级方法、装置、设备、存储介质及程序产品
CN115314486A (zh) * 2022-07-20 2022-11-08 交控科技股份有限公司 列车控制系统的软件升级方法及装置
CN116132975A (zh) * 2023-01-17 2023-05-16 青岛海尔智能家电科技有限公司 用于节点设备网络中空中下载的方法、设备及存储介质

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086796A (ja) * 1994-06-15 1996-01-12 Nec Corp ダウンロード方法、そのネットワークシステム、及びデータファイル更新方法
JP2005092330A (ja) * 2003-09-12 2005-04-07 Olympus Corp ソフトウエア更新プログラム
JP4698182B2 (ja) 2003-09-16 2011-06-08 株式会社リコー 電子装置、ネットワーク機器、管理方法、ソフトウェア更新方法、管理プログラム、ソフトウェア更新プログラム及び記録媒体
US7536687B1 (en) * 2004-06-23 2009-05-19 Emc Corporation System and method for automatic installation of embedded software packages
CN101344906B (zh) * 2008-05-19 2010-06-23 北京深思洛克软件技术股份有限公司 一种分块式的远程更新方法
JP2010079720A (ja) * 2008-09-26 2010-04-08 Kyocera Corp 通信端末
CN103019767B (zh) * 2012-11-16 2016-08-24 深圳市多尼卡电子技术有限公司 一种系统升级的方法、装置及机载娱乐系统
CN103455348B (zh) * 2013-08-27 2016-07-06 小米科技有限责任公司 分区调整方法、装置、终端、服务器及系统
JP6314775B2 (ja) * 2014-09-29 2018-04-25 株式会社オートネットワーク技術研究所 通信システム、車載装置、通信装置、及びコンピュータプログラム
JP6314893B2 (ja) 2015-03-31 2018-04-25 コニカミノルタ株式会社 画像処理システム、画像処理装置、配信サーバー、管理サーバー、および、プログラム
US10142204B2 (en) * 2015-07-27 2018-11-27 Datagrid Systems, Inc. Techniques for evaluating server system reliability, vulnerability and component compatibility using crowdsourced server and vulnerability data
CN105843656B (zh) * 2016-04-22 2020-12-01 Tcl科技集团股份有限公司 磁盘空间不足的系统升级方法、终端设备及服务器
US10140116B2 (en) * 2016-09-26 2018-11-27 Ford Global Technologies, Llc In-vehicle auxiliary memory storage
EP3399410A1 (en) * 2017-05-04 2018-11-07 Volvo Car Corporation Method and system for software installation in a vehicle
CN108959122A (zh) * 2017-05-17 2018-12-07 中兴通讯股份有限公司 一种升级包下载的保存方法、装置和终端
JP6940365B2 (ja) * 2017-10-12 2021-09-29 日立Astemo株式会社 情報更新装置
WO2019077607A1 (en) * 2017-10-17 2019-04-25 Argus Cyber Security Ltd. SYSTEM AND METHOD FOR MANAGING PROGRAM MEMORY ON A STORAGE DEVICE
CN107682210A (zh) * 2017-11-10 2018-02-09 北京明朝万达科技股份有限公司 一种基于混合传输模式的数据升级方法及系统
CN109992291A (zh) * 2018-01-02 2019-07-09 中兴通讯股份有限公司 一种终端软件升级方法、装置、系统以及存储介质

Also Published As

Publication number Publication date
EP4044024A4 (en) 2022-12-07
JP2023501823A (ja) 2023-01-19
US20220276856A1 (en) 2022-09-01
EP4044024A1 (en) 2022-08-17
WO2021098212A1 (zh) 2021-05-27
US11972247B2 (en) 2024-04-30
CN112817617A (zh) 2021-05-18

Similar Documents

Publication Publication Date Title
KR20220092617A (ko) 소프트웨어 업그레이드 방법, 장치 및 시스템
EP4202645A1 (en) Vehicle upgrading method and apparatus
US20150230044A1 (en) Updating vehicle software using a smartphone
WO2021168840A1 (zh) 一种软件版本回滚方法、装置及系统
CN111886576A (zh) 用于更新远程网络设备的方法和装置
CN106899327B (zh) 数据传输的方法和装置
WO2024007987A1 (zh) 数字钥匙系统的车端固件升级方法、装置、设备及介质
EP4207707A1 (en) Data transmission system, data transmission method, smart vehicle and device
WO2022165711A1 (zh) 基于空中下载技术ota的升级方法及装置
CN112637371A (zh) 节点地址确定方法、装置、电子设备及存储介质
KR20200075626A (ko) 차량의 ecu 업데이트가 가능한 무선 업데이트 시스템 및 방법
CN114064091A (zh) Ota升级控制方法、装置、电子设备及自动驾驶车辆
EP4246844A1 (en) Data packet processing method and apparatus
CN106413125B (zh) 数据传输方法及装置
CN115335803A (zh) 一种设备升级方法、智能设备及计算机可读存储介质
Li et al. Design and development of an extensible multi-protocol automotive gateway
CN111752575B (zh) 一种车载应用更新方法、装置、设备及存储介质
CN111404793B (zh) 一种控制物理can口和虚拟can口进行映射的方法,系统,设备及可读存储介质
CN113377393B (zh) 一种车载系统主节点的诊断刷新系统及方法
WO2024055876A1 (zh) 多个设备ota升级方法及装置
US20230143822A1 (en) Integrating artificial intelligence into vehicles
WO2023051057A1 (zh) 芯片升级方法及装置
WO2023070426A1 (zh) 一种配置方法和装置
WO2022062857A1 (zh) 资源请求方法、资源配置方法及相关产品
WO2023108618A1 (zh) 一种基于空中下载ota技术的升级方法及通信装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal