KR101155203B1 - 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법 - Google Patents

패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법 Download PDF

Info

Publication number
KR101155203B1
KR101155203B1 KR1020100131101A KR20100131101A KR101155203B1 KR 101155203 B1 KR101155203 B1 KR 101155203B1 KR 1020100131101 A KR1020100131101 A KR 1020100131101A KR 20100131101 A KR20100131101 A KR 20100131101A KR 101155203 B1 KR101155203 B1 KR 101155203B1
Authority
KR
South Korea
Prior art keywords
package file
application
metadata
installing
downloading
Prior art date
Application number
KR1020100131101A
Other languages
English (en)
Inventor
계동원
Original Assignee
(주)네오위즈게임즈
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)네오위즈게임즈 filed Critical (주)네오위즈게임즈
Priority to KR1020100131101A priority Critical patent/KR101155203B1/ko
Priority to PCT/KR2011/009796 priority patent/WO2012086985A2/ko
Priority to TW100147477A priority patent/TW201232403A/zh
Application granted granted Critical
Publication of KR101155203B1 publication Critical patent/KR101155203B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

본 발명은 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법에 관한 것으로, 보다 상세하게는 어플리케이션을 설치하기 위해 어플리케이션의 설치를 위한 패키지 파일을 다운로드하면서 어플리케이션 설치를 병행하는 단말기 및 그 방법에 관한 것이다.
이를 위하여, 본 발명에 따른 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기는, 서버로 패키지 파일을 요청하는 파일요청부와 상기 서버로부터 상기 요청한 패키지 파일의 메타데이터를 다운로드하는 메타데이터부와 상기 패키지 파일의 부분데이터를 다운로드하는 부분데이터부와 상기 메타데이터를 이용하여 상기 다운로드 중인 패키지 파일의 프레임별 다운로드 완료 여부를 확인하는 다운로드확인부 및 상기 다운로드가 완료된 상기 패키지 파일의 프레임을 이용하여 어플리케이션을 설치하는 설치부를 포함한다.
이에 따라, 어플리케이션 설치를 위한 패키지 파일을 다운로드하면서 동시에 어플리케이션의 설치를 진행하므로 전체적인 시간이 줄어든다.

Description

