KR20130024801A - 단말 및 그 단말에서 애플리케이션 관리 방법 - Google Patents

단말 및 그 단말에서 애플리케이션 관리 방법 Download PDF

Info

Publication number
KR20130024801A
KR20130024801A KR1020120093565A KR20120093565A KR20130024801A KR 20130024801 A KR20130024801 A KR 20130024801A KR 1020120093565 A KR1020120093565 A KR 1020120093565A KR 20120093565 A KR20120093565 A KR 20120093565A KR 20130024801 A KR20130024801 A KR 20130024801A
Authority
KR
South Korea
Prior art keywords
synchronization
application
period
time point
terminal
Prior art date
Application number
KR1020120093565A
Other languages
English (en)
Other versions
KR101828295B1 (ko
Inventor
홍영기
김길연
강현진
권기석
박용석
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to AU2012302451A priority Critical patent/AU2012302451B2/en
Priority to JP2014528279A priority patent/JP6048763B2/ja
Priority to RU2014107598/08A priority patent/RU2585986C2/ru
Priority to PCT/KR2012/006917 priority patent/WO2013032237A1/en
Priority to EP12828481.7A priority patent/EP2751666B1/en
Priority to CN201280040771.2A priority patent/CN103765377B/zh
Publication of KR20130024801A publication Critical patent/KR20130024801A/ko
Application granted granted Critical
Publication of KR101828295B1 publication Critical patent/KR101828295B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

본 발명은 단말 및 그 단말에서 애플리케이션을 수행하는 방법에 관한 것으로, 본 발명의 일 실시 예에 따르는 단말의 애플리케이션 동기화 방법은, 동기화할 애플리케이션이 추가되면, 이전에 등록돼 있는 동기화 대상 애플리케이션의 동기화 시점 정보 혹은 복수의 이전에 등록돼 있는 동기화 대상 애플리케이션들의 공통 동기화 시점 정보를 획득하는 단계 및 상기 동기화 시점 정보 혹은 공통 동기화 시점 정보를 고려하여 상기 추가된 동기화할 애플리케이션의 동기화 시점을 변경하는 단계를 포함할 수 있다. 본 발명의 일 실시 예에 따르면, 단말에서 다양한 동기화 주기를 가진 응용프로그램들의 동기화 동작의 시작 시점 및 반복 주기가 조절됨으로써, 단말의 전원 소비를 줄일 수 있다.

Description

단말 및 그 단말에서 애플리케이션 관리 방법{TERMINAL AND METHOD FOR MANAGING APPLICATION THEREOF}
본 발명은 단말 및 그 단말에서 사용되는 애플리케이션의 데이터를 관리하는 방법에 관한 것으로, 특히 복수의 애플리케이션들이 동시에 업데이트를 수행하는 방법 및 그를 제공하는 단말에 관한 것이다.
이동 통신 기술이 발전해감에 따라 단말은 기존의 음성 통화 기능뿐만 아니라 다양한 데이터 통신 기능을 수행할 수 있게 되었다. 특히 스마트 폰과 같은 단말과 전송 속도가 향상된 네트워크가 개발됨에 따라, 사용자들은 다양한 데이터를 시간, 장소 등에 구애 받지 않고 송수신할 수 있게 되었다.
스마트 폰 같은 단말에서는 메일, SNS(Social Network Service), IM(Instant Messaging)과 같이 다양한 애플리케이션들이 구동된다. 이와 같은 애플리케이션들은 네트워크와 연동되어 데이터를 동기화할 수 있다. 그러기 위해 각 애플리케이션들은 적절한 값의 데이터 동기화 주기가 설정되어 운용된다. 일반적으로 설정되는 동기화 주기는 5분, 15분, 30분, 1시간, 4시간 등 다양한 값으로 설정될 수 있다. 애플리케이션의 업데이트 주기를 설정할 때, 실시간으로 업데이트되는 데이터를 받기를 원하는 사용자는 동기화 주기를 짧은 값으로 설정한다.
그리고 단말은 해당 애플리케이션에 대해 설정된 동기화 주기마다 네트워크로 업데이트된 데이터를 요청한다. 그러면 해당 네트워크는 요청된 데이터를 단말로 송신한다.
단말은 각각의 애플리케이션이 업데이트를 수행할 때마다, 전력 소비를 줄이기 위해 절전 모드(IDLE)에서 최대 동작 모드(ACTIVE)로 전환된다. 따라서 복수의 애플리케이션에 대해 각 애플리케이션을 위한 동기화 주기가 설정되어 있는 경우, 절전 모드에서 최대 동작 모드로 전환되는 횟수가 많아진다.
도 1은 종래 기술에 따른, 복수의 애플리케이션들이 각 애플리케이션을 위한 동기화 주기에 따라 업데이트를 수행하는 방법을 도시한 도면이다.
도 1을 참조하면, 애플리케이션 A, 애플리케이션 B, 애플리케이션 C의 동기화 주기가 각각 다른 경우, 단말의 절전 모드에서 최대 동작 모드로 전환되는 횟수가 많아지고 절전 모드 유지 시간이 짧아진다. 즉 절전 모드에서 최대 동작 모드로 전환되는 횟수가 많을수록 단말이 모드 전환을 위해 사용하는 시그널링이 늘어나고, 이에 의한 전력 소모 등이 불필요하게 발생한다는 문제점이 있다. 예를 들어 3G WCDMA에서 프리저베이션(preservation) 모드 천이 및 RAB(Radio Access Bearer) 재설정을 위해 35개의 제어 메시지가 소요된다.
따라서 본 발명은 단말에서 애플리케이션의 데이터 업데이트 주기를 효과적으로 제어하는 방법 및 장치를 제공하는데 그 목적이 있다.
상기와 같은 문제점을 해결하기 위하여 본 발명의 일 실시 예에 따르는 단말의 애플리케이션 동기화 방법은, 동기화할 애플리케이션이 추가되면, 이전에 등록돼 있는 동기화 대상 애플리케이션의 동기화 시점 정보 혹은 복수의 이전에 등록돼 있는 동기화 대상 애플리케이션들의 공통 동기화 시점 정보를 획득하는 단계 및 상기 동기화 시점 정보 혹은 공통 동기화 시점 정보를 고려하여 상기 추가된 동기화할 애플리케이션의 동기화 시점을 변경하는 단계를 포함할 수 있다.
또한 상기와 같은 문제점을 해결하기 위한 본 발명의 일 실시 예에 따르는 애플리케이션 동기화를 수행하는 단말은, 동기화할 애플리케이션이 추가되면, 이전에 등록돼 있는 동기화 대상 애플리케이션의 동기화 시점 정보 혹은 이전에 등록돼 있는 동기화 대상 애플리케이션들의 공통 동기화 시점 정보를 획득하고, 상기 동기화 시점 정보 혹은 공통 동기화 시점 정보를 고려하여 상기 추가된 동기화할 애플리케이션의 동기화 시점을 변경하는 제어부를 포함할 수 있다.
본 발명의 일 실시 예에 따르면, 단말에서 다양한 동기화 주기를 가진 애플리케이션들의 동기화 동작의 시작 시점 및 반복 주기가 조절됨으로써, 절전 모드(IDLE)에서 최대 동작 모드(ACTIVE) 변경이 최소화된다. 따라서 단말의 전원이 절약될 수 있다.
도 1은 종래 기술에 따른 각 애플리케이션을 위해 설정된 주기에 따라 업데이트를 수행하는 과정을 도시한 도면.
도 2는 본 발명에 따른 단말의 구성을 도시한 도면.
도 3은 본 발명의 실시 예에 따른 애플리케이션을 동기화하는 제어부의 OS 구성을 도시한 도면.
도 4는 본 발명의 실시 예에 따른 알람 리스트를 도시한 도면.
도 5는 본 발명의 실시 예에 따른 제어부의 OS단에서 스케줄러의 제1 위치를 도시한 도면.
도 6은 본 발명의 실시 예에 따른 제어부의 OS단에서 스케줄러의 제2 위치를 도시한 도면.
도 7은 본 발명의 실시 예에 따른 애플리케이션 관리 방법을 도시한 도면.
도 8은 본 발명의 실시 예에 따른 스케줄링 동기화 주기를 산출하는 방법을 도시한 도면.
도 9는 본 발명의 실시 예에 따른 애플리케이션의 동기화 반복 주기를 설정하는 방법을 도시한 도면.
도 10은 본 발명의 실시 예에 따른 애플리케이션별 설정된 스케줄링 동기화 주기에 따라 업데이트를 수행하는 과정을 도시한 도면.
도 11a 내지 도 11c는 본 발명의 일 실시 예에 따르는 애플리케이션 동기화 과정을 나타낸 도면이다.
도 12는 본 발명의 일 실시 예에 따르는 동기화 설정 과정의 순서도이다.
도 13은 본 발명의 다른 실시 예에 따르는 동기화 설정 과정의 순서도이다.
이하 본 명세서에서 '단말'은 데이터를 생성하거나, 외부로부터 송수신되는 데이터를 처리할 수 있는 정보 처리 기기를 의미한다. 여기서 단말은 컴퓨터, 노트북, 태블릿 PC, 휴대 단말, 스마트 폰 등을 포함한다.
이하 첨부된 도면을 참조하여 본 발명의 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 2는 본 발명의 일 실시 예에 따르는 단말의 구성을 도시한 도면이다.
도 2를 참조하면, 본 발명의 일 실시 예에 따르는 단말은 통신부(210), 제어부(220), 저장부(230)를 포함할 수 있다.
통신부(210)는 제어부(220)의 제어 하에 단말과 외부 장치 간의 데이터를 송수신할 수 있다. 즉 통신부(210)는 기지국과 통신 채널을 형성하여, 음성 및 화상 통신을 비롯하여, 문자 메시지, 이미지 등을 송수신할 수 있는 데이터 통신을 수행할 수 있다. 그러기 위해 통신부(210)는 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF 송신부와 수신되는 신호를 저잡음 증폭하고, 주파수를 하강 변환하는 RF 수신부를 포함할 수 있다. 또한 통신부(210)는 제어부(220)의 제어 하에 업데이트 주기마다 네트워크와 통신하여 데이터를 송수신할 수 있다. 이때 통신부(210)는 제어부(220)의 제어하여 네트워크로 업데이트가 필요한 애플리케이션과 연동되는 네트워크에 데이터를 요청하는 메시지를 전송할 수 있다.
본 명세서에서 애플리케이션을 동기화하는 것은 외부 엔티티에 변경된 정보를 송신하거나 외부 엔티티로부터 변경된 정보를 수신하는 것 뿐만 아니라 연결 유지를 위한 메시지(예를 들면 킵-얼라이브(keep-alive) 메시지)를 송수신하는 것도 널리 포함할 수 있다.
제어부(220)는 단말의 모든 구성 요소들의 상태 및 동작을 제어한다. 여기서 제어부(220)는 단말에서 수행되는 모든 애플리케이션 중 데이터의 업데이트가 주기적으로 필요한 애플리케이션들의 업데이트 주기를 동기화할 수 있다. 좀 더 상세히 설명하면 다음과 같다.
우선 제어부(220)는 동기화 주기 설정이 필요한지 판단한다. 다르게 말하면, 동기화 주기 설정 모드가 선택되는지 판단한다. 여기서 애플리케이션 동기화 주기 설정 모드는 데이터가 주기적으로 업데이트되는 애플리케이션 등록이 선택되거나, 이미 설치된 애플리케이션의 환경 설정 등에서 업데이트 주기 변경이 선택되었음을 의미한다. 데이터가 주기적으로 업데이트되는 애플리케이션은 메일, 일정, 네트워크를 통해 상대방으로부터 수신되는 데이터 등의 사용자 프로파일 정보를 주기적으로 업데이트해야 하는 애플리케이션을 의미한다. 데이터가 주기적으로 업데이트되는 애플리케이션으로 페이스북, 트위터와 같은 SNS(Social Network Service) 애플리케이션들이 대표적이다. 그리고 애플리케이션 동기화 설정 모드가 선택되면,즉 애플리케이션 동기화 주기 설정/변경이 필요하다고 판단되면, 제어부(220)는 최적 동기화 주기 산출부(225) 및 동기화 스케줄러(227)를 통해 해당 애플리케이션의 업데이트 주기를 저장된 다른 애플리케이션의 업데이트 주기와 동기화하여 스케줄링할 수 있다. 본 발명의 변형 예에 따르면 제어부(220)는 데이터가 주기적으로 업데이트되는 애플리케이션이 설치되거나 활성화될 때, 또는 별도로 지정된 시각에 애플리케이션 업데이트 주기를 스케줄링할 수도 있다.
최적 동기화 주기 산출부(225)는 사용자에 의해 선택된 업데이트 주기를 확인한다. 그리고 최적 동기화 주기 산출부(225)는 단말에서 수행되는 모든 애플리케이션의 업데이트 주기에 따라 미리 저장된 동기화 업데이트 주기를 확인한다. 즉 애플리케이션 동기화 주기 설정 모드가 설정되었을 때, 최적 동기화 주기 산출부(225)는 애플리케이션들에 따른 스케줄링 동기화 주기를 산출한다.
최적 동기화 주기 산출부(225)는 등록이 선택된 애플리케이션의 업데이트 주기 및 미리 저장된 동기화 업데이트 주기의 최대 공약수를 산출한다. 동기화 업데이트 주기는 현재 단말에서 수행될 수 있는 애플리케이션들의 동기화된 업데이트 주기를 의미한다. 그리고 업데이트를 주기적으로 필요로 하는 애플리케이션이 등록될 때마다, 최적 동기화 주기 산출부(225)는 동기화 업데이트 주기와 등록된 애플리케이션의 업데이트 주기를 비교하여 최대 공약수를 산출한다.
예를 들어 애플리케이션 A, B의 업데이트 주기가 Ta, Tb라고 가정한다. 그러면 각 애플리케이션의 업데이트 주기의 최대 공약수는 수학식 1과 같이 산출된다.
Figure pat00001
이때 Tgcd는 최대 공약수를 의미한다.
그리고 최대 공약수를 통해 동기화 업데이트 주기가 결정된 다음, 새로운 애플리케이션의 업데이트 주기(Tx)가 추가되는 경우, 최대 공약수는 수학식 2와 같이 산출된다.
Figure pat00002
이때 Tx는 추가되는 새로운 애플리케이션의 업데이트 주기를 의미한다. 그리고 Tgcd_old는 저장된 동기화 업데이트 주기를 의미한다.
동기화 스케줄러(227)는 최적 동기화 주기 산출부(225)로부터 산출된 최대 공약수를 이용하여 등록이 선택된 애플리케이션의 업데이트 주기를 조절한다. 동기화 스케줄러(227)는 산출된 스케줄링 동기화 주기에 따라 업데이트 주기를 스케줄링한다.
우선 동기화 스케줄러(227)는 등록이 선택된 애플리케이션의 업데이트 주기 및 미리 저장된 동기화 업데이트 주기가 서로 소인지 판단한다. 만약 등록이 선택된 애플리케이션의 업데이트 주기 및 미리 저장된 동기화 업데이트 주기가 서로 소이면, 동기화 스케줄러(227)는 등록이 선택된 애플리케이션의 업데이트 주기 및 미리 저장된 동기화 업데이트 주기 중 최소값을 기준으로 동기화 기본 단위를 설정한다.
예를 들어 등록이 선택된 애플리케이션의 업데이트 주기가 6분이고, 미리 저장된 동기화 업데이트 주기가 7분이라고 가정한다. 이때 등록이 선택된 애플리케이션의 업데이트 주기 및 미리 저장된 동기화 업데이트 주기의 최대 공약수는 1이 된다. 다시 말해 등록이 선택된 애플리케이션의 업데이트 주기 및 미리 저장된 동기화 업데이트 주기가 서로 소임을 의미한다. 이 경우, 동기화 스케줄러(227)는 등록이 선택된 애플리케이션의 업데이트 주기 및 미리 저장된 동기화 업데이트 주기 두 개의 값 중에 최소값인 등록이 선택된 애플리케이션의 업데이트 주기 6분을 동기화 기본 단위로 설정한다. 그리고 설정된 동기화 기본 단위는 동기화 업데이트 주기로써 저장부(230)에 저장된다.
동기화 기본 단위를 설정한 동기화 스케줄러(227)는 등록이 선택된 애플리케이션의 업데이트 주기가 미리 저장된 동기화 업데이트 주기보다 큰 값을 갖는지 판단한다. 만약 등록이 선택된 애플리케이션의 업데이트 주기가 미리 저장된 동기화 업데이트 주기보다 큰 값이고, 서로 소이면, 동기화 스케줄러(227)는 동기화 기본 단위 배수 중 업데이트 주기와 가장 가까운 배수 값으로 스케줄링 동기화 주기를 선택한다. 즉 동기화 스케줄러(227)는 수학식 3을 통해 스케줄링 동기화 주기를 선택한다.
Figure pat00003
Tx는 현재 선택된 애플리케이션의 스케줄링 동기화 주기이다. 현재 애플리케이션의 업데이트 주기(Tx)가 저장된 동기화 업데이트 주기(Tgcd_old)보다 큰 경우, Tx'는 Tgcd_old의 배수 중 Tx와 가장 가까운 값으로 변경된다.
반면에 등록이 선택된 애플리케이션의 업데이트 주기가 미리 저장된 동기화 업데이트 주기보다 작은 값이면, 동기화 스케줄러(227)는 설정된 동기화 기본 단위를 기준으로 동기화 업데이트 주기를 변경하여 다른 애플리케이션의 스케줄링 동기화 주기를 설정한다.
Figure pat00004
Tgcd_old'는 서로 다른 각 애플리케이션에 대해 새로 산출되는 동기화 업데이트 주기이다. 현재 애플리케이션의 업데이트 주기(Tx)가 저장된 동기화 업데이트 주기(Tgcd_old)보다 작고, 서로 소인 경우, 동기화 기본 단위는 최소값인 현재 애플리케이션 업데이트 주기인 Tx로 설정된다. 따라서 동기화된 다른 애플리케이션의 주기가 새로 설정되는 동기화 기본 단위에 따라 변경되어야 한다. 이에 Tgcd_old'는 Tx의 배수 값 중 Tgcd_old와 가장 가까운 값으로 변경된다.
등록이 선택된 애플리케이션의 업데이트 주기 및 미리 저장된 동기화 업데이트 주기가 서로 소가 아닌 경우, 동기화 스케줄러(227)는 산출된 최대 공약수로 동기화 기본 단위를 설정한다. 이렇게 설정된 동기화 기본 단위는 새로운 동기화 업데이트 주기로 저장부(230)에 저장된다. 이때에도 동기화 스케줄러(227)는 등록이 선택된 애플리케이션의 업데이트 주기가 미리 저장된 동기화 업데이트 주기보다 큰지를 판단한다. 그리고 등록이 선택된 애플리케이션의 업데이트 주기가 미리 저장된 동기화 업데이트 주기보다 크면, 동기화 스케줄러(227)는 최대 공약수인 동기화 기본 단위의 배수 중 업데이트 주기와 가장 가까운 배수 값으로 새로운 스케줄링 동기화 주기를 설정한다. 반면에 업데이트 주기가 동기화 업데이트 주기보다 작으면, 동기화 스케줄러(227)는 설정된 최대 공약수인 동기화 기본 단위로 새로운 스케줄링 동기화 주기를 선택한다.
또한 동기화 스케줄러(227)는 등록되는 애플리케이션의 업데이트가 처음 시작되는 시작 시간을 다른 애플리케이션의 스케줄링 동기화 주기에 맞추어 변경한다. 즉 동기화 스케줄러(227)는 애플리케이션의 업데이트 주기가 처음 시작되는 시점이 업데이트 주기가 동기화된 다른 애플리케이션들의 업데이트가 발생되는 시점과 동일하도록 스케줄링한다. 여기서 최적 동기화 주기 산출부(225)와 동기화 스케줄러(227)가 따로 구성된 것으로 설명하고 있으나, 이에 한정되지 않는다. 즉 최적 동기화 주기 산출부(225)가 동기화 스케줄러(227)에 포함될 수 있다.
제어부(220)는 최적 동기화 주기 산출부(225) 및 동기화 스케줄러(227)에 의해 애플리케이션별로 설정된 스케줄링 동기화 주기 및 동기화 기본 단위인 동기화 업데이트 주기를 저장부(230)에 저장한다. 다음으로 제어부(220)는 동기화 스케줄러(227)에 의해 애플리케이션의 업데이트 주기가 알람되면, 해당 애플리케이션의 업데이트를 수행한다. 즉 제어부(220)는 스케줄링 동기화 주기에 따라 업데이트를 수행할 적어도 하나의 애플리케이션을 확인하고, 적어도 하나의 애플리케이션을 업데이트한다.
저장부(230)는 단말의 기능 동작에 필요한 프로그램을 비롯하여, 단말에서 기능 동작 시 처리되는 각종 데이터를 저장한다. 여기서 저장부(230)는 제어부(220)의 제어 하에 알람 리스트(231)를 저장한다. 알람 리스트(231)는 애플리케이션별 스케줄링 동기화 주기에 대한 정보를 포함한다. 여기서 스케줄링 동기화 주기는 애플리케이션이 등록되거나, 해당 애플리케이션의 업데이트 주기가 변경될 때 설정되는 주기로, 현 단말에 저장된 모든 애플리케이션의 동기화된 업데이트 주기 및 등록되는 애플리케이션의 업데이트 주기를 이용하여 설정된다. 그리고 저장부(230)는 제어부(220)의 제어 하에 동기화 기본 단위인 동기화 업데이트 주기를 저장한다.
도면에 도시되지 않았지만, 단말은 수행되는 기능에 따라 다양한 구성들을 추가로 포함할 수 있다. 예를 들어 단말은 단말의 동작 상태에 따른 데이터를 표시하는 표시부, 사용자로부터의 신호를 입력받아 제어부(220)로 전달하는 입력부, 이미지를 촬영할 수 있는 카메라부, 디지털 방송 데이터를 수신할 수 있는 디지털 방송 수신부, 음성, 오디오 데이터 등을 처리하기 위한 오디오 처리부 등을 더 포함할 수 있다.
이와 같은 구성을 구비한 단말은 동일한 시간에 다수 개의 애플리케이션 업데이트 주기를 설정할 수 있다. 그리고 단말은 설정된 업데이트 주기에 따라 동시에 다수 개의 애플리케이션을 업데이트할 수 있다. 이에 단말은 절전 모드와 최대 동작 모드를 일정 시간 구간을 경계로 변경할 수 있으며, 이에 따라 전원 소비가 줄어든다.
도 3은 본 발명의 실시 예에 따른 애플리케이션을 동기화하는 제어부의 OS 구성을 도시한 도면이다.
도 3을 참조하면, 제어부의 OS단은 애플리케이션단(Application)(310), 애플리케이션 프레임 워크(Application Framework)(320), 시스템 라이브러리(system library)(330), 커널(Kernel)(340) 계층으로 구성된다.
애플리케이션단(310)은 애플리케이션(315)이 동작하는 구간이다. 애플리케이션 프레임 워크(320)는 특정 운영체계를 위한 응용 프로그램 표준 구조를 구현하는 클래스와 라이브러리 모임이다. 즉 애플리케이션 프레임 워크(320)는 애플리케이션의 라이프-사이클을 관리하며, 이벤트 처리 및 애플리케이션의 제어 기능을 제공한다. 여기서 애플리케이션 프레임 워크(320)는 애플리케이션의 업데이트 주기를 동기화를 요청하는 알람 관리자(325)를 포함한다.
시스템 라이브러리(330)는 운영체계의 부분들이 기억되어 있는 데이터 세트 및 파일들의 집합이다. 여기서 시스템 라이브러리(330)는 애플리케이션단(310)에서 수행되는 애플리케이션들의 업데이트 주기를 동기화하는 동기화 스케줄러(335)를 포함한다.
커널(340)은 인터럽트 처리, 프로세스 관리, 메모리 관리, 시스템 관리, 프로그래밍 인터페이스를 제공하며, 운영체계에서 기본적인 기능을 제공하는 핵심이다. 그래서 커널(340)은 일반적으로 접근이 불가능한 메모리에 로드된다. 즉 커널은 하드웨어를 제어하기 위한 일종의 애플리케이션이라고 볼 수 있다.
이와 같은 계층으로 구성된 제어부에서 본 발명의 동작 과정은 다음과 같다.
애플리케이션단(310)은 우선 등록되는 애플리케이션(315)에 대하여 350단계에서 업데이트 주기를 동기화하기 위한 동기화 주기 등록을 애플리케이션 프레임 워크(320)의 알람 관리자(325)로 요청한다. 그러면 알람 관리자(325)는 355단계에서 동기화 스케줄러(335)에 알람 리스트에 알람 추가를 요청한다. 이와 같은 과정은 애플리케이션이 등록될 때마다, 반복(357)적으로 수행된다.
그러면 동기화 스케줄러(335)는 최적 동기화 산출부(360)를 통해 해당 애플리케이션의 스케줄링 동기화 주기를 산출하고, 363단계에서 산출된 스케줄링 동기화 주기를 알람 리스트(365)에 추가한다. 그리고 동기화 스케줄러(335)는 367단계에서 알람 리스트에 저장된 스케줄링 동기화 주기를 확인하여, 알람 처리부(370)를 통해 업데이트를 애플리케이션단(310)에 알리기 위한 알람 주기를 확인한다. 만약 알람 주기가 되면, 동기화 스케줄러(335)는 375단계에서 애플리케이션의 스케줄링 동기화 주기를 애플리케이션단(310)에 알린다.
도 4는 본 발명의 실시 예에 따른 알람 리스트를 도시한 도면이다.
도 4를 참조하면, 저장부(230)에 저장되는 알람 리스트는 애플리케이션별로 스케줄링 동기화 주기에 대한 정보가 구분된다. 각 스케줄링 동기화 주기에 대한 정보는 타입(type;415), 시작 시점(when; 417), 스케줄링 동기화 주기(Repeat Interval; 419) 등을 포함한다. 여기서 타입(415)은 업데이트 주기를 알리는 알람을 설정하는 방법에 대한 정보를 포함하며, 알람을 설정할 때, 절대적인 시간(UTC)을 기준으로 할 것인지, 아니면 상대적인 시간(5분, 10분 후 등)을 기준으로 할 것인지를 알리는 정보이다. 그리고 단말에서 사용되는 타입(415)으로 ELAPSED_REALTIME_WAKEUP, RTC_WAKEUP과 같은 정보가 대표적이다. ELAPSED_REALTIME_WAKEUP은 단말의 시스템 시간을 이용하여 알람을 트리거할지를 결정하는 정보로, 현재 시간을 기준으로 시간이 얼마나 지난 후 동작할 것인지를 결정하는 정보이다. RTC_WAKEUP은 네트워크를 통해 획득된 시간으로 알람을 트리거할지를 결정하는 정보로, 절대적인 시간을 기준으로 한다.
시작 시점(417)은 애플리케이션이 등록된 다음 처음 업데이트를 수행할 시간을 의미한다. 그리고 스케줄링 동기화 주기(419)는 해당 애플리케이션이 업데이트되는 주기에 대한 정보로, 다른 애플리케이션과의 업데이트 주기와 동기화되기 위해 설정되는 동기화 기본 단위를 기준으로 설정된다.
도 5는 본 발명의 실시 예에 따른 제어부의 OS단에서 스케줄러의 제1 위치를 도시한 도면이다.
도 5를 참조하면, 커널(510), 시스템 라이브러리(520), 애플리케이션 프레임 워크(530)에서 동기화 스케줄러(535)가 애플리케이션 프레임 워크(530) 계층에 위치할 수 있다. 따라서 애플리케이션 A(540a) 및 애플리케이션 B(540b)의 업데이트 주기가 애플리케이션 프레임 워크(530) 계층에 위치한 동기화 스케줄러(535)에서 동기화된다. 그리고 스케줄링 동기화 주기에 따라 해당 업데이트 시간에 동기화 스케줄러(535)는 애플리케이션 A(540a) 및 애플리케이션 B(540b) 각각에 업데이트를 수행하라는 알람을 알린다.
도 6은 본 발명의 실시 예에 따른 제어부의 OS단에서 스케줄러의 제2 위치를 도시한 도면이다.
도 6을 참조하면, 커널(610), 시스템 라이브러리(620)에서 동기화 스케줄러(615)가 커널(610) 계층에 위치할 수 있다. 애플리케이션 A(640a) 및 애플리케이션 B(640b)의 업데이트 주기를 동기화 하는 요청이 시스템 라이브러리(620)를 통해 커널(610) 계층에 위치한 동기화 스케줄러(615)로 전달된다. 그리고 애플리케이션 A(640a) 및 애플리케이션 B(640b)의 업데이트 주기가 커널(610) 계층에 위치한 동기화 스케줄러(615)에서 동기화된다. 또한 스케줄링 동기화 주기에 따라 해당 업데이트 시간에 동기화 스케줄러(615)는 애플리케이션 A(640a) 및 애플리케이션 B(640b) 각각에 업데이트를 수행하라는 알람을 시스템 라이브러리(620)를 통해 알린다.
도 7은 본 발명의 실시 예에 따른 애플리케이션 관리 방법을 도시한 도면이다.
도 7을 참조하면, 단말은 710단계에서 대기 모드를 수행하고, 715단계에서 애플리케이션 동기화 주기 설정 모드가 선택되는지 판단한다. 여기서 애플리케이션 동기화 주기 설정 모드는 데이터가 주기적으로 업데이트되는 애플리케이션 등록이 선택되거나, 이미 설치된 애플리케이션의 환경 설정 등에서 업데이트 주기 변경이 선택되었을 때 수행되는 모드를 의미한다. 데이터가 주기적으로 업데이트되는 애플리케이션은 외부로부터 데이터를 주기적으로 수신해야하는 애플리케이션을 의미한다. 데이터가 주기적으로 업데이트되는 애플리케이션으로 페이스북, 트위터와 같은 SNS(Social Network Service)이 대표적이다.
애플리케이션 동기화 설정 모드가 선택되면, 단말은 720단계에서 애플리케이션들에 따른 스케줄링 동기화 주기를 산출한다. 이 과정에 대하여 도 8 내지 9를 참조하여 후술한다. 개략적으로 설명하면, 단말은 수행되는 애플리케이션의 업데이트 주기에 따라 미리 저장된 동기화 업데이트 주기를 애플리케이션 동기화 주기 설정 모드에서 선택된 애플리케이션의 업데이트 주기와 비교하여 최대 공약수를 산출한다. 그리고 단말은 산출된 최대 공약수를 이용하여 선택된 애플리케이션의 업데이트 주기를 다른 애플리케이션들의 업데이트 주기와 동기화한다.
다음으로 단말은 725단계에서 애플리케이션의 업데이트 주기가 시작되는 시점을 산출된 스케줄링 동기화 주기에 따른 시작 시간으로 변경한다. 즉 단말은 선택된 애플리케이션의 업데이트 시작 시점을 업데이트 주기가 동기화된 다른 애플리케이션들과 동시에 업데이트가 수행되도록 조율한다. 그리고 단말은 730단계에서 선택된 애플리케이션에 대한 스케줄링 동기화 주기를 저장한다.
다시 715단계로 돌아가, 애플리케이션 동기화 주기 모드가 선택되지 않으면, 단말은 735단계에서 애플리케이션 업데이트 모드가 선택되는지 판단한다. 즉 단말은 현재 시간에 업데이트 수행이 스케줄링되었는지 판단한다. 만약 애플리케이션 업데이트 모드이면, 단말은 740단계에서 현재 시간에 업데이트를 수행해야할 적어도 하나의 애플리케이션을 확인한다. 다음으로 단말은 745단계에서 확인된 애플리케이션에 대한 업데이트를 수행한다. 즉 단말은 해당 애플리케이션을 수행하기 위해 연동되는 네트워크에 데이터를 요청하고, 네트워크로부터 수신되는 데이터를 저장한다. 그리고 단말은 해당 애플리케이션이 수행될 때 저장된 데이터를 표시하거나, 해당 기능을 수행할 수 있다.
다시 735단계로 돌아가, 단말은 750단계에서 애플리케이션 수행 모드가 선택되는지 판단한다. 만약 애플리케이션 수행 모드가 선택되면, 단말은 755단계에서 해당 애플리케이션을 수행한다.
이와 같은 과정들을 통해 단말은 애플리케이션들의 업데이트 주기를 동기화시킬 수 있다. 각 애플리케이션들은 동기화된 업데이트 주기에 따라 업데이트를 수행할 수 있으므로, 단말은 절전 모드와 최대 동작 모드로 변경되는 주기가 일정해진다. 이에 따라 단말에서 소비되는 전원이 줄어든다. 다음으로 단말에서 각 애플리케이션별 동기화된 업데이트 주기를 산출하는 방법에 대하여 설명한다.
도 8은 본 발명의 실시 예에 따른 스케줄링 동기화 주기를 산출하는 방법을 도시한 도면이다.
도 8을 참조하면, 단말은 810단계에서 사용자에 의해 선택된 업데이트 주기를 확인한다. 그리고 단말은 820단계에서 단말에서 수행되는 모든 애플리케이션의 업데이트 주기에 따라 미리 저장된 동기화 업데이트 주기를 확인한다. 다음으로 단말은 830단계에서 확인된 업데이트 주기 및 동기화 업데이트 주기에 따른 스케줄링 동기화 주기를 산출한다. 스케줄링 동기화 주기를 산출하는 과정에 대하여 도 9를 참조하여 설명한다.
도 9는 본 발명의 실시 예에 따른 애플리케이션의 동기화 반복 주기를 설정하는 방법을 도시한 도면이다.
도 9를 참조하면, 단말은 910단계에서 등록이 선택된 애플리케이션의 업데이트 주기 및 미리 저장된 동기화 업데이트 주기의 최대 공약수를 산출한다. 즉 업데이트를 주기적으로 필요로 하는 애플리케이션이 등록될 때마다, 단말은 해당 애플리케이션의 업데이트 주기와 미리 저장된 동기화 업데이트 주기의 최대 공약수를 산출한다. 동기화 업데이트 주기는 단말에서 수행될 수 있는 애플리케이션들의 업데이트 주기를 동기화하기 위해 산출된 동기화 기본 단위를 의미한다.
단말은 915단계에서 업데이트 주기 및 동기화 업데이트 주기가 서로 소인지 판단한다. 만약 업데이트 주기 및 동기화 업데이트 주기가 서로 소이면, 단말은 920단계에서 업데이트 주기 및 동기화 업데이트 주기 중 최소값을 기준으로 동기화 기본 단위를 설정한다.
다시 915단계로 돌아가, 업데이트 주기 및 동기화 업데이트 주기가 서로 소가 아니면, 단말은 925단계에서 산출된 최대 공약수로 동기화 기본 단위를 설정한다.
동기화 기본 단위를 설정한 단말은 930단계에서 업데이트 주기가 동기화 업데이트 주기보다 큰 값을 갖는지 판단한다. 만약 업데이트 주기가 동기화 업데이트 주기보다 큰 값이면, 단말은 935단계에서 해당 애플리케이션의 업데이트 주기를 동기화 기본 단위 배수 중 업데이트 주기와 가장 가까운 배수 값으로 스케줄링 동기화 주기를 선택한다. 이때 미리 저장되었던 동기화 업데이트 주기는 동기화 기본 단위로 변경된다.
반면에 업데이트 주기가 동기화 업데이트 주기보다 작은 값이면, 단말은 940단계에서 설정된 동기화 기본 단위로 스케줄링 동기화 주기를 선택한다. 즉 단말은 현재 등록되어 있는 애플리케이션들의 스케줄링 동기화 주기를 설정된 동기화 기본 단위로 이용하여 변경한다. 즉 현재 단말에 등록되어 있는 애플리케이션의 업데이트 주기는 동기화 기본 단위의 배수 중 동기화 업데이트 주기와 가장 가까운 배수 값으로 변경된다. 이때 미리 저장되었던 동기화 업데이트 주기는 동기화 기본 단위로 변경된다.
도 10은 본 발명의 실시 예에 따른 애플리케이션별 설정된 스케줄링 동기화 주기에 따라 업데이트를 수행하는 과정을 도시한 도면이다.
도 10을 참조하면, 애플리케이션 A(1010)의 업데이트 주기는 10분이며, 애플리케이션 B(1020)의 업데이트 주기가 20분이며, 애플리케이션 C(1030)의 업데이트 주기가 5분이라고 가정한다. 이 경우, 애플리케이션 A(1010), 애플리케이션 B(1020), 애플리케이션 C(1030)의 최대 공약수는 5가 된다.
그러면 애플리케이션 A(1010), 애플리케이션 B(1020), 애플리케이션 C(1030)의 동기화 기본 단위는 5분이 되고, 각 스케줄링 동기화 주기는 10분, 20분, 5분으로 스케줄링된다. 다음으로 애플리케이션 A(1010), 애플리케이션 B(1020), 애플리케이션 C(1030)의 시작 시점이 업데이트를 동시에 시작될 수 있도록 변경된다. 그리고 애플리케이션 A(1010), 애플리케이션 B(1020), 애플리케이션 C(1030)는 스케줄링에 따라 스케줄링 동기화 주기에 업데이트를 수행한다.
이때 애플리케이션 A(1010)은 10분에 한번씩, 애플리케이션 B(1020)는 20분에 한번씩, 애플리케이션 C(1030)는 5분에 한번씩 업데이트를 수행하게 된다. 애플리케이션 A(1010), 애플리케이션 B(1020), 애플리케이션 C(1030)는 동기화 기본 단위 5분을 기본으로 동기화되었기 때문에, 처음 시작 시간에 애플리케이션 A(1010), 애플리케이션 B(1020), 애플리케이션 C(1030) 모두가 업데이트를 수행한다. 그리고 가장 짧은 동기화 반복 주기를 갖는 애플리케이션 C(1030)는 시작 시간을 기준으로 5분이 지난 다음 업데이트를 수행한다. 다음으로 애플리케이션 C(1030)는 다음 5분이 지난 후 즉 시작 시간을 기준으로 10분이 지난 다음 다시 업데이트를 수행한다. 이때, 10분 반복 주기를 갖는 애플리케이션 A(1010)도 동시에 업데이트를 수행한다. 20분 반복 주기를 갖는 애플리케이션 B(1020)의 경우에도 시작 시간을 기준으로 20분이 지난 다음 업데이트를 수행하며, 이때, 애플리케이션 A(1010) 및 애플리케이션 C(1030)도 동시에 업데이트를 수행할 수 있다. 이러한 과정들을 통해 단말은 절전 모드에서 최대 동작 모드로 변경되는 시점 또는 최대 동작 모드에서 절전모드로 변경되는 시점이 일정한 간격으로 나타날 수 있다.
본 발명에 따르면, 동기화를 하고자 하는 애플리케이션의 동기화 반복 주기정보를 포함한 업데이트 작업 스케줄이 단말의 커널 또는 애플리케이션 프레임워크에 위치한 스케줄러를 통해 등록된다. 이때 스케줄러는 등록되는 애플리케이션의 업데이트 주기의 시작 시점을 저장된 동기화 업데이트 주기에 따라 재조정한다. 그리고 애플리케이션별 작업 스케줄들은 스케줄링 동기화 주기에 따라 스케줄러 또는 임의의 모니터링 모듈에 의해 계속 모니터링 된다. 스케줄링 동기화 주기에 따라 설정된 시각이 되면 알람(Notification)이 발생되어 해당 애플리케이션단으로 전달된다. 그러면, 해당 애플리케이션단은 해당 네트워크와 연결되어 데이터 업데이트와 같은 작업을 수행한다.
애플리케이션 등록시, 단말은 해당 애플리케이션이 반복적으로 수행할 업데이트 작업 스케줄을 스케줄러를 통해 등록한다. 업데이트 작업 스케줄은 스케줄러를 통해 저장부(230)에 저장된 알람 리스트에 추가된다. 이 때 스케줄러는 해당 애플리케이션의 업데이트 주기와 저장된 동기화 업데이트 주기의 최대 공약수(GCD)인 동기화 기본 단위를 추출한다.
만약 두 주기가 서로 소(coprime)인 경우에 업데이트 주기 및 동기화 업데이트 주기 중 작은 값이 동기화 기본 단위로 설정된다. 그리고 업데이트 주기가 동기화 업데이트 주기보다 큰 경우, 동기화 반복 주기는 동기화 기본 단위의 배수 중에서 가까운 값으로 설정된다. 동기화 반복 주기는 사용자에게 알리지 않고 자동으로 변경될 수도 있고, 사용자에게 알려 사용자로 하여금 설정 값을 다시 변경하도록 할 수도 있다.
저장부(230)에 등록되는 알람 리스트는 업데이트가 처음 시작되는 시작 시간 (When)과 업데이트가 주기적으로 반복될 수 있도록 반복 주기(Repeat Interval)를 포함한다. 저장부(230)에 등록된 알람 리스트는 감시 모듈인 Alarm Thread에 의해 계속 확인되며, 등록된 업데이트 주기가 지난 스케줄 엔트리가 발견되면 등록을 요청한 애플리케이션단에 통보된다. 이 통보를 받은 애플리케이션단은 필요한 업데이트 작업을 수행한 후, 다음 번 통보를 대기한다.
도 11a 내지 도 11c는 본 발명의 일 실시 예에 따르는 애플리케이션 동기화 과정을 나타낸 도면이다.
도 11a 내지 도 11c의 실시 예에서, 제어부(220)는 각 애플리케이션의 동기화 동작 백그라운드 실행을 위해 실행 예정 시각을 시스템에 알람 또는 이와 유사한 형태로 등록한다.
도 11a 내지 도 11c에 대한 설명에서 시각의 표시는 도 11a의 현재 시각(0분)에 대한 상대적인 시각이다.
도 11a를 참조하면 애플리케이션 A는 30분 주기로 동기화 동작이 실행되도록 설정된 애플리케이션이다. 제어부(220)는 단계 1110에서 현재시각(0분)에 애플리케이션 A에 대한 알람의 반복 주기를 30분으로 설정하여 그 알람을 등록한다. 이후 특별한 변동이 없으면 시각 30분, 60분, 90분, ......, 에 애플리케이션 A에 대한 알람이 발동되고, 그에 따라 애플리케이션 A에 대한 동기화가 수행된다. 다만 도 11b 도 11c를 참조하여 후술하는 바와 같이 이후에 동기화 주기에 영향을 주는 다른 애플리케이션의 등록이 있을 수 있다.
도 11b를 참조하면 애플리케이션 B는 15분 주기로 동기화 동작이 실행되도록 설정된 애플리케이션이다. 제어부(220)는 단계 1120에서 현재시각(5분)에 애플리케이션 B에 대한 알람의 반복 주기를 15분으로 설정하여 그 알람을 등록한다. 애플리케이션 A에 대한 고려가 없다면, 애플리케이션 B에 대한 동기화 동작은 5분, 20분, 35분...에 실행된다. 다만 본 실시 예에 따르면, 애플리케이션 A의 동기화 주기(30분)와 애플리케이션 B의 동기화 주기(15분)의 최대공약수인 15분이 단위 동기화 주기가 된다. 이 주기는 공통으로 사용되는 동기화 주기이므로 공통 동기화 주기라고 표현할 수도 있다. 마찬가지로 단위 동기화 주기에 따라 어느 하나의 애플리케이션이 동기화되는 시점은 공통 동기화 시점이라고 표현할 수 있다.
종래 방식에 따르면, 현재시각 5분으로부터 15분 뒤인 20분에 애플리케이션 B의 알람이 발생되어야 한다. 하지만, 본 실시 예에 따르면, 단계 1130에서 첫 번째 알람 발생 시점은 20분에서 15분으로 변경된다. 애플리케이션 B에 대한 동기화 설정 이전에 다음번 동기화 시각은 30분이고, 이 시각을 기준으로 새로운 단위 동기화 주기인 15분을 더하거나 빼면 15분, 45분이 된다. 30분, 15분, 45분 중 애플리케이션 B에 대한 원래의 첫 번째 알람 발생 시각인 20분으로부터 가장 가까운 과거 시점의 15분, 다르게 표현하면 현재시각 5분 이후 첫 번째 새로운 단위 동기화 주기에 해당하는 15분이 애플리케이션 B에 대한 새로운 첫 번째 알람 발생 시각이 된다. 그에 따라 애플리케이션 B에 대한 동기화는 15분, 30분, 45분, 60분, ......, 에 수행된다. 애플리케이션 A에 대한 동기화는 30분, 60분, 90분, ......, 에 수행된다. 첫 번째 알람 시점이 변경되는 경우 사용자 또는 애플리케이션의 요구 조건을 만족시키기 위해 동기화 동작의 시점이 미래로 늦춰지도록 변경해서는 안되고 과거로 앞당겨지도록 변경되는 것이 바람직하다. 특히 킵얼라이브(keep-alive) 신호와 같은 경우 미리 약속된 시점 이전에 신호가 송신되어야만 하므로, 동기화 주기가 늦춰져서는 안된다. 다만 애플리케이션 특성에 따라 이러한 제한이 적용되지 않을 수도 있다. 즉, 첫 번째 알람 시점이 먼저 실행되고 있는 애플리케이션 A의 동기화 동작 시점인 30분이 될 수도 있다.
변형 예에 따르면, 새로 추가된 애플리케이션의 동기화 시점 변경은 원래의 동기화 주기가 최초로 도래할 때 수행될 수도 있다. 이에 따르면 애플리케이션 B에 대한 동기화는 20분에 실행되고 난 뒤 두 번째 실행 시점이 35분에서 30분으로 변경될 수 있다. 이러한 변형 예에 따르면 실질적으로 동기화 시점 변경의 이득이 없을 때에는 되도록 본래의 동기화 시점을 유지시키되, 동기화 시점의 변경의 이득이 있을 때 비로소 동기화 시점을 변경시키는 장점이 있다.
도 11c를 참조하면 애플리케이션 C는 8분 주기로 동기화 동작이 실행되도록 설정된 애플리케이션이다. 제어부(220)는 단계 1140에서 현재시각(11분)에 애플리케이션 C에 대한 알람의 반복 주기를 8분으로 설정하여 그 알람을 등록한다. 이 경우 종래 방식에 따르면 애플리케이션 C의 첫 번째 알람 발생 시점은 19분이 된다. 단계 1140 이전의 단위 동기화 주기인 15분과 애플리케이션 C의 동기화 주기인 8분은 서로 소이다. 본 실시 예에 따르면 원래의 단위 동기화 주기와 새로 추가된 애플리케이션의 동기화 주기가 서로 소인 경우 단위 동기화 주기와 새로 추가된 애플리케이션의 동기화 주기는 모두 그대로 유지된다. 다만 애플리케이션 C의 최초 동기화 시점은 종래의 단위 동기화 주기에 의한 동기화 시점을 참조로 하여 변경된다.
종래 방식에 따르면, 애플리케이션 C는 19분에 최초로 동기화가 수행된다. 다만 본 실시 예에 따르면, 단계 1150에서 애플리케이션 C의 최초 동기화 시점은 단위 동기화 주기에 따른 동기화가 최초로 수행되는 15분으로 변경된다. 단위 동기화 주기와 애플리케이션 C의 동기화 주기는 변경되지 않으므로, 이러한 변경에도 불구하고 135분이 되기 전에는 두 가지 동기화는 동시에 수행되지 않는다. 다만 억지로 동기화 주기를 반영구적으로 변경하는 것은 애플리케이션 특성에 반할 수도 있으므로 본 실시 예에서는 동기화 주기는 변경하지 않는다. 애플리케이션 C의 최초 동기화 시점의 변경으로 인해 애플리케이션 C와 다른 애플리케이션은 120분마다 한 번씩 동일한 시점에 동기화가 진행될 수 있다.
도 12는 본 발명의 일 실시 예에 따르는 동기화 설정 과정의 순서도이다.
단계 1210에서, 동기화 대상 애플리케이션이 추가된다. 예를 들어 사용자가 특정 애플리케이션의 동기화를 설정하거나, 동기화를 요하는 애플리케이션이 새로이 설치되는 경우 또는 애플리케이션이 활성화되는 경우 동기화 대상 애플리케이션이 추가될 수 있다. 이어 단계 1220에서 동기화를 수행하는 단말은, 애플리케이션에 의하여 요청된 최초의 동기화 시점(시작 시점)을 기록한다. 그 뒤 단계 1230에서, 단말은 상술한 도 2 내지 도 11c의 실시 예 또는 기타 후술할 실시 예에 따라서 최초 동기화 시점을 변경한다.
단계 1240에서 단말은 동일한 식별자(또는 동일한 애플리케이션)의 동기화 설정이 요청되는지 판단한다. 동일한 식별자의 동기화 설정이 다시 요청되지 않는 경우 동기화 설정 과정은 종료되고, 변경된 동기화 시점 및 애플리케이션에 의하여 요청된 주기에 따라 주기적으로 동기화가 실행된다. 동일한 식별자의 동기화 설정이 다시 요청되는 경우 과정은 단계 1250으로 진행한다.
단계 1250에서 단말은 새로운 동기화 설정의 시작 시점이 단계 1220에서 기록된 이전 동기화 설정의 시작 시점과 동일한지 판단한다. 두 시점이 동일한 경우는 동기화 설정(알람 요청)이 단순히 주기적인 동기화를 요청하는 것이 아니라 반드시 해당 시작 시점에 동기화를 진행하는 것을 요청하는 것이다. 예를 들어, 해당 애플리케이션은 동기화 시작 시점을 20분으로 설정하여 알람을 요청하였으나, 단말이 동기화 시작 시점을 15분으로 조정한 경우 해당 애플리케이션은 15분에 알람을 수신한다. 하지만 해당 애플리케이션은 반드시 20분에 알람을 받는 것을 원하므로, 다시 20분을 동기화 시작 시점으로 설정하여 동기화 시작을 요청한다. 이러한 경우 새로운 동기화 설정의 시작 시점이 단계 1220에서 기록된 이전 동기화 설정의 시작 시점과 동일한 경우이므로 과정은 단계 1260으로 진행하여 동기화 시작 시점의 변경 없이 애플리케이션이 요청한 시작시점을 유지하여 추후 동기화가 수행된다. 새로운 동기화 설정의 시작 시점이 단계 1220에서 기록된 이전 동기화 설정의 시작 시점과 동일하지 않은 경우 단말은 도 2 내지 도 11c의 실시 예 또는 기타 후술할 실시 예에 따라서 동기화 시작 시점을 변경하여 동기화를 수행한다. 또한 이러한 방식으로 동기화 시작 시점을 변경하지 않고 동기화를 진행하는 동기화 알람의 식별자(또는 그 애플리케이션의 식별자)들을 별도의 리스트로 보유할 수 있다. 단말은 이후 해당 식별자에 대한 동기화 알람 요청이 있는 경우 알람 시작 시점을 변경하지 않고 유지한다.
도 13은 본 발명의 다른 실시 예에 따르는 동기화 설정 과정의 순서도이다.
단계 1310에서 동기화 대상 애플리케이션이 추가된다. 예를 들어 사용자가 특정 애플리케이션의 동기화를 설정하거나, 동기화를 요하는 애플리케이션이 새로이 설치되는 경우 또는 애플리케이션이 활성화되는 경우 동기화 대상 애플리케이션이 추가될 수 있다.
이어 단계 1320에서 단말은 해당 애플리케이션이 동기화 시점 변경이 허용되는 애플리케이션인지 판단한다. 동기화 시점 변경이 허용되는 애플리케이션과 동기화 시점 변경이 허용되지 않는 애플리케이션을 구분하기 위해 여러 방식이 사용될 수 있다.
예를 들어, 저장부(230)는 동기화 시점 변경이 허용되는 애플리케이션의 목록, 즉 화이트리스트를 저장할 수 있다. 이 경우 제어부(220)는 동기화 대상으로 추가된 애플리케이션이 화이트리스트에 포함된 경우에만 도 2 내지 도 11c의 방식에 따르는 동기화 시점 조절을 수행한다.
화이트리스트와는 반대로 저장부(230)는 동기화 시점 변경이 허용되지 않는 애플리케이션의 목록, 즉 블랙리스트를 저장할 수 있다. 이 경우 제어부(220)는 동기화 대상으로 추가된 애플리케이션이 블랙리스트에 포함된 경우에만 도 2 내지 도 11c의 방식에 따르는 동기화 시점 조절을 수행한다.
블랙리스트 및/또는 화이트리스트는 예를 들어 사용자에 의하여 설정될 수 있다. 사용자는 정규 표현식을 이용하거나, 블랙리스트 및/또는 화이트리스트에 포함시키고자 하는 애플리케이션의 식별자, 이름 기타 정보를 직접 입력하여 블랙리스트 및/또는 화이트리스트에 포함되는 애플리케이션들을 조정할 수 있다. 사용자는 주기적인 트래픽 또는 동기화 과정이 요구되는 애플리케이션들이 화이트리스트에 포함되도록 하여 동기화 시점 조절이 효율적으로 수행될 수 있도록 할 수 있다. 마찬가지로, 사용자는 주기적인 트래픽 또는 동기화 과정이 요구되지 않는 애플리케이션들이 블랙리스트에 포함되도록 하여 동기화 시점 조절이 효율적으로 수행될 수 있도록 할 수 있다.
다른 실시 예에 따르면, 제어부(220)는 단말의 운영 체제(OS) 내의 계정 관리자(Account Manager) 또는 동기화 관리자(Synchronization Manager)에 등록된 애플리케이션을 모두 화이트리스트에 포함시킬 수 있다. 계정 관리자(Account Manager) 또는 동기화 관리자(Synchronization Manager)에 등록된 애플리케이션은 제어부(220)에 주기 정보를 제공하지 않고 알람을 등록할 수 있다. 하지만 실제로 계정 관리자(Account Manager) 또는 동기화 관리자(Synchronization Manager)에 등록된 애플리케이션은 주기적으로 동기화를 수행하는 경우가 많다. 이 경우 실제 주기는 알람이 등록되는 시점으로부터 알람의 시작 시점까지의 시간이 될 수 있다. 제어부(220)는 이러한 방식으로 주기를 추정하고, 도 2 내지 도 11c와 같은 방식으로 알람의 시점을 조정할 수 있다.또 다른 실시 예에 따르면, 제어부(220)는 디스플레이부를 통해 설치된 애플리케이션 리스트 또는 실행 중인 애플리케이션의 리스트를 제공할 수 있다. 사용자는 단말의 입력 장치를 통해 블랙리스트 또는 화이트리스트에 포함될 애플리케이션을 선택할 수 있다. 사용자의 선택을 돕기 위해 제어부(220)는 백그라운드 상태에서 주기적으로 트래픽을 발생시키거나 미리 설정된 양 이상의 트래픽을 발생시키는 애플리케이션을 다른 애플리케이션과 구별할 수 있도록 표시하여 사용자의 선택을 도울 수 있다.
또 다른 실시 예에 따르면 단말은 통신부(210)를 통해 외부 엔티티로부터 블랙리스트 및/또는 화이트리스트를 제공받을 수 있다. 외부 엔티티에 저장된 블랙리스트 및/또는 화이트리스트는 관리자에 의하여 관리될 수 있다.
상술한 실시 예들에 따라서 제어부(220)가 애플리케이션의 동기화 시점 및/또는 주기를 변경하도록 결정했을 때 사용자가 동기화 시점 및/또는 주기를 변경할지 여부를 선택할 수 있는 인터페이스를 제공할 수 있다. 예를 들어, 애플리케이션의 동기화 시점 및/또는 주기를 변경하도록 결정하면, 디스플레이를 통해 "애플리케이션 A에 대한 동기화 주기를 a 분에서 b분으로 변경할 경우 시스템 전력을 절약할 수 있습니다. 변경하시겠습니까? (y/n)"와 같은 메시지를 표시하고 사용자로부터 입력된 입력에 따라 애플리케이션의 동기화 시점 및/또는 주기를 변경하거나, 변경하지 않을 수 있다.
또 다른 실시 예에 따르면, 제어부(220)는 각 애플리케이션의 동기화 주기에 따라 애플리케이션들을 그룹화하여 관리될 수 있다. 예를 들어 애플리케이션의 동기화 주기가 7의 배수인 7, 14, 21, 28, ..., 인 경우 이들은 그룹 7에 포함된다. 애플리케이션의 동기화 주기가 5의 배수인 5, 10, 15, 20, ...., 인 경우 이들은 그룹 5에 포함된다. 그룹은 그 그룹에서 가장 작은 동기화 주기로 대표된다. 가장 작은 동기화 주기는 소수가 된다. 예를 들어 그룹 2, 3, 5, 7, 11, 13, 17, ..., 이 존재할 수 있다. 동기화 주기가 6인 경우 논리적으로는 그룹 2, 3에 모두 속할 수 있다. 다만 본 실시 예에 따르면, 미리 설정된 방식에 따라 어떤 주기는 하나의 그룹에만 속한다. 예를 들어 6분 주기는 그룹 3에 속하고 35분 주기는 그룹 7에 속한다. 미리 설정된 방식은 예를 들어 각 주기에 대해 어느 그룹에 속할지 미리 저장해 두는 방식이 될 수 있다. 미리 설정된 방식은, 다른 예에 따르면, 각 그룹 간의 우선순위가 미리 설정돼 있고, 그에 따라 특정 주기의 애플리케이션이 어느 그룹에 속할지가 결정되는 방식이 될 수 있다. 예를 들어 그룹 7이 그룹 5보다 우선순위가 높다면 35분 주기의 애플리케이션은 그룹 7에 속한다. 같은 그룹에 속하는 애플리케이션끼리는 동기화 시점이 서로 일치하도록 도 2 내지 도 10의 방식에 따라 동기화 시점을 조절할 수 있다. 다른 그룹에 속하는 애플리케이션의 경우 도 11c의 실시 예와 같이 첫 번째 한번만 동기화 시점이 일치하도록 조절될 수도 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되지 않으며, 후술되는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (20)

  1. 단말의 애플리케이션 동기화 방법에 있어서,
    동기화할 애플리케이션이 추가되면, 이전에 등록돼 있는 동기화 대상 애플리케이션의 동기화 시점 정보 혹은 복수의 이전에 등록돼 있는 동기화 대상 애플리케이션들의 공통 동기화 시점 정보를 획득하는 단계; 및
    상기 동기화 시점 정보 혹은 공통 동기화 시점 정보를 고려하여 상기 추가된 동기화할 애플리케이션의 동기화 시점을 변경하는 단계를 포함하는 애플리케이션 동기화 방법.
  2. 제1항에 있어서,
    동기화 시점 정보 획득 시, 이전에 등록돼 있는 애플리케이션의 동기화 주기 정보 혹은 이전에 등록돼 있는 애플리케이션들의 공통 동기화 주기 정보를 같이 획득하고, 상기 동기화 주기 정보 혹은 공통 동기화 주기 정보를 추가적으로 고려하여 추가된 애플리케이션의 동기화 시점 및 주기 중 최소 하나를 변경하는 것을 특징으로 하는 애플리케이션 동기화 방법
  3. 제2항에 있어서,
    상기 이전에 등록돼 있는 애플리케이션의 동기화 주기 정보 또는 이전에 등록돼 있는 애플리케이션들의 공통 동기화 주기 정보에 따른 제1 주기 및 상기 추가된 동기화할 애플리케이션의 동기화 주기에 해당하는 제2 주기의 최대공약수를 산출하고 상기 최대공약수를 기반으로 새로운 공통 동기화 주기를 설정하는 단계를 더 포함하는 애플리케이션 동기화 방법.
  4. 제3항에 있어서,
    상기 최대공약수가 1인 경우, 상기 공통 동기화 주기를 변경하지 않는 단계를 더 포함하는 애플리케이션 동기화 방법.
  5. 제1항에 있어서,
    상기 추가된 애플리케이션의 최초 변경된 동기화 시점은,
    상기 추가된 애플리케이션의 최초 추가 시점과 상기 추가 시점 이후 발생하는 변경 전의 최초 동기화 시점 사이에 위치하거나,
    상기 추가 시점 이후 발생하는 변경 전의 최초 동기화 시점과 두 번째 동기화 시점 사이에 위치하거나,
    상기 추가 시점 이후 최초의 이전에 등록된 애플리케이션의 동기화 시점이거나,
    상기 추가 시점 이후 최초의 이전에 등록된 애플리케이션들의 공통 동기화 시점인 것을 특징으로 하는 애플리케이션 동기화 방법.
  6. 제1항에 있어서,
    각 애플리케이션에 대하여 요청된 동기화 시점을 기록하는 단계; 및
    동일한 애플리케이션에 대하여 동일한 동기화 시점으로 두 번 이상 동기화 요청이 발생하는 경우, 해당 애플리케이션에 대하여 동기화 시점의 변경을 제한하는 것을 특징으로 하는 애플리케이션 동기화 방법.
  7. 제2항에 있어서,
    상기 변경 단계는,
    상기 최대공약수가 1이면, 상기 제1 주기와 상기 제2 주기 중 최소값을 기준으로 동기화 기본 단위를 설정하는 단계; 및
    상기 제1 주기가 상기 제2 주기보다 작으면, 상기 제2 주기를 상기 동기화 기본 단위의 배수 중 상기 제2 주기와 가장 가까운 배수 값으로 변경하는 단계를 포함하는 애플리케이션 동기화 방법.
  8. 제1항에 있어서,
    상기 추가된 동기화할 애플리케이션의 동기화 시점을 변경하는 단계는,
    상기 추가된 동기화할 애플리케이션이 동기화 시점 변경이 허용되는 애플리케이션인지 판단하는 단계; 및
    상기 추가된 동기화할 애플리케이션이 동기화 시점 변경이 허용되는 애플리케이션이면, 상기 동기화 시점 정보 혹은 공통 동기화 시점 정보를 고려하여 상기 추가된 동기화할 애플리케이션의 동기화 시점을 변경하는 단계를 포함하는 애플리케이션 동기화 방법.
  9. 제8항에 있어서,
    상기 추가된 동기화할 애플리케이션이 동기화 시점 변경이 허용되는 애플리케이션인지 판단하는 단계는,
    상기 단말에 저장된 화이트리스트 또는 블랙리스트를 참조하여 상기 추가된 동기화할 애플리케이션이 동기화 시점 변경이 허용되는 애플리케이션인지 판단하는 단계를 포함하고,
    상기 화이트리스트는 동기화 시점 변경이 허용되는 애플리케이션의 목록을 포함하고, 상기 블랙리스트는 동기화 시점 변경이 허용되지 않는 애플리케이션의 목록을 포함하는 것을 특징으로 하는 애플리케이션 동기화 방법.
  10. 제8항에 있어서,
    상기 추가된 동기화할 애플리케이션이 동기화 시점 변경이 허용되는 애플리케이션인지 판단하는 단계는,
    상기 단말의 계정 관리자(Account Manager) 또는 동기화 관리자(Synchronization Manager)에 등록된 애플리케이션은 동기화 시점 변경이 허용되는 애플리케이션으로 판단하는 단계를 포함하는 애플리케이션 동기화 방법.
  11. 애플리케이션 동기화를 수행하는 단말에 있어서,
    동기화할 애플리케이션이 추가되면, 이전에 등록돼 있는 동기화 대상 애플리케이션의 동기화 시점 정보 혹은 이전에 등록돼 있는 동기화 대상 애플리케이션들의 공통 동기화 시점 정보를 획득하고, 상기 동기화 시점 정보 혹은 공통 동기화 시점 정보를 고려하여 상기 추가된 동기화할 애플리케이션의 동기화 시점을 변경하는 제어부를 포함하는 단말.
  12. 제11항에 있어서,
    상기 제어부는 동기화 시점 정보 획득 시, 이전에 등록돼 있는 애플리케이션의 동기화 주기 정보 혹은 이전에 등록돼 있는 애플리케이션들의 공통 동기화 주기 정보를 같이 획득하고, 상기 동기화 주기 정보 혹은 공통 동기화 주기 정보를 추가적으로 고려하여 추가된 애플리케이션의 동기화 시점 및 주기 중 최소 하나를 변경하는 것을 특징으로 하는 단말
  13. 제12항에 있어서,
    상기 제어부는 상기 이전에 등록돼 있는 애플리케이션의 동기화 주기 정보 또는 이전에 등록돼 있는 애플리케이션들의 공통 동기화 주기 정보에 따른 제1 주기 및 상기 추가된 동기화할 애플리케이션의 동기화 주기에 해당하는 제2 주기의 최대공약수를 산출하고 상기 최대공약수를 새로운 공통 동기화 주기로 설정하는 것을 특징으로 하는 단말.
  14. 제12항에 있어서,
    상기 제어부는 상기 최대공약수가 1인 경우, 상기 공통 동기화 주기를 변경하지 않는 것을 특징으로 하는 단말.
  15. 제11항에 있어서,
    상기 제어부에서 변경한 추가된 애플리케이션의 최초 변경된 동기화 시점은,
    상기 추가된 애플리케이션의 최초 추가 시점과 상기 추가 시점 이후 발생하는 변경 전의 최초 동기화 시점 사이에 위치하거나,
    상기 추가 시점 이후 발생하는 변경 전의 최초 동기화 시점과 두번 째 동기화시점 사이에 위치하거나,
    상기 추가 시점 이후 최초의 이전에 등록된 애플리케이션의 동기화 시점이거나,
    상기 추가 시점 이후 최초의 이전에 등록된 애플리케이션들의 공통 동기화 시점인 것을 특징으로 하는 단말
  16. 제11항에 있어서,
    상기 제어부는, 각 애플리케이션에 대하여 요청된 동기화 시점을 기록하고, 동일한 애플리케이션에 대하여 동일한 동기화 시점으로 두 번 이상 동기화 요청이 발생하는 경우, 해당 애플리케이션에 대하여 동기화 시점을 변경을 제한하는 것을 특징으로 하는 단말.
  17. 제12항에 있어서,
    상기 제어부는, 상기 최대공약수가 1이면, 상기 제1 주기와 상기 제2 주기 중 최소값을 기준으로 동기화 기본 단위를 설정하고, 상기 제1 주기가 상기 제2 주기보다 작으면, 상기 제2 주기를 상기 동기화 기본 단위의 배수 중 상기 제2 주기와 가장 가까운 배수 값으로 변경하는 것을 특징으로 하는 단말.
  18. 제11항에 있어서,
    상기 제어부는 상기 추가된 동기화할 애플리케이션이 동기화 시점 변경이 허용되는 애플리케이션인지 판단하고, 상기 추가된 동기화할 애플리케이션이 동기화 시점 변경이 허용되는 애플리케이션이면, 상기 동기화 시점 정보 혹은 공통 동기화 시점 정보를 고려하여 상기 추가된 동기화할 애플리케이션의 동기화 시점을 변경하는 것을 특징으로 하는 단말.
  19. 제18항에 있어서,
    상기 제어부는 상기 단말에 저장된 화이트리스트 또는 블랙리스트를 참조하여 상기 추가된 동기화할 애플리케이션이 동기화 시점 변경이 허용되는 애플리케이션인지 판단하고,
    상기 화이트리스트는 동기화 시점 변경이 허용되는 애플리케이션의 목록을 포함하고, 상기 블랙리스트는 동기화 시점 변경이 허용되지 않는 애플리케이션의 목록을 포함하는 것을 특징으로 하는 단말.
  20. 제18항에 있어서,
    상기 제어부는, 상기 단말의 계정 관리자(Account Manager) 또는 동기화 관리자(Synchronization Manager)에 등록된 애플리케이션은 동기화 시점 변경이 허용되는 애플리케이션으로 판단하는 것을 특징으로 하는 단말.
KR1020120093565A 2011-08-30 2012-08-27 단말 및 그 단말에서 애플리케이션 관리 방법 KR101828295B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
AU2012302451A AU2012302451B2 (en) 2011-08-30 2012-08-30 Terminal and application management method thereof
JP2014528279A JP6048763B2 (ja) 2011-08-30 2012-08-30 端末及びその端末におけるアプリケーション管理方法
RU2014107598/08A RU2585986C2 (ru) 2011-08-30 2012-08-30 Терминал и способ управления его приложениями
PCT/KR2012/006917 WO2013032237A1 (en) 2011-08-30 2012-08-30 Terminal and application management method thereof
EP12828481.7A EP2751666B1 (en) 2011-08-30 2012-08-30 Terminal and application management method thereof
CN201280040771.2A CN103765377B (zh) 2011-08-30 2012-08-30 终端及其应用管理方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020110087253 2011-08-30
KR20110087253 2011-08-30

Publications (2)

Publication Number Publication Date
KR20130024801A true KR20130024801A (ko) 2013-03-08
KR101828295B1 KR101828295B1 (ko) 2018-02-13

Family

ID=48176750

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120093565A KR101828295B1 (ko) 2011-08-30 2012-08-27 단말 및 그 단말에서 애플리케이션 관리 방법

Country Status (7)

Country Link
EP (1) EP2751666B1 (ko)
JP (1) JP6048763B2 (ko)
KR (1) KR101828295B1 (ko)
CN (1) CN103765377B (ko)
AU (1) AU2012302451B2 (ko)
RU (1) RU2585986C2 (ko)
WO (1) WO2013032237A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140113810A (ko) * 2013-03-14 2014-09-25 삼성전자주식회사 단말 및 그 단말에서 애플리케이션 동기화 방법
KR20160016360A (ko) * 2014-08-05 2016-02-15 삼성전자주식회사 전자 기기의 어플리케이션 동기화 방법 및 장치

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102280465B1 (ko) 2013-06-14 2021-07-22 삼성전자 주식회사 단말 및 그 단말에서 애플리케이션 동기화 방법
CN104298515A (zh) * 2013-07-19 2015-01-21 贝壳网际(北京)安全技术有限公司 移动终端中应用程序的唤醒控制方法、装置和移动终端
JP6489751B2 (ja) * 2014-03-27 2019-03-27 キヤノン株式会社 データ処理装置とその制御方法、及びプログラム
US10028216B2 (en) 2014-07-24 2018-07-17 Huawei Technologies Co., Ltd. Data transceiving method, modem, and terminal device
CN104239132B (zh) * 2014-09-16 2016-10-05 努比亚技术有限公司 一种唤醒对齐的方法、装置及终端
CN107402534B (zh) * 2017-07-21 2021-02-19 上海新时达机器人有限公司 调节方法、EtherCAT主站及计算机可读存储介质
CN107332928B (zh) * 2017-07-31 2019-09-24 Oppo广东移动通信有限公司 应用账号同步管理方法、装置、存储介质及电子设备
CN107241447B (zh) * 2017-07-31 2019-09-13 Oppo广东移动通信有限公司 数据同步管控方法、装置、存储介质及电子设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7225244B2 (en) * 2000-05-20 2007-05-29 Ciena Corporation Common command interface
US6918115B2 (en) * 2001-02-16 2005-07-12 Microsoft Corporation Method and apparatus for synchronization of periodic processes
US20020129107A1 (en) * 2001-03-12 2002-09-12 Loughran Stephen A. Method and apparatus for automatic content handling
US7263597B2 (en) * 2001-04-19 2007-08-28 Ciena Corporation Network device including dedicated resources control plane
US6965763B2 (en) 2002-02-11 2005-11-15 Motorola, Inc. Event coordination in an electronic device to reduce current drain
US7586864B2 (en) * 2003-09-30 2009-09-08 Sharp Kabushiki Kaisha Communication system, base station, terminal, communication device, communication management method, control program, and computer-readable recording medium containing the same
US20060106806A1 (en) * 2004-11-12 2006-05-18 Smith Micro Software, Inc. Software update for a plurality of mobile devices
US7224960B2 (en) * 2005-07-12 2007-05-29 Kyocera Wireless Corp. System and method for updating wireless applications
US8458695B2 (en) * 2006-10-17 2013-06-04 Manageiq, Inc. Automatic optimization for virtual systems
TW201008234A (en) 2008-08-12 2010-02-16 Acer Inc Energy-saving method for handheld Internet accessing device, the handheld Internet accessing device, and the real-time message system
CN102132254B (zh) * 2008-08-28 2013-12-11 Nec欧洲有限公司 用于调度周期性过程的方法和***
US20110161963A1 (en) * 2009-12-31 2011-06-30 Nokia Corporation Methods, apparatuses, and computer program products for generating a cyclostationary extension for scheduling of periodic software tasks
US8624758B2 (en) * 2010-03-23 2014-01-07 Mavizon, Llc Communication system including telemetric device for a vehicle connected to a cloud service
KR101557843B1 (ko) * 2011-03-18 2015-10-06 퀄컴 인코포레이티드 네트워크 액세스 요청들의 관리

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140113810A (ko) * 2013-03-14 2014-09-25 삼성전자주식회사 단말 및 그 단말에서 애플리케이션 동기화 방법
US10003617B2 (en) 2013-03-14 2018-06-19 Samsung Electronics Co., Ltd. Terminal and application synchronization method thereof
KR20160016360A (ko) * 2014-08-05 2016-02-15 삼성전자주식회사 전자 기기의 어플리케이션 동기화 방법 및 장치

Also Published As

Publication number Publication date
RU2585986C2 (ru) 2016-06-10
CN103765377A (zh) 2014-04-30
EP2751666B1 (en) 2020-03-11
KR101828295B1 (ko) 2018-02-13
CN103765377B (zh) 2017-10-13
EP2751666A1 (en) 2014-07-09
WO2013032237A1 (en) 2013-03-07
EP2751666A4 (en) 2015-04-29
JP6048763B2 (ja) 2016-12-21
RU2014107598A (ru) 2015-09-10
AU2012302451B2 (en) 2016-11-17
AU2012302451A1 (en) 2013-12-19
JP2014529818A (ja) 2014-11-13

Similar Documents

Publication Publication Date Title
KR101828295B1 (ko) 단말 및 그 단말에서 애플리케이션 관리 방법
AU2018220050B2 (en) Enforcing policies based on information received from external systems
US9420623B2 (en) Packet transmission method and apparatus of mobile terminal
US20130055273A1 (en) Terminal and application management method thereof
US10075409B2 (en) Terminal and application synchronization method therefor
KR101723203B1 (ko) 통신 네트워크 내의 모바일 디바이스로의 애플리케이션 데이터의 전송 제어를 위한 장치 및 방법
CN109918268B (zh) ***兼容方法、装置、设备和计算机可读存储介质
KR102020358B1 (ko) 단말 및 그 단말에서 애플리케이션 동기화 방법
US20110010430A1 (en) Systems And Methods For Scheduling And Delivering Messages Based On Recipient's Time Zone
US20190215373A1 (en) A method for predicting the engagement level of a user of a user device, a related engagement prediction device and user device
CN113225727B (zh) 处理方法、装置及电子设备
CN110795314B (zh) 一种检测慢节点的方法、装置及计算机可读存储介质
CN112486658A (zh) 一种任务调度方法、装置和用于任务调度的装置
US11272356B2 (en) Nomination of a primary cell phone from a pool of cell phones
CN115474284A (zh) 调度方法、基站、终端及存储介质
JP2015201698A (ja) 通信装置、通信方法、及び、プログラム
US20150007255A1 (en) Terminal and method for updating applications thereof
CN113965915B (zh) 数据处理方法和电子设备
CN113114731A (zh) 任务处理方法、装置、服务器及存储介质
WO2022120770A1 (zh) 监听确定方法和装置、监听指示方法和装置
CN118069240A (zh) 应用程序保活方法、装置、设备、存储介质及程序产品
CN116264865A (zh) 一种传输和接收节能指示信息的方法、装置、设备及存储介质
CN116546078A (zh) 一种监控设备唤醒方法及装置

Legal Events

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