KR20090077055A - 무선 디바이스에서 자원을 관리하기 위한 방법 및 장치 - Google Patents

무선 디바이스에서 자원을 관리하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20090077055A
KR20090077055A KR1020097008834A KR20097008834A KR20090077055A KR 20090077055 A KR20090077055 A KR 20090077055A KR 1020097008834 A KR1020097008834 A KR 1020097008834A KR 20097008834 A KR20097008834 A KR 20097008834A KR 20090077055 A KR20090077055 A KR 20090077055A
Authority
KR
South Korea
Prior art keywords
processing
application
demand
data
operable
Prior art date
Application number
KR1020097008834A
Other languages
English (en)
Other versions
KR101181153B1 (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 KR20090077055A publication Critical patent/KR20090077055A/ko
Application granted granted Critical
Publication of KR101181153B1 publication Critical patent/KR101181153B1/ko

Links

Images

Classifications

    • 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
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/14Two-way operation using the same type of signal, i.e. duplex
    • H04L5/1438Negotiation of transmission parameters prior to communication
    • H04L5/1446Negotiation of transmission parameters prior to communication of transmission speed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • H04W28/12Flow control between communication endpoints using signalling between network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M11/00Telephonic communication systems specially adapted for combination with other electrical systems
    • H04M11/06Simultaneous speech and data transmission, e.g. telegraphic transmission over the same conductors
    • H04M11/066Telephone sets adapted for data transmision

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)

Abstract

무선 디바이스에서 자원을 관리하는 기술이 설명된다. 일 양태에서, 무선 디바이스는 자원 수요 및 가용 자원에 기초하여 애플리케이션을 제어한다. 애플리케이션으로부터의 프로세싱 수요는 모니터링되고, 적어도 하나의 애플리케이션은 프로세싱 수요와 애플리케이션을 실행하는 프로세싱 유닛의 최대 프로세싱 용량에 기초하여 제어된다. 데이터 애플리케이션은 높은 프로세싱 수요가 검출되는 때에 애플리케이션에 의해 교환되는 데이터량을 감소함으로써 제어되며, 낮은 프로세싱 수요가 검출되는 때에는 데이터량을 증가함으로써 제어된다. 다른 양태에서, 무선 디바이스는 자원 수요에 부합하도록 자원 용량을 가변시킨다. 프로세싱 유닛의 프로세싱 용량은 프로세싱 수요에 기초하여 조정된다. 프로세싱 수요가 고 임계치를 초과하는 때에 프로세싱 유닛을 위한 보다 높은 클록 주파수가 선택되고, 프로세싱 수요가 저 임계치 이하로 하락하는 때에 보다 낮은 클록 주파수가 선택된다.

Description