패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법{Device and the method for installing application while downloading package files}
본 발명은 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법에 관한 것으로, 보다 상세하게는 어플리케이션을 설치하기 위해 어플리케이션의 설치를 위한 패키지 파일을 다운로드하면서 어플리케이션 설치를 병행하는 단말기 및 그 방법에 관한 것이다.
컴퓨터 및 스마트 폰을 포함한 무선 통신 단말기 등의 관련 기술이 발전함에 따라 이를 사용 또는 활용하기 위한 어플리케이션(application)이 많이 개발되고 있다. 이러한 어플리케이션을 사용자가 사용하기 위해서는 서버로부터 어플리케이션의 설치를 위한 패키지 파일을 사용하고자 하는 단말기에 다운로드한 후, 상기 패키지 파일을 실행시켜 어플리케이션을 설치해야 한다.
이러한 패키지 파일은 사용자 단말기로 다운로드가 완료된 이후에 상기 설치 파일을 실행하여 어플리케이션을 설치하기 때문에 사용자는 다운로드 시간과 어플리케이션의 설치 시간 동안에 대기해야 하는 불편함이 있었다.
한편, 기존엔 패키지파일을 서버로부터 1:1로 다운로드하여 설치하였고, 현재도 이와 같은 방법이 많이 이용되고 있다. 하지만 많은 네트워크 트래픽 비용이 발생하고 다운로드 시간이 사용자의 네트워크 환경에 의존적이라는 문제점이 있다.
이러한 문제점을 해결하기 위하여 P2P(Peer-To-Peer network)를 이용하여 다운로드하는 방법이 나왔다. P2P는 기존의 서버와 클라이언트 개념이나 공급자와 소비자 개념에서 벗어나 개인 컴퓨터끼리 직접 연결하고 검색함으로써 모든 참여자가 공급자인 동시에 수요자가 되는 형태로 크게 2가지 방식이 있다. 하나는 어느 정도의 서버의 도움을 얻어서 개인간 접속을 실현하는 방식이고, 다른 하나는 클라이언트 상호간에 미리 주소(IP address) 등의 개인 정보를 공유하여 서버 없이 직접 연결하는 방식이다. 전자의 경우에도 접속 및 검색 단계 이후는 뒤의 경우와 동일하게 개인끼리 직접 정보를 공유하고 교환하게 된다.
이러한 P2P를 이용하여 패키지 파일을 전송받으면 트래픽 비용이 줄어드는 등 1:1로 전송받는 방법의 문제점을 해결할 수 있으나, 패키지 파일을 사용자 단말기로 다운로드가 완료된 이후에 상기 설치 파일을 실행하여 어플리케이션을 설치하기 때문에 사용자가 다운로드 시간과 어플리케이션의 설치 시간 동안에 대기해야 하는 불편함은 여전히 존재한다.
본 발명은 상술한 문제점을 해결하기 위하여 창출된 것으로, 패키지 파일을 다운로드하는 것과 동시에 상기 패키지 파일을 이용하여 어플리케이션을 설치하는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법을 제공하는 데 목적이 있다.
또한, 패키지 파일을 다운로드할 때 P2P 방식으로 다운로드하면서 어플리케이션을 설치를 병행하는 단말기 및 그 방법을 제공하는 데 목적이 있다.
상기의 목적을 달성하기 위한 본 발명에 따른 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기는, 서버로 패키지 파일을 요청하는 파일요청부와 상기 서버로부터 상기 요청한 패키지 파일의 메타데이터를 다운로드하는 메타데이터부와 상기 패키지 파일의 부분데이터를 다운로드하는 부분데이터부와 상기 메타데이터를 이용하여 상기 다운로드 중인 패키지 파일의 프레임별 다운로드 완료 여부를 확인하는 다운로드확인부 및 상기 다운로드가 완료된 상기 패키지 파일의 프레임을 이용하여 어플리케이션을 설치하는 설치부를 포함한다.
한편, 상기의 목적을 달성하기 위한 본 발명에 따른 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 방법은 서버로 패키지 파일을 요청하는 단계와 상기 서버로부터 상기 요청한 패키지 파일의 메타데이터를 다운로드하는 단계와 상기 패키지 파일의 부분데이터를 다운로드하는 단계와 상기 메타데이터를 이용하여 상기 다운로드 중인 패키지 파일의 프레임별 다운로드 완료 여부를 확인하는 단계 및 상기 다운로드가 완료된 상기 패키지 파일의 프레임을 이용하여 어플리케이션을 설치하는 단계를 포함한다.
또한, 본 발명은 상기의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독가능한 기록매체를 포함한다.
본 발명에 따른 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법에 의하면,
첫째, 어플리케이션 설치를 위한 패키지 파일을 다운로드하면서 동시에 어플리케이션의 설치를 진행하므로 시간 비용을 줄일 수 있다.
둘째, 어플리케이션 설치를 위한 패키지 파일을 다운로드하면서 동시에 어플리케이션의 설치를 진행하므로 사용자에게 편의를 제공한다.
셋째, P2P를 이용하여 어플리케이션 설치를 위한 패키지 파일을 다운로드하면서 동시에 어플리케이션의 설치를 진행하므로 네트워크의 트래픽을 줄일 수 있다.
도 1은 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 시스템의 구성도이다.
도 2는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기의 기능블록도이다.
도 3은 패키지 파일 구조의 실시예를 도시한 것이다.
도 4는 P2P를 이용하여 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 시스템의 구성도이다.
도 5a 내지 도 5b는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기의 성능 테스트 결과를 도시한 것이다.
도 6은 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 방법의 흐름도이다.
이하 첨부된 도면을 참조하면서 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
도 1은 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 시스템의 구성도이다. 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 시스템은 어플리케이션을 설치하기 위한 패키지 파일을 생성하여 제공하는 서버(200)와 유무선 네트워크를 이용하여 상기 서버(200)에 접속해 상기 패키지 파일을 요청하며, 상기 패키지 파일을 다운로드하면서 어플리케이션 설치를 병행하는 단말기(100)를 포함한다.
상기 단말기(100)는 네트워크를 통하여 상기 서버(200)에 접속할 수 있는 통신 장치이며, 예를 들어, 스마트 폰 등과 같은 무선 통신 단말기, 컴퓨터, 태블릿 PC, 인터넷 접속 가능한 TV 등의 다양한 통신 장치가 사용될 수 있다. 따라서 사용자는 PC 통신, 유무선 인터넷, 전화망 등을 이용하여 편리하고 신속하게 서버(200)에 접속할 수 있다.
도 2는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기의 기능블록도로, 도 2를 참조하여 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기를 설명한다. 상기 단말기(100)는 파일요청부(110), 메타데이터부(120), 부분데이터부(130), 다운로드확인부(140), 설치부(150) 및 결과전송부(160)를 포함한다.
상기 파일요청부(110)는 상기 서버(200)로 패키지 파일을 요청하고, 상기 메타데이터부(120)는 상기 서버(200)로부터 상기 요청한 패키지 파일의 메타데이터를 다운로드한다. 상기 메타데이터는 상기 패키지 파일의 실행 데이터 및 상기 패키지 파일의 프레임 구분 데이터를 포함하는 데이터이기 때문에, 상기 메타데이터 부분만 먼저 다운로드한다면 상기 패키지 파일을 실행할 수 있으며, 다운로드 될 나머지 프레임을 예측할 수 있다.
상기 부분데이터부(130)는 상기 패키지 파일의 부분데이터를 상기 서버(200)로부터 다운로드하는데, 상기 부분데이터는 상기 패키지 파일에서 메타데이터부를 제외한 나머지를 지칭하는 것으로 상기 어플리케이션 설치를 위한 설치데이터를 포함한다.
상기 다운로드확인부(140)는 상기 메타데이터를 이용하여 상기 다운로드 중인 패키지 파일의 프레임별 다운로드 완료 여부를 확인하고, 상기 설치부(150)는 상기 다운로드가 완료된 상기 패키지 파일의 프레임을 이용하여 어플리케이션을 설치한다.
도 3은 패키지 파일 구조의 실시예를 도시한 것으로, 상기 패키지 파일은 어플리케이션을 설치하기 위한 파일로서 도시된 바와 같이, 구현하는 기능별로 프레임으로 나뉘어져 있다.
도 3에서 제 1 프레임인 A 프레임은 메타데이터로 패키지 파일의 실행 데이터 및 프레임 구분 데이터를 포함하고 있다. 따라서 상기 A 프레임에서는 상기 패키지 파일이 6개의 프레임으로 이루어져 있으며, 각 프레임의 크기를 이용하거나 프레임을 구분하는 부가정보를 이용하여 제 2 프레임 내지 제 6 프레임을 구분할 수 있다.
따라서 단말기(100)에서 메타데이터인 A 프레임의 다운로드가 완료된 경우라면, 나머지 부분데이터 모두가 다운로드 된 상태가 아니더라도 각 프레임을 구분하는 데이터가 메타데이터에 포함되어 있으므로, 일부 프레임만 다운로드가 완료된 상태이면 그 부분만큼만 어플리케이션의 설치를 완료할 수 있다. 다만, 이때에도 프레임별로 다운로드가 완료된 상태일 때에만 어플리케이션의 설치를 완료할 수 있는 것이므로 다운로드 진행 중인 프레임에 대해서는 어플리케이션을 설치 작업을 수행할 수 없다.
제 2 프레임인 B 프레임은 실행 라이브러리를 포함하고 있는데, 상기 실행 라이브러리는 임시 폴더에 설치에 필요한 파일들이 있는지 확인하고 없으면 상기 패키지 파일에서 설치 파일과 라이브러리를 임시 폴더에 배포하며, 설치 파일을 실행한다. 제 3 프레임인 C 프레임은 다운로드 라이브러리로 HTTP 및 Socket 방식의 다운로드를 지원하고, 이어 받기 및 오류 정정을 통해 다운로드된 자료의 무결성을 보호하기 위한 체크섬 등을 지원한다. 제 4 프레임은 스크립트 라이브러리로 스크립트 언어를 분석해서 처리할 수 있도록 하며, 프로그램 그룹 생성, 바로가기 생성, 퀵런치 생성, 레지스트리 등록, 서비스 등록, 디스크 용량 확인 등의 기능을 지원한다. 제 5 프레임인 설치 라이브러리는 폴더 및 파일의 설치, 메타데이터 로드 및 처리, 언인스트롤러 생성 등을 지원한다. 제 6 프레임인 설치데이터는 설치하려는 어플리케이션에 대한 설치정보를 담고 있으며, 어플리케이션의 이미지나 아이콘 등에 대한 정보를 포함할 수 있다.
도 4는 P2P를 이용하여 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 시스템의 구성도를 도시한 것으로, 지금까지는 상기 부분데이터부(130)에서 상기 부분데이터를 상기 서버(200)로부터 다운로드하는 것을 설명하였는데, 도 4에 도시된 바와 같이 P2P(피어 투 피어, Peer to Peer)를 이용하여 적어도 하나의 타 단말기로부터 상기 패키지 파일의 부분데이터를 다운로드할 수도 있다.
P2P는 기존의 서버와 클라이언트 개념이나 공급자와 소비자 개념에서 벗어나 개인 컴퓨터끼리 직접 연결하고 검색함으로써 모든 참여자가 공급자인 동시에 수요자가 되는 형태의 네트워크를 말한다. 크게 2가지 방식이 있는데, 첫 번째 방식은 어느 정도의 서버의 도움을 얻어서 개인간 접속을 실현하는 방식이고, 두 번째 방식은 클라이언트 상호간에 미리 주소(IP address) 등의 개인 정보를 공유하여 서버 없이 직접 연결하는 방식이다. 첫 번째 방식의 경우에도 접속 및 검색 단계 이후는 뒤의 경우와 동일하게 개인끼리 직접 정보를 공유하고 교환하게 된다.
P2P는 전송받고자 하는 데이터를 분할하며 분할된 데이터를 P2P에 연결되어 있는 타 단말기로부터 다운로드하는 것으로서, 상기 부분데이터부(130)에서 P2P를 이용하게 되면 메타데이터를 제외한 나머지 부분데이터들이 분할되어 타 단말기로부터 다운로드하게 된다. 따라서 타 단말기로부터 수신하는 부분데이터의 앞 또는 뒤에 부분데이터의 유효값 확인 데이터를 포함해야하며, 상기 메타데이터는 상기 부분데이터의 유효값 확인 데이터를 포함해야 한다.
상기 유효값 확인 데이터는 ISO-3309를 통해 발표된 cyclic redundancy check에 기초한 체크섬 생성 알고리즘인 CRC32(Cyclic Redundancy Check 32) 또는 임의의 길이의 메시지를 입력받아, 128비트짜리 고정 길이의 출력값을 내는 알고리즘인 MD5(Message-Digest algorithm 5)의 방법으로 생성될 수 있다.
이처럼, 상기 메타데이터는 상기 서버(200)로부터 먼저 다운로드한 이후에 부분데이터에 대해서 P2P를 이용하여 다운로드 받기 때문에 P2P를 이용하여 다운로드하더라도 다운로드 받으면서 메타데이터를 활용하여 어플리케이션의 설치를 동시에 할 수 있다.
본 발명에서 P2P에 연결되는 타 단말기는 어플리케이션의 설치를 위한 패키지 파일을 이미 다운로드 완료한 일반 단말기가 될 수도 있으며, 또는 서버를 여러 개로 구비하여 P2P 연결을 구성할 수도 있다. 어떠한 경우든, 메타데이터를 먼저 따로 수신해야 하기 때문에 P2P를 이용하기 전에 먼저 메타데이터를 상기 서버(200)로부터 먼저 수신해야 할 필요가 있다. 따라서 P2P를 형성하는 상술한 2가지 방식 중에서 어느 정도의 서버의 도움을 얻어서 개인간 접속을 실현하는 방식이 바람직하며, 상기 개인간 접속은 다운로드하는 단말기와 복수 개의 서버로 이루어질 수도 있음은 물론이다.
상기 설치부(150)는 다운로드가 완료된 상기 패키지 파일의 프레임을 이용하여 어플리케이션을 설치한다. 어플리케이션을 설치하는 방법으로 자체 실행 설치가 있고, 외부 라이브러리에서 처리하는 설치가 있는데, 자체 실행 설치는 Setup.exe.를 이용하며, 외부 라이브러리 설치는 다운로드 모듈에서 설치 라이브러리를 이용하여 임시 폴더에 설치에 필요한 파일들이 있는지 확인하고 없으면 패키지 파일에서 설치 파일과 라이브러리를 임시 폴더에 배포하여 설치 파일을 실행한다. 본 발명에서 어플리케이션 설치는 어느 방법을 써도 무방하나, 메타데이터를 포함하는 패키지 파일을 이용하여 다운로드하면서 동시에 설치하므로 더 효율을 위해서는 외부 라이브러리에서 처리하는 설치가 조금 더 바람직하다.
상기 설치부(150)를 통해 어플리케이션의 설치가 완료되면, 상기 결과전송부(160)는 상기 서버(200)로 상기 어플리케이션의 설치 성공 여부를 전송한다. 이처럼 설치 성공 여부를 전송하는 기능을 구비함으로써 설치 실패시 오류를 보고할 수 있고, 그에 따른 대응이 가능하다는 장점이 있다.
도 5a 내지 도 5b는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기의 성능 테스트 결과를 도시한 것이다. 즉, 다운로드한 후에 어플리케이션을 설치하는 것과 다운로드하면서 어플리케이션을 설치하는 것의 시간을 통해 시간적 비용 절감이 어떠한지 비교한 것이다.
먼저 TEST 1은 일반적인 사내 환경을 구축한 것으로 Intel(R) Core(TM)2 Duo CPU E7400 @ 2.80Ghz, 2 Gb RAM / 7200rpm S-ATA2 Disk, Windows Vista Enterprise K SP1 환경이고, TEST 2는 일반적인 가정 환경을 구축한 것으로 AMD(tm) 9550 @2.19Ghz Quad Core, 2Gb RAM / 7200rpm S-ATA2 Disk, Windows XP Professional SP3의 환경이다.
도 5a는 종래 네오위즈게임즈의 슬러거(Slugger)이라는 게임의 설치 파일을 다운로드 및 설치하는 성능 테스트로서, 폴더 개수는 54개, 파일 개수는 1968개, 전체 파일 크기는 1,221,786,554 bytes(1.13 Gb), 패키지 파일 크기는 478,202,952 bytes(456 Mb)이다. 도시된 바와 같이, 다운로드와 설치를 별도로 할 때에는 TEST 1에서는 81초, TEST 2에서는 2분 10초가 소요되었으나, 본 발명에 따라 다운로드와 설치를 동시에 진행할 때에는 TEST 1에서는 58초, TEST 2에서는 1분 15초로 시간이 훨씬 적게 소요되었음을 알 수 있다.
도 5b는 종래 네오위즈게임즈의 아바(A.V.A)FKSMS 게임의 설치 파일을 다운로드 및 설치하는 성능 테스트로서, 폴더 개수는 41개, 파일 개수는 568개, 전체 파일 크기는 4,095,093,601 bytes (3.81 Gb), 패키지 파일 크기는 2,632,981,105 bytes (2.42 Gb)이다. 도시된 바와 같이, 다운로드와 설치를 별도로 할 때에는 TEST 1에서는 6분 33초, TEST 2에서는 8분 30초가 소요되었으나, 본 발명에 따라 다운로드와 설치를 동시에 진행할 때에는 TEST 1에서는 4분 22초, TEST 2에서는 6분 48초로 시간이 훨씬 적게 소요되었다. 또한, 도 5a와 도 5b를 비교해보면 전체 파일 크기 및 패키지 파일의 크기가 클수록 시간이 줄어드는 효과가 더욱 커짐을 알 수 있다.
도 6은 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 방법의 흐름도로, 도 6을 참조하여 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 방법의 흐름도를 설명한다.
먼저 서버로 패키지 파일을 요청하면(S10), 상기 서버로부터 요청한 패키지 파일의 메타데이터를 다운로드한다(S20). 메타데이터의 다운로드가 완료되면 상기 서버 또는 P2P 상의 타단말기로부터 패키지 파일의 부분데이터를 다운로드한다(S30). 상술한 바와 같이 P2P를 이용하여 부분데이터를 다운로드할 때에는 부분데이터 앞 또는 뒤에 부분데이터의 유효값 확인 데이터를 포함해야하고, 상기 메타데이터도 부분데이터의 유효값 확인 데이터를 포함해야 한다. 상기 메타데이터를 이용하여, 다운로드 중인 패키지 파일의 프레임 중에서 다운로드가 완료된 프레임이 존재하는지 판단하여(S40), 다운로드 완료된 프레임이 있으면, 그 프레임을 이용하여 어플리케이션의 설치를 진행한다(S50). 다운로드 완료된 프레임이 없으면, 프레임별 다운로드가 완료될 때까지 부분데이터를 다운로드한다(S30). 이와 같은 과정을 통해 최종적으로 어플리케이션의 설치가 완료되었는지 판단하여(S60) 설치가 완료되지 않은 경우라면, 설치가 완료될 때까지 상기 부분데이터를 다운로드하는 과정(S30)부터 다시 반복한다.
또한, 본 발명은 상기의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독가능한 기록매체를 포함한다.
또한, 본 발명에서는 어플리케이션의 설치를 위한 패키지 파일을 다운로드하면서 설치하는 것에 대해서 설명하였으나, 상기 패키지 파일의 다운로드를 모두 마친 후에 어플리케이션을 설치할 수 있음은 물론이다.
이상과 같이, 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술 사상과 아래에 기재될 청구범위의 균등 범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.
100 단말기 110 파일요청부
120 메타데이터부 130 부분데이터부
140 다운로드확인부 150 설치부
160 결과전송부
200 서버

