KR101746934B1 - 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법 - Google Patents

최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법 Download PDF

Info

Publication number
KR101746934B1
KR101746934B1 KR1020150116555A KR20150116555A KR101746934B1 KR 101746934 B1 KR101746934 B1 KR 101746934B1 KR 1020150116555 A KR1020150116555 A KR 1020150116555A KR 20150116555 A KR20150116555 A KR 20150116555A KR 101746934 B1 KR101746934 B1 KR 101746934B1
Authority
KR
South Korea
Prior art keywords
delta
update
block
electronic control
control unit
Prior art date
Application number
KR1020150116555A
Other languages
English (en)
Other versions
KR20170022062A (ko
Inventor
박용선
박평선
Original Assignee
주식회사 엔지스테크널러지
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엔지스테크널러지 filed Critical 주식회사 엔지스테크널러지
Priority to KR1020150116555A priority Critical patent/KR101746934B1/ko
Publication of KR20170022062A publication Critical patent/KR20170022062A/ko
Application granted granted Critical
Publication of KR101746934B1 publication Critical patent/KR101746934B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • 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 

Abstract

본 발명은 각각의 전자제어유닛에 대응하는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점, 블록의 변화가 발생된 지점 및 블록의 길이 등 블록의 위치 정보를 추출하고, 상기 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출하며, 상기 추출된 각각의 델타 블록을 패키징하여 복수 개의 델타 파일을 생성하고, 상기 생성된 복수 개의 델타 파일에 참조되는 델타 헤더를 생성하는 관리 서버; 및 상기 관리 서버로부터 상기 복수 개의 델타 파일과 상기 델타 헤더를 수신하고, 상기 델타 헤더를 참조하여 상기 각각의 전자제어유닛으로부터 상기 각각의 원본 이미지를 수신하며, 상기 델타 블록의 위치 정보를 참조하여 상기 각각의 전자제어유닛에 대한 업데이트를 제공하는 텔레메틱스 단말기를 포함하는 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법을 개시한다.

Description

최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법{MANAGEMENT SERVER, TELEMATICS TERMINAL AND METHOD THEREOF TO SUPPORT AND PROVIDE OPTIMUM DELTA UPDATE}
본 발명은 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법에 관한 것으로, 보다 상세하게는 챠량의 전자제어유닛들에 대한 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법에 관한 것이다.
스마트폰이 범람하면서 소프트웨어를 업데이트하는 기술(예를 들어, 펌웨어 업데이트 기술)이 주목을 받고 있다.
종래에는 위피(WIPI, Wireless Internet Platform for Interoperability) 또는 윈도우 기반의 스마트폰을 업데이트하려면, PC에 펌웨어 업데이트 전용 프로그램을 설치해야 하고, 스마트폰과 PC를 케이블로 연결해야 하며, 마지막으로 동기화 과정을 수행해야 스마트폰을 업데이트시킬 수 있었다.
이러한 종래의 펌웨어 업데이트 기술의 문제점을 개선하기 위하여 최근에 등장한 기술은 포타(FOTA, Firmware Over The Air) 기술이다.
FOTA 기술은 무선으로 펌웨어를 업데이트하는 기술로서, OMA-DM 프로토콜에 기초하여 스마트폰에 내장된 운영체제 및 펌웨어를 업데이트하는 기술이고, 2002년 NTT 토코모라는 일본 통신사에 의해 최초로 개발된 기술이다.
FOTA 기술 분야는 스마튼폰 분야뿐만 아니라 사물지능통신(M2M, Machine to Machine) 분야로 확대되고 있고, 오픈 모바일 연합체인 OMA(Open Mobile Alliance)는 사물지능통신과 관련된 프로토콜(예를 들어, OMA Lightweight M2M) 및 서비스 표준화를 진행하고 있다.
그러나, FOTA 기술 분야에서 적용되는 모든 표준 규격들은 업데이트 대상의 단말기와 펌웨어 업데이트를 지원하는 관리 서버 간의 프로토콜만을 포함하고 있다.
보다 상세하게는, FOTA 기술은 대상 단말기(예를 들어, 텔레메틱스 단말기(telematics terminal))와 함께 이종 네트워크로 연동되어 동작되는 다수의 부가/연동 시스템(복수 개의 전자제어유닛(ECU, Electronic Control Unit))들에 대한 업데이트 또는 델타 기반의 업데이트 기술을 포함하고 있지 않다.
FOTA 기술에서 델타 업데이트는 대상 기기의 원본 이미지를 업데이트하기 위한 풀 사이즈의 업데이트 이미지를 전송하는 것이 아니라, 차분을 전송함으로써, 저용량으로 대상 기기를 업데이트하는 기술이다.
이하, 차량 내 시스템에서 델타 업데이트가 적용하기 어려운 점을 설명하기로 한다.
스마트카 시대가 열리면서 차량 내 시스템은 엔진, 연료 분사, 브레이크, 속도계, 에어백 및 타이어의 상태를 제어하기 위한 다양한 전자제어유닛 및 운영체제가 혼합적으로 구성되고 있는 추세이다.
보다 상세하게는, 차량 내 시스템은 운영체제 기반의 분산 임베디드로 구현되고, 다양한 전자제어유닛의 상호 연결을 위한 다양한 이종 버스(예를 들어, USB, HSIC, Ethernet, CAN)로 구현된다.
그러나, 최근에는 차량 내 시스템에서 전자제어유닛의 오작동이 빈번하게 일어나고 있고, 이에 따른 교통사고가 증가하고 있는 추세이므로, 다양한 전자제어유닛의 소프트웨어와 관련된 업데이트 기술이 개발되고 있다.
그러나, 각각의 전자제어유닛의 소프트웨어를 업데이트 하기 위해서는 각각의 전자제어유닛에 대한 풀 사이즈의 업데이트 이미지가 필요하다.
따라서, 차량 내 시스템에서는 풀 사이즈의 업데이트 이미지가 필요하기 때문에, 델타 업데이트가 적용되기 어려운 문제점이 존재한다.
한국 공개특허 제20110092007호(2011.08.17), "차량의 소프트웨어 다운로드 시스템 및 방법" 한국 등록특허 제1335223호(2013.11.25), "차량용 전자제어장치의 리프로그래밍 방법 및 리프로그래밍 전자제어장치"
본 발명은 동작 속도가 빠르고, 저장 공간을 가지며, 호스트 디바이스로 동작되는 텔레메틱스 단말기를 통하여 각각의 전자제어유닛에 대한 델타 업데이트를 수행하는 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법을 제공한다.
본 발명은 블록의 위치 정보, 압축 알고리즘, 속성 패턴 및 딕셔너리 정보 중 적어도 하나에 기초하여 저용량의 델타 데이터를 제공하는 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법을 제공한다.
본 발명의 실시예에 따른 최적의 델타 업데이트를 지원하기 위한 관리 서버는 각각의 전자제어유닛에 대응하는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점, 블록의 변화가 발생된 지점 및 블록의 길이 등 블록의 위치 정보를 추출하고, 상기 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출하는 델타 블록 추출부; 상기 추출된 각각의 델타 블록을 패키징하여 복수 개의 델타 파일을 생성하고, 상기 생성된 복수 개의 델타 파일에 참조되는 델타 헤더를 생성하는 델타 파일 생성부; 및 텔레메틱스 단말기에 제공되는 상기 생성된 복수 개의 델타 파일 및 상기 생성된 델타 헤더에 대한 전송을 제어하는 통합 제어부를 포함한다.
상기 델타 블록 추출부는 압축 효율을 고려한 압축 알고리즘에 기초하여 상기 원본 이미지 및 상기 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 상기 각각의 델타 블록을 추출할 수 있다.
상기 압축 알고리즘은 선 압축 알고리즘, 후 압축 알고리즘 및 이중 압축 알고리즘 중 적어도 하나를 포함할 수 있다.
실시예에 따르면, 상기 델타 블록 추출부는 상기 원본 이미지 및 상기 업데이트 이미지에 대한 블록의 속성 패턴에 대응하는 상기 압축 알고리즘에 기초하여 상기 각각의 델타 블록을 추출할 수 있다.
보다 상세하게는, 상기 델타 블록 추출부는 상기 압축 효율에 영향을 미치는 숫자 정보, 기호 정보, 문자 정보 및 이미지 정보 중 적어도 하나를 포함하는 상기 원본 이미지 및 상기 업데이트 이미지에 대한 상기 블록의 속성 패턴을 분석하여 상기 압축 알고리즘을 선택하고, 상기 선택된 압축 알고리즘에 기초하여 상기 각각의 델타 블록을 추출할 수 있다.
상기 델타 파일 생성부는 상기 각각의 전자제어유닛에 대응하는 상기 복수 개의 델타 파일을 생성하고, 상기 블록의 위치 정보를 포함하는 델타 헤더를 생성할 수 있다.
또한, 상기 델타 파일 생성부는 상기 추출된 각각의 델타 블록의 사이즈를 고려하여 상기 복수 개의 델타 파일을 생성하고, 상기 고려된 사이즈에 기초하여 전송 스케줄 정보를 생성하며, 상기 생성된 스케줄 정보를 포함한 상기 델타 헤더를 생성할 수 있다.
또한, 상기 델타 파일 생성부는 상기 추출된 각각의 델타 블록 중에서 동일한 패턴의 델타 블록이 존재하는 경우, 상기 동일한 패턴의 델타 블록을 최소화하여 상기 복수 개의 델타 파일을 생성하고, 상기 동일한 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보(dictionary information)를 생성하며, 상기 생성된 딕셔너리 정보를 포함한 상기 델타 헤더를 생성할 수 있다.
상기 통합 제어부는 상기 텔레메틱스 단말기의 메모리 공간을 고려하여 상기 생성된 복수 개의 델타 파일을 통합 다운로드, 분할 다운로드 및 선택 다운로드 중 적어도 하나의 스케줄링 방법으로 전송을 제어할 수 있다.
본 발명의 실시예에 따른 최적의 델타 업데이트를 지원하기 위한 관리 서버는 운영체체 버전 정보별로 상기 각각의 전자제어유닛에 대응하는 상기 원본 이미지 및 상기 업데이트 이미지를 저장하는 데이터베이스; 및 상기 텔레메틱스 단말기로 업데이트 푸쉬 메시지를 전송하고, 상기 텔레메틱스 단말기로부터 상기 업데이트 푸쉬 메시지에 대응하여 상기 텔레메틱스 단말기의 운영체제 버전 정보를 포함한 업데이트 요청 메시지를 수신하는 통합 통신부를 더 포함할 수 있다.
상기 통합 통신부는 상기 텔레메틱스 단말기와 연동되는 사용자 단말기를 통하여 상기 업데이트 요청 메시지를 수신할 수 있다.
본 발명의 실시예에 따른 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기는 관리 서버로부터 복수 개의 델타 파일 및 상기 복수 개의 델타 파일에 참조되는 델타 헤더를 수신하고, 상기 델타 헤더를 참조하여 각각의 전자제어유닛으로부터 각각의 원본 이미지를 수신하는 통신부; 상기 수신된 복수 개의 델타 파일로부터 상기 수신된 각각의 원본 이미지에 대응하는 각각의 델타 블록을 추출하고, 상기 추출된 각각의 델타 블록의 위치 정보를 참조하여 상기 수신된 각각의 원본 이미지에 대한 각각의 업데이트 이미지를 생성하는 생성부; 상기 각각의 업데이트 이미지에 대응하는 상기 각각의 전자제어유닛에 대한 업데이트를 제공하는 업데이트 제공부; 및 상기 복수 개의 델타 파일에 대한 수신을 제어하고, 상기 각각의 전자제어유닛에 대한 업데이트를 제어하는 제어부를 포함한다.
상기 관리 서버는 압축 효율을 고려한 압축 알고리즘에 기초하여 상기 원본 이미지 및 상기 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 상기 각각의 델타 블록을 추출하는 것을 특징으로 할 수 있다.
상기 통신부는 메모리 공간을 고려하여 상기 생성된 복수 개의 델타 파일을 통합 다운로드, 분할 다운로드 및 선택 다운로드 중 적어도 하나의 스케줄링 방법으로 수신할 수 있다.
또한, 상기 통신부는 상기 관리 서버로부터 업데이트 푸쉬 메시지를 수신하고, 상기 업데이트 푸시 메시지에 대응하여 상기 관리 서버로 운영체제 버전 정보를 포함한 업데이트 요청 메시지를 전송할 수 있다.
상기 생성부는 동일한 패턴의 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보를 참조하여 상기 동일한 패턴의 델타 블록에 대응하는 적어도 2개 이상의 원본 이미지에 대한 적어도 2개 이상의 업데이트 이미지를 생성할 수 있다.
상기 업데이트 제공부는 업데이트 순서를 선정하고, 상기 선정된 업데이트 순서에 따라 상기 각각의 업데이트 이미지에 대응하는 상기 전자제어유닛에 대한 업데이트를 제공할 수 있다.
실시예에 따르면, 상기 통신부는 상기 각각의 전자제어유닛에 대한 업데이트가 완료되면, 상기 관리 서버로 업데이트된 운영체제의 버전 정보를 전송하는 최적의 델타 업데이트를 제공할 수 있다.
상기 제어부는 사용자 단말기의 원격 제어에 기초하여 상기 복수 개의 델타 파일에 대한 수신을 제어하고, 상기 각각의 전자제어유닛에 대한 업데이트를 제어하는 최적의 델타 업데이트를 제공할 수 있다.
또한, 상기 제어부는 상기 델타 헤더의 스케줄 정보에 기초하여 제1 순위에 대응하는 제1 전자제어유닛의 업데이트 이미지에 대한 생성을 제어하고, 상기 제1 전자제어유닛의 업데이트가 완료되면 상기 제1 전자제어유닛의 원본 이미지 및 업데이트 이미지에 대한 제거와 제2 순위에 대응하는 제2 전자제어유닛에 대한 업데이트를 제어할 수 있다.
본 발명의 실시예에 따른 최적의 델타 업데이트를 지원하기 위한 관리 서버의 동작 방법은 각각의 전자제어유닛에 대응하는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점, 블록의 변화가 발생된 지점 및 블록의 길이 등 블록의 위치 정보를 추출하고, 상기 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출하는 단계; 상기 추출된 각각의 델타 블록을 패키징하여 복수 개의 델타 파일을 생성하고, 상기 생성된 복수 개의 델타 파일에 참조되는 델타 헤더를 생성하는 단계; 및 텔레메틱스 단말기로 상기 생성된 복수 개의 델타 파일 및 상기 생성된 델타 헤더를 전송하는 단계를 포함한다.
본 발명의 실시예에 따른 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기의 동작 방법은 관리 서버로부터 복수 개의 델타 파일 및 상기 복수 개의 델타 파일에 참조되는 델타 헤더를 수신하고, 상기 델타 헤더를 참조하여 각각의 전자제어유닛으로부터 각각의 원본 이미지를 수신하는 단계; 상기 수신된 복수 개의 델타 파일로부터 상기 수신된 각각의 원본 이미지에 대응하는 각각의 델타 블록을 추출하고, 상기 추출된 각각의 델타 블록의 위치 정보를 참조하여 상기 수신된 각각의 원본 이미지에 대한 각각의 업데이트 이미지를 생성하는 단계; 및 상기 각각의 업데이트 이미지에 대응하는 상기 각각의 전자제어유닛에 대한 업데이트를 제공하는 단계를 포함한다.
본 발명은 동작 속도가 빠르고, 저장 공간을 가지며, 호스트 디바이스로 동작되는 텔레메틱스 단말기를 통하여 각각의 전자제어유닛에 대한 델타 업데이트를 수행할 수 있다.
본 발명은 블록의 위치 정보, 압축 알고리즘, 속성 패턴 및 딕셔너리 정보 중 적어도 하나에 기초하여 저용량의 델타 데이터를 제공할 수 있다.
도 1은 본 발명의 실시예에 따른 차량의 전자제어유닛의 업데이트를 위한 업데이트 시스템을 도시한 블록도이다.
도 2는 최적의 델타 업데이트를 지원하기 위한 관리 서버를 도시한 블록도 이다.
도 3은 원본 이미지 및 업데이트 이미지 사이에서 델타 블록을 추출하는 예를 도시한 것이다.
도 4a는 압축 효율을 고려한 압축 알고리즘에 기초하여 최적의 델타 블록을 추출하는 과정을 도시한 예이다.
도 4b는 원본 이미지 및 업데이트 이미지에 대한 블록의 속성 패턴에 대응하는 압축 알고리즘에 기초하여 최적의 델타 블록을 추출하는 과정을 도시한 예이다.
도 5a는 복수 개의 델타 파일 및 델타 헤더의 구조를 도시한 예이다.
도 5b는 복수 개의 델타 파일 및 복수 개의 델타 헤더의 구조를 도시한 예이다.
도 5c는 동일한 패턴의 델타 블록을 최소화하여 복수 개의 델타 파일 및 델타 헤더를 생성하는 과정을 도시한 예이다.
도 6은 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기를 도시한 블록도이다.
도 7은 본 발명의 실시예에 따른 최적의 델타 업데이트를 지원하기 위한 관리 서버의 동작 방법을 도시한 흐름도이다.
도 8은 본 발명의 실시예에 따른 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기의 동작 방법을 도시한 흐름도이다.
도 9는 본 발명의 실시예에 따른 차량의 전자제어유닛의 업데이트를 위한 업데이트 시스템을 도시한 블록도이다.
이하 첨부 도면들 및 첨부 도면들에 기재된 내용들을 참조하여 본 발명의 실시예를 상세하게 설명하지만, 본 발명이 실시예에 의해 제한되거나 한정되는 것은 아니다.
한편, 본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는, 그 상세한 설명을 생략할 것이다. 그리고, 본 명세서에서 사용되는 용어(terminology)들은 본 발명의 실시예를 적절히 표현하기 위해 사용된 용어들로서, 이는 사용자, 운용자의 의도 또는 본 발명이 속하는 분야의 관례 등에 따라 달라질 수 있다. 따라서, 본 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 실시예에 따른 차량의 전자제어유닛의 업데이트를 위한 업데이트 시스템을 도시한 블록도이다.
도 1을 참조하면, 업데이트 시스템(100)은 관리 서버(200) 및 텔레메틱스 단말기(600)를 포함한다.
관리 서버(200)는 각각의 전자제어유닛(500)에 대응하는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점, 블록의 변화가 발생된 지점 및 블록의 길이 등 블록의 위치 정보를 추출하고, 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출하며, 추출된 각각의 델타 블록을 패키징하여 복수 개의 델타 파일을 생성하고, 생성된 복수 개의 델타 파일에 참조되는 델타 헤더를 생성한다.
텔레메틱스 단말기(600)는 관리 서버(200)로부터 복수 개의 델타 파일과 델타 헤더를 수신하고, 델타 헤더를 참조하여 각각의 전자제어유닛(500)으로부터 각각의 원본 이미지를 수신하며, 델타 블록의 위치 정보를 참조하여 각각의 전자제어유닛(500)에 대한 업데이트를 제공한다.
여기서, 텔레메틱스는 텔레커뮤니케이션(telecommunication)과 인포매틱스(informatics)의 합성어로, 텔레메틱스 단말기(600)는 차량과 무선통신을 결합한 개념의 차량 무선 인터넷 서비스를 사용자에게 제공할 수 있다.
사용자 단말기(400)는 텔레메틱스 단말기(600)와 연동되고, 관리 서버(200)는 사용자 단말기(400)의 원격 제어에 기초하여 생성된 복수 개의 델타 파일에 참조되는 델타 헤더를 텔레메틱스 단말기(600)에게 전송할 수 있다. 이하 도 2를 참조하여 관리 서버를 상세히 설명하기로 한다.
도 2는 최적의 델타 업데이트를 지원하기 위한 관리 서버를 도시한 블록도 이다.
도 2를 참조하면, 관리 서버(200)는 델타 블록 추출부(220), 델타 파일 생성부(230) 및 통합 제어부(250)를 포함한다.
델타 블록 추출부(220)는 각각의 전자제어유닛(500)에 대응하는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점, 블록의 변화가 발생된 지점 및 블록의 길이 등 블록의 위치 정보를 추출하고, 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출한다.
여기서, 원본 이미지 및 업데이트 이미지는 복수 개의 블록을 포함할 수 있고, 바이너리 구조의 이미지일 수 있다. 또한, 원본 이미지 및 업데이트 이미지는 숫자 정보, 기호 정보, 문자 정보 및 이미지 정보 등 적어도 하나의 속성 정보(또는, 속성 패턴)를 포함할 수 있다.
도 3은 원본 이미지 및 업데이트 이미지 사이에서 델타 블록을 추출하는 예를 도시한 것이다.
도 3을 참조하면, 델타 블록 추출부(220)는 각각의 전자제어유닛(500)에 대응하는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점, 블록의 변화가 발생된 지점 및 블록의 길이 등 블록의 위치 정보를 추출하고, 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출한다.
보다 상세하게는, 델타 블록 추출부(220)는 볼록 이동 방식에 기초하여 원본 이미지 및 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출할 수 있다.
예를 들어, 델타 블록 추출부(220)는 도 3에 도시된 바와 같이, 24개 블록으로 구성되는 원본 이미지와 24개 블록으로 구성되는 업데이트 이미지 간의 블록을 비교하여 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출할 수 있다.
또한, 델타 블록 추출부(220)는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점(1), 블록의 변화가 발생된 지점(2, 5, 6, 24) 및 블록의 길이(24) 등 블록의 위치 정보를 추출할 수 있다.
실시예에 따르면, 업데이트 이미지의 블록의 길이는 업데이트 이미지에 새로운 블록이 추가될 수 있으므로 원본 이미지의 블록의 길이와 같거나 더 길어질 수 있다.
도 4a는 압축 효율을 고려한 압축 알고리즘에 기초하여 최적의 델타 블록을 추출하는 과정을 도시한 예이고, 도 4b는 원본 이미지 및 업데이트 이미지에 대한 블록의 속성 패턴에 대응하는 압축 알고리즘에 기초하여 최적의 델타 블록을 추출하는 과정을 도시한 예이다.
도 4a를 참조하면, 델타 블록 추출부(220)는 압축 효율을 고려한 압축 알고리즘에 기초하여 원본 이미지 및 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 상기 각각의 델타 블록을 추출할 수 있다.
여기서, 압축 알고리즘은 선 압축 알고리즘, 후 압축 알고리즘 및 이중 압축 알고리즘 중 적어도 하나를 포함할 수 있다.
선 압축 알고리즘은 압축된 업데이트 이미지(compress(fupdate))에서 압축된 원본 이미지(compress(forg))의 차를 연산하여 후보의 델타 블록을 생성하는 알고리즘이고, 후 압축 알고리즘은 업데이트 이미지 (fupdate)에서 원본 이미지 (forg)의 차를 연산하고, 연산된 차의 값을 압축하여 후보의 델타 블록을 생성하는 알고리즘이다.
이중 압축 알고리즘은 선 압축 알고리즘 및 후 압축 알고리즘 중 적어도 하나에 의해 생성된 후보의 델타 블록을 한번 더 압축하는 알고리즘일 수 있다.
델타 블록 추출부(220)는 압축 알고리즘에 의해 4가지 후보의 델타 블록을 생성할 수 있고, 4가지 후보의 델타 블록 중에서 데이터의 용량이 가장 적은 블록을 델타 블록으로 선정하여 추출할 수 있다.
실시예에 따르면, 압축 알고리즘은 선 압축 알고리즘, 후 압축 알고리즘 및 이중 압축 알고리즘뿐만 아니라 고차(higher) 압축 알고리즘, 무손실 압축, 손실 압축 및 이를 응용한 다양한 압축 방식을 포함할 수 있고, 이에 한정하지 않는다.
도 4b를 참조하면, 델타 블록 추출부(220)는 원본 이미지 및 업데이트 이미지에 대한 블록의 속성 패턴에 대응하는 압축 알고리즘에 기초하여 상기 각각의 델타 블록을 추출할 수 있다.
보다 상세하게는, 델타 블록 추출부(220)는 압축 효율에 영향을 미치는 숫자 정보, 기호 정보, 문자 정보 및 이미지 정보 중 적어도 하나를 포함하는 원본 이미지 및 업데이트 이미지에 대한 블록의 속성 패턴을 분석하여 압축 알고리즘을 선택하고, 선택된 압축 알고리즘에 기초하여 각각의 델타 블록을 추출할 수 있다.
예를 들어, 압축 효율은 델타 블록에 포함된 숫자 정보, 기호 정보, 문자 정보 및 이미지 정보 및 이를 조합한 정보에 따라 달라질 수 있기 때문에, 델타 블록 추출부(220)는 블록의 속성 패턴을 분석하여 압축 효율이 높은 압축 알고리즘을 선택할 수 있다.
도 5a는 복수 개의 델타 파일 및 델타 헤더의 구조를 도시한 예이고, 도 5b는 복수 개의 델타 파일 및 복수 개의 델타 헤더의 구조를 도시한 예이며, 도 5c는 동일한 패턴의 델타 블록을 최소화하여 복수 개의 델타 파일 및 델타 헤더를 생성하는 과정을 도시한 예이다.
도 5a를 참조하면, 델타 파일 생성부(230)는 추출된 각각의 델타 블록을 패키징하여 복수 개의 델타 파일을 생성하고, 생성된 복수 개의 델타 파일에 참조되는 델타 헤더를 생성한다.
보다 상세하게는, 델타 파일 생성부(230)는 각각의 전자제어유닛(500)에 대응하는 복수 개의 델타 파일을 생성하고, 블록의 위치 정보를 포함하는 델타 헤더를 생성할 수 있다.
예를 들어, 델타 파일 생성부(230)는 각각의 전자제어유닛(500)에 대응하는 복수 개의 델타 파일을 통합적으로 생성할 수 있고, 텔레메틱스 단말기(600)의 메모리 공간을 고려하여 각각의 전자제어유닛(500)에 대응하는 복수 개의 델타 파일을 분할하여 생성할 수 있다.
또한, 델타 파일 생성부(230)는 각각의 전자제어유닛(500)에 대응하는 복수 개의 델타 파일을 분할하여 생성하는 경우, 분할 개수에 대응하는 델타 헤더를 생성할 수 있다.
또한, 델타 파일 생성부(230)는 각각의 델타 파일에 포함된 델타 블록의 위치 정보를 포함하는 델타 헤더를 생성할 수 있고, 각각의 분할된 델타 파일의 위치 정보를 포함하는 델타 헤더를 생성할 수 있다.
도 5b를 참조하면 델타 파일 생성부(230)는 추출된 각각의 델타 블록의 사이즈를 고려하여 복수 개의 델타 파일을 생성하고, 고려된 사이즈에 기초하여 전송 스케줄 정보를 생성하며, 생성된 스케줄 정보를 포함한 델타 헤더를 생성할 수 있다.
또한, 델타 파일 생성부(230)는 텔레메틱스 단말기(600)의 메모리 공간을 고려하여 복수 개의 델타 파일을 분할하여 생성할 수 있다.
또한, 델타 파일 생성부(230)는 도 5 b에 도시된 바와 같이, 복수 개의 델타 파일을 분할하여 생성하는 경우, 분할 개수에 대응하는 델타 헤더를 생성할 수 있다.
도 5c를 참조하면, 델타 파일 생성부(230)는 추출된 각각의 델타 블록 중에서 동일한 패턴의 델타 블록이 존재하는 경우, 동일한 패턴의 델타 블록을 최소화하여 복수 개의 델타 파일을 생성하고, 동일한 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보(dictionary information)를 생성하며, 생성된 딕셔너리 정보를 포함한 델타 헤더를 생성할 수 있다.
보다 상세하게는, 델타 파일 생성부(230)는 동일한 패턴의 델타 블록이 존재하는 경우, 동일한 패턴의 블록을 최소화하여 데이터의 용량을 줄일 수 있고, 텔레메틱스 단말기(600)에서 동일한 패턴의 델타 블록에 대한 각각의 위치를 판별하기 위해 딕셔너리 정보를 포함한 델타 헤더를 생성할 수 있다.
도 5c에 도시된 바와 같이, 제1 전자제어유닛에는 2, 5, 6, 24번 위치에 00, 0B, 43, 06 패턴의 블록이 있고, 제2 전자제어유닛에는 1, 4, 5, 23번 위치에 A7, 08, 43, 01 패턴의 블록이 있으며, 제3 전자제어유닛에서 3, 4, 7, 15번 위치에 0B, A6, F9, 01 패턴의 블록이 있다고 가정하자.
여기서, 델타 파일 생성부(230)는 제1 전자제어유닛 내지 제3 전자제어유닛에 대응하는 3개의 델타 파일 및 각각의 전자제어유닛의 델타 블록에 대한 위치 정보를 포함한 델타 헤더를 생성할 수 있다(제1 방법).
또한, 델타 파일 생성부(230)는 제1 전자제어유닛 내지 제3 전자제어유닛에 포함된 동일한 패턴의 델타 블록(0B, 43, 01)을 최소화여 2개의 델타 파일을 생성할 수 있고, 동일한 패턴의 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보를 포함한 델타 헤더를 생성할 수 있다(제2 방법).
제2 방법은 제1 방법에 비해 하나의 델타 파일에 대한 데이터의 용량을 줄일 수 있는 효과가 있다.
실시예에 따르면, 델타 파일 생성부(230)는 추출된 각각의 델타 파일 중에서 동일한 패턴의 델타 파일이 존재하는 경우, 동일한 패턴의 델타 파일을 최소화하여 최소 개수의 델타 파일을 생성하고, 동일한 델타 파일에 대한 각각의 위치를 나타내는 딕셔너리 정보를 생성하며, 생성된 딕셔너리 정보를 포함한 델타 헤더를 생성할 수 있다.
실시예에 따르면, 델타 파일 생성부(230)는 동일한 패턴의 델타 블록 또는 델타 파일을 색인 및 분석하기 위한 DBMS 기반의 분석 도구를 포함할 수 있다.
예를 들어, 델타 파일 생성부(230)는 주기적으로 델타 펌웨어 업데이트를 위한 델타 파일을 생성하는 경우, 각각의 전자제어유닛에 대응하는 델타 블록 또는 델타 파일에 동일한 패턴의 델타 블록 및 델타 파일이 존재할 수 있기 때문에, 이를 색인 및 분석하기 위한 DBMS 기반의 분석 도구를 포함할 수 있다.
통합 제어부(250)는 텔레메틱스 단말기(600)에 제공되는 생성된 복수 개의 델타 파일 및 생성된 델타 헤더에 대한 전송을 제어한다.
보다 상세하게는, 통합 제어부(250)는 도 5a 및 도 5b에 도시된 바와 같이, 텔레메틱스 단말기(600)의 메모리 공간을 고려하여 상기 생성된 복수 개의 델타 파일을 통합 다운로드, 분할 다운로드 및 선택 다운로드 중 적어도 하나의 스케줄링 방법으로 전송을 제어할 수 있다.
선택 다운로드 방법은 텔레메틱스 단말기(600)로부터 복수 개의 델타 파일 중에서 선택되는 입력(예를 들어, 사용자의 입력)에 대응하는 델타 파일을 다운로드하는 방법일 수 있다.
본 발명의 실시예에 따른 최적의 델타 업데이트를 지원하기 위한 관리 서버(200)는 데이터베이스(210) 및 통합 통신부(240)를 더 포함할 수 있다.
데이터베이스(210)는 운영체체 버전 정보별로 각각의 전자제어유닛에 대응하는 원본 이미지 및 업데이트 이미지를 저장할 수 있다.
예를 들어, 데이터베이스(210)는 텔레메틱스 단말기(600)와 연동되는 각각의 전자제어유닛(500)에 대한 버전 정보를 저장하지 않고, 텔레메틱스 단말기(600)의 운영체제 버전 정보만을 저장할 수 있어, 텔레메틱스 단말기(600)와 연동되는 각각의 전자제어유닛(500)을 효율적으로 관리할 수 있다.
통합 통신부(240)는 유무선 네트워크(300)를 통하여 텔레메틱스 단말기(600)로 업데이트 푸쉬 메시지를 전송하고, 텔레메틱스 단말기(600)로부터 업데이트 푸쉬 메시지에 대응하여 텔레메틱스 단말기(600)의 운영체제 및 탑재된 소프트웨어들에에 대한 버전 정보등을 포함하거나 시스템내 CPU 구동 상황등 추가적으로 단말 관리 및 업데이트에 필요한 정보를 조사하기 위한 임의의 명령들을 포함하고 있는 업데이트 요청 메시지를 수신할 수 있다.
업데이트 푸쉬 메시지는 텔레메틱스 단말기(600)의 모델명 및 모델명에 대응하는 최신의 운영체제 버전 정보를 포함할 수 있다.
이에 따라, 텔레메틱스 단말기(600)는 현재의 운영체제 버전 정보와 통합 통신부(240)로부터 수신되는 최신의 운영체제 버전 정보를 비교할 수 있고, 최신의 운영체제 버전 정보보다 하위의 버전일 경우, 업데이트 푸쉬 메시지에 대응하는 업데이트 요청 메시지를 통합 통신부(240)로 전송할 수 있다.
통합 통신부(240)는 텔레메틱스 단말기(600)로부터 업데이트 요청 메시지를 수신하면, 생성된 복수 개의 델타 파일 및 상기 생성된 델타 헤더를 전송할 수 있고, 텔레메틱스 단말기(600)로부터 델타 업데이트 결과 메시지를 수신할 수 있다.
데이터베이스(210)는 델타 업데이트 결과 메시지를 참조하여 텔레메틱스 단말기의 업데이트된 운영체제 버전 정보를 저장할 수 있다.
실시예에 따르면, 통합 통신부(240)는 텔레메틱스 단말기(600) 간의 통신 링크 확립을 위한 인증 메시지를 송수신할 수 있고, 통합 제어부(250)는 텔레메틱스 단말기(600)와의 통신 링크를 제어할 수 있다.
또한, 통합 통신부(240)는 텔레메틱스 단말기(600)와 연동되는 사용자 단말기(400)를 통하여 업데이트 요청 메시지를 수신할 수 있다.
여기서, 사용자 단말기(100)는 개인 정보 단말기(PDA, Personal Digital Assistant), 스마트 폰(Smart Phone), IMT-2000(International Mobile Telecommunication 2000) 단말기, WCDMA(Wideband Code Division Multiple Access) 단말기, UMTS(Universal Mobile Telecommunication Service) 단말기 및 태블릿 PC 등 이동통신 단말기를 포함할 수 있다.
텔레메틱스 단말기(600)는 사용자 단말기(400)의 원격 제어에 기초하여 복수 개의 델타 파일에 대한 수신을 제어하고, 각각의 전자제어유닛(500)에 대한 업데이트를 제어할 수 있다. 이하, 도 6을 참조하여 텔레메틱스 단말기(600)를 상세히 설명하기로 한다.
도 6은 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기를 도시한 블록도이다.
도 6을 참조하면, 텔레메틱스 단말기(600)는 통신부(610), 생성부(620), 업데이트 제공부(630) 및 제어부(640)를 포함한다.
통신부(610)는 관리 서버(200)로부터 복수 개의 델타 파일 및 복수 개의 델타 파일에 참조되는 델타 헤더를 수신하고, 델타 헤더를 참조하여 각각의 전자제어유닛으로부터 각각의 원본 이미지를 수신한다.
여기서, 관리 서버(200)는 압축 효율을 고려한 압축 알고리즘에 기초하여 원본 이미지 및 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출하는 것을 특징으로 할 수 있다.
실시예에 따르면, 통신부(610)는 메모리 공간을 고려하여 상기 생성된 복수 개의 델타 파일을 통합 다운로드, 분할 다운로드 및 선택 다운로드 중 적어도 하나의 스케줄링 방법으로 수신할 수 있다.
또한, 통신부(610)는 복수 개의 델타 파일에 참조되는 델타 헤더를 수신하기 전에 관리 서버(200)와의 통신 링크를 확립할 수 있다.
예를 들어, 통신부(610)는 관리 서버(200)로부터 업데이트 푸쉬 메시지를 수신하고, 업데이트 푸시 메시지에 대응하여 관리 서버(200)로 운영체제 버전 정보를 포함한 업데이트 요청 메시지를 전송할 수 있다.
생성부(620)는 수신된 복수 개의 델타 파일로부터 수신된 각각의 원본 이미지에 대응하는 각각의 델타 블록을 추출하고, 추출된 각각의 델타 블록의 위치 정보를 참조하여 수신된 각각의 원본 이미지에 대한 각각의 업데이트 이미지를 생성한다.
실시예에 따르면, 생성부(620)는 동일한 패턴의 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보를 참조하여 상기 동일한 패턴의 델타 블록에 대응하는 적어도 2개 이상의 원본 이미지에 대한 적어도 2개 이상의 업데이트 이미지를 생성할 수 있다.
딕셔너리 정보에 대한 상세한 설명은 전술한 도 5c를 참조하기로 한다.
업데이트 제공부(630)는 각각의 업데이트 이미지에 대응하는 각각의 전자제어유닛(500)에 대한 업데이트를 제공한다.
실시예에 따르면, 업데이트 제공부(630)는 각각의 전자제어유닛(500)이 운영체제 기반의 유닛인 경우, 업데이트 이미지에 대한 펌웨어 업데이트를 수행하는 펌웨어 업데이트 어젠트(firmware update agent)를 포함할 수 있다.
또한, 업데이트 제공부(630)는 비정상적인 인터럽트(예를 들어, 비정상적인 종료, 전원 차단, 하드웨어 결함)에 대응하여 제공된 업데이트를 복구(또는, 롤백(rollback))할 수 있다.
또한, 업데이트 제공부(630)는 업데이트 순서를 선정하고, 선정된 업데이트 순서에 따라 각각의 업데이트 이미지에 대응하는 전자제어유닛(500)에 대한 업데이트를 제공할 수 있다.
실시예에 따르면, 업데이트 제공부(630)는 내장 메모리의 저장 공간을 고려하여 업데이트 순서를 선정하고, 선정된 업데이트 순서에 따라 각각의 업데이트 이미지에 대응하는 전자제어유닛(500)에 대한 업데이트를 제공할 수 있다.
예를 들어, 생성부(620)는 선정된 업데이트 순서에 기초하여 복수 개의 델타 데이터로부터 제1 순위에 대응하는 제1 원본 이미지에 대한 제1 업데이트 이미지를 생성하고, 업데이트 제공부(630)는 제1 업데이트 이미지에 대응하는 제1 전자제어유닛에 대한 업데이트를 제공할 수 있다,
여기서, 제어부(640)는 제1 전자제어유닛으로부터 업데이트 완료 메시지를 수신하면, 제1 원본 이미지 및 제1 업데이트 이미지 중 적어도 하나에 대한 제거를 제어할 수 있고, 제2 순위에 대한 업데이트를 제어할 수 있다.
업데이트 순서는 원본 이미지의 용량별 순서, 스케줄링 방법에 의해 다운로드되는 델타 파일의 순서. 사용자의 선택 입력에 따른 순서 중 적어도 하나에 기초하여 결정될 수 있다.
예를 들어, 텔레메틱스 단말기(600)는 용량이 많이 차지하는 원본 이미지의 순서로 업데이트를 진행하고, 업데이트가 완료되면 관련된 이미지를 삭제하여 제한된 내장 메모리의 저장 공간을 효율적으로 사용할 수 있다.
제어부(640)는 복수 개의 델타 파일에 대한 수신을 제어하고, 상기 각각의 전자제어유닛(500)에 대한 업데이트를 제어한다.
보다 상세하게는, 제어부(640)는 델타 헤더의 스케줄 정보에 기초하여 제1 순위에 대응하는 제1 전자제어유닛의 업데이트 이미지에 대한 생성을 제어하고, 상기 제1 전자제어유닛의 업데이트가 완료되면 상기 제1 전자제어유닛의 원본 이미지 및 업데이트 이미지에 대한 제거와 제2 순위에 대응하는 제2 전자제어유닛에 대한 업데이트를 제어할 수 있다.
예를 들어, 제어부(640)는 텔레메틱스 단말기(600) 자체의 데이터 저장 용량은 한정될 수 있기 때문에, 순차적으로 각각의 전자제어유닛(500)에 대한 업데이트를 제어할 수 있다.
여기서, 통신부(610)는 각각의 전자제어유닛에 대한 업데이트가 완료되면, 관리 서버(200)로 업데이트된 운영체제의 버전 정보를 전송할 수 있다.
실시예에 따르면, 제어부(640)는 사용자 단말기(400)의 원격 제어에 기초하여 복수 개의 델타 파일에 대한 수신을 제어하고, 각각의 전자제어유닛에 대한 업데이트를 제어할 수 있다.
도 7은 본 발명의 실시예에 따른 최적의 델타 업데이트를 지원하기 위한 관리 서버의 동작 방법을 도시한 흐름도이다.
도 7을 참조하면, 관리 서버는 단계 710에서, 각각의 전자제어유닛에 대응하는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점, 블록의 변화가 발생된 지점 및 블록의 길이 등 블록의 위치 정보를 추출하고, 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출한다.
보다 상세하게는, 관리 서버는 단계 710에서, 볼록 이동 방식에 기초하여 원본 이미지 및 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출할 수 있다.
실시예에 따르면, 관리 서버는 단계 710에서, 압축 효율을 고려한 압축 알고리즘에 기초하여 원본 이미지 및 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 상기 각각의 델타 블록을 추출할 수 있다.
여기서, 압축 알고리즘은 선 압축 알고리즘, 후 압축 알고리즘 및 이중 압축 알고리즘 중 적어도 하나를 포함할 수 있다.
관리 서버는 단계 720에서, 추출된 각각의 델타 블록을 패키징하여 복수 개의 델타 파일을 생성하고, 생성된 복수 개의 델타 파일에 참조되는 델타 헤더를 생성한다.
보다 상세하게는, 관리 서버는 단계 720에서, 각각의 전자제어유닛에 대응하는 복수 개의 델타 파일을 생성하고, 상기 블록의 위치 정보를 포함하는 델타 헤더를 생성할 수 있다.
또한, 관리 서버는 단계 720에서, 텔레메틱스 단말기의 메모리 공간을 고려하여 복수 개의 델타 파일을 분할하여 생성할 수 있다.
또한, 관리 서버는 단계 720에서, 추출된 각각의 델타 블록 중에서 동일한 패턴의 델타 블록이 존재하는 경우, 동일한 패턴의 델타 블록을 최소화하여 복수 개의 델타 파일을 생성하고, 동일한 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보를 생성하며, 생성된 딕셔너리 정보를 포함한 델타 헤더를 생성할 수 있다.
관리 서버는 단계 730에서, 텔레메틱스 단말기로 생성된 복수 개의 델타 파일 및 생성된 델타 헤더를 전송한다.
보다 상세하게는, 관리 서버는 단계 730에서, 텔레메틱스 단말기의 메모리 공간을 고려하여 상기 생성된 복수 개의 델타 파일을 통합 다운로드, 분할 다운로드 및 선택 다운로드 중 적어도 하나의 스케줄링 방법으로 전송할 수 있다.
실시예에 따르면, 관리 서버는 운영체체 버전 정보별로 각각의 전자제어유닛에 대응하는 원본 이미지 및 업데이트 이미지를 저장하는 단계를 더 포함할 수 있다.
또한, 관리 서버는 텔레메틱스 단말기로 업데이트 푸쉬 메시지를 전송하고, 텔레메틱스 단말기로부터 업데이트 푸쉬 메시지에 대응하여 텔레메틱스 단말기의 운영체제 버전 정보를 포함한 업데이트 요청 메시지를 수신하는 단계를 더 포함할 수 있다.
여기서, 텔레메틱스 단말기는 사용자 단말기의 원격 제어에 기초하여 복수 개의 델타 파일에 대한 수신을 제어하고, 각각의 전자제어유닛에 대한 업데이트를 제어할 수 있다.
도 8은 본 발명의 실시예에 따른 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기의 동작 방법을 도시한 흐름도이다.
도 8을 참조하면, 텔레메틱스 단말기는 단계 810에서, 관리 서버로부터 복수 개의 델타 파일 및 복수 개의 델타 파일에 참조되는 델타 헤더를 수신하고, 델타 헤더를 참조하여 각각의 전자제어유닛으로부터 각각의 원본 이미지를 수신한다.
여기서, 관리 서버는 압축 효율을 고려한 압축 알고리즘에 기초하여 원본 이미지 및 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출하는 것을 특징으로 할 수 있다.
실시예에 따르면, 텔레메틱스 단말기는 단계 810에서, 메모리 공간을 고려하여 상기 생성된 복수 개의 델타 파일을 통합 다운로드, 분할 다운로드 및 선택 다운로드 중 적어도 하나의 스케줄링 방법으로 수신할 수 있다.
텔레메틱스 단말기는 단계 820에서, 수신된 복수 개의 델타 파일로부터 수신된 각각의 원본 이미지에 대응하는 각각의 델타 블록을 추출하고, 추출된 각각의 델타 블록의 위치 정보를 참조하여 수신된 각각의 원본 이미지에 대한 각각의 업데이트 이미지를 생성한다.
실시예에 따르면, 텔레메틱스 단말기는 단계 820에서, 동일한 패턴의 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보를 참조하여 상기 동일한 패턴의 델타 블록에 대응하는 적어도 2개 이상의 원본 이미지에 대한 적어도 2개 이상의 업데이트 이미지를 생성할 수 있다.
텔레메틱스 단말기는 단계 830에서, 각각의 업데이트 이미지에 대응하는 각각의 전자제어유닛에 대한 업데이트를 제공한다.
실시예에 따르면, 텔레메틱스 단말기는 단계 830에서, 각각의 전자제어유닛이 운영체제 기반의 유닛인 경우, 업데이트 이미지에 대한 펌웨어 업데이트를 수행하는 펌웨어 업데이트 어젠트를 포함할 수 있다.
도 9는 본 발명의 실시예에 따른 차량의 전자제어유닛의 업데이트를 위한 업데이트 시스템을 도시한 블록도이다.
업데이트 시스템은 관리 서버(200), 텔레메틱스 단말기(600) 및 복수 개의 전자제어유닛(500)을 포함할 수 있다.
도 9를 참조하면, 단계 S1에서, 관리 서버(200)는 텔레메틱스 단말기(600)로 업데이트 푸쉬 메시지를 전송할 수 있다.
업데이트 푸쉬 메시지는 텔레메틱스 단말기(600)의 모델명 및 모델명에 대응하는 최신의 운영체제 버전 정보를 포함할 수 있다.
단계 S2에서, 텔레메틱스 단말기(600)는 관리 서버(200)로 업데이트 푸쉬 메시지에 대응하여 텔레메틱스 단말기(600)의 운영체제 및 탑재된 소프트웨어들에에 대한 버전 정보등을 포함하거나 시스템내 CPU 구동 상황등 추가적으로 단말 관리 및 업데이트에 필요한 정보를 조사하기 위한 임의의 명령들을 포함하고 있는 업데이트 요청 메시지를 수신할 수 있다.
여기서, 텔레메틱스 단말기(600)는 현재의 운영체제 버전 정보와 관리 서버(200)로부터 수신되는 최신의 운영체제 버전 정보를 비교할 수 있고, 최신의 운영체제 버전 정보보다 하위의 버전일 경우, 업데이트 푸쉬 메시지에 대응하는 업데이트 요청 메시지를 관리 서버(200)로 전송할 수 있다.
단계 S3에서, 관리 서버는 전자제어 유닛별(500) 델타 업데이트 이력을 검색할 수 있다.
여기서, 관리 서버(200)는 운영체체 버전 정보별로 각각의 전자제어유닛에 대응하는 원본 이미지 및 업데이트 이미지를 저장할 수 있고, 운영체체 버전 정보별로 델타 업데이트 이력을 검색할 수 있다.
단계 S4에서, 관리 서버(200)는 각각의 전자제어유닛에 대응하는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점, 블록의 변화가 발생된 지점 및 블록의 길이 등 블록의 위치 정보를 추출하고, 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출한다.
여기서, 관리 서버(200)는 볼록 이동 방식에 기초하여 원본 이미지 및 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출할 수 있다.
또한, 관리 서버(200)는 압축 효율을 고려한 압축 알고리즘에 기초하여 원본 이미지 및 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 상기 각각의 델타 블록을 추출할 수 있다.
단계 S5에서, 관리 서버(200)는 추출된 각각의 델타 블록을 패키징하여 복수 개의 델타 파일을 생성하고, 생성된 복수 개의 델타 파일에 참조되는 델타 헤더를 생성한다.
여기서, 관리 서버(200)는 각각의 전자제어유닛(500)에 대응하는 복수 개의 델타 파일을 생성하고, 블록의 위치 정보를 포함하는 델타 헤더를 생성할 수 있다.
또한, 관리 서버(200)는 각각의 전자제어유닛(500)에 대응하는 복수 개의 델타 파일을 통합적으로 생성할 수 있고, 텔레메틱스 단말기(600)의 메모리 공간을 고려하여 각각의 전자제어유닛(500)에 대응하는 복수 개의 델타 파일을 분할하여 생성할 수 있다.
또한, 관리 서버(200)는 각각의 전자제어유닛(500)에 대응하는 복수 개의 델타 파일을 분할하여 생성하는 경우, 분할 개수에 대응하는 델타 헤더를 생성할 수 있다.
또한, 관리 서버(200)는 추출된 각각의 델타 블록의 사이즈를 고려하여 복수 개의 델타 파일을 생성하고, 고려된 사이즈에 기초하여 전송 스케줄 정보를 생성하며, 생성된 스케줄 정보를 포함한 델타 헤더를 생성할 수 있다.
또한, 관리 서버(200)는 추출된 각각의 델타 블록 중에서 동일한 패턴의 델타 블록이 존재하는 경우, 동일한 패턴의 델타 블록을 최소화하여 복수 개의 델타 파일을 생성하고, 동일한 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보를 생성하며, 생성된 딕셔너리 정보를 포함한 델타 헤더를 생성할 수 있다.
단계 S6에서, 관리 서버(200)는 텔레메틱스 단말기(600)에 제공되는 복수 개의 델타 파일 및 생성된 델타 헤더를 전송할 수 있다.
여기서, 관리 서버(200)는 텔레메틱스 단말기(600)의 메모리 공간을 고려하여 상기 생성된 복수 개의 델타 파일을 통합 다운로드, 분할 다운로드 및 선택 다운로드 중 적어도 하나의 스케줄링 방법으로 전송할 수 있다.
단계 S7에서, 텔레메틱스 단말기(600)는 복수 개의 델타 파일 및 생성된 델타 헤더 수신이 완료되면, 관리 서버(200)로 전송 완료에 대한 전송 완료 메시지를 전송할 수 있다.
단계 S8에서, 텔레메틱스 단말기(600)는 델타 헤더를 참조하여 펌웨어 업데이트가 필요한 각각의 전자제어유닛(500)을 대상에게 업데이트 모드 요청을 할 수 있다.
단계 S9에서, 각각의 전자제어유닛(500)은 업데이트 모드 요청에 대응하여 원본 이미지를 전송할 수 있다.
단계 S10에서, 텔레메틱스 단말기(600)는 수신된 복수 개의 델타 파일로부터 수신된 각각의 원본 이미지에 대응하는 각각의 델타 블록을 추출하고, 추출된 각각의 델타 블록의 위치 정보를 참조하여 수신된 각각의 원본 이미지에 대한 각각의 업데이트 이미지를 생성할 수 있다.
여기서, 텔레메틱스 단말기(600)는 동일한 패턴의 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보를 참조하여 상기 동일한 패턴의 델타 블록에 대응하는 적어도 2개 이상의 원본 이미지에 대한 적어도 2개 이상의 업데이트 이미지를 생성할 수 있다.
단계 S11에서, 텔레메틱스 단말기(600)는 각각의 전자제어유닛(500)에 대응하는 업데이트 이미지를 전송할 수 있다.
단계 S12에서, 각각의 전자제어유닛(500)은 업데이트 이미지를 쓰기(writing)하여 펌웨어 업데이트를 수행할 수 있다.
여기서, 각각의 전자제어유닛(500)은 독립적인 운영체제를 포함하는 경우, 업데이트 이미지에 대한 펌웨어 업데이트를 수행하는 펌웨어 업데이트 어젠트를 포함할 수 있다.
단계 S13에서, 각각의 전자제어유닛(500)은 펌웨어 업데이트가 완료되면, 텔레메틱스 단말기(600)로 펌웨어 업데이트 결과를 전송할 수 있다.
단계 S14에서, 텔레메틱스 단말기(600)는 텔레메틱스 단말기(600) 자체의 운영체제에 대한 펌웨어 업데이트를 수행할 수 있다.
단계 S15에서, 텔레메틱스 단말기(600)는 텔레메틱스 단말기(600) 자체의 운영체제에 대한 펌웨어 업데이트가 완료되면, 관리 서버(200)로 펌웨어 업데이트 결과를 전송할 수 있다.
여기서, 펌웨어 업데이트 결과는 텔레메틱스 단말기(600)의 업데이트된 운영체제 버전 정보를 포함할 수 있다.
단계 S16에서, 관리 서버(200)는 텔레메틱스 단말기(600)의 업데이트된 운영체제 버전 정보를 저장할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
100: 업데이트 시스템
200: 관리 서버
210: 데이터베이스
220: 델타 블록 추출부
230: 델타 파일 생성부
240: 통합 통신부
250: 통합 제어부
300: 유무선 네트워크
400: 사용자 단말기
500: 각각의 전자제어유닛
600: 텔레메틱스 단말기
610: 통신부
620: 생성부
630: 업데이트 제공부
640: 제어부

Claims (22)

  1. 관리 서버 및 텔레메틱스 단말기를 포함하는 최적의 델타 업데이트를 지원하기 위한 시스템에 있어서,
    상기 관리 서버는,
    각각의 전자제어유닛에 대응하는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점, 블록의 변화가 발생된 지점 및 블록의 길이 등 블록의 위치 정보를 추출하고, 상기 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출하는 델타 블록 추출부;
    상기 추출된 각각의 델타 블록을 패키징하여 복수 개의 델타 파일을 생성하고, 상기 생성된 복수 개의 델타 파일에 참조되는 델타 헤더를 생성하는 델타 파일 생성부; 및
    텔레메틱스 단말기에 제공되는 상기 생성된 복수 개의 델타 파일 및 상기 생성된 델타 헤더에 대한 전송을 제어하는 통합 제어부를 포함하고,
    상기 델타 블록 추출부는 압축 효율을 고려한 압축 알고리즘에 기초하여 상기 원본 이미지 및 상기 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 상기 각각의 델타 블록을 추출하되, 압축된 업데이트 이미지에서 압축된 원본 이미지의 차를 연산하는 선 압축 알고리즘, 업데이트 이미지에서 원본 이미지의 차를 연산하고 연산된 차의 값을 압축하는 후 압축 알고리즘 및 상기 선 압축 알고리즘 및 후 압축 알고리즘 중 적어도 하나에 의해 생성된 후보 델타 블록을 한번 더 압축하는 이중 압축 알고리즘을 포함하는 압축 알고리즘에 기초하여 복수의 후보 델타 블록을 생성하고, 후보 델타 블록 중 가장 적은 데이터 용량을 갖는 델타 블록을 선택하고,
    상기 압축 알고리즘은 상기 원본 이미지 및 상기 업데이트 이미지에 대한 블록의 속성 패턴을 고려하여 선택되고,
    상기 델타 파일 생성부는 상기 추출된 각각의 델타 블록의 사이즈를 고려하여 상기 복수 개의 델타 파일을 생성하고, 상기 고려된 사이즈에 기초하여 전송 스케줄 정보를 생성하고,
    상기 텔레메틱스 단말기는 상기 델타 헤더를 참조하여 각각의 전자제어유닛에 대응하는 원본 이미지를 상기 각각의 전자제어유닛으로부터 수신하고, 델타 블록의 위치 정보를 참조하여 각각의 전자제어유닛에 대한 업데이트를 순차적으로 수행하는 것을 특징으로 하는
    최적의 델타 업데이트를 지원하기 위한 시스템.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    상기 델타 블록 추출부는
    상기 압축 효율에 영향을 미치는 숫자 정보, 기호 정보, 문자 정보 및 이미지 정보 중 적어도 하나를 포함하는 상기 원본 이미지 및 상기 업데이트 이미지에 대한 상기 블록의 속성 패턴을 분석하여 상기 압축 알고리즘을 선택하고, 상기 선택된 압축 알고리즘에 기초하여 상기 각각의 델타 블록을 추출하는
    최적의 델타 업데이트를 지원하기 위한 시스템.
  6. 제1항에 있어서,
    상기 델타 파일 생성부는
    상기 각각의 전자제어유닛에 대응하는 상기 복수 개의 델타 파일을 생성하고, 상기 블록의 위치 정보를 포함하는 델타 헤더를 생성하는
    최적의 델타 업데이트를 지원하기 위한 시스템.
  7. 제1항에 있어서,
    상기 델타 파일 생성부는
    상기 추출된 각각의 델타 블록의 사이즈를 고려하여 상기 복수 개의 델타 파일을 생성하고, 상기 고려된 사이즈에 기초하여 전송 스케줄 정보를 생성하며, 상기 생성된 스케줄 정보를 포함한 상기 델타 헤더를 생성하는
    최적의 델타 업데이트를 지원하기 위한 시스템.
  8. 제1항에 있어서,
    상기 델타 파일 생성부는
    상기 추출된 각각의 델타 블록 중에서 동일한 패턴의 델타 블록이 존재하는 경우, 상기 동일한 패턴의 델타 블록을 최소화하여 상기 복수 개의 델타 파일을 생성하고, 상기 동일한 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보(dictionary information)를 생성하며, 상기 생성된 딕셔너리 정보를 포함한 상기 델타 헤더를 생성하는
    최적의 델타 업데이트를 지원하기 위한 시스템.
  9. 제1항에 있어서,
    상기 통합 제어부는
    상기 텔레메틱스 단말기의 메모리 공간을 고려하여 상기 생성된 복수 개의 델타 파일을 통합 다운로드, 분할 다운로드 및 선택 다운로드 중 적어도 하나의 스케줄링 방법으로 전송을 제어하는
    최적의 델타 업데이트를 지원하기 위한 시스템.
  10. 제1항에 있어서,
    운영체체 버전 정보별로 상기 각각의 전자제어유닛에 대응하는 상기 원본 이미지 및 상기 업데이트 이미지를 저장하는 데이터베이스; 및
    상기 텔레메틱스 단말기로 업데이트 푸쉬 메시지를 전송하고, 상기 텔레메틱스 단말기로부터 상기 업데이트 푸쉬 메시지에 대응하여 상기 텔레메틱스 단말기의 운영체제 버전 정보를 포함한 업데이트 요청 메시지를 수신하는 통합 통신부를 더 포함하는
    최적의 델타 업데이트를 지원하기 위한 시스템.
  11. 제10항에 있어서,
    상기 통합 통신부는
    상기 텔레메틱스 단말기와 연동되는 사용자 단말기를 통하여 상기 업데이트 요청 메시지를 수신하는
    최적의 델타 업데이트를 지원하기 위한 시스템.
  12. 관리 서버로부터 복수 개의 델타 파일 및 상기 복수 개의 델타 파일에 참조되는 델타 헤더를 수신하고, 상기 델타 헤더를 참조하여 차량 내의 각각의 전자제어유닛으로부터 각각의 원본 이미지를 수신하는 통신부;
    상기 수신된 복수 개의 델타 파일로부터 상기 수신된 각각의 원본 이미지에 대응하는 각각의 델타 블록을 추출하고, 상기 추출된 각각의 델타 블록의 위치 정보를 참조하여 상기 수신된 각각의 원본 이미지에 대한 각각의 업데이트 이미지를 생성하는 생성부;
    상기 각각의 업데이트 이미지에 대응하는 상기 각각의 전자제어유닛에 대한 업데이트를 제공하는 업데이트 제공부; 및
    상기 복수 개의 델타 파일에 대한 수신을 제어하고, 상기 각각의 전자제어유닛에 대한 업데이트를 제어하는 제어부를 포함하고,
    상기 업데이트 제공부는 업데이트 순서를 선정하고, 상기 선정된 업데이트 순서에 따라 상기 각각의 업데이트 이미지에 대응하는 상기 전자제어유닛에 대한 업데이트를 제공하되, 용량을 많이 차지하는 원본 이미지의 순서로 업데이트를 진행하고, 전자제어유닛으로부터 업데이트 완료 메시지를 수신하면 관련된 이미지를 삭제하는
    최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기.
  13. 제12항에 있어서,
    상기 관리 서버는
    압축 효율을 고려한 압축 알고리즘에 기초하여 상기 원본 이미지 및 상기 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 상기 각각의 델타 블록을 추출하는 것을 특징으로 하는 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기.
  14. 제12항에 있어서,
    상기 통신부는
    메모리 공간을 고려하여 상기 생성된 복수 개의 델타 파일을 통합 다운로드, 분할 다운로드 및 선택 다운로드 중 적어도 하나의 스케줄링 방법으로 수신하는 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기.
  15. 제12항에 있어서,
    상기 통신부는
    상기 관리 서버로부터 업데이트 푸쉬 메시지를 수신하고, 상기 업데이트 푸쉬 메시지에 대응하여 상기 관리 서버로 운영체제 버전 정보를 포함한 업데이트 요청 메시지를 전송하는 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기.
  16. 제12항에 있어서,
    상기 생성부는
    동일한 패턴의 델타 블록에 대한 각각의 위치를 나타내는 딕셔너리 정보를 참조하여 상기 동일한 패턴의 델타 블록에 대응하는 적어도 2개 이상의 원본 이미지에 대한 적어도 2개 이상의 업데이트 이미지를 생성하는 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기.
  17. 삭제
  18. 제12항에 있어서,
    상기 통신부는
    상기 각각의 전자제어유닛에 대한 업데이트가 완료되면, 상기 관리 서버로 업데이트된 운영체제의 버전 정보를 전송하는 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기.
  19. 제12항에 있어서,
    상기 제어부는
    사용자 단말기의 원격 제어에 기초하여 상기 복수 개의 델타 파일에 대한 수신을 제어하고, 상기 각각의 전자제어유닛에 대한 업데이트를 제어하는 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기.
  20. 제12항에 있어서,
    상기 제어부는
    상기 델타 헤더의 스케줄 정보에 기초하여 제1 순위에 대응하는 제1 전자제어유닛의 업데이트 이미지에 대한 생성을 제어하고, 상기 제1 전자제어유닛의 업데이트가 완료되면 상기 제1 전자제어유닛의 원본 이미지 및 업데이트 이미지에 대한 제거와 제2 순위에 대응하는 제2 전자제어유닛에 대한 업데이트를 제어하는 최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기.
  21. 각각의 전자제어유닛에 대응하는 원본 이미지 및 업데이트 이미지에 대한 블록의 시작 지점, 블록의 변화가 발생된 지점 및 블록의 길이 등 블록의 위치 정보를 추출하고, 상기 블록의 변화가 발생된 지점에 대응하는 각각의 델타 블록을 추출하는 단계;
    상기 추출된 각각의 델타 블록을 패키징하여 복수 개의 델타 파일을 생성하고, 상기 생성된 복수 개의 델타 파일에 참조되는 델타 헤더를 생성하는 단계;
    상기 추출된 각각의 델타 블록의 사이즈를 고려하여 상기 복수 개의 델타 파일을 생성하고, 상기 고려된 사이즈에 기초하여 전송 스케줄 정보를 생성하는 단계;
    텔레메틱스 단말기로 상기 생성된 복수 개의 델타 파일 및 상기 생성된 델타 헤더를 상기 전송 스케줄 정보에 기초하여 전송하는 단계; 및
    상기 텔레메틱스 단말기는 상기 델타 헤더를 참조하여 각각의 전자제어유닛에 대응하는 원본 이미지를 상기 각각의 전자제어유닛으로부터 수신하고, 델타 블록의 위치 정보를 참조하여 각각의 전자제어유닛에 대한 업데이트를 순차적으로 수행하는 단계를 포함하고,
    상기 델타 블록을 추출하는 단계는 압축 효율을 고려한 압축 알고리즘에 기초하여 상기 원본 이미지 및 상기 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 상기 각각의 델타 블록을 추출하되, 압축된 업데이트 이미지에서 압축된 원본 이미지의 차를 연산하는 선 압축 알고리즘, 업데이트 이미지에서 원본 이미지의 차를 연산하고 연산된 차의 값을 압축하는 후 압축 알고리즘 및 상기 선 압축 알고리즘 및 후 압축 알고리즘 중 적어도 하나에 의해 생성된 후보 델타 블록을 한번 더 압축하는 이중 압축 알고리즘을 포함하는 압축 알고리즘에 기초하여 복수의 후보 델타 블록을 생성하고, 후보 델타 블록 중 가장 적은 데이터 용량을 갖는 델타 블록을 선택하는 것을 특징으로 하고,
    상기 압축 알고리즘은 상기 원본 이미지 및 상기 업데이트 이미지에 대한 블록의 속성 패턴을 고려하여 선택되는
    최적의 델타 업데이트를 지원하기 위한 방법.
  22. 관리 서버로부터 복수 개의 델타 파일 및 상기 복수 개의 델타 파일에 참조되는 델타 헤더를 수신하고, 상기 델타 헤더를 참조하여 차량 내의 각각의 전자제어유닛으로부터 각각의 원본 이미지를 수신하는 단계;
    상기 수신된 복수 개의 델타 파일로부터 상기 수신된 각각의 원본 이미지에 대응하는 각각의 델타 블록을 추출하고, 상기 추출된 각각의 델타 블록의 위치 정보를 참조하여 상기 수신된 각각의 원본 이미지에 대한 각각의 업데이트 이미지를 생성하는 단계; 및
    상기 각각의 업데이트 이미지에 대응하는 상기 각각의 전자제어유닛에 대한 업데이트를 제공하는 단계를 포함하고,
    상기 업데이트를 제공하는 단계는 업데이트 순서를 선정하고, 상기 선정된 업데이트 순서에 따라 상기 각각의 업데이트 이미지에 대응하는 상기 전자제어유닛에 대한 업데이트를 제공하되, 용량을 많이 차지하는 원본 이미지의 순서로 업데이트를 진행하고, 전자제어유닛으로부터 업데이트 완료 메시지를 수신하면 관련된 이미지를 삭제하는 것을 특징으로 하는
    최적의 델타 업데이트를 제공하기 위한 텔레메틱스 단말기의 동작 방법.
KR1020150116555A 2015-08-19 2015-08-19 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법 KR101746934B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150116555A KR101746934B1 (ko) 2015-08-19 2015-08-19 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150116555A KR101746934B1 (ko) 2015-08-19 2015-08-19 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법

Publications (2)

Publication Number Publication Date
KR20170022062A KR20170022062A (ko) 2017-03-02
KR101746934B1 true KR101746934B1 (ko) 2017-06-14

Family

ID=58426794

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150116555A KR101746934B1 (ko) 2015-08-19 2015-08-19 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR101746934B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230072185A (ko) * 2021-11-17 2023-05-24 엘지전자 주식회사 기능 업그레이드가 가능한 전자 기기, 전자 기기의 기능을 업그레이드하는 서버, 및 전자 기기의 기능을 업그레이드하는 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050256614A1 (en) * 2004-05-13 2005-11-17 General Motors Corporation Method and system for remote reflash
US20140282470A1 (en) * 2013-03-13 2014-09-18 Arynga Inc. Remote transfer of electronic images to a vehicle

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110092007A (ko) 2010-02-08 2011-08-17 주식회사 만도 차량의 소프트웨어 다운로드 시스템 및 방법
KR101335223B1 (ko) 2011-10-21 2013-11-29 주식회사 현대케피코 차량용 전자제어장치의 리프로그래밍 방법 및 리프로그래밍 전자제어장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050256614A1 (en) * 2004-05-13 2005-11-17 General Motors Corporation Method and system for remote reflash
US20140282470A1 (en) * 2013-03-13 2014-09-18 Arynga Inc. Remote transfer of electronic images to a vehicle

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Kiyohara, Ryozo, Koichi Tanaka, and Yoshiaki Terashima. "S/W upgrade for on-vehicle information devices." Consumer Electronics (ICCE), 2012 IEEE International Conference on. IEEE, 2012.

Also Published As

Publication number Publication date
KR20170022062A (ko) 2017-03-02

Similar Documents

Publication Publication Date Title
US7401065B2 (en) System for downloading contents, and client terminal for downloading contents from contents server
EP2608585B1 (en) Method, device and system for triggering terminal operation
US9992055B2 (en) Disseminating commands from a DMS server to fielded devices using an extendable command architecture
CN111061678B (zh) 业务数据处理方法、装置、计算机设备和存储介质
CN103491522B (zh) 终端适配方法和装置
CN111142905A (zh) 一种ota升级方法、ota服务器及ota升级系统
CN103024782A (zh) 一种基站软件版本管理的方法和系统
CN105917613A (zh) 软件升级方法及设备
CN104881454A (zh) 参数的更新方法及系统
CN103164232A (zh) 更新智能终端操作系统的方法、系统以及计算机
CN111176706A (zh) 终端升级方法、装置、电子设备及存储介质
KR101746934B1 (ko) 최적의 델타 업데이트를 지원 및 제공하기 위한 관리 서버, 텔레메틱스 단말기 및 그 동작 방법
CN105740298A (zh) 文件处理方法、装置及服务端设备
CN100556192C (zh) 移动终端信息自动上报的方法
CN113986313A (zh) 软件升级方法、装置、电子设备以及存储介质
US9854429B2 (en) Mobile terminal configuration method and system
CN105511273A (zh) 一种客户端运行管理方法及客户端
CN103324187A (zh) 一种汽车诊断设备的数据更新方法和汽车诊断设备
CN112134908B (zh) 应用适配方法及服务器、介质、车载多媒体系统
CN104063377A (zh) 信息处理方法和使用其的电子设备
CN102130786B (zh) 更新单板特性的方法和装置
CN115167907A (zh) 终端设备升级方法、服务器、电子设备及存储介质
US8374593B2 (en) Method of providing mobile application
CN106462421B (zh) 电信设备以及用于更新电信设备中的软件的方法
CN110825406A (zh) 一种软件升级的方法及相关设备

Legal Events

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