무선 디바이스에서 자원을 관리하기 위한 방법 및 장치{METHOD AND APPARATUS FOR MANAGING RESOURCES AT A WIRELESS DEVICE}
본 출원은 "MIPS 수요가 칩셋의 구조적 성능을 넘어설 때에 애플리케이션(들) 성능을 적절히 감소시키는 방법"이라는 명칭으로 2006년 9월 29일 출원된 미국 가출원 제60/827,678호의 우선권을 주장하며, 상기 가출원은 본 양수인에게 양도되었으며 본원에 참조로서 결합된다.
본 발명은 일반적으로 전자공학에 관한 것으로, 보다 구체적으로는 무선 디바이스에서 자원을 관리하기 위한 기술에 관한 것이다.
무선 통신 네트워크는 음성, 비디오, 패킷 데이터, 메시징, 방송 등의 다양한 통신 서비스를 제공하도록 광범위하게 이용된다. 이러한 무선 네트워크는 이용 가능한 네트워크 자원을 공유함으로써 다수의 사용자에게 지원 가능한 다중-접속 네트워크이다. 이러한 다중-접속 네트워크의 예들은 코드분할 다중접속(CDMA) 네트워크, 시분할 다중접속(TDMA) 네트워크, 주파수분할 다중접속(FDMA) 네트워크, 직교 FDMA(OFDMA) 네트워크, 단일-반송파 FDMA(SC-FDMA) 네트워크 등을 포함한다.
무선 디바이스(예를 들어, 이동 전화기)는 예를 들어 음성 및/또는 패킷 데이터와 같은 하나 이상의 서비스를 위해 무선 네트워크와 활동적으로(actively) 통 신한다. 무선 디바이스는 무선 네트워크와의 통신을 위해 데이터를 처리하는데 프로세싱 자원을 소비할 수 있다. 또한, 무선 디바이스는 무선 디바이스에서 실행되는 다른 애플리케이션들을 가질 수 있다. 각각의 애플리케이션은 임의의 시간에 시작되고 종료될 수 있고, 동작 시에 일정량의 프로세싱 자원을 소모할 수 있다. 무선 디바이스의 프로세싱 수요는 시간에 걸쳐서 폭넓게 변동될 수 있으며, 무선 네트워크와 교환되는 데이터의 양뿐만 아니라 무선 디바이스에서 실행되는 특정 애플리케이션에 의존할 수 있다. 프로세싱 수요가 무선 디바이스의 프로세싱 용량을 초과하는 경우, 어떤 악영향이 유발될 수도 있고, 이는 사용자로 하여금 열악함을 겪게 할 수 있다. 예를 들어, 패킷이 누락되고/되거나 애플리케이션이 무선 디바이스의 불충분한 프로세싱 자원으로 인해 오작동될 수 있다.
따라서, 무선 디바이스에서 프로세싱 용량을 초과하는 프로세싱 수요로 인한 악영향을 완화하려는 요구가 본 기술 분야에 존재한다.
무선 디바이스의 자원 관리 기술이 본원에서 설명된다. 일 양태에서, 무선 디바이스는 자원 수요와 가용 자원에 기반하여 애플리케이션을 제어한다. 애플리케이션은 최대 프로세싱 용량을 갖는 프로세싱 유닛에 의해 실행될 수 있다. 애플리케이션으로부터의 프로세싱 수요는 모니터링될 수 있다. 적어도 하나의 애플리케이션은 프로세싱 유닛의 최대 프로세싱 용량과 프로세싱 수요에 기반하여 제어될 수 있다. 예를 들어, 데이터 애플리케이션은 (i) 프로세싱 수요가 많이 검출되는 때에 기지국과 교환되는 데이터량을 감소시키거나 (ii) 프로세싱 수요가 낮게 검출되는 때에 기지국과 교환되는 데이터량을 증가시킴으로써 제어될 수 있다. 기지국과 교환되는 데이터량은 예를 들어, 데이터 애플리케이션에 의해 교환되는 미승인된 패킷의 개수를 조정하는 윈도우 사이즈를 조절함으로써 가변될 수 있다.
다른 양태에서, 무선 디바이스는 양호한 성능을 달성하기 위해 무선 디바이스의 상이한 자원들을 관리할 수 있다. 무선 디바이스는 프로세싱 자원, 버스 자원, 메모리 자원, 캐시 자원, 및/또는 기타 자원 각각을 할당하는 애플리케이션에 의해 프로세싱 수요, 버스 수요, 메모리 수요, 캐시 수요 및/또는 기타 자원 수요를 모니터링할 수 있다. 무선 디바이스는 애플리케이션 수요에 기초하여 적어도 하나의 애플리케이션을 제어할 수 있다. 무선 디바이스는 애플리케이션의 우선순위, 각 애플리케이션의 제어가능여부에 관한 표시 등에 기초하여 적어도 하나의 애플리케이션을 선택할 수 있다.
또 다른 양태에서, 무선 디바이스는 자원 수요에 부합하도록 자원 용량을 변화시킨다. 애플리케이션은 프로세싱 용량은 구성가능한 프로세싱 유닛에 의해 실행될 수 있다. 애플리케이션으로부터의 프로세싱 수요는 모니터링될 수 있다. 프로세싱 유닛의 프로세싱 용량은 프로세싱 수요에 기초하여 조정될 수 있다. 예를 들어, 프로세싱 수요가 고 임계치를 초과하는 때에 프로세싱 유닛을 위한 보다 높은 클록 주파수가 선택되며, 프로세싱 수요가 저 임계치 이하로 떨어지는 때에 보다 낮은 클록 주파수가 선택될 수 있다.
본 발명의 다양한 양태와 특징들은 하기에서 보다 상세히 설명된다.
도 1은 무선 디바이스와 기지국의 블록도;
도 2는 자원 관리 시스템을 도시한 도면;
도 3은 CPU 사용에 기초하여 CPU 클록 주파수 조정을 도시한 도면;
도 4는 자원 관리 시스템의 모듈 간의 상호작용을 도시한 도면;
도 5는 2개의 임계치를 갖는 CPU 부하의 기록을 도시한 도면;
도 6은 CPU 부하에 기초하여 윈도우 사이즈의 조정을 도시한 도면;
도 7은 자원 수요에 기초하여 애플리케이션을 제어하는 과정을 도시한 도면;
도 8은 기지국에 의해 수행되는 과정을 도시한 도면;
도 9는 무선 디바이스에서 상이한 자원들을 관리하는 과정을 도시한 도면; 및
도 10은 수요에 부합하도록 자원 용량을 변화시키는 과정을 도시한 도면.
도 1은 무선 통신 네트워크의 무선 디바이스(100)와 기지국(150)의 설계를 도시한 블록도이다. 또한, 기지국(150)은 노드 B, 진화된 노드 B, 액세스 포인트, 기지 송수신국(BTS) 등으로 불릴 수 있다. 도 1에 도시된 설계에서, 기지국(150)은 무선 디바이스와의 무선 통신을 지원하는 송신기/수신기(TMTR/RCVR; 152), 무선 디바이스와의 통신을 위한 다양한 기능을 수행하는 제어기/프로세서(160), 기지국(150)을 위한 프로그램 코드와 데이터를 저장하는 메모리(162) 및 다른 네트워크 엔티티와의 통신을 지원하는 통신(Comm) 유닛(164)을 포함한다. 일반적으로, 기지국은 임의의 개수의 제어기, 프로세서, 메모리, 송신기, 수신기 등을 포함한다.
무선 디바이스(100)는 또한 사용자 장비(UE), 이동국, 단말기, 액세스 단말기, 모바일 장치, 가입자 유닛, 스테이션 등으로 불린다. 무선 디바이스(100)는 이동 전화기, 개인 휴대용 정보 단말기(PDA), 무선 모뎀, 핸드헬드 디바이스, 랩탑 컴퓨터 등이다.
수신 경로에서, 안테나(112)는 기지국(150), 다른 기지국들, 위성들 등에 의해 송신된 신호를 수신하며, 수신 신호를 수신기(RCVR: 114)에 제공한다. 수신기(114)는 수신 신호를 처리(예를 들어, 필터링, 증폭, 주파수 하향변환 및 디지털화)하며, 추가적인 처리를 위해 디지털부(120)에게 샘플을 제공한다. 송신 경로에서, 디지털부(200)는 송신될 데이터를 처리하고 데이터 칩을 송신기(TMTR: 116)에게 제공한다. 송신기(116)는 데이터 칩을 처리하며(예를 들어, 아날로그로 변환, 필터링, 증폭 및 주파수 상향변환), 변조 신호를 생성하며, 신호는 안테나(112)를 통해 송신된다.
디지털부(120)는 다른 애플리케이션들뿐만 아니라 하나 이상의 무선 통신 네트워크와의 통신을 지원하는 다양한 프로세싱, 메모리 및 인터페이스 유닛들을 포함한다. 도 1에 도시된 설계에서, 디지털부(120)는 중앙 처리 유닛(CPU; 130), 제어기/프로세서(132), 메모리(134), 캐시(136) 및 외부 인터페이스(138)를 포함하는데, 이들 모두는 버스(140)와 연결된다. CPU(130)는 임의의 개수의 디지털 신호 처리기(DSP), 축소 명령 집합 컴퓨터(RISC) 프로세서, 범용 프로세서 등을 포함한다. CPU(130)는 데이터 송신을 위한 처리(예를 들어, 부호화 및 변조), 데이터 수신을 위한 처리(예를 들어, 복조 및 복호화) 및 무선 네트워크와 교환되는 데이터를 위 한 상위-계층 프로세싱을 수행한다. 또한, CPU(130)는 기타 애플리케이션을 위한 처리를 수행한다. 제어기/프로세서(132)는 무선 디바이스(100)의 동작을 지시하며, 또는 기타 기능을 수행한다. 메모리(134)는 디지털부(120) 내의 다양한 수단을 위한 데이터 및/또는 명령들을 저장한다. 캐시(136)는 데이터 및/또는 명령들을 고속으로 저장하게 한다. 인터페이스 수단(138)은 주 메모리(142), 입/출력(I/O) 장치 등과 같은 기타 유닛들과 인터페이싱한다. 디지털부(120)는 하나 이상의 주문형 집적회로(ASIC) 및/또는 다른 일정한 타입의 집적회로(IC)로 구현된다.
일반적으로, 무선 디바이스(100)는 도 1에 도시된 장치보다 개수가 더 적거나 혹은 더 많거나, 그리고/또는 상이한 프로세싱, 메모리 및 인터페이스 유닛들을 포함할 수 있다. 디지털부(120)에 포함된 프로세싱 유닛의 개수 및 프로세싱 유닛의 종류는 무선 디바이스(100)에 의해 지원되는 통신 네트워크와 애플리케이션, 비용 및 전력 고려사항 등의 다양한 인자에 의존한다.
무선 디바이스(100)는 무선 광역 네트워크(WWAN), 무선 근거리 네트워크(WLAN), 무선 개인 영역 네트워크(WPAN), 방송 네트워크 등과의 통신을 지원할 수 있다. 용어 "네트워크"와 "시스템"은 종종 상호교환적으로 사용된다. WWAN은 CDMA, TDMA, FDMA, OFDMA, SC-FDMA 및/또는 기타 무선 네트워크이다. CDMA 네트워크는 UTRA(Universal Terrestrial Radio Access), cdma2000 등의 무선 기술을 구현할 수 있다. UTRA는 광대역-CDMA(W-CDMA)와 시분할 동기식 CDMA(TD-SCDMA)를 포함한다. cdma2000은 IS-2000, IS-95 및 IS-856 표준을 포함한다. TDMA 네트워크는 GSM(Global System for Mobile Communications)과 같은 무선 기술을 구현할 수 있 다. OFDMA 네트워크는 진화된 UTRA(E-UTRA), IEEE 802.16, IEEE 802.20, 플래시-OFDM® 등의 무선 기술을 구현할 수 있다. UTRA 및 E-UTRA는 범용이동통신시스템(UMTS)의 일부이다. UTRA, E-UTRA, UMTS 및 GSM은 "제3세대 파트너쉽 프로젝트" (3GPP)라는 명칭의 기관으로부터의 문서에서 설명된다. Cdma2000는 "제3세대 파트너쉽 프로젝트 2" (3GPP2)라는 명칭의 기관으로부터의 문서에서 설명된다. WLAN은 IEEE 802.11, 하이퍼랜(Hiperlan) 등의 무선 기술을 구현한다. WPAN은 블루투쓰와 같은 무선 기술을 구현한다. 방송 네트워크는 휴대용 디지털 영상방송(DVB-H), ISDB-T(Integrated Services Digital Broadcasting for Terrestrial Television Broadcasting) 및 미국형 디지털이동방송(MediaFLO) 등의 무선 기술을 구현한다. 이러한 다양한 네트워크, 무선 기술 및 표준은 이 기술분야에서 알려져 있다.
명확화를 위해, 하기의 설명에서는 무선 디바이스(100)가 UMTS를 지원하는 것임을 가정한다. 3GPP Release 5 이하는 고속 다운링크 패킷 액세스(HSDPA)를 지원한다. 3GPP Release 6 이하는 고속 업링크 패킷 액세스(HSUPA)를 지원한다. HSDPA 및 HSUPA는 각각 다운링크와 업링크를 통해 고속 패킷 데이터 전송을 가능하게 하는 채널들 및 절차들의 세트이다.
무선 디바이스(100)는 또한 다양한 애플리케이션을 지원한다. 애플리케이션은 특정 기능을 수행하는 소프트웨어 모듈 및/또는 펌웨어 모듈을 포함한다. 다른 애플리케이션들이 상이한 무선 기술, 상이한 특징을 갖는 소정의 무선 기술 등을 위해 사용될 수 있다. 예를 들어, 무선 디바이스(100)는 HSDPA, HSUPA, WLAN, 블루투쓰, MediaFLO, 음성, 비디오, 영상 전화, 웹 브라우저, 이메일, 텍스트 편집기, 비디오 게임과 같은 그래픽 애플리케이션, 네트워크보조형 위성측위시스템(assisted Global Positioning System:A-GPS) 등의 애플리케이션을 지원할 수 있다.
무선 디바이스(100)는 무선 디바이스에서 실행되는 모든 애플리케이션들을 지원하는데 사용되는 다양한 종류의 자원을 가지고 있다. 무선 디바이스(100)의 자원은,
·프로세싱 자원- 애플리케이션, 예를 들어 CPU(130)에 대한 프로세싱을 수행하는 자원,
·메모리 자원- 애플리케이션, 예를 들어 메모리(134)에 대한 데이터를 저장하는 자원,
·캐시 자원- 애플리케이션, 예를 들어 캐시(136)에 대한 고속 데이터 저장을 위한 자원, 그리고
·버스 자원- 애플리케이션, 예를 들어 버스(140)에 대한 데이터를 전송하는 자원으로 카테고리화될 수 있다.
무선 디바이스(100)의 자원은 구성가능(configurable)하다. 예를 들어, 무선 디바이스(100)의 프로세싱 용량은 CPU(130)의 클록 주파수를 조정함으로써 가변되며, 버스 용량은 버스(140)의 클록 주파수를 조정함으로써 가변된다. 높은 CPU 및 버스 클록 주파수는 많은 프로세싱 및 버스 자원을 제공하지만 또한 보다 높은 전력 소모를 발생시키며, 이는 무선 디바이스(100)의 배터리 수명을 단축시킨다. 일반적으로, 모든 활동적 애플리케이션의 수요를 충족시키는 충분한 프로세싱과 버스 자원을 제공하여 전력 소모가 최소화되게 하는 최저 CPU 클록 주파수 및 버스 클록 주파수에서 동작하는 것이 바람직하다. 메모리와 캐시 자원의 경우에, 가용 자원량은 설계상으로 고정될 수 있지만 이 자원들은 활동적 애플리케이션에 대해 상이한 방식으로 할당될 수 있다. 예를 들어, 메모리 집약적 애플리케이션은 메모리 집약적이 아닌 애플리케이션보다 많은 캐시 자원 및/또는 메모리 자원이 할당된다.
일반적으로, 소정의 순간에서 임의의 개수의 애플리케이션 및 임의의 타입의 애플리케이션이 무선 디바이스(100)에서 활동적(active)이 된다. 각 활동적 애플리케이션은 일정한 자원 수요 또는 요구사항을 가질 수 있다. 무선 디바이스(100)의 가용 자원은 예를 들어, CPU 주파수와 버스 클록 주파수를 조정함으로써 모든 활동적 애플리케이션의 자원 수요에 부합하도록 구성가능하다. 일부 경우에, 무선 디바이스(100)에 의해 지원되는 최고 CPU 클록 주파수와 버스 클록 주파수는 모든 활동적 애플리케이션의 수요를 충족시키는데 충분한 자원을 제공하지 않을 수 있다. 이 경우에, 하나 이상의 활동적 애플리케이션은 가용 자원을 따르기 위해 자원 수요를 감소시키도록 제어된다.
도 2는 무선 디바이스(100)의 자원 관리 시스템(200)의 설계를 위한 도면을 도시한다. 이러한 설계에서, 시스템(200)은 자원 제어기(210), 자원 모니터(212) 및 하드웨어 관리자(214)를 포함한다. 각 모듈(210, 212 및 214)은 무선 디바이스(100) 내에서 구현되는 하드웨어와 함께 무선 디바이스(100)에서 동작되는 소프트웨어 및/또는 펌웨어로 구현되거나 또는 이들의 조합으로 구현된다.
자원 모니터(212)는 활동적 애플리케이션에 의한 자원 사용을 결정한다. 프 로세싱 자원의 경우에, 자원 모니터(212)는 측정 간격 내에서 CPU(130)에 대한 활동 클록 사이클의 개수를 카운팅한다. 자원 모니터(212)는 측정 간격(interval) 동안에 활동 클록 사이클 개수 및 아이들 클록 사이클 개수에 기초하여 활동적 애플리케이션에 의해 사용되는 프로세싱 자원량을 확인한다. 자원 모니터(212)는 측정 간격 동안에 CPU(130)가 사용되는 시간 퍼센트인 CPU 부하를 결정한다. CPU 부하는 측정 간격에서 총 클록 사이클 개수에 대한 활동 클록 사이클 개수의 비율에 기초하여 연산된다. 측정 간격은 자원 사용 기록의 획득에 있어서의 지연을 감소시킴과 아울러 충분한 평균화(averaging)를 제공하도록 선택된다. 측정 간격은 100 밀리세컨드(ms), 200 ms 등이다. 또한, 자원 모니터(212)는 버스 자원, 메모리 자원, 캐시 자원 등의 기타 자원의 사용량을 결정한다. 자원 모니터(212)는 각 활동적 애플리케이션에 의한, 제어가능한 각 활동적 애플리케이션에 의한, 함께 제어되는 각 활동적 애플리케이션 세트에 의한, 모든 활동 세트 등에 의한 자원 사용량을 결정한다.
하드웨어 관리자(214)는 무선 디바이스(100)에서 다양한 타입의 자원의 설정을 제어한다. 하드웨어 관리자(214)는 프로세싱 자원 수요에 기초하여 CPU(130)의 클록 주파수를 가변시키고, 그리고/또는 버스 자원 수요에 기초하여 버스(140)의 클록 주파수를 가변시킨다. 또한, 하드웨어 관리자(214)는 메모리와 캐시 자원 각각에 대한 수요에 기초하여 메모리(134)와 캐시(136)를 할당/재할당한다. 하드웨어 관리자(214)는 자원 제어기(210)로부터 명령, 지시어, 요구 및/또는 기타 정보를 수신하며, 이에 따라 다양한 타입의 자원을 설정한다.
자원 제어기(210)는 활동적 애플리케이션의 자원 수요가 무선 디바이스(100)의 가용 자원에 부합되도록 시도한다. 자원 제어기(210)는 예를 들어, 애플리케이션이 활동하는 때에 각 활동적 애플리케이션에 대한 관련 정보를 획득한다. 각 활동적 애플리케이션에 대한 정보는,
·자원 사용량을 감소시키도록 애플리케이션이 제어가능한지 여부의 표시,
·애플리케이션의 피크 자원 요구사항 및/또는 최소 자원 요구사항, 그리고
·자원 관리에 유용한 애플리케이션의 우선순위 및/또는 기타 특성들을 포함한다.
소정의 애플리케이션은 자원 수요가 가용 자원을 초과하는 때에 자원 사용량을 감소시키도록 제어되거나 혹은 제어되지 않을 수 있다. 애플리케이션의 제어가능여부는 애플리케이션의 우선순위, 애플리케이션에 의한 예상 자원 사용량 등의 다양한 인자에 종속적이다. 애플리케이션이 제어되는 경우에, 애플리케이션의 동작은 조정되며 그리고/또는 애플리케이션에 할당된 자원량이 가변됨으로써 자원 수요가 가용 자원에 충족된다.
소정의 애플리케이션의 자원 요구사항은 CPU/버스 클록 주파수, 단위 시간당 CPU/버스 사이클의 개수 등의 다양한 파라미터에 의해 제공된다. 명확화를 위해, 프로세싱 및 버스 자원은 하기의 설명에서 CPU/버스 클록 주파수에 의해 정량화된다. 피크 자원 요구사항은 예를 들어, 파일 다운로드인 연장된 소정의 시간 기간 동안에 유지될 필요가 없는 버스티(bursty) 자원 수요를 갖는 애플리케이션에서 사용된다. 최소 자원 요구사항은 예를 들어, 음성 호출인 연장된 시간 기간 동안에 유지될 필요가 있는 일정한 자원 수요를 갖는 애플리케이션에서 사용된다.
애플리케이션의 우선순위 및 기타 특성들은 자원 수요를 제어하도록 애플리케이션을 언제 또는 어떻게 제어할지를 결정하는데 사용된다. 자원 수요가 가용 자원을 초과하는 때에, 저 우선순위 애플리케이션이 먼저 제어되고 고 우선순위 애플리케이션은 마지막에 제어된다. 서로 다른 애플리케이션들은 후술되는 바와 같이 상이한 방식으로 제어된다.
자원 제어기(210)는 활동적 애플리케이션에 의한 실시간 자원 사용량을 전달하는 자원 사용 기록을 수신한다. 자원 제어기(210)는 자원 사용량에 기초하여 하드웨어 구성을 변경할지를 결정한다. 예를 들어, 자원 제어기(210)는 가용 자원이 크게 사용되지 않는 때에 하드웨어 관리자(214)에게 낮은 CPU/버스 클록 주파수를 사용하도록 지시한다. 자원 제어기(210)는 가용 자원이 자원 수요를 불충분하게 충족하는 때에 하드웨어 관리자(214)에게 높은 CPU/버스 클록 주파수를 사용하도록 지시한다. 또한, 자원 제어기(210)는 최고 CPU/버스 클록 주파수를 갖는 가용 자원이 자원 수요를 불충분하게 충족하는 경우에 자원 수요를 감소하도록 하나 이상의 애플리케이션을 제어한다. 따라서, 자원 제어기(210)는 자원 수요가 자원 공급량에 부합되도록 자원 수요뿐만 아니라 가용 자원을 제어한다.
N개의 애플리케이션(220a 내지 220n)이 활동적이 되는데, N은 일반적으로 0이상의 임의의 정수값이다. 도 2에 도시된 예에서, 애플리케이션(220a)은 진단용 애플리케이션이며, 애플리케이션(220b)은 HSDPA 애플리케이션이며, 애플리케이션(220c)은 HSUPA 애플리케이션이며, 애플리케이션(220d)은 영상 전화 애플리케이션 이고, 또한 애플리케이션(220n)은 백그라운드 다운로드를 위한 것이다. 각 애플리케이션(220)은 활동적이 되는 때에 자원 제어기(210)에 등록하며, 전술한 바와 같이 예를 들어, 관련 정보를 제공한다. 제어가능한 각 활동적 애플리케이션은 자원 제어기(210)로부터 명령을 수신하여 적절한 때에 그 동작을 조정함으로써 자원 사용량을 감소시킨다. 일반적으로, 애플리케이션(220)은 임의의 타입의 자원에 대해 제어된다. 명확화를 위해, 하기의 설명의 대부분은 CPU 자원으로 불리는 프로세싱 자원의 제어에 관한 것이다.
CPU(130)는 기지국(150)과의 통신을 지원하는 애플리케이션뿐만 아니라 무선 디바이스(100)에서 동작되는 기타 애플리케이션을 실행한다. 자원 제어기(210)는 양호한 성능을 달성하기 위해 CPU(130), 기타 자원 및/또는 활동적 애플리케이션의 동작을 제어한다.
일 양태에서, 무선 디바이스(100)의 가용 자원은 활동적 애플리케이션으로부터의 자원 수요에 기초하여 조정된다. 예를 들어, CPU 부하가 실시간으로 모니터링되고, CPU 클록 주파수는 CPU 부하에 기초하여 조정된다. 일 설계구현에서, CPU 부하는 고 임계치와 저 임계치에 대해 비교된다. CPU 부하가 고 임계치를 초과하는 때에, (이용가능한) 높은 CPU 클록 주파수가 선택된다. CPU 부하가 저 임계치 이하로 떨어지는 때에, (이용가능한) 낮은 CPU 클록 주파수가 선택된다.
다른 양태에서, 활동적 애플리케이션은 필요한 경우에 제어되며, 이에 따라 자원 수요는 무선 디바이스(100)의 가용 자원에 의해 충족된다. 자원 수요는 실시간 모니터링을 통해 확인된다. 가용 자원은 예를 들어, 자원 수요에 기초하여 다른 클록 주파수를 선택함으로써 증가하거나 감소된다. 하지만, 가용 자원이 최대 용량에 도달하는 때에, 활동적 애플리케이션은 자원 수요가 가용 자원 이하로 감소하도록 제어된다.
예를 들어, CPU(130)가 고 임계치를 초과하는 CPU 부하로 동작하는 경우, 자원 제어기(210)는 이 상태를 보정하도록 조치를 한다. 자원 제어기(210)는 CPU 부하에 기초하여 기지국(150)으로부터의 다운링크 전송 및/또는 무선 디바이스(100)로부터의 업링크 전송을 조정/조절한다. 대안적으로 또는 부가적으로, 자원 제어기(210)는 무선 디바이스(100)에서 실행되는 하나 이상의 다른 활동적 애플리케이션의 성능 감소를 지시한다. 예를 들어, 자원 제어기(210)는 백그라운드 애플리케이션(예를 들어, 다운로드 프로그램)에게 CPU 수요를 감소시키도록 저속으로 동작하게끔 지시하며, 이는 고 우선순위 애플리케이션(예를 들어, 음성 호출)을 위한 CPU 자원을 자유롭게 사용하게 한다. 대안적으로, 자원 제어기(210)는 백그라운드 애플리케이션을 일시적으로 중지하거나 종료시킨다. 임의의 경우에, 백그라운드 애플리케이션의 제어는 고 우선순위 애플리케이션의 서비스 품질(QoS)과 타협하지 않는다.
도 3은 활동적 애플리케이션으로부터의 CPU 수요에 기초하여 CPU 클록 주파수를 조정하는 일 예를 도시한다. 본 예에서, 3개의 CPU 클록 주파수(f1, f2 및 f3)가 지원되는데, 여기서 f1 < f2 < f3이다. 최대 CPU 용량은 최고 클록 주파수(f3)로 달성된다.
초기에, CPU(130)는 A에서 최저 클록 주파수(f1)로 동작한다. CPU 부하는 활동적 애플리케이션으로부터의 높은 수요로 인해 증가하며 B에서 최고 임계치에 도달한다. CPU 클록 주파수는 C에서 f1에서 f2로 스위칭되고, CPU 부하는 더 높은 클록 주파수(f2)에서의 더 큰 CPU 용량으로 인해 D에서 떨어진다. CPU 부하는 높은 수요로 인해 다시 증가하며 E에서 고 임계치에 도달한다. CPU 클록 주파수는 F에서 f2에서 f3로 스위칭하며, CPU 부하는 보다 높은 클록 주파수(f3)에서의 더 큰 CPU 용량으로 인해 G에서 떨어진다. CPU 부하는 높은 수요로 인해 다시 증가하며 H에서 고 임계치에 도달한다.
최고 CPU 클록 주파수(f3)가 이미 선택되었기에, 자원 제어기(210)는 자원 수요를 감소시키도록 활동적 애플리케이션의 제어를 시작한다. CPU 부하는 활동적 애플리케이션의 제어에 응답하여 감소한다. 자원 제어기(210)는 CPU 부하가 I에서 수락가능 레벨에 도달하는 때에 애플리케이션의 제어를 중단한다. 이후에, CPU 부하는 높은 수요로 인해 다시 증가하며 J에서 고 임계치에 도달한다. 자원 제어기(210)는 활동적 애플리케이션의 제어를 시작하며, CPU 부하는 이에 응답하여 감소한다. CPU 부하가 K에서 수락가능 레벨에 도달하는 때에, 자원 제어기(210)는 애플리케이션의 제어를 중단한다.
이후에, CPU 부하는 활동적 애플리케이션으로부터의 낮은 수요로 인해 감소하며, L에서 저 임계치에 도달한다. 수요가 저 임계치 혹은 저 임계치 이하에 있는 소정의 시간 기간 이후에, CPU 클록 주파수는 M에서 f3에서 f2로 스위칭된다. CPU 부하는 보다 낮은 클록 주파수(f2)에서의 낮은 CPU 용량으로 인해 N에서 증가한다. CPU 부하는 낮은 수요로 인해 다시 감소하며, O에서 저 임계치에 도달한다. 소정의 시간 기간 이후에, CPU 클록 주파수는 P에서 f2에서 f1로 스위칭되며, CPU 부하는 최저 클록 주파수(f1)에서의 더 낮은 CPU 용량으로 인해 Q에서 증가한다.
도 3에 도시된 설계에서, CPU 클록 주파수를 조정하여 활동적 애플리케이션을 제어하기 위해 2개의 임계치가 사용된다. 도 3에 도시된 바와 동일한 고 임계치 및 저 임계치가 모든 CPU 클록 주파수에 대해 사용된다. 대안적으로, 서로 다른 고 임계치 및 저 임계치 세트가 각 CPU 클록 주파수에 대해 사용되며, 이는 클록 주파수에 대한 CPU 용량에 기초하여 선택된다. 다른 설계에서, 2개 이상의 임계치가 CPU 클록 주파수를 조정하고 그리고/또는 활동적 애플리케이션을 제어하는데 사용될 수 있다. 동일한 임계치가 모든 활동적 애플리케이션에 대해 사용가능하다. 대안적으로, 서로 다른 활동적 애플리케이션들은 서로 다른 임계치 세트를 가질 수 있다. 각 활동적 애플리케이션은 그 애플리케이션에 적용가능한 임계치 세트에 대하여 CPU 부하에 기초하여 제어될 수 있다.
도 3은 CPU 수요에 기초하여 CPU 용량을 가변시키기 위한 CPU 클록 주파수의 조정을 도시한다. 버스 자원과 같은 기타 자원들은 유사한 방식으로 제어될 수 있다.
도 4는 도 2의 자원 제어기(210), 자원 모니터(212), 하드웨어 관리자(214) 및 애플리케이션(220a 내지 220n)간의 상호작용(interaction)을 도시한다. 자원 제어기(210)는 자원 모니터(212)로부터 자원 사용 기록을 수신한다. 각 자원 사용 기록은 CPU 부하 및/또는 무선 디바이스(100)의 다른 자원의 사용량을 표시한다. 자원 제어기(210)는 가용 자원이 활동적 애플리케이션의 자원 수요를 충족하게끔 충분한지를 결정한다. 자원 제어기(210)는 하드웨어 관리자(214)에게 (예를 들어, 보다 높은 클록 주파수 또는 보다 낮은 클록 주파수에 대한) 하드웨어 명령을 송신하며, 하드웨어 관리자(214)는 자원 용량을 가변시키도록 하드웨어 구성을 설정한다. 또한, 자원 제어기(210)는 필요한 때에 각 개별 활동적 애플리케이션(220)에게 제어 명령을 송신하여 애플리케이션으로부터의 자원 수요를 제어한다.
자원 제어기(210)는 다양한 방식으로 제어를 위해 활동적 애플리케이션을 선택한다. 일 설계에서, 자원 제어기(210)는 우선순위뿐만 아니라 애플리케이션의 제어가능여부에 관한 표시에 기초하여 제어를 위한 활동적 애플리케이션을 선택한다. 자원 제어기(210)는 먼저 최저 우선순위를 갖는 애플리케이션을, 다음으로 그 다음 최저 우선순위를 갖는 애플리케이션을 선택하는 식으로, 마지막에 최고 우선순위를 갖는 애플리케이션을 선택하여 제어할 수 있다. 예를 들어, 자원 제어기(210)는 하기의 순서로 애플리케이션을 선택한다.
·수신 서비스와 관련되지 않은 진단 애플리케이션 및 기타 애플리케이션
·백그라운드 애플리케이션 및 지연-허용 애플리케이션 (예를 들어, 데이터 다운로드) 및
·쌍방향 애플리케이션 및 지연-민감성 애플리케이션 (예를 들어, 영상 전 화)
일부 경우에, 진단 애플리케이션의 제어는 충분한 양으로 자원 수요를 감소시킨다. 진단 애플리케이션의 제어가 충분하지 않은 경우에, 백그라운드 애플리케이션이 후속적으로 제어되며, 인터랙티브(interactive) 애플리케이션이 마지막 수단으로서 제어된다. 이러한 순서는 사용자 경험에 대한 영향을 감소시킨다.
다른 설계에서, 자원 제어기(210)는 QoS 요구사항에 기초하여 제어를 위한 활동적 애플리케이션을 선택한다. 자원 제어기(210)는 먼저 QoS 요구사항이 없는 애플리케이션을 선택하며, 다음으로 덜 엄중한 QoS 요구사항을 갖는 애플리케이션을 선택하는 식으로, 마지막에 가장 엄중한 QoS 요구사항을 갖는 애플리케이션을 선택한다. 자원 제어기(210)는 QoS 요구사항을 충족시키기 위해 각 활동적 애플리케이션에게 충분한 자원을 할당한다. 자원 제어기(210)는 자원 수요가 가용 자원을 초과하는 때에 QoS 요구사항 없이 활동적 애플리케이션에 최소 자원을 할당하거나 자원을 할당하지 않는다.
UMTS에서, 호는 트래픽 데이터를 전송하기 위한 하나 이상의 무선 액세스 베어러(RAB)와 시그널링을 전송하기 위한 하나 이상의 시그널링 무선 베어러(SRB)을 갖는다. 각 RAB는 일정한 특성을 갖는 개별 데이터 흐름으로 고려된다. 각 RAB는 인터랙티브, 스트리밍, 쌍방향 또는 백그라운드와 같은 특정 클래스를 위한 트래픽 데이터를 전송한다. 일 설계에서, SRB는 제어되지 않는다. 예를 들어, RAB들 간에서 동등한 쌍방향 클래스와 백그라운드 클래스를 전송하는 RAB들이 먼저 제어된다. 다음으로, 예를 들어, RAB들 간에서 동등한 인터랙티브 클래스와 스트리밍 클래스 를 전송하는 RAB들이 제어된다. 이러한 설계는 데이터 흐름이 이들의 트래픽 클래스에 의해 결정되는 바와 같이 우선순위에 기초한 순서로 제어되도록 보장한다. 일반적으로, 저 우선순위 데이터 흐름이 먼저 제어되고, 고 우선순위 데이터 흐름이 다음으로, 예를 들어 저 우선순위 데이터 흐름이 완전히 제어된 이후에 제어된다.
자원 제어기(210)는 상이한 방식으로 서로 다른 애플리케이션을 제어한다. 진단 애플리케이션의 경우, 자원 제어기(210)는 애플리케이션에 의해 기록될 이벤트 및/또는 메시지 타입을 제어하며, 혹은 애플리케이션을 디스에이블(disable)할 수 있다. 백그라운드 애플리케이션의 경우, 자원 제어기(210)는 이러한 애플리케이션에 할당된 자원량(예를 들어, CPU 속도)을 감소시키며, 다운링크 및/또는 업링크 상의 데이터 전송속도를 감소하며, 또한 임시적으로 애플리케이션을 중단시킨다. 쌍방향 애플리케이션의 경우, 자원 제어기(210)는 데이터 전송속도, 프레임 전송속도 등을 감소시킨다.
또한, 자원 제어기(210)는 제어를 위한 활동적 애플리케이션을 선택하고 그리고/또는 선택된 애플리케이션을 제어하기 위해 조건부 룰을 적용한다. 조건부 룰은 하나 이상의 소정의 조건이 발생하는 때에 적용되는 룰이다. 예를 들어, 자원 제어기(210)는 HSUPA에 대한 업링크 데이터 전송속도에서와 유사한 방식으로 HSDPA에 대한 다운링크 전송 속도를 가변시킨다.
일 설계에서, 자원 모니터(212)는 (예를 들어, 각 측정 간격에서 주기적으로) CPU 부하를 판정하며, 임계치 세트에 대해 CPU 부하를 비교하고 CPU 부하가 임계치를 초과할 때마다 자원 제어기(210)에게 기록을 송신한다. 이 설계는 자원 모 니터(212)로부터 자원 제어기(210)로 송신되는 기록의 개수를 감소시킨다.
도 5는 고 임계치와 저 임계치의 2개의 임계치를 갖는 CPU 부하를 기록하는 설계를 도시한다. CPU 부하는 3개의 가능한 범위 중 하나가 된다.
·오프 범위 - 0% 부하에서 저 임계치를 커버하며,
·중간 범위 - 저 임계치에서 고 임계치를 커버하며, 그리고
·고역 범위 - 고 임계치에서 100% 부하를 커버한다.
또한, 3개의 범위는 CPU 상태로 불린다. 자원 모니터(212)는 CPU 부하가 저역 범위로 전이하는 때마다 낮은 CPU 부하 기록을 송신하며, CPU 부하가 중간 범위로 전이하는 때마다 중간 CPU 부하 기록을 송신하고 CPU 부하가 고역 범위로 전이하는 때마다 높은 CPU 부하 기록을 송신한다.
일 설계에서, 모든 활동적 애플리케이션에 대해 동일한 고 임계치와 저 임계치가 사용된다. 이러한 설계에서, 자원 제어기(210)는 자원 모니터(212)로부터 낮은, 중간 및 높은 CPU 부하 기록들을 수신하며 필요한 경우에 활동적 애플리케이션을 제어한다. 다른 설계에서, 서로 다른 고 임계치 및 저 임계치 세트가 각 활동적 애플리케이션에 대해 사용된다. 이러한 설계에서, 자원 모니터(212)는 애플리케이션에 대한 임계치 세트에 기초하여 각 애플리케이션에 대한 낮은, 중간 및 높은 CPU 부하 기록들을 생성한다. 자원 제어기(210)는 애플리케이션에 대해 수신된 낮은, 중간 및 높은 CPU 부하 기록들에 기초하여 각 애플리케이션을 제어한다. 고 임계치는 90% 내지 100%의 값으로 설정된다. 저 임계치는 80% 내지 90%의 값으로 설정된다. 또한, 고 임계치와 저 임계치는 다른 값으로 설정될 수 있다.
각 애플리케이션은 그 애플리케이션에 적절한 방식으로 제어된다. HSDPA와 HSUPA와 같은 데이터 애플리케이션은 후술되는 바와 같이 다양한 방식으로 제어된다.
HSDPA의 경우, 기지국(150)은 각 2 ms 전송 시간 간격(TTI)으로 고속 다운링크 공유 채널(HS-DSCH)을 통해 하나 이상의 사용자들에게 데이터를 송신한다. HS-DSCH는 시분할 다중화 및 코드분할 다중화를 통해 모든 사용자에게 공유된다. 각 사용자는 사용자에 의해 관찰되는 다운링크 채널 품질을 전달하는 채널 품질 표시기(CQI)를 주기적으로 송신한다. 기지국(150)은 모든 사용자로부터의 CQI를 수신하며 CQI 정보를 이용하여 (i) 후속 TTI에서 다운링크 전송을 위한 하나 이상의 사용자를 선택하고 (ii) 각 스케쥴링된 사용자에 대한 데이터 전송속도를 선택한다. 일반적으로, 고속 다운링크 채널 품질을 관찰함으로써 사용자에게 보다 많은 데이터가 송신된다.
HSDPA의 경우, 기지국(150)은 링크 계층의 무선 링크 프로토콜(RLC)을 이용하여 프로토콜 데이터 단위(PDU)의 데이터를 송신한다. 또한, RLC PDU는 하기의 설명에서 PDU 또는 패킷으로 불린다. 각 PDU는 40 바이트, 80 바이트 등이 될 수 있다. RLC의 경우, 송신기는 수신기에게 PDU를 송신하는데, 각 PDU는 새로운 PDU가 송신될 때마다 증가되는 시퀀스 번호에 의해 식별된다. 수신기는 각 수신 PDU를 해독하며 PDU가 정확하게 해독된 경우에 승인(ACK)을 송신한다. 처리량을 개선하기 위해, 송신기는 이전에 송신된 PDU에 대한 ACK를 기다리지 않고서 새로운 PDU를 송신한다. RLC 윈도우는 송신기로부터 보여지는 때에 ACK가 없는 미해결의 PDU의 최 대 개수를 결정한다. N이 RLC 윈도우가 시작되는 미승인 PDU의 최대 개수를 표시하며 W가 RLC 윈도우 크기를 나타내는 경우에, 송신될 최고 시퀀스 번호는 N+W가 된다. 송신기는 RLC 윈도우 시작 이전에 송신된 모든 PDU에 대한 ACK가 수신되지 않는 경우 새로운 PDU를 송신할 수 없다. RLC 윈도우는 크기에서 가변되며 1 내지 2047개의 PDU를 커버한다. HSDPA용 RLC 윈도우 사이즈는 기지국(150)에게 윈도우 명령을 송신함으로써 무선 디바이스(100)에 의해 제어된다. 무선 디바이스(100)는 적절한 RLC 윈도우 사이즈를 선택하여 기지국에게 이 윈도우 사이즈를 송신함으로써 기지국(150)으로부터 무선 디바이스(100)로 송신되는 데이터량을 제어한다. RLC 윈도우를 감소시킴으로써 데이터량은 대응적으로 감소하는데, 이는 작은 RLC 윈도우가 기지국으로 하여금 새로운 PDU를 송신하기 이전에 이전 PDU에 대한 ACK를 기다리게 하기 때문이다. HSUPA의 업링크 전송의 경우, 기지국(150)은 무선 디바이스로부터 송신되는 데이터량을 제어하기 위해 무선 디바이스(100)에게 명령을 송신한다.
일 설계에서, 데이터 애플리케이션은 그 데이터 애플리케이션에 대한 윈도우 사이즈를 조정함으로써 제어된다. 윈도우 사이즈는 애플리케이션에 의해 송신/수신되는 데이터의 양을 감소함으로써 줄어드는데, 이는 애플리케이션으로부터의 자원 수요를 감소시킨다. 역으로, 윈도우 사이즈는 애플리케이션에 의해 송신/수신되는 데이터량을 확장함으로써 증가되는데, 이는 애플리케이션에 의한 자원 사용을 증가시킨다. 윈도우 사이즈 조정은 (예를 들어, HSDPA에 의한) 다운링크 송신뿐만 아니라 (예를 들어, HSUPA에 의한) 업링크 송신에서 사용된다. 다운링크의 경우, 선택 된 윈도우 사이즈는 기지국(150)에 송신된다. 업링크의 경우, 송신기는 무선 디바이스(100)에 위치되며, 윈도우 사이즈는 기지국(150)에게 임의의 명령을 송신할 필요없이 직접적으로 제어된다.
데이터 애플리케이션용 윈도우 사이즈는 CPU 수요에 기초하여 다양한 방식으로 제어된다. 일 설계에서, 윈도우 사이즈는 최소값과 최대값 사이에서 가변되며, 이는 다양한 인자에 기초하여 선택된다. 윈도우 사이즈는 높은 CPU 부하 기록이 수신되는 때에 급작스럽게 최소값으로 축소된다. 윈도우 사이즈의 이러한 급작스런 축소는 가능한한 신속하게 자원사용을 자유롭게 하는데, 이는 고 우선순위 애플리케이션이 지연을 견디지 않을 것이며 또한 가능한 신속하게 제공되어야 하기 때문이다. 또한, 이러한 급작스런 축소에 의해 고 임계치는 거의 100%로 설정되며, 이는 CPU 자원의 보다 많은 이용을 허용한다. CPU 수요가 떨어지는 때에, 윈도우 사이즈는 단계적으로 점진적으로 증가한다. 이 단계적인 증가는 높은 CPU 부하 기록과 낮은 CPU 부하 기록의 교대로 인한 핑퐁 효과를 피하게 한다 (예를 들어, 윈도우 사이즈는 최소값과 최대값 간에서 토글링된다). 윈도우가 최대값 이하인 동안에, 윈도우 사이즈는 CPU 부하 기록에 기초하여 단계적으로 증가하거나 감소할 수 있다. 윈도우가 최대값에 도달한 때에, 윈도우 사이즈는 이후 높은 CPU 부하 기록이 수신되는 때에 급작스럽게 최소값으로 축소한다.
데이터 애플리케이션이 현재 제어 중인지를 표시하기 위해 플래그가 사용된다. 플래그는 초기에 오프(OFF)로 설정되며, 이후 높은 CPU 부하 기록이 수신되며 플래그가 오프인 때에 오프에서 온(ON)으로 변경되며, 또한 플래그가 온이며 윈도 우 사이즈가 최대값으로 설정되는 때에 온에서 오프로 다시 변경된다. 높은 CPU 부하 기록이 수신되며 플래그가 오프로 설정된 때에, 데이터 애플리케이션에 대한 최소값으로 축소된다. 높은 CPU 부하 기록이 수신되는 때에 플래그가 온으로 설정되어 있는 경우, 윈도우 사이즈는 최소값에 도달할 때까지 각 갱신 간격에서 주기적으로 하향 단계로 축소된다. 낮은 CPU 부하 기록이 수신된 때에, 윈도우 사이즈는 최대값에 도달할 때까지 주기적으로 상향 단계로 증가한다. 중간 CPU 부하 기록이 수신된 때에, 윈도우 사이즈는 현재값에서 유지된다.
도 6은 데이터 애플리케이션을 위한 윈도우 사이즈 조정의 일 예를 도시한다. 본 예는 CPU 부하에 대한 고 임계치 및 저 임계치와 낮은, 중간 및 높은 CPU 부하 기록을 갖는 도 5에 도시된 설계의 일 예이다. 시간(T0)에서, 플래그는 오프이고 윈도우 사이즈는 최대값으로 설정된다. 시간(T1)에서, 높은 CPU 부하 기록이 수신되며, 데이터 애플리케이션의 제어가 시작되어, 플래그는 온으로 설정되고 윈도우 사이즈는 최소값으로 축소된다. 낮은 CPU 부하 기록이 시간(T2)에서 수신되고, 윈도우 사이즈는 상향 단계로 증가한다. 윈도우 사이즈는 시간(T3)와 시간(T4)의 각 갱신 간격 이후에 상향 단계로 증가한다.
중간 CPU 부하 기록이 시간(T5)에서 수신되며, 윈도우 사이즈는 유지된다. 높은 CPU 부하 기록이 시간(T6)에서 수신되며, 플래그가 온이므로 윈도우 사이즈는 하향 단계로 축소된다. 윈도우 사이즈는 시간(T7)에서의 갱신 간격 이후에 하향 단계 로 축소된다. 중간 CPU 부하 기록이 시간(T8)에서 수신되고, 윈도우 사이즈는 유지된다. 낮은 CPU 부하 기록이 시간(T9)에서 수신되고, 윈도우 사이즈는 상향 단계로 증가한다. 윈도우 사이즈는 시간(T10)과 시간(T11)에서의 각 갱신 간격 이후에 상향 단계로 증가한다. 윈도우 사이즈는 시간(T11)에서 최대값에 도달하며, 플래그는 오프로 설정되고, 애플리케이션 제어는 종료된다.
플래그가 온인 때에, 윈도우 사이즈를 증가하거나 축소하는데 타이머가 사용된다. 타이머는 윈도우 사이즈 조정 이후에 시작되며 갱신 간격을 카운트 다운한다. 타이머가 만료된 때에, 다른 윈도우 사이즈 조정이 이루어지며 타이머는 다시 시작된다. 중간 CPU 부하 기록이 수신된 때에 타이머는 중지되며, 낮은 또는 높은 CPU 부하 기록이 수신되는 때에 중지된 값으로부터 재개되거나 혹은 재시작된다.
최소 윈도우 사이즈 및 최대 윈도우 사이즈, 상향 단계 크기 및 하향 단계 크기 그리고 갱신 간격과 같은 파라미터들은 원하는 성능을 달성하기 위해 적절한 값으로 설정된다. 최소 윈도우 사이즈는 데이터 애플리케이션에 대한 최소 성능을 달성함과 아울러 다른 프로토콜에 대한 불리한 효과를 회피하기 위해 선택된다. 예를 들어, TCP 패킷이 재전송 타임아웃(RTO) 내에 송신되어 승인되지 않는 경우에 전송 제어 프로토콜(TCP)은 타임아웃된다. 타임아웃이 발생하는 때에, TCP는 혼잡 제어를 수행하고 데이터 흐름을 감소시키는데, 이는 복구에 오랜 시간이 걸리며 결과적으로 성능을 열화시킨다. 최소 윈도우 사이즈는 적어도 하나의 TCP 패킷이 TCP 타임아웃 발생 이전에 송신되어 승인되도록 충분히 큰 값으로 설정된다. 일 설계에 서, 최소 윈도우 사이즈는 80 PDU로 설정되며, 이는 TCP 타임아웃을 회피시킨다. 최대 윈도우 사이즈는 호 설정 또는 재구성 동안에 획득되는 값 혹은 2047 이하로 설정된다. 상향 및 하향 단계 크기는 최대값의 사분의 일로 설정되며, 이에 따라 윈도우 사이즈는 도 6에서 도시된 바와 같이 4개의 갱신 간격으로 최대값으로 증가한다. 또한, 기타 상향 및 하향 단계 크기가 사용가능하다. 갱신 간격은 200 ms 또는 다른 기간으로 설정된다.
다운링크 데이터 애플리케이션(예를 들어, HSDPA)의 경우, 새로운 윈도우 사이즈를 갖는 윈도우 명령은 윈도우 사이즈가 변경될 때 마다 기지국(150)에 송신된다. 기지국(150)이 윈도우 명령에 대한 ACK를 송신하지 않는 경우, 윈도우 명령은 신뢰성을 개선하기 위해 여러 차례 송신된다. 업링크 데이터 애플리케이션(예를 들어, HSUPA)의 경우, 새로운 윈도우 사이즈가 무선 디바이스(100)에서 적용된다.
데이터 애플리케이션은 하나 이상의 데이터 흐름을 가지며, 각 데이터 흐름은 다른 RAB와 대응한다. 모든 데이터 흐름에 대해 단일 윈도우가 유지된다. 대안적으로, 각 데이터 흐름에 대해 개별 윈도우가 유지되며 데이터 흐름에 대한 파라미터 세트에 기초하여 조정가능하다.
도 6은 데이터 애플리케이션을 제어하는 특정 설계를 도시한다. 또한, 데이터 애플리케이션은 다른 방식으로 제어가능하다. 다른 설계에서, 윈도우 사이즈는 플래그 온 또는 오프에 관계없이 높은 CPU 부하가 수신될 때 마다 급작스럽게 최소값으로 축소된다. 또 다른 설계에서, 2개 이상의 임계치가 CPU 부하를 기록하는데에 사용되며, 3개 이상의 서로 다른 CPU 부하 기록이 데이터 애플리케이션을 제어 하는데에 사용된다. 이러한 설계에서, 단계 크기는 CPU 부하 기록에 종속적이다.
또 다른 설계에서, 데이터 애플리케이션은 데이터 소스에 의해 생성되는 데이터량을 조정함으로써 제어된다. 예를 들어, 업링크 데이터 애플리케이션을 위한 데이터가 USB(Universal Serial Bus)를 통해 무선 디바이스(100)와 연결된 랩탑 컴퓨터로부터 도달되는 경우, 랩탑 컴퓨터 및/또는 USB는 무선 디바이스(100)에 의해 수신되는 데이터량을 제한하도록 제어된다. 다른 예로서, 업링크 전송용 데이터가 무선 디바이스(100)의 프로토콜 스택의 TCP 엔티티로부터 도달되는 경우, TCP 엔티티는 하부 계층으로 전달되는 데이터량을 제한하도록 제어된다.
또 다른 설계에서, 데이터 애플리케이션은 CQI 피드백에 기초하여 제어된다. 무선 디바이스(100)는 다운링크 채널 품질을 주기적으로 측정하며, 측정된 채널 품질을 표시하는 CQI를 송신한다. 기지국(150)은 기록된 CQI를 사용하여 무선 디바이스(100)로의 다운링크 전송을 위한 데이터 전송속도를 선택한다. CPU 부하가 높지 않거나 다운링크 데이터 애플리케이션이 제어되지 않는 때에, 무선 디바이스(100)는 측정된 CQI를 송신한다. CPU 부하가 높은 때에, 무선 디바이스(100)는 측정된 CQI보다 낮은 CQI를 송신하며, 이에 따라 기지국(150)은 보다 낮은 데이터 전송속도를 선택하며 보다 적은 데이터를 무선 디바이스(100)에게 송신한다. 따라서, 무선 디바이스(100)는 기지국(150)으로부터 송신되는 데이터량을 제어하기 위해 적절한 CQI를 송신한다.
또 다른 설계에서, 데이터 애플리케이션은 CQI 피드백과 블록 에러율(BLER)에 기초하여 제어된다. 기지국(150)은 무선 디바이스(100)에게 PDU를 송신한다. 무 선 디바이스(100)는 각 수신 PDU의 해독을 시도하며, 만일 PDU가 정확하게 해독되는 경우에 ACK를 되돌려주며 또한 PDU가 에러로 해독되는 경우에 승인 부정(NAK)을 되돌려준다. 기지국(150)은 다운링크 전송의 BLER을 판정하는데, BLER은 송신된 총 PDU 개수에 대한 에러로 해독된 PDU 개수의 비율이다. 기지국(150)은 무선 디바이스(100)에 의해 기록된 CQI와 기지국(150)에 의해 유지되는 BLER에 기초하여 다운링크 전송을 위한 데이터 전송속도를 선택한다. BLER이 낮은 경우에, 예를 들어 목표치 BLER 이하인 경우에, 기지국(150)은 기록된 CQI에 대한 오프셋값을 부가하며 조정된 CQI에 기초하여 데이터 전송속도를 선택한다. 기지국(150)은 목표치 BLER을 달성하기 위해 CQI 오프셋값을 상향으로 혹은 하향으로 조정한다. 기지국(150)에 의해 부가된 CQI 오프셋값은 무선 디바이스(100)에 의한 CQI 감소를 상쇄시킨다. 기지국(150)에 의해 부가되는 CQI 오프셋값에 대응하기 위해, 무선 디바이스(100)는 주기적으로 NAK를 송신하며, 이에 따라 기지국(150)에서 측정되는 BLER은 목표치 BLER에 근접하며 기지국(150)에 의해 부가되는 CQI 오프셋값은 적게 되거나 제로(0)가 된다.
또한, 데이터 애플리케이션은 다른 메커니즘을 사용한 다른 방식으로 제어된다. 전술된 설계의 조합이 또한 데이터 애플리케이션에서 사용가능하다. 예를 들어, 먼저 CQI 피드백에 기반한 제어가 소정의 시간 기간동안 수행되며, 소정의 시간 기간 이후에 윈도우 사이즈 조정에 기초한 제어가 트리거링된다. 다른 예로서, CQI 피드백과 윈도우 사이즈 조정에 기반한 제어가 동시에 수행될 수 있다.
도 7은 자원 수요에 기초하여 애플리케이션을 제어하기 위해 무선 디바이스 에 의해 수행되는 과정(700)의 설계를 도시한다. 무선 디바이스에서 동작되는 애플리케이션은 최대 프로세싱 용량을 갖는 프로세싱 유닛에 의해 실행된다(블록 712). 프로세싱 유닛은 하나 이상의 CPU, DSP, 범용 프로세서 등과 이들의 조합을 포함한다. 애플리케이션으로부터의 프로세싱 수요는 제어기에 의해 모니터링되는데, 제어기는 무선 디바이스상의 소프트웨어 및/또는 하드웨어이다(블록 714). 적어도 하나의 애플리케이션은 프로세싱 수요 및 프로세싱 유닛의 최대 프로세싱 용량에 기초하여 제어된다(블록 716).
제어 대상인 적어도 하나의 애플리케이션은 애플리케이션의 우선순위에 기초하여 무선 디바이스에서 실행되는 애플리케이션들 중에서 선택된다. 저 우선순위 애플리케이션이 먼저 제어되며, 저 우선순위 애플리케이션이 완전히 제어된 이후에 고 우선순위 애플리케이션이 제어된다.
제어되는 적어도 하나의 애플리케이션은 데이터 애플리케이션을 포함한다. 이 데이터 애플리케이션은 (i) 높은 프로세싱 수요가 검출되는 때에 기지국과 교환되는(예를 들어, 기지국으로 송신되는 그리고/또는 기지국으로부터 수신되는) 데이터량을 감소함으로써 또는 (ii) 낮은 프로세싱 수요가 검출되는 때에 기지국과 교환되는 데이터량을 증가함으로써 제어한다. 높은 프로세싱 수요는 고 임계치를 초과하는 프로세싱 수요에 대응하며, 낮은 프로세싱 수요는 저 임계치 이하로 하락하는 프로세싱 수요에 대응한다.
데이터 애플리케이션은 프로세싱 수요와 최대 프로세싱 용량에 기초하여 윈도우 사이즈를 조정함으로써 제어된다. 윈도우 사이즈는 데이터 애플리케이션에 의 해 교환되는 미승인 패킷의 개수를 조정한다. 윈도우 사이즈는 최대값과 최소값 간에서 조정되는데, 여기서 최소값은 TCP 및/또는 다른 프로토콜에 의한 타임아웃을 회피하도록 선택된다. 높은 프로세싱 수요가 검출되는 때에, 윈도우 사이즈는 (i) 데이터 애플리케이션이 아직 제어되지 않는 경우에 최소값으로 급작스럽게 감소하거나 또는 (ii) 데이터 애플리케이션이 제어되는 경우에 단계적으로 감소한다. 낮은 프로세싱 수요가 검출되는 때에, 윈도우 사이즈는 최대값까지 단계적으로, 예를 들어 각 갱신 간격에서 한 단계씩 상향으로 증가한다. 중간 프로세싱 수요가 검출되는 때에 윈도우 사이즈는 유지된다. 다운링크의 경우, 윈도우 사이즈는 신뢰성을 개선하기 위해 한번 또는 여러 차례 기지국으로 송신된다. 윈도우 사이즈는 HSDPA에서 RLC에 의해 사용된다.
또한, 데이터 애플리케이션은 CQI 피드백에 기초하여 제어된다. CQI는 기지국에 대해 무선 디바이스에서 측정되는 다운링크 채널 품질에 기초하여 획득된다. 높은 프로세싱 수요가 검출되는 때에, CQI는 감소되며, 감소된 CQI는 기지국에 송신된다. 또한, 높은 프로세싱 수요가 검출되는 때에, 패킷이 정확하게 해독되는 경우에도 기지국으로부터 수신된 패킷에 대한 소정의 퍼센트에 대한 NAK가 송신된다. 또한, 데이터 애플리케이션은 전송 블록 사이즈를 가변함으로써, 네트워크에 송신되는 버퍼 상태 기록을 수정하는 등에 의해 제어된다. 버퍼 상태 기록은 네트워크 자원(스케쥴링 정보 및 트래픽량 정보)를 소모하지 않도록 수정된다.
도 8은 기지국에 의해 수행되는 과정(800)의 설계를 도시한다. 무선 디바이스에서 프로세싱 수요와 최대 프로세싱 용량에 기초하여 판정된 정보는 기지국에 의해 수신된다(블록 812). 무선 디바이스와 교환되는 데이터량은 수신 정보에 기초하여 제어된다(블록 814). 데이터는 데이터 교환을 위해 생성된 제어에 기초하여 무선 디바이스와 교환된다(블록 816). 정보는 미승인 패킷의 개수를 조정하는 윈도우 사이즈(예를 들어, HSDPA용 RLC에 의해 사용되는 윈도우 사이즈)를 포함한다. 이후, 패킷은 윈도우 사이즈에 따라 무선 디바이스에 송신된다. 정보는 CQI를 포함하며, 데이터 전송속도는 CQI에 기초하여 무선 디바이스로의 전송을 위해 선택된다. 또한, 정보는 CQI와 NAK를 포함하며, 데이터 전송속도는 CQI 및 NAK에 기초하여 무선 디바이스로의 전송을 위해 선택된다. 임의의 경우에, 패킷은 선택된 데이터 전송속도에 따라 무선 디바이스로 송신된다.
도 9는 상이한 자원을 관리하기 위해 무선 디바이스에 의해 수행되는 과정(900)의 설계를 도시한다. 무선 디바이스에서 프로세싱 자원의 할당을 위한 애플리케이션으로부터의 프로세싱 수요는 모니터링된다(블록 912). 적어도 하나의 애플리케이션은 프로세싱 수요에 기초하여 제어된다(블록 914). 버스 자원의 할당을 위한 애플리케이션으로부터의 버스 수요는 모니터링된다(블록 916). 적어도 하나의 애플리케이션은 버스 수요에 기초하여 제어된다(블록 918). 메모리 자원 할당을 위한 애플리케이션으로부터의 메모리 수요는 모니터링된다(블록 920). 적어도 하나의 애플리케이션은 메모리 수요에 기초하여 제어된다(블록 922). 캐시 자원 할당을 위한 애플리케이션으로부터의 캐시 수요는 모니터링된다(블록 924). 적어도 하나의 애플리케이션은 캐시 수요에 기초하여 제어된다(블록 926). 무선 디바이스에서 실행되는 애플리케이션의 우선순위에 관한 정보, 각 애플리케이션의 제어가능여부 및/또 는 다른 정보가 예를 들어, 애플리케이션으로부터 수신된다. 제어 대상인 적어도 하나의 애플리케이션은 수신 정보에 기초하여 선택된다.
도 10은 자원 수요에 부합하도록 자원 용량을 가변시키기 위해 무선 디바이스에 의해 수행되는 과정(1000)의 설계를 도시한다. 무선 디바이스에서 동작되는 애플리케이션은 프로세싱 용량이 구성가능한 프로세싱 유닛에 의해 실행된다(블록 1012). 애플리케이션으로부터의 프로세싱 수요는 모니터링된다(블록 1014). 프로세싱 유닛의 프로세싱 용량은 프로세싱 수요에 기초하여 조정된다(블록 1016). 예를 들어, 프로세싱 유닛의 클록 주파수는 프로세싱 용량을 조정하도록 가변된다. 프로세싱 수요가 고 임계치를 초과하는 때에, 프로세싱 유닛을 위해 보다 높은 클록 주파수가 선택된다. 프로세싱 수요가 저 임계치 이하로 하락하는 때에, 프로세싱 유닛을 위해 보다 낮은 클록 주파수가 선택된다. 애플리케이션으로부터의 버스 수요가 모니터링된다(블록 1018). 버스 용량은 버스 수요에 기초하여 조정된다(블록 1020). 예를 들어, 버스의 클록 주파수는 버스 용량을 조정하도록 가변된다.
본원에서 설명된 기술은 다양한 수단에 의해 구현된다. 예를 들어, 이러한 기술은 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합으로 구현된다. 하드웨어 구현에서, 엔티티(예를 들어, 무선 디바이스 또는 기지국)에서 기술을 수행하는데 사용되는 프로세싱 유닛은 하나 이상의 특정 용도용 집적회로(ASIC), 디지털 신호 처리기(DSP), 디지털 신호 처리 수단(DSPD), 프로그래머블 논리 소자(PLD), 필드 프로그래머블 게이트 어레이(FPGA), 프로세서, 제어기, 마이크로제어기, 마이크로프로세서, 전자 소자, 본원에서 설명된 기능을 수행하도록 설계된 기타 전자 장치, 컴퓨터 또는 이들의 조합물 내에 구현된다.
펌웨어 및/또는 소프트웨어 구현에서, 기술은 본원에서 설명된 기능을 수행하는 모듈(예를 들어, 과정, 기능 등)로 구현된다. 펌웨어 및/또는 소프트웨어 명령은 메모리(예를 들어, 도 1의 메모리(134 또는 162))에 저장되며 프로세서(예를 들어, 프로세서(132 또는 160))에 의해 실행된다. 메모리는 프로세서 내부에 혹은 프로세서 외부에 구현된다. 또한, 펌웨어 및/또는 소프트웨어 명령은 랜덤 액세스 메모리(RAM), 판독전용 메모리(ROM), 비휘발성 랜덤 액세스 메모리(NVRAM), 프로그래머블 판독전용 메모리(PROM), 전기적으로 소거가능한 PROM(EEPROM), FLASH 메모리, 콤팩트 디스크(CD), 자성체 또는 광학 데이터 저장 장치 등의 다른 프로세서-판독가능 매체에 저장된다.
본원에서 설명되는 기술을 구현하는 장치는 독립형 유닛 혹은 디바이스의 일부가 될 수 있다. 디바이스는 (i) 독립형 집적회로(IC), (ii) 데이터 및/또는 명령을 저장용 메모리 IC를 포함하는 하나 이상의 IC 세트, (iii) 이동국(MSM)와 같은 ASIC, (iv) 다른 디바이스에 내장된 모듈, (v) 이동 전화기, 무선 디바이스, 핸드셋 또는 모바일 장치, (vi)기타 등등이다.
전술된 본 발명에 관한 설명에 의해 기술분야의 당업자는 본 발명을 실시 또는 이용할 수 있다. 본 발명에 대한 다양한 변형물은 기술분야의 당업자에게 자명한 사항이며, 본원에서 정의된 일반적인 원리는 본 발명의 사상이나 범주를 벗어나지 않은 다른 변화물에 적용가능하다. 따라서, 본 발명은 본원에서 설명된 예시와 설계에 제한되지 않으며, 본원에서 개시된 원리와 신규한 특성과 일관되는 최광의 범위로 제공된다.