Claims (9)

  1. 서버로 패키지 파일을 요청하는 파일요청부;
    상기 서버로부터 상기 요청한 패키지 파일의 메타데이터를 다운로드하는 메타데이터부;
    상기 패키지 파일의 부분데이터를 다운로드하는 부분데이터부;
    상기 메타데이터를 이용하여 상기 다운로드 중인 패키지 파일의 프레임별 다운로드 완료 여부를 확인하는 다운로드확인부; 및
    상기 다운로드가 완료된 상기 패키지 파일의 프레임을 이용하여 어플리케이션을 설치하는 설치부;를 포함하는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기.
  2. 제 1 항에 있어서,
    상기 패키지 파일의 메타데이터는,
    상기 패키지 파일의 실행 데이터 및 상기 패키지 파일의 프레임 구분 데이터를 포함하는 것을 특징으로 하는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기.
  3. 제 1 항에 있어서,
    상기 패키지 파일의 부분데이터는,
    상기 어플리케이션 설치를 위한 설치데이터를 포함하는 것을 특징으로 하는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기.
  4. 제 1 항에 있어서,
    상기 부분데이터부는,
    P2P(피어 투 피어, Peer to Peer network)를 이용하여 적어도 하나의 타 단말기로부터 상기 패키지 파일의 부분데이터를 다운로드하는 것을 특징으로 하는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기.
  5. 제 4 항에 있어서,
    상기 부분데이터는,
    부분데이터 앞 또는 뒤에 부분데이터의 유효값 확인 데이터를 포함하고,
    상기 메타데이터는,
    상기 부분데이터의 유효값 확인 데이터를 포함하는 것을 특징으로 하는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기.
  6. 제 5 항에 있어서,
    상기 부분데이터의 유효값 확인 데이터는 CRC32(Cyclic Redundancy Check 32) 또는 MD5(Message-Digest algorithm 5)의 방법으로 생성되는 것을 특징으로 하는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기.
  7. 제 1 항에 있어서,
    상기 서버로 상기 어플리케이션의 설치 성공 여부를 전송하는 결과전송부;를 더 포함하는 것을 특징으로 하는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기.
  8. 서버로 패키지 파일을 요청하는 단계;
    상기 서버로부터 상기 요청한 패키지 파일의 메타데이터를 다운로드하는 단계;
    상기 패키지 파일의 부분데이터를 다운로드하는 단계;
    상기 메타데이터를 이용하여 상기 다운로드 중인 패키지 파일의 프레임별 다운로드 완료 여부를 확인하는 단계; 및
    상기 다운로드가 완료된 상기 패키지 파일의 프레임을 이용하여 어플리케이션을 설치하는 단계;를 포함하는 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 방법.
  9. 서버로 패키지 파일을 요청하는 단계;
    상기 서버로부터 상기 요청한 패키지 파일의 메타데이터를 다운로드하는 단계;
    상기 패키지 파일의 부분데이터를 다운로드하는 단계;
    상기 메타데이터를 이용하여 상기 다운로드 중인 패키지 파일의 프레임별 다운로드 완료 여부를 확인하는 단계; 및
    상기 다운로드가 완료된 상기 패키지 파일의 프레임을 이용하여 어플리케이션을 설치하는 단계;를 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독가능한 기록매체.
