[go: up one dir, main page]

KR101504088B1 - Apparatus for executing web application, method thereof and computer recordable medium storing the method - Google Patents

Apparatus for executing web application, method thereof and computer recordable medium storing the method Download PDF

Info

Publication number
KR101504088B1
KR101504088B1 KR1020100053649A KR20100053649A KR101504088B1 KR 101504088 B1 KR101504088 B1 KR 101504088B1 KR 1020100053649 A KR1020100053649 A KR 1020100053649A KR 20100053649 A KR20100053649 A KR 20100053649A KR 101504088 B1 KR101504088 B1 KR 101504088B1
Authority
KR
South Korea
Prior art keywords
web application
file
page
resource
resource file
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020100053649A
Other languages
Korean (ko)
Other versions
KR20110133950A (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 KR1020100053649A priority Critical patent/KR101504088B1/en
Publication of KR20110133950A publication Critical patent/KR20110133950A/en
Application granted granted Critical
Publication of KR101504088B1 publication Critical patent/KR101504088B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
    • G06F9/453Help systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 웹 어플리케이션 실행 장치, 이의 웹 어플리케이션 실행 방법 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록 매체에 관한 것으로, 웹 어플리케이션의 리소스 파일을 웹 어플리케이션의 실행 전에 미리 다운로드 받고, 사용자의 웹 어플리케이션 실행 요청이 있는 때에 그 다운로드 받은 리소스 파일을 이용하여 웹 어플리케이션을 실행시킴으로써, 웹 어플리케이션 실행 시, 리소스 파일을 다운로드 받는 시간을 절약할 수 있으므로, 그 웹 어플리케이션의 응답 속도를 향상시킬 수 있다. The present invention relates to a web application execution device, a web application execution method of the web application execution method, and a computer readable recording medium on which the method is recorded, wherein the resource file of the web application is downloaded in advance before execution of the web application, The time required for downloading the resource file can be saved when the web application is executed by executing the web application using the downloaded resource file. Therefore, the response speed of the web application can be improved.

Description

웹 어플리케이션 실행 장치, 이의 웹 어플리케이션 실행 방법 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록 매체{Apparatus for executing web application, method thereof and computer recordable medium storing the method}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a web application execution apparatus, a web application execution method thereof, and a computer readable recording medium on which the method is recorded.

본 발명은 웹 어플리케이션 실행 기술에 관한 것으로, 보다 상세하게는, 웹 어플리케이션 실행에 필요한 리소스를 미리 다운로드 받은 후, 웹 어플리케이션을 실행하여 응답 속도의 향상을 가져올 수 있는 웹 어플리케이션 실행 장치, 이의 웹 어플리케이션 실행 방법 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록 매체에 관한 것이다. The present invention relates to a web application execution technology, and more particularly, to a web application execution apparatus capable of executing a web application and downloading resources necessary for executing the web application in advance to improve the response speed, And a computer-readable recording medium on which the method is recorded.

최근 이동 통신 단말에 대한 오픈 환경이 제공되면서, 서비스의 차별화를 위하여 개방형 어플리케이션 및 플랫폼 환경이 요구되고 있다. 초기의 클라이언트-서버(client-server) 컴퓨팅 환경에서 각 어플리케이션들은 각 어플리케이션 별로 다른 저만의 사용자 인터페이스를 가지고 있었고, 각 사용자의 컴퓨터에 각각 따로 설치하여야 했다. 서버 환경이 바뀌면 클라이언트에 인스톨된 어플리케이션도 이에 맞춰 업그레이드해야 했다. 이에 따라 기술 지원 비용은 증가하고 생산성은 떨어지게 되었다.Recently, an open application and a platform environment have been required for differentiating services while providing an open environment for a mobile communication terminal. In the initial client-server computing environment, each application had its own unique user interface for each application and had to be installed separately on each user's computer. When the server environment changed, the applications installed on the client had to be upgraded accordingly. As a result, technical support costs have increased and productivity has decreased.

반면, 단순한 콘텐츠를 표현하기 위해 시작된 웹 페이지는 브라우저라는 클라이언트 어플리케이션을 사용할 수 있는 환경만 갖춰지면 어디서나 동등한 수준의 사용자 인터페이스를 제공할 수 있다는 장점 때문에, 사용자 저변과 서비스 영역을 빠르게 확장해왔다. 이와 함께, 웹 페이지는 특정 내용을 개시하는 단순한 콘텐츠에서 사용자의 입력에 반응하여 사용자가 원하는 서비스를 제공할 수 있는 웹 어플리케이션으로 진화하고 있다. 하지만, 단말은 복수의 페이지로 이루어진 웹 어플리케이션을 실행할 때, 각 페이지에 삽입되는 리소스 파일을 다운로드 받은 후, 그 다운로드 받은 파일을 브라우저를 통해 표시해야 함으로, 웹 어플리케이션의 실행의 응답 속도가 느려지는 문제가 있다. On the other hand, Web pages started to express simple contents have been rapidly expanding the user base and service area because they can provide an equal level of user interface wherever the user can use a client application called a browser. At the same time, web pages are evolving into web applications that can provide users with desired services in response to user input from simple content that starts specific content. However, when executing a web application composed of a plurality of pages, the terminal must download the resource file inserted in each page and then display the downloaded file through the browser, so that the response speed of execution of the web application is slow .

따라서 상술한 바와 같은 문제를 감안한 본 발명의 목적은 웹 어플리케이션의 페이지에 삽입되는 리소스 파일을 미리 다운로드 하여 웹 어플리케이션의 실행 시. 리소스 파일의 다운로드 시간을 절약함으로써 응답 속도를 향상시킬 수 있는 웹 어플리케이션 실행 장치, 이의 웹 어플리케이션 실행 방법 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록 매체를 제공함에 있다. SUMMARY OF THE INVENTION Accordingly, the present invention has been made keeping in mind the above problems occurring in the prior art, and an object of the present invention is to provide a method and apparatus for downloading a resource file, A web application executing method, a computer readable recording medium on which the method is executed, and a web application executing apparatus capable of improving a response speed by saving download time of a resource file.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 웹 어플리케이션 실행 장치는, 네트워크에 연결해 통신을 수행하기 위한 네트워크 연결부; 상기 웹 어플리케이션을 패키지 단위인 웹 어플리케이션 패키지로 저장하는 저장부; 및 상기 웹 어플리케이션의 실행 전, 상기 웹 어플리케이션의 소스 파일을 분석하여, 웹 어플리케이션 실행시 필요한 리소스 파일 중 미리 다운로드 받을 수 있는 리소스 파일의 목록인 다운로드 리소스 목록을 작성하여 상기 저장부에 저장하고, 대기 모드에서 상기 네트워크 연결부를 통해 상기 다운로드 리소스 목록의 리소스 파일을 다운로드 하여 상기 저장부에 저장하며, 사용자의 웹 어플리케이션 실행 요청이 있는 경우, 상기 다운로드 받은 리소스 파일을 이용하여 상기 웹 어플리케이션을 실행하는 제어부;를 포함한다.According to another aspect of the present invention, there is provided an apparatus for executing a web application, the apparatus comprising: a network connection unit for connecting to a network and performing communication; A storage unit for storing the web application as a web application package as a package unit; And analyzing a source file of the web application before execution of the web application to create a download resource list which is a list of resource files that can be downloaded in advance among the resource files necessary for executing the web application, A control unit for downloading the resource file of the download resource list through the network connection unit and storing the resource file in the storage unit in the mode, and executing the web application using the downloaded resource file when the user requests to execute the web application; .

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 다운로드 리소스 목록은 상기 소스 파일에서 태그 및 상기 태그의 속성이 리소스 파일의 링크를 지시하는 주소인 경우, 상기 주소를 등록한 것임을 특징으로 한다.In the web application execution apparatus of the present invention, the download resource list is registered when the tag in the source file and the attribute of the tag indicate the link of the resource file.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 대기 모드는 상기 네트워크 연결부의 네트워크 트래픽이 기 설정된 용량 미만인 경우임을 특징으로 한다.In the web application execution apparatus of the present invention, the idle mode is a case where the network traffic of the network connection unit is less than a predetermined capacity.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 제어부는 상기 다운로드 받은 리소스 파일을 이용하여 상기 웹 어플리케이션의 각 페이지에 대해 바이너리 페이지 데이터를 미리 생성한 후, 사용자의 웹 어플리케이션 실행 요청이 있는 경우, 상기 바이너리 페이지 데이터를 랜더링하여 웹 어플리케이션을 실행하는 것을 특징으로 한다.In the web application execution apparatus of the present invention, the control unit may previously generate binary page data for each page of the web application using the downloaded resource file, and if there is a request for executing a web application of the user, And executes the web application by rendering the page data.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 저장부는 상기 웹 어플리케이션 패키지에 대한 정보, 상기 웹 어플리케이션을 다른 웹 어플리케이션과 구분하여 실행시키기 위한 실행 정보 및 상기 다운로드 리소스 목록을 저장하는 레지스트리를 포함한다.In the web application execution apparatus of the present invention, the storage unit may include information on the web application package, execution information for executing the web application differently from other web applications, and a registry for storing the download resource list.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 실행 정보는, 프로토콜 스킴(protocol scheme) 및 상기 프로토콜 스킴에 이어서 기술되는 주소로 이루어지는 것을 특징으로 한다.In the web application execution apparatus of the present invention, the execution information may be a protocol scheme and an address described in the protocol scheme.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 프로토콜 스킴은 "httpa://"의 형식을 가지는 것을 특징으로 한다.In the web application execution apparatus of the present invention, the protocol scheme is characterized by having a format of "http: //".

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 주소는 상기 웹 어플리케이션을 제작한 제작사 또는 상기 웹 어플리케이션을 제공하는 콘텐츠 제공자의 도메인 명칭, 상기 웹 어플리케이션을 이루는 패키지의 명칭인 웹 어플리케이션 패키지 명칭 및 상기 웹 어플리케이션을 실행할 때 가장 먼저 실행시키는 소스 파일의 명칭인 시작 페이지를 포함한다.In the web application execution apparatus of the present invention, the address may be a domain name of a manufacturer who produced the web application or a content provider providing the web application, a web application package name which is a name of a package constituting the web application, The start page, which is the name of the source file to be executed first.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 제어부는 상기 웹 어플리케이션을 설치할 시, 상기 레지스트리에 상기 실행 정보를 등록하는 것을 특징으로 한다.In the web application execution apparatus of the present invention, when the web application is installed, the control unit registers the execution information in the registry.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 저장부는 상기 다운로드 리소스 목록을 만들 시 상기 웹 어플리케이션의 각 페이지가 선입선출 방식에 따라 순차로 입력되고 출력되는 큐를 포함하는 것을 특징으로 한다.In the web application execution apparatus of the present invention, the storage unit may include a queue in which each page of the web application is sequentially input and output according to a first-in first-out method when the download resource list is created.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 제어부는 상기 다운로드 리소스 목록을 작성할 시, 상기 큐에 상기 웹 어플리케이션을 구성하는 적어도 하나의 페이지를 순차로 입력하여, 상기 큐가 먼저 입력된 페이지를 먼저 출력함에 따라, 출력되는 페이지 순으로 상기 다운로드 리소스 목록을 작성하는 것을 특징으로 한다.In the web application execution apparatus of the present invention, when generating the download resource list, the control unit sequentially inputs at least one page constituting the web application into the queue, , The download resource list is created in the order of outputted pages.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 웹 어플리케이션 패키지는 상기 웹 어플리케이션의 콘텐츠를 기술하는 콘텐츠 파일과 상기 웹 어플리케이션 및 상기 웹 어플리케이션의 패키지에 대한 정보를 기술하는 정보 파일을 포함하는 것을 특징으로 한다.In the web application execution apparatus of the present invention, the web application package may include a content file describing the content of the web application, and an information file describing information about the web application and the package of the web application .

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 콘텐츠 파일은, 상기 웹 어플리케이션의 각 페이지를 표현하는 소스 파일 및 상기 소스 파일에 링크로 연결되는 리소스 파일을 포함한다.In the web application execution device of the present invention, the content file includes a source file representing each page of the web application and a resource file linked to the source file by a link.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 소스 파일은 태그 및 상기 태그의 속성이 기술되는 마크업 언어, 상기 태그 및 상기 태그의 속성이 페이지에 표시되는 스타일을 기술하는 스타일시트 및 상기 웹 어플리케이션을 동적으로 제어하기 위한 스크립트 언어를 포함하는 것을 특징으로 한다.In the web application execution apparatus of the present invention, the source file may include a markup language in which tags and attributes of the tags are described, a style sheet describing the styles in which the tags and the attributes of the tags are displayed on the page, And a script language for dynamically controlling the script language.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 리소스 파일은 상기 리소스 파일의 형식에 맞는 형태로 링크를 통해 상기 페이지에 삽입되는 개별 파일인 것을 특징으로 한다.In the web application execution apparatus of the present invention, the resource file may be an individual file inserted into the page through a link in a form corresponding to the format of the resource file.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 리소스 파일은 장면 기술, 비디오, 오디오, 이미지, 폰트, 텍스트, 메타데이터, 및 스크립트 파일 중 적어도 하나인 것을 특징으로 한다.In the web application execution apparatus of the present invention, the resource file is at least one of a scene description, a video, an audio, an image, a font, text, metadata, and a script file.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 정보 파일은 상기 웹 어플리케이션의 패키지에 포함되는 파일의 목록, 파일 별 공개 여부와 공개 범위, 및 상기 웹 어플리케이션의 실행 환경을 설정하기 위한 설정 값을 포함하는 구성 정보가 기술되는 구성 정보 파일과, 상기 웹 어플리케이션이 단말의 운영 체제에 접근할 수 있는 접근 권한의 범위를 지정하기 위한 정책 정보를 기술하는 정책 정보 파일을 포함한다.In the web application execution apparatus of the present invention, the information file may include a list of files included in the package of the web application, a disclosure status and disclosure range for each file, and a setting value for setting an execution environment of the web application A configuration information file describing the configuration information, and a policy information file describing policy information for specifying a range of access authority for the web application to access the operating system of the terminal.

본 발명의 웹 어플리케이션 실행 장치에 있어서, 상기 웹 어플리케이션 패키지는 상기 저장부에 데이터베이스 구조로 저장되는 것을 특징으로 한다. 상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 웹 어플리케이션 실행 방법은, 상기 웹 어플리케이션의 실행 전, 상기 웹 어플리케이션의 소스 파일을 분석하여, 상기 소스 파일에 포함된 리소스 파일 중 미리 다운로드 받을 수 있는 리소스 파일의 목록인 다운로드 리소스 목록을 작성하는 단계; 대기 모드이면, 상기 다운로드 리소스 목록의 리소스 파일을 다운로드 하는 단계; 및 사용자의 웹 어플리케이션 실행 요청이 있는 경우, 상기 다운로드 받은 리소스 파일을 이용하여 상기 웹 어플리케이션을 실행하는 단계;를 포함한다.In the web application execution apparatus of the present invention, the web application package is stored in the storage unit as a database structure. According to another aspect of the present invention, there is provided a method for executing a web application, the method comprising: analyzing a source file of the web application before execution of the web application; Creating a download resource list that is a list of downloadable resource files; Downloading a resource file of the download resource list if the resource file is in a standby mode; And executing the web application using the downloaded resource file when the user requests to execute the web application.

본 발명의 웹 어플리케이션 실행 방법에 있어서, 상기 작성하는 단계는, 상기 웹 어플리케이션의 시작 페이지의 태그 및 상기 태그의 속성을 분석하는 단계; 및 상기 분석 결과, 상기 태그의 속성이 리소스 파일의 링크를 나타내는 주소이면, 상기 주소를 상기 다운로드 리소스 목록에 등록하는 단계;를 포함한다.In the web application execution method of the present invention, the creating may include: analyzing a tag of a start page of the web application and an attribute of the tag; And registering the address in the download resource list if the attribute of the tag is an address indicating a link of the resource file as a result of the analysis.

본 발명의 웹 어플리케이션 실행 방법에 있어서, 상기 분석하는 단계 후, 상기 분석 결과, 상기 태그의 속성이 상기 웹 어플리케이션을 구성하는 다른 페이지의 링크인 경우, 상기 다른 페이지에 대해 상기 분석하는 단계 및 상기 등록하는 단계를 수행하는 단계를 더 포함한다.In the web application execution method of the present invention, when the attribute of the tag is a link of another page constituting the web application, the analyzing step and the registration The method comprising the steps of:

본 발명의 웹 어플리케이션 실행 방법에 있어서, 상기 작성하는 단계는 다운로드 리소스 목록의 용량이 기 설정된 용량을 초과할 것으로 판단되는 경우 또는 상기 웹 어플리케이션을 구성하는 모든 페이지의 모든 태그를 분석한 경우 종료하는 것을 특징으로 한다.In the web application execution method of the present invention, the creating step may be terminated when it is determined that the capacity of the download resource list exceeds the preset capacity or when all tags of all the pages constituting the web application are analyzed .

본 발명의 웹 어플리케이션 실행 방법에 있어서, 상기 다운로드 하는 단계는, 상기 대기 모드인지 판단하는 단계; 상기 판단 결과 대기 모드이면, 상기 다운로드 리소스 목록의 리소스 파일이 이미 다운로드 되었는지 확인하는 단계; 및 상기 확인 결과, 다운로드 되지 않은 리소스 파일을 다운로드 하는 단계;를 포함한다.In the web application execution method of the present invention, the downloading step may include: determining whether the web application is in the standby mode; Checking whether the resource file of the download resource list has already been downloaded if the determination result is the standby mode; And downloading the resource file that has not been downloaded as a result of the checking.

본 발명의 웹 어플리케이션 실행 방법에 있어서, 상기 대기 모드는, 네트워크 트래픽이 기 설정된 용량 미만인 경우임을 특징으로 한다.In the web application execution method of the present invention, the idle mode is characterized in that the network traffic is less than a predetermined capacity.

본 발명의 웹 어플리케이션 실행 방법에 있어서, 상기 다운로드 하는 단계는, 상기 다운로드 리소스 목록의 모든 리소스 파일을 다운로드 하였거나, 상기 대기 모드가 종료될 때까지 수행하는 것을 특징으로 한다.In the web application execution method of the present invention, the downloading may be performed until all the resource files of the download resource list are downloaded or the standby mode is terminated.

본 발명의 웹 어플리케이션 실행 방법에 있어서, 상기 실행하는 단계는 상기 다운로드 받은 리소스 파일을 이용하여 상기 웹 어플리케이션의 각 페이지에 대해 바이너리 페이지 데이터를 생성하는 단계; 및 사용자의 웹 어플리케이션 실행 요청이 있는 경우, 상기 바이너리 페이지 데이터를 랜더링하여 웹 어플리케이션을 실행하는 단계;를 포함한다.In the web application execution method of the present invention, the executing step may include generating binary page data for each page of the web application using the downloaded resource file; And executing the web application by rendering the binary page data when the user requests to execute the web application.

본 발명의 웹 어플리케이션 실행 방법에 있어서, 상기 바이너리 페이지 데이터를 생성하는 단계는, 상기 다운로드 리소스 목록을 참조하여 해당 페이지의 속성 중 리소스 파일의 속성을 상기 미리 다운로드 받은 리소스 파일이 저장된 경로로 변경하는 단계; 상기 웹 어플리케이션의 각 페이지의 소스 파일을 분석하여, DOM 트리 및 스타일 트리를 생성하는 단계; 상기 DOM 트리 및 스타일 트리를 결합하여 랜더러 트리를 생성하는 단계; 상기 랜더러 트리를 해석하여 페이지 데이터를 생성하는 단계; 및 상기 페이지 데이터를 바이너리 형태로 변환하여 바이너리 페이지 데이터를 생성하는 단계를 포함한다.In the web application execution method of the present invention, the step of generating the binary page data may include the step of changing the attribute of the resource file among the attributes of the page to the path where the previously downloaded resource file is stored with reference to the download resource list ; Analyzing a source file of each page of the web application to generate a DOM tree and a style tree; Combining the DOM tree and the style tree to generate a renderer tree; Analyzing the renderer tree to generate page data; And converting the page data into a binary form to generate binary page data.

그리고, 상술한 웹 어플리케이션 실행 방법을 실행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록 매체를 제공한다. There is also provided a computer readable recording medium on which a program for executing the above-described web application executing method is recorded.

본 발명에 따르면, 웹 어플리케이션 실행 시 필요한 리소스 파일을 미리 다운로드 받아 저장함으로써, 웹 어플리케이션 실행 시, 필요한 리소스 파일을 다운로드 하는 시간을 절약할 수 있으므로, 사용자의 입력에 대한 웹 어플리케이션의 응답 속도를 향상시킬 수 있다. 이에 따라, 사용자의 입력에 대한 응답 속도를 향상시킬 수 있어, 웹 어플리케이션 실행 시, 브라우저 없이 동작하는 일반 어플리케이션에 비해 응답 속도에서 차이가 없는 사용자 경험을 제공할 수 있다. According to the present invention, it is possible to save time for downloading a necessary resource file when executing a web application by previously downloading and storing a resource file necessary for executing the web application, thereby improving the response speed of the web application to the input of the user . Accordingly, it is possible to improve the response speed to the input of the user, and to provide a user experience with no difference in the response speed as compared with the general application operating without the browser when executing the web application.

도 1은 본 발명의 실시예에 따른 웹 어플리케이션의 페이지를 설명하기 위한 도면.
도 2a 및 도 2b는 본 발명의 실시예에 따른 웹 어플리케이션 패키지를 설명하기 위한 도면.
도 3은 본 발명의 실시예에 따른 웹 어플리케이션의 어느 일 페이지를 해석하고 실행하는 방법을 설명하기 위한 도면.
도 4는 본 발명의 실시예에 따른 소스 파일을 설명하기 위한 도면.
도 5는 도 4의 소스 파일로부터 구성된 DOM 트리를 설명하기 위한 도면.
도 6은 도 4의 소스 파일로부터 실행된 웹 어플리케이션의 페이지를 설명하기 위한 도면.
도 7은 본 발명의 실시예에 따른 웹 어플리케이션 실행 장치를 설명하기 위한 도면.
도 8은 본 발명의 실시예에 따른 웹 어플리케이션 실행 방법을 개략적으로 설명하기 위한 흐름도.
도 9는 본 발명의 실시예에 따른 다운로드 리소스 목록을 작성하는 방법을 설명하기 위한 흐름도.
도 10은 본 발명의 실시예에 따른 웹 어플리케이션 실행을 위한 리소스 파일을 미리 다운로드 받는 방법을 설명하기 위한 흐름도.
도 11은 본 발명의 실시예에 따른 웹 어플리케이션의 각 페이지 데이터를 생성하는 방법을 설명하기 위한 흐름도.
도 12는 본 발명의 실시예에 따른 웹 어플리케이션 실행 방법을 설명하기 위한 흐름도.
BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a diagram for describing a page of a web application according to an embodiment of the present invention; Fig.
2A and 2B illustrate a web application package according to an embodiment of the present invention.
3 is a diagram illustrating a method for interpreting and executing a page of a web application according to an embodiment of the present invention;
4 is a diagram for describing a source file according to an embodiment of the present invention;
FIG. 5 is a diagram for explaining a DOM tree constructed from the source files of FIG. 4; FIG.
6 is a diagram for describing a page of a web application executed from the source file of Fig. 4; Fig.
FIG. 7 illustrates a web application execution apparatus according to an embodiment of the present invention; FIG.
8 is a flowchart schematically illustrating a method of executing a web application according to an embodiment of the present invention.
FIG. 9 is a flowchart illustrating a method of creating a download resource list according to an embodiment of the present invention; FIG.
10 is a flowchart illustrating a method for downloading a resource file in advance for executing a web application according to an embodiment of the present invention.
11 is a flowchart illustrating a method of generating each page data of a web application according to an embodiment of the present invention.
12 is a flowchart illustrating a method of executing a web application according to an embodiment of the present invention.

이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description and the accompanying drawings, detailed description of well-known functions or constructions that may obscure the subject matter of the present invention will be omitted. It should be noted that the same constituent elements are denoted by the same reference numerals as possible throughout the drawings.

더하여, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.In addition, terms and words used in the present specification and claims should not be construed to be limited to ordinary or dictionary meanings, and the inventor should properly define the terms of a term in order to describe its own invention in the best way possible. It should be construed as meaning and concept consistent with the technical idea of the present invention. Therefore, the embodiments described in the present specification and the configurations shown in the drawings are merely the most preferred embodiments of the present invention, and not all of the technical ideas of the present invention are described. Therefore, It is to be understood that equivalents and modifications are possible.

먼저, 본 발명의 실시예에 따른 웹 어플리케이션에 대해서 설명하기로 한다. 도 1은 본 발명의 실시예에 따른 웹 어플리케이션의 페이지를 설명하기 위한 도면이다.First, a web application according to an embodiment of the present invention will be described. 1 is a diagram for explaining pages of a web application according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시예에 따른 웹 어플리케이션은 적어도 하나의 페이지(10)로 이루어진다. 도 1에서는 복수의 페이지(10)로 이루어진 웹 어플리케이션을 도시하였다. 웹 어플리케이션은 페이지(10)를 기본 단위로 동작한다. 웹 어플리케이션이 복수의 페이지(10)로 이루어진 경우, 웹 어플리케이션을 실행시키면, 어느 하나의 페이지(10)가 시작 페이지로 실행된다. 그리고 복수의 페이지(10)는 개발자의 의도에 따라 링크로 연결되며, 웹 어플리케이션이 실행됨에 따라 어느 하나의 페이지(10)의 실행 중 다른 페이지(10)를 실행시키는 이벤트가 발생하면 그 다른 페이지(10)가 실행된다.Referring to FIG. 1, a web application according to an embodiment of the present invention includes at least one page 10. 1 shows a web application composed of a plurality of pages 10. The web application operates on page 10 as a basic unit. When the web application is composed of a plurality of pages 10, when the web application is executed, any one page 10 is executed as the start page. The plurality of pages 10 are connected by a link according to the intention of the developer. When an event that causes another page 10 to be executed during execution of one of the pages 10 occurs as the web application is executed, 10) is executed.