Claims (52)

  1. 기지국과 무선 통신 가능한 디바이스로서,
    최대 프로세싱 용량을 가지며 상기 디바이스에서 동작되는 애플리케이션들을 실행하도록 동작가능한 프로세싱 유닛; 및
    상기 애플리케이션들로부터의 프로세싱 수요를 모니터링하며, 상기 프로세싱 수요와 상기 최대 프로세싱 용량에 기초하여 상기 어플리케이션들 중 적어도 하나를 제어하도록 동작가능한 제어기를 포함하는, 기지국과 무선 통신 가능한 디바이스.
  2. 제 1 항에 있어서, 상기 제어기는 상기 애플리케이션들의 우선순위에 기초하여 상기 디바이스상에서 실행되는 애플리케이션들 중에서 제어 대상인 상기 적어도 하나의 애플리케이션을 선택하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  3. 제 2 항에 있어서, 상기 제어기는 먼저 저 우선순위 애플리케이션을 제어하며, 상기 저 우선순위 애플리케이션이 완전히 제어된 이후에 고 우선순위 애플리케이션을 제어하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  4. 제 1 항에 있어서, 상기 적어도 하나의 애플리케이션은 데이터 애플리케이션 을 포함하며, 상기 제어기는 높은 프로세싱 수요가 검출되는 때에 상기 기지국과의 상기 데이터 애플리케이션에 의해 교환되는 데이터량을 감소시키고 낮은 프로세싱 수요가 검출되는 때에 상기 기지국과의 상기 데이터 애플리케이션에 의해 교환되는 데이터량을 증가시키도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  5. 제 4 항에 있어서, 상기 프로세싱 수요가 고 임계치를 초과하는 때에 높은 프로세싱 수요가 검출되며, 상기 프로세싱 수요가 저 임계치 아래로 하락하는 때에 낮은 프로세싱 수요가 검출되는, 기지국과 무선 통신 가능한 디바이스.
  6. 제 1 항에 있어서, 상기 적어도 하나의 애플리케이션은 데이터 애플리케이션을 포함하며, 상기 제어기는 상기 프로세싱 수요와 상기 최대 프로세싱 용량에 기초하여 상기 데이터 애플리케이션에 대한 윈도우 사이즈를 조정하도록 동작가능하며, 상기 윈도우 사이즈는 상기 데이터 애플리케이션에 의해 교환되는 미승인 패킷들의 개수를 조정하는, 기지국과 무선 통신 가능한 디바이스.
  7. 제 6 항에 있어서, 상기 제어기는 최대값과 최소값 사이에서 윈도우 사이즈를 조정하도록 동작가능하며, 상기 최소값은 전송 제어 프로토콜(TCP)에 의한 타임아웃을 회피하도록 선택되는, 기지국과 무선 통신 가능한 디바이스.
  8. 제 6 항에 있어서, 상기 제어기는 높은 프로세싱 수요가 검출되는 때에 윈도 우 사이즈를 축소하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  9. 제 6 항에 있어서, 상기 제어기는 높은 프로세싱 수요가 검출되는 때에 최대값에서 최소값으로 윈도우 사이즈를 축소하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  10. 제 6 항에 있어서, 상기 제어기는 높은 프로세싱 수요가 검출되고 상기 데이터 애플리케이션이 제어되지 않는 때에 최대값에서 최소값으로 윈도우 사이즈를 축소하며, 높은 프로세싱 수요가 검출되고 상기 데이터 애플리케이션이 제어되는 때에 단계적으로 윈도우 사이즈를 축소하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  11. 제 6 항에 있어서, 상기 제어기는 낮은 프로세싱 수요가 검출되는 때에, 최대값까지 단계적으로 윈도우 사이즈를 증가시키도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  12. 제 6 항에 있어서, 상기 제어기는 낮은 프로세싱 수요가 검출되는 때에 최대값까지 각 갱신 간격에서 일 상향 단계만큼 윈도우 사이즈를 증가시키도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  13. 제 6 항에 있어서, 상기 제어기는 중간 프로세싱 수요가 검출되는 때에 윈도우 사이즈를 유지하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  14. 제 6 항에 있어서, 상기 제어기는 상기 기지국에게 상기 윈도우 사이즈를 송신하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  15. 제 6 항에 있어서, 상기 제어기는 신뢰성을 개선하기 위해 다수의 횟수로 상기 기지국에게 상기 윈도우 사이즈를 송신하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  16. 제 1 항에 있어서, 상기 제어기는 높은 프로세싱 수요가 검출되는 때에 고속 다운링크 패킷 액세스(HSDPA)용 무선 링크 제어(RLC)에 의해 송신된 미승인 프로토콜 데이터 단위(PDU)의 개수를 조정하는 윈도우의 사이즈를 축소하고 상기 기지국에게 상기 윈도우 사이즈를 송신하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  17. 제 1 항에 있어서, 상기 제어기는 상기 기지국에 대해 상기 디바이스에서 측정된 채널 품질에 기초하여 채널 품질 표시기(CQI)를 획득하며, 높은 프로세싱 수요가 검출되는 때에 상기 CQI를 감소하고 상기 기지국에게 상기 감소된 CQI를 송신하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  18. 제 17 항에 있어서, 상기 제어기는 높은 프로세싱 수요가 검출되는 때에, 상기 패킷이 정확하게 해독되는 경우에도 상기 기지국으로부터 수신된 패킷의 소정의 퍼센트에 대한 승인 부정(NAK)을 송신하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  19. 제 1 항에 있어서, 상기 적어도 하나의 애플리케이션은 데이터 애플리케이션을 포함하며, 상기 제어기는 상기 프로세싱 수요에 기초하여 상기 데이터 애플리케이션에 대한 블록 사이즈를 전송하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  20. 제 1 항에 있어서, 상기 적어도 하나의 애플리케이션은 데이터 애플리케이션을 포함하며, 상기 제어기는 상기 프로세싱 수요에 기초하여 상기 데이터 애플리케이션에 대한 버퍼 상태 기록을 생성하여 상기 기지국에게 상기 버퍼 상태 기록을 송신하도록 동작가능한, 기지국과 무선 통신 가능한 디바이스.
  21. 최대 프로세싱 용량을 갖는 프로세싱 유닛에 대하여 무선 디바이스 상에서 실행되는 애플리케이션들으로부터의 프로세싱 수요를 모니터링하는 단계; 및
    상기 프로세싱 수요와 상기 최대 프로세싱 용량에 기초하여 상기 애플리케이션들 중 적어도 하나를 제어하는 단계를 포함하는 방법.
  22. 제 21 항에 있어서, 상기 적어도 하나의 애플리케이션은 데이터 애플리케이션을 포함하며, 상기 적어도 하나의 애플리케이션을 제어하는 단계는,
    높은 프로세싱 수요가 검출되는 때에 기지국과의 상기 데이터 애플리케이션에 의해 교환되는 데이터량을 감소하는 단계, 및
    낮은 프로세싱 수요가 검출되는 때에 상기 기지국과의 상기 데이터 애플리케이션에 의해 교환되는 데이터량을 증가하는 단계를 포함하는 방법.
  23. 제 21 항에 있어서, 상기 적어도 하나의 애플리케이션은 데이터 애플리케이션을 포함하며, 상기 적어도 하나의 애플리케이션을 제어하는 단계는,
    상기 프로세싱 수요와 상기 최대 프로세싱 용량에 기초하여 상기 데이터 애플리케이션에 대한 윈도우 사이즈를 조정하는 단계를 포함하며, 상기 윈도우 사이즈는 상기 데이터 애플리케이션에 의해 교환되는 미승인 패킷들의 개수를 조정하는 방법.
  24. 제 23 항에 있어서, 상기 데이터 애플리케이션에 대한 윈도우 사이즈를 조정하는 단계는,
    높은 프로세싱 수요가 검출되는 때에 상기 윈도우 사이즈를 축소하는 단계, 및
    낮은 프로세싱 수요가 검출되는 때에 상기 윈도우 사이즈를 증가시키는 단계 를 포함하는 방법.
  25. 최대 프로세싱 용량을 갖는 프로세싱 유닛에 대하여 무선 디바이스에서 실행되는 애플리케이션들로부터의 프로세싱 수요를 모니터링하기 위한 수단; 및
    상기 프로세싱 수요와 상기 최대 프로세싱 용량에 기초하여 상기 애플리케이션들 중 적어도 하나를 제어하기 위한 수단을 포함하는 장치.
  26. 제 25 항에 있어서, 상기 적어도 하나의 애플리케이션은 데이터 애플리케이션을 포함하며, 상기 적어도 하나의 애플리케이션을 제어하기 위한 수단은,
    높은 프로세싱 수요가 검출되는 때에 기지국과의 상기 데이터 애플리케이션에 의해 교환되는 데이터량을 감소시키기 위한 수단, 및
    낮은 프로세싱 수요가 검출되는 때에 상기 기지국과의 상기 데이터 애플리케이션에 의해 교환되는 데이터량을 증가시키기 위한 수단을 포함하는 장치.
  27. 제 25 항에 있어서, 상기 적어도 하나의 애플리케이션은 데이터 애플리케이션을 포함하며, 상기 적어도 하나의 애플리케이션을 제어하기 위한 수단은,
    상기 프로세싱 수요와 상기 최대 프로세싱 용량에 기초하여 상기 데이터 애플리케이션에 대한 윈도우 사이즈를 조정하기 위한 수단을 포함하며, 상기 윈도우 사이즈는 상기 데이터 애플리케이션에 의해 교환되는 미승인 패킷들의 개수를 조정하는 장치.
  28. 최대 프로세싱 용량을 갖는 프로세싱 유닛에 대하여 무선 디바이스에서 실행되는 애플리케이션들로부터의 프로세싱 수요를 모니터링하며; 그리고
    상기 프로세싱 수요와 상기 최대 프로세싱 용량에 기초하여 상기 애플리케이션들 중 적어도 하나를 제어하는 명령들을 저장하기 위한 프로세서-판독가능 매체.
  29. 제 28 항에 있어서, 높은 프로세싱 수요가 검출되는 때에 기지국과의 데이터 애플리케이션에 의해 교환되는 데이터량을 감소시키며 - 여기서, 상기 데이터 애플리케이션은 상기 제어중인 적어도 하나의 애플리케이션 중 하나임 - , 그리고
    낮은 프로세싱 수요가 검출되는 때에 상기 기지국과의 상기 데이터 애플리케이션에 의해 교환되는 데이터량을 증가시키는 명령들을 추가적으로 저장하기 위한 프로세서-판독가능 매체.
  30. 제 28 항에 있어서, 상기 프로세싱 수요와 상기 최대 프로세싱 용량에 기초하여 데이터 애플리케이션에 대한 윈도우 사이즈를 조정하는 명령들을 추가적으로 저장하며, 상기 데이터 애플리케이션은 상기 제어중인 적어도 하나의 애플리케이션중 하나이며, 상기 윈도우 사이즈는 상기 데이터 애플리케이션에 의해 교환되는 미승인 패킷들의 개수를 조정하는 프로세서-판독가능 매체.
  31. 무선 디바이스와 무선 통신이 가능한 장치로서,
    상기 무선 디바이스에서 최대 프로세싱 용량과 프로세싱 수요에 기초하여 결정된 정보를 수신하고 상기 수신 정보에 기초하여 상기 무선 디바이스와 교환될 데이터량을 제어하도록 동작가능한 제어기; 및
    상기 제어기로부터의 제어에 기초하여 상기 무선 디바이스와 데이터를 교환하도록 동작가능한, 무선 디바이스와 무선 통신이 가능한 장치.
  32. 제 31 항에 있어서, 상기 정보는 미승인 패킷의 개수를 조정하는 윈도우 사이즈를 포함하며, 상기 프로세서는 상기 윈도우 사이즈에 따라 상기 무선 디바이스에게 패킷을 송신하도록 동작가능한, 무선 디바이스와 무선 통신이 가능한 장치.
  33. 제 31 항에 있어서, 상기 정보는 고속 다운링크 패킷 액세스(HSDPA)용 무선 링크 프로토콜(RLC)에 의해 송신된 미승인 프로토콜 데이터 단위(PDU)의 개수를 조정하는 윈도우 사이즈를 포함하며, 상기 프로세서는 상기 윈도우 사이즈에 따라 상기 무선 디바이스에게 패킷을 송신하도록 동작가능한, 무선 디바이스와 무선 통신이 가능한 장치.
  34. 제 31 항에 있어서, 상기 정보는 채널 품질 표시기(CQI)를 포함하며, 상기 제어기는 상기 CQI에 기초하여 상기 무선 디바이스로의 전송을 위한 데이터 전송속도를 선택하도록 동작하며, 상기 프로세서는 상기 선택된 데이터 전송속도에 따라 상기 무선 디바이스에게 패킷을 송신하도록 동작가능한, 무선 디바이스와 무선 통 신이 가능한 장치.
  35. 무선 디바이스에서 최대 프로세싱 용량과 프로세싱 수요에 기초하여 결정된 정보를 수신하는 단계; 및
    상기 수신 정보에 기초하여 상기 무선 디바이스와 교환될 데이터량을 제어하는 단계를 포함하는 방법.
  36. 제 35 항에 있어서, 상기 정보는 미승인 패킷들의 개수를 조정하는 윈도우 사이즈를 포함하며, 상기 무선 디바이스와 교환될 데이터량은 상기 윈도우 사이즈에 기초하여 제어되는 방법.
  37. 기지국과 무선 통신이 가능한 디바이스로서,
    상기 디바이스에서 실행되는 애플리케이션들에 할당가능한 프로세싱 자원; 및
    상기 할당가능한 프로세싱 자원에 대하여 상기 애플리케이션들으로부터의 프로세싱 수요를 모니터링하고 상기 프로세싱 수요에 기초하여 상기 애플리케이션들 중 적어도 하나를 제어하도록 동작가능한 제어기를 포함하는, 기지국과 무선 통신이 가능한 디바이스.
  38. 제 37 항에 있어서, 상기 디바이스에서 실행되는 애플리케이션들에 할당가능 한 버스 자원을 더 포함하며,
    상기 제어기는 상기 할당가능한 버스 자원을 위해 상기 애플리케이션들로부터의 버스 수요를 모니터링하고 상기 버스 수요에 기초하여 상기 적어도 하나의 애플리케이션을 제어하도록 동작가능한, 기지국과 무선 통신이 가능한 디바이스.
  39. 제 37 항에 있어서, 상기 디바이스에서 실행되는 애플리케이션들에 할당가능한 메모리 자원을 더 포함하며, 상기 제어기는 상기 할당가능한 메모리 자원에 대하여 상기 애플리케이션들로부터의 메모리 수요를 모니터링하고 상기 메모리 수요에 기초하여 상기 적어도 하나의 애플리케이션을 제어하도록 동작가능한, 기지국과 무선 통신이 가능한 디바이스.
  40. 제 37 항에 있어서, 상기 디바이스에서 실행되는 애플리케이션들에 할당가능한 캐시 자원을 더 포함하며, 상기 제어기는 상기 할당가능한 캐시 자원에 대하여 상기 애플리케이션들로부터의 캐시 수요를 모니터링하고 상기 캐시 수요에 기초하여 상기 적어도 하나의 애플리케이션을 제어하도록 동작가능한, 기지국과 무선 통신이 가능한 디바이스.
  41. 제 37 항에 있어서, 상기 제어기는 상기 디바이스에서 실행되는 각 애플리케이션의 제어가능여부를 표시하는 정보를 수신하고, 상기 수신 정보에 기초하여 제어 대상인 상기 적어도 하나의 애플리케이션을 선택하도록 동작가능한, 기지국과 무선 통신이 가능한 디바이스.
  42. 제 37 항에 있어서, 상기 제어기는 상기 디바이스에서 실행되는 애플리케이션들의 우선순위를 표시하는 정보를 수신하고, 상기 수신 정보에 기초하여 제어 대상인 상기 적어도 하나의 애플리케이션을 선택하도록 동작가능한, 기지국과 무선 통신이 가능한 디바이스.
  43. 상기 무선 디바이스에서 할당가능한 프로세싱 자원을 위해 무선 디바이스에서 실행되는 애플리케이션들로부터의 프로세싱 수요를 모니터링하는 단계; 및
    상기 프로세싱 수요에 기초하여 상기 애플리케이션 중 적어도 하나를 제어하는 단계를 포함하는 방법.
  44. 제 43 항에 있어서,
    상기 무선 디바이스에서 할당가능한 버스 자원에 대하여 상기 애플리케이션들로부터의 버스 수요를 모니터링하는 단계; 및
    상기 버스 수요에 기초하여 상기 적어도 하나의 애플리케이션을 제어하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  45. 기지국과 무선 통신이 가능한 디바이스로서,
    구성가능한 프로세싱 용량을 가지며 상기 디바이스에서 동작되는 애플리케이 션들을 실행하도록 동작가능한 프로세싱 유닛; 및
    상기 애플리케이션들로부터의 프로세싱 수요를 모니터링하고 상기 프로세싱 수요에 기초하여 상기 프로세싱 유닛의 상기 프로세싱 용량을 조정하도록 동작가능한 제어기를 포함하는, 기지국과 무선 통신이 가능한 디바이스.
  46. 제 45 항에 있어서, 상기 제어기는 상기 프로세싱 용량을 조정하기 위해 상기 프로세싱 유닛의 클록 주파수를 가변시키도록 동작가능한, 기지국과 무선 통신이 가능한 디바이스.
  47. 제 45 항에 있어서, 상기 제어기는 상기 프로세싱 수요가 고 임계치를 초과하는 때에 상기 프로세싱 유닛을 위한 보다 높은 클록 주파수를 선택하고, 상기 프로세싱 수요가 저 임계치 아래로 하락되는 때에 상기 프로세싱 유닛을 위한 보다 낮은 클록 주파수를 선택하도록 동작가능한, 기지국과 무선 통신이 가능한 디바이스.
  48. 제 45 항에 있어서, 구성가능한 버스 용량을 갖는 버스를 더 포함하며, 상기 제어기는 애플리케이션으로부터의 버스 수요를 모니터링하고 상기 버스 수요에 기초하여 상기 버스 용량을 조정하도록 동작가능한, 기지국과 무선 통신이 가능한 디바이스.
  49. 제 48 항에 있어서, 상기 제어기는 상기 버스 용량을 조정하기 위해 상기 버스의 클록 주파수를 가변시키도록 동작가능한, 기지국과 무선 통신이 가능한 디바이스.
  50. 구성가능한 프로세싱 용량을 갖는 프로세싱 유닛에 의해 무선 디바이스에서 동작되는 애플리케이션들을 실행하는 단계;
    상기 애플리케이션들로부터의 프로세싱 수요를 모니터링하는 단계;
    상기 프로세싱 수요에 기초하여 상기 프로세싱 유닛의 상기 프로세싱 용량을 조정하는 단계를 포함하는 방법.
  51. 제 50 항에 있어서, 상기 프로세싱 유닛의 상기 프로세싱 용량을 조정하는 단계는,
    상기 프로세싱 수요가 고 임계치를 초과하는 때에 상기 프로세싱 유닛을 위한 보다 높은 클록 주파수를 선택하는 단계, 및
    상기 프로세싱 수요가 저 임계치 아래로 하락하는 때에 상기 프로세싱 유닛을 위한 보다 낮은 클록 주파수를 선택하는 단계를 포함하는 방법.
  52. 제 50 항에 있어서, 구성가능한 버스 용량을 갖는 버스에 대하여 상기 애플리케이션들로부터의 버스 수요를 모니터링하는 단계; 및
    상기 버스 수요에 기초하여 상기 버스 용량을 조정하는 단계를 더 포함하는 방법.
KR1020097008834A 2006-09-29 2007-09-28 무선 디바이스에서 자원을 관리하기 위한 방법 및 장치 KR101181153B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US82767806P 2006-09-29 2006-09-29
US60/827,678 2006-09-29
US11/862,960 2007-09-27
US11/862,960 US8954045B2 (en) 2006-09-29 2007-09-27 Method and apparatus for managing resources at a wireless device
PCT/US2007/080003 WO2008042813A2 (en) 2006-09-29 2007-09-28 Method and apparatus for managing resources at a wireless device

Publications (2)

Publication Number Publication Date
KR20090077055A true KR20090077055A (ko) 2009-07-14
KR101181153B1 KR101181153B1 (ko) 2012-09-17

Family

ID=39262459

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097008834A KR101181153B1 (ko) 2006-09-29 2007-09-28 무선 디바이스에서 자원을 관리하기 위한 방법 및 장치

Country Status (12)

Country Link
US (1) US8954045B2 (ko)
EP (1) EP2069932B1 (ko)
JP (1) JP5166420B2 (ko)
KR (1) KR101181153B1 (ko)
CN (1) CN106445682A (ko)
BR (1) BRPI0717270A2 (ko)
CA (1) CA2662415C (ko)
ES (1) ES2636547T3 (ko)
HU (1) HUE035648T2 (ko)
RU (1) RU2460120C2 (ko)
TW (1) TWI395445B (ko)
WO (1) WO2008042813A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101367866B1 (ko) * 2009-06-15 2014-03-14 퀄컴 인코포레이티드 무선 디바이스를 위한 자원 관리
US8855618B2 (en) 2011-01-10 2014-10-07 Samsung Electronics Co., Ltd. Apparatus and method for adaptively operating an application program

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2662493T3 (es) * 2007-11-02 2018-04-06 Qualcomm Incorporated Sistema configurable de gestión de arbitraje de eventos y recursos
US8509160B2 (en) * 2008-02-11 2013-08-13 Apple Inc. Method for efficient CQI feedback
EP3048835B1 (en) * 2008-02-20 2020-09-30 Amazon Technologies, Inc. Apparatus and method for constructing a data unit that includes a buffer status report
US9323306B2 (en) * 2008-12-03 2016-04-26 Telefonaktiebolaget Lm Ericsson (Publ) Energy based time scheduler for parallel computing system
US8112049B2 (en) 2009-12-17 2012-02-07 Telefonaktiebolaget Lm Ericsson (Publ) Channel quality handling for precoder override
CN101788926B (zh) * 2009-12-28 2014-04-30 中兴通讯股份有限公司 J2me应用前台切换的资源调配方法及装置
US8352759B2 (en) * 2010-01-11 2013-01-08 Qualcomm Incorporated System and method of monitoring a central processing unit in real time
JP5800803B2 (ja) * 2010-04-07 2015-10-28 レノボ・イノベーションズ・リミテッド(香港) 情報処理端末およびその制御方法
US8937863B2 (en) * 2010-04-12 2015-01-20 Qualcomm Incorporated Scheme and apparatus for multi-resource flow control
US8635486B2 (en) 2010-08-19 2014-01-21 Intel Mobile Communications GmbH Apparatus and method of controlling a processor clock frequency
US9152523B2 (en) 2010-09-15 2015-10-06 Qualcomm Incorporated Batching and forking resource requests in a portable computing device
US8615755B2 (en) 2010-09-15 2013-12-24 Qualcomm Incorporated System and method for managing resources of a portable computing device
US8631414B2 (en) 2010-09-15 2014-01-14 Qualcomm Incorporated Distributed resource management in a portable computing device
US8806502B2 (en) 2010-09-15 2014-08-12 Qualcomm Incorporated Batching resource requests in a portable computing device
US9098521B2 (en) 2010-09-15 2015-08-04 Qualcomm Incorporated System and method for managing resources and threshsold events of a multicore portable computing device
US9413624B2 (en) 2010-09-29 2016-08-09 Blackberry Limited Method and device for providing system status information
US8635630B2 (en) * 2010-10-25 2014-01-21 Microsoft Corporation Application lifetime management
US20120102200A1 (en) * 2010-10-26 2012-04-26 Qualcomm Incorporated Application specific resource management
US8595374B2 (en) * 2010-12-08 2013-11-26 At&T Intellectual Property I, L.P. Method and apparatus for capacity dimensioning in a communication network
US9075652B2 (en) * 2010-12-20 2015-07-07 Microsoft Technology Licensing, Llc Idle time service
US9088965B2 (en) 2011-08-03 2015-07-21 Acer Incorporated Data transmission methods and apparatuses using the same
US8997171B2 (en) 2011-08-19 2015-03-31 Microsoft Technology Licensing, Llc Policy based application suspension and termination
US20130055136A1 (en) * 2011-08-22 2013-02-28 At&T Intellectual Property I, L.P. Methods, Systems, and Products for Controlling Quality of Service and Experience
US9053487B2 (en) 2011-08-22 2015-06-09 At&T Intellectual Property I, L.P. Methods, systems, and products for notifying of enhancements to quality of service and experience
US8578394B2 (en) 2011-09-09 2013-11-05 Microsoft Corporation Exempting applications from suspension
US9300814B2 (en) * 2011-09-12 2016-03-29 Microsoft Technology Licensing Llc Network adaptive content download
EP2590381B1 (en) * 2011-11-07 2014-03-26 Acer Incorporated Data transmission method and mobile communication device for adjusting a TCP/IP window size based on physical layer characteristics
US9112906B2 (en) * 2011-11-07 2015-08-18 Acer Incorporated Data transmission methods and appratuses using the same
TWI511588B (zh) * 2011-11-07 2015-12-01 Acer Inc 最佳化通訊協定之視窗大小伸縮以在無線網路系統內傳送資料之方法
CN102413184B (zh) * 2011-11-24 2014-05-14 迈普通信技术股份有限公司 分布式架构中协议栈的实现方法和装置
US8897762B2 (en) * 2012-02-28 2014-11-25 Qualcomm Incorporated Optimizing signaling load overhead and battery consumption for background applications
US8718726B2 (en) 2012-03-16 2014-05-06 Apple Inc. Methods and apparatus for reducing call drop rate
JP5951393B2 (ja) * 2012-07-26 2016-07-13 京セラ株式会社 携帯通信端末
KR20140044993A (ko) 2012-09-20 2014-04-16 삼성전자주식회사 이동통신 시스템에서 작은 데이터를 검출하기 위한 방법 및 장치
US9575618B2 (en) * 2012-10-19 2017-02-21 Google Inc. Multi-user process management
US8989008B2 (en) * 2012-10-26 2015-03-24 Verizon Patent And Licensing Inc. Wirespeed TCP packet window field modification for networks having radio segments
JP6089783B2 (ja) * 2013-02-27 2017-03-08 富士通株式会社 制御装置、リソース制御プログラムおよびリソース制御方法
US9668277B2 (en) 2013-03-13 2017-05-30 Qualcomm Incorporated Adaptive clock rate for high speed data communications
JP6060756B2 (ja) * 2013-03-18 2017-01-18 富士通株式会社 周波数制御装置、周波数制御方法および周波数制御プログラム
EP3017378A4 (en) * 2013-07-05 2017-03-08 Nokia Solutions and Networks Oy Collective over-the -top application policy administration
WO2015054888A1 (zh) * 2013-10-18 2015-04-23 华为技术有限公司 一种资源管理方法及设备
US20150169371A1 (en) * 2013-12-13 2015-06-18 Mark D. Yarvis Platform self-management of resources based on a contextual understanding of user plans and goals
CN104239094B (zh) * 2014-08-29 2017-12-08 小米科技有限责任公司 后台应用程序的控制方法、装置及终端设备
US10165498B2 (en) * 2016-03-23 2018-12-25 JVC Kenwood Corporation Management device, terminal device, and management method performing process of selecting resource of radio link
US20170310601A1 (en) * 2016-04-21 2017-10-26 Qualcomm Incorporated Radio-aware transmission control protocol rate control
US10034292B1 (en) 2016-10-19 2018-07-24 Sprint Spectrum L.P. Resource allocation in wireless networks
US10667154B2 (en) 2017-01-17 2020-05-26 Tutela Technologies Ltd. System and method for evaluating wireless device and wireless network performance
US10819613B2 (en) 2017-01-17 2020-10-27 Tutela Technologies Ltd. System and method for interacting with and controlling testing of wireless device and/or wireless network performance on wireless electronic devices
BR112019014658A2 (pt) 2017-01-17 2020-05-26 Tutela Tech Ltd sistema e método para avaliar desempenho de dispositivo sem fio e/ou rede sem fio
US10536505B2 (en) * 2017-04-30 2020-01-14 Cisco Technology, Inc. Intelligent data transmission by network device agent
US10694467B2 (en) 2017-09-28 2020-06-23 Qualcomm Incorporated Dynamic clock switching within a transmission time interval
KR102456835B1 (ko) * 2017-12-22 2022-10-21 삼성전자주식회사 음성 데이터 패킷의 송신을 제어하는 전자 장치 및 방법
CN112470487B (zh) * 2018-07-31 2023-08-04 Abb瑞士股份有限公司 用于现场设备的远程监测和诊断的方法和装置
US11838870B2 (en) * 2018-08-30 2023-12-05 Mediatek Singapore Pte. Ltd. Methods for reducing power consumption of a communication apparatus and a communication apparatus utilizing the same
CN110536406B (zh) 2018-09-27 2023-05-26 中兴通讯股份有限公司 传输定时方法及装置、基站、计算机可读存储介质
US11463144B2 (en) * 2018-11-02 2022-10-04 Qualcomm Incorporated Techniques for reporting channel quality indicators in wireless communications
JP7165622B2 (ja) * 2019-05-20 2022-11-04 ルネサスエレクトロニクス株式会社 無線通信装置および無線通信システム

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01196633A (ja) * 1988-02-01 1989-08-08 Nec Corp タスク制御方式
JP2823520B2 (ja) 1993-12-17 1998-11-11 テキサス インスツルメンツ インコーポレイテツド リアルタイムアプリケーションタスクスケジューリング及び処理システム
JPH08294100A (ja) 1995-04-20 1996-11-05 Canon Inc 通信端末及び監視システム
WO1997015149A1 (en) 1995-10-18 1997-04-24 Philips Electronics N.V. Method for making a multimedia application executable on hardware platforms with various different resource levels, a physical record containing such application, and an apparatus for executing such application
US5774704A (en) * 1996-07-29 1998-06-30 Silicon Graphics, Inc. Apparatus and method for dynamic central processing unit clock adjustment
JPH1097435A (ja) 1996-09-20 1998-04-14 Nec Corp 資源割当てシステム
JPH10177489A (ja) 1996-12-17 1998-06-30 Matsushita Electric Ind Co Ltd タスクのスケジュール方法
JPH10229420A (ja) * 1997-02-17 1998-08-25 Matsushita Electric Ind Co Ltd 通信システム
JP3320344B2 (ja) 1997-09-19 2002-09-03 富士通株式会社 ライブラリ装置用カートリッジ移送ロボットおよびライブラリ装置
US6594699B1 (en) * 1997-10-10 2003-07-15 Kasenna, Inc. System for capability based multimedia streaming over a network
EP1067771A1 (en) 1999-07-05 2001-01-10 CANAL+ Société Anonyme Communications method and apparatus
RU2263409C2 (ru) 1999-07-23 2005-10-27 Каналь+Сосьетэ Аноним Способы и устройство для обмена данными
US6643259B1 (en) * 1999-11-12 2003-11-04 3Com Corporation Method for optimizing data transfer in a data network
US7016412B1 (en) 2000-08-29 2006-03-21 Koninklijke Philips Electronics N.V. System and method for dynamic adaptive decoding of scalable video to balance CPU load
KR100765121B1 (ko) 2001-11-24 2007-10-11 엘지전자 주식회사 송신버퍼의 프로토콜 데이터 유닛 폴링 방법
US7237007B2 (en) 2001-12-05 2007-06-26 Qualcomm Incorporated Method and system for flow control between a base station controller and a base transceiver station
JP3799285B2 (ja) * 2002-03-29 2006-07-19 Necインフロンティア株式会社 無線lan基地局、無線端末およびプログラム
US7024672B2 (en) 2002-06-26 2006-04-04 Microsoft Corporation Process-mode independent driver model
JP2004062950A (ja) * 2002-07-25 2004-02-26 Sony Corp データ処理装置およびデータ処理方法、並びにプログラム
KR100474302B1 (ko) 2002-09-07 2005-03-10 엘지전자 주식회사 무선 링크 콘트롤(rlc) 계층의 버퍼제어 방법
US7289452B2 (en) * 2002-10-24 2007-10-30 Nokia Corporation Transport block size (TBS) signaling enhancement
US7321556B1 (en) * 2002-10-28 2008-01-22 Ipolicy Networks, Inc Application prioritization policy engine
CN1622081A (zh) 2003-11-24 2005-06-01 顺德市顺达电脑厂有限公司 降低可携式数字产品电池耗电量的方法
KR100520146B1 (ko) 2003-12-22 2005-10-10 삼성전자주식회사 고속 순방향 패킷 접속 통신 시스템에서 데이터 처리장치및 방법
JP4417733B2 (ja) * 2004-01-15 2010-02-17 ソニー・エリクソン・モバイルコミュニケーションズ株式会社 伝送方法及び装置
US7610377B2 (en) * 2004-01-27 2009-10-27 Sun Microsystems, Inc. Overload management in an application-based server
KR100678184B1 (ko) * 2004-05-19 2007-02-02 삼성전자주식회사 이동통신 시스템에서 향상된 역방향 전용채널의 스케줄링방법 및 장치
US7735085B2 (en) 2004-05-26 2010-06-08 Qualcomm Incorporated System for application priority based on device operating mode
US7389452B2 (en) * 2004-06-29 2008-06-17 Electronics For Imaging, Inc. Methods and apparatus for monitoring internal signals in an integrated circuit
CN100486242C (zh) 2004-07-15 2009-05-06 大唐移动通信设备有限公司 实现无线链路控制协议窗口流量控制的方法
CN101069378B (zh) * 2004-08-31 2014-07-23 艾利森电话股份有限公司 数据单元发送器和数据单元中继装置
US20060205517A1 (en) 2005-03-08 2006-09-14 Malabuyo Paolo V Systems and methods for providing a system level user interface in a multimedia console
US7885330B2 (en) * 2005-07-12 2011-02-08 Insors Integrated Communications Methods, program products and systems for compressing streaming video data
US7640449B2 (en) * 2006-08-17 2009-12-29 Via Technologies, Inc. Systems and methods for dynamic clock frequencies for low power design

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101367866B1 (ko) * 2009-06-15 2014-03-14 퀄컴 인코포레이티드 무선 디바이스를 위한 자원 관리
US8855618B2 (en) 2011-01-10 2014-10-07 Samsung Electronics Co., Ltd. Apparatus and method for adaptively operating an application program

