KR101922576B1 - 태스크 관리 방법 및 장치 - Google Patents

태스크 관리 방법 및 장치 Download PDF

Info

Publication number
KR101922576B1
KR101922576B1 KR1020167016247A KR20167016247A KR101922576B1 KR 101922576 B1 KR101922576 B1 KR 101922576B1 KR 1020167016247 A KR1020167016247 A KR 1020167016247A KR 20167016247 A KR20167016247 A KR 20167016247A KR 101922576 B1 KR101922576 B1 KR 101922576B1
Authority
KR
South Korea
Prior art keywords
scenario
task
background task
background
foreground
Prior art date
Application number
KR1020167016247A
Other languages
English (en)
Other versions
KR20160085894A (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 후아웨이 디바이스 (둥관) 컴퍼니 리미티드
Publication of KR20160085894A publication Critical patent/KR20160085894A/ko
Application granted granted Critical
Publication of KR101922576B1 publication Critical patent/KR101922576B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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/461Saving or restoring of program or task context
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • 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
    • Y02D10/24
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Telephone Function (AREA)
  • Stored Programmes (AREA)
  • Mobile Radio Communication Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명의 실시 예들은 태스크 관리 방법 및 장치를 개시한다. 방법은, 포그라운드 태스크(foreground task)에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계; 포그라운드 태스크에 대응하는 제1 시나리오가 제1 리스트에 있는 경우, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크(background task)를 검색하는 단계; 및 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리(limitation processing)를 수행하는 단계를 포함할 수 있으며, 제한 처리는 시스템 자원 사용량(usage)을 감소시키기 위한 처리를 나타낸다. 본 발명의 실시 예들은 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.

Description

태스크 관리 방법 및 장치{TASK MANAGEMENT METHOD AND DEVICE}
본 특허출원은, 2013년 12월 10일에 출원되고 발명의 명칭이 "TASK MANAGEMENT METHOD AND DEVICE"인 중국 출원 제201310665434.9호에 대한 우선권을 주장하는 바이며, 상기 문헌의 내용은 그 전체로서 원용에 의해 본 명세서에 포함된다.
본 발명은 통신 분야에 관한 것으로, 더욱 상세하게 말하자면, 태스크 관리 방법 및 장치에 관한 것이다.
통신 기술의 발달과 함께, 최근에 많은 장치들이 멀티 태스크(multi-task) 즉, 동시에 다수의 애플리케이션 프로그램들을 실행(run)시킬 수 있는 장치를 지원하고 있으며, 하나의 애플리케이션 프로그램은 태스크로 명명될 수 있는 하나 이상의 스레드(thread) 시스템을 지원할 수 있다. 다수의 태스크들은 보통 포그라운드 태스크(foreground task)와 백그라운드 태스크(background task)를 포함한다. 포그라운드 태스크는 사용자 인터랙션(interaction)을 요구하는 즉, 포그라운드 태스크의 실행 동안에 사용자에 의한 동작 입력이 수신되어야 하는 태스크를 나타낸다. 백그라운드 태스크는 사용자 인터랙션(interaction)을 요구하지 않는 즉, 백그라운드 태스크의 실행 동안에 사용자에 의한 동작 입력이 수신될 필요가 없는 태스크를 나타낸다. 백그라운드 태스크는 사용자 인터랙션을 요구하지 않기 때문에, 백그라운드 태스크는 일반적으로 사용자에 민감한(user-sensitive) 태스크가 아니며, 또는 백그라운드 태스크는 사용자 관심사(of user concern)가 아니다. 다시 말하자면, 일부 백그라운드 태스크는 실행될 필요가 없다. 그러나 백그라운드 태스크는 시스템의 백그라운드에서 계속해서 실행되며, 장치의 전력을 끊임없이 소비한다. 최근에 장치에서 큰 전력 소비 및 전력 손실(loss)가 문제가 되고 있음을 알 수 있다.
본 발명의 실시 예들은 장치의 전력 소비 및 전력 손실을 감소시키기 위하여, 태스크 관리 방법 및 장치를 제공한다.
제1 측면에 따르면, 본 발명의 실시 예는 태스크 관리 방법을 제공하며, 상기 방법은
포그라운드 태스크(foreground task)에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계;
상기 포그라운드 태스크에 대응하는 상기 제1 시나리오가 제1 리스트에 있는 경우, 상기 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크(background task)를 검색하는 단계; 및
상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리(limitation processing)를 수행하는 단계
를 포함하며, 상기 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함하고, 상기 제한 처리는 시스템 자원 사용량(usage)을 감소시키기 위한 처리를 나타낸다.
제1 측면의 제1 가능한 구현 방식에서, 상기 방법은,
상기 포그라운드 태스크에 대응하는 상기 제1 시나리오를 제외하고 제2 시나리오를 검색하는 단계; 및
상기 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 상기 제한 처리를 수행하는 단계
를 더 포함하고, 상기 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하고, 상기 제1 리스트는 상기 제2 시나리오를 포함한다.
제1 측면 또는 제1 측면의 제1 가능한 구현 방식을 참조하여, 제1 측면의 제2 가능한 구현 방식에서, 상기 포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계 이후에, 상기 방법은,
상기 제1 시나리오가 상기 제1 리스트에 있는지를 결정하는 단계
를 더 포함한다.
제1 측면을 참조하여, 제1 측면의 제3 가능한 구현 방식에서, 상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 단계 이전에, 상기 방법은,
상기 적어도 하나의 백그라운드 태스크의 사용자 식별자(identifier)를 질의(query)하는 단계;
상기 적어도 하나의 백그라운드 태스크의 사용자 식별자가 시스템 사용자에 대응하면, 상기 적어도 하나의 백그라운드 태스크를 무시하는(ignoring) 단계; 및
상기 적어도 하나의 백그라운드 태스크의 사용자 식별자가 일반(common) 사용자에 대응하면, 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 단계
를 더 포함한다.
제1 측면을 참조하여, 제1 측면의 제4 가능한 구현 방식에서, 상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 단계 이전에, 상기 방법은,
상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대하여 타이머(timer)를 시작하는 단계; 및
상기 타이머가 미리 설정된 문턱값을 초과하는 때, 상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소(component)를 정지(stop)시키는 단계
를 더 포함한다.
제1 측면을 참조하여, 제1 측면의 제5 가능한 구현 방식에서, 상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 단계 이전에, 상기 방법은,
상기 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하는 단계; 및
상기 적어도 하나의 백그라운드 태스크가 상기 시스템 구성 요소를 사용하면, 상기 시스템 구성 요소를 정지시키는 단계
를 더 포함한다.
제1 측면, 또는 제1 측면의 제1 가능한 구현 방식, 또는 제1 측면의 제2 가능한 구현 방식, 또는 제1 측면의 제3 가능한 구현 방식, 또는 제1 측면의 제4 가능한 구현 방식, 또는 제1 측면의 제5 가능한 구현 방식을 참조하여, 제1 측면의 제6 가능한 구현 방식에서, 상기 시스템 자원 사용량을 감소시키기 위한 처리는,
상기 적어도 하나의 백그라운드 태스크를 프리즈(freeze)시키는 방식;
상기 적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
중 적어도 하나의 방식을 포함한다.
제1 측면, 또는 제1 측면의 제1 가능한 구현 방식, 또는 제1 측면의 제2 가능한 구현 방식, 또는 제1 측면의 제3 가능한 구현 방식, 또는 제1 측면의 제4 가능한 구현 방식, 또는 제1 측면의 제5 가능한 구현 방식을 참조하여, 제1 측면의 제7 가능한 구현 방식에서, 상기 포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계는,
적어도 하나의 포그라운드 태스크에 따라, 상기 적어도 하나의 포그라운드 태스크의 각각에 대응하는 제1 시나리오를 결정하는 단계
를 포함한다.
제2 측면에 따르면, 본 발명의 실시 예는 태스크 관리 방법을 제공하며, 상기 방법은,
포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계;
상기 포그라운드 태스크에 대응하는 상기 제1 시나리오를 제외하고 제2 시나리오를 결정하는 단계;
상기 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 단계; 및
상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 단계
를 포함하며, 상기 제2 시나리오는 태스크 제한이 허용되는 시나리오이고, 상기 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하며, 상기 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
제2 측면의 제1 가능한 구현 방식에서, 상기 방법은,
상기 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 단계; 및
상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크의 사용자 식별자가 일반 사용자에 대응하면, 상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 상기 제한 처리를 수행하는 단계
를 더 포함한다.
제2 측면을 참조하여, 제2 측면의 제2 가능한 구현 방식에서, 상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 단계 이전에, 상기 방법은,
상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대하여 타이머를 시작하는 단계; 및
상기 타이머가 미리 설정된 문턱값을 초과하는 때, 상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 정지시키는 단계
를 더 포함한다.
제2 측면을 참조하여, 제2 측면의 제3 가능한 구현 방식에서, 상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 단계 이전에, 상기 방법은,
상기 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하는 단계; 및
상기 적어도 하나의 백그라운드 태스크가 상기 시스템 구성 요소를 사용하면, 상기 시스템 구성 요소를 정지시키는 단계
를 더 포함한다.
제2 측면, 또는 제2 측면의 제1 가능한 구현 방식, 또는 제2 측면의 제2 가능한 구현 방식, 또는 제2 측면의 제3 가능한 구현 방식을 참조하여, 제2 측면의 제4 가능한 구현 방식에서, 상기 시스템 자원 사용량을 감소시키기 위한 처리는,
상기 적어도 하나의 백그라운드 태스크를 프리즈시키는 방식;
상기 적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
중 적어도 하나의 방식을 포함한다.
제2 측면, 또는 제2 측면의 제1 가능한 구현 방식, 또는 제2 측면의 제2 가능한 구현 방식, 또는 제2 측면의 제3 가능한 구현 방식을 참조하여, 제2 측면의 제5 가능한 구현 방식에서, 상기 포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계는,
적어도 하나의 포그라운드 태스크에 따라, 상기 적어도 하나의 포그라운드 태스크의 각각에 대응하는 제1 시나리오를 결정하는 단계
를 포함한다.
제3 측면에 따르면, 본 발명의 실시 예는 태스크 관리 장치를 제공하며, 상기 장치는 결정(determining) 유닛; 제1 검색 유닛; 및 제1 처리 유닛을 포함하고,
상기 결정 유닛은, 포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성되고,
상기 제1 검색 유닛은, 상기 포그라운드 태스크에 대응하고 상기 결정 유닛에 의해 결정된 상기 제1 시나리오가 제1 리스트에 있는 경우, 상기 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하도록 구성되며, 상기 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함하고,
상기 제1 처리 유닛은, 상기 제1 시나리오에 대응하고 상기 제1 검색 유닛에 의해 검색된 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하도록 구성되며, 상기 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
제3 측면의 제1 가능한 구현 방식에서, 상기 장치는,
상기 포그라운드 태스크에 대응하고 상기 결정 유닛에 의해 검색된 상기 제1 시나리오를 제외하고 제2 시나리오를 검색하도록 구성되는 제2 검색 유닛; 및
상기 제2 시나리오에 대응하고 상기 제2 검색 유닛에 의해 검색되는 적어도 하나의 백그라운드 태스크에 대해 상기 제한 처리를 수행하도록 구성된 제2 처리 유닛
을 더 포함하고, 상기 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하고, 상기 제1 리스트는 상기 제2 시나리오를 포함한다.
제3 측면 또는 제3 측면의 제1 가능한 구현 방식을 참조하여, 제3 측면의 제2 가능한 구현 방식에서, 상기 장치는,
상기 제1 시나리오가 상기 제1 리스트에 있는지를 결정하도록 구성되는 판단(judging) 유닛
을 더 포함한다.
제3 측면을 참조하여, 제3 측면의 제3 가능한 구현 방식에서, 상기 장치는,
상기 적어도 하나의 백그라운드 태스크의 사용자 식별자를 질의하도록 구성되는 제1 질의 유닛; 및
상기 적어도 하나의 백그라운드 태스크의 것이며 상기 제1 질의 유닛에 의해 질의된 상기 사용자 식별자가 시스템 사용자에 대응하면, 상기 적어도 하나의 백그라운드 태스크를 무시하도록 구성되는 무시(ignoring) 유닛
을 더 포함하고, 상기 제1 처리 유닛이, 상기 적어도 하나의 백그라운드 태스크의 것이며 상기 제1 질의 유닛에 의해 질의된 상기 사용자 식별자가 일반 사용자에 대응하면, 상기 적어도 하나의 백그라운드 태스크에 대해 상기 제한 처리를 수행하도록 구성된다.
제3 측면을 참조하여, 제3 측면의 제4 가능한 구현 방식에서, 상기 장치는,
상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대하여 타이머를 시작하도록 구성되는 타이밍 유닛; 및
상기 타이머가 미리 설정된 문턱값을 초과하는 때, 상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 정지시키도록 구성되는 제1 정지 유닛
를 더 포함한다.
제3 측면을 참조하여, 제3 측면의 제5 가능한 구현 방식에서, 상기 장치는,
상기 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하도록 구성되는 제2 질의 유닛; 및
상기 제2 질의 유닛이 상기 적어도 하나의 백그라운드 태스크가 상기 시스템 구성 요소를 사용하는 것을 알게 되면, 상기 시스템 구성 요소를 정지시키도록 구성된 제2 정지 유닛
을 더 포함한다.
제3 측면, 또는 제3 측면의 제1 가능한 구현 방식, 또는 제3 측면의 제2 가능한 구현 방식, 또는 제3 측면의 제3 가능한 구현 방식, 또는 제3 측면의 제4 가능한 구현 방식, 또한 제3 측면의 제5 가능한 구현 방식을 참조하여, 제2 측면의 제6 가능한 구현 방식에서, 상기 시스템 자원 사용량을 감소시키기 위한 처리는,
상기 적어도 하나의 백그라운드 태스크를 프리즈시키는 방식;
상기 적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
중 적어도 하나의 방식을 포함한다.
제3 측면, 또는 제3 측면의 제1 가능한 구현 방식, 또는 제3 측면의 제2 가능한 구현 방식, 또는 제3 측면의 제3 가능한 구현 방식, 또는 제3 측면의 제4 가능한 구현 방식, 또한 제3 측면의 제5 가능한 구현 방식을 참조하여, 제2 측면의 제7 가능한 구현 방식에서, 상기 결정 유닛은 적어도 하나의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성된다.
제2 측면에 따르면, 본 발명의 실시 예는 태스크 관리 방법을 제공하며, 상기 장치는, 제1 결정 유닛; 제2 결정 유닛; 제1 검색 유닛; 및 제1 처리 유닛을 포함하고,
상기 제1 결정 유닛은, 포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성되고,
상기 제2 결정 유닛은, 상기 포그라운드 태스크에 대응하고 상기 제1 결정 유닛에 의해 결정된 상기 제1 시나리오를 제외하고 제2 시나리오를 결정하도록 구성되며, 상기 제2 시나리오는 태스크 제한이 허용되는 시나리오이고, 상기 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하며,
상기 제1 검색 유닛은, 상기 제2 결정 유닛에 의해 결정된 상기 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하도록 구성되고,
상기 제1 처리 유닛은, 상기 제2 시나리오에 대응하고 상기 제1 검색 유닛에 의해 검색된 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하도록 구성되며, 상기 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
제2 측면의 제1 가능한 구현 방식에서, 상기 장치는,
상기 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하도록 구성되는 제2 검색 유닛; 및
상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크의 사용자 식별자가 일반 사용자에 대응하면, 상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 상기 제한 처리를 수행하도록 구성되는 제2 처리 유닛
을 더 포함한다.
제2 측면을 참조하여, 제2 측면의 제2 가능한 구현 방식에서, 상기 장치는,
상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대하여 타이머를 시작하도록 구성되는 타이밍 유닛; 및
상기 타이머가 미리 설정된 문턱값을 초과하는 때, 상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 정지시키도록 구성되는 제1 정지 유닛
을 더 포함한다.
제2 측면을 참조하여, 제2 측면의 제3 가능한 구현 방식에서, 상기 장치는,
상기 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하도록 구성되는 질의 유닛; 및
상기 질의 유닛이 상기 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는 것을 알게 되면, 상기 시스템 구성 요소를 정지시키도록 구성되는 제2 정지 유닛
을 더 포함한다.
제2 측면, 또는 제2 측면의 제1 가능한 구현 방식, 또는 제2 측면의 제2 가능한 구현 방식, 또는 제2 측면의 제3 가능한 구현 방식을 참조하여, 제2 측면의 제4 가능한 구현 방식에서, 상기 시스템 자원 사용량을 감소시키기 위한 처리는,
상기 적어도 하나의 백그라운드 태스크를 프리즈시키는 방식;
상기 적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
중 적어도 하나의 방식을 포함한다.
제2 측면, 또는 제2 측면의 제1 가능한 구현 방식, 또는 제2 측면의 제2 가능한 구현 방식, 또는 제2 측면의 제3 가능한 구현 방식을 참조하여, 제2 측면의 제5 가능한 구현 방식에서, 상기 결정 유닛은, 적어도 하나의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성된다.
전술한 기술적 해결 방안에서, 포그라운드 태스크에 대응하는 제1 시나리오가 포그라운드 태스크에 따라 결정되며, 포그라운드 태스크에 대응하는 제1 시나리오가 제1 리스트에 있는 경우, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 검색되고, 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함하며; 제한 처리가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 수행되고, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다. 이러한 방식으로, 제한 처리가 태스크 제한이 허용되는 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 구현된다. 백그라운드 태스크가 언제나 실행되는 종래 기술에 비하여, 본 발명의 실시 예는 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.
본 발명의 실시 예 또는 종래 기술에서의 기술적 해결 수단을 더욱 명확히 기술하기 위해, 이하에서 그 실시 예 또는 종래 기술을 설명할 때 필요한 첨부 도면을 간략하게 소개한다. 분명한 것은, 이어질 설명에서 첨부된 도면은 단지 본 발명의 몇 가지 실시 예를 나타내며, 당업자는 첨부된 도면으로부터 창작 능력 없이도 다른 도면을 도출해 낼 수 있다는 것이다.
도 1은 본 발명의 실시 예에 따른 태스크 관리 방법의 개략적인 흐름도이다.
도 2는 본 발명의 실시 예에 따른 다른 태스크 관리 방법의 개략적인 흐름도이다.
도 3은 본 발명의 실시 예에 따른 다른 태스크 관리 방법의 개략적인 흐름도이다.
도 4는 본 발명의 실시 예에 따른 다른 태스크 관리 방법의 개략적인 흐름도이다.
도 5는 본 발명의 실시 예에 따른 다른 태스크 관리 방법의 개략적인 흐름도이다.
도 6은 본 발명의 실시 예에 따른 다른 태스크 관리 방법의 개략적인 흐름도이다.
도 7은 본 발명의 실시 예에 따른 다른 태스크 관리 방법의 개략적인 흐름도이다.
도 8은 본 발명의 실시 예에 따른 태스크 관리 장치의 개략적인 구조도이다.
도 9는 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
도 10은 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
도 11은 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
도 12는 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
도 13은 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
도 14는 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
도 15는 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
도 16은 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
도 17은 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
도 18은 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
도 19는 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다.
이하에 본 발명의 실시 예에서의 첨부도면을 참조하여 본 발명의 실시 예의 기술적 해결방안을 명확하고 완전하게 설명한다. 명백히, 설명하는 실시 예는 본 발명의 실시 예의 전부가 아니라 일부이다. 당업자가 본 발명의 실시 예에 기초하여 창의적인 노력 없이 얻은 모든 다른 실시 예는 본 발명의 보호 범위에 속한다.
본 발명의 실시 예들에서, 제1 시나리오와 제2 시나리오가 2 개의 시나리오들에 한정되지 않는다. 제1 시나리오는 하나 이상의 시나리오를 나타낼 수 있으며, 제2 시나리오 또한, 하나 이상의 시나리오를 나타낼 수 있다. 예를 들어, 제1 시나리오가 포그라운드(foreground) 태스크에 대응하는 시나리오일 수 있으며, 동시에 하나 이상의 포그라운드 태스크가 있을 수 있으며, 즉, 제1 시나리오는 하나 이상일 수 있다. 제2 시나리오는 제1 시나리오를 제외한 임의의 하나 이상의 시나리오일 수 있으며, 예를 들어, 제2 시나리오는 포그라운드 태스크를 제외한 태스크에 대응하는 시나리오일 수 있다. 여기서, 제1 및 제2 시나리오는 단지 2개의 상이한 시나리오들을 구별하기 위하여 명명된 것이다.
게다가(In addition), 본 발명의 실시 예들에서, 시나리오는 본 발명의 실시 예들을 구현하는 장치의 액션(action)의 상태(status)를 나타낼 수 있다. 장치의 액션의 상태는 장치가 시스템 자원(resource)을 사용하는 상태를 나타낼 수 있다. 시스템 자원은 구체적으로 CPU 자원 또는 메모리 자원과 같은 하드웨어 자원일 수 있으며, 또는 시스템 자원은 구체적으로 네트워크 대역폭 자원 또는 운영(operating) 시스템 자원과 같은 가상(virtual) 자원일 수 있으며, 본 발명의 실시 예들은 이에 한정되지 않는다. 시나리오는 전화 걸기(making a call), 단문 메시지 서비스 메시지, 브라우저 사용, 2D/3D 게임 플레이, 메인 사용자 인터페이스 보기(viewing a main user interface), 파일 다운로딩, 전자북 읽기(reading an ebook), 음악 재생(playing music), 비디오 시청(watching a video), 웹사이트를 통한 네비게이팅(navigating), 사진 브라우징(browsing a photo), 사진 촬영, 비디오 제작(making a video), 이메일 전송 등일 수 있다.
게다가, 본 발명의 실시 예들에서, 태스크에 대응하는 시나리오는 구체적으로, 태스크가 실행되는 경우, 태스크가 시작되는(enter) 시나리오일 수 있다. 예를 들어, 음악 태스크가 실행되는 경우, 태스크는 음악 시나리오 및 다운로드 시나리오 즉, 음악 시나리오와 다운로드 시나리오를 포함할 수 있는 음악 태스크에 대응하는 시나리오를 시작한다. 게다가, 시나리오에 대응하는 태스크는 구체적으로 시나리오를 시작하는 태스크일 수 있다. 예를 들어, 음악 태스크가 실행되는 경우, 태스크는 다운로드 시나리오를 시작하며; 브라우저(browser) 태스크가 실행되는 경우, 태스크는 또한 다운로드 시나리오를 시작하며; 소프트웨어 업데이트 태스크가 실행되는 경우, 태스크는 또한 다운로드 시나리오를 시작한다. 이런 방식으로, 다운로드 시나리오에 대응하는 태스크는 음악 태스크, 브라우저 태스크, 그리고 소프트웨어 업데이트 태스크를 포함할 수 있으며, 즉, 하나의 시나리오가 상이한 태스크들에 대응한다.
게다가, 본 발명의 실시 예들에서, 포그라운드 태스크는 사용자 인터랙션을 요구하는 즉, 포그라운드 태스크의 실행 동안에 사용자에 의한 동작(operation) 입력이 수신되어야 하는 태스크를 나타낼 수 있다. 다르게는(Alternatively), 포그라운드 태스크는 스크린상에 디스플레이되는 태스크를 나타낼 수 있다. 백그라운드(background) 태스크는 실행 동안에 사용자 인터랙션을 요구하지 않는 즉, 백그라운드 태스크의 실행 동안에 사용자에 의한 동작 입력이 수신될 필요가 없는 태스크를 나타낼 수 있다. 다르게는, 백그라운드 태스크는 스크린상에 디스플레이되지 않는 태스크를 나타낼 수 있다. 게다가, 태스크는 본 발명의 실시 예들에서 스레드(thread)일 수 있음을 이해할 수 있다.
도 1을 참조하면, 도 1은 본 발명의 실시 예에 따른 태스크 관리 방법의 개략적인 흐름도이다. 도 1에 도시된 바와 같이, 방법은 다음과 같은 단계들을 포함한다.
101. 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정한다.
선택적으로, 단계(101)는 구체적으로, 현재 태스크가 스위칭되는 경우, 현재 태스크에 따라 대응하는 제1 시나리오를 결정하는 단계일 수 있다. 예를 들어, 현재 태스크인 음악 태스크가 실행되는 경우, 태스크가 음악 시나리오 또는 다운로드 시나리오를 시작한다. 이러한 방식으로, 포그라운드 태스크에 대응하는 제1 시나리오가 음악 시나리오 또는 다운로드 시나리오 등일 수 있음을 결정할 수 있다. 게다가, 포그라운드 태스크는 하나 또는 다수의(multiple) 포그라운드 태스크일 수 있다. 다수의 포그라운드 태스크일 경우, 단계(101)는 다수의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계를 포함할 수 있다. 즉, 단계(101)는 적어도 하나의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계를 포함할 수 있다.
102. 포그라운드 태스크에 대응하는 제1 시나리오가 제1 리스트에 있는 경우, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하며, 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함한다.
선택적으로, 태스크 제한이 허용되고 제1 리스트에 포함되는 시나리오는 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 허용되고 사용자에 의한 동작 입력에 따라 설정되고 사용자의 요구 사항(requirements) 또는 습관(habits)을 만족하는 시나리오가 구현될 수 있다. 예를 들어, 사용자는 장치의 전력 소모를 감소시키기를 원하고, 사용자는 제1 리스트에 태스크 제한이 허용되는 다수 시나리오를 설정할 수 있으며, 예를 들어, 브라우저 시나리오, 게임 시나리오, 네비게이션 시나리오 등을 태스크 제한이 허용되는 시나리오로서 설정할 수 있다. 이러한 방식으로, 현재 태스크에 대응하는 제1 시나리오가 브라우저 시나리오, 또는 게임 시나리오 또는 네비게이션 시나리오인 경우, 단계(S102)가 장치의 전력 소모를 감소시키기 위해 수행될 수 있다.
선택적으로, 태스크 제한이 허용되고 제1 리스트에 포함되는 시나리오는 장치의 성능에 따라 자동적으로 설정될 수 있다. 예를 들어, 장치가 보다 좋은 성능을 가지는 경우, 예를 들어, 장치의 CPU가 고속으로 실행(running)되거나, 장치가 보다 큰 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있는 경우, 태스크 제한이 허용되는 단지 몇 안 되는 시나리오들이 제1 리스트에 설정될 수 있다. 예를 들어, 장치의 성능이 좋지 않은 경우, 예를 들어, 장치의 CPU가 저속으로 실행되거나, 장치가 보다 작은 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있지 않은 경우, 태스크 제한이 허용되는 더 많은 시나리오들이 제1 리스트에 설정될 수 있다. 제1 리스트가 태스크 제한이 허용되는 더 많은 시나리오들을 가지고, 그리고 단계(102) 및 단계(103)가 다수회 수행되기 때문에, 장치의 전력 소모를 감소시키고 장치의 안정적 실행을 보장하기 위하여, 제한 처리가 다수의 백그라운드 태스크에 대해 수행될 수 있다.
선택적으로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제1 시나리오에 대응하는 모든 백그라운드 태스크들에서 적어도 하나의 백그라운드 태스크를 나타내거나, 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제1 시나리오에 대응하는 모든 백그라운드 태스크를 나타낼 수 있다. 본 실시 예는 이에 한정되지 않는다.
103. 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하며, 제한 처리는 시스템 자원 사용량(usage)을 감소시키기 위한 처리를 나타낸다.
선택적으로, 제한 처리는 태스크에 의해 현재 사용되는 시스템 자원을 감소시키기 위한 처리일 수 있다. 예를 들어, 단계(101)가 수행되는 경우, 백그라운드 태스크 A에 의해 사용되는 시스템 자원량(a quantity of system resources) 이 A이고, 그리고 백그라운드 태스크 A에 대해 제한 처리가 수행된 후에, 백그라운드 태스크 A에 의해 사용된 시스템 자원량이 B이며, A가 B보다 크다. 게다가, B는 0일 수 있다.
선택적으로, 방법은, 구체적으로, 테블릿 컴퓨터, 모바일폰, 전자책 단말기(e-reader), 리모컨(remote control), 개인 컴퓨터(Personal Computer, PC), 노트북 컴퓨터, 차량 탑재 장치(in-vehicle device), 웹 TV, 웨어러블 장치(wearable device), 또는 다른 네트워크 기능을 가지는 지능형 장치 등과 같은, 멀티 태스크 (multi-task) 시스템을 가지는 임의 장치에 대하여 적용될 수 있다.
전술한 기술적 해결 방안에서, 포그라운드 태스크에 대응하는 제1 시나리오가 포그라운드 태스크에 따라 결정되며, 포그라운드 태스크에 대응하는 제1 시나리오가 제1 리스트에 있는 경우, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 검색되며, 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함하며, 제한 처리가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 수행되며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다. 이러한 방식으로, 제한 처리가 태스크 제한이 허용되는 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 구현된다. 백그라운드 태스크가 언제나 실행되는 종래 기술에 비하여, 본 발명의 본 실시 예는 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.
도 2를 참조하면, 도 2는 본 발명의 실시 예에 따른 다른 태스크 관리 방법의 개략적인 흐름도이다. 도 2에 도시된 바와 같이, 방법은 다음의 단계들을 포함한다.
201. 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정한다.
202. 제1 시나리오가 제1 리스트에 있는지를 결정한다. 만약 있으면, 단계(203)를 수행한다. 만약 없으면, 프로세스를 종료한다. 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함한다.
203. 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색한다.
선택적으로, 단계(203)는 구체적으로, 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, 제한 처리를 거친 후에 다른 태스크 또는 운영 시스템에 영향을 주지 않을 적어도 하나의 백그라운드 태스크를 검색하거나; 또는 제1 시나리오에 대응하는 백그라운드 태스크들에서 적어도 하나의 미리 결정된 백그라운드 태스크를 검색하거나; 또는 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, 사용자 식별자가 일반(common) 사용자에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 단계일 수 있다. 예를 들어, 단계(203)는 제1 시나리오에 대응하는 각각의 백그라운드 태스크의 사용자 식별자를 검색하는 단계; 및 사용자 식별자 (User Identifier, UID)가 일반 사용자에 대응하는 백그라운드 태스크를, 제1 시나리오에 대응하는 백그라운드 태스크로서 검색하는 단계를 포함할 수 있다.
즉, 본 단계는 제1 시나리오에 대응하고 단계(203)에서 검색된 적어도 하나의 백그라운드 태스크가, UID가 일반 사용자에 대응하는 백그라운드인 것을 구현하는 데 사용된다. UID는 각 태스크의 고유의 식별자이며, 태스크를 고유하게 식별하는 데 사용된다. 게다가, UID는 시스템 사용자 및 일반 사용자에 대응할 수 있다. 백그라운드 태스크의 UID가 시스템 사용자인 경우, 이는 백그라운드 태스크가 운영 시스템에 포함되는 백그라운드 태스크임을 지시한다. 백그라운드 태스크의 UID가 일반 사용자인 경우, 이는 백그라운드 태스크가 운영 시스템에 포함되는 백그라운드 태스크가 아님을 지시한다.
선택적으로, 방법은, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에서 UID가 시스템 사용자에 대응하는 백그라운드 태스크를 무시하는 단계를 더 포함할 수 있다. 즉, UID가 시스템 사용자에 대응하는 백그라운드 태스크에 대해 처리가 수행되지 않는다.
선택적으로, 단계(203)는 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, 시스템 자원 사용량이 미리 설정된 문턱값에 도달한 적어도 하나의 백그라운드 태스크를 검색하는 단계일 수 있다. 예를 들어, 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, CPU 자원 사용량이 CPU 자원들의 10%에 도달한 적어도 하나의 백그라운드 태스크를 검색하거나; 또는, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크들에 있으며 슬립 락 유지 기간(sleep lock holding duration)이 10분에 도달한 적어도 하나의 백그라운드 태스크를 검색하거나; 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크들에 있으며 평균 데이터 다운로드 속도가 분당 10M에 도달한 적어도 하나의 백그라운드 태스크를 검색하는 단계일 수 있다.
204. 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
선택적으로, 도 3에 도시된 바와 같이, 방법은 다음의 단계들을 더 포함할 수 있다.
205. 포그라운드 태스크에 대응하는 제1 시나리오를 제외하고 제2 시나리오를 검색하며, 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하며, 제1 리스트는 제2 시나리오를 포함한다.
206. 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행한다.
선택적으로, 제2 시나리오는 하나 이상의 시나리오를 나타낼 수 있다. 게다가, 제2 시나리오는 제1 시나리오를 제외한 모든 시나리오 또는 제1 시나리오를 제외한 하나 이상의 시나리오를 나타낼 수 있으며, 본 실시 예는 이에 한정되지 않는다.
게다가, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크에서 적어도 하나의 백그라운드 태스크를 나타낼 수 있으며, 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크를 나타낼 수 있다. 본 실시 예는 이에 한정되지 않는다. 더욱이, 제2 시나리오는 구체적으로 미리 결정된 시나리오, 예를 들어, 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 허용되고 사용자에 의한 동작 입력에 따라 설정되고 사용자의 요구사항 또는 습관을 만족하는 시나리오가 구현될 수 있다. 더욱이, 단계(205)는 구체적으로, 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며, 제한 처리를 거친 후에 다른 태스크나 운영 시스템에 영향을 주지 않을 적어도 하나의 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에서 적어도 하나의 미리 결정된 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며 사용자 식별자가 일반 사용자인 적어도 하나의 백그라운드 태스크를 검색하는 단계일 수 있다.
선택적으로, 제2 시나리오는 제1 시나리오를 제외한 시나리오이고 제2 리스트에 없을 수 있으며, 제2 리스트는 태스크 제한이 금지되는 시나리오를 포함할 수 있다. 태스크 제한이 금지되는 시나리오는 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 금지되고 사용자에 의한 동작 입력에 따라 설정되며 사용자의 요구 사항 또는 습관을 만족하는 시나리오가 구현될 수 있다. 예를 들어, 사용자는 제2 리스트에, 사용자 주의(attention)를 요구하는 시나리오, 예를 들어, 단문 메시지 서비스 메시지 시나리오, 통화(call) 시나리오, 그리고 다운로드 시나리오를 태스크 제한이 금지되는 시나리오로 설정할 수 있다. 다르게는, 태스크 제한이 금지되는 시나리오가 장치의 성능에 따라 자동적으로 설정될 수 있다. 예를 들어, 장치가 보다 좋은 성능을 가지는 경우, 예를 들어, 장치의 CPU가 고속으로 실행되거나, 장치가 보다 큰 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있는 경우, 태스크 제한이 금지되는 보다 많은 시나리오들이 제2 리스트에 설정될 수 있다. 예를 들어, 장치의 성능이 좋지 않은 경우, 예를 들어, 장치의 CPU가 저속으로 실행되거나, 장치가 보다 작은 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있지 않은 경우, 태스크 제한이 금지되는 단지 몇 안 되는 시나리오들이 제2 리스트에 설정될 수 있다.
선택적으로, 단계(204) 이전에, 방법은,
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크의 UID를 질의(query)하는 단계;
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크의 UID 가 시스템 사용자에 대응하면, 적어도 하나의 백그라운드 태스크를 무시하는(ignoring) 단계; 및
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크의 UID가 일반 사용자에 대응하면, 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 단계를 더 포함할 수 있다. 즉, 단계(204)는 UID가 일반 사용자에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행한다.
본 구현 방식에서, UID가 일반 사용자에 대응하는 백그라운드 태스크는 운영 시스템의 태스크가 아니기 때문에, 백그라운드 태스크에 대해 제한 처리가 수행된 이후에 다른 태스크들은 영향을 받지 않는다. 그러므로 단계(204)에서 UID가 일반 사용자에 대응하는 백그라운드 태스크에 대해서만 제한 처리가 수행되며, 이에 따라 다른 태스크에 영향을 주지 않고 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.
선택적으로, 단계(204) 이전에, 방법은,
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대하여 타이머(timer)를 시작하는 단계; 및
타이머가 미리 설정된 문턱값을 초과하는 때, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소(component)를 정지(stop)시키는 단계
를 더 포함할 수 있다.
선택적으로, 시스템 구성 요소는 타이머에 한정되지 않으며, 슬립 락(sleep lock), 방송 통지(broadcast notification)를 포함한다. 한편, 시스템 구성 요소가 일시 정지(pause)되는 경우의 시스템 구성 요소의 상태 값(status value)이 전술한 단계에서 저장(save)됨으로써, 백그라운드 태스크가 제한 처리가 해제(release)된 후에 시스템의 구성 요소의 저장된 상태 값을 호출(call)한다. 더욱이, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가, 타이머가 미리 설정된 문턱값(예를 들어, 10초, 30초, 또는 그외)에 도달하는 때에만 정지된다. 이는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 빈번하게 정지시키는 것을 방지할 수 있다.
선택적으로, 단계(204) 이전에, 방법은,
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하는 단계; 및
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하면, 시스템 구성 요소를 정지시키는 단계
를 더 포함할 수 있다.
본 구현 방식에서, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가 정지되기 때문에, 장치의 전력 소모 및 전력 손실이 또한 감소될 수 있다.
선택적으로, 시스템 자원 사용량을 감소시키기 위한 처리는,
적어도 하나의 백그라운드 태스크를 프리즈(freeze)시키는 방식;
적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
중 적어도 하나의 방식을 포함할 수 있다.
이 경우, 단계(204)는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 프리즈시키거나; 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 정지시키거나; 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 단계일 수 있다.
선택적으로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 프리즈시키는 것은, 백그라운드 태스크가 시스템 자원을 호출하는 것을 금지시키는 것일 수 있으며, 예를 들어, CPU가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출하는 것을 금지시키는 것일 수 있다. 구체적으로, 운영 시스템의 태스크 스케줄러는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 임의 스케줄링에 참여하는 것을 금지하는 데 사용된다. 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 시스템 자원을 호출하는 것이 금지되기 때문에, 장치의 전력 소모가 감소된다.
선택적으로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한하는 것은, CPU가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출하는 시간을 제한하는 것일 수 있다. 예를 들어, CPU 호출에 대한 시간 값이 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대하여 설정됨으로써, CPU가 시간 값에 의해 지시되는 시간 내에서 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출할 수 있다. 게다가, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한하는 것은 추가로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 시스템 자원의 사용을 제한하는 것일 수 있다. 예를 들어, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 네트워크 대역폭의 사용을 제한하는 것, 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 메모리 공간의 사용을 제한하는 것일 수 있다. 게다가, 추가로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대응하는 상이한 시나리오들에 따라 상이한 제한 조치(measures)를 사용하는 것일 수 있다. 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 시스템 자원의 사용이 전술한 단계에서 제한되기 때문에, 장치의 전력 소모가 감소된다.
선택적으로, 단계(210)는, 온도가 미리 설정된 온도 문턱값에 도달하는 경우, 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계를 더 포함할 수 있다.
온도는 본 실시 예를 구현하는 장치의 온도일 수 있으며, 장치의 온도는 구체적으로 장치의 CPU의 온도 또는 장치의 모뎀의 온도를 나타낼 수 있다.
본 구현 방식에서, 장치의 온도가 미리 설정된 온도 문턱값에 도달하는 경우에만 제한 처리가 백그라운드 태스크에 대해 수행되는 것이 구현될 수 있다.
선택적으로, 방법은, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 해제하는 단계를 더 포함할 수 있다. 구체적으로, 제1 시나리오가 제1 리스트에 없는 경우, 제한 처리를 거친 백그라운드 태스크에 대하여 제한 처리가 해제된다.
선택적으로, 방법은 구체적으로, 테블릿 컴퓨터, 모바일폰, 전자책 단말기, 리모컨, PC, 노트북 컴퓨터, 차량 탑재 장치, 웹 TV, 웨어러블 장치, 또는 다른 네트워크 기능을 가지는 지능형 장치 등과 같은, 멀티 태스크 시스템을 가지는 임의 장치에 대하여 적용될 수 있다.
전술한 기술적 해결방안에서, 제1 실시 예를 토대로 다중 선택적 구현 방식들이 구현되며, 이들 모두는 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.
도 4를 참조하면, 도 4는 본 발명의 실시 예에 따른 다른 태스크 관리 방법의 개략적인 흐름도이다. 도 4에 도시된 바와 같이, 방법은 다음의 단계들을 포함한다.
401. 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정한다.
선택적으로, 단계(401)는 구체적으로, 현재 태스크가 스위칭되는 경우, 현재 태스크에 따라 대응하는 제1 시나리오를 결정하는 단계일 수 있다. 예를 들어, 현재 태스크인 음악 태스크가 실행되는 경우, 태스크가 음악 시나리오 또는 다운로드 시나리오를 시작한다. 이러한 방식으로, 포그라운드 태스크에 대응하는 제1 시나리오가 음악 시나리오 또는 다운로드 시나리오 등일 수 있음을 결정할 수 있다. 게다가, 포그라운드 태스크는 하나 또는 다수의 포그라운드 태스크일 수 있다. 다수의 포그라운드 태스크일 경우, 단계(401)는 다수의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계를 포함할 수 있다. 즉, 단계(401)는 적어도 하나의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계를 포함할 수 있다.
402. 포그라운드 태스크에 대응하는 제1 시나리오를 제외하고 제2 시나리오를 결정하며, 제2 시나리오는 태스크 제한이 허용되는 시나리오이며, 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응한다.
선택적으로, 제2 시나리오는 하나 이상의 시나리오를 나타낼 수 있다. 게다가, 제2 시나리오는 제1 시나리오를 제외한 모든 시나리오 또는 제1 시나리오를 제외한 하나 이상의 시나리오를 나타낼 수 있으며, 본 실시 예는 이에 한정되지 않는다. 게다가, 제2 시나리오는 구체적으로, 미리 결정된 시나리오, 예를 들어, 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 허용되고 사용자에 의한 동작 입력에 따라 설정되고 사용자의 요구 사항 또는 습관을 만족하는 시나리오가 구현될 수 있다.
선택적으로, 제2 시나리오는 제1 시나리오를 제외한 시나리오이고 제2 리스트에 없을 수 있으며, 제2 리스트는 태스크 제한이 금지되는 시나리오를 포함할 수 있다.
403. 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색한다.
선택적으로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크에서 적어도 하나의 백그라운드 태스크를 나타낼 수 있으며, 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크를 나타낼 수 있다. 게다가, 단계(403)는 구체적으로, 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며, 제한 처리를 거친 후에 다른 태스크나 운영 시스템에 영향을 주지 않을 적어도 두 개의 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에서 적어도 하나의 미리 결정된 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며 UID가 일반 사용자인 적어도 하나의 백그라운드 태스크를 검색하는 단계일 수 있다. 예를 들어, 단계(403)는, 제2 시나리오에 대응하는 각 백그라운드 태스크의 UID를 검색하고, UID가 일반 사용자에 대응하는 백그라운드 태스크를 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크로서 검색하는 단계를 포함할 수 있다.
즉, 본 단계는 제2 시나리오에 대응하며, 단계(403)에서 검색된 적어도 하나의 백그라운드 태스크가, UID가 일반 사용자에 대응하는 백그라운드 태스크인 것을 구현하는 데 사용된다.
선택적으로, 방법은, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에서, UID가 일반 사용자에 대응하는 백그라운드 태스크를 무시하는(ignoring) 단계를 더 포함할 수 있다.
선택적으로, 단계(403)는 제2 시나리오에 대응하는 백그라운드 태스크들에서, 시스템 자원 사용량이 미리 설정된 문턱값에 도달한 적어도 하나의 백그라운드 태스크를 검색하는 단계일 수 있다.
404. 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
선택적으로, 도 5에 도시된 바와 같이, 방법은 다음의 단계들을 더 포함할 수 있다.
405. 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색한다.
406. 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크의 UID가 일반 사용자에 대응하면, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행한다.
본 실시 예의 본 구현 방식에 대하여, 제1 및 제2 실시 예에서, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리가 수행되는 구현 방식을 추가로 참조하며, 여기서는 반복적인 설명을 생략한다.
선택적으로, 단계(404) 이전에, 방법은,
제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대하여 타이머를 시작하는 단계; 및
타이머가 미리 설정된 문턱값을 초과하는 때, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 정지시키는 단계를 더 포함할 수 있다.
선택적으로, 시스템 구성 요소는 타이머에 한정되지 않으며, 슬립 락, 방송 통지를 포함한다. 한편, 시스템 구성 요소가 일시 정지되는 경우의 시스템 구성 요소의 상태 값이 전술한 단계에서 저장됨으로써, 백그라운드 태스크가 제한 처리가 해제된 후에 시스템의 구성 요소의 저장된 상태 값을 호출할 수 있다. 더욱이, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가, 타이머가 미리 설정된 문턱값(예를 들어, 10초, 30초, 또는 그외)에 도달하는 때에만 정지된다. 이는 제2시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 빈번하게 정지시키는 것을 방지할 수 있다.
선택적으로, 단계(404) 이전에, 방법은,
적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하는 단계; 및
적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하면, 시스템 구성 요소를 정지시키는 단계를 더 포함할 수 있다.
본 구현 방식에서, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가 정지되기 때문에, 장치의 전력 소모 및 전력 손실이 감소될 수 있다.
선택적으로, 시스템 자원 사용량을 감소시키기 위한 처리는,
적어도 하나의 백그라운드 태스크를 프리즈시키는 방식;
적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식 중 적어도 하나의 방식을 포함할 수 있다.
이 경우, 단계(404)는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 프리즈시키거나; 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 정지시키거나; 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 단계일 수 있다.
선택적으로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 프리즈시키는 것은, 백그라운드 태스크가 시스템 자원을 호출하는 것을 금지시키는 것일 수 있으며, 예를 들어, CPU가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출하는 것을 금지시키는 것일 수 있다. 구체적으로, 운영 시스템의 태스크 스케줄러는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 임의 스케줄링에 참여하는 것을 금지하는 데 사용된다. 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 시스템 자원을 호출하는 것이 금지되기 때문에, 장치의 전력 소모가 감소된다.
선택적으로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한하는 것은, CPU가 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출하는 시간을 제한하는 것일 수 있다. 예를 들어, CPU 호출에 대한 시간 값이 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대하여 설정됨으로써, CPU가 시간 값에 의해 지시되는 시간 내에서 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출할 수 있다. 게다가, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한하는 것은 추가로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 시스템 자원의 사용을 제한하는 것일 수 있다. 예를 들어, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 네트워크 대역폭의 사용을 제한하는 것, 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 메모리 공간의 사용을 제한하는 것일 수 있다. 게다가, 추가로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대응하는 상이한 시나리오들에 따라 상이한 제한 조치를 사용하는 것일 수 있다. 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 시스템 자원의 사용이 전술한 단계에서 제한되기 때문에, 장치의 전력 소모가 감소된다.
선택적으로, 방법은 구체적으로, 테블릿 컴퓨터, 모바일폰, 전자책 단말기, 리모컨, PC, 노트북 컴퓨터, 차량 탑재 장치, 웹 TV, 웨어러블 장치, 또는 다른 네트워크 기능을 가지는 지능형 장치 등과 같은, 멀티 태스크 시스템을 가지는 임의 장치에 대하여 적용될 수 있다.
전술한 기술적 해결방안에서, 포그라운드 태스크에 대응하는 제1 시나리오는 포그라운드 태스크에 따라 결정되고, 포그라운드 태스크에 대응하는 제1 시나리오를 제외한 제2 시나리오가 결정되며, 제2 시나리오는 태스크 제한이 허용되는 시나리오이고, 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하며; 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 검색되고; 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리가 수행되며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다. 그러므로 장치의 전력 소모 및 전력 손실이 감소될 수 있다.
도 6을 참조하면, 도 6은 본 발명의 실시 예에 따른 태스크 관리 방법의 개략적인 흐름도이다. 도 6에 도시된 바와 같이, 방법은 다음의 단계들을 포함한다.
601. 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정한다.
선택적으로, 전술한 시나리오는 구체적으로, 단계(601)를 구현하는 장치의 액션의 상태일 수 있다. 장치의 액션의 상태는 장치가 시스템 자원을 사용하는 상태를 나타낼 수 있다. 시스템 자원은 구체적으로 하드웨어 자원, 예를 들어, CPU 자원 또는 메모리 자원일 수 있으며, 또는 시스템 자원은 구체적으로 가상 자원, 예를 들어, 네트워크 대역폭 자원 또는 운영 시스템 자원일 수 있으며, 본 발명의 실시 예들은 이에 한정되지 않는다. 시나리오는 전화 걸기, 단문 메시지 서비스 메시지, 브라우저 사용, 2D/3D 게임 플레이, 메인 사용자 인터페이스 보기, 파일 다운로딩, 전자북 읽기, 음악 재생, 비디오 시청, 웹사이트를 통한 네비게이션, 사진 브라우징, 사진 촬영, 비디오 제작, 이메일 전송 등일 수 있다. 게다가, 현재 스위칭된 시나리오는 하나 이상의 시나리오일 수 있다. 게다가, 시나리오 스위칭은 구체적으로, 포그라운드 태스크의 스위칭 시간에 의해 생성되는 스위칭일 수 있다. 예를 들어, 전화 걸기의 태스크가 시작되는 경우, 장치는 전화 걸기의 시나리오로 스위칭하며; 음악 태스크가 시작되는 경우, 장치는 음악 재생 시나리오 및 음악 다운로드 시나리오로 스위칭하며; 게임 태스크가 시작되는 경우, 장치는 게임 시나리오 및 인터넷 접속 시나리오로 스위칭한다. 예를 들어, 포그라운드 태스크가 정지되는 경우, 장치는 하나 이상의 시나리오로 스위칭한다. 예를 들어, 게임 태스크가 정지되는 경우, 장치는 게임 시나리오에서 메인 사용자 인터페이스 시나리오로 스위칭한다.
선택적으로, 태스크 제한이 허용되는 시나리오는 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 허용되고 사용자에 의한 동작 입력에 따라 설정되고 사용자의 요구 사항 또는 습관을 만족하는 시나리오가 구현될 수 있다. 예를 들어, 사용자가 장치의 전력 소모를 감소시키기를 원하고, 사용자는 화이트리스트(whitelist)에 태스크 제한이 허용되는 다수 시나리오를 설정할 수 있으며, 예를 들어, 브라우저 시나리오, 게임 시나리오, 네비게이션 시나리오 등을 태스크 제한이 허용되는 시나리오로서 설정할 수 있다. 이러한 방식으로, 장치의 현재 시나리오가 브라우저 시나리오, 또는 게임 시나리오, 또는 네비게이션 시나리오인 경우, 단계(602)가 장치의 전력 소모를 감소시키기 위하여 수행될 수 있다.
선택적으로, 태스크 제한이 허용되는 시나리오가 장치의 성능에 따라 자동적으로 설정될 수 있다. 예를 들어, 장치가 보다 좋은 성능을 가지는 경우, 예를 들어, 장치의 CPU가 고속으로 실행되거나, 장치가 보다 큰 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있는 경우, 태스크 제한이 허용되는 단지 몇 안 되는 시나리오들이 화이트리스트에 설정될 수 있다. 예를 들어, 장치의 성능이 좋지 않은 경우, 예를 들어, 장치의 CPU가 저속으로 실행되거나, 장치가 보다 작은 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있지 않은 경우, 태스크 제한이 허용되는 더 많은 시나리오들이 화이트 리스트에 설정될 수 있다. 화이트 리스트가 태스크 제한이 허용되는 많은 시나리오들을 가지고, 그리고 단계(602) 및 단계(603)가 다수회 수행되기 때문에, 장치의 전력 소모를 감소시키고 장치의 안정적 실행을 보장하기 위하여, 제한 처리가 다수의 백그라운드 태스크에 대해 수행될 수 있다.
602. 현재 스위칭된 시나리오가 화이트리스트에 포함되어 있는 시나리오인 것으로 결정된 경우, 현재 실행되는 백그라운드 태스크들에서 제한 처리를 허용하는 백그라운드 태스크를 검색하며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
선택적으로, 제한 처리를 허용하는 백그라운드 태스크는 구체적으로, 제한 처리를 거친 후에 다른 태스크(예를 들어, 포그라운드 태스크) 또는 운영 시스템에 영향을 주지 않는 백그라운드 태스크일 수 있거나; 또는, 제한 처리를 허용하는 백그라운드 태스크는 구체적으로 미리 결정된 백그라운드 태스크일 수 있거나; 또는 제한 처리를 허용하는 백그라운드 태스크는 구체적으로, 특정 조건을 만족하는 백그라운드 태스크일 수 있다.
선택적으로, 제한 처리는 구체적으로 태스크에 의해 현재 사용되는 시스템 자원을 감소시키는 데 사용되는 동작(operation)일 수 있다. 예를 들어, 백그라운드 태스크 A에 의해 사용되는 시스템 자원량이 A이고, 그리고 백그라운드 태스크 A에 대해 제한 처리가 수행된 후에, 백그라운드 태스크 A에 의해 사용된 시스템 자원량이 B이며, A가 B보다 크다. 게다가, B는 0일 수 있다.
603. 제한 처리를 허용하는 백그라운드 태스크에 대해 제한 처리를 수행한다.
선택적으로, 방법은 구체적으로, 테블릿 컴퓨터, 모바일폰, 전자책 단말기, 리모컨, PC, 노트북 컴퓨터, 차량 탑재 장치, 웹 TV, 웨어러블 장치, 또는 다른 네트워크 기능을 가지는 지능형 장치 등과 같은, 멀티 태스크 시스템을 가지는 임의 장치에 대하여 적용될 수 있다.
본 실시 예의 시나리오는 전술한 실시 예들의 시나리오에 상응(equivalent )할 수 있다. 게다가, 본 실시 예의 화이트리스트는 전술한 실시 예들의 제1 리스트일 수 있다.
전술한 기술적 해결 방안에서, 현재 스위칭된 시나리오가 화이트리스트에 포함되는 시나리오인지를 결정하며, 화이트리스트는 백그라운드 태스크 제한이 허용되는 적어도 하나의 시나리오를 포함하는 미리 설정된 리스트이며; 현재 스위칭된 시나리오가 화이트리스트에 포함되는 시나리오인 것으로 결정되는 경우, 현재 실행되는 백그라운드 태스크들에서 제한 처리를 허용하는 백그라운드 태스크를 검색하며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타내며; 제한 처리가 제한 처리를 허용하는 백그라운드 태스크에 대해 수행된다. 이러한 방식으로, 제한 처리를 허용하는 백그라운드 태스크에 대해 제한 처리가 구현된다. 백그라운드 태스크가 언제가 실행되는 종래 기술에 비하여, 본 발명의 본 실시 예는 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.
도 7을 참조하면, 도 7은 본 발명의 실시 예에 따른 다른 태스크 관리 방법의 개략적인 흐름도이다. 도 7에 도시된 바와 같이, 방법은 다음의 단계들을 포함한다.
701. 장치가 게임 시나리오, 또는 브라우저 시나리오, 또는 네비게이션 시나리오를 시작하는 것을 검출하며, 게임 시나리오, 브라우저 시나리오, 및 네비게이션 시나리오는 단지 예이며, 본 실시 예는 이러한 시나리오들에 한정되지 않으며, 예를 들어, 또한 오디오 재생 또는 비디오 재생 시나리오를 포함할 수 있다.
702. 프리즈되어야 하는 백그라운드 태스크를 질의하고 결정한다.
703. 프리즈되어야 하는 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 결정한다. 만약 사용하면, 단계(704)를 수행한다. 만약 사용하지 않으면, 단계(705)를 수행한다. 단계(703)는 프리즈되어야 하는 백그라운드 태스크가 슬립 락을 사용하는지를 결정하는 단계; 및/또는 프리즈되어야 하는 백그라운드 태스크가 타이머를 사용하는지를 결정하는 단계; 및/또는 프리즈되어야 하는 백그라운드 태스크가 방송 통지를 사용하는지를 결정하는 단계를 포함할 수 있다.
704. 시스템 구성 요소를 일시 정지하며, 단계(704)는 프리즈되어야 하는 백그라운드 태스크가 슬립 락을 사용하면, 슬립 락을 일시 정지하는 단계; 프리즈되어야 하는 백그라운드 태스크가 타이머를 사용하면, 타이머를 일시 정지하는 단계; 프리즈되어야 하는 백그라운드 태스크가 방송 통지를 사용하면, 방송 통지를 일시 정지하는 단계를 포함할 수 있다.
705. 프리즈되어야 하는 백그라운드 태스크를 프리즈시킨다.
태스크 관리 방법은 다음의 단계들을 더 포함할 수 있다.
706. 장치가 메인 사용자 인터페이스 시나리오로 스위칭하는 것을 검출한다.
707. 프리즈된 백그라운드 태스크를 질의한다.
708. 프리즈된 백그라운드 태스크에 대한 시스템 구성 요소를 재개(resume)하며, 단계(708)는 슬립 락을 재개하는 단계; 타이머를 재개하는 단계; 및 방송 통지를 재개하는 단계를 포함할 수 있다.
709. 프리즈된 백그라운드 태스크를 언프리즈(Unfreeze)시킨다.
다음에는 본 발명의 실시 예들의 장치를 설명한다. 본 발명의 장치 실시 예들은 본 발명의 제1 실시 예 내지 제5 실시 예에서 구현된 방법들을 실행시키는 데 사용된다. 설명의 편의를 위하여, 다음에는 본 발명의 실시 예들에 관련된 부분(part)에 대해서만 설명한다. 특정 기술에 대해서는 상세한 설명을 생략하며, 본 발명의 제1 실시 예, 제2 실시 예, 제3 실시 예, 제4 실시 예, 그리고 제5 실시 예를 참조한다.
도 8을 참조하면, 도 8은 본 발명의 실시 예에 따른 태스크 관리 장치의 개략적인 구조도이다. 도 8에 도시된 바와 같이, 태스크 관리 장치는 결정 유닛(81), 제1 검색 유닛(82), 및 제1 처리 유닛(83)을 포함한다.
결정 유닛(81)은 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성된다.
선택적으로, 결정 유닛(83)은 구체적으로, 현재 태스크가 스위칭되는 경우, 현재 태스크에 따라 대응하는 제1 시나리오를 결정한다. 예를 들어, 현재 태스크인 음악 태스크가 실행되는 경우, 태스크가 음악 시나리오 또는 다운로드 시나리오를 시작한다. 이러한 방식으로, 포그라운드 태스크에 대응하는 제1 시나리오가 음악 시나리오 또는 다운로드 시나리오 등일 수 있음을 결정할 수 있다. 게다가, 포그라운드 태스크는 하나 또는 다수의 포그라운드 태스크일 수 있다. 다수의 포그라운드 태스크일 경우, 결정 유닛(81)은 다수의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성될 수 있다. 즉, 결정 유닛(81)은 적어도 하나의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정할 수 있다.
제1 검색 유닛(82)은 포그라운드 태스크에 대응하고 결정 유닛(81)에 의해 결정된 제1 시나리오가 제1 리스트에 있는 경우, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하도록 구성되며, 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함한다.
선택적으로, 태스크 제한이 허용되고 제1 리스트에 포함되는 시나리오는 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 허용되고 사용자에 의한 동작 입력에 따라 설정되고 사용자의 요구 사항 또는 습관을 만족하는 시나리오가 구현될 수 있다. 예를 들어, 사용자가 장치의 전력 소모를 감소시키기를 원하고, 사용자는 제1 리스트에 태스크 제한이 허용되는 다수 시나리오를 설정할 수 있으며, 예를 들어, 브라우저 시나리오, 게임 시나리오, 네비게이션 시나리오 등을 태스크 제한이 허용되는 시나리오로서 설정할 수 있다. 이러한 방식으로, 현재 태스크에 대응하는 제1 시나리오가 브라우저 시나리오, 또는 게임 시나리오 또는 네비게이션 시나리오인 경우, 제1 검색 유닛(82)은 장치의 전력 소모를 감소시키기 위하여 검색 액션을 수행할 수 있다.
선택적으로, 태스크 제한이 허용되고 제1 리스트에 포함되는 시나리오는 장치의 성능에 따라 자동적으로 설정될 수 있다. 예를 들어, 장치가 보다 좋은 성능을 가지는 경우, 예를 들어, 장치의 CPU가 고속으로 실행되거나, 장치가 보다 큰 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있는 경우, 태스크 제한이 허용되는 단지 몇 안 되는 시나리오들이 제1 리스트에 설정될 수 있다. 예를 들어, 장치의 성능이 좋지 않은 경우, 예를 들어, 장치의 CPU가 저속으로 실행되거나, 장치가 보다 작은 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있지 않은 경우, 태스크 제한이 허용되는 많은 시나리오들이 제1 리스트에 설정될 수 있다. 이러한 방식으로, 장치의 전력 소모가 감소될 수 있다.
선택적으로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제1 시나리오에 대응하는 모든 백그라운드 태스크들에서 적어도 하나의 백그라운드 태스크를 나타내거나, 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제1 시나리오에 대응하는 모든 백그라운드 태스크를 나타낼 수 있다. 본 실시 예는 이에 한정되지 않는다.
제1 처리 유닛(83)은 제1 시나리오에 대응하고 제1 검색 유닛(82)에 의해 검색된 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하도록 구성되며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
선택적으로, 제한 처리는 태스크에 의해 현재 사용되는 시스템 자원을 감소시키기 위한 처리일 수 있다.
선택적으로, 장치는 구체적으로, 테블릿 컴퓨터, 모바일폰, 전자책 단말기, 리모컨, PC, 노트북 컴퓨터, 차량 탑재 장치, 웹 TV, 웨어러블 장치, 또는 다른 네트워크 기능을 가지는 지능형 장치 등과 같은, 멀티 태스크 시스템을 가지는 임의 장치일 수 있다.
전술한 기술적 해결 방안에서, 포그라운드 태스크에 대응하는 제1 시나리오가 포그라운드 태스크에 따라 결정되며, 포그라운드 태스크에 대응하는 제1 시나리오가 제1 리스트에 있는 경우, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 검색되고, 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함하며; 제한 처리가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 수행되고, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다. 이러한 방식으로, 제한 처리가 태스크 제한이 허용되는 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 구현된다. 백그라운드 태스크가 언제나 실행되는 종래 기술에 비하여, 본 발명의 본 실시 예는 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.
도 9를 참조하면, 도 9는 본 발명의 실시 예에 따른 태스크 관리 장치의 개략적인 구조도이다. 도 9에 도시된 바와 같이, 태스크 관리 장치는 결정 유닛(91), 판단(judging) 유닛(92), 제1 검색 유닛(93), 및 제1 처리 유닛(94)을 포함한다.
결정 유닛(91)은 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성된다.
판단 유닛(92)은 결정 유닛(91)에 의해 결정된 제1 시나리오가 제1 리스트에 있는지를 결정하도록 구성되며, 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함한다.
제1 검색 유닛(93)은 판단 유닛(92)이 결정 유닛(91)에 의해 결정된 제1 시나리오가 제1 리스트에 있는 것으로 결정한 경우, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하도록 구성된다.
선택적으로, 제1 검색 유닛(93)은 구체적으로, 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, 제한 처리를 거친 후에 다른 태스크 또는 운영 시스템에 영향을 주지 않을 적어도 하나의 백그라운드 태스크를 검색하거나; 또는 제1 시나리오에 대응하는 백그라운드 태스크들에서 적어도 하나의 미리 결정된 백그라운드 태스크를 검색하거나; 또는 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, 사용자 식별자가 일반 사용자에 대응하는 적어도 하나의 백그라운드 태스크를 검색할 수 있다. 예를 들어, 제1 시나리오에 대응하는 각각의 백그라운드 태스크의 사용자 식별자 UID가 검색되고, UID가 일반 사용자에 대응하는 백그라운드 태스크가 검색되며 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크로서 사용된다.
이러한 방식으로, 제1 시나리오에 대응하고 제1 검색 유닛(923)에 의해 검색된 적어도 하나의 백그라운드 태스크가 UID가 일반 사용자에 대응하는 백그라운드 태스크인 것이 구현될 수 있다. UID는 각 태스크의 고유의 식별자이며, 태스크를 고유하게 식별하는 데 사용된다. 게다가, UID는 시스템 사용자 및 일반 사용자에 대응할 수 있다. 백그라운드 태스크의 UID가 시스템 사용자인 경우, 이는 백그라운드 태스크가 운영 시스템에 포함되는 백그라운드 태스크임을 지시한다. 백그라운드 태스크의 UID가 일반 사용자인 경우, 이는 백그라운드 태스크가 운영 시스템에 포함되는 백그라운드 태스크가 아님을 지시한다.
선택적으로, 장치는 추가로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 있으며 UID가 시스템 사용자에 대응하는 백그라운드 태스크를 무시하도록 구성될 수 있다. 즉, UID가 시스템 사용자에 대응하는 백그라운드 태스크에 대해 처리가 수행되지 않는다.
선택적으로, 제1 검색 유닛(93)은 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, 시스템 자원 사용량이 미리 설정된 문턱값에 도달한 적어도 하나의 백그라운드 태스크를 검색할 수 있다. 예를 들어, 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, CPU 자원 사용량이 CPU 자원들의 10%에 도달하는 적어도 하나의 백그라운드 태스크가 검색되거나; 또는, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크들에 있으며 슬립 락 유지 기간이 10분에 도달한 적어도 하나의 백그라운드 태스크가 검색되거나; 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크들에 있으며 평균 데이터 다운로드 속도가 분당 10M에 도달한 적어도 하나의 백그라운드 태스크가 검색된다.
제1 처리 유닛(94)은 제1 시나리오에 대응하며 제1 검색 유닛(93)에 의해 검색된 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
선택적으로, 도 10에 도시된 바와 같이, 장치는,
포그라운드 태스크에 대응하고 결정 유닛(91)에 의해 검색된 제1 시나리오를 제외하고 제2 시나리오를 검색하도록 구성되는 제2 검색 유닛(95); 및
제2 시나리오에 대응하며 제2 검색 유닛(95)에 의해 검색된 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하도록 구성되는 제2 처리 유닛(96)
을 더 포함할 수 있으며, 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하며, 제1 리스트는 제2 시나리오를 포함한다.
선택적으로, 제2 시나리오는 하나 이상의 시나리오를 나타낼 수 있다. 게다가, 제2 시나리오는 제1 시나리오를 제외한 모든 시나리오 또는 제1 시나리오를 제외한 하나 이상의 시나리오를 나타낼 수 있으며, 본 실시 예에 이에 한정되지 않는다.
게다가, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크에서 적어도 하나의 백그라운드 태스크를 나타낼 수 있으며, 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크를 나타낼 수 있다. 본 실시 예는 이에 한정되지 않는다. 더욱이, 제2 시나리오는 구체적으로 미리 결정된 시나리오일 수 있으며, 예를 들어, 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 허용되고 사용자에 의한 동작 입력에 따라 설정되고 사용자의 요구사항 또는 습관을 만족하는 시나리오가 구현될 수 있다. 게다가, 제2 검색 유닛(95)은 구체적으로, 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며, 제한 처리를 거친 후에 다른 태스크나 운영 시스템에 영향을 주지 않을 적어도 하나의 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에서 적어도 하나의 미리 결정된 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며 사용자 식별자가 일반 사용자인 적어도 하나의 백그라운드 태스크를 검색할 수 있다.
선택적으로, 제2 시나리오는 제1 시나리오를 제외한 시나리오이고, 제2 리스트에 없을 수 있으며, 제2 리스트는 태스크 제한이 금지되는 시나리오를 포함할 수 있다. 태스크 제한이 금지되는 시나리오는 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 금지되고 사용자에 의한 동작 입력에 따라 설정되며 사용자의 요구 사항 또는 습관을 만족하는 시나리오가 구현될 수 있다. 예를 들어, 사용자는 제2 리스트에, 사용자 주의를 요구하는 시나리오, 예를 들어, 단문 메시지 서비스 메시지 시나리오, 통화 시나리오, 그리고 다운로드 시나리오를 태스크 제한이 금지되는 시나리오로 설정할 수 있다. 다르게는, 태스크 제한이 금지되는 시나리오가 장치의 성능에 따라 자동적으로 설정될 수 있다. 예를 들어, 장치가 보다 좋은 성능을 가지는 경우, 예를 들어, 장치의 CPU가 고속으로 실행되거나, 장치가 보다 큰 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있는 경우, 태스크 제한이 금지되는 보다 많은 시나리오들이 제2 리스트에 설정될 수 있다. 예를 들어, 장치의 성능이 좋지 않은 경우, 예를 들어, 장치의 CPU가 저속으로 실행되거나, 장치가 보다 작은 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있지 않은 경우, 태스크 제한이 금지되는 단지 몇 안 되는 시나리오들이 제2 리스트에 설정될 수 있다.
선택적으로, 도 11에 도시된 바와 같이, 장치는,
적어도 하나의 백그라운드 태스크의 사용자 식별자를 질의하도록 구성되는 제1 질의 유닛(97);
적어도 하나의 백그라운드 태스크의 것이며 제1 질의 유닛(97)에 의해 질의된 사용자 식별자가 시스템 사용자에 대응하면, 적어도 하나의 백그라운드 태스크를 무시하도록 구성되는 무시 유닛(98); 및
적어도 하나의 백그라운드 태스크의 것이며 제1 질의 유닛(97)에 의해 질의된 사용자 식별자가 일반 사용자에 대응하면, 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하도록 구성될 수 있는 제1 처리 유닛(94)을 더 포함할 수 있다.
본 구현 방식에서, UID가 일반 사용자에 대응하는 백그라운드 태스크가 운영 시스템의 태스크가 아니기 때문에, 이러한 백그라운드 태스크들에 대해 제한 처리가 수행된 이후에 다른 태스크들은 영향을 받지 않는다. 그러므로 제1 처리 유닛(94)은 단지 UID가 일반 사용자에 대응하는 백그라운드 태스크만 제한하며, 이에 따라 다른 태스크에 영향을 주지 않고 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.
선택적으로, 도 12에 도시된 바와 같이, 장치는,
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대하여 타이머를 시작하도록 구성되는 타이밍 유닛(99); 및
타이머가 미리 설정된 문턱값을 초과하는 때, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 정지시키도록 구성되는 제1 정지 유닛(100)을 더 포함할 수 있다.
선택적으로, 시스템 구성 요소는 타이머에 한정되지 않으며, 슬립 락, 방송 통지를 포함한다. 게다가, 시스템 구성 요소가 일시 정지되는 경우의 시스템 구성 요소의 상태 값이 장치에 저장됨으로써, 백그라운드 태스크가 제한 처리가 해제된 후에 시스템의 구성 요소의 저장된 상태 값을 호출할 수 있다. 더욱이, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가, 타이머가 미리 설정된 문턱값(예를 들어, 10초, 30초, 또는 그외)에 도달하는 경우에만 정지된다. 이는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 빈번하게 정지시키는 것을 방지할 수 있다.
선택적으로, 도 13에 도시된 바와 같이, 장치는,
적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하도록 구성되는 제2 질의 유닛(101); 및
제2 질의 유닛(101)이 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는 것을 알게 되면, 시스템 구성 요소를 정지시키도록 구성되는 제2 정지 유닛(102)를 더 포함할 수 있다.
본 구현 방식에서, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가 정지되기 때문에, 장치의 전력 소모 및 전력 손실이 또한 감소될 수 있다.
선택적으로, 시스템 자원 사용량을 감소시키기 위한 처리는,
적어도 하나의 백그라운드 태스크를 프리즈시키는 방식;
적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
중 적어도 하나의 방식을 포함할 수 있다.
이러한 방식으로, 제1 처리 유닛(94)은 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 프리즈시키거나; 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 정지시키거나; 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시킬 수 있다.
선택적으로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 프리즈시키는 것은, 백그라운드 태스크가 시스템 자원을 호출하는 것을 금지시키는 것일 수 있으며, 예를 들어, CPU가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출하는 것을 금지시키는 것일 수 있다. 구체적으로, 운영 시스템의 태스크 스케줄러는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 임의 스케줄링에 참여하는 것을 금지하는 데 사용된다. 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 시스템 자원을 호출하는 것이 금지되기 때문에, 장치의 전력 소모가 감소된다.
선택적으로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한하는 것은, CPU가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출하는 시간을 제한하는 것일 수 있다. 예를 들어, CPU 호출에 대한 시간 값이 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대하여 설정됨으로써, CPU가 시간 값에 의해 지시되는 시간 내에서 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출할 수 있다. 게다가, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한하는 것은 추가로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 시스템 자원의 사용을 제한하는 것일 수 있다. 예를 들어, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 제한하는 것, 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 메모리 공간의 사용을 제한하는 것일 수 있다. 게다가, 추가로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대응하는 상이한 시나리오들에 따라 상이한 제한 조치를 사용하는 것일 수 있다. 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 시스템 자원의 사용이 전술한 단계에서 제한되기 때문에, 장치의 전력 소모가 감소된다.
선택적으로, 온도가 미리 설정된 온도 문턱값에 도달하는 경우, 결정 유닛(91)은 추가로 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성될 수 있다.
온도는 장치의 온도일 수 있으며, 장치의 온도는 구체적으로 장치의 CPU의 온도 또는 장치의 모뎀의 온도를 나타낼 수 있다.
본 구현 방식에서, 장치의 온도가 미리 설정된 온도 문턱값에 도달하는 경우에만 제한 처리가 백그라운드 태스크에 대해 수행되는 것이 구현될 수 있다.
선택적으로, 장치는 추가로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 해제하도록 구성될 수 있다. 구체적으로, 제1 시나리오가 제1 리스트에 없는 경우, 제한 처리를 거친 백그라운드 태스크에 대하여 제한 처리가 해제된다.
선택적으로, 장치는 구체적으로, 테블릿 컴퓨터, 모바일폰, 전자책 단말기, 리모컨, PC, 노트북 컴퓨터, 차량 탑재 장치, 웹 TV, 웨어러블 장치, 또는 다른 네트워크 기능을 가지는 지능형 장치 등과 같은, 멀티 태스크 시스템을 가지는 임의 장치일 수 있다.
전술한 기술적 해결방안에서, 제1 실시 예를 토대로 다중 선택적 구현 방식들이 구현되며, 이들 모두는 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.
도 14를 참조하면, 도 14는 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다. 도 14에 도시된 바와 같이, 태스크 관리 장치는 제1 결정 유닛(141), 제2 결정 유닛(142), 제1 검색 유닛(143), 및 제1 처리 유닛(144)을 포함한다.
제1 결정 유닛(141)은 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성된다.
선택적으로, 제1 결정 유닛(141)은 구체적으로, 현재 태스크가 스위칭되는 경우, 현재 태스크에 따라 대응하는 제1 시나리오를 결정할 수 있다. 예를 들어, 현재 태스크인 음악 태스크가 실행되는 경우, 태스크가 음악 시나리오 또는 다운로드 시나리오를 시작한다. 이러한 방식으로, 포그라운드 태스크에 대응하는 제1 시나리오가 음악 시나리오 또는 다운로드 시나리오 등일 수 있음을 결정할 수 있다. 게다가, 포그라운드 태스크는 하나 또는 다수의 포그라운드 태스크일 수 있다. 다수의 포그라운드 태스크일 경우, 제1 결정 유닛(141)은 다수의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성될 수 있다. 즉, 제1 결정 유닛(141)은 적어도 하나의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성될 수 있다.
제2 결정 유닛(142)은 포그라운드 태스크에 대응하고 제1 결정 유닛(141)에 의해 결정된 제1 시나리오를 제외하고 제2 시나리오를 결정하도록 구성되며, 제2 시나리오는 태스크 제한이 허용되는 시나리오이며, 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응한다.
선택적으로, 제2 시나리오는 하나 이상의 시나리오를 나타낼 수 있다. 게다가, 제2 시나리오는 제1 시나리오를 제외한 모든 시나리오 또는 제1 시나리오를 제외한 하나 이상의 시나리오를 나타낼 수 있으며, 본 실시 예는 이에 한정되지 않는다. 게다가, 제2 시나리오는 구체적으로, 미리 결정된 시나리오, 예를 들어, 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 허용되고 사용자에 의한 동작 입력에 따라 설정되고 사용자의 요구 사항 또는 습관을 만족하는 시나리오가 구현될 수 있다.
선택적으로, 제2 시나리오는 제1 시나리오를 제외한 시나리오이고 제2 리스트에 없을 수 있으며, 제2 리스트는 태스크 제한이 금지되는 시나리오를 포함할 수 있다.
제1 검색 유닛(143)은 제2 시나리오에 대응하고 제2 결정 유닛(142)에 의해 결정된 적어도 하나의 백그라운드 태스크를 검색하도록 구성된다.
선택적으로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크에서 적어도 하나의 백그라운드 태스크를 나타낼 수 있으며, 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크를 나타낼 수 있다. 게다가, 제1 검색 유닛(143)은 구체적으로, 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며, 제한 처리를 거친 후에 다른 태스크나 운영 시스템에 영향을 주지 않을 적어도 두 개의 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에서 적어도 하나의 미리 결정된 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며 UID가 일반 사용자인 적어도 하나의 백그라운드 태스크를 검색할 수 있다. 예를 들어, 제1 검색 유닛(143)은, 제2 시나리오에 대응하는 각 백그라운드 태스크의 UID를 검색하고, UID가 일반 사용자에 대응하는 백그라운드 태스크를 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크로서 검색하도록 구성될 수 있다.
전술한 동작들(operations)은, 제2 시나리오에 대응하며 제1 검색 유닛(143)에 의해 검색된 적어도 하나의 백그라운드 태스크가, UID가 일반 사용자에 대응하는 백그라운드 태스크인 것을 구현할 수 있다.
선택적으로, 장치는 추가로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에서, UID가 일반 사용자에 대응하는 백그라운드 태스크를 무시하도록 구성될 수 있다. 즉, UID가 일반 사용자에 대응하는 백그라운드 태스크에 대한 처리가 수행되지 않는다.
선택적으로, 제1 검색 유닛(143)은 제2 시나리오에 대응하는 백그라운드 태스크들에서 시스템 자원 사용량이 미리 설정된 문턱값에 도달한 적어도 하나의 백그라운드 태스크를 검색하도록 구성될 수 있다.
제1 처리 유닛(144)은 제2 시나리오에 대응하며 제1 검색 유닛(143)에 의해 검색된 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하도록 구성되며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
선택적으로, 도 15에 도시된 바와 같이, 장치는,
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하도록 구성되는 제2 검색 유닛(145); 및
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크의 사용자 식별자가 일반 사용자에 대응하면, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하도록 구성되는 제2 처리 유닛(146)을 더 포함할 수 있다.
선택적으로, 도 16에 도시된 바와 같이, 장치는,
제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대하여 타이머를 시작하도록 구성되는 타이밍 유닛(147); 및
타이머가 미리 설정된 문턱값을 초과하는 때, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 정지시키도록 구성되는 제1 정지 유닛(148)을 더 포함할 수 있다.
선택적으로, 시스템 구성 요소는 타이머에 한정되지 않으며, 슬립 락, 방송 통지를 포함한다. 한편, 시스템 구성 요소가 일시 정지되는 경우의 시스템 구성 요소의 상태 값이 전술한 단계에서 저장됨으로써, 백그라운드 태스크가 제한 처리가 해제된 후에 시스템의 구성 요소의 저장된 상태 값을 호출할 수 있다. 더욱이, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가, 타이머가 미리 설정된 문턱값(예를 들어, 10초, 30초, 또는 그외)에 도달하는 때에만 정지된다. 이는 제2시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 빈번하게 정지시키는 것을 방지할 수 있다.
선택적으로, 도 17에 도시된 바와 같이, 장치는,
적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하도록 구성되는 질의 유닛(149); 및
적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하면, 시스템 구성 요소를 정지시키도록 구성되는 제2 정지 유닛(150)을 더 포함할 수 있다.
본 구현 방식에서, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가 정지되기 때문에, 장치의 전력 소모 및 전력 손실이 감소될 수 있다.
선택적으로, 시스템 자원 사용량을 감소시키기 위한 처리는,
적어도 하나의 백그라운드 태스크를 프리즈시키는 방식;
적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
중 적어도 하나의 방식을 포함할 수 있다.
이 경우, 제1 처리 유닛(144)은 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 프리즈시키거나; 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 정지시키거나; 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시킬 수 있다.
선택적으로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 프리즈시키는 것은, 백그라운드 태스크가 시스템 자원을 호출하는 것을 금지시키는 것일 수 있으며, 예를 들어, CPU가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출하는 것을 금지시키는 것일 수 있다. 구체적으로, 운영 시스템의 태스크 스케줄러는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 임의 스케줄링에 참여하는 것을 금지하는 데 사용된다. 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 시스템 자원을 호출하는 것이 금지되기 때문에, 장치의 전력 소모가 감소된다.
선택적으로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한하는 것은, CPU가 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출하는 시간을 제한하는 것일 수 있다. 예를 들어, CPU호출에 대한 시간 값이 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대하여 설정됨으로써, CPU가 시간 값에 의해 지시되는 시간 내에서 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 호출할 수 있다. 게다가, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한하는 것은 추가로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 시스템 자원의 사용을 제한하는 것일 수 있다. 예를 들어, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 네트워크 대역폭의 사용을 제한하는 것, 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 메모리 공간의 사용을 제한하는 것일 수 있다. 게다가, 추가로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대응하는 상이한 시나리오들에 따라 상이한 제한 조치를 사용하는 것일 수 있다. 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의한 시스템 자원의 사용이 전술한 단계에서 제한되기 때문에, 장치의 전력 소모가 감소된다.
선택적으로, 장치는 구체적으로, 테블릿 컴퓨터, 모바일폰, 전자책 단말기, 리모턴, PC, 노트북 컴퓨터, 차량 탑재 장치, 웹 TV, 웨어러블 장치, 또는 다른 네트워크 기능을 가지는 지능형 장치 등과 같은, 멀티 태스크 시스템을 가지는 임의 장치일 수 있다.
전술한 기술적 해결방안에서, 포그라운드 태스크에 대응하는 제1 시나리오는 포그라운드 태스크에 따라 결정되며, 포그라운드 태스크에 대응하는 제1 시나리오를 제외한 제2 시나리오가 결정되고, 제2 시나리오는 태스크 제한이 허용되는 시나리오이며, 제2 시나리오가 적어도 하나의 백그라운드 태스크에 대응하고; 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 검색되며, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리가 수행되고, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다. 그러므로 장치의 전력 소모 및 전력 손실이 감소될 수 있다.
도 18을 참조하면, 도 18은 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다. 도 18에 도시된 바와 같이, 태스크 관리 장치는, 메모리(181)와, 메모리(181)에 연결된 프로세서(182)를 포함하며, 메모리(181)는 프로그램 코드를 저장하도록 구성되며, 프로세서(182)는 다음의 동작들을 수행하기 위하여 메모리(181)에 저장된 프로그램을 호출(invoke)하도록 구성된다. 프로세서(182)는,
포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 동작;
포그라운드 태스크에 대응하는 제1 시나리오가 제1 리스트에 있는 경우, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 동작; 및
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작
을 수행하며, 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함하며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
선택적으로, 프로세서(182)는, 구체적으로, 현재 태스크가 스위칭되는 경우, 현재 태스크에 따라 대응하는 제1 시나리오를 결정할 수 있다. 예를 들어, 현재 태스크인 음악 태스크가 실행되는 경우, 태스크가 음악 시나리오 또는 다운로드 시나리오를 시작한다. 이러한 방식으로, 포그라운드 태스크에 대응하는 제1 시나리오가 음악 시나리오 또는 다운로드 시나리오 등일 수 있음을 결정할 수 있다. 게다가, 포그라운드 태스크는 하나 또는 다수의 포그라운드 태스크일 수 있다. 다수의 포그라운드 태스크일 경우, 프로세서(182)는, 다수의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성될 수 있다. 즉, 프로세서(182)는, 적어도 하나의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정할 수 있다.
선택적으로, 태스크 제한이 허용되고 제1 리스트에 포함되는 시나리오는 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 허용되고 사용자에 의한 동작 입력에 따라 설정되고 사용자의 요구 사항 또는 습관을 만족하는 시나리오가 구현될 수 있다. 예를 들어, 사용자가 장치의 전력 소모를 감소시키기를 원하고, 사용자는 제1 리스트에 태스크 제한이 허용되는 다수 시나리오를 설정할 수 있으며, 예를 들어, 브라우저 시나리오, 게임 시나리오, 네비게이션 시나리오 등을 태스크 제한이 허용되는 시나리오로서 설정할 수 있다. 이러한 방식으로, 현재 태스크에 대응하는 제1 시나리오가 브라우저 시나리오, 또는 게임 시나리오 또는 네비게이션 시나리오인 경우, 프로세서(182)는, 장치의 전력 소모를 감소시키기 위하여 검색 동작을 수행할 수 있다.
선택적으로, 태스크 제한이 허용되고 제1 리스트에 포함되는 시나리오가 장치의 성능에 따라 자동적으로 설정될 수 있다. 예를 들어, 장치가 보다 좋은 성능을 가지는 경우, 예를 들어, 장치의 CPU가 고속으로 실행되거나, 장치가 보다 큰 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있는 경우, 태스크 제한이 허용되는 단지 몇 안 되는 시나리오들이 제1 리스트에 설정될 수 있다. 예를 들어, 장치의 성능이 좋지 않은 경우, 예를 들어, 장치의 CPU가 저속으로 실행되거나, 장치가 보다 작은 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있지 않은 경우, 제1 리스트가 태스크 제한이 허용되는 많은 수의 시나리오들을 가지기 때문에, 태스크 제한이 허용되는 더 많은 시나리오들이 제1 리스트에 설정될 수 있다.
선택적으로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제1 시나리오에 대응하는 모든 백그라운드 태스크들에서 적어도 하나의 백그라운드 태스크를 나타내거나, 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제1 시나리오에 대응하는 모든 백그라운드 태스크를 나타낼 수 있다. 본 실시 예는 이에 한정되지 않는다.
선택적으로, 제한 처리는 현재 시스템 자원 사용량을 감소시키는 데 사용되는 처리일 수 있다.
다른 실시 예에서, 프로세서(182)는
포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 동작;
포그라운드 태스크에 대응하는 제1 시나리오가 제1 리스트에 있는 지를 결정하고, 예(yes)이면, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 동작;
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작; 및
결정의 결과가 아니오(No)이면, 프로세스를 종료하는 동작
을 더 수행하도록 구성될 수 있으며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
선택적으로, 프로세서(182)는, 구체적으로, 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, 제한 처리를 거친 후에 다른 태스크 또는 운영 시스템에 영향을 주지 않을 적어도 하나의 백그라운드 태스크를 검색하거나; 또는 제1 시나리오에 대응하는 백그라운드 태스크들에서 적어도 하나의 미리 결정된 백그라운드 태스크를 검색하거나; 또는 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, 사용자 식별자가 일반 사용자에 대응하는 적어도 하나의 백그라운드 태스크를 검색할 수 있다.
예를 들어, 프로세서(182)에 의해 수행되는, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 동작은, 제1 시나리오에 대응하는 각각의 백그라운드 태스크의 사용자 식별자를 검색하고, UID가 일반 사용자에 대응하는 백그라운드 태스크를 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크로서 검색하는 동작을 포함할 수 있다.
즉, 본 동작은, 제1 시나리오에 대응하고 프로세서(182)에 의해 검색된 적어도 하나의 백그라운드 태스크가, UID가 일반 사용자에 대응하는 백그라운드 태스크인 것을 구현하는 데 사용된다. UID는 각 태스크의 고유의 식별자이며, 태스크를 고유하게 식별하는 데 사용된다. 게다가, UID는 시스템 사용자 및 일반 사용자에 대응할 수 있다. 백그라운드 태스크의 UID가 시스템 사용자인 경우, 이는 백그라운드 태스크가 운영 시스템에 포함되는 백그라운드 태스크임을 지시한다. 백그라운드 태스크의 UID가 일반 사용자인 경우, 이는 백그라운드 태스크가 운영 시스템에 포함되는 백그라운드 태스크가 아님을 지시한다.
선택적으로, 프로세서(182)는 추가로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에서 UID가 시스템 사용자에 대응하는 백그라운드 태스크를 무시하도록 구성될 수 있다. 즉, UID가 시스템 사용자에 대응하는 백그라운드 태스크에 대해 처리가 수행되지 않는다.
선택적으로, 프로세서(182)는, 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며 시스템 자원 사용량이 미리 설정된 문턱값에 도달한 적어도 하나의 백그라운드 태스크를 검색할 수 있다. 예를 들어, 제1 시나리오에 대응하는 백그라운드 태스크들에 있으며, CPU 자원 사용량이 CPU 자원들의 10%에 도달하는 적어도 하나의 백그라운드 태스크가 검색되거나; 또는, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크들에 있으며 슬립 락 유지 기간이 10분에 도달한 적어도 하나의 백그라운드 태스크가 검색되거나; 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크들에 있으며 평균 데이터 다운로드 속도가 분당 10M에 도달한 적어도 하나의 백그라운드 태스크가 검색된다.
선택적으로, 프로세서(182)는 추가로,
포그라운드 태스크에 대응하는 제1 시나리오를 제외하고 제2 시나리오를 검색하는 동작; 및
제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작을 수행하도록 구성될 수 있으며, 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하며, 제1 리스트는 제2 시나리오를 포함한다.
선택적으로, 제2 시나리오는 하나 이상의 시나리오를 나타낼 수 있다. 게다가, 제2 시나리오는 제1 시나리오를 제외한 모든 시나리오 또는 제1 시나리오를 제외한 하나 이상의 시나리오를 나타낼 수 있으며, 본 실시 예는 이에 한정되지 않는다.
게다가, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크에서 적어도 하나의 백그라운드 태스크를 나타낼 수 있으며, 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크를 나타낼 수 있다. 본 실시 예는 이러한 것에 한정되지 않는다. 더욱이, 제2 시나리오는 구체적으로 미리 결정된 시나리오일 수 있으며, 예를 들어, 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 허용되고 사용자에 의한 동작 입력에 따라 설정되고 사용자의 요구사항 또는 습관을 만족하는 시나리오가 구현될 수 있다. 게다가, 프로세서(182)는 구체적으로, 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며, 제한 처리를 거친 후에 다른 태스크나 운영 시스템에 영향을 주지 않을 적어도 하나의 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에서 적어도 하나의 미리 결정된 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며 사용자 식별자가 일반 사용자인 적어도 하나의 백그라운드 태스크를 검색할 수 있다.
선택적으로, 제2 시나리오는 제1 시나리오를 제외한 시나리오이고 제2 리스트에 없을 수 있으며, 제2 리스트는 태스크 제한이 금지되는 시나리오를 포함할 수 있다. 태스크 제한이 금지되는 시나리오는 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 금지되고 사용자에 의한 동작 입력에 따라 설정되며 사용자의 요구 사항 또는 습관을 만족하는 시나리오가 구현될 수 있다. 예를 들어, 사용자는 제2 리스트에, 사용자 주의를 요구하는 시나리오, 예를 들어, 단문 메시지 서비스 메시지 시나리오, 통화 시나리오, 그리고 다운로드 시나리오를 태스크 제한이 금지되는 시나리오로 설정할 수 있다. 다르게는, 태스크 제한이 금지되는 시나리오가 장치의 성능에 따라 자동적으로 설정될 수 있다. 예를 들어, 장치가 보다 좋은 성능을 가지는 경우, 예를 들어, 장치의 CPU가 고속으로 실행되거나, 장치가 보다 큰 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있는 경우, 태스크 제한이 금지되는 보다 많은 시나리오들이 제2 리스트에 설정될 수 있다. 예를 들어, 장치의 성능이 좋지 않은 경우, 예를 들어, 장치의 CPU가 저속으로 실행되거나, 장치가 보다 작은 메모리를 가지거나, 또는 장치가 충분한 배터리를 가지고 있지 않은 경우, 태스크 제한이 금지되는 단지 몇 안 되는 시나리오들이 제2 리스트에 설정될 수 있다.
선택적으로, 프로세서(182)가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작을 수행하기 전에, 프로세서(182)는 추가로,
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크의 UID를 질의하는 동작; 및
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크의 UID 가 시스템 사용자에 대응하면, 적어도 하나의 백그라운드 태스크를 무시하거나; 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크의 UID가 일반 사용자에 대응하면, 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작
을 수행하도록 구성될 수 있다. 즉, 단계(204)는 UID가 일반 사용자에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행한다.
본 구현 방식에서, UID가 일반 사용자에 대응하는 백그라운드 태스크가 운영 시스템의 태스크가 아니기 때문에, 이러한 백그라운드 태스크들에 대해 제한 처리가 수행된 이후에 다른 태스크들은 영향을 받지 않는다. 그러므로 단계(204)에서 UID가 일반 사용자에 대응하는 백그라운드 태스크에 대해서만 제한 처리가 수행되며, 이에 따라 다른 태스크에 영향을 주지 않고 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.
선택적으로, 프로세서(182)가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작을 수행하기 전에, 프로세서(182)는 추가로,
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대하여 타이머를 시작하는 동작; 및
타이머가 미리 설정된 문턱값을 초과하는 때, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 정지시키는 동작을 수행하도록 구성될 수 있다.
선택적으로, 시스템 구성 요소는 타이머에 한정되지 않으며, 슬립 락, 방송 통지를 포함한다. 한편, 시스템 구성 요소가 일시 정지되는 경우의 시스템 구성 요소의 상태 값이 전술한 단계에서 저장됨으로써, 백그라운드 태스크가 제한 처리가 해제된 후에 시스템의 구성 요소의 저장된 상태 값을 호출할 수 있다. 더욱이, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가, 타이머가 미리 설정된 문턱값(예를 들어, 10초, 30초, 또는 그외)에 도달하는 때에만 정지된다. 이는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 빈번하게 정지시키는 것을 방지할 수 있다.
선택적으로, 프로세서(182)가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작을 수행하기 전에, 프로세서(182)는 추가로,
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하는 동작; 및
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하면, 시스템 구성 요소를 정지시키는 동작을 수행하도록 구성될 수 있다.
본 구현 방식에서, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가 정지되기 때문에, 장치의 전력 소모 및 전력 손실이 또한 감소될 수 있다.
선택적으로, 시스템 자원 사용량을 감소시키기 위한 처리는,
적어도 하나의 백그라운드 태스크를 프리즈시키는 방식;
적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
중 적어도 하나의 방식을 포함할 수 있다.
이 경우, 프로세서(182)는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 프리즈시키거나; 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 정지시키거나; 또는 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시킬 수 있다.
선택적으로, 프로세서(182)에 의해, 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 동작은, 온도가 미리 설정된 온도 문턱값에 도달하는 경우, 포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 동작을 포함할 수 있다.
온도는 본 실시 예를 구현하는 장치의 온도일 수 있으며, 장치의 온도는 구체적으로 장치의 CPU의 온도 또는 장치의 모뎀의 온도를 나타낼 수 있다.
본 구현 방식에서, 장치의 온도가 미리 설정된 온도 문턱값에 도달하는 경우에만 제한 처리가 백그라운드 태스크에 대해 수행되는 것이 구현될 수 있다.
선택적으로, 프로세서(182)는 추가로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 해제하는 동작을 수행하도록 구성될 수 있다. 구체적으로, 제1 시나리오가 제1 리스트에 없는 경우, 제한 처리를 거친 백그라운드 태스크에 대하여 제한 처리가 해제된다.
선택적으로, 방법은 구체적으로, 테블릿 컴퓨터, 모바일폰, 전자책 단말기, 리모컨, PC, 노트북 컴퓨터, 차량 탑재 장치, 웹 TV, 웨어러블 장치, 또는 다른 네트워크 기능을 가지는 지능형 장치 등과 같은, 멀티 태스크 시스템을 가지는 임의 장치에 대하여 적용될 수 있다.
전술한 기술적 해결 방안에서, 포그라운드 태스크에 대응하는 제1 시나리오가 포그라운드 태스크에 따라 결정되며, 포그라운드 태스크에 대응하는 제1 시나리오가 제1 리스트에 있는 경우, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 검색되고, 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함하며; 제한 처리가 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 수행되고, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다. 이러한 방식으로, 제한 처리가 태스크 제한이 허용되는 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 구현된다. 백그라운드 태스크가 언제나 실행되는 종래 기술에 비하여, 본 발명의 본 실시 예는 장치의 전력 소모 및 전력 손실을 감소시킬 수 있다.
도 19를 참조하면, 도 19는 본 발명의 실시 예에 따른 다른 태스크 관리 장치의 개략적인 구조도이다. 도 19에 도시된 바와 같이, 태스크 관리 장치는, 메모리(191)와, 메모리(191)에 연결된 프로세서(192)를 포함하며, 메모리(191)는 프로그램 코드를 저장하도록 구성되며, 프로세서(192)는 다음의 동작들을 수행하기 위하여 메모리(191)에 저장된 프로그램을 호출(invoke)하도록 구성된다. 프로세서(192)는,
포그라운드 태스크에 따라, 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 동작;
포그라운드 태스크에 대응하는 제1 시나리오를 제외하고 제2 시나리오를 검색하는 동작;
제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 동작; 및
제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작
을 수행하며, 제2 시나리오가 태스크 제한이 허용되는 시나리오이며, 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하며, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다.
선택적으로, 프로세서(192)는 구체적으로, 현재 태스크가 스위칭되는 경우, 현재 태스크에 따라 대응하는 제1 시나리오를 결정할 수 있다. 예를 들어, 현재 태스크인 음악 태스크가 실행되는 경우, 태스크가 음악 시나리오 또는 다운로드 시나리오를 시작한다. 이러한 방식으로, 포그라운드 태스크에 대응하는 제1 시나리오가 음악 시나리오 또는 다운로드 시나리오 등일 수 있음을 결정할 수 있다. 게다가, 포그라운드 태스크는 하나 또는 다수의 포그라운드 태스크일 수 있다. 다수의 포그라운드 태스크일 경우, 프로세서(192)는, 다수의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계를 포함할 수 있다. 즉, 프로세서(192)는 적어도 하나의 포그라운드 태스크에 따라, 각 포그라운드 태스크에 대응하는 제1 시나리오를 결정할 수 있다.
선택적으로, 제2 시나리오는 하나 이상의 시나리오를 나타낼 수 있다. 게다가, 제2 시나리오는 제1 시나리오를 제외한 모든 시나리오 또는 제1 시나리오를 제외한 하나 이상의 시나리오를 나타낼 수 있으며, 본 실시 예는 이에 한정되지 않는다. 게다가, 제2 시나리오는 구체적으로, 미리 결정된 시나리오, 예를 들어, 사용자에 의한 동작 입력을 수신하도록 설정된 시나리오일 수 있다. 이러한 방식으로, 태스크 제한이 허용되고 사용자에 의한 동작 입력에 따라 설정되고 사용자의 요구 사항 또는 습관을 만족하는 시나리오가 구현될 수 있다.
선택적으로, 제2 시나리오는 제1 시나리오를 제외한 시나리오이고 제2 리스트에 없을 수 있으며, 제2 리스트는 태스크 제한이 금지되는 시나리오를 포함할 수 있다.
선택적으로, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크에서 적어도 하나의 백그라운드 태스크를 나타낼 수 있으며, 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크는 제2 시나리오에 대응하는 모든 백그라운드 태스크를 나타낼 수 있다. 게다가, 프로세서(192)는 구체적으로, 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며, 제한 처리를 거친 후에 다른 태스크나 운영 시스템에 영향을 주지 않을 적어도 두 개의 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에서 적어도 하나의 미리 결정된 백그라운드 태스크를 검색하거나; 또는 제2 시나리오에 대응하는 백그라운드 태스크들에 있으며 UID가 일반 사용자인 적어도 하나의 백그라운드 태스크를 검색할 수 있다. 예를 들어, 프로세서(192)에 의해 수행되는, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 동작은, 제2 시나리오에 대응하는 각 백그라운드 태스크의 UID를 검색하고, UID가 일반 사용자에 대응하는 백그라운드 태스크를 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크로서 검색하는 동작을 포함할 수 있다.
즉, 본 단계는 제2 시나리오에 대응하고 프로세서(192)에 의해 검색된 적어도 하나의 백그라운드 태스크가, UID가 일반 사용자에 대응하는 백그라운드인 것을 구현하는 데 사용된다.
선택적으로, 프로세서(192)는 추가로, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에서 UID가 시스템 사용자에 대응하는 백그라운드 태스크를 무시하는 동작을 수행하도록 구성될 수 있다. 즉, UID가 시스템 사용자에 대응하는 백그라운드 태스크에 대해 처리가 수행되지 않는다.
선택적으로, 프로세서(192)는 제1 시나리오에 대응하는 백그라운드 태스크들에서, 시스템 자원 사용량이 미리 설정된 문턱값에 도달한 적어도 하나의 백그라운드 태스크를 검색할 수 있다.
선택적으로, 프로세서(192)는 추가로,
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 동작; 및
제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크의 UID가 일반 사용자에 대응하면, 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작을 수행하도록 구성될 수 있다.
본 실시 예의 본 구현 방식에 대하여, 제1 및 제2 실시 예에서 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리가 수행되는 구현 방식을 추가로 참조하며, 여기서는 반복적인 설명을 생략한다.
선택적으로, 프로세서(192)가 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작을 수행하기 전에, 프로세서(192)는 추가로,
제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대하여 타이머를 시작하는 동작; 및
타이머가 미리 설정된 문턱값을 초과하는 때, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 정지시키는 동작을 수행하도록 구성될 수 있다.
선택적으로, 시스템 구성 요소는 타이머에 한정되지 않으며, 슬립 락, 방송 통지를 포함한다. 한편, 시스템 구성 요소가 일시 정지되는 경우의 시스템 구성 요소의 상태 값이 전술한 단계에서 저장됨으로써, 백그라운드 태스크가 제한 처리가 해제된 후에 시스템의 구성 요소의 저장된 상태 값을 호출할 수 있다. 더욱이, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가, 타이머가 미리 설정된 문턱값(예를 들어, 10초, 30초, 또는 그외)에 도달하는 때에만 정지된다. 이는 제2시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 빈번하게 정지시키는 것을 방지할 수 있다.
선택적으로, 프로세서(192)가 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 동작을 수행하기 전에, 프로세서(192)는 추가로,
적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하는 동작; 및
적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하면, 시스템 구성 요소를 정지시키는 동작을 수행하도록 구성될 수 있다.
본 구현 방식에서, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소가 정지되기 때문에, 장치의 전력 소모 및 전력 손실이 감소될 수 있다.
선택적으로, 시스템 자원 사용량을 감소시키기 위한 처리는,
적어도 하나의 백그라운드 태스크를 프리즈시키는 방식;
적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
중 적어도 하나의 방식을 포함할 수 있다.
이 경우, 프로세서(192)는, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 프리즈시키거나; 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 정지시키거나; 또는 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시킬 수 있다.
선택적으로, 방법은 구체적으로, 테블릿 컴퓨터, 모바일폰, 전자책 단말기, 리모컨, PC, 노트북 컴퓨터, 차량 탑재 장치, 웹 TV, 웨어러블 장치, 또는 다른 네트워크 기능을 가지는 지능형 장치 등과 같은, 멀티 태스크 시스템을 가지는 임의 장치에 대하여 적용될 수 있다.
전술한 기술적 해결방안에서, 포그라운드 태스크에 대응하는 제1 시나리오는 포그라운드 태스크에 따라 결정되며, 포그라운드 태스크에 대응하는 제1 시나리오를 제외하고 제2 시나리오가 결정되고, 제2 시나리오는 태스크 제한이 허용되는 시나리오이며, 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하고; 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크가 검색되며, 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 제한 처리가 수행되고, 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타낸다. 그러므로 장치의 전력 소모 및 전력 손실이 감소될 수 있다.
당업자는, 실시 예들에서 방법의 프로세스들 모두 또는 일부가 관련(relevant) 하드웨어를 명령하는(instructing) 컴퓨터 프로그램에 의해 구현될 수 있음을 이해할 수 있다. 프로그램은 컴퓨터 판독 가능한 저장 매체에 저장될 수 있다. 프로그램이 실행되면, 실시 예들의 방법의 프로세스들이 수행된다. 전술한 저장 매체는 자기 디스크(magnetic disc), 광학 디스크, 판독 전용 메모리(Read-Only Memory, ROM), 또는 랜덤 액세스 메모리(Random Access Memory, RAM)를 포함할 수 있다.
위에 기술된 것은 단지 본 발명의 예시적인 실시 예들이며, 확실히 본 발명의 보호 범위를 제한하고자 하는 것은 아니다. 그러므로 본 발명의 청구 범위에 따라 이루어지는 등가적인 변경(equivalent variations)은 본 발명의 범위에 포함될 것이다.

Claims (28)

  1. 태스크 관리 방법으로서,
    포그라운드 태스크(foreground task)에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계;
    상기 포그라운드 태스크에 대응하는 상기 제1 시나리오가 제1 리스트에 있는 경우, 상기 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크(background task)를 검색하는 단계;
    상기 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하는 단계; 및
    상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리(limitation processing)를 수행하는 단계
    를 포함하며,
    상기 제1 리스트는 태스크 제한이 허용되는 시나리오를 포함하고, 상기 제한 처리는 시스템 자원 사용량(usage)을 감소시키기 위한 처리를 나타내며,
    상기 제한 처리는 상기 적어도 하나의 백그라운드 태스크가 상기 시스템 구성 요소를 사용하면 상기 시스템 구성 요소를 정지시키는 처리를 포함하고,
    상기 포그라운드 태스크(foreground task)에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계가,
    온도가 미리 설정된 온도 문턱값에 도달한 때, 상기 포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계를 더 포함하고,
    상기 온도는 상기 태스크 관리 방법을 구현하는 장치의 온도이며,
    상기 장치의 온도가 상기 미리 설정된 온도 문턱값에 도달한 때에만 상기 제한 처리가 상기 백그라운드 태스크에 대해 수행되는, 태스크 관리 방법.
  2. 제1항에 있어서,
    상기 포그라운드 태스크에 대응하는 상기 제1 시나리오를 제외하고 제2 시나리오를 검색하는 단계; 및
    상기 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크에 대해 상기 제한 처리를 수행하는 단계
    를 더 포함하고,
    상기 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하고, 상기 제1 리스트는 상기 제2 시나리오를 포함하는, 태스크 관리 방법.
  3. 태스크 관리 방법으로서,
    포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계;
    상기 포그라운드 태스크에 대응하는 상기 제1 시나리오를 제외하고 제2 시나리오를 결정하는 단계;
    상기 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 단계;
    상기 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하는 단계; 및
    상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 단계
    를 포함하며,
    상기 제2 시나리오는 태스크 제한이 허용되는 시나리오이고, 상기 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하며, 상기 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타내며,
    상기 제한 처리는 상기 적어도 하나의 백그라운드 태스크가 상기 시스템 구성 요소를 사용하면 상기 시스템 구성 요소를 정지시키는 처리를 포함하고,
    상기 포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계가,
    온도가 미리 설정된 온도 문턱값에 도달한 때, 상기 포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하는 단계를 더 포함하고,
    상기 온도는 상기 태스크 관리 방법을 구현하는 장치의 온도이며,
    상기 장치의 온도가 상기 미리 설정된 온도 문턱값에 도달한 때에만 상기 제한 처리가 상기 백그라운드 태스크에 대해 수행되는, 태스크 관리 방법.
  4. 제3항에 있어서,
    상기 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하는 단계; 및
    상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크의 사용자 식별자가 일반 사용자에 대응할 때, 상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 상기 제한 처리를 수행하는 단계
    를 더 포함하는 태스크 관리 방법.
  5. 제3항에 있어서,
    상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하는 단계 이전에,
    상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대하여 타이머를 시작하는 단계; 및
    상기 타이머가 미리 설정된 문턱값을 초과하는 때, 상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 정지시키는 단계
    를 더 포함하는, 태스크 관리 방법.
  6. 제3항 내지 제5항 중 어느 한 항에 있어서,
    상기 시스템 자원 사용량을 감소시키기 위한 처리는,
    상기 적어도 하나의 백그라운드 태스크를 프리즈시키는 방식;
    상기 적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
    상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
    중 적어도 하나의 방식을 포함하는, 태스크 관리 방법.
  7. 태스크 관리 장치로서,
    제1 결정 유닛;
    제2 결정 유닛;
    제1 검색 유닛;
    질의 유닛;
    제1 처리 유닛; 및
    제2 정지 유닛
    을 포함하고,
    상기 제1 결정 유닛은, 포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 구성되고,
    상기 제2 결정 유닛은, 상기 포그라운드 태스크에 대응하고 상기 제1 결정 유닛에 의해 결정된 상기 제1 시나리오를 제외하고 제2 시나리오를 결정하도록 구성되며, 상기 제2 시나리오는 태스크 제한이 허용되는 시나리오이고, 상기 제2 시나리오는 적어도 하나의 백그라운드 태스크에 대응하며,
    상기 제1 검색 유닛은, 상기 제2 결정 유닛에 의해 결정된 상기 제2 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하도록 구성되고,
    상기 질의 유닛은 상기 적어도 하나의 백그라운드 태스크가 시스템 구성 요소를 사용하는지를 질의하도록 구성되며,
    상기 제1 처리 유닛은, 상기 제2 시나리오에 대응하고 상기 제1 검색 유닛에 의해 검색된 상기 적어도 하나의 백그라운드 태스크에 대해 제한 처리를 수행하도록 구성되며, 상기 제한 처리는 시스템 자원 사용량을 감소시키기 위한 처리를 나타내며,
    상기 제2 정지 유닛은, 상기 질의 유닛이 상기 적어도 하나의 백그라운드 태스크가 상기 시스템 구성 요소를 사용하는 것을 발견하면 상기 시스템 구성 요소를 정지하도록 구성되고,
    상기 제1 결정 유닛은, 온도가 미리 설정된 온도 문턱값에 도달한 때, 상기 포그라운드 태스크에 따라, 상기 포그라운드 태스크에 대응하는 제1 시나리오를 결정하도록 더 구성되고,
    상기 온도는 상기 태스크 관리 장치에 의해 태스크가 관리되는 장치의 온도이며,
    상기 제1 처리 유닛은, 상기 장치의 온도가 상기 미리 설정된 온도 문턱값에 도달한 때에만 상기 백그라운드 태스크에 대해 상기 제한 처리를 수행하도록 더 구성되는, 태스크 관리 장치.
  8. 제7항에 있어서,
    상기 제1 시나리오에 대응하는 적어도 하나의 백그라운드 태스크를 검색하도록 구성되는 제2 검색 유닛; 및
    상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크의 사용자 식별자가 일반 사용자에 대응할 때, 상기 제1 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대해 상기 제한 처리를 수행하도록 구성되는 제2 처리 유닛
    을 더 포함하는 태스크 관리 장치.
  9. 제7항에 있어서,
    상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 대하여 타이머를 시작하도록 구성되는 타이밍 유닛; 및
    상기 타이머가 미리 설정된 문턱값을 초과하는 때, 상기 제2 시나리오에 대응하는 상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 구성 요소를 정지시키도록 구성되는 제1 정지 유닛
    을 더 포함하는, 태스크 관리 장치.
  10. 제7항 내지 제9항 중 어느 한 항에 있어서,
    상기 시스템 자원 사용량을 감소시키기 위한 처리는,
    상기 적어도 하나의 백그라운드 태스크를 프리즈시키는 방식;
    상기 적어도 하나의 백그라운드 태스크를 정지시키는 방식; 및
    상기 적어도 하나의 백그라운드 태스크에 의해 사용되는 시스템 자원을 제한시키는 방식
    중 적어도 하나의 방식을 포함하는, 태스크 관리 장치.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
KR1020167016247A 2013-12-10 2014-12-04 태스크 관리 방법 및 장치 KR101922576B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201310665434.9A CN104699218B (zh) 2013-12-10 2013-12-10 一种任务管理方法及设备
CN201310665434.9 2013-12-10
PCT/CN2014/093028 WO2015085887A1 (zh) 2013-12-10 2014-12-04 一种任务管理方法及设备

Publications (2)

Publication Number Publication Date
KR20160085894A KR20160085894A (ko) 2016-07-18
KR101922576B1 true KR101922576B1 (ko) 2018-11-27

Family

ID=53346437

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167016247A KR101922576B1 (ko) 2013-12-10 2014-12-04 태스크 관리 방법 및 장치

Country Status (6)

Country Link
US (3) US10345890B2 (ko)
EP (2) EP3742291A1 (ko)
JP (1) JP6443813B2 (ko)
KR (1) KR101922576B1 (ko)
CN (2) CN110083444A (ko)
WO (1) WO2015085887A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105528055B (zh) * 2015-12-30 2018-11-23 小米科技有限责任公司 运行对象的处理方法及装置
JP6702762B2 (ja) * 2016-03-03 2020-06-03 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
CN105893128B (zh) * 2016-03-30 2019-08-06 北京小米移动软件有限公司 一种应用程序调用管理的方法和装置
CN106537344A (zh) * 2016-03-30 2017-03-22 北京小米移动软件有限公司 一种应用程序调用管理的方法和装置
KR20180013608A (ko) * 2016-07-29 2018-02-07 삼성전자주식회사 전자 장치의 전력 소모 감소를 위한 방법 및 장치
CN111052040A (zh) * 2017-10-13 2020-04-21 华为技术有限公司 一种降低终端功耗的方法及终端
WO2019084783A1 (zh) * 2017-10-31 2019-05-09 深圳市云中飞网络科技有限公司 服务调度方法和装置、计算机设备、计算机可读存储介质
CN107766211B (zh) * 2017-10-31 2021-06-15 努比亚技术有限公司 冻屏预防方法、移动终端及计算机可读存储介质
KR101989249B1 (ko) * 2017-12-14 2019-06-13 연세대학교 산학협력단 이동 단말기의 오프로딩 방법 및 그 이동 단말기
CN109992397A (zh) * 2017-12-29 2019-07-09 广东欧珀移动通信有限公司 进程处理方法和装置、电子设备、计算机可读存储介质
CN110045809A (zh) * 2018-01-12 2019-07-23 广东欧珀移动通信有限公司 信息处理方法、装置、计算机设备和计算机可读存储介质
US10901806B2 (en) * 2018-05-01 2021-01-26 International Business Machines Corporation Internet of things resource optimization
JP6569185B1 (ja) 2018-06-14 2019-09-04 レノボ・シンガポール・プライベート・リミテッド 情報処理装置、情報処理装置の制御方法およびプログラム
EP3608779B1 (en) * 2018-08-09 2024-04-03 Bayerische Motoren Werke Aktiengesellschaft Method for processing a predetermined computing task by means of a distributed, vehicle-based computing system as well as computing system, server device, and motor vehicle
CN109324884A (zh) * 2018-09-04 2019-02-12 青岛海信移动通信技术股份有限公司 一种限制后台应用的方法和终端
CN111107429A (zh) * 2018-10-26 2020-05-05 深圳Tcl新技术有限公司 提高电视系统性能的方法、装置及计算机可读存储介质
CN109739632A (zh) * 2019-01-04 2019-05-10 Oppo广东移动通信有限公司 一种冻结机制生效方法、电子装置及计算机可读存储介质
CN110147275A (zh) * 2019-05-24 2019-08-20 中国联合网络通信集团有限公司 一种终端资源优化方法及装置
CN110795240A (zh) * 2019-10-18 2020-02-14 Oppo(重庆)智能科技有限公司 任务管理方法和装置、电子设备、计算机可读存储介质
US11422616B2 (en) * 2020-03-26 2022-08-23 Intel Corporation System, apparatus and method for dynamically adjusting platform power and performance based on task characteristics
CN113488042B (zh) * 2021-06-29 2022-12-13 荣耀终端有限公司 一种语音控制方法及电子设备
US11921558B1 (en) 2022-11-30 2024-03-05 Intel Corporation Using network traffic metadata to control a processor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013045373A (ja) * 2011-08-25 2013-03-04 Fujitsu Ltd 情報処理装置、制御プログラム及び制御方法

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098090A (en) * 1997-09-05 2000-08-01 Novell, Inc. Methods and system for providing a background processing thread which manages the background tasks of external threads
US6205468B1 (en) * 1998-03-10 2001-03-20 Lucent Technologies, Inc. System for multitasking management employing context controller having event vector selection by priority encoding of contex events
EP0942366A2 (en) 1998-03-10 1999-09-15 Lucent Technologies Inc. Event-driven and cyclic context controller and processor employing the same
US6574734B1 (en) * 1998-12-28 2003-06-03 International Business Machines Corporation Method and apparatus for securing access to automotive devices and software services
US6834386B1 (en) * 1999-07-16 2004-12-21 Microsoft Corporation Method and system for regulating background tasks using performance measurements
GB9928503D0 (en) * 1999-12-03 2000-02-02 Ibm Resource allocation in data processing systems
US7024668B2 (en) * 2000-05-15 2006-04-04 Matsushita Electric Industrial Co., Ltd. Application execution apparatus and method
US7991633B2 (en) * 2000-12-12 2011-08-02 On Time Systems, Inc. System and process for job scheduling to minimize construction costs
US20130024812A1 (en) * 2011-07-13 2013-01-24 Z124 Foreground/background assortment of hidden windows
US7069559B2 (en) * 2001-08-29 2006-06-27 International Business Machines Corporation System and method for monitoring software queuing applications
JP4522043B2 (ja) * 2002-09-06 2010-08-11 セイコーエプソン株式会社 情報装置及び表示制御方法
US7146439B1 (en) * 2003-06-27 2006-12-05 Emc Corporation Management of background copy task for point-in-time copies
US20050028160A1 (en) * 2003-08-01 2005-02-03 Honeywell International Inc. Adaptive scheduler for anytime tasks
US8224639B2 (en) 2004-03-29 2012-07-17 Sony Computer Entertainment Inc. Methods and apparatus for achieving thermal management using processing task scheduling
US7784054B2 (en) * 2004-04-14 2010-08-24 Wm Software Inc. Systems and methods for CPU throttling utilizing processes
JP2005316764A (ja) 2004-04-28 2005-11-10 Toshiba Corp 情報処理装置および同装置のシステム制御方法
US20070136731A1 (en) * 2005-12-09 2007-06-14 Caterpillar Inc. Systems and methods for prioritizing tasks
CN101114875A (zh) 2006-07-25 2008-01-30 中兴通讯股份有限公司 移动通信网络链路性能测量系统和方法
US8352733B2 (en) * 2006-08-04 2013-01-08 Apple Inc. Resource restriction systems and methods
US8028060B1 (en) * 2007-01-05 2011-09-27 Apple Inc. Background task execution over a network based on network activity idle time
US8125950B2 (en) * 2007-01-31 2012-02-28 Broadcom Corporation Apparatus for wirelessly managing resources
US8555282B1 (en) * 2007-07-27 2013-10-08 Dp Technologies, Inc. Optimizing preemptive operating system with motion sensing
US7904673B2 (en) * 2007-11-20 2011-03-08 Seagate Technology Llc Data storage device with histogram of idle time and scheduling of background and foreground jobs
US8140830B2 (en) 2008-05-22 2012-03-20 International Business Machines Corporation Structural power reduction in multithreaded processor
US8276141B2 (en) * 2008-12-10 2012-09-25 International Business Machines Corporation Selection of transaction managers based on transaction metadata
US8788655B2 (en) * 2008-12-19 2014-07-22 Openpeak Inc. Systems for accepting and approving applications and methods of operation of same
US8140876B2 (en) * 2009-01-16 2012-03-20 International Business Machines Corporation Reducing power consumption of components based on criticality of running tasks independent of scheduling priority in multitask computer
CN101923382B (zh) * 2009-06-16 2013-01-16 联想(北京)有限公司 一种计算机系统的节能方法及计算机系统
KR20110064832A (ko) * 2009-12-09 2011-06-15 한국전자통신연구원 태스크 관리 장치
CN101788926B (zh) * 2009-12-28 2014-04-30 中兴通讯股份有限公司 J2me应用前台切换的资源调配方法及装置
US20110252423A1 (en) 2010-04-07 2011-10-13 Apple Inc. Opportunistic Multitasking
US8954477B2 (en) * 2011-01-28 2015-02-10 Apple Inc. Data structures for a media-editing application
US8886976B2 (en) * 2011-04-11 2014-11-11 Microsoft Corporation Management of background tasks
KR101812583B1 (ko) * 2011-07-21 2018-01-30 삼성전자주식회사 태스크 할당 장치, 태스크 할당 방법 및 컴퓨터로 읽을 수 있는 저장 매체
US9063775B2 (en) * 2011-09-01 2015-06-23 Microsoft Technology Licensing, Llc Event aggregation for background work execution
US9032413B2 (en) * 2011-09-01 2015-05-12 Microsoft Technology Licensing, Llc Decoupling background work and foreground work
US8621494B2 (en) * 2011-09-12 2013-12-31 Microsoft Corporation Managing processes within suspend states and execution states
CN102508701A (zh) * 2011-10-18 2012-06-20 北京百纳威尔科技有限公司 自动控制应用程序运行处理方法和用户终端
CN102541246B (zh) 2011-12-15 2015-02-04 江苏中科梦兰电子科技有限公司 一种基于龙芯处理器平台的待机方法
US9164803B2 (en) * 2012-01-20 2015-10-20 Microsoft Technology Licensing, Llc Background task resource control
CN103246834B (zh) * 2012-02-07 2016-08-17 联想(北京)有限公司 控制方法和电子设备
US9135064B2 (en) * 2012-03-07 2015-09-15 Sandisk Enterprise Ip Llc Fine grained adaptive throttling of background processes
CN102768571A (zh) 2012-06-13 2012-11-07 上海交通大学 基于pcm的数据中心的节能方法
US8745261B1 (en) * 2012-10-02 2014-06-03 Nextbit Systems Inc. Optimized video streaming using cloud computing platform
CN102945344B (zh) * 2012-10-17 2015-12-09 北京奇虎科技有限公司 一种后台切换业务处理方法和系统
CN102984359B (zh) * 2012-11-13 2015-09-23 广东欧珀移动通信有限公司 自动设置手机参数的方法
CN102981906A (zh) * 2012-11-16 2013-03-20 广东欧珀移动通信有限公司 一种应用程序后台进程管理方法及装置
US9378054B2 (en) * 2013-04-12 2016-06-28 Dropbox, Inc. Testing system with methodology for background application control
US9569260B2 (en) * 2013-05-31 2017-02-14 Microsoft Technology Licensing, Llc Efficient priority-aware thread scheduling
US20140373032A1 (en) * 2013-06-12 2014-12-18 Microsoft Corporation Prefetching content for service-connected applications
US9292080B2 (en) * 2013-06-19 2016-03-22 Microsoft Technology Licensing, Llc Selective blocking of background activity
US20150024701A1 (en) * 2013-07-17 2015-01-22 Nec Casio Mobile Communications, Ltd. Mobile communication terminal, crime prevention method, computer-readable recording medium recording program thereon

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013045373A (ja) * 2011-08-25 2013-03-04 Fujitsu Ltd 情報処理装置、制御プログラム及び制御方法

Also Published As

Publication number Publication date
US20160299550A1 (en) 2016-10-13
US11209894B2 (en) 2021-12-28
US20190286213A1 (en) 2019-09-19
WO2015085887A1 (zh) 2015-06-18
KR20160085894A (ko) 2016-07-18
EP3062193A1 (en) 2016-08-31
EP3062193A4 (en) 2017-04-12
CN110083444A (zh) 2019-08-02
EP3742291A1 (en) 2020-11-25
CN104699218B (zh) 2019-04-19
JP6443813B2 (ja) 2018-12-26
US20210216129A1 (en) 2021-07-15
US11662802B2 (en) 2023-05-30
US10345890B2 (en) 2019-07-09
CN104699218A (zh) 2015-06-10
JP2016540313A (ja) 2016-12-22

Similar Documents

Publication Publication Date Title
KR101922576B1 (ko) 태스크 관리 방법 및 장치
RU2686673C1 (ru) Устройство и способ управления терминалом и терминал
US20150331612A1 (en) Memory Cleaning Method and Apparatus, and Terminal Device
JP6285905B2 (ja) 持続性および回復性のあるワーカー・プロセス
TWI559229B (zh) 用於背景工作管理的方法、行動計算裝置及可讀取媒體
WO2017185605A1 (zh) 文件管理方法及电子设备
KR101739216B1 (ko) 중앙집중식 태스크 스케줄링
WO2017185616A1 (zh) 文件存储方法及电子设备
KR20160042398A (ko) 백그라운드 애플리케이션을 제어하기 위한 방법 및 장치
KR20140002087A (ko) 멀티 코어 중앙 처리 장치에서의 코어 클록들을 비동기적으로 및 독립적으로 제어하는 시스템 및 방법
US20140115490A1 (en) Multi-user process management
CN109698979B (zh) 一种视频播放的方法、装置及电子设备
CN102279912A (zh) 客户端程序监控方法、装置及客户端
CN106844026B (zh) 一种清理终端设备进程的方法及系统
WO2013048381A1 (en) Managing data usage of a computing device
CN103444236A (zh) 管理入口应用程序
US11816200B2 (en) Terminal and method for managing launch of an application of a terminal
WO2022100192A1 (zh) 多媒体文件的处理方法、装置、终端及网络接入点设备
CN110286954B (zh) 一种应用程序的启动方法、装置及存储介质
CN103544039A (zh) 插件加载处理方法和装置
CN108011860B (zh) 一种处理广播消息的方法、装置及终端
CN111782294A (zh) 一种应用程序的运行方法、装置、电子设备及存储介质
CN112131029B (zh) 广播处理方法、装置、计算机设备及存储介质
CN104850551B (zh) 一种数据处理方法、装置及移动终端
Cheng Analysis and comparison with Android and iPhone operating System

Legal Events

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