도 2a 및 도 2b는 본 발명의 실시예에 따른 웹 어플리케이션 패키지를 설명하기 위한 도면이다.2A and 2B are views for explaining a web application package according to an embodiment of the present invention.

도 2a에 본 발명의 실시예에 따른 웹 어플리케이션 패키지를 도시하였다. 도 1 및 도 2a를 참조하면, 웹 어플리케이션 패키지는 적어도 하나의 페이지(10)로 이루어지며, 각 페이지(10)의 콘텐츠를 기술하는 콘텐츠 파일(100)과 웹 어플리케이션 및 웹 어플리케이션의 패키지에 대한 정보를 기술하는 정보 파일(200)을 포함한다. 여기서, 콘텐츠 파일(100)은 소스 파일(110) 및 리소스 파일(120)을 포함한다. 또한, 정보 파일(200)은 구성 정보 파일(210) 및 정책 정보 파일(220)을 포함한다. FIG. 2A illustrates a web application package according to an embodiment of the present invention. 1 and 2A, a web application package includes at least one page 10, and includes a content file 100 describing the content of each page 10, information about a package of a web application and a web application, And an information file 200 describing the information. Here, the content file 100 includes a source file 110 and a resource file 120. The information file 200 includes a configuration information file 210 and a policy information file 220.

도 2b에 본 발명의 실시예에 따른 소스 파일(110)의 일 예를 도시하였다. 도 1, 도 2a 및 도 2b를 참조하면, 소스 파일(110)은 마크업 언어(Markup Language, 111), 스타일시트(Style Sheets, 113), 및 스크립트 언어(scripting language, 115)로 작성된 파일이며, 이중 스타일시트(113) 및 스크립트 언어(115)는 선택적으로 생략 가능하다. 상술한 언어들로 작성된 소스 파일(110)에 의해 페이지(10)가 표현된다. 마크업 언어(111)는 HTML(Hypertext Markup Language), XHTML(extensible Hypertext Markup Language), XML(Extensible Markup Language) 등을 예시할 수 있으며, 이러한 마크업 언어(111)는 다수의 태그(tag)와 각 태그의 속성(attribute) 및 일반적인 텍스트로 이루어진다. 스타일시트(113)는 사용자가 정의한 디자인 속성, 즉, 스타일을 기술하기 위한 언어이다. 스타일시트(113)는 태그, 속성, 및 텍스트에 의해 보여지는 페이지(10)의 글꼴, 크기, 색상, 레이아웃 등의 스타일을 기술한다. 이러한 스타일시트(113)를 사용한 페이지(10)는 다른 화면 해상도를 가지는 표시 장치와 다른 종류의 브라우저에서도 스타일시트(113)에 기술한 바에 따라 동일하게 보여진다. 이 스타일시트(113)는 대표적으로 CSS(Cascading Style Sheets)를 예시할 수 있다. 스크립트 언어(115)는 프로그래밍 언어로서 웹 어플리케이션을 동적으로 제어하기 위한 언어이다. 대표적으로, 자바 스크립트(Java Script)를 예시할 수 있다.FIG. 2B illustrates an example of a source file 110 according to an embodiment of the present invention. 1, 2A and 2B, a source file 110 is a file created in a markup language (111), a style sheet (113), and a scripting language (115) The dual style sheet 113 and the script language 115 may be optionally omitted. The page 10 is represented by the source file 110 written in the above-described languages. The markup language 111 may include Hypertext Markup Language (HTML), Extensible Hypertext Markup Language (XHTML), and Extensible Markup Language (XML). The markup language 111 may include a plurality of tags It consists of attribute and general text of each tag. The style sheet 113 is a language for describing a design attribute defined by the user, that is, a style. The style sheet 113 describes styles such as font, size, color, layout, etc. of the page 10 shown by tags, attributes, and text. The page 10 using such a style sheet 113 is displayed in the same manner as described in the style sheet 113 even in a display apparatus having a different screen resolution and in a browser of a different kind. This style sheet 113 may represent CSS (Cascading Style Sheets) as an example. The script language 115 is a language for dynamically controlling a web application as a programming language. Typically, JavaScript (Java Script) can be exemplified.

리소스 파일(120)은 페이지(10)에 삽입되는 각종의 파일이다. 이 리소스 파일(120)은 소스 파일(110)을 기술하는 프로그래밍 언어를 통해 링크 태그를 이용하여 페이지(10)에 삽입될 수 있다. 리소스 파일(120)은 웹(Web) 상의 어느 일 디바이스에 저장될 수 있으며, 이 리소스 파일(120)에 접근하여 다운로드 받을 수 있는 주소(URL)는 마크업 언어(111)에서 태그의 속성으로 기술된다. 이러한 리소스 파일(120)은 장면 기술(scene description), 비디오(video), 오디오(audio), 이미지(image), 폰트(font), 텍스트(text), 메타데이터(meta-data) 및 스크립트(script) 파일 등을 예시할 수 있다. 이하로는, 보다 정확한 이해와 설명의 편의를 위해, 리소스 파일(120)을 이미지 파일의 관점에 맞춰 설명할 것이나 리소스 파일(120)을 이미지 파일로 한정하는 것은 아니다. 또한, 리소스 파일(120)은 앞서 나열한 것 이외에도 다양한 종류가 존재할 수 있으며, 다양한 형식(format)의 파일이 될 수 있다. 특히, 다른 웹 페이지 또는 다른 웹 어플리케이션의 어느 일 페이지(10)도 리소스 파일(120)이 될 수 있다. 즉, 리소스 파일(120)은 각 리소스 파일(120)의 형식에 맞는 형태로 링크를 통해 웹 어플리케이션의 페이지(10)에 삽입되는 개별 파일을 모두 포함하는 의미이다.The resource file 120 is various files inserted into the page 10. The resource file 120 may be inserted into the page 10 using a link tag through a programming language that describes the source file 110. [ The resource file 120 can be stored in any one of the devices on the Web and an address (URL) that can be accessed and downloaded to the resource file 120 is described as an attribute of the tag in the markup language 111 do. The resource file 120 may include a scene description, a video, an audio, an image, a font, a text, meta-data, ) File can be exemplified. Hereinafter, the resource file 120 will be described in accordance with the viewpoint of the image file, but the resource file 120 is not limited to the image file for better understanding and explanatory convenience. In addition, the resource file 120 may exist in various types other than those listed above, and may be a file of various formats. In particular, any one page 10 of another web page or other web application can be a resource file 120. [ That is, the resource file 120 includes all the individual files inserted into the page 10 of the web application through the link in a form corresponding to the format of each resource file 120.

구성(Configuration) 정보는 구성 정보 파일(210)에 기술되는 내용으로, 해당 웹 어플리케이션의 패키지에 포함되는 파일의 목록, 그 파일 별 공개 여부와 공개 범위, 및 웹 어플리케이션의 실행 환경을 설정하기 위한 설정 값이 저장된다. 여기서, 실행 환경은 웹 어플리케이션이 실행되기 위해 요구되는 사양과 그 설정을 기술하는 것으로, 화면 크기, CPU, 그 CPU의 클럭 속도, 운영 체제, 입력 및 출력을 위한 버퍼(buffer)의 형태 및 크기 등이 될 수 있다.The configuration information is the contents described in the configuration information file 210. The configuration information includes a list of files included in the package of the corresponding web application, a disclosure status and a disclosure range for each file, and a setting for setting an execution environment of the web application The value is stored. Here, the execution environment describes specifications and settings required for a web application to be executed, and includes a screen size, a CPU, a clock speed of the CPU, an operating system, a buffer type and size for input and output .

정책 정보는 정책 정보 파일(220)에 기술되는 내용으로, 해당 웹 어플리케이션이 단말의 운영 체제에 접근할 수 있는 접근 권한의 범위를 지정하기 위한 정보로, 해쉬 코드 등을 예로 들 수 있다. 해쉬 코드(Hash code)는 웹 어플리케이션의 무결성(integrity)을 검증하기 위한 것으로, 이 해쉬 코드를 이용하여 해당 웹 어플리케이션이 단말의 운영 체제에 접근할 수 있는 권한이 있는지 여부를 확인할 수 있다.The policy information is information described in the policy information file 220 and is information for designating a range of access authority for the corresponding web application to access the operating system of the terminal, for example, a hash code. The hash code is used to verify the integrity of the web application. The hash code can be used to confirm whether or not the corresponding web application is authorized to access the operating system of the terminal.

그러면, 상술한 소스 파일(110) 및 리소스 파일(120)이 어떻게 해석되고 화면으로 표현되는지 살펴보기로 한다. 프로그래밍 언어는 명령형 기술 언어와 선언적 기술 언어로 분류할 수 있다. 명령형 기술 언어는 "어떤 방법"으로 해를 구할 것인지에 중점을 두어 기술되는 언어로, 실행될 알고리즘을 명시하고 목표는 명시하지 않는다. 대표적으로 전통적인 포트란, C, 자바 등이 명령형 기술 언어에 해당한다. 이와 반대로, 선언적 기술 언어는 "해"가 무엇인지를 설명하는 것에 중점을 두어 기술되는 언어로, 목표를 명시하고 알고리즘은 명시하지 않는다. 본 발명의 실시예에 따른 소스 파일(110)은 선언적 기술 언어로 작성된다. 예를 들어, 소스 파일(110)이 마크업 언어 중 HTML로 작성되었다고 했을 때, 그 HTML의 태그 및 태그의 속성은 HTML 뷰어(Viewer), 즉, 브라우저에서 무엇을 보여주어야 하는지를 선언하는 것이다. 이에 따라, 실제 브라우저를 동작하는 브라우저 엔진의 절차적 알고리즘이 태그 및 태그의 속성을 해석하여, 화면에 표시할 점들로 변환한다. 이를 위하여, 선언적 기술 언어로 작성된 소스 파일(110)의 구성 성분(태그 및 속성)을 의미 있는 토큰으로 분해(parsing)하여 그들 사이의 위계 관계를 분석한 후, 분석된 위계 관계에 따라 문장의 구조가 이미 결정된 파스 트리(parse tree)를 구성한다. 파스 트리의 각 노드(node)는 태그, 속성 및 일반 텍스트를 포함할 수 있으며, 이는 무엇을 보여주어야 하는지 선언한 것이다. 그러므로, 브라우저는 각 노드의 선언된 바를 트리 구조의 위계 관계에 따라 표현한다. 이에 대해서 좀 더 자세히 설명하기로 한다.Hereinafter, how the source file 110 and the resource file 120 described above are interpreted and displayed as a screen will be described. Programming languages can be classified into imperative description languages and declarative description languages. An imperative description language specifies the algorithm to be executed in a language that is described with a focus on "what method" the solution is to be sought and does not specify the goal. Typically, traditional Fortran, C, Java, etc. correspond to the imperative description language. Conversely, a declarative description language is a language that is described with an emphasis on explaining what the "solution" is, and it does not specify the algorithm and the goal. A source file 110 according to an embodiment of the present invention is written in a declarative description language. For example, if the source file 110 is written in HTML of a markup language, the tag and tag attributes of the HTML declare what to show in the HTML viewer, i.e., the browser. Accordingly, the procedural algorithm of the browser engine that operates the actual browser interprets the attributes of the tags and the tags and converts them into points to be displayed on the screen. To do this, the constituent elements (tags and attributes) of the source file 110 written in the declarative description language are parsed into meaningful tokens to analyze the hierarchical relationship between them, and then the sentence structure Constitute a previously determined parse tree. Each node in the parse tree can contain tags, attributes, and plain text, which declares what to show. Therefore, the browser expresses the declaration of each node according to the hierarchical relationship of the tree structure. I will explain this in more detail.

도 3은 본 발명의 실시예에 따른 웹 어플리케이션의 어느 일 페이지를 해석하고 실행하는 방법을 설명하기 위한 도면이다.3 is a diagram for explaining a method of interpreting and executing a page of a web application according to an embodiment of the present invention.

도 3을 참조하면, 앞서 설명한 바와 같이, 소스 파일(110)은 마크업 언어(111), 스타일시트(113) 및 스크립트 언어(115)로 이루어진다. 여기서, 스크립트 언어(115)를 해석하는 방법에 대한 설명은 발명의 요지를 명확히 하기 위해 생략하기로 한다.Referring to FIG. 3, the source file 110 includes a markup language 111, a style sheet 113, and a script language 115, as described above. Here, the description of the method for interpreting the script language 115 will be omitted in order to clarify the gist of the invention.

S301 단계에서, 마크업 언어(111) 및 스타일시트(113)는 선언적 기술 언어의 해석 방법에 따라, 구성 성분을 의미 있는 토큰으로 분해하여 그들 사이의 위계 관계의 분석을 거쳐 문장의 구조가 이미 결정된 파스 트리를 구성한다. 여기서, 파스 트리는 DOM(Document Object Model) 트리(310) 및 스타일 트리(320)를 포함한다. 즉, 마크업 언어(111)는 태그, 그 태그의 속성 및 일반 텍스트로 이루어지며, 이 마크업 언어(111)는 분해된 후, 각각의 위계 관계에 따라 DOM 트리(310)를 구성한다. 스타일시트(113)는 마크업 언어(111)에 의해 표현되는 페이지(10)의 글자, 여백, 레이아웃 등을 지정하는 스타일을 가지며, 이 스타일시트(113)는 분해되어 복수의 스타일이 위계 관계에 따라 트리 구조로 정리된 스타일 트리(320)를 구성한다. In step S301, the markup language 111 and the style sheet 113 decompose the constituent components into meaningful tokens according to the interpretation method of the declarative description language, analyze the hierarchical relationship between them, Construct a parse tree. Here, the parse tree includes a Document Object Model (DOM) tree 310 and a style tree 320. That is, the markup language 111 is composed of a tag, an attribute of the tag, and a plain text. After the markup language 111 is decomposed, the DOM tree 310 is configured according to each hierarchical relationship. The style sheet 113 has a style that specifies the characters, margins, layout, and the like of the page 10 represented by the markup language 111, and the style sheet 113 is decomposed into a hierarchical relationship Thereby constructing a style tree 320 arranged in a tree structure.

그런 다음, S303 단계에서 DOM 트리(310) 및 스타일 트리(320)가 결합되어 랜더러 트리(330)를 구성한다. 이어서, S305 단계에서 랜더러 트리(330)의 해석을 통해 스타일에 맞는 레이아웃을 설정하고, 각 속성의 값을 해당 레이아웃에 배치하여 페이지 데이터(340)를 생성한다. 이 페이지 데이터(340)는 랜더링되어 페이지(10)로 표시되기 전의 데이터이다.Then, in step S303, the DOM tree 310 and the style tree 320 are combined to form a renderer tree 330. [ Then, in step S305, a layout suitable for the style is set through the analysis of the renderer tree 330, and the values of the respective attributes are arranged in the layout to generate the page data 340. [ The page data 340 is data before being rendered and displayed on the page 10.

다음으로, S307 단계에서 페이지 데이터(340)의 구조를 변경(serialization)하여 바이너리 형태로 저장한다. 이와 같이, 바이너리 형태로 저장된 페이지 데이터를 바이너리 페이지 데이터(350)라고 칭하기로 한다. 이와 같은 상태에서 사용자가 해당 페이지(10)를 실행시키는 요청이 있으면, S309 단계에서 바이너리 페이지 데이터(350)를 랜더링하여 출력한다. 필요에 따라, 데이터 구조를 변경시키는 S307 단계는 생략할 수 있다. 즉, 페이지 데이터(340)에서 직접 랜더링하여 페이지(10)로 출력할 수 있다.Next, in step S307, the structure of the page data 340 is serialized and stored in a binary form. The page data stored in binary form is referred to as binary page data 350 in this manner. If the user requests to execute the page 10 in this state, the binary page data 350 is rendered and output in step S309. If necessary, step S307 of changing the data structure may be omitted. That is, the page data 340 can be directly rendered and output to the page 10.

리소스 파일(120)은 마크업 언어(111)의 속성으로 페이지(10)에 삽입된다. 이에 따라, 본 발명의 실시예에 따르면, 마크업 언어(111)의 속성을 분석하여 리소스 파일(120)을 미리 다운로드 받고, 저장한 후, 저장된 파일의 위치 값으로 그 속성을 변경한다. 이에 따라, 웹 어플리케이션 실행 시, 리소스 파일(120)을 다운로드 하는 시간을 절약할 수 있다. 이에 대해서 더 자세히 살펴보기로 한다.The resource file 120 is inserted into the page 10 as an attribute of the markup language 111. Accordingly, according to the embodiment of the present invention, the attributes of the markup language 111 are analyzed, the resource file 120 is downloaded in advance, stored, and the attribute is changed to the position value of the stored file. Accordingly, it is possible to save time for downloading the resource file 120 when executing the web application. Let's take a closer look at this.

도 4는 본 발명의 실시예에 따른 소스 파일을 설명하기 위한 도면이며, 도 5는 도 4의 소스 파일로부터 구성된 DOM 트리를 설명하기 위한 도면이고, 도 6은 도 4의 소스 파일로부터 실행된 웹 어플리케이션의 페이지를 설명하기 위한 도면이다.FIG. 4 is a diagram for explaining a source file according to an embodiment of the present invention, FIG. 5 is a diagram for explaining a DOM tree constructed from the source files of FIG. 4, Fig. 8 is a diagram for explaining a page of an application. Fig.

도 4에 마크업 언어(111)로만 기술된 소스 파일(110)의 예를 개시하였다. 개시된 바와 같이, 웹 표준 언어인 HTML에 따른 태그 및 그 태그의 속성이 기술되었다.An example of the source file 110 described only in the markup language 111 is shown in Fig. As disclosed, tags according to HTML, a web standard language, and attributes of the tags are described.

도면 부호 41은 태그 <img>와 속성 "src"를 나타낸다. 여기서, 태그 <img>는 리소스 파일(120)인 이미지 파일을 표시하도록 선언한 것이며, 그 속성 "src"은 그 이미지 파일의 링크(주소)를 선언한 것이다. 이는 이미지 파일인 "resource01.jpg"를 그 속성인 주소 "http://img_server.com/resource/ resource01.jpg"에서 다운로드 하여 페이지(10)에 표시하도록 선언한 것이다.Reference numeral 41 denotes a tag <img> and an attribute "src". Here, the tag <img> is a declaration for displaying an image file which is the resource file 120, and the attribute "src" declares a link (address) of the image file. It is declared that the image file "resource01.jpg" is downloaded from the attribute "http://img_server.com/resource/ resource01.jpg" and displayed on the page 10.

도면 부호 43은 태그 <a>, 속성 "href" 및 텍스트 "페이지 링크"를 나타낸다. 여기서, 태그 <a>는 페이지의 링크를 나타내도록 선언한 것이며, 그 속성 "href"는 그 페이지의 링크(주소)를 선언한 것이다. 그리고 이 링크는 텍스트 "페이지 링크"에 연동된다. 이는 텍스트 "페이지 링크"를 선택하면, 링크된 페이지의 소스 파일(110)인 "page02.html"를 그 속성인 주소 "file://app-storage/page02.html"에서 불러온 후, 그 소스 파일(110)을 해석하여 새로운 페이지(10)를 표시하도록 선언한 것이다.Reference numeral 43 denotes a tag <a>, an attribute "href", and a text "page link". Here, the tag <a> is a declaration to indicate a link of a page, and the attribute "href " declares a link (address) of the page. This link is linked to the text "page link". When a text "page link" is selected, the source file 110 of the linked page, " page02.html " is called from the attribute "file: //app-storage/page02.html" Interprets the file 110 and declares the new page 10 to be displayed.

도면 부호 45의 태그 <h1>은 텍스트의 크기를 조절하기 위한 것이며, 이에 따라, 이 태그 <h1>은 단순히 텍스트 "리소스 파일 링크도 아니고 다른 페이지의 링크도 아닌 경우"를 페이지(10)에 표시하도록 선언한 것이다.The tag <h1> of the reference numeral 45 is for adjusting the size of the text, and accordingly, the tag <h1> is displayed on the page 10 simply as a text "not a resource file link nor a link of another page" I have declared it to be.

상술한 바와 같이 마크업 언어(111)에 기술된 태그 및 그 속성 및 단순 텍스트 등은 파싱되어 DOM 트리(310)로 변환된다. 도 5에 도 4의 소스 파일(110)의 마크업 언어(111)를 변환시킨 DOM 트리(310)를 도시하였다. 도시된 바와 같이, DOM 트리(310)는 의미 있는 구성 성분, 즉, 태그, 속성, 텍스트 등을 각각 하나의 노드(node)로 변환시킨다. 예컨대, 도 4의 도면 부호 41의 태그 <img>와 속성 "src"는 도면 부호 51과 같이 각각 하나의 노드로 변환된다. 또한, 도 4의 도면 부호 43의 태그 <a>와 속성 "href" 및 단순 텍스트인 "페이지 링크"는, 도면 부호 53과 같이 각각 하나의 노드로 변환된다. 그리고 도면 부호 45의 태그 <h1> 및 단순 텍스트 "리소스 링크도 아니고 다른 페이지의 링크도 아닌 경우"는 도면 부호 55와 같이 각각 하나의 노드로 변환된다. 한편, DOM 트리(310)에서는 태그가 변환된 노드를 요소(Element)라고 칭하기도 한다.As described above, the tag described in the markup language 111, its attributes, simple text, and the like are parsed and converted into the DOM tree 310. [ FIG. 5 shows a DOM tree 310 in which the markup language 111 of the source file 110 of FIG. 4 is transformed. As shown, the DOM tree 310 transforms meaningful components, i.e., tags, attributes, text, etc., into one node. For example, the tag &quot; img &quot; and the attribute "src" at 41 in Fig. 4 are converted into one node, respectively, In addition, the tag <a> and attribute "href" denoted by reference numeral 43 in FIG. 4 and the "page link", which is a simple text, are each converted into one node as denoted by reference numeral 53. The tag <h1> of the reference numeral 45 and the simple text "not a resource link and not a link of another page" are converted into one node, respectively, On the other hand, in the DOM tree 310, a node whose tag has been transformed is also referred to as an element.

앞서 설명한 바와 같이, 변환된 DOM 트리(310)는 스타일시트(113)가 변환된 스타일 트리(320)와 결합되어 랜더러 트리(330)가 되며, 랜더러 트리(330)를 해석하여 페이지(10)를 구성하기 위한 페이지 데이터(340)를 형성한다. 또한, 페이지 데이터(340)는 이진화되어 바이너리 페이지 데이터(350)가 될 수 있다. 페이지 데이터(340) 또는 바이너리 페이지 데이터(350)는 랜더링되어 실제 페이지(10)로 표시될 수 있다. 도 6에 페이지(10)를 표시한 화면 예를 도시하였다. 이 페이지(10)와 DOM 트리(310)와의 상관 관계를 살펴본다.The transformed DOM tree 310 is combined with the transformed style tree 320 into the renderer tree 330 and the renderer tree 330 is interpreted to transform the page 10 And forms page data 340 for constitution. Also, the page data 340 may be binarized to be the binary page data 350. [ The page data 340 or the binary page data 350 may be rendered and displayed as the actual page 10. FIG. 6 shows an example of a screen on which the page 10 is displayed. A correlation between the page 10 and the DOM tree 310 will be described.

도면 부호 51의 DOM 트리(310)는 도면 부호 61과 같은 이미지를 표시한다. 일반적으로 리소스 파일(120)은 웹 어플리케이션이 실행될 때, 그 속성인 주소 "http://img_server.com/resource/resource01.jpg"로부터 다운로드 되어 페이지(10)에 표시된다. 반면, 본 발명의 실시예에 따르면 리소스 파일(120)을 미리 다운로드 받아 저장한다. 그런 다음, 속성을 그 리소스 파일(120)이 저장된 경로로 변경하여, DOM 트리(310)를 구성한다. 이에 따라, 웹 어플리케이션 실행 시, 리소스 파일(120)을 다운로드 하는 과정을 생략하고 바로 리소스 파일(120)인 이미지를 화면에 표시할 수 있다. 따라서 리소스 파일(120)을 다운로드 하는 시간을 절약할 수 있으므로 사용자의 반응에 대한 응답 속도의 향상을 가져올 수 있다.The DOM tree 310 of the reference numeral 51 represents an image such as the reference numeral 61. [ Generally, the resource file 120 is downloaded from the address "http://img_server.com/resource/resource01.jpg" and displayed on the page 10 when the web application is executed. On the other hand, according to the embodiment of the present invention, the resource file 120 is previously downloaded and stored. Then, the DOM tree 310 is configured by changing the attribute to the path where the resource file 120 is stored. Accordingly, when the web application is executed, the process of downloading the resource file 120 may be omitted and the image that is the resource file 120 may be directly displayed on the screen. Therefore, it is possible to save time for downloading the resource file 120, and thus it is possible to improve the response speed to the response of the user.

도면 부호 53의 DOM 트리(310)는 해석되어 도면 부호 63과 같은 링크로 표시된다. 이때, 사용자가 텍스트 "페이지 링크"를 선택하면, 그 속성에 따라 file://app-storage/page02.html"로 링크된 페이지의 소스 파일(110)인 "page02.html"을 실행시킨다.The DOM tree 310 at 53 is parsed and displayed as a link, At this time, when the user selects the text "page link "," page02.html ", which is the source file 110 of the page linked to file: //app-storage/page02.html, is executed according to the attribute.

도면 부호 55의 DOM 트리(310)는 해석되어 도면 부호 65와 같은 텍스트를 표시한다.The DOM tree 310 at 55 is interpreted to display text,

다음으로, 상술한 바와 같이 웹 어플리케이션을 실행시키는 장치에 대해서 설명하기로 한다. 도 7은 본 발명의 실시예에 따른 웹 어플리케이션 실행 장치를 설명하기 위한 도면이다.Next, an apparatus for executing a web application as described above will be described. 7 is a diagram for explaining a web application execution apparatus according to an embodiment of the present invention.

도 7을 참조하면, 본 발명의 실시예에 따른 웹 어플리케이션 실행 장치는, 네트워크 연결부(710), 저장부(720), 표시부(730), 입력부(740) 및 제어부(750)를 포함한다.7, the apparatus for executing a web application according to an exemplary embodiment of the present invention includes a network connection unit 710, a storage unit 720, a display unit 730, an input unit 740, and a control unit 750.

네트워크 연결부(710)는 네트워크에 연결해 통신을 수행하기 위한 장치이다. 웹 어플리케이션 실행 장치는 네트워크를 통해 웹에 연결된다. 따라서 네트워크 연결부(710)는 네트워크에 연결해 본 발명의 실시예에 따른 리소스 파일(120)을 다운로드 하여 제어부(750)에 제공한다. 이러한 네트워크 연결부(710)는 무선 및 유선 연결 중 적어도 하나를 이용하여 네트워크에 연결될 수 있다.The network connection unit 710 is a device for performing communication by connecting to a network. The web application execution device is connected to the web via a network. Accordingly, the network connection unit 710 connects to the network, downloads the resource file 120 according to the embodiment of the present invention, and provides the downloaded resource file 120 to the control unit 750. The network connection unit 710 may be connected to the network using at least one of a wireless and a wired connection.

저장부(720)는 데이터를 일시 또는 반영구적으로 저장하기 위한 장치로, 하드디스크(HDD, Hard Disk Drive)와 같은 스토리지 및 램(RAM, Read Access Memory)과 같은 메모리(Memory)를 통칭한다.The storage unit 720 is a device for storing data temporarily or semi-permanently, and refers to a memory such as a hard disk (HDD) and a memory such as a RAM (Read Access Memory).

저장부(720)는 본 발명의 실시예에 따른 웹 어플리케이션 패키지를 저장한다. 이때, 웹 어플리케이션의 소스 파일(110) 및 리소스 파일(120)을 포함하는 콘텐츠 파일(100)은 일반 영역에 저장되며, 구성 정보 파일(210) 및 정책 정보 파일(220)을 포함하는 정보 파일(200)은 보안 영역에 저장될 수 있다. 여기서, 보안 영역은 접근에 제한을 두는 영역이며, 일반 영역은 보안 영역에 반해 접근에 제한을 두지 않는 영역이다.The storage unit 720 stores a web application package according to an embodiment of the present invention. At this time, the content file 100 including the source file 110 and the resource file 120 of the web application is stored in the general area, and the information file including the configuration information file 210 and the policy information file 220 200 may be stored in the secure area. Here, the security area is an area where access is restricted, and the general area is an area that does not restrict access to the security area.

특히, 본 발명의 실시예에 따른 소스 파일(110) 및 리소스 파일(120), 구성 정보 파일(210) 및 정책 정보 파일(220)은 데이터베이스(DB, Database) 구조로 저장될 수 있다. 이러한 경우, 데이터베이스의 구조는 도 2a에 도시된 바와 같이, 하나의 웹 어플리케이션 패키지 별로 접근할 수 있도록 구현됨이 바람직하다. 즉, 웹 어플리케이션 패키지는 콘텐츠 파일(100), 정보 파일(200)로 구성되며, 콘텐츠 파일(100)은 소스 파일(110) 및 리소스 파일(120)을 포함하고, 정보 파일(200)은 구성 정보 파일(210) 및 정책 정보 파일(220)을 포함한다. 이에 따라, 어느 하나의 리소스 파일(120)에 접근하기 위해서는 웹 어플리케이션 패키지, 콘텐츠 파일(100) 및 리소스 파일(120) 순으로 접근할 수 있도록 데이터베이스 구조를 구현함이 바람직하다. 저장부(720)는 저장되는 영역을 기능적으로 구분할 수 있다. 즉, 저장부(720)는 레지스트리(registry) 및 큐(Queue) 등으로 기능 분류될 수 있다.In particular, the source file 110, the resource file 120, the configuration information file 210, and the policy information file 220 according to the embodiment of the present invention may be stored in a database (DB) structure. In this case, it is preferable that the structure of the database is implemented so that one Web application package can be accessed as shown in FIG. 2A. That is, the web application package includes a content file 100 and an information file 200. The content file 100 includes a source file 110 and a resource file 120, and the information file 200 includes configuration information A file 210 and a policy information file 220. Accordingly, in order to access any one of the resource files 120, it is preferable to implement a database structure so that the web application package, the content file 100, and the resource file 120 can be accessed in this order. The storage unit 720 can functionally distinguish the stored area. That is, the storage unit 720 can be functionally classified into a registry and a queue.

레지스트리에는 웹 어플리케이션 패키지에 대한 정보 및 그 웹 어플리케이션이 실행 정보가 저장되며, 이에 따라, 웹 어플리케이션이 레지스트리에 등록된다. 앞서 설명한 바와 같이, 웹 어플리케이션 패키지는 소스 파일(110), 리소스 파일(120), 구성 정보 파일(210) 및 접근 정보 파일(220)로 이루어지며, 레지스트리에는 이 소스 파일(110), 리소스 파일(120), 구성 정보 파일(210) 및 접근 정보 파일(220) 등이 실제 저장된 위치 또는 접근 경로가 기술될 수 있다. 그리고 레지스트리에는 본 발명의 실시예에 따른 웹 어플리케이션의 실행 정보가 등록된다. 본 발명의 실시예에 따른 웹 어플리케이션은 설치될 때, 그 웹 어플리케이션의 실행 정보가 레지스트리에 등록된다. 실행 정보는 해당 웹 어플리케이션을 실행시키기 위한 정보이며, 프로토콜 스킴(protocol scheme) 및 그 프로토콜 스킴에 이어서 기술되는 주소로 이루어진다. 여기서, 주소는 도메인 명칭(domain name) 및 웹 어플리케이션 패키지 명칭 및 시작 페이지를 포함한다. 도메인 명칭은 웹 어플리케이션을 제작한 제작사 또는 웹 어플리케이션을 제공하는 콘텐츠 제공자의 도메인 명칭이며, 웹 어플리케이션 패키지 명칭은 해당 웹 어플리케이션을 이루는 패키지의 명칭이고, 시작 페이지는 해당 웹 어플리케이션을 실행할 때 가장 먼저 실행시키는 페이지(10)를 기술하는 소스 파일(110)의 명칭이다. 이때, 시작 페이지는 생략될 수 있으며, 시작 페이지가 생략되는 경우, 기 설정된 페이지가 디폴트 값(default value)으로 시작 페이지를 대신한다. 또한, 레지스트리에는 다운로드 리소스 목록이 저장된다. 이 다운로드 리소스 목록은 각 웹 어플리케이션 별로 다운로드 받기 위한 리소스 파일(120)의 목록이며, 그 리소스 파일을 다운로드 하여 저장한 위치(주소) 및 그 리소스 파일의 다운로드 여부 등이 추가로 기술된다. 다운로드 리소스 목록은 웹 어플리케이션의 모든 페이지로부터 추출한다. 여기서, 주소는 소스 파일(110)에서 리소스 파일(110)을 나타내는 태그의 속성을 추출한 것이다.The registry stores information about the web application package and the execution information of the web application, and the web application is registered in the registry accordingly. As described above, the web application package includes a source file 110, a resource file 120, a configuration information file 210, and an access information file 220. The registry includes a source file 110, a resource file 120, the configuration information file 210, the access information file 220, and the like may be described. The execution information of the web application according to the embodiment of the present invention is registered in the registry. When the web application according to the embodiment of the present invention is installed, the execution information of the web application is registered in the registry. The execution information is information for executing the corresponding web application, and consists of a protocol scheme and addresses described following the protocol scheme. Here, the address includes a domain name and a web application package name and a start page. The domain name is a domain name of a manufacturer who produced the web application or a content provider that provides the web application. The name of the web application package is the name of the package that constitutes the corresponding web application. The start page is the first name Is the name of the source file 110 describing the page 10. At this time, the start page may be omitted, and if the start page is omitted, the predetermined page replaces the start page with a default value. The registry also stores a list of download resources. This download resource list is a list of resource files 120 for downloading for each web application, and the location (address) where the resource file is downloaded and stored and whether or not the resource file is downloaded is further described. The download resource list is extracted from every page of the web application. Here, the address is an attribute of the tag indicating the resource file 110 extracted from the source file 110.

큐(Queue)는 본 발명의 실시예에 따른 다운로드 리소스 목록을 작성할 때, 각 페이지를 순차로 검색하기 위해 사용된다. 이러한 큐는 입력되는 순서로 출력하는 선입선출(FIFO, First In First Out) 방식에 따라 데이터를 입력받고 출력한다.A queue is used to sequentially search each page when creating a download resource list according to an embodiment of the present invention. These queues receive and output data in accordance with a first-in first-out (FIFO) scheme that outputs the queues in the input order.

표시부(730)는 제어부(750)로부터 출력되는 신호를 화면으로 표시하는 역할을 수행한다. 특히, 표시부(730)는 본 발명의 실시예에 따른 페이지(10)를 화면으로 표시한다. 표시부(730)는 터치스크린(touch screen)이 될 수 있다. 이와 같이, 터치스크린으로 표시부(730)가 형성된 경우, 표시부(730)는 입력부(740)의 기능 중 일부 또는 전부를 수행할 수 있다.The display unit 730 displays a signal output from the control unit 750 as a screen. In particular, the display unit 730 displays the page 10 according to the embodiment of the present invention on a screen. The display unit 730 may be a touch screen. In this manner, when the display unit 730 is formed by the touch screen, the display unit 730 can perform some or all of the functions of the input unit 740.

입력부(740)는 숫자 또는 문자 정보를 입력 받고 다양한 기능을 설정하기 위한 다수의 입력키 및 기능키를 포함할 수 있다. 그리고 입력부(740)는 사용자의 키 입력을 감지하여, 감지된 키 입력에 따른 입력 신호를 제어부(750)로 전달한다.The input unit 740 may include a plurality of input keys and function keys for receiving numeric or character information and setting various functions. The input unit 740 senses the key input of the user and transmits an input signal corresponding to the sensed key input to the control unit 750.

제어부(750)는 본 발명의 실시예에 따른 웹 어플리케이션을 설치할 시, 레지스트리에 해당 웹 어플리케이션의 실행 정보를 등록한다. 실행 정보는 해당 웹 어플리케이션을 실행시키기 위한 정보이며, 프로토콜 스킴 및 그 프로토콜 스킴에 이어서 기술되는 주소로 이루어진다. 여기서, 주소는 도메인 명칭, 웹 어플리케이션 패키지 명칭 및 시작 페이지를 포함한다. 시작 페이지가 생략되는 경우, 기 설정된 페이지가 디폴트 값(default value)으로 시작 페이지로 실행된다. 본 발명의 실시예에 따른 프로토콜 스킴은 "httpa://"의 형식으로 정의한다. 제어부(750)는 이 프로토콜 스킴을 해석할 때, 이 프로토콜 스킴 이후에 기술되는 주소를 참조하여 웹 어플리케이션을 실행시킨다. 브라우저에서는 "file://", "http://", "https://"와 같은 프로토콜 스킴을 통해 자원에 접근할 수 있다. 프로토콜 스킴이 "file://"인 경우, 프로토콜 스킴에 이어서 기술되는 경로에 따라 파일 시스템에 접근하여 페이지를 실행시키며, 프로토콜 스킴이 "http://"와 "https://"인 경우, 프로토콜 스킴에 이어서 기술되는 주소를 통해 해당 페이지(10)를 다운로드 하여 실행시킬 수 있다. 이와 마찬가지로, 본 발명의 실시예에 따른 프로토콜 스킴 "httpa://"를 사용하는 경우, 제어부(750)는 프로토콜 스킴에 이어서 기술되는 주소 또는 경로를 통해 저장부(720)에서 해당 페이지(10)를 불러와서 실행시킨다.When installing the web application according to the embodiment of the present invention, the control unit 750 registers execution information of the corresponding web application in the registry. The execution information is information for executing the corresponding web application, and consists of a protocol scheme and addresses described following the protocol scheme. Here, the address includes the domain name, the name of the web application package, and the start page. If the start page is omitted, the pre-set page is executed as the start page with the default value. The protocol scheme according to the embodiment of the present invention is defined as "http: // ". When interpreting the protocol scheme, the control unit 750 refers to the address described after the protocol scheme, and executes the web application. Browsers can access resources through protocol schemes such as "file: //", "http: //", "https: //" If the protocol scheme is "file: //", the page is accessed by accessing the file system according to the path described following the protocol scheme. If the protocol schemes are "http: //" and "https: //" It is possible to download and execute the page 10 through the address described following the protocol scheme. Similarly, when using the protocol scheme "httpa: //" according to the embodiment of the present invention, the control unit 750 controls the corresponding page 10 in the storage unit 720 through an address or path, And executes it.

예를 들면, 웹 어플리케이션 패키지 명칭이 "application1.swa"라고 하고, 콘텐츠 제공자의 도메인 명칭이 "www.abc.com"이라 할 때, 그 주소는 "www.abc.com/application1.swa"로 표현될 수 있다. 이 경우, 해당 웹 어플리케이션의 실행 정보는 "httpa://www.abc.com/application1.swa"가 된다. 이에 따라, 제어부(750)는 저장부(720)에서 웹 어플리케이션 패키지 명칭이 "application1.swa"인 웹 어플리케이션을 검색하여 이를 실행시킨다. 이때, 제어부(750)는 시작 페이지를 미리 설정된 디폴트 값(default value)으로 하여 웹 어플리케이션을 실행시킨다. 또한, 웹 어플리케이션 시작 페이지의 소스 파일의 명칭이 "page01.html"인 경우, 그 주소는 "www.abc.com/application1.swa/page01.html"로 표현될 수 있다. 이러한 경우, 해당 웹 어플리케이션의 실행 정보는 "httpa://www.abc.com/application1.swa/page01.html"가 된다. 이에 따라, 제어부(750)는 저장부(720)에서 웹 어플리케이션 패키지 명칭이 application1.swa인 웹 어플리케이션을 검색하여 이를 실행시킨다. 특히, 제어부(750)는 시작 페이지를 "page01.html"로 하여 웹 어플리케이션을 실행시킨다. 한편, 확장자 "swa"는 웹 어플리케이션 패키지임을 나타내는 확장자로서, 임의로 지정된 이름이다.For example, when the name of the web application package is "application1.swa" and the content provider's domain name is "www.abc.com", the address is expressed as "www.abc.com/application1.swa" . In this case, the execution information of the corresponding web application is "http: //www.abc.com/application1.swa ". Accordingly, the control unit 750 searches the storage unit 720 for the web application having the web application package name "application1.swa ", and executes the web application. At this time, the control unit 750 executes the web application with the start page set as a default value set in advance. If the source file name of the web application start page is "page01.html ", the address may be expressed as" www.abc.com/application1.swa/page01.html&quot ;. In this case, execution information of the corresponding web application becomes "http: //www.abc.com/application1.swa/page01.html&quot ;. Accordingly, the control unit 750 searches the storage unit 720 for a web application having a web application package name application1.swa and executes the web application. In particular, the control unit 750 executes the web application by setting the start page to "page01.html ". On the other hand, the extension "swa" is an extension indicating that the web application package is an arbitrarily designated name.

한편, 본 발명의 실시예에 따른 웹 어플리케이션 패키지가 데이터베이스 구조로 저장된 경우, 제어부(750)는 상술한 프로토콜 스킴 대신 쿼리(Query)를 이용하여 페이지(10)를 기술하는 소스 파일(110) 또는 리소스 파일(120)을 데이터베이스로부터 불러와서 실행시키거나, 다운로드 받은 리소스 파일(120)을 데이터베이스에 저장시킬 수 있다. 예컨대, 쿼리는 명령어(저장 또는 불러오기) 및 소스 파일(110) 또는 리소스 파일(120)의 저장 위치를 기술하는 주소의 쌍으로 이루어질 수 있다. 제어부(750)는 본 발명의 실시예에 따라 웹 어플리케이션이 레지스트리에 등록되면, 다운로드 리소스 목록을 작성한다. 그리고 제어부(750)는 대기 모드에서 다운로드 리소스 목록에 따라, 해당 웹 어플리케이션의 리소스 파일(120)을 네트워크 연결부(710)를 통해 미리 다운로드 받는다. 여기서, 대기 모드는 네트워크 연결부(710)의 네트워크와의 연결을 통한 데이터의 업로드 또는 다운로드 트래픽(traffic)이 기 설정된 크기 미만인 경우를 의미하며, 네트워크를 사용하고 있지 않은 경우를 의미한다. 즉, 어느 하나 웹 어플리케이션이 실행 중인 경우에도, 네트워크의 트래픽이 기 설정된 크기 미만인 경우에는 다른 웹 어플리케이션은 리소스 파일(120)을 다운로드 받을 수 있다.If the web application package according to the embodiment of the present invention is stored in a database structure, the control unit 750 may use a query instead of the protocol scheme described above to generate a source file 110 describing the page 10, The file 120 may be loaded from the database and executed, or the downloaded resource file 120 may be stored in the database. For example, the query may consist of a pair of addresses describing instructions (storage or retrieval) and storage locations of the source file 110 or the resource file 120. The control unit 750 creates a download resource list when the web application is registered in the registry according to an embodiment of the present invention. The control unit 750 downloads the resource file 120 of the corresponding web application through the network connection unit 710 according to the download resource list in the standby mode. Here, the standby mode means a case where data uploading or downloading traffic through a connection with the network of the network connection unit 710 is less than a predetermined size, and it means that the network is not used. That is, even if any one of the web applications is running, when the traffic of the network is less than a predetermined size, another web application can download the resource file 120. [

그런 다음, 제어부(750)는 미리 다운로드 받은 리소스 파일(120)을 이용하여 웹 어플리케이션을 실행한다. 이에 따라, 실제 웹 어플리케이션 실행 시, 리소스 파일(120)을 다운로드 받는 시간을 절약할 수 있으므로, 웹 어플리케이션의 응답 속도를 향상시킬 수 있다.Then, the control unit 750 executes the web application using the resource file 120 previously downloaded. Accordingly, it is possible to save time for downloading the resource file 120 when an actual web application is executed, thereby improving the response speed of the web application.

다음으로, 상술한 웹 어플리케이션 실행 장치를 이용한 웹 어플리케이션 실행 방법에 대해서 살펴보기로 한다. 도 8은 본 발명의 실시예에 따른 웹 어플리케이션 실행 방법을 개략적으로 설명하기 위한 흐름도이다.Next, a method of executing a web application using the above-described web application execution apparatus will be described. FIG. 8 is a flowchart illustrating a method of executing a web application according to an embodiment of the present invention.

도 8을 참조하면, 제어부(750)는 S801 단계에서 웹 어플리케이션의 다운로드 리소스 목록을 작성한다. 이 다운로드 리소스 목록은 웹 어플리케이션의 소스 파일(110)에 링크로 포함된 리소스 파일(120)들의 목록이다.Referring to FIG. 8, the controller 750 creates a download resource list of the web application in step S801. This download resource list is a list of the resource files 120 included as a link in the source file 110 of the web application.

그런 다음, 제어부(750)는 S803 단계에서 대기 모드인 경우, 다운로드 리소스 목록의 리소스 파일(120)을 순차로 다운로드 한다. 여기서, 대기 모드는 네트워크 연결부(710)의 네트워크와의 연결을 통한 데이터의 업로드 또는 다운로드 트래픽이 기 설정된 크기 미만인 경우를 의미하며, 사용자가 네트워크를 사용하고 있지 않은 경우를 의미한다.In step S803, the control unit 750 sequentially downloads the resource files 120 of the download resource list in the standby mode. Here, the standby mode means a case where uploading or downloading data through a connection with the network of the network connection unit 710 is less than a preset size, and the case where the user is not using the network.

상술한 바와 같이, 대기 모드에서 리소스 파일(120)을 다운로드 받은 후, 사용자의 웹 어플리케이션 실행 요청이 있으면, 제어부(750)는 S805 단계에서 앞서 미리 다운로드 받은 리소스 파일(120)을 이용하여 웹 어플리케이션을 실행시킨다. 이와 같이, 미리 다운로드 받은 리소스 파일(120)을 이용하여, 웹 어플리케이션을 실행시킴으로써, 리소스 파일(120)을 다운로드 받는 시간을 절약할 수 있다. 이에 따라, 웹 어플리케이션 실행의 응답 속도를 향상시킬 수 있다.After the resource file 120 is downloaded in the standby mode, if the user requests to execute the web application, the control unit 750 displays the web application using the resource file 120 previously downloaded in step S805. . As described above, by executing the web application using the resource file 120 downloaded in advance, it is possible to save time for downloading the resource file 120. [ As a result, the response speed of web application execution can be improved.

상술한 바와 같이, 웹 어플리케이션의 리소스 파일(120)을 미리 다운로드 받기 전, 각 웹 어플리케이션 별로 다운로드 받기 위한 리소스 파일(120)의 목록인 다운로드 리소스 목록을 작성한다. 이러한 다운로드 리소스 목록 작성 방법에 대해서 설명하기로 한다. 도 9는 본 발명의 실시예에 따른 다운로드 리소스 목록을 작성하는 방법을 설명하기 위한 흐름도이다. 여기서, 각 웹 어플리케이션에 대해 다음과 같이 기술되는 과정을 통해 다운로드 리소스 목록을 작성할 수 있다.As described above, before downloading the resource file 120 of the web application, a download resource list is created, which is a list of resource files 120 for downloading for each web application. A method for creating such a download resource list will be described. 9 is a flowchart illustrating a method of creating a download resource list according to an embodiment of the present invention. Here, a download resource list can be created for each web application through a process described below.

도 9를 참조하면, 제어부(750)는 S901 단계에서 웹 어플리케이션 실행시 시작 페이지를 큐(Queue)에 입력한다. 이때, 제어부(750)는 레지스트리의 실행 정보를 참조하여, 웹 어플리케이션의 시작 페이지 및 그 시작 페이지가 저장된 위치를 알 수 있다. 또한, 큐는 선입선출(FIFO) 방식에 의해 먼저 입력된 페이지(10)를 제일 처음 출력한다.Referring to FIG. 9, in step S901, the controller 750 inputs a start page in the queue when the web application is executed. At this time, the control unit 750 can know the start page of the web application and the position where the start page of the web application is stored by referring to the execution information of the registry. Also, the queue first outputs the page 10 that was input first by the first-in first-out (FIFO) method.

제어부(750)는 S903 단계에서 큐에서 선입선출 방식에 따라 순차로 페이지(10)를 출력하고, S921 단계에서 큐에 페이지(10)가 존재하지 않음을 확인할 때까지 S903 내지 S921 단계를 반복한다. 또한, 제어부(750)는 S905 내지 S919 단계를 통해 큐로부터 출력된 페이지(10)에 대해 다운로드 리소스 목록을 작성한다. 이 다운로드 리소스 목록 작성 과정은 제어부(750)가 S917 단계에서 다운로드 리소스 목록의 용량이 기 설정된 용량을 초과할 것으로 판단하는 경우 다른 페이지의 존재 여부에 상관 없이 종료 될 수 있다. 다운로드 리소스 목록의 용량은 저장부(720)의 용량에 따라 달리 설정한다. 또한, 이 S905 내지 S919 단계는 제어부(750)가 S919 단계에서 그 페이지(10)의 모든 태그를 읽었음을 확인할 때까지 반복된다.The control unit 750 sequentially outputs the page 10 according to the first-in first-out method in step S903 and repeats steps S903 to S921 until it is confirmed that the page 10 does not exist in the queue in step S921. In addition, the control unit 750 creates a download resource list for the page 10 output from the queue through steps S905 to S919. If the controller 750 determines in step S917 that the capacity of the download resource list exceeds the predetermined capacity, the process of creating the download resource list may be terminated regardless of whether another page exists or not. The capacity of the download resource list is set differently according to the capacity of the storage unit 720. Steps S905 to S919 are repeated until the control unit 750 confirms that all the tags of the page 10 have been read in step S919.

하나의 페이지(10)에 대한 다운로드 리소스 목록 작성 방법을 살펴보면 다음과 같다. 먼저, 제어부(750)는 S905 단계에서 큐로부터 출력된 페이지(10) 내에서 순차로 한 줄씩 태그를 읽어 그 태그의 속성을 분석한 후, S907 단계에서 제어부(750)는 태그의 속성이 리소스 파일(120)의 링크인지 여부를 판단한다. 이때, 태그의 속성이 리소스 파일(120)인 경우, 제어부(750)는 S909 단계에서 해당 링크를 나타내는 주소(URL)를 다운로드 리소스 목록에 등록(추가)한다. 예컨대, 도 4를 참조하면, 도면 부호 41과 같은 태그가 존재하면, 해당 태그의 속성(주소)을 다운로드 리소스 목록에 등록한다.A method of creating a download resource list for one page 10 will be described below. In step S905, the control unit 750 sequentially reads a tag in a line by line in the page 10 output from the queue and analyzes the attribute of the tag. In step S907, It is determined whether or not the link is a link of the link 120. At this time, if the attribute of the tag is the resource file 120, the controller 750 registers (adds) the address (URL) indicating the link in the download resource list in step S909. For example, referring to FIG. 4, if a tag such as reference numeral 41 exists, the attribute (address) of the tag is registered in the download resource list.

해당 태그의 속성이 리소스 파일(120)의 링크가 아닌 경우, 제어부(750)는 S911 단계에서 태그의 속성이 웹 어플리케이션을 구성하는 다른 페이지(10)의 링크인지 여부를 판단한다. 다른 페이지(10)의 링크이면, 이 페이지(10)는 저장부(720)에 저장되어 있는 상태이다. 따라서 제어부(750)는 S913 단계에서 해당 페이지(10)를 큐에 입력한다. 예컨대, 도 4의 도면 부호 43과 같은 태그가 존재하면, 해당 태그의 속성이 나타내는 페이지(10)를 큐에 입력한다.If the attribute of the tag is not a link of the resource file 120, the control unit 750 determines whether the attribute of the tag is a link of another page 10 constituting the web application in step S911. If the page 10 is a link to another page 10, the page 10 is stored in the storage unit 720. Accordingly, the control unit 750 inputs the page 10 to the queue in step S913. For example, if there is a tag such as 43 in FIG. 4, the page 10 indicated by the attribute of the tag is input to the queue.

한편, S907 및 S911 단계의 판단 결과, 해당 태그의 속성이 리소스 파일(120)의 링크도 아니며, 다른 페이지(10)의 링크도 아닌 경우, 제어부(750)는 S915 단계에서 해당 태그에 대해 아무런 처리도 수행하지 않는다. 이 경우는 도 4의 도면 부호 45와 같은 태그를 예시할 수 있다.On the other hand, if it is determined in step S907 and step S911 that the attribute of the corresponding tag is neither a link of the resource file 120 nor a link of another page 10, the control unit 750 performs no processing on the tag in step S915 . In this case, the same tag as the reference numeral 45 in FIG. 4 can be exemplified.

그런 다음, 제어부(750)는 S917 단계에서 다운로드 리소스 목록이 기 설정된 용량을 초과하였는지 판단한다. S917 단계의 판단 결과 기 설정된 용량을 초과하면 분석할 태그 또는 다른 페이지(10)가 남아 있는 경우에도, 제어부(750)는 프로세스를 종료한다. 반면, S917 단계의 판단 결과 기 설정된 용량을 초과하지 않는 경우, 제어부(750)는 S919 단계로 진행한다. S919 단계에서 제어부(750)는 해당 페이지(10)의 모든 태그를 분석하였는지 판단한다. 이러한 S919 단계의 판단 결과 페이지(10)의 모든 태그를 분석한 경우, 제어부(750)는 S921 단계로 진행한다. 반면, S919 단계의 판단 결과 분석할 태그가 아직 남아 있는 경우, 제어부(750)는 S905 내지 S919 단계를 반복한다.Then, in step S917, the controller 750 determines whether the download resource list exceeds the preset capacity. If it is determined in step S917 that the predetermined capacity is exceeded, the control unit 750 ends the process even if the tag or other page 10 to be analyzed remains. On the other hand, if it is determined in step S917 that the predetermined capacity is not exceeded, the controller 750 proceeds to step S919. In step S919, the controller 750 determines whether all tags of the page 10 have been analyzed. If it is determined in step S919 that all the tags of the page 10 have been analyzed, the controller 750 proceeds to step S921. On the other hand, if it is determined in step S919 that the tag to be analyzed remains, the controller 750 repeats steps S905 to S919.

S921 단계에서 제어부(750)는 큐에 페이지(10)가 존재하는지 확인하여, 큐에 페이지(10)가 존재하면, S903 내지 S921 단계를 반복하며, 큐에 페이지(10)가 없는 경우, 프로세스를 종료한다.In step S921, the controller 750 determines whether the page 10 exists in the queue. If the page 10 exists in the queue, the control unit 750 repeats steps S903 through S921. If there is no page 10 in the queue, And terminates.

그러면, 상술한 바와 같이 작성된 다운로드 리소스 목록을 이용하여 해당 리소스 파일(120)을 다운로드 받는 방법에 대해서 설명하기로 한다. 리소스 파일(120)의 다운로드는 해당 웹 어플리케이션의 실행 전에 수행된다. 도 10은 본 발명의 실시예에 따른 웹 어플리케이션 실행을 위한 리소스 파일을 미리 다운로드 받는 방법을 설명하기 위한 흐름도이다.A method of downloading the resource file 120 using the download resource list created as described above will now be described. The download of the resource file 120 is performed before execution of the corresponding web application. FIG. 10 is a flowchart illustrating a method for downloading a resource file in advance for executing a web application according to an embodiment of the present invention.

도 10을 참조하면, 제어부(750)는 S1001 단계에서 현재 대기 모드에 진입하였다고 가정한다. 대기 모드인 경우, 제어부(750)는 S1003 단계에서 다운로드 리소스 목록을 불러와서, S1005 단계에서 다운로드 리소스 목록의 각 리소스 파일(120)을 순차로 검사한다. 이때, 제어부(750)는 S1007 단계에서 해당 리소스 파일(120)이 이미 다운로드 되어 저장되어 있는지 확인한다. 확인 결과, 다운로드 되지 않았으면, 제어부(750)는 S1009 단계에서 해당 리소스 파일(120)이 저장된 주소에 접속하여 리소스 파일(120)을 다운로드 하고, S1011 단계에서 다운로드한 리소스 파일(120)을 저장부(720)에 저장한다. 반면, 확인 결과 이미 다운로드 되었으면, 제어부(750)는 S1013 단계로 진행한다.Referring to FIG. 10, the controller 750 assumes that the current standby mode is entered in step S1001. In the standby mode, the control unit 750 invokes the download resource list in step S1003, and sequentially inspects each resource file 120 in the download resource list in step S1005. At this time, the controller 750 determines whether the corresponding resource file 120 is already downloaded and stored in step S1007. If it is determined that the resource file 120 has not been downloaded, the control unit 750 accesses the address where the corresponding resource file 120 is stored in step S1009 and downloads the resource file 120. In step S1011, (720). On the other hand, if the check result has already been downloaded, the control unit 750 proceeds to step S1013.

S1013 단계에서 제어부(750)는 저장부(720)에 리소스 파일(120)을 저장할 용도로 할당된 저장 용량의 여분이 있는지 판단한다. S1013 단계의 판단 결과 리소스 파일(120)을 더 저장할 수 없으면, 제어부(750)는 프로세스를 종료한다. 반면, S1013 단계의 판단 결과 리소스 파일(120)을 더 저장할 수 있으면, 제어부(750)는 S1015 단계로 진행한다.In step S1013, the controller 750 determines whether there is an extra storage capacity allocated for storing the resource file 120 in the storage unit 720. [ If it is determined in step S1013 that the resource file 120 can not be further stored, the control unit 750 ends the process. On the other hand, if it is determined in step S1013 that the resource file 120 can be further stored, the control unit 750 proceeds to step S1015.

제어부(750)는 S1015 단계에서 대기 모드가 종료되었는지 판단한다. 대기 모드가 종료된 경우, 제어부(750)는 리소스 파일(120)의 다운로드 프로세스를 종료한다. 아직 대기 모드인 경우, 제어부(750)는 S1017 단계에서 다운로드 리소스 목록의 리소스 파일(120)을 모두 다운로드 하였는지 판단한다. 이 판단 결과, 리소스 파일(120)을 모두 다운로드 한 경우, 제어부(750)는 프로세스를 종료한다. 반면, 다운로드 하지 않은 리소스 파일(120)이 남아 있는 경우, 제어부(750)는 S1005 단계로 진행한 후, 상술한 S1005 내지 1015 단계를 반복한다.The control unit 750 determines whether the standby mode is ended in step S1015. When the standby mode is terminated, the control unit 750 ends the download process of the resource file 120. [ If it is still in the standby mode, the controller 750 determines whether all the resource files 120 in the download resource list have been downloaded in step S1017. If all the resource files 120 have been downloaded as a result of the determination, the control unit 750 ends the process. On the other hand, if the resource file 120 that has not been downloaded remains, the control unit 750 proceeds to step S1005 and repeats steps S1005 to S1015.

상술한 바와 같이, 다운로드된 리소스 파일(120)은 미리 저장되므로, 웹 어플리케이션 실행 중에 상술한 리소스 파일(120)을 다운로드 할 필요 없이 해당 리소스 파일(120)을 그대로 사용할 수 있다. 이에 따라, 리소스 파일(120) 다운로드 시간이 절약되므로, 웹 어플리케이션 실행시 그 응답 속도가 향상된다. 그러면, 다운로드된 리소스 파일(120)을 이용한 웹 어플리케이션 실행 방법에 대해서 설명하기로 한다.As described above, since the downloaded resource file 120 is stored in advance, the resource file 120 can be used as it is without downloading the resource file 120 during execution of the web application. Accordingly, since downloading of the resource file 120 is saved, the response speed of the web application is improved. A method of executing a web application using the downloaded resource file 120 will now be described.

본 발명의 실시예에 따르면, 랜더링되어 화면에 표시되기 전, 페이지 데이터(340) 또는 바이너리 페이지 데이터(350)를 생성한다. 도 11은 본 발명의 실시예에 따른 웹 어플리케이션의 각 페이지 데이터(340)를 생성하는 방법을 설명하기 위한 흐름도이다.According to the embodiment of the present invention, page data 340 or binary page data 350 is generated before being rendered and displayed on the screen. 11 is a flowchart illustrating a method of generating each page data 340 of a web application according to an embodiment of the present invention.

도 11을 참조하면, 제어부(750)는 S1101 단계에서, 웹 어플리케이션의 시작 페이지를 기술하는 소스 파일(110)을 불러온다. 그런 다음, 제어부(750)는 S1103 단계에서 다운로드 리소스 목록을 참조하여, 미리 다운로드 받아 저장한 리소스 파일(120)이 존재하는 경우, 리소스 파일(120)을 나타내는 태그의 속성을 다운로드 받아 저장한 리소스 파일(120)이 저장된 위치로 변경한다. 예컨대, 도 4의 도면 부호 41에서 설명한 바와 같이, 주소 "http://img_server.com/resource/resource01.jpg"로부터 리소스 파일(120)인 이미지 파일(resource01.jpg)을 다운로드 받아 미리 저장한 경우, 그 저장 경로가 "file://down_resource_storage/img_resource/resource01.jpg"라고 가정하면, 해당 태그의 속성을 "file://down_resource_storage/img_resource/ resource01.jpg"로 변경한다.Referring to FIG. 11, in step S1101, the control unit 750 loads a source file 110 describing a start page of the web application. The control unit 750 refers to the download resource list in step S1103 and if the resource file 120 previously downloaded and stored exists, the control unit 750 downloads the attribute of the tag indicating the resource file 120, (120) is stored. For example, when the image file (resource01.jpg) as the resource file 120 is downloaded from the address "http://img_server.com/resource/resource01.jpg" , And the storage path is "file: //down_resource_storage/img_resource/resource01.jpg", the attribute of the tag is changed to "file: // down_resource_storage / img_resource / resource01.jpg".

이어서, 제어부(750)는 S1105 단계에서 선언적 기술 언어의 해석 방법에 따라, 마크업 언어(111) 및 스타일시트(113)의 구성 성분을 의미 있는 토큰으로 분해(parsing)하여 그들 사이의 위계 관계의 분석을 거쳐 문장의 구조가 이미 결정된 파스 트리(parse tree)를 구성한다. 즉, 제어부(750)는 마크업 언어(111)를 분해하여 DOM 트리(310)를 구성하고, 스타일시트(113)를 분해하여 스타일 트리(320)를 구성한다. 마크업 언어(111)의 구성 성분은 태그, 속성, 텍스트 등이며, 스타일시트(113)의 구성 성분은 스타일이다.In step S1105, the control unit 750 parses the components of the markup language 111 and the style sheet 113 into meaningful tokens according to the interpretation method of the declarative description language, After analysis, the structure of the sentence constitutes a parse tree already determined. That is, the control unit 750 decomposes the markup language 111 to construct the DOM tree 310, and decomposes the style sheet 113 to construct the style tree 320. The constituent components of the markup language 111 are tags, attributes, and text, and the constituent elements of the style sheet 113 are styles.

그런 다음, 제어부(750)는 S1107 단계에서 DOM 트리(310) 및 스타일 트리(320)를 결합하여 랜더러 트리(330)를 구성한다. 이어서, 제어부(750)는 S1109 단계에서 랜더러 트리(330)의 해석을 통해 스타일에 맞는 레이아웃을 설정하고 각 속성의 값을 해당 레이아웃에 배치하여 페이지 데이터(340)를 생성한다. 다음으로, 제어부(750)는 S1111 단계에서 페이지 데이터(340)의 데이터 구조를 변경하여 바이너리 페이지 데이터(350)를 생성한다.In step S1107, the control unit 750 combines the DOM tree 310 and the style tree 320 to construct a renderer tree 330. FIG. In step S1109, the controller 750 sets the layout suitable for the style through the analysis of the renderer tree 330 and arranges the values of the attributes in the layout to generate the page data 340. [ Next, the control unit 750 changes the data structure of the page data 340 to generate the binary page data 350 in step S1111.

이어서, 제어부(750)는 S1113 단계에서 웹 어플리케이션의 모든 페이지(10)에 대해 바이너리 페이지 데이터(350)를 생성하였는지 판단한다. S1113 단계의 판단 결과, 모든 페이지(10)의 바이너리 페이지 데이터(350)를 생성하였으면, 제어부(750)는 프로세스를 종료한다. 반면, S1113 단계의 판단 결과, 바이너리 페이지 데이터(350)를 생성하지 못한 페이지(10)가 존재하면, 제어부(750)는 S1115 단계에서 바이너리 페이지 데이터(350)를 생성하지 못한 페이지(10)의 소스 파일(110)을 불러와서, 상술한 S1103 내지 S1113 단계를 반복한다. 즉, 이러한 반복은 S1113 단계에서 모든 페이지(10)를 기술하는 소스 파일(110)을 이용하여 바이너리 페이지 데이터(350)를 생성할 때까지 계속된다.In step S1113, the controller 750 determines whether binary page data 350 has been generated for all the pages 10 of the web application. If it is determined in step S1113 that the binary page data 350 of all the pages 10 has been generated, the control unit 750 terminates the process. On the other hand, if it is determined in step S1113 that the page 10 has failed to generate the binary page data 350, the control unit 750 determines whether the page 10 has been generated The file 110 is called up, and the above-described steps S1103 to S1113 are repeated. That is, the repetition continues until the binary page data 350 is generated using the source file 110 describing all the pages 10 in step S1113.

다음으로, 본 발명의 실시예에 따른 웹 어플리케이션 실행 방법을 살펴본다. 도 12는 본 발명의 실시예에 따른 웹 어플리케이션 실행 방법을 설명하기 위한 흐름도이다.Next, a method of executing a web application according to an embodiment of the present invention will be described. 12 is a flowchart illustrating a method of executing a web application according to an embodiment of the present invention.

도 12를 참조하면, 제어부(750)는 S1201 단계에서 입력부(740)를 통해 웹 어플리케이션의 실행 요청을 수신한다. 이에 따라, 제어부(750)는 S1203 단계에서 해당 웹 어플리케이션이 사용할 윈도우를 생성한다. 이어서, 제어부(750)는 S1205 단계에서 해당 웹 어플리케이션의 시작 페이지의 바이너리 페이지 데이터(350)를 불러온다.12, the control unit 750 receives a request for executing the web application through the input unit 740 in step S1201. Accordingly, the control unit 750 creates a window to be used by the corresponding web application in step S1203. In step S1205, the control unit 750 loads the binary page data 350 of the start page of the corresponding web application.

S1207 단계에서 제어부(750)는 바이너리 페이지 데이터(350)를 랜더링하여 페이지를 생성하고, 생성된 페이지를 앞서(S1203 단계) 생성한 윈도우에 표시한다.In step S1207, the control unit 750 generates a page by rendering the binary page data 350, and displays the generated page on the generated window in advance (step S1203).

이러한 랜더링 중, 사용자는 해당 페이지에 표시된 다른 페이지의 링크 등을 선택할 수 있다. 이러한 선택에 따라 다른 페이지를 표시하는 이벤트가 발생할 수 있다. 따라서, 제어부(750)는 S1209 단계에서 다른 페이지를 표시하도록 하는 이벤트가 발생되는지 판단한다. S1209 단계에서 제어부(750)가 다른 페이지를 표시하도록 하는 이벤트 발생을 감지하면, S1211 단계로 진행하여 해당되는 다른 페이지를 불러온 후, 상술한 S1207 및 S1209 단계를 반복한다. 반면, S1209 단계에서 이벤트를 감지하지 못하면, 제어부(750)는 S1213 단계로 진행한다.During such rendering, the user can select a link of another page displayed on the page. Depending on this selection, an event may occur that displays a different page. Accordingly, the controller 750 determines whether an event for displaying another page is generated in step S1209. If the control unit 750 detects the occurrence of an event for displaying another page in step S1209, the process advances to step S1211 to fetch the corresponding page, and then repeats steps S1207 and S1209. On the other hand, if the event is not detected in step S1209, the controller 750 proceeds to step S1213.

제어부(750)는 S1213 단계에서 웹 어플리케이션을 종료하는 이벤트가 있는지 판단한다. 이때, 웹 어플리케이션을 종료하는 이벤트가 발생하면, 제어부(750)는 프로세스를 종료한다. 그렇지 못한 경우, 제어부(750)는 S1207 단계로 진행하여 상술한 S1209 내지 S1213 단계를 반복한다.The control unit 750 determines whether there is an event to terminate the web application in step S1213. At this time, when an event to end the web application occurs, the control unit 750 ends the process. If not, the controller 750 proceeds to step S1207 and repeats steps S1209 to S1213 described above.

상술한 바와 같이, 본 발명의 실시예에 따르면 소스 파일을 분석하여, 태그의 속성이 지시하는 주소에서 리소스 파일을 미리 다운로드 받아, 저장한 후, 그 저장된 경로로 속성을 변경한다. 그런 다음, 이를 이용하여 각 페이지에 대해 바이너리 페이지 데이터를 미리 생성한다. 사용자의 웹 어플리케이션의 실행 요청이 있는 경우, 미리 생성한 바이너리 페이지 데이터를 랜더링하여 웹 어플리케이션을 실행한다. 이러한 본 발명의 실시예에 따르면, 리소스 파일을 미리 다운로드 함으로써, 웹 어플리케이션 실행 시, 리소스 파일을 다운로드 하는 시간을 절약할 수 있다. 또한, 웹 어플리케이션 실행시, 바이너리 페이지 데이터를 생성하여 미리 저장함으로써, 페이지 데이터를 생성하는데 걸리는 시간을 절약할 수 있다. 이에 따라, 웹 어플리케이션 실행 시, 그 응답 속도를 향상시킬 수 있다.As described above, according to the embodiment of the present invention, the source file is analyzed, the resource file is downloaded in advance from the address indicated by the attribute of the tag, and the attribute is changed to the stored path after storing the resource file. Then, using this, binary page data is generated in advance for each page. When there is a request to execute the user's web application, the web application is rendered by rendering the binary page data generated in advance. According to the embodiment of the present invention, it is possible to save time for downloading the resource file when the web application is executed by downloading the resource file in advance. In addition, when the web application is executed, binary page data is generated and stored in advance, which saves time for generating page data. Accordingly, when the web application is executed, its response speed can be improved.

본 발명에 따른 웹 어플리케이션 실행 방법은 다양한 컴퓨터 수단을 통하여 판독 가능한 소프트웨어 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The web application execution method according to the present invention may be implemented in a form of software readable by various computer means and recorded in a computer-readable recording medium. Here, the recording medium may include program commands, data files, data structures, and the like, alone or in combination. Program instructions to be recorded on a recording medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. For example, the recording medium may be a magnetic medium such as a hard disk, a floppy disk and a magnetic tape, an optical medium such as a CD-ROM or a DVD, a magneto-optical medium such as a floppy disk magneto-optical media, and hardware devices that are specially configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions may include machine language code such as those generated by a compiler, as well as high-level language code that may be executed by a computer using an interpreter or the like. Such a hardware device may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

한편, 본 명세서와 도면에는 본 발명의 바람직한 실시 예에 대하여 개시하였으나, 여기에 개시된 실시 예외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다.While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, It is self-evident to those who have knowledge. Furthermore, although specific terms are used in this specification and the drawings, they are used in a generic sense only to facilitate the description of the invention and to facilitate understanding of the invention, and are not intended to limit the scope of the invention.

본 발명은 이동통신 단말기, PMP, PDA, 노트북, MP3 플레이어와 같은 다양한 종류의 사용자 장치에 적용되는 웹 어플리케이션 실행 장치, 이의 웹 어플리케이션 실행 방법 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록 매체에 관한 것으로, 리소스 파일을 웹 어플리케이션의 실행 전에 미리 다운로드하여, 저장함으로써, 그 웹 어플리케이션 실행 중에 상술한 리소스 파일을 다운로드 할 필요 없이 해당 리소스 파일을 그대로 사용하면 되므로, 웹 어플리케이션 실행시 그 응답 속도가 향상된다. 이는 사용자에게 응답 속도가 향상된 사용자 경험을 제공할 수 있어, 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있다.The present invention relates to a web application execution device applied to various types of user devices such as a mobile communication terminal, a PMP, a PDA, a notebook, and an MP3 player, a web application execution method thereof, and a computer readable recording medium on which the method is recorded , The resource file can be downloaded and stored before execution of the web application in advance so that the corresponding resource file can be used directly without downloading the resource file during execution of the web application. This can provide a user experience with an improved response speed to the user, which is not only a possibility of commercialization or sales, but also can be practically and practically applicable.

10: 페이지
100: 콘텐츠 파일 110: 소스 파일
111: 마크업 언어 113: 스타일시트
115: 스크립트 언어 120: 리소스 파일
200: 정보 파일 210: 구성 정보 파일
220: 정책 정보 파일
310: DOM(Document Object Model) 트리 320: 스타일 트리
330: 랜더러 트리 340: 페이지 데이터
350: 바이너리 페이지 데이터
710: 네트워크 연결부 720: 저장부
730: 표시부 740: 입력부
750: 제어부
10: Page
100: Content file 110: Source file
111: Markup Language 113: Style Sheets
115: Scripting language 120: Resource file
200: information file 210: configuration information file
220: Policy information file
310: Document Object Model (DOM) tree 320: Style tree
330: renderer tree 340: page data
350: Binary page data
710: Network connection unit 720: Storage unit
730: Display section 740: Input section
750:

Claims (28)

웹 어플리케이션 실행 장치에 있어서,
네트워크에 연결해 통신을 수행하기 위한 네트워크 연결부;
상기 웹 어플리케이션을 패키지 단위인 웹 어플리케이션 패키지로 저장하는 저장부; 및
상기 웹 어플리케이션의 실행 전, 상기 웹 어플리케이션의 소스 파일을 분석하여, 웹 어플리케이션 실행시 필요한 리소스 파일 중 미리 다운로드 받을 수 있는 리소스 파일의 목록인 다운로드 리소스 목록을 작성하여 상기 저장부에 저장하고, 대기 모드에서 상기 네트워크 연결부를 통해 상기 다운로드 리소스 목록의 리소스 파일을 다운로드 하여 상기 저장부에 저장하며, 사용자의 웹 어플리케이션 실행 요청이 있는 경우, 상기 다운로드 받은 리소스 파일을 이용하여 상기 웹 어플리케이션을 실행하는 제어부;를 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
A web application execution apparatus comprising:
A network connection unit for performing communication by connecting to a network;
A storage unit for storing the web application as a web application package as a package unit; And
Before execution of the web application, a source file of the web application is analyzed, and a download resource list, which is a list of resource files that can be downloaded in advance among resource files necessary for executing a web application, is created and stored in the storage unit, A control unit for downloading the resource file of the download resource list through the network connection unit and storing the downloaded resource file in the storage unit and executing the web application using the downloaded resource file when the user requests to execute the web application; The web application executing apparatus comprising:
제1항에 있어서, 상기 다운로드 리소스 목록은
상기 소스 파일에서 태그 및 상기 태그의 속성이 리소스 파일의 링크를 지시하는 주소인 경우, 상기 주소를 등록한 것임을 특징으로 하는 웹 어플리케이션 실행 장치.
The method of claim 1,
And the address is registered when the attribute of the tag and the tag in the source file indicate the link of the resource file.
제1항에 있어서, 상기 대기 모드는
상기 네트워크 연결부의 네트워크 트래픽이 기 설정된 용량 미만인 경우임을 특징으로 하는 웹 어플리케이션 실행 장치.
2. The method of claim 1,
And the network traffic of the network connection unit is less than a preset capacity.
제1항에 있어서, 상기 제어부는
상기 다운로드 받은 리소스 파일을 이용하여 상기 웹 어플리케이션의 각 페이지에 대해 바이너리 페이지 데이터를 미리 생성한 후, 사용자의 웹 어플리케이션 실행 요청이 있는 경우, 상기 바이너리 페이지 데이터를 랜더링하여 웹 어플리케이션을 실행하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
The apparatus of claim 1, wherein the control unit
Generating binary page data for each page of the web application by using the downloaded resource file and then rendering the binary page data when the user requests execution of the web application to execute the web application. A web application execution unit.
제1항에 있어서, 상기 저장부는
상기 웹 어플리케이션 패키지에 대한 정보, 상기 웹 어플리케이션을 다른 웹 어플리케이션과 구분하여 실행시키기 위한 실행 정보 및 상기 다운로드 리소스 목록을 저장하는 레지스트리를 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
The apparatus of claim 1, wherein the storage unit
And a registry for storing information on the web application package, execution information for executing the web application differently from other web applications, and a list of download resources.
제5항에 있어서, 상기 실행 정보는
프로토콜 스킴(protocol scheme) 및 상기 프로토콜 스킴에 이어서 기술되는 주소로 이루어지는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
6. The method according to claim 5,
A protocol scheme, and an address described subsequently to the protocol scheme.
제6항에 있어서, 상기 프로토콜 스킴은
"httpa://"의 형식을 가지는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
7. The method of claim 6,
and has a format of "http: // &quot;.
제6항에 있어서, 상기 주소는
상기 웹 어플리케이션을 제작한 제작사 또는 상기 웹 어플리케이션을 제공하는 콘텐츠 제공자의 도메인 명칭,
상기 웹 어플리케이션을 이루는 패키지의 명칭인 웹 어플리케이션 패키지 명칭 및
상기 웹 어플리케이션을 실행할 때 가장 먼저 실행시키는 소스 파일의 명칭인 시작 페이지를 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
7. The method of claim 6,
A domain name of a manufacturer who produced the web application or a content provider that provides the web application,
A name of a web application package which is a name of a package constituting the web application,
And a start page which is a name of a source file to be executed first when the web application is executed.
제6항에 있어서, 상기 제어부는
상기 웹 어플리케이션을 설치할 시, 상기 레지스트리에 상기 실행 정보를 등록하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
7. The apparatus of claim 6, wherein the control unit
And registers the execution information in the registry when the web application is installed.
제1항에 있어서, 상기 저장부는
상기 다운로드 리소스 목록을 만들 시 상기 웹 어플리케이션의 각 페이지가 선입선출 방식에 따라 순차로 입력되고 출력되는 큐를 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
The apparatus of claim 1, wherein the storage unit
And a queue in which each page of the web application is sequentially input and output according to a first-in first-out method when the download resource list is created.
제10항에 있어서, 상기 제어부는
상기 다운로드 리소스 목록을 작성할 시, 상기 큐에 상기 웹 어플리케이션을 구성하는 적어도 하나의 페이지를 순차로 입력하여, 상기 큐가 먼저 입력된 페이지를 먼저 출력함에 따라, 출력되는 페이지 순으로 상기 다운로드 리소스 목록을 작성하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
11. The apparatus of claim 10, wherein the control unit
When generating the download resource list, sequentially inputting at least one page constituting the web application into the queue, and outputting the download resource list in order of outputted pages as the queue first outputs the inputted page The web application executing apparatus comprising:
제1항에 있어서,
상기 웹 어플리케이션 패키지는 상기 웹 어플리케이션의 콘텐츠를 기술하는 콘텐츠 파일과 상기 웹 어플리케이션 및 상기 웹 어플리케이션의 패키지에 대한 정보를 기술하는 정보 파일을 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
The method according to claim 1,
Wherein the web application package includes a content file describing the content of the web application, and an information file describing information about the web application and the package of the web application.
제12항에 있어서, 상기 콘텐츠 파일은,
상기 웹 어플리케이션의 각 페이지를 표현하는 소스 파일 및 상기 소스 파일에 링크로 연결되는 리소스 파일을 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
13. The content distribution system according to claim 12,
A source file representing each page of the web application, and a resource file linked to the source file by a link.
제13항에 있어서, 상기 소스 파일은
태그 및 상기 태그의 속성이 기술되는 마크업 언어, 상기 태그 및 상기 태그의 속성이 페이지에 표시되는 스타일을 기술하는 스타일시트 및 상기 웹 어플리케이션을 동적으로 제어하기 위한 스크립트 언어를 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
14. The method of claim 13,
And a script language for dynamically controlling the web application. The method of claim 1, wherein the attribute of the tag is an attribute of the tag, Web application execution device.
제13항에 있어서, 상기 리소스 파일은
상기 리소스 파일의 형식에 맞는 형태로 링크를 통해 상기 페이지에 삽입되는 개별 파일인 것을 특징으로 하는 웹 어플리케이션 실행 장치.
14. The method of claim 13,
Wherein the web application is an individual file inserted into the page through a link in a form corresponding to the format of the resource file.
제13항에 있어서, 상기 리소스 파일은
장면 기술, 비디오, 오디오, 이미지, 폰트, 텍스트, 메타데이터, 및 스크립트 파일 중 적어도 하나인 것을 특징으로 하는 웹 어플리케이션 실행 장치.
14. The method of claim 13,
A scene description, a video, an audio, an image, a font, text, metadata, and a script file.
제12항에 있어서, 상기 정보 파일은
상기 웹 어플리케이션의 패키지에 포함되는 파일의 목록, 파일 별 공개 여부와 공개 범위 및 상기 웹 어플리케이션의 실행 환경을 설정하기 위한 설정 값을 포함하는 구성 정보가 기술되는 구성 정보 파일과,
상기 웹 어플리케이션이 단말의 운영 체제에 접근할 수 있는 접근 권한의 범위를 지정하기 위한 정책 정보를 기술하는 정책 정보 파일을 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
13. The information processing apparatus according to claim 12,
A configuration information file describing configuration information including a list of files included in the package of the web application, a disclosure status and a disclosure range for each file, and configuration values for setting an execution environment of the web application,
Wherein the web application includes a policy information file describing policy information for specifying a range of access rights for the web application to access the operating system of the terminal.
제1항에 있어서, 상기 웹 어플리케이션 패키지는
상기 저장부에 데이터베이스 구조로 저장되는 것을 특징으로 하는 웹 어플리케이션 실행 장치.
The method of claim 1, wherein the web application package
Wherein the web application is stored in the storage unit in a database structure.
웹 어플리케이션 실행 방법에 있어서,
상기 웹 어플리케이션의 실행 전, 상기 웹 어플리케이션의 소스 파일을 분석하여, 상기 소스 파일에 포함된 리소스 파일 중 미리 다운로드 받을 수 있는 리소스 파일의 목록인 다운로드 리소스 목록을 작성하는 단계;
대기 모드이면, 상기 다운로드 리소스 목록의 리소스 파일을 다운로드 하는 단계; 및
사용자의 웹 어플리케이션 실행 요청이 있는 경우, 상기 다운로드 받은 리소스 파일을 이용하여 상기 웹 어플리케이션을 실행하는 단계;를 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 방법.
In a web application execution method,
Analyzing a source file of the web application before execution of the web application and creating a download resource list that is a list of resource files that can be downloaded in advance among the resource files included in the source file;
Downloading a resource file of the download resource list if the resource file is in a standby mode; And
And executing the web application using the downloaded resource file when the user requests to execute the web application.
제19항에 있어서, 상기 작성하는 단계는
상기 웹 어플리케이션의 시작 페이지의 태그 및 상기 태그의 속성을 분석하는 단계; 및
상기 분석 결과, 상기 태그의 속성이 리소스 파일의 링크를 나타내는 주소이면, 상기 주소를 상기 다운로드 리소스 목록에 등록하는 단계;를 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 방법.
20. The method of claim 19, wherein the creating comprises:
Analyzing a tag of a start page of the web application and an attribute of the tag; And
And registering the address in the download resource list if the attribute of the tag is an address indicating a link of the resource file as a result of the analysis.
제20항에 있어서, 상기 분석하는 단계 후,
상기 분석 결과, 상기 태그의 속성이 상기 웹 어플리케이션을 구성하는 다른 페이지의 링크인 경우, 상기 다른 페이지에 대해 상기 분석하는 단계 및 상기 등록하는 단계를 수행하는 단계를 더 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 방법.
21. The method of claim 20,
Further comprising the step of analyzing and registering the other page if the attribute of the tag is a link of another page constituting the web application as a result of the analysis How to do it.
제19항에 있어서, 상기 작성하는 단계는
다운로드 리소스 목록의 용량이 기 설정된 용량을 초과할 것으로 판단되는 경우 또는 상기 웹 어플리케이션을 구성하는 모든 페이지의 모든 태그를 분석한 경우 종료하는 것을 특징으로 하는 웹 어플리케이션 실행 방법.
20. The method of claim 19, wherein the creating comprises:
When the capacity of the download resource list is judged to exceed the preset capacity or when all the tags of all the pages constituting the web application are analyzed, the method ends.
제19항에 있어서, 상기 다운로드 하는 단계는
상기 대기 모드인지 판단하는 단계;
상기 판단 결과 대기 모드이면, 상기 다운로드 리소스 목록의 리소스 파일이 이미 다운로드 되었는지 확인하는 단계; 및
상기 확인 결과, 다운로드 되지 않은 리소스 파일을 다운로드 하는 단계;를 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 방법.
20. The method of claim 19, wherein the downloading comprises:
Determining whether the mode is the standby mode;
Checking whether the resource file of the download resource list has already been downloaded if the determination result is the standby mode; And
And downloading a resource file that has not been downloaded as a result of the checking.
제23항에 있어서, 상기 대기 모드는
네트워크 트래픽이 기 설정된 용량 미만인 경우임을 특징으로 하는 웹 어플리케이션 실행 방법.
24. The method of claim 23, wherein the standby mode
Wherein the network traffic is less than a predetermined amount.
제19항에 있어서, 상기 다운로드 하는 단계는
상기 다운로드 리소스 목록의 모든 리소스 파일을 다운로드 하였거나, 상기 대기 모드가 종료될 때까지 수행하는 것을 특징으로 하는 웹 어플리케이션 실행 방법.
20. The method of claim 19, wherein the downloading comprises:
Wherein the downloading of the resource file is performed until all resource files of the download resource list are downloaded or the standby mode is terminated.
제19항에 있어서, 상기 실행하는 단계는
상기 다운로드 받은 리소스 파일을 이용하여 상기 웹 어플리케이션의 각 페이지에 대해 바이너리 페이지 데이터를 생성하는 단계; 및
사용자의 웹 어플리케이션 실행 요청이 있는 경우, 상기 바이너리 페이지 데이터를 랜더링하여 웹 어플리케이션을 실행하는 단계;를 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 방법.
20. The method of claim 19, wherein the performing
Generating binary page data for each page of the web application using the downloaded resource file; And
And executing the web application by rendering the binary page data when the user requests to execute the web application.
제26항에 있어서, 상기 바이너리 페이지 데이터를 생성하는 단계는,
상기 다운로드 리소스 목록을 참조하여 페이지의 속성 중 리소스 파일의 속성을 상기 미리 다운로드 받은 리소스 파일이 저장된 경로로 변경하는 단계;
상기 웹 어플리케이션의 각 페이지의 소스 파일을 분석하여, DOM 트리 및 스타일 트리를 생성하는 단계;
상기 DOM 트리 및 스타일 트리를 결합하여 랜더러 트리를 생성하는 단계;
상기 랜더러 트리를 해석하여 페이지 데이터를 생성하는 단계; 및
상기 페이지 데이터를 바이너리 형태로 변환하여 바이너리 페이지 데이터를 생성하는 단계를 포함하는 것을 특징으로 하는 웹 어플리케이션 실행 방법.
27. The method of claim 26, wherein generating the binary page data comprises:
Changing an attribute of the resource file among the attributes of the page to a path where the resource file is downloaded before referring to the download resource list;
Analyzing a source file of each page of the web application to generate a DOM tree and a style tree;
Combining the DOM tree and the style tree to generate a renderer tree;
Analyzing the renderer tree to generate page data; And
And converting the page data into a binary form to generate binary page data.
제19항 내지 제27항 중 어느 하나의 항에 기재된 웹 어플리케이션 실행 방법을 실행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록 매체.

A computer-readable recording medium having recorded thereon a program for executing the web application execution method according to any one of claims 19 to 27.

KR1020100053649A 2010-06-08 2010-06-08 Apparatus for executing web application, method thereof and computer recordable medium storing the method Expired - Fee Related KR101504088B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100053649A KR101504088B1 (en) 2010-06-08 2010-06-08 Apparatus for executing web application, method thereof and computer recordable medium storing the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100053649A KR101504088B1 (en) 2010-06-08 2010-06-08 Apparatus for executing web application, method thereof and computer recordable medium storing the method

Publications (2)

Publication Number Publication Date
KR20110133950A KR20110133950A (en) 2011-12-14
KR101504088B1 true KR101504088B1 (en) 2015-03-19

Family

ID=45501430

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100053649A Expired - Fee Related KR101504088B1 (en) 2010-06-08 2010-06-08 Apparatus for executing web application, method thereof and computer recordable medium storing the method

Country Status (1)

Country Link
KR (1) KR101504088B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101328047B1 (en) * 2012-01-02 2013-11-13 네이버 주식회사 Apparatus, method and computer readable recording medium for improving loading speed of images in a webpage having a plurality of images

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10222541A (en) * 1997-01-21 1998-08-21 Internatl Business Mach Corp <Ibm> Pre-load device for web page corresponding to link designated in html and method therefor
US20070300244A1 (en) * 2000-02-04 2007-12-27 Robert Kieffer Optimized delivery of web application code
KR20100028313A (en) * 2008-09-04 2010-03-12 에스케이 텔레콤주식회사 Resource installation and management system and resource installation and management method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10222541A (en) * 1997-01-21 1998-08-21 Internatl Business Mach Corp <Ibm> Pre-load device for web page corresponding to link designated in html and method therefor
US20070300244A1 (en) * 2000-02-04 2007-12-27 Robert Kieffer Optimized delivery of web application code
KR20100028313A (en) * 2008-09-04 2010-03-12 에스케이 텔레콤주식회사 Resource installation and management system and resource installation and management method

Also Published As

Publication number Publication date
KR20110133950A (en) 2011-12-14

Similar Documents

Publication Publication Date Title
US10289649B2 (en) Webpage advertisement interception method, device and browser
JP5911304B2 (en) Handling fonts for viewing documents on the web
US8769050B2 (en) Serving font files in varying formats based on user agent type
US8074167B2 (en) Cross domain presence of web user interface and logic
RU2459238C2 (en) Managed execution environment for software application interfacing
US20130227398A1 (en) Page based navigation and presentation of web content
US20190171697A1 (en) System and method for web content presentation management
CN106294658B (en) Webpage quick display method and device
US20130145252A1 (en) Page based navigation and presentation of web content
US8522132B2 (en) Widget behavior customization via cascaded style sheets
KR20150079867A (en) Html5-protocol-based webpage presentation method and device
KR101453743B1 (en) Pre-caching method for web application and device using the same
CN101909082A (en) A model-driven grid portal configuration system and configuration method
US20100023888A1 (en) Method and apparatus for controlling focus of application
KR101504088B1 (en) Apparatus for executing web application, method thereof and computer recordable medium storing the method
CN115659087B (en) Page rendering method, equipment and storage medium
CN117675238A (en) Data access method, device, electronic equipment and storage medium
US20130111433A1 (en) Method and apparatus for generating application programs
US20030028849A1 (en) Display of a document on a client computer
CN115062255B (en) Website adaptation method and device, electronic equipment and computer readable storage medium
Aryal Design principles for responsive web
KR20110139446A (en) Device for transmitting / receiving status information of a terminal for seamless web application execution, method, and computer readable recording medium recording the method
CN102253950A (en) Automatic quick access network application program method
Northwood Front End
TANGNING FROM STATIC TO DYNAMIC TO BECOME INTELLIGENT: THE WEB PAGES

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R11-asn-PN2301

R19-X000 Request for party data change rejected

St.27 status event code: A-3-3-R10-R19-oth-X000

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R11-asn-PN2301

R19-X000 Request for party data change rejected

St.27 status event code: A-3-3-R10-R19-oth-X000

N231 Notification of change of applicant
PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

A201 Request for examination
PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

L13-X000 Limitation or reissue of ip right requested

St.27 status event code: A-2-3-L10-L13-lim-X000

U15-X000 Partial renewal or maintenance fee paid modifying the ip right scope

St.27 status event code: A-4-4-U10-U15-oth-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20190314

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20190314