KR100931730B1 - Method and device for controlling terminal application process using common daemon - Google Patents
Method and device for controlling terminal application process using common daemon Download PDFInfo
- Publication number
- KR100931730B1 KR100931730B1 KR1020070122180A KR20070122180A KR100931730B1 KR 100931730 B1 KR100931730 B1 KR 100931730B1 KR 1020070122180 A KR1020070122180 A KR 1020070122180A KR 20070122180 A KR20070122180 A KR 20070122180A KR 100931730 B1 KR100931730 B1 KR 100931730B1
- Authority
- KR
- South Korea
- Prior art keywords
- common
- daemon
- port
- packet data
- application program
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
Abstract
본 발명은 이동 단말기에서 공통 데몬을 이용한 데이터 서비스 제어 방법 및 그 장치에 관한 것이다. 본 발명에 따른 이동 단말기에서 공통 데몬을 이용한 데이터 서비스 제공 방법은 응용 프로그램 별 할당된 포트 정보를 상기 공통 데몬에 등록하거나 삭제하는 포트 정보 갱신 단계; 패킷 데이터 수신 시 상기 수신된 패킷 데이터에 포함된 포트 번호 및 상기 등록된 포트 정보를 이용하여 상기 수신된 패킷 데이터가 처리될 응용 프로그램을 활성화시키는 응용 프로그램 활성화 단계; 및 상기 활성화된 응용 프로그램으로 상기 수신된 패킷 데이터를 전송하는 패킷 데이터 전송 단계를 포함할 수 있다. 따라서, 본 발명은 포트 등록된 응용 프로세스를 관리하는 공통 데몬을 구비함으로써 응용 프로세서에서 데이터 수신 대기에 따른 자원 낭비를 최소화하는 것이 가능한 공통 데몬을 이용한 단말 응용 프로세스 제어 방법을 제공하는 장점이 있다.The present invention relates to a data service control method and apparatus using a common daemon in a mobile terminal. A method of providing a data service using a common daemon in a mobile terminal according to the present invention includes: updating port information for each application by registering or deleting port information allocated to the common daemon; An application program activation step of activating an application program to which the received packet data is processed using a port number included in the received packet data and the registered port information when receiving packet data; And a packet data transmission step of transmitting the received packet data to the activated application program. Accordingly, the present invention has a merit of providing a method for controlling a terminal application process using a common daemon capable of minimizing resource waste due to data reception in an application processor by providing a common daemon managing a port registered application process.
포트, 응용 프로세스, 공통 데몬, 대기상태, 활성상태, 유휴상태 Port, application process, common daemon, idle, active, idle
Description
본 발명은 공통 데몬을 이용한 단말 응용 프로세스 제어 방법 및 그 장치에 관한 것으로서, 좀 더 상세하게는, 응용 프로세스 별 포트 등록 정보를 유지하는 공통 데몬을 이용하여 보다 효율적으로 단말 자원을 관리하는 것이 가능한 공통 데몬을 이용한 단말 응용 프로세스 제어 방법 및 그 장치에 관한 것이다.The present invention relates to a method and apparatus for controlling a terminal application process using a common daemon, and more particularly, to manage terminal resources more efficiently by using a common daemon that maintains port registration information for each application process. The present invention relates to a terminal application process control method using a daemon and an apparatus thereof.
최근 이동 통신 기술이 발전함에 따라, 현재 이동 단말기는 단순한 음성 통신뿐만 아니라 웹 브라우징을 포함하는 다양한 응용 서비스를 제공하고 있다.With the recent development of mobile communication technology, mobile terminals currently provide various application services including web browsing as well as simple voice communication.
또한, 기존 컴퓨터상에서 사용되던 멀티 태스킹 기능이 이동 단말기에 도입됨에 따라 하나의 CPU를 통해 복수의 응용 서비스를 동시에 제공할 수 있게 되었다.In addition, as a multi-tasking function used on a conventional computer is introduced to a mobile terminal, a plurality of application services can be simultaneously provided through a single CPU.
예를 들면, 이동 단말기 사용자는 VOD 서버로부터 특정 영화에 대한 스트리밍 서비스를 제공 받으면서, 멀티미디어 메시지를 동시에 수신할 수 있다. 즉, 이 동 단말기는 VOD 서비스를 위한 응용 프로세스와 멀티미디어 메시지 수신을 위한 응용 프로세스가 동시에 구동시킬 수 있다. For example, a mobile terminal user may simultaneously receive a multimedia message while receiving a streaming service for a specific movie from a VOD server. That is, the mobile terminal may simultaneously run an application process for receiving a VOD service and an application process for receiving a multimedia message.
이때, 이동 단말기는 활성화된 응용 서비스에 상응하는 응용 프로세스 별로 별도의 포트가 할당되며, 할당된 포트를 통해 송수신되는 패킷이 해당 응용 프로세스에 의해 처리되었다. At this time, the mobile terminal is allocated a separate port for each application process corresponding to the activated application service, the packet transmitted and received through the assigned port was processed by the application process.
따라서, 활성화된 모든 응용 프로세스는 자신에게 할당된 포트로 패킷이 수신되는지 여부를 주기적으로 확인하며, 이로 인해 복수의 응용 프로세서가 활성화된 경우, 패킷 수신 확인을 위해 단말 자원이 낭비되는 문제점이 있었다.Accordingly, every activated application process periodically checks whether a packet is received through a port allocated to the application process, and when a plurality of application processors are activated, there is a problem in that terminal resources are wasted for packet reception confirmation.
또한, 복수의 응용 프로세스가 활성화된 경우, 패킷 수신 여부의 확인을 위해 잦은 문맥 전환(Context Switching)이 발생하므로, CPU 효율이 떨어지는 문제점이 있었다.In addition, when a plurality of application processes are activated, frequent context switching occurs to confirm whether a packet is received, which causes a problem in that CPU efficiency is lowered.
상기와 같은 종래 기술의 문제점을 해결하기 위한 본 발명의 목적은 응용 프로세스 별 포트 등록 정보를 유지하는 공통 데몬을 이용하여 보다 효율적으로 한정된 단말 자원을 관리하는 것이 가능한 공통 데몬을 이용한 단말 응용 프로세스 제어 방법 및 그 장치를 제공하는 것이다.An object of the present invention for solving the problems of the prior art as described above is a terminal application process control method using a common daemon capable of more efficiently managing the terminal resources by using a common daemon for maintaining port registration information for each application process And a device thereof.
본 발명의 다른 목적은 공통 데몬을 통해 이동 단말기에서 보다 효과적인 멀티 응용 프로세서 환경을 제공하는 것이다.Another object of the present invention is to provide a more effective multi-application processor environment in a mobile terminal through a common daemon.
본 발명의 다른 목적들은 이하의 실시예에 대한 설명을 통해 쉽게 이해될 수 있을 것이다.Other objects of the present invention will be readily understood through the following description of the embodiments.
본 발명의 일 실시예에 따르면, 이동 단말기에서 공통 데몬을 통해 패킷 데이터 서비스를 제공하는 방법이 개시된다.According to an embodiment of the present invention, a method for providing a packet data service through a common daemon in a mobile terminal is disclosed.
본 발명에 따른 이동 단말기에서 공통 데몬을 이용한 데이터 서비스 제공 방법은 응용 프로그램 별 할당된 포트 정보를 상기 공통 데몬에 등록하거나 삭제하는 포트 정보 갱신 단계; 패킷 데이터 수신 시 상기 수신된 패킷 데이터에 포함된 포트 번호 및 상기 등록된 포트 정보를 이용하여 상기 수신된 패킷 데이터가 처리될 응용 프로그램을 활성화시키는 응용 프로그램 활성화 단계; 및 상기 활성화된 응용 프로그램으로 상기 수신된 패킷 데이터를 전송하는 패킷 데이터 전송 단계를 포함할 수 있다.A method of providing a data service using a common daemon in a mobile terminal according to the present invention includes: updating port information for each application by registering or deleting port information allocated to the common daemon; An application program activation step of activating an application program to which the received packet data is processed using a port number included in the received packet data and the registered port information when receiving packet data; And a packet data transmission step of transmitting the received packet data to the activated application program.
본 발명의 다른 실시예에 따르면, 공통 데몬(Demon)을 통해 데이터 서비스를 제공하는 이동 단말기가 개시된다.According to another embodiment of the present invention, a mobile terminal for providing a data service through a common daemon is disclosed.
본 발명의 일 실시예에 따른 공통 데몬(Demon)을 통해 데이터 서비스를 제공하는 이동 단말기는 응용 프로그램 구동 시 할당된 포트 정보를 상기 공통 데몬에 등록하거나 삭제하는 포트 정보 갱신 수단; 수신된 패킷 데이터에 포함된 포트 번호가 상기 등록된 포트 정보에 존재하는 경우, 해당 패킷 데이터가 처리할 응용 프로그램을 활성화시키는 응용 프로그램 활성화 수단; 및 상기 활성화된 응용 프로그램으로 상기 수신된 패킷 데이터를 전송하는 패킷 데이터 전송 수단을 포함할 수 있다.A mobile terminal providing a data service through a common daemon according to an embodiment of the present invention includes port information updating means for registering or deleting port information allocated when an application program is running to the common daemon; Application program activating means for activating an application program to be processed by the packet data when a port number included in the received packet data exists in the registered port information; And packet data transmission means for transmitting the received packet data to the activated application program.
본 발명은 응용 프로세스 별 포트 등록 정보를 유지하는 공통 데몬을 이용하여 보다 효율적으로 한정된 단말 자원을 관리하는 것이 가능한 공통 데몬을 이용한 데이터 서비스 제어 방법 및 그 장치를 제공하는 장점이 있다.The present invention has an advantage of providing a method and apparatus for controlling a data service using a common daemon capable of managing terminal resources more efficiently by using a common daemon that maintains port registration information for each application process.
또한, 본 발명은 공통 데몬을 통해 이동 단말기에서 보다 효과적인 멀티 응용 프로세서 환경을 제공하는 장점이 있다.In addition, the present invention has the advantage of providing a more effective multi-application processor environment in the mobile terminal through a common daemon.
또한, 본 발명은 공통 데몬을 통해 유효하지 않은 포트 번호로 수신되는 패킷 데이터를 감시함으로써 불필요한 패킷 데이터를 삭제 처리하는 장점이 있다.In addition, the present invention has the advantage of deleting unnecessary packet data by monitoring the packet data received by the invalid port number through the common daemon.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.
제1, 제2, 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. 본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items. The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise.
본 출원에서, "포함하는" 또는 "탑재된" "장착된" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. In this application, the terms "comprising" or "mounted" and "mounted" are intended to indicate that there is a feature, number, step, action, component, part, or combination thereof described on the specification, one Or other features or numbers, steps, operations, components, parts or combinations thereof in any way should not be excluded in advance.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and are not construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.Other aspects, features, and advantages other than those described above will become apparent from the following drawings, claims, and detailed description of the invention.
이하에서, 본 발명에 따른 공통 데몬을 이용한 단말 응용 프로세스 제어 방법 및 그 장치에 관한 바람직한 실시예를 도면을 참조하여 상세하게 설명하기로 한다.Hereinafter, a preferred embodiment of a method and apparatus for controlling a terminal application process using a common daemon according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 종래 기술에 따른 이동 단말기에서의 복수의 응용 프로그램에 대한 패킷 처리 방법을 설명하기 위한 도면이다.1 is a diagram illustrating a packet processing method for a plurality of application programs in a mobile terminal according to the prior art.
도 1을 참조하면, 종래 기술에 따른 이동 단말기는 단말 하드웨어(110), 단말운용체제(120) 및 응용프로그램(130)으로 구분될 수 있다.Referring to FIG. 1, a mobile terminal according to the related art may be divided into a
특히, 최근 출시되는 이동 단말기는 고성능의 CPU에 탑재된 운용 체제 및 미들웨어 플랫폼을 통해 복수의 응용 프로그램을 동시에 구동시키는 것이 가능하다. 즉, 현재 이동 단말기는 멀티태스킹(Multitasking) 기능을 제공한다.In particular, recently released mobile terminals are capable of simultaneously driving a plurality of applications through an operating system and a middleware platform mounted on a high performance CPU. That is, the current mobile terminal provides a multitasking function.
일반적으로, IP 기반의 패킷 서비스는 응용 서비스 별 할당되는 포트 번호를 통해 식별될 수 있다. 즉, 이동 단말기는 하나의 IP 주소를 패킷교환망-예를 들면, 패킷교환망은 UMTS 시스템의 SGSN 및 GGSN일 수 있음-으로부터 할당 받으며, 특정 서비스 요청 시마다 해당 서비스에 대응하는 포트 번호가 할당된다.In general, an IP-based packet service can be identified through a port number allocated for each application service. That is, the mobile terminal receives an IP address from a packet switching network (eg, the packet switching network may be SGSN and GGSN of the UMTS system), and a port number corresponding to the service is assigned to each service request.
예를 들면, FTP 서비스에 상응하는 포트 번호는 100이고, 웹 브라우징 서비스에 대한 포트 번호는 200일 수 있다. 이때, 사용자에 의해 구동된 복수의 응용 프로그램은 자신의 포트로 패킷이 수신되는지 여부를 소정의 주기로 확인한다. For example, the port number corresponding to the FTP service may be 100 and the port number for the web browsing service may be 200. At this time, the plurality of application programs driven by the user checks whether or not packets are received at their ports at predetermined intervals.
하지만, 종래에는 패킷 데이터의 수신 여부에 상관 없이 응용 프로그램이 자 신의 포트로 수신되는 패킷이 있는지 항상 대기하므로 한정된 단말 자원을 낭비하는 문제점이 있었다.However, conventionally, there is a problem of wasting limited terminal resources because the application program always waits whether there is a packet received through its own port regardless of whether packet data is received.
즉, 종래에는 구동된 모든 단말 응용 프로그램이 주기적으로 패킷 수신 여부를 확인하기 위해 활성화된 상태(Active State)를 유지하므로 응용 프로그램 간 잦은 문맥전환이 발생할 수 있다.That is, in the related art, all of the terminal applications that are driven maintain an active state to periodically check whether the packet is received. Accordingly, frequent context switching between applications may occur.
도 2는 본 발명의 일 실시예에 따른 공통 데몬(Common Demon)을 이용한 데이터 서비스 제공 방법을 설명하기 위한 이동 단말기 블록도이다.2 is a block diagram illustrating a mobile terminal for explaining a data service providing method using a common daemon according to an embodiment of the present invention.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 이동 단말기는 단말운용체제(220)와 응용 프로그램(250) 사이의 데이터 흐름을 제어하는 공통 데몬 프로세서(230)가 구비됨을 특징으로 한다.As shown in FIG. 2, the mobile terminal according to an embodiment of the present invention is characterized in that a
여기서, 이동 단말기는 사용자의 요청에 따라 제1 내지 제N 응용 프로그램을 동시에 구동할 수 있음을 주의해야 한다.Here, it should be noted that the mobile terminal can simultaneously drive the first to Nth application programs at the request of the user.
예를 들면, 본 발명에 따른 이동 단말기 사용자는 웹 서핑, 채팅, 파일 다운로드 등의 서비스를 동시에 실행할 수 있다.For example, a mobile terminal user according to the present invention can simultaneously execute services such as surfing the web, chatting, and downloading files.
이하의 설명에서는 도 2를 참조하여, 본 발명에 따른 이동 단말기에서의 공통 데몬을 이용한 수신 데이터 처리 방법을 상세히 설명하기로 한다.In the following description, a method of processing received data using a common daemon in a mobile terminal according to the present invention will be described in detail with reference to FIG. 2.
본 발명에 따른 이동 단말기는 전원이 인가되면, 공통 데몬 프로세스(230)를 초기화한다. 여기서, 이동 단말기는 응용 프로그램 별 할당되는 포트 정보를 관리하기 위한 소정의 포트 등록 테이블(240)을 생성할 수 있다. The mobile terminal according to the present invention initializes the
단말운용체제(220)는 사용자 선택에 따라 특정 응용 프로그램이 구동되거나 종료되는 경우, 해당 응용 프로그램에 상응하는 포트 정보의 등록 또는 삭제를 요청하는 소정의 제어 신호-이하, "포트 갱신 요청 메시지"이라 함-를 공통 데몬 프로세스(230)에 송신한다. 여기서, 포트 갱신 요청 메시지는 해당 메시지가 포트 정보 등록을 위한 메시지인지 포트 정보 삭제를 위한 메시지인지를 식별하기 위한 명령 타입을 포함할 수 있다.The
공통 데몬 프로세스(230)는 포트 정보 등록을 위한 포트 갱신 요청 메시지를 수신하는 경우, 포트 등록 테이블(240)에 해당 포트 정보를 등록한다.When the
반면, 공통 데몬 프로세스(230)는 포트 정보 삭제를 위한 포트 갱신 요청 메시지를 수신하는 경우, 해당 포트 정보를 포트 등록 테이블(240)에서 삭제한다.On the other hand, when the
본 발명에 따른 공통 데몬 프로세스(230)는 해당 이동 단말기로 수신되는 모든 패킷을 단말운용체제(220)로부터 수신하며, 수신된 패킷의 헤더에 포함된 포트 번호가 포트 등록 테이블(240)에 등록된 포트 번호인지 여부를 확인할 수 있다. 확인 결과, 등록된 포트 번호인 경우, 공통 데몬 프로세스(230)는 단말운용체제(220)로 해당 포트 번호에 상응하는 응용 프로그램을 위한 패킷이 수신되었음을 지시하는 소정의 패킷 수신 이벤트 메시지를 송신할 수 있다.The
이때, 공통 데몬 프로세스(230)는 수신된 패킷을 해당 포트 번호에 상응하여 미리 할당된 버퍼에 저장할 수 있다. In this case, the
여기서, 패킷 수신 이벤트 메시지는 응용 프로그램 별 고유하게 할당되는 응용 식별자, 포트 번호 중 적어도 하나를 포함할 수 있다.Here, the packet reception event message may include at least one of an application identifier and a port number uniquely allocated to each application program.
단말운용체제(220)는 패킷 수신 이벤트 메시지를 수신하면, 해당 응용 식별자에 대응하는 응용 프로그램을 활성화시킨다.When the
활성화된 응용 프로그램은 자신에게 할당된 수신 버퍼에 저장된 패킷을 독출하여 처리한다.The activated application program reads and processes the packet stored in the receive buffer allocated to the application.
이때, 나머지 응용 프로그램은 활성화되지 않은 상태로 유지됨을 주의해야 한다. 즉, 단말운용체제(220)에 의해 활성화된 응용 프로그램을 제외한 나머지 응용 프로그램은 자신의 수신 버퍼로 수신된 패킷이 존재하는지 여부를 확인하지 않는다. At this time, note that the remaining applications remain inactive. That is, the application programs other than the application program activated by the
단말운용체제(220)는 활성화된 응용 프로그램이 수신된 패킷에 대한 처리를 완료하면, 활성화된 응용 프로그램을 다시 비활성화시킨다.The
따라서, 본 발명에 따른 이동 단말기는 특정 시간에 패킷이 수신된 응용 프로그램만을 활성화시킬 수 있으며, 공통 데몬 프로세스(230)는 주기적으로 단말운용체제(220)로부터 수신된 패킷이 존재하는지 여부를 확인한다.Accordingly, the mobile terminal according to the present invention can activate only an application program in which a packet is received at a specific time, and the
본 발명의 다른 일 실시예에 따르면, 공통 데몬 프로세스(230)가 단말운용체제(220)로부터 패킷을 수신하는 경우, 수신된 패킷에 포함된 포트 번호를 이용하여 해당 응용 프로그램을 직접 활성화시키고, 해당 수신 패킷에 대한 처리가 완료되면 활성화된 응용 프로그램을 비활성화시킬 수도 있음을 주의해야 한다.According to another embodiment of the present invention, when the
또한, 상기한 도 2에서는 응용 프로그램 별로 수신 버퍼가 할당되는 것으로 도시되어 있으나, 본 발명의 다른 일 실시예에 따른 이동 단말기는 복수의 응용 프로그램에 의해 공유되는 공유 메모리를 구비할 수 있으며, 공통 데몬 프로세 스(230)는 단말운용체제(220)로부터 수신된 패킷을 상기한 공유 메모리를 통해 해당 응용 프로그램으로 전달할 수 있다.In addition, although FIG. 2 illustrates that a reception buffer is allocated for each application program, the mobile terminal according to another embodiment of the present invention may include a shared memory shared by a plurality of application programs, and a common daemon. The
여기서, 공유 메모리의 크기는 해당 이동 단말기의 수신 패킷 처리 능력-예를 들면, CPU 성능 및 최대 무선 데이터 처리 속도 등을 포함함- 및 동시에 구동 가능한 응용 프로그램의 개수를 고려하여 할당되는 것이 바람직하다.Here, the size of the shared memory is preferably allocated in consideration of the received packet processing capability of the mobile terminal, including, for example, CPU performance and maximum wireless data processing speed, and the number of applications that can be run at the same time.
도 3은 본 발명의 일 실시예에 따른 공통 데몬 프로세스의 수신 패킷 처리 방법을 설명하기 위한 순서도이다.3 is a flowchart illustrating a received packet processing method of a common daemon process according to an embodiment of the present invention.
도 3을 참조하면, 단말 전원이 인가되어 단말하드웨어(210) 및 단말운용체제(220)의 초기화가 완료되면, 단말운용체제(220)는 공통 데몬 프로세스(230)를 초기화한다(S302). 이때, 단말운용체제(220)는 포트 등록 테이블(240)도 초기화할 수 있다.Referring to FIG. 3, when terminal power is applied and initialization of the
공통 데몬 프로세스(230)는 단말운용체제(220)로부터의 메시지 수신을 대기한다(S304).The
만약, 단말운용체제(220)로부터 포트 갱신 메시지가 수신된 경우, 공통 데몬 프로세스(230)는 포트 갱신 메시지에 포함된 명령 타입이 포트 등록인지 여부를 확인한다(S308).If the port update message is received from the
여기서, 포트 갱신 메시지는 응용 식별자, 포트 번호 중 적어도 하나를 더 포함할 수 있다.Here, the port update message may further include at least one of an application identifier and a port number.
확인 결과, 만약, 명령 타입이 포트 등록인 경우, 공통 데몬 프로세스(230) 는 포트 등록 테이블(240)에 포트 갱신 메시지에 포함된 포트 정보를 추가한다(S310).As a result of the check, if the command type is port registration, the
이 후, 공통 데몬 프로세스(230)는 추가된 포트 정보에 상응하는 수신 버퍼를 할당할 수 있다(S312).Thereafter, the
상기한 308 단계에서, 확인 결과, 만약, 명령 타입이 포트 삭제인 경우, 공통 데몬 프로세스(230)는 수신된 포트 갱신 메시지에 포함된 포트 번호 또는 응용 식별자에 상응하는 포트 정보를 포트 등록 테이블(240)로부터 삭제한다(S314).In step 308, if the check result indicates that the command type is port deletion, the
이 후, 공통 데몬 프로세스(230)는 해당 포트 번호에 상응하여 할당된 수신 버퍼를 해제한다(S316).Thereafter, the
상기한 S304 단계에서, 만약, 단말운용체제(220)으로부터 수신된 메시지가 패킷 데이터인 경우(S318), 공통 데몬 프로세스(230)는 수신된 패킷 데이터의 헤더(Header)로부터 포트 번호를 추출한다(S320). In the above step S304, if the message received from the
이 후, 공통 데몬 프로세스(230)는 추출된 포트 번호가 포트 등록 테이블(240)에 등록되어 있는지 여부를 확인한다(S322).Thereafter, the
확인 결과, 만약, 추출된 포트 번호가 포트 등록 테이블(240)상에 존재하는 경우, 공통 데몬 프로세스(230)는 추출된 포트 번호에 상응하는 수신 버퍼에 수신된 패킷 데이터를 저장한다(S324).As a result of the check, if the extracted port number exists on the port registration table 240, the
연이어, 공통 데몬 프로세스(230)는 해당 포트 번호로 패킷이 수신되었음을 지시하는 소정의 패킷 수신 이벤트를 생성하여 단말운용체제(220)에 전송한다(S326).Subsequently, the
이때, 단말운용체제(220)는 수신된 패킷 수신 이벤트에 상응하는 응용 프로그램을 활성화시키며, 해당 응용 프로그램은 상기한 324 단계에서 저장된 패킷 데이터를 독출하여 처리할 수 있다.In this case, the
상기한 S322 단계에서, 만약, 추출된 포트 번호가 포트 등록 테이블(240)에 등록되어 있지 않은 경우, 공통 데몬 프로세스(230)는 소정의 패킷 수신 에러(Error) 통보 신호를 단말운용체제(220)에 송신한 후 수신된 패킷 데이터를 폐기할 수 있다(S328).In step S322, if the extracted port number is not registered in the port registration table 240, the
본 발명의 다른 일 실시예에 따르면, 공통 데몬 프로세스(230)는 등록되지 않은 포트 번호로 수신된 패킷 데이터를 별도의 패킷 수신 에러 통보 신호를 생성하지 않고, 즉시 해당 패킷 데이터를 폐기할 수도 있음을 주의해야 한다.According to another embodiment of the present invention, the
공통 데몬 프로세스(230)는 상기한 S312 단계, S316 단계, S326 단계, S328 단계 중 어느 하나를 수행한 후 상기한 S304 단계로 회귀한다.The
도 4는 본 발명의 일 실시예에 따른 공통 데몬 프로세스의 내부 블록도이다.4 is an internal block diagram of a common daemon process according to one embodiment of the invention.
도 4를 참조하면, 본 발명의 일 실시예에 따른 공통 데몬 프로세스(230)는 메시지송수신부(410), 제어부(420), 패킷수신이벤트생성부(430), 포트 등록 테이블 갱신부(440) 및 포트 번호 검증부(450)를 포함할 수 있다. 특히, 공통 데몬 프로세스(230)는 포트 등록 테이블(240)을 관리하며, 패킷 데이터 수신 시 포트 등록 테이블(240)을 참조하여 해당 응용 프로그램을 활성화시키고 수신된 패킷 데이터를 활성화된 응용 프로그램으로 제공할 수 있다.Referring to FIG. 4, the
이하의 설명에서는 공통 데몬 프로세스(230)에 포함된 각각의 구성 요소의 기능을 상세히 살펴보기로 한다.In the following description, the function of each component included in the
메시지송수신부(410)는 단말운용체제(220)와 공통 데몬 프로세스(230) 사이에 송신 및 수신되는 제어 신호 및 패킷 데이터의 전송 인터페이스를 제공한다.The message transmitter /
제어부(420)는 단말운용체제(220)로부터 수신되는 제어 신호-예를 들면, 포트 갱신 메시지-에 따라 포트 등록 테이블(240)의 갱신을 제어하는 기능을 수행한다.The
또한, 제어부(420)는 단말운용체제(220)로부터 패킷 데이터가 수신되는 경우, 하부 모듈이 수신된 패킷 데이터에 포함된 포트 번호 검증하고, 검증 결과에 따라 소정의 패킷 수신 이벤트 신호를 생성하도록 제어하는 기능을 수행한다. 또한, 제어부(420)는 생성된 패킷 수신 이벤트 신호를 메시지송수신부(410)에 전달하고, 수신된 패킷 데이터를 해당 수신 버퍼에 저장하는 기능을 수행할 수 있다.In addition, when the packet data is received from the
패킷 수신 이벤트 생성부(430)는 제어부(420)의 제어 신호에 따라 특정 포트로 패킷 데이터가 수신되었음을 알리는 소정의 패킷 수신 이벤트 신호를 생성하여 단말운용체제(220)에 전송하는 기능을 수행한다.The packet reception
포트 등록 테이블 갱신부(440)는 제어부(420)로부터 포트 갱신 메시지를 수신하여 특정 포트 정보를 포트 등록 테이블(240)에 추가하거나, 삭제하는 기능을 수행한다.The port
포트 번호 검증부(450)는 제어부(420)의 제어 신호에 따라 단말운용체제(220)으로부터 수신된 패킷 데이터에 포함된 포트 번호를 추출하고, 추출된 포트 번호가 포트 등록 테이블(240)상에 등록되었는지 여부를 검증하는 기능을 수행한다. 만약, 검증 결과, 추출된 포트 번호가 포트 등록 테이블(240)에 등록되어있지 않은 경우, 포트 번호 검증부(450)는 소정의 패킷 수신 에러 통보 메시지를 생성하여 단말운용체제(220)에 전송할 수 있다.The port
여기서, 패킷 수신 에러 통보 메시지는 에러가 발생된 패킷 데이터의 포트 번호를 포함할 수 있으며, 단말운용체제(220)는 수신된 패킷 수신 에러 통보 메시지를 접속 기지국을 통해 해당 서비스 서버로 전송할 수 있다.Here, the packet reception error notification message may include a port number of an error packet data, and the
예를 들면, 상기와 같은 패킷 수신 에러는 이동 단말기는 해당 포트 번호에 상응하는 응용 프로그램이 종료되고, 해당 포트 번호를 통해 서비스를 제공하는 특정 서버에서는 해당 포트 번호를 유지하는 경우에 발생될 수 있다.For example, such a packet reception error may occur when the mobile terminal terminates an application program corresponding to the corresponding port number and maintains the corresponding port number in a specific server providing a service through the corresponding port number. .
따라서, 해당 서버는 패킷 수신 에러 통보 메시지를 수신하는 경우, 해당 이동 단말기로의 패킷 데이터 전송을 중단함으로써, 이후 불필요한 패킷 데이터의 전송을 차단할 수 있다.Therefore, when the server receives the packet reception error notification message, the server may interrupt the transmission of packet data to the mobile terminal, thereby preventing unnecessary transmission of packet data.
본 발명의 다른 일 실시예에 따른 제어부(420)는 패킷 수신 이벤트 신호 생성 시 해당 응용 프로그램에 상응하여 할당된 수신 버퍼에 수신된 패킷 데이터를 저장한 후, 직접 해당 응용 프로그램을 활성화시킬 수도 있음을 주의해야 한다. According to another embodiment of the present invention, the
도 5는 본 발명의 일 실시예에 따른 포트 등록 테이블의 구조를 도시한 데이터 구조이다.5 is a data structure illustrating a structure of a port registration table according to an embodiment of the present invention.
도 5에 도시된 바와 같이, 본 발명의 일 실시예에 따른 포트 등록 테이 블(240)은 제1 내지 제N 응용 포트 정보를 포함할 수 있다.As shown in FIG. 5, the port registration table 240 according to an embodiment of the present invention may include first to Nth application port information.
여기서, 각각의 응용 포트 정보는 응용 식별자(510), 포트 번호(520), 버퍼 시작 주소(530), 버퍼 사이즈(540) 및 잔여 버퍼 사이즈(540)를 포함할 수 있다.Each application port information may include an
응용 식별자(510)는 응용 프로그램 별 고유하게 할당되는 식별자가 저장되는 필드이고, 포트 번호(520)는 해당 응용 식별자(510)에 상응하여 할당된 포트 번호를 저장하기 위한 필드이다.The
버퍼 시작 주소(530)는 해당 포트 번호에 상응하여 할당된 수신 버퍼의 시작 주소가 저장되는 필드이며, 버퍼 사이즈(540)는 해당 포트 번호에 상응하여 할당된 수신 버퍼의 크기 정보를 저장하기 위한 필드이다. 잔여 버퍼 사이즈(540)는 해당 수신 버퍼의 저장 가능한 잔여 메모리 사이즈를 기록하기 위한 필드이다.The
본 발명에 따른 공통 데몬 프로세스(230)는 특정 포트 번호에 상응하는 패킷 데이터를 수신하는 경우, 수신된 패킷 데이터의 사이즈와 해당 포트 번호에 상응하는 수신 버퍼의 잔여 버퍼 사이즈(550)를 비교하여, 버퍼 오버플로우(Buffer Overflow) 여부를 확인할 수 있다.When the
만약, 특정 수신 버퍼에 버퍼 오버플로우(Buffer Overflow)가 발생하는 경우, 공통 데몬 프로세스(230)는 버퍼 오버플로우가 발생된 응용 프로그램을 활성화하여 수신된 패킷 데이터가 처리될 수 있도록 제어할 수 있다.If a buffer overflow occurs in a specific reception buffer, the
상기한 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.Preferred embodiments of the present invention described above are disclosed for purposes of illustration, and those skilled in the art will be able to make various modifications, changes, and additions within the spirit and scope of the present invention. Additions should be considered to be within the scope of the following claims.
도 1은 종래 기술에 따른 이동 단말기에서의 복수의 응용 프로그램에 대한 패킷 처리 방법을 설명하기 위한 도면.1 is a view for explaining a packet processing method for a plurality of application programs in a mobile terminal according to the prior art.
도 2는 본 발명의 일 실시예에 따른 공통 데몬(Common Demon)을 이용한 데이터 서비스 제공 방법을 설명하기 위한 이동 단말기 블록도.2 is a block diagram of a mobile terminal for explaining a data service providing method using a common daemon according to an embodiment of the present invention.
도 3은 본 발명의 일 실시예에 따른 공통 데몬 프로세스의 수신 패킷 처리 방법을 설명하기 위한 순서도.3 is a flowchart illustrating a method of processing a received packet of a common daemon process according to an embodiment of the present invention.
도 4는 본 발명의 일 실시예에 따른 공통 데몬 프로세스의 내부 블록도.4 is an internal block diagram of a common daemon process according to one embodiment of the invention.
도 5는 본 발명의 일 실시예에 따른 포트 등록 테이블의 구조를 도시한 데이터 구조.5 is a data structure showing a structure of a port registration table according to an embodiment of the present invention.
*주요 도면 부호* Key Drawing
220 : 단말운용체제220: terminal operation system
230 : 공통 데몬 프로세스230: common daemon process
240 : 포트 등록 테이블240: port registration table
250 : 응용 프로그램250: Application
420 : 제어부420: control unit
430 : 패킷 수신 이벤트 생성부430: packet receiving event generation unit
440 : 포트 등록 테이블 갱신부440: Port registration table update unit
450 : 포트 번호 검증부450: port number verification unit
510 : 응용 식별자510: application identifier
520 : 포트 번호520: port number
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070122180A KR100931730B1 (en) | 2007-11-28 | 2007-11-28 | Method and device for controlling terminal application process using common daemon |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070122180A KR100931730B1 (en) | 2007-11-28 | 2007-11-28 | Method and device for controlling terminal application process using common daemon |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090055319A KR20090055319A (en) | 2009-06-02 |
KR100931730B1 true KR100931730B1 (en) | 2009-12-14 |
Family
ID=40987001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070122180A KR100931730B1 (en) | 2007-11-28 | 2007-11-28 | Method and device for controlling terminal application process using common daemon |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100931730B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101482090B1 (en) * | 2012-11-01 | 2015-01-13 | 주식회사 케이티 | Reproduction apparatus and method of providing web service thereof |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010036550A (en) * | 1999-10-09 | 2001-05-07 | 서평원 | Multiport controlling method in multiport controller |
KR20070097691A (en) * | 2006-03-28 | 2007-10-05 | (주)케이티에프테크놀로지스 | Portable terminal having multitasking function |
-
2007
- 2007-11-28 KR KR1020070122180A patent/KR100931730B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010036550A (en) * | 1999-10-09 | 2001-05-07 | 서평원 | Multiport controlling method in multiport controller |
KR20070097691A (en) * | 2006-03-28 | 2007-10-05 | (주)케이티에프테크놀로지스 | Portable terminal having multitasking function |
Also Published As
Publication number | Publication date |
---|---|
KR20090055319A (en) | 2009-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110333947B (en) | Method, device, equipment and medium for loading subcontracting resources of game application | |
US7227847B2 (en) | Power management system and method for a wireless communications device | |
US20190268293A1 (en) | Scalable, real-time messaging system | |
KR20110076954A (en) | Optimized polling in low resource devices | |
CN101242330B (en) | Electronic device, management server and control method thereof | |
CN107743137B (en) | File uploading method and device | |
CN106658064B (en) | Virtual gift display method and device | |
US11500666B2 (en) | Container isolation method and apparatus for netlink resource | |
CN110312283B (en) | Information processing method and device | |
US11671678B2 (en) | Method and device, equipment, and storage medium for data processing | |
CN103716230A (en) | Message sending method, device and server | |
CN102891851A (en) | Access control method, equipment and system of virtual desktop | |
US20090157896A1 (en) | Tcp offload engine apparatus and method for system call processing for static file transmission | |
KR100931730B1 (en) | Method and device for controlling terminal application process using common daemon | |
CN108460042B (en) | Page display method, related equipment and system | |
CN102025730B (en) | Data transmission device based on HTTP protocol and implementation method thereof | |
CN114584618A (en) | Information interaction method, device, equipment, storage medium and system | |
WO2017045454A1 (en) | Method, device and system for realizing terminal access | |
US20170171357A1 (en) | Apparatus and method for assisting in downloading file successfully | |
CN100578479C (en) | Transmission control device and transmission control method | |
CN113055493B (en) | Data packet processing method, device, system, scheduling device and storage medium | |
CN111651282B (en) | Message processing method, message processing device and electronic equipment | |
CN113452948A (en) | Conference terminal control method, conference terminal control device, conference terminal equipment and storage medium | |
CN107257272B (en) | Data transmission method, transmission terminal and reception terminal | |
JP2010146246A (en) | Framework computer program for multi-agent system, network system and inter-agent communication method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
N231 | Notification of change of applicant | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20121203 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20131202 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20141201 Year of fee payment: 6 |