KR1020100131101A 2010-12-21 2010-12-21 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법 KR101155203B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020100131101A KR101155203B1 (ko) 2010-12-21 2010-12-21 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법
PCT/KR2011/009796 WO2012086985A2 (ko) 2010-12-21 2011-12-19 패키지 파일의 다운로드와 어플리케이션 설치를 병행하는 단말기 및 그 방법
TW100147477A TW201232403A (en) 2010-12-21 2011-12-20 Terminal and method for installing application while downloading package file

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100131101A KR101155203B1 (ko) 2010-12-21 2010-12-21 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법

Publications (1)

Publication Number Publication Date
KR101155203B1 true KR101155203B1 (ko) 2012-06-13

Family

ID=46314601

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100131101A KR101155203B1 (ko) 2010-12-21 2010-12-21 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법

Country Status (3)

Country Link
KR (1) KR101155203B1 (ko)
TW (1) TW201232403A (ko)
WO (1) WO2012086985A2 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI630551B (zh) * 2013-05-31 2018-07-21 博世尼克資訊股份有限公司 下載程式的方法
WO2014201660A1 (zh) 2013-06-20 2014-12-24 博世尼克资讯股份有限公司 下载程序的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735601B1 (en) 2000-12-29 2004-05-11 Vmware, Inc. System and method for remote file access by computer
US20050108708A1 (en) 2003-11-19 2005-05-19 Samsung Electronics Co., Ltd. Method to install software via a network and network apparatus thereof
KR101101227B1 (ko) 2009-12-14 2012-01-04 주식회사 이노그리드 프로그램 설치 시스템 및 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070000867A (ko) * 2005-06-28 2007-01-03 케이티하이텔 주식회사 업데이트 파일 제공 장치 및 그 방법과, 그를 이용한업데이트 파일 다운로딩 장치 및 그 방법
KR100919254B1 (ko) * 2007-09-19 2009-09-30 주식회사 그래텍 유디피 홀펀칭을 이용한 피어 대 피어 데이터 전송을 통해스트리밍 데이터를 분산 전송하는 분산 스트리밍 시스템 및그 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735601B1 (en) 2000-12-29 2004-05-11 Vmware, Inc. System and method for remote file access by computer
US20050108708A1 (en) 2003-11-19 2005-05-19 Samsung Electronics Co., Ltd. Method to install software via a network and network apparatus thereof
KR101101227B1 (ko) 2009-12-14 2012-01-04 주식회사 이노그리드 프로그램 설치 시스템 및 방법