Also Published As

Publication number Publication date
TWI395445B (zh) 2013-05-01
CA2662415A1 (en) 2008-04-10
US8954045B2 (en) 2015-02-10
RU2460120C2 (ru) 2012-08-27
HUE035648T2 (en) 2018-05-28
WO2008042813A2 (en) 2008-04-10
BRPI0717270A2 (pt) 2013-10-22
RU2009116243A (ru) 2010-11-10
KR101181153B1 (ko) 2012-09-17
EP2069932B1 (en) 2017-05-17
CN106445682A (zh) 2017-02-22
US20080085717A1 (en) 2008-04-10
ES2636547T3 (es) 2017-10-06
CA2662415C (en) 2012-09-18
EP2069932A2 (en) 2009-06-17
JP2010506270A (ja) 2010-02-25
WO2008042813A3 (en) 2008-06-19
TW200833049A (en) 2008-08-01
JP5166420B2 (ja) 2013-03-21

Similar Documents

Publication Publication Date Title
KR101181153B1 (ko) 무선 디바이스에서 자원을 관리하기 위한 방법 및 장치
EP2234316B1 (en) Method and apparatus for power headroom reporting
US9407563B2 (en) Methods and apparatuses for adapting application uplink rate to wireless communications network
EP2471302B1 (en) Using the ecn mechanism to signal congestion directly to the base station
US8428080B2 (en) Method to control reconfiguration of multiple radio access bearers in a wireless device
KR101454530B1 (ko) 무선 통신 시스템에서 스케쥴링 정보를 송신하는 방법 및 장치
JP4056071B2 (ja) 無線通信ネットワークおよびフロー制御方法
WO2013052651A2 (en) Receiver-based methods, systems, and computer readable media for controlling tcp sender behavior in cellular communications networks with large buffer sizes
JP2008078788A (ja) データ流入量制御装置及びデータ流入量制御方法
US20210399846A1 (en) Apparatus, method and computer program for packet duplication
WO2007079640A1 (fr) Procédé de contrôle de congestion pour l&#39;interface inverse entre la station de base et le contrôleur de station de base, dispositif et station de base d&#39;émetteur/récepteur correspondants
US9107106B2 (en) Techniques for reducing buffer overflow in a communication system
US9106381B2 (en) Method and system configuring a base station to trigger HS-DPCCH generation
WO2023088557A1 (en) Compliance control for traffic flows in a wireless communication system
JP2024064705A (ja) 移動通信システム、サーバ装置、基地局装置、及びコアネットワーク装置

Legal Events

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

Payment date: 20160629

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 8