Also Published As

Publication number Publication date
TW201232403A (en) 2012-08-01
WO2012086985A2 (ko) 2012-06-28
WO2012086985A3 (ko) 2012-10-04

Similar Documents

Publication Publication Date Title
US10320940B1 (en) Managing generic data
JP5658283B2 (ja) アプリケーションの稼働方法、装置及びシステム
US8549066B1 (en) Service provider interface for deploying and managing applications on a cloud
JP6018316B2 (ja) 端末認証登録システム、端末認証登録方法およびプログラム
TWI557572B (zh) 用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置(一)
US20210036991A1 (en) System and method for implementing a web application firewall as a customized service
US9177122B1 (en) Managing secure firmware updates
CN114008994B (zh) 一种代理服务器接收从客户端到网络服务器的请求和与所述请求相对应的从所述网络服务器到所述客户端的响应的方法及系统
WO2019201039A1 (zh) 一种更新应用程序的方法、系统及应用服务器
WO2014012449A1 (zh) 桌面同步方法、装置、处理中心及系统
US8676939B2 (en) Dynamic configuration of applications deployed in a cloud
NZ536004A (en) System and method for use of multiple applications in a mobile computing environment
WO2019201040A1 (zh) 一种管理更新文件的方法、系统及终端设备
US20120296871A1 (en) File managing apparatus for processing an online storage service
US10044694B2 (en) Server, method and system for authenticating application
Soni Nginx
KR20210084417A (ko) 클라우드 스트리밍 서비스 기반의 웹 서버 모니터링 방법 및 이를 위한 장치
CN113259494B (zh) 文件存储方法、装置、电子设备及存储介质
KR101155203B1 (ko) 패키지 파일의 다운로드 및 어플리케이션 설치를 병행하는 단말기 및 그 방법
CN111131151A (zh) 一种存储系统安全级别控制的方法和设备
CN108108203B (zh) 用于安装包下载安装过程的方法、装置及系统
JP5522735B2 (ja) セッション管理装置、セッション管理システム、セッション管理方法、及びプログラム
WO2021077747A1 (zh) 一种实现应用加载的方法、装置、计算机存储介质及终端
US9742874B2 (en) Control device, and method for transfer control
CN114553449A (zh) 基于https的加解密方法、装置、系统、电子设备和存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150529

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160510

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee