KR20140002035A - 리소스 활용 맵들을 사용한 최적화된 실행을 위한 방법 및 장치 - Google Patents

리소스 활용 맵들을 사용한 최적화된 실행을 위한 방법 및 장치 Download PDF

Info

Publication number
KR20140002035A
KR20140002035A KR1020137029652A KR20137029652A KR20140002035A KR 20140002035 A KR20140002035 A KR 20140002035A KR 1020137029652 A KR1020137029652 A KR 1020137029652A KR 20137029652 A KR20137029652 A KR 20137029652A KR 20140002035 A KR20140002035 A KR 20140002035A
Authority
KR
South Korea
Prior art keywords
resource utilization
application
resource
computing device
component
Prior art date
Application number
KR1020137029652A
Other languages
English (en)
Other versions
KR101642557B1 (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 KR20140002035A publication Critical patent/KR20140002035A/ko
Application granted granted Critical
Publication of KR101642557B1 publication Critical patent/KR101642557B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • 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/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

시스템들 및 방법들은 사용자들에게 컴퓨팅 디바이스 상에서 실행하는 애플리케이션들 및 프로세스들에 의한 시스템 리소스 활용을 통지하기 위해 시스템 리소스 사용량의 그래픽 표현을 리소스 활용 맵에서 디스플레이하는 것을 가능하게 한다. 사용자들은 시스템으로 하여금 사용자 선호사항들에 기초하여 리소스 할당들을 조정가능하게 하는 입력들을 제공할 수도 있다. 이것은 사용자들로 하여금, 가장 또는 최소 관심을 가진 애플리케이션들 또는 프로세스들을 식별하고 그에 따라서 디바이스 프로세서가 시스템 리소스들을 우선순위화함으로써, 그들의 현재의 개인 선호사항들에 따라서 디바이스의 전체 동작 성능을 향상시킬 수 있게 할 수도 있다. 일부 양태들은 커뮤니티 기반의 리소스 할당 방식들을 가능하게 하기 위해 이런 사용자 입력에 기초한 리소스 할당 데이터를 중앙 서버로 송신한다. 커뮤니티 기반의 리소스 할당 방식들은 특정의 애플리케이션들, 웹사이트들 또는 디바이스 동작 상태들에 대한 디폴트 또는 예비 리소스 할당들로서 사용하기 위해 컴퓨팅 디바이스들로 송신될 수도 있다.

Description

리소스 활용 맵들을 사용한 최적화된 실행을 위한 방법 및 장치{METHOD AND APPARATUS FOR OPTIMIZED EXECUTION USING RESOURCE UTILIZATION MAPS}
본 발명은 일반적으로 컴퓨팅 디바이스들에서의 리소스 할당에 관한 것으로, 좀더 구체적으로는, 리소스 활용의 그래픽 표현에 대한 사용자 응답들에 기초한 최적화된 리소스 할당에 관한 것이다.
모바일 디바이스들 (예컨대, 스마트폰들) 은 현재 광범위한 계산들을 수행하고 대량의 데이터를 통신하도록 나아가고 있다. 현대의 모바일 디바이스들에 사용되는 프로세서들 및 무선 모뎀들은 인상적인 용량들을 갖고 있지만, 현대의 애플리케이션들, 및 용도들 (uses) 은 종종 프로세싱 용량 및 통신 대역폭의 한계들을 압박한다. 종종 프로세싱 및/또는 통신 대역폭의 과중 사용자들인 애플리케이션들 또는 프로세스들은 백그라운드에서 동작하고 있다 (예컨대, 애플리케이션들에 대한 업데이트들, 광고 (ads) 또는 백그라운드 정보의 다운로드 등). 프로세싱 용량 또는 대역폭을 요구하는 보이지 않는 또는 미지의 프로세스들/애플리케이션들의 결과, 사용자들은 그들의 디바이스들의 부진한 성능으로 좌절하게 될 수도 있다. 비-기술적인 사용자들은 그들의 디바이스들이 행하는 것과 스크린 상에 제시되는 것에 관심을 가지며, 이런 기능을 가능하게 하는 백그라운드 프로세스들 및 디바이스 리소스들에 관심을 갖지 않는다.
애플리케이션의 상이한 부분들은 인지된 사용자 경험에 상이하게 기여한다. 예를 들어, 사용자가 웹 페이지를 방문할 때, 사용자는 페이지의 작은 부분에만 오직 관심을 가질지 모르지만, 페이지에서의 광고 (ads) 가 스크린 상에 그 페이지를 제시하는데 요구되는, 프로세싱 전력, 통신 대역폭, 및 배터리 에너지 대부분을 소비할 수도 있다. 또 다른 예로서, 사용자가 비디오를 보고 있는 동안, 백그라운드 프로세스 (예컨대, 날씨 애플리케이션 데이터 다운로드) 는 네트워크에 액세스하기 시작하여, 사용자가 비디오를 보는데 사용되는 것이 좋을 통신 대역폭의 부분을 소비할 지도 모른다. 사용자의 관점에서는, 이들 작업들에 의해 사용되는 리소스들은 낭비된다. 리소스 사용량들 (usages) 을 모니터링하는 현재의 툴들은 비-기술적인 사용자들의 이해를 넘어선다. 심지어 기술적인 사용자들도, 프로세스 리스트를 체킹하고, 백그라운드 서비스들을 인에이블링 및 디스에이블링하고, 그들의 리소스 사용량을 조사하고, 그리고 그들을 다시 관심 애플리케이션들의 실제 거동에 관련시킴으로써, 시스템을 수동으로 조정하기가 어렵다는 것을 깨닫고 있다. 정상 사용자들에 대해 어떤 이런 메커니즘이 존재하지 않으므로, 모바일 디바이스들은 일반적으로 리소스 사용량을 커스터마이징하는 미세 수준의 메커니즘들을 제공하지 않는다.
여러 양태들은 컴퓨팅 디바이스의 리소스 활용 정보를, 대응하는 디스플레이 엘리먼트에 의한 리소스의 사용량을 나타내는 하나 이상의 시각적 표시자들을 포함하는 그래픽 표현으로 변환하는 단계, 및 각각의 시각적 표시자가 그의 대응하는 디스플레이 엘리먼트와 정렬되도록 그래픽 표현 (graphical representation) 을 (어떤 시간들 또는 조건들에서 수동으로 또는 자동적으로) 디스플레이하는 단계를 포함하는 컴퓨팅 디바이스 상에서 실행하는 사용자 인터페이스 방법을 포함한다.
여러 양태들은 기능 (function), 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 리소스의 사용량을 나타내는 시각적 표시자를 포함하는 리소스 활용 맵 (resource utilization map) 으로 변환하는 단계, 및 시각적 표시자가 대응하는 디스플레이 엘리먼트와 정렬되도록 리소스 활용 맵을 디스플레이하는 단계를 포함하는, 컴퓨팅 디바이스 상에서 실행될 수도 있는 사용자 인터페이스 방법을 포함할 수도 있다. 양태 방법들은 리소스 활용 정보를 획득하는 단계를 더 포함할 수도 있다.
일 양태에서, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를 히트 맵 (heat map) 리소스 활용 맵으로 변환하는 단계를 포함할 수도 있으며, 프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은 칼라의 관점에서 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는 칼라 오버레이 디스플레이를 생성하는 단계를 포함한다.
일 양태에서, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를 바 그래프 리소스 활용 맵으로 변환하는 단계를 포함할 수도 있으며, 프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은 바 그래프에서의 바들의 높이의 관점에서 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는, 디스플레이 엘리먼트들과 연계하여 제시되는 바 그래프들을 포함한다.
일 양태에서, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를 표고 리소스 활용 맵 (elevation resource utilization map) 으로 변환하는 단계를 포함할 수도 있으며, 프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은 쉐도우들 (shadows) 의 사이즈의 관점에서 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는, 디스플레이 엘리먼트들에 적용된 쉐도우들을 포함한다.
일 양태에서, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를 표고 리소스 활용 맵으로 변환하는 단계를 포함할 수도 있으며, 프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은 다른 디스플레이 엘리먼트들에 대한 상대 표고의 관점에서 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는 표고 디스플레이 엘리먼트들을 포함한다.
일 양태에서, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계를 포함할 수도 있으며, 프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은 컴퓨팅 디바이스 디스플레이의 주변부에 위치된 표시자들을 포함한다.
일 양태에서, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 컴퓨팅 디바이스 상에 저장된 애플리케이션들에 의한 리소스 활용에 관한 정보를 변환하는 단계를 포함할 수도 있으며, 상기 시각적 표시자들은 애플리케이션이 프로세서 상에서 실행되고 있을 때의 리소스 사용량을 나타낸다.
일 양태에서, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는 리소스 활용에 관한 정보를 디스플레이 엘리먼트와 연관되지 않은 백그라운드 프로세스들에 의한 리소스 활용을 나타내는 리소스 활용 맵으로 변환하는 단계를 포함할 수도 있으며, 프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은 백그라운드 프로세스 및 백그라운드 프로세스에 의한 상대적인 리소스 활용의 양자를 식별하는 표시자들의 디스플레이를 포함한다.
일 양태에서, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 복수의 리소스 활용 맵들로 변환하는 단계를 포함할 수도 있으며, 상기 복수의 리소스 활용 맵들 각각은 복수의 시스템 리소스들 중 하나의 시스템 리소스에 대응하며, 상기 복수의 리소스 활용 맵 각각은 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 복수의 시스템 리소스들 중 하나의 사용량을 나타내는 시각적 표시자를 포함한다. 일 양태에서, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는 제 1 및 제 2 리소스들의 활용에 관한 정보를 버블 (bubble) 이미지를 포함하는 버블 리소스 활용 맵으로 변환하는 단계를 포함할 수도 있으며, 상기 제 1 리소스의 사용량을 나타내는 시각적 표시자는 버블의 직경이며, 상기 제 2 리소스의 사용량을 나타내는 시각적 표시자는 버블의 칼라 또는 명암 (intensity) 중 하나이다.
이 방법들은 디스플레이된 리소스 활용 맵에 응답하여 사용자 입력을 수신하는 단계, 및 수신된 사용자 입력에 기초하여 컴퓨팅 디바이스의 리소스들을 할당하는 단계를 더 포함할 수도 있으며, 상기 컴퓨팅 디바이스의 리소스들을 할당하는 단계는 수신된 사용자 입력에 기초하여 컴퓨팅 디바이스의 리소스들을 직접적으로 할당하는 단계, 수신된 사용자 입력에 기초하여, 운영체제 메카니즘들을 사용하여 컴퓨팅 디바이스의 리소스들을 간접적으로 할당하는 단계, 및 우선순위 설정 및 리소스 허가 중 하나 또는 양자를 조정하는 단계를 더 포함할 수도 있다.
추가 양태는 프로세서에 커플링된 메모리 및 디스플레이를 포함하는 컴퓨팅 디바이스를 포함하며, 여기서 프로세서는 위에서 설명한 방법들의 동작들을 수행하는 프로세서 실행가능한 명령들로 구성된다. 추가 양태는 위에서 설명한 방법들의 동작들을 수행하는 수단을 포함하는 컴퓨팅 디바이스를 포함한다. 추가 양태는 컴퓨팅 디바이스의 프로세서로 하여금, 위에서 설명한 방법들의 동작들을 수행하게 하도록 구성된 프로세서-실행가능한 명령들을 저장하고 있는 비일시성 프로세서-판독가능 저장 매체를 포함한다.
추가 양태는 대응하는 디스플레이 엘리먼트에 의한 리소스의 사용량을 나타내는 하나 이상의 시각적 표시자들을 포함하는 디스플레이된 그래픽 표현에 응답하여 사용자 입력들에 기초한 리소스 할당 데이터를 여러 컴퓨팅 디바이스들로부터 수신하는 단계, 수신된 리소스 할당 데이터에 기초하여 리소스 할당 방식을 생성하는 단계, 및 리소스 할당 방식을 송신하는 단계를 포함하는, 중앙 서버 상에서 실행되는 리소스 최적화 방법을 포함할 수도 있다. 이 양태 방법은 중앙 서버 상에서 실행될 수도 있으며, 대응하는 디스플레이 엘리먼트에 의한 리소스의 사용량을 나타내는 하나 이상의 시각적 표시자들을 포함하는 디스플레이된 그래픽 표현에 응답하여 사용자 입력들에 기초한 리소스 할당 데이터를 복수의 컴퓨팅 디바이스들로부터 수신하는 단계, 수신된 리소스 할당 데이터에 기초하여 커뮤니티 리소스 할당 방식을 생성하는 단계, 및 커뮤니티 리소스 할당 방식을 송신하는 단계를 포함할 수도 있다. 여러 양태들에서, 수신된 리소스 할당 데이터는 사용자 선호사항들, 디스플레이된 리소스 활용 맵에 응답하여 복수의 컴퓨팅 디바이스들의 각각에 의해 수신된 사용자 입력들, 및 디스플레이된 리소스 활용 맵에 응답하여 사용자 입력들을 수신하도록 장착된 각각의 컴퓨팅 디바이스들에 설정된 우선순위 설정 및 리소스 허가 중 하나 또는 양자 중 하나 이상을 포함한다. 추가 양태는 이 방법의 동작들을 수행하는 프로세서 실행가능한 명령들로 구성되는 서버를 포함한다. 추가 양태는 이 방법의 기능들을 달성하는 수단을 포함한다. 추가 양태는 서버로 하여금, 이 양태 방법의 동작들을 수행하게 하도록 구성된 서버-실행가능한 명령들을 저장하고 있는 비일시성 컴퓨터-판독가능 저장 매체를 포함한다.
본원에 포함되어 본 명세서의 일부를 구성하는 첨부 도면들은, 본 발명의 예시적인 양태들을 예시한다. 위에서 주어진 일반적인 설명 및 아래에 주어지는 상세한 설명과 함께, 도면들은 본 발명의 특성들을 설명하기 위해 제공된다.
도 1 은 여러 하위 구성요소들로 이루어지는 예시적인 애플리케이션 윈도우의 다이어그램이다.
도 2a 및 도 2b 는 리소스 활용을 히트 맵의 유형으로 보이는 윈도우 상에 오버레이된 리소스 활용 맵을 나타내는 예시적인 애플리케이션 윈도우의 다이어그램들이다.
도 3 은 리소스 활용을 쉐도우들의 유형으로 보이는 윈도우 상에 오버레이된 리소스 활용 맵을 나타내는 예시적인 애플리케이션 윈도우의 다이어그램이다.
도 4 는 리소스 활용을 바 그래프 디스플레이들의 유형으로 보이는 윈도우 상에 오버레이된 리소스 활용 맵을 나타내는 예시적인 애플리케이션 윈도우의 다이어그램이다.
도 5 는 대응하는 디스플레이 엘리먼트들의 좌표들을 표시하기 위해, 디스플레이 축들 상에 리소스 활용을 마커들의 유형으로 보이는 윈도우 상에 오버레이된 리소스 활용 맵을 나타내는 예시적인 애플리케이션 윈도우의 다이어그램이다.
도 6 은 리소스 활용을 그리드 시스템의 유형으로 보이는 윈도우 상에 오버레이된 리소스 활용 맵을 나타내는 예시적인 애플리케이션 윈도우의 다이어그램이다.
도 7 은 리소스 활용을 애플리케이션 아이콘들의 디스플레이를 오버레이하는 히트 맵의 유형으로 보이는 윈도우 상에 오버레이된 리소스 활용 맵을 나타내는 예시적인 애플리케이션 윈도우의 다이어그램이다.
도 8a 및 도 8b 는 리소스 활용을 임의의 디스플레이 엘리먼트에 대응하지 않는 백그라운드 프로세스들을 디스플레이하는 추가적인 차트의 유형으로 보이는 윈도우 상에 오버레이된 리소스 활용 맵을 나타내는 예시적인 애플리케이션 윈도우의 다이어그램들이다.
도 9 는 리소스 사용량의 그래픽 표현을 구현하는 양태 방법의 프로세스 흐름도이다.
도 10a 는 리소스 사용량의 그래픽 표현을 구현하는 양태 방법의 프로세스 흐름도이다.
도 10b 는 사용자 응답들을 다수의 컴퓨팅 디바이스들 상의 그래픽 표현들로 중심적으로 컴파일링하는 프로세스 흐름도이다.
도 10c 는 사용자 응답들을 다수의 컴퓨팅 디바이스들 상의 그래픽 표현들로 중심적으로 컴파일링하는 것으로부터 제공된 리소스 사용량 및 활용 정보의 그래픽 표현을 구현하는 양태 방법의 프로세스 흐름도이다.
도 11 은 여러 양태들과 함께 사용하기에 적합한 컴퓨팅 디바이스의 컷어웨이 뷰 (cutaway view) 이다.
도 12 는 여러 양태들과 함께 사용하기에 적합한 예시적인 휴대형 컴퓨팅 디바이스의 예시이다.
도 13 은 여러 양태들과 함께 사용하기에 적합한 예시적인 개인용 컴퓨터의 예시이다.
여러 양태들을 첨부 도면들을 참조하여 자세히 설명한다. 가능한 경우에는 언제나, 동일한 또는 유사한 부재들을 지칭하기 위해서 동일한 참조 번호들이 도면들에 걸쳐서 사용될 것이다. 특정의 예들 및 구현예들에 대한 참조들은 예시적인 목적들을 위한 것이며, 본 발명 또는 청구항들의 범위를 한정하려고 의도되지 않는다.
단어 "예시적인" 은 "예시적인, 사례, 또는 예시로서 기능하는 것" 을 의미하도록 본원에서 사용된다. 본원에서 "예시적인" 으로서 설명하는 임의의 구현예는 다른 구현예들보다 바람직하거나 또는 유리한 것으로 반드시 해석해서는 안된다.
본원에서 사용될 때, 용어 "컴퓨팅 디바이스" 및 "모바일 디바이스" 는 셀룰러 전화기들, 개인 텔레비전 수신기들, 개인 휴대 정보단말들 (PDAs), 팜탑 컴퓨터들, 노트북 컴퓨터들, 개인용 컴퓨터들, 무선 전자 메일 수신기들, 셀룰러 전화기 수신기들 (예컨대, Blackberry® 및 Treo® 디바이스들), 멀티미디어 인터넷 사용가능한 셀룰러 전화기들 (예컨대, Blackberry Storm®), 및 프로그래밍가능 프로세서, 메모리, 및 디스플레이를 포함한 유사한 전자 디바이스들 중 임의의 하나 또는 모두를 지칭한다.
컴퓨팅 디바이스 상에서 실행하는 여러 프로세스들 및 애플리케이션들은 종종 동일한 시스템 리소스들을 얻기 위해 경쟁한다. 이것은 최적의 성능보다 느리게 실행하거나 또는 아니면 최적의 성능 아래의 성능을 나타내는 일부 애플리케이션들 또는 프로세서들을 초래할 수도 있다. 리소스들이 사용자가 약간 또는 거의 관심을 갖지 않는 프로세스들 또는 애플리케이션들에 할애되고 있으면, 그 결과는 사용자 불만 (frustration) 및 감소된 사용자 경험일 수도 있다. 따라서, 사용자가 가장 관심을 갖는 프로세스에 관해 컴퓨팅 디바이스의 성능을 향상시키기 위해서는, 사용자로 하여금 특정의 프로세스 또는 애플리케이션을 지원하는 것에 대해 리소스들을 할당하거나 또는 우선순위화하도록 하는 것이 유익할 것이다.
컴퓨팅 디바이스 상의 여러 프로세스들 및 애플리케이션들에 의해 소비되는 리소스들을 모니터링하는 툴들이 사용가능하지만, 이런 툴들은 일반적으로 대부분의 사용자들에게 너무 복잡하다. 현재의 작업 관리기들 또는 리소스 활용 정보를 모니터링하는 다른 수단은 종종 평균 사용자가 파악할 수도 없는 복잡한 통계치들 또는 프로세스 이름들의 긴 리스트들을 제시한다. 이런 리소스들의 비한정적인 예들은 CPU 시간의 양, 메모리의 양, 소비된 에너지, 네트워크 대역폭 등을 포함한다.
본원에서 개시된 여러 양태들은, 시스템 리소스 사용량의 그래픽 표현을 디스플레이하는 시스템들 및 방법들을 제공함으로써, 이들 사용자는 요구들을 해소하고, 종래의 알려진 툴들의 제한들을 극복한다. 시스템 리소스 사용량의 이런 그래픽 표현은 본원에서 리소스 활용 맵으로서 지칭된다. 여러 양태들에서 리소스 활용 맵들은 컴퓨팅 디바이스 사용자에게 시각적 표시자들을 통해서 기능들, 애플리케이션들, 프로세스들, 프로세스들의 구성요소들, 및 디바이스 상에서 실행하는 애플리케이션들의 구성요소들, 특히 대부분의 시스템 리소스들을 소비하고 있는 구성요소들에 의해 사용되는 시스템 리소스들의 상대적인 양에 관해 통지하도록 구성된다. 사용자들은 이런 리소스 활용 맵들과 상호작용하여, 강조되거나 또는 강조 해제되어야 하는 프로세스들 또는 애플리케이션들에 관한 입력을 제공할 수도 있다. 예를 들어, 사용자들은 리소스 활용 맵의 부분들을 터치하여, 대응하는 애플리케이션 또는 프로세스들에 대한 리소스 우선순위들이 증가되거나 또는 감소되어야 한다는 것을 나타낼 수도 있다. 컴퓨팅 디바이스의 운영체제는 리소스 활용의 그래픽 표현에 응답하여 수신된 하나 이상의 사용자 입력들에 기초하여, 여러 애플리케이션들 및 프로세스들에 적용되는 우선순위들 및 리소스 허가들을 조정하도록 구성될 수도 있다. 이와 같이, 사용자들은 디바이스 프로세서 또는 프로세서들로 하여금 시스템 리소스들을 가장 관심있는 애플리케이션들 또는 프로세스들에 집중하게 하고 사용자가 약간 또는 거의 관심이 없는 애플리케이션들 또는 프로세스들에 의한 리소스 활용을 제한함으로써, 그들의 컴퓨팅 디바이스와 상호작용하여 그들의 현재의 개인 선호사항들에 따라 그의 전체 동작 성능을 향상시킬 수 있다.
추가 양태에서, 컴퓨팅 디바이스들은 중앙 서버로 사용자 입력들에 응답하여 이루어진 리소스 할당 우선순위들에 관한 정보를 송신하도록 구성될 수도 있다. 복수의 컴퓨팅 디바이스들로부터의 데이터는 이런 중앙 서버 상에서 수신될 수도 있으며, 여기서 데이터는 대부분의 컴퓨팅 디바이스 사용자들의 리소스 선호사항들을 반영하여 커뮤니티 기반의 리소스 할당 방식들을 생성하는데 사용될 수도 있다. 이런 커뮤니티-기반의 리소스 할당 방식들은 하나 이상의 컴퓨팅 디바이스들로 송신될 수도 있다. 이런 커뮤니티-기반의 리소스 할당 방식들을 수신하는 컴퓨팅 디바이스들은 예컨대, 사용자 입력들을 리소스 활용 맵을 통해서 수신하기 전에 프로세스들 및 애플리케이션들에 대해서 리소스들을 예비적으로 우선순위화하기 위해, 디바이스 우선순위들을 설정하기 위한 이런 리소스 할당 정보를 사용할 수도 있다.
여러 양태들에 따른 리소스 활용 맵은 사용자들에게 컴퓨팅 디바이스의 하나 이상의 시스템 리소스들을 사용하고 있는 관련 프로그램들 또는 프로세스들을 통지하도록 구성될 수도 있다. 리소스 활용 맵은 컴퓨팅 디바이스와 컴퓨팅 디바이스가 실행하는 애플리케이션들 및 프로세스들의 기술적인 세부 사항들의 지식을 필요로 하지 않고 일반적인 사용자들에 의해 용이하게 파악될 수 있는 방법으로 정보를 제시하도록 구성될 수도 있는 컴퓨팅 디바이스의 프로세서 또는 프로세서들에 의해 생성된 정보의 디스플레이이다. 이 시각적 표시는 여러 애플리케이션들의 리소스 요구들의 사용자들에 의한 상대적으로 빠르고 용이한 비교들 뿐만 아니라, 바람직하지 않은 성능 이슈들을 초래하고 있을 수도 있는 기능들, 프로세스들, 애플리케이션들, 프로세스들의 구성요소들, 및 애플리케이션들의 구성요소들을 식별하는 것을 가능하게 할 수도 있다.
여러 양태들에서, 리소스 활용 맵은 컴퓨팅 디바이스 디스플레이 상에 제시되는 하나 이상의 윈도우들 또는 디스플레이들과 함께 제시될 수도 있다. 일 예로서, 애플리케이션 윈도우 (100) 가 도 1 에 도시된다. 도 1 에 나타낸 바와 같이, 다운로드되는 웹 페이지를 제시하는 웹 브라우저와 같은 애플리케이션들은 다양한 디스플레이 엘리먼트들을 포함하는 시각적 디스플레이들을 일반적으로 생성하며, 다양한 디스플레이 엘리먼트들 중 일부 또는 모두는 시스템 리소스들을 소비하는 프로세스들 또는 애플리케이션들에 대응하거나 또는 그에 의해 생성될 수도 있다. 도 2a 내지 도 6 은 그래픽들을 오버레이하거나 또는 아니면 샘플 애플리케이션 윈도우 (100) 상에 나타나는 이미지 엘리먼트들을 수정하는, 여러 양태들에 따른 대안적인 리소스 활용 맵 구현예들의 예들을 예시한다. 일부 양태들에서, 리소스 활용 맵은 애플리케이션 윈도우 또는 다른 디스플레이 위에 레이어로서 제시될 수도 있다. 오버레이된 리소스 활용 맵은 디스플레이의 엘리먼트가 리소스들을 사용하고 있는 시각적 표현들 또는 표시자들을 포함하지만, 다르게는 그 디스플레이를 차단하는 것을 회피할 수도 있다. 추가 양태들은 리소스 활용 맵을 디스플레이 자체에 통합할 수도 있다. 리소스 활용 맵은 또한 도 7 에 나타낸 바와 같은 일련의 아이콘들과 같은 메뉴 디스플레이들에 적용될 수도 있다.
일부 양태들에서, 컴퓨팅 디바이스의 사용자는 사용자의 선호사항들을 통신하기 위해 특정의 기능들, 프로세스들, 애플리케이션들, 프로세스들의 구성요소들, 또는 애플리케이션들의 구성요소들을 선택함으로써 (예컨대, 터치 스크린 디스플레이 상에서 이미지 엘리먼트를 터치함으로써), 디스플레이된 리소스 활용 맵에 응답할 수도 있으며, 따라서 컴퓨팅 디바이스가 이런 사용자 입력들을 사용하여 시스템 리소스들을 우선순위화하거나 또는 재할당할 수 있다. 사용자 리소스 우선순위화 선호사항 입력들은 임의의 유형의 사용자 입력을 통해서, 예컨대, 마우스로 클릭하거나 또는 터치 스크린을 터치하는 것을 통해서 수신될 수도 있다. 예를 들어, 사용자는 디스플레이 엘리먼트와 연관된 리소스 활용 맵의 시각적 표시자를 클릭하여, 시스템 리소스들의 우선순위 할당을 위해 또는 시스템 리소스들을 제한하거나 또는 거부하기 위해 그 엘리먼트에 대응하는 애플리케이션 또는 프로세스를 선택할 수도 있다. 사용자 선택에 기초하여, 컴퓨팅 디바이스 프로세서 또는 프로세서들 (또는, 더 정확하게는, 프로세서(들) 상에서 실행하는 운영체제의 애플리케이션 또는 구성요소) 은 현재 실행중인 애플리케이션들 및 프로세스들 간에 시스템 리소스들을 재할당할 수도 있다. 사용자에 의해 선택된 디스플레이 엘리먼트는 단일 또는 다수의 하부의 프로세스들과 연관될 수도 있으며, 따라서, 사용자 선택이 다수의 프로세스들에 대한 시스템 리소스 할당들에 영향을 미칠 수도 있다. 일부 양태들에서, 리소스 활용 맵은 대응하는 시각적 엘리먼트가 존재하지 않는 하부의 프로세스들 또는 애플리케이션들에 관한 정보를 제공함으로써, 사용자들로 하여금 그렇지 않으면 사용자가 인식하지 못할지도 모르는 백그라운드 프로세스들에 관한 그들의 선호사항들을 통신가능하게 할 수도 있다.
우선순위가 바람직한 프로세스 또는 애플리케이션을 사용자 입력이 식별하면, 컴퓨팅 디바이스 프로세서 (또는, 프로세서의 운영체제) 는 리소스 활용 결정을 행하여, 선택된 애플리케이션들 또는 프로세스들이 시스템 리소스들에 우선적으로 액세스하는 것을 보증할 수도 있다. 사용자 입력이 바람직하지 않은 애플리케이션들 또는 프로세스들 (예컨대, 사용자가 거의 또는 전혀 관심을 갖지 않는 디스플레이 엘리먼트들) 을 선택하는 경우에, 프로세서 (또는, 멀티-프로세서 디바이스에서의 프로세서들) 또는 프로세서 운영체제는, 일부 경우 하부의 프로세스들을 종료하는 것을 포함하여, 선택된 엘리먼트들에 대한 시스템 리소스들을 제한하거나 또는 거부하는 리소스 할당 결정들을 행할 수도 있다. 이것은 디바이스 프로세서 또는 프로세서들이 선택된 엘리먼트와 연관되는 프로세스들로부터 시스템 리소스들을 옮길 수 있게 함으로써, 그들 리소스들을 그 디바이스 상에서 동작하는 다른 애플리케이션들 및 프로세스들에 사용가능하게 할 수도 있다.
이와 같이, 리소스 활용 맵은, 사용자들이 시스템 리소스 관리의 정상 프로세스들에 영향을 미치는 것을 가능하게 하기 위해, 그래픽 사용자 인터페이스의 일종으로서 기능할 수도 있다. 디스플레이 엘리먼트들과 그들의 하부의 프로세스들의 사이의 관계들이 리소스 활용 맵에 그래픽적으로 제시되므로, 사용자가 이런 관계를 알거나 또는 파악할 필요가 없다. 대신, 사용자는 시스템 리소스들이 사용되고 있는 장소를 파악하기 위해 리소스 활용 맵을 검토하고, 사용자가 차라리 강조시켜 또는 강조 해제시켜 보기를 선호하는 디스플레이 엘리먼트들을 선택할 수도 있다. 컴퓨팅 디바이스는 그후 그 사용자 입력을 사용하여, 자동적으로 리소스들을 재할당함으로써 사용자의 표시된 선호사항들을 조정할 수도 있다.
도 1 은 샘플 애플리케이션 윈도우 (100) 를 웹 브라우저에 의해 생성된 웹 페이지의 유형으로 예시한다. 애플리케이션 윈도우들은 웹 브라우저와 같은, 컴퓨팅 디바이스 상에서 동작하는 여러 애플리케이션 디스플레이들 또는 그래픽 사용자 인터페이스들을 포함할 수도 있다. 애플리케이션 윈도우는 여러 하위 구성요소들을 포함할 수도 있다. 샘플 애플리케이션 윈도우 (100) 는 하위 구성요소들 (102, 104, 106, 108, 110, 및 112) 을 포함한 웹 페이지를 포함할 수도 있다. 이들 하위 구성요소들의 각각은 상이한 유형의 콘텐츠를 디스플레이하거나 또는 상이한 리소스들에 의존하는 상이한 프로세스들을 실행할 수도 있다. 예를 들어, 하나의 하위 구성요소 (102) 는 Adobe Flash 에서의 배너와 같은 광고일 수도 있지만, 다른 하위 구성요소 (104) 는 비디오 윈도우일 수도 있다. 웹 페이지는 또한 여러 장소들에 배열된 평이한 또는 정형화된 텍스트를 포함할 수도 있다. 또, 일부 구성요소들은 하위 구성요소 (112) 와 같은 JavaScript 애니메이션, 및 하위 구성요소들 (106, 108, 및 110) 과 같은 상이한 AJAX 위젯들의 유형들을 포함할 수도 있다. 도 1 에 예시된 하위 구성요소들의 배열은 단지 일 예이며, 당업자는 웹 페이지들이 매우 다양한 상이한 유형들의 디스플레이 엘리먼트들 및 대응하는 백그라운드 프로세스들과 함께, 매우 다양한 형태들이 될 것이라는 것을 알 수 있을 것이다. 웹 브라우저 웹 페이지 디스플레이가 여러 양태들을 예시하는데 사용되지만, 양태들 및 청구항들은 웹 브라우저들에 한정되지 않으며, 일반적으로 컴퓨팅 디바이스에 의해 제시될 수도 있는 임의 유형의 디스플레이에 적용가능하다. 또한, 애플리케이션 윈도우들에 대한 참조들은 오직 예시 목적들만을 위한 것이며, 메뉴들, 데스크탑 디스플레이들 등과 같은 다른 유형들의 디스플레이들을 배제하려고 의도되지 않는다.
도 2a 는 맵이 애플리케이션 윈도우의 오버레이로서 제시되는 양태에 따른 리소스 활용 맵 (200) 을 예시한다. 이 리소스 활용 맵 (200) 은 상이한 디스플레이 하위 구성요소들을 지원하는 애플리케이션 서버 프로세스들의 리소스 활용에 관한 상대적인 정보를 디스플레이를 오버레이하는 히트 맵 또는 음영에 의해 제공한다. 예를 들어, 대응하는 애플리케이션들 또는 프로세스들이 대량의 시스템 리소스들을 소비하고 있는 일부 구성요소들은 상대적인 리소스 활용을 칼라 또는 음영의 다크니스 (darkness of the shading) 를 통해서 나타내는 칼라 또는 음영에 의해 오버레이될 수도 있다. 본 양태에서, 리소스 활용 맵 (200) 은, 하부의 디스플레이 엘리먼트들에 대응하는 프로세스들에 의해 소비되는 리소스들의 양을 반영하는 온도 및 온도들을 나타내는 칼라들로 적외선 이미지가 디스플레이 상에 투영되어 지는 것처럼, 히트 맵과 유사할 수도 있다. 사용자들은 적외선 및 나이트 비전 이미징 (night vision imaging) 을 특징으로 하는 영화들 및 텔레비전 프로그램들로부터의 히트 맵들의 컨셉에 친숙할 수도 있다. 따라서, 히트 맵 리소스 활용 맵은 많은 사용자들이 파악하고 조작하기가 쉽다고 발견할 이해하기 쉬운 디스플레이된 상대적인 리소스 활용을 제공한다. 이런 양태들에서, 히트 맵 디스플레이에서 사용된 칼라들은, 리소스 활용이 낮은 구성요소들을 나타내기 위한 청색, 리소스 활용이 높은 구성요소들을 나타내기 위한 주황색 또는 적색과 같이, 차가운, 따뜻한 그리고 뜨거운 온도들과 일반적으로 연관되는 칼라들을 채용할 수도 있다. 상이한 칼라들 또는 음영은 도 2a 및 도 2b 에 상이한 해칭 패턴들의 유형으로 예시된다.
예를 들어, 도 2a 에서, 디스플레이 하위 구성요소들 (106, 108, 및 110) 은 정적 엘리먼트들이며, 따라서, 임의의 하부의 프로세스들은 통신 대역폭과 같이 현저한 시스템 리소스들을 소비하지 않는다. 따라서, 디스플레이 하위 구성요소들 (106, 108, 및 110) 은 리소스 활용 맵의 음영으로 오버레이되지 않는다. 예시된 예에서, 디스플레이 하위 구성요소 (102) 에 대응하는 하부의 프로세스들은 적당한 양의 시스템 리소스들을 소비하고 있다. 따라서, 리소스 활용 맵 (200) 은 그 디스플레이 하위 구성요소 (102) 를 오버레이하는 차가운 칼라 (예컨대, 밝은 청색) 의 음영처리 부분 (202) 을 포함할 수도 있다. 예시된 예에서, 디스플레이 하위 구성요소 (112) 에 대응하는 하부의 프로세스들은 하위 구성요소 (102) 보다 더 많은 시스템 리소스들을 활용하고 있으며, 따라서, 리소스 활용 맵 (200) 은 디스플레이 구성요소들 (112) 을 오버레이하는 더 따뜻한 칼라 (또는, 더 어두운 음영) 를 특징으로 하는 음영처리 부분 (206) 을 포함한다. 예시된 예에서, 디스플레이 하위 구성요소 (104) 에 대응하는 하부의 프로세스들은 대부분의 시스템 리소스들을 활용하고 있으며, 따라서, 리소스 활용 맵 (200) 은 하위 구성요소의 과중한 리소스 사용량을 그래픽적으로 나타내기 위해 음영처리 부분 (204) 을 뜨거운 칼라 (예컨대, 주황색 또는 적색) 로 오버레이하는 것을 포함할 수도 있다.
컴퓨팅 디바이스들은 메모리, 프로세서 계산 시간, 통신 네트워크 대역폭, 내부 데이터 버스 활용, 및 전력 (예컨대, 상대적인 배터리 소비) 을 포함하는, 애플리케이션들 및 프로세스들에 의해 활용되는 많은 상이한 유형들의 리소스들을 포함한다. 예를 들어, 도 2b 는 도 2a 에 도시된 것과는 상이한 시스템 리소스의 상대적인 활용을 나타내는 제 2 리소스 활용 맵 (210) 을 예시한다. 예를 들어, 리소스 활용 맵 (200) 에서의 음영은 대역폭 사용량에 기초할 수도 있지만, 리소스 활용 맵 (210) 의 음영은 프로세싱 전력의 사용에 기초할 수도 있다. 따라서, 예시된 예들에서, 디스플레이 하위 구성요소들 (106 및 110) 은 다른 컴퓨터들과 통신하지 않으며 따라서 도 2a 에 나타낸 바와 같이 임의의 통신 대역폭을 사용하지 않지만 프로세서 계산 시간을 요구하는 애플리케이션들 또는 프로세서들에 대응하며, 따라서 도 2b 에서 뜨거운 칼라 (또는, 어두운) 의 음영 부분들 (212, 214, 및 216) 로 오버레이된다. 따라서, 도 2a 및 도 2b에 예시된 2개의 리소스 활용 맵들은 사용자에게 여러 디스플레이 엘리먼트들에 대응하는 애플리케이션들 또는 프로세스들에 의해 활용되는 시스템 리소스들의 상이한 유형들 및 상대적인 양들에 관해 통지한다.
리소스 활용 맵은 임의의 단일 시스템 리소스 또는 리소스들의 조합의 활용을 그래픽적으로 나타내도록 생성될 수도 있다. 예를 들어, 하나의 시스템 활용 맵이 프로세서 계산 시간의 상대적인 사용을 반영하도록 생성될 수도 있으며 (예컨대, 도 2b 에 참조하여 설명됨), 다른 리소스 활용 맵이 통신 대역폭의 상대적인 활용을 반영하도록 생성될 수도 있으며 (예컨대, 도 2a 를 참조하여 설명됨), 그리고, 추가적인 리소스 활용 맵이 (배터리 활용에 비례하는) 디바이스 소비 전력을 반영하도록 생성될 수도 있다. 이런 다수의 리소스 활용 맵들은 사용자의 선택 시에 디스플레이 상에 동시에 생성되어 오버레이될 수도 있다. 예를 들어, 사용자는 상이한 시스템 리소스들의 상대적인 사용을 파악하기 위해 상이한 리소스 활용 맵들을 순차적으로 선택할 수도 있다. 다수의 리소스 활용 맵들은 또한 서로의 상부 상에 제시될 수도 있다. 다수의 리소스 활용 맵들의 동시적인 오버레이를 가능하게 하는 양태들에서, 각각의 리소스 활용 맵은 최종 조합 맵이 파악될 수 있도록, 상이한 칼라 방식, 음영 명암들의 범위, 또는 오버레이 형태들을 사용할 수도 있다.
일부 양태들에서, 리소스 활용 맵들은 리소스들의 조합들의 활용을 반영하도록 생성될 수도 있다. 예를 들어, 단일 리소스 활용 맵은 메모리 및 프로세서 양자의 사용량의 조합을 반영하도록 생성될 수도 있다. 이런 조합 리소스 활용 맵들에서, 상이한 리소스들의 사용량은 상이한 시스템 리소스들에 대응시키기 위해, 상이한 심볼들, 칼라들 또는 형태들을 사용하는 것과 같은, 오버레이 포맷팅을 통해서 구별될 수도 있다. 예를 들어, 리소스 활용 맵은 2개의 상이한 칼라들의 음영을 포함하며, 여기서, 각각의 칼라는 상이한 리소스에 대응된다. 또 다른 예로서, 음영을 오버레이하는 형태는 음영, 예컨대 프로세서 활용을 나타내는 정사각형 음영 및 메모리 활용을 나타내는 타원형의 음영에 의해 어드레싱된 리소스의 유형을 나타낼 수도 있다.
여러 양태들에서, 리소스 활용 맵은 사용자들에 의해, 예컨대, 사용자가 버튼을 누르거나 또는 일부 다른 사용자 인터페이스 선택을 행하는 것에 의해 선택적으로 구동될 수도 있다. 리소스 활용 맵을 사용자에 의해 선택적으로 구동가능하게 하는 것은 리소스 활용 맵이 하부의 디스플레이를 뷰잉하는 것과 같은, 컴퓨팅 디바이스의 사용자의 정상 사용을 방해하는 것을 방지한다. 사용자들은 활성 애플리케이션들 및 프로세스들에 의한 상이한 리소스들의 상대적인 사용을 파악하기 위해, 상이한 리소스 활용 맵들을 선택적으로 활성화할 수도 있다. 예를 들어, 만족스럽지 못한 성능 (예컨대, 느린 응답들 또는 깜박거리는 디스플레이) 이 통지될 때 사용자는 비디오 또는 게임과 같은 콘텐츠를 뷰잉하고 있을 수도 있다. 그 이유를 조사하기 위해, 사용자는 리소스 활용 맵을 토글 온하여 디스플레이 엘리먼트들에 대응하는 여러 프로세스들의 상대적인 리소스 사용량을 보고, 그 후, 맵을 토글 오프하여 게임 또는 비디오를 뷰잉하는데 되돌아갈 수도 있다. 사용자는 디바이스 성능을 향상시키기 위해 비활성화되거나 또는 더 낮은 우선순위가 할당될 수도 있는 프로세스들 또는 애플리케이션들을 식별하려는 시도에서, 다수의 리소스 활용 맵들을 선택할 수도 있다.
예를 들어, 도 2a 및 도 2b 를 참조하면, 사용자는 리소스 활용 맵 (200) 과 리소스 활용 맵 (210) 간을 토글하거나, 또는 리소스 활용 맵들 양자를 동시에 턴 온할 수도 있다. 리소스들 양자에 기초하여 결합된 리소스 활용 맵이 또한 예컨대, 양자의 리소스 활용 맵들을 활성화하는 것에 응답하여 생성되어 제시될 수도 있다. 또, 리소스 활용 맵의 부분들은, 단일 디스플레이 하위 구성요소 또는 다수의 디스플레이 하위 구성요소들에 대해 리소스 활용 맵을 선택적으로 활성화하는 것과 같이, 별개로 턴 온되거나 또는 턴 오프될 수도 있다. 또한, 아래에서 설명되는 바와 같이, 리소스 활용 맵은 대응하는 디스플레이 엘리먼트를 갖지 않는 프로세스들에 의한 시스템 리소스들의 상대적인 사용을 검토하기 위해 턴 온될 수도 있다.
애플리케이션들 및 프로세스들이 간단한 인스턴스들에 대해 시스템 리소스들의 일부 유형들을 사용할 수도 있으므로, 임의의 주어진 순간에서의 리소스 활용은 여러 애플리케이션들 또는 프로세스들이 가질 수도 있는 성능 영향 (impact) 을 정확하게 반영하지 않을 수도 있다. 예를 들어, 프로세스들은 프로세서에 의한 간단한 계산들을 초당 여러 번 필요로 할 수도 있으므로, 프로세서 계산 능력들의 빈번한 활용이 디바이스 상에서 실행하고 있는 다른 애플리케이션들 또는 프로세스들의 성능에 영향을 미칠 수도 있다. 이러한 이유로, 리소스 활용 맵은 일부 리소스들의 시간 평균 활용에 기초할 수도 있다. 리소스 활용 맵들은 상이한 양들의 시간에 걸쳐 평균한 활용에 기초할 수도 있다. 게다가, 상이한 리소스 활용 맵들은 상이한 양들의 시간에 걸친 평균 리소스 사용량을 나타내기 위해 생성될 수도 있다. 예를 들어, 하나의 리소스 활용 맵은 선행하는 10 초에 걸친 평균 전력 사용을 나타낼 수 있는 반면, 다른 리소스 활용 맵은 선행하는 24 시간에 걸친 평균 전력 사용을 나타낼 수도 있다. 사용자는 이들 상이한 시간 평균화된 리소스 활용 맵들 사이에 토글하여, 어떻게 여러 애플리케이션들 및 프로세스들이 단기 및 장기간에 걸쳐서 배터리를 소모하고 있는 지를 파악할 수도 있다.
여러 양태들에서, 리소스 활용 맵은, 사용자로 하여금 리소스 활용 맵의 부분들을 터치하거나 또는 선택함으로써 선호사항들에 관한 입력들을 제공가능하게 하는 사용자 인터페이스로서 구성될 수도 있다. 예를 들어, 사용자는 비디오가 버퍼링으로 인해 지연되거나 또는 중단하지 않는 것을 보장하기 위해, 컴퓨팅 디바이스의 통신 대역폭 중 많은 부분을 디스플레이 하위 구성요소 (104) 에서 제시되는 스트리밍 비디오에 할애하기를 원할 수도 있다. 리소스 활용 맵 (200) 이 턴 온되면, 사용자는 디스플레이 하위 구성요소들 (102 및 112) 이 디바이스의 통신 대역폭을 또한 사용하고 있는 하부의 애플리케이션들 또는 프로세스들에 대응한다는 것을 알 수도 있다. 이 상황에서, 사용자는 디스플레이 하위 구성요소 (104) 와 연관되는 프로세스들이 더 많은 통신 대역폭을 수신해야 한다고 나타내거나, 또는 디스플레이 하위 구성요소들 (102 및 112) 과 연관되는 프로세스들이 통신 대역폭에의 제한된 액세스를 부여받아야 (또는, 비활성화되어야) 한다는 것을 나타내기 위해, 예컨대, 터치 스크린 디스플레이 상에서 리소스 활용 맵을 터치함으로써, 사용자 인터페이스와 상호작용할 수도 있다. 이 사용자 입력은 사용자가 컴퓨터 마우스를 사용하여 부분 (204) 또는 하위 구성요소 (104) 상을 클릭하는 유형일 수도 있다. 입력은 터치 스크린, 키보드, 마이크로폰, 또는 센서와 같은, 임의의 다른 유형의 컴퓨팅 디바이스 사용자 인터페이스를 통해서 또한 수신될 수도 있다. 이 사용자 입력에 응답하여, 컴퓨팅 디바이스 프로세서는 통신 대역폭을 디스플레이 하위 구성요소 (104) 에서 제시되고 있는 스트리밍 비디오에 재할당할 수도 있다.
도 2a 및 도 2b 는 리소스 활용 맵의 "히트 맵" 유형을 예시하지만, 리소스 활용의 다른 유형들의 그래픽 표현들이 사용될 수도 있다. 도 3 은 디스플레이 하위 구성요소들과 연관되는 프로세스들의 리소스 활용이 각각의 디스플레이 엘리먼트의 표고 또는 쉐도잉의 정도에 의해 표현되는 예시적인 리소스 활용 맵 (300) 을 예시한다. 이 예시적인 양태에서, 각각의 디스플레이 하위 구성요소는 대응하는 애플리케이션들 및 프로세스들에 의한 리소스 사용량에 대응하는 높이를 할당받을 수도 있다. 따라서, 더 많은 리소스 활용 사용량은 디스플레이 상에 더 큰 높이 표현으로 표시될 수도 있다. 높이는 2차원 디스플레이들 상의 쉐도우들 또는 다른 인공적인 표고 기법들에 의해, 또는 3차원 디스플레이들 상에 나타낸 표고에 의해 표시될 수도 있다. 예를 들어, 예시된 리소스 활용 맵 (300) 은 대응하는 애플리케이션들 또는 프로세스들의 리소스 활용을 보이기 위해, 상이한 깊이들의 쉐도우들 (302, 304, 및 306) 를 디스플레이 하위 구성요소들 (102, 104 및 110) 에 적용한다. 디스플레이 하위 구성요소들 (106, 108, 및 112) 은 돋우어 지거나 (raised) 또는 음영처리되지 않으며, 이것은 디스플레이 하위 구성요소들과 연관되는 프로세스들이 상당량의 시스템 리소스들을 사용하고 있지 않다는 것을 나타낸다. 쉐도우 (306) 는 쉐도우 (302) 보다 더 크며, 디스플레이 하위 구성요소 (110) 에 대응하는 프로세스들이 디스플레이 하위 구성요소 (102) 에 대응하는 프로세스들보다 더 많은 시스템 리소스들을 사용하고 있다는 것을 나타낸다. 쉐도우 (304) 는 쉐도우들 (306 및 302) 양자보다 더 크며, 디스플레이 하위 구성요소 (104) 에 대응하는 프로세스들이 디스플레이 하위 구성요소들 (102 및 110) 중 어느 것에 대응하는 프로세스들보다 더 많은 시스템 리소스들을 사용하고 있다는 것을 나타낸다.
도 4 는 디스플레이 하위 구성요소들에 대응하는 프로세스들에 의한 리소스 사용량이 각각의 디스플레이 엘리먼트의 부분 상에 오버레이된 바 그래프들에 표시되는 다른 예시적인 리소스 활용 맵 (400) 을 예시한다. 본 양태에서, 높이가 더 높은 바가 더 많은 리소스 사용량을 나타낼 수도 있다. 양태들은 디스플레이 하위 구성요소마다 다수의 바들을 제공하여, 상이한 유형들의 시스템 리소스들의 상대적인 활용을 반영할 수도 있다. 예를 들어, 예시된 리소스 활용 맵 (400) 은 여러 하위 구성요소들에 대해 2개의 바 디스플레이를 포함한다. 이런 양태에서, 하나의 바는 디스플레이 하위 구성요소에 대응하는 프로세스들에 의해 활용되는 메모리의 상대적인 양을 나타낼 수도 있는 반면, 다른 바는 디스플레이 하위 구성요소에 대응하는 프로세스들에 의해 사용되는 네트워크 대역폭을 나타낼 수도 있다. 예를 들어, 바 디스플레이 (402) 는 디스플레이 하위 구성요소 (102) 에 대응하는 프로세스들이 상대적으로 메모리 사용이 많고 적당한 양의 가용 통신 대역폭을 활용하고 있다는 것을 나타낼 수도 있다. 이와 유사하게, 바 디스플레이 (404) 는 디스플레이 하위 구성요소 (104) 에 대응하는 프로세스들이 더 많은 메모리 및 가용 통신 대역폭의 더 큰 부분을 사용하고 있다는 것을 나타낼 수도 있는 반면, 바 디스플레이 (406) 는 디스플레이 하위 구성요소 (108) 에 대응하는 프로세스들이 구성요소 (102) 보다 더 큰 가용 통신 대역폭을 사용하고 있지만 더 적은 메모리 공간을 요구하고 있다는 것을 나타낼 수도 있다.
본 양태에서, 리소스 활용 맵에서의 바들의 사이즈는 각각의 디스플레이 하위 구성요소에 대응하는 프로세스들의 리소스 사용량에 따라서 변할 수도 있다. 바들은 또한 스케일이 변할 수도 있다. 스케일은 모든 디스플레이 하위 구성요소와 연관되는 바들이 동일한 스케일이 되도록 절대적일 수도 있다. 이의 대안으로, 스케일은 디스플레이 하위 구성요소의 사이즈에 비례하도록 조정될 수도 있다. 상대적인 스케일들의 사용은 바들이 디스플레이 하위 구성요소의 사용자의 뷰를 차단하는 것을 방지할 수도 있다. 바 디스플레이들은 또한 상이한 모서리들에, 또는 하위 구성요소들의 외부에 위치될 수도 있다. 또, 구성, 스케일들, 위치들 등은 모두 사용자 선호사항들에 기초하여 조정될 수도 있다.
일부 양태들에서, 사용자는 도 2a 및 도 2b 를 참조하여 위에서 설명한 방법과 동일한 방법으로 입력 응답들을 바 리소스 활용 맵에 제공할 수도 있다. 이의 대안으로, 리소스 활용 맵 (400) 에서의 각각의 바는 그의 상부에 디스플레이되는 캡 (cap) 을 포함할 수도 있다. 이런 캡은 디스플레이 하위 구성요소에 대응하는 프로세스들에 의한 바에 대응하는 리소스의 최대 활용을 나타낼 수도 있다. 이런 양태에서, 사용자는 시스템이 디스플레이 하위 구성요소들에 대응하는 프로세스들에게 부여해야 하는 최대 리소스 활용에 관한 입력을 제공하기 위해, 예컨대, 캡들을 원하는 한계까지 드래그하여 드롭함으로써 캡들을 조정할 수도 있다. 이런 캡들을 조정함으로써, 사용자는 각각의 디스플레이 하위 구성요소에 대응하는 프로세스들에 이용가능한 최대 리소스들을 제한하거나 또는 증가시킬 수도 있다.
도 2a 및 도 2b 를 참조하여 위에서 설명한 리소스 활용 맵들 (200 및 210) 과 유사하게, 리소스 활용 맵들 (300 및 400) 은 또한 사용자에 의해 턴 온되거나 또는 턴 오프될 수도 있다. 최소 양의 디스플레이 영역이 도 3 및 도 4 에 예시된 리소스 활용 맵들 (300, 400) 에 의해 점유되므로, 사용자는 이런 리소스 활용 맵이 턴 온된 채로 그냥 두도록 선택할 수도 있다. 이와 같이, 사용자는 리소스 활용 맵이 시간에 따라서 자동적으로 업데이트함에 따라서, 하부의 프로세스들에 의한 리소스 활용에서의 변화들을 통지받을 수도 있다.
도 5 는 리소스 활용 맵 (500) 의 다른 유형을 예시하며, 여기서 디스플레이 하위 구성요소들에 대응하는 프로세스들에 의한 리소스 활용은 디스플레이 경계들 상에 제시되는 마커들에 의해 표시된다. 본 양태는 사용자가 상대적인 리소스 활용들을 통지받는 동안 집중의 방해 없이 디스플레이를 뷰잉가능하게 한다. 본 양태에서, 리소스 활용 마커들은 디스플레이 하위 구성요소의 디스플레이 좌표들을 나타내기 위해 디스플레이의 일 측면 및 최저부 (또는, 최상부) 를 따라서 배열될 수도 있다. 예를 들어, 디스플레이 하위 구성요소 (108) 에 대응하는 프로세스들에 의한 과중한 리소스 사용량은 리소스 활용 맵 (500) 에서 마커들 (502 및 504) 에 의해 표시된다. 마커 (502) 는 Y 좌표를 나타내며, 마커 (504) 는 X 좌표를 나타내며, 디스플레이 하위 구성요소 (108) 는 디스플레이 상의 이들 X-Y 좌표들에서 제시된다. 리소스 사용량의 상이한 레벨들은 상이한 형태들, 칼라들, 또는 사이즈들과 같은, 마커들에서의 차이들로 표시될 수 있다. 예를 들어, 마커들 (506 및 508) 은 디스플레이 하위 구성요소 (110) 에 대응하는 프로세스들이 디스플레이 하위 구성요소 (108) 에 대응하는 프로세스들보다 더 큰 시스템 리소스들의 활용을 요구하고 있다는 것을 나타내기 위해, 마커들 (502 및 504) 보다 더 크다. 마커들에서의 차이들은 또한 어느 마커들이 어느 하위 구성요소에 대응하는 지를 식별할 수도 있다. 도 5 에 예시된 양태는 리소스 활용 마커들이 디스플레이 상에 제시된 콘텐츠를 차단하지 않으므로 이점들을 제공할 수도 있다.
도 6 은 그리드 오버레이를 특징으로 하는 다른 양태 리소스 활용 맵 (600) 을 예시한다. 본 양태에서, 과중한 리소스 사용량을 가진 애플리케이션들 또는 프로세스들에 대응하는 그리드 오버레이의 영역들은 음영 부분들 (602) 로 채워질 수도 있다. 예를 들어, 하위 구성요소 (108) 에 대응하는 영역들은 더 큰 리소스 사용량을 나타내기 위해 리소스 활용 맵 (600) 에서 음영처리된다. 부분들 (602) 은 리소스 활용 맵들 (200 및 210) 의 히트 맵 부분들과 유사하게 칼라 또는 다크니스 (darkness) 가 변할 수도 있다.
위에서 언급한 바와 같이, 리소스 활용 맵들은 또한 메뉴들과 함께 채용될 수도 있다. 도 7 은 애플리케이션 아이콘들 (700) 의 디스플레이에 적용된 예시적인 리소스 활용 맵 (700) 을 예시한다. 각각의 아이콘 (702) 은 컴퓨팅 디바이스 (1100) 상에 설치된 애플리케이션을 나타낼 수도 있다. 예시된 리소스 활용 맵 (700) 은 리소스를 활용하거나 또는 대량의 시스템 리소스들을 일반적으로 요구하는 애플리케이션들을 나타내기 위해, 음영처리 부분들 (704, 706, 708) 을 포함한다. 메뉴 컨텍스트에서의 리소스 활용은 주어진 애플리케이션 (소프트웨어 및 연관되는 데이터) 에 의해 점유되는 메모리의 양, (예컨대, 애플리케이션이 현재 실행 중에 있으면) 현재 활용되는 시스템 리소스들의 양, 실행시 일반적으로 활용되는 리소스들의 양, 선행하는 간격에 걸쳐서 사용된 시스템 리소스들의 양 (예컨대, 선행하는 24 시간에 걸친 배터리 소비) 등을 나타낼 수도 있다. 또한, 이들 대안적인 리소스 활용 척도들 (measures) 의 각각을 나타내도록 상이한 리소스 활용 맵들이 생성될 수도 있다.
도 2a 내지 도 7 을 참조하여 위에서 설명한 리소스 활용 맵들은 디스플레이 엘리먼트들에 대응하는 애플리케이션들 또는 프로세스에 의한 상대적인 리소스 활용을 나타낸다. 그러나, 모든 활성 애플리케이션들 및 프로세스들이 시인가능한 디스플레이 엘리먼트와 연관되지는 않는다. 애플리케이션들 및 프로세스들은 백그라운드에서 활성화될 수도 있으며, 사용자가 현재 집중되고 있는 애플리케이션에 할당하기를 원하는 리소스들과 경쟁한다. 예를 들어, 사용자가 비디오를 뷰잉하고 있는 동안에 자동적인 애플리케이션 업데이트들이 활성화될 수도 있으며, 이에 따라서, 업데이트들을 다운로드하기 위해 통신 대역폭을 소비할 수도 있으며, 반면 사용자는 통신 대역폭이 비디오 데이터를 수신하는 것에 할애되는 것을 보기를 차라리 원할 것이다. 또 다른 예로서, 바이러스 검사들과 같은, 주기적인 유지관리 프로세싱은 백그라운드에서 실행하고, 설령 도 2a 내지 도 7 을 참조하여 위에서 설명한 것과 같이 리소스 활용 맵으로 식별될 수도 있는 대응하는 디스플레이 엘리먼트가 존재하지 않더라도, 시스템 리소스들을 소비할 수도 있다.
이런 백그라운드 프로세스들을 조정하기 위해, 리소스 활용 맵은 어떤 대응하는 디스플레이 엘리먼트 없이 백그라운드 프로세스들의 표시를 포함하도록 생성될 수도 있다. 예를 들어, 리소스 활용 맵은 도 8b 에 예시된 바와 같이 각각의 백그라운드 프로세스를 나타내는 이미지들을 가진 추가적인 맵 또는 디스플레이를 포함할 수도 있다. 이 추가적인 맵 또는 디스플레이는 리소스 활용 맵 내에서 사용자에 의해 턴 온 및 턴 오프되거나, 또는 리소스들이 모두 활용될 때 시스템에 의해 자동적으로 턴 온될 수도 있다. 이 추가적인 맵은 리소스 활용 맵과 유사하게 착색되거나, 음영처리되거나, 또는 아니면 마크될 수도 있다. 본 양태는 사용자가 백그라운드 프로세스들에 의한 리소스 활용에 관해 통지받을 수 있게 하며, 설령 어떤 대응하는 디스플레이 엘리먼트도 존재하지 않더라도, 리소스 사용량의 사유화 (privatization) 에 관한 입력을 제공할 수 있게 한다.
도 8a 및 도 8b 는 백그라운드 프로세스들 ("백그라운드 맵 또는 디스플레이") 에 대한 추가적인 맵 또는 디스플레이를 포함하는 양태 리소스 활용 맵 (800) 을 예시한다. 도 2a 를 참조하여 위에서 설명한 리소스 활용 맵 (200) 과 유사하게, 도 8a 에 예시된 리소스 활용 맵 (800) 은 디스플레이 하위 구성요소들에 대응하는 프로세스들 (102, 104, 및 112) 에 의한 상대적인 리소스 활용을 나타내는 음영처리 부분들 (202, 204, 및 206) 을 포함한다. 본 양태에서의 리소스 활용 맵 (800) 은 시스템 리소스들을 활용하는 디스플레이 엘리먼트들에 대응하지 않는 백그라운드 프로세스들이 존재하는 것을 나타내는 표시자 아이콘 (802) 을 또한 포함한다. 표시자 아이콘 (802) 은 사용자가 뷰잉할 수도 있는 백그라운드 맵 또는 디스플레이가 존재한다는 것을 나타내기 위해 백그라운드 프로세스들이 리소스들을 또한 사용하고 있을 때 리소스 활용 맵 디스플레이에 제시될 수도 있다. 사용자는 임의의 다양한 사용자 입력들에 의해, 예컨대, 마우스로 표시자 아이콘 (802) 을 클릭하거나, 또는 터치 스크린 디스플레이 상의 아이콘을 터치함으로써, 백그라운드 맵 또는 디스플레이를 뷰잉할 것을 선택할 수도 있다. 이에 응답하여, 컴퓨팅 디바이스는 도 8b 에 예시된 바와 같이, 백그라운드 맵 또는 디스플레이를 디스플레이할 수도 있다. 이 도면에 예시된 바와 같이, 백그라운드 맵 (804) 은 다른 방법으로는 시인불가능한 백그라운드 프로세스들을 나타내기 위해, 리소스 활용 표시들이 리소스 활용 맵 (800) 의 나머지에 대한 표시들과 유사하게 적용된 상태에서, 아이콘들을 디스플레이할 수도 있다. 예를 들어, 도 8b 에서의 백그라운드 맵 (804) 은 백그라운드 프로세스 아이콘들에 적용된 음영처리 부분들을 갖는 히트 맵을 포함한다. 리소스 활용 맵 (800) 의 다른 부분들과 유사하게, 사용자는 아이콘 또는 음영처리 부분을 터치하거나, 클릭하거나 또는 아니면 선택함으로써, 증가된 또는 감소된 리소스 활용을 위해 백그라운드 프로세스들을 선택할 수도 있다. 이런 사용자 입력에 응답하여, 컴퓨팅 디바이스는 디스플레이 엘리먼트들과 연관된 프로세스들과 유사하게 리소스들을 백그라운드 프로세스들로부터 또는 백그라운드 프로세스들에 재할당할 수도 있다.
다수의 다른 예시들이 리소스 활용 맵들에 대해서 도면들에 예시된 예들을 넘어서 사용될 수도 있다. 일 양태에서, 다수의 리소스들의 활용은 다수의 리소스들을 나타내기 위해 사용되는 다수의 디멘젼들 (dimensions), 여분의 디멘젼들 또는 엘리먼트들을 특징으로 하는 리소스 활용 맵들을 사용함으로써, 동시에 예시될 수도 있다. 본 양태의 일 예는 통신 레이턴시를 칼라 또는 명암 (intensity) 으로서, 또는 통신 대역폭을 버블의 사이즈로서 나타내는 버블들을 특징으로 하는 "버블 맵 (bubble map)" 리소스 활용 맵들의 프리젠테이션일 수도 있다. 또 다른 예로서, 동시에 실행하는 쓰레드들의 개수는 버블의 사이즈로 표현될 수도 있고, CPU 활용은 버블의 칼라로 표현된다. 제 3 리소스를 예시하는 제 3 (또는, 더 이상의) 디멘젼이 칼라, 음영 또는 표고를 사용하여 이런 버블 맵들에 추가될 수도 있다.
도 9 는 컴퓨팅 디바이스 상에 리소스 활용 맵을 구현하는 양태 방법 (900) 을 예시한다. 주요 양태 방법 (900) 은 방법의 단계들의 각각을 수행하는 실행가능한 명령들로 프로세서를 구성함으로써 컴퓨팅 디바이스의 프로세서 상에서 구현될 수도 있다. 방법 (900) 및 블록 (902) 에서, 프로세서는 여러 시스템 리소스들을 활용하는 기능들, 프로세스들, 애플리케이션들, 프로세스들의 구성요소들, 및 애플리케이션들의 구성요소들에 관한 정보를 수집할 수도 있다. 일반적으로, 운영체제들은 현재의 리소스 활용에 관한 통계치들을 유지하고, 어떤 시간 기간에 걸쳐 리소스 활용을 추적하도록 구성될 수 있다. 예를 들어, 프로세서는 10 초 또는 1 분과 같은 모니터링 기간 이내에 각각의 프로세스에 의해 요구되는 프로세서 계산 시간의 양을 기록하도록 구성될 수도 있다. 또 다른 예로서, 프로세서는 프로세서의 특정의 애플리케이션에 할애되는 메모리 공간의 양을 결정할 수도 있다. 프로세서는 신호들이 특정의 애플리케이션 또는 프로세스 지원 하에서 송신되고 수신되는 시간의 양을 모니터링함으로써 통신 대역폭 활용을 결정할 수도 있다. 획득되는 특정의 정보는 생성될 리소스 활용 맵의 유형에 따라서 변할 수도 있다. 예를 들어, 메모리 사용량에 관련된 리소스 활용 맵을 생성하기 위해, 프로세서는 각각의 활성 프로세스가 활용하고 있거나 또는 리소스 활용 맵의 유형에 의해 정의될 수도 있는 어떤 기간 내에 사용한 메모리가 얼마인지에 관한 정보를 수집할 수도 있다.
일부의 경우, 컴퓨팅 디바이스에 대한 리소스 사용량에 관한 정보가 이용가능할 수도 있으며, 이 경우, 블록 (902) 에서의 동작들은 운영체제에 의해 유지되는 메모리 또는 버퍼로부터의 적합한 정보에 대한 콜 (call) 을 포함할 수도 있다. 다른 경우, 리소스 활용에 이용가능한 정보는 시간 평균 활용 값을 계산하는 것과 같은, 활용 맵에 사용하기에 적합하게 그것을 배치하기 위해, 추가적인 조작을 필요로 할 수도 있다.
블록 (904) 에서, 프로세서는 획득되는 또는 생성된 리소스 활용 정보를 디스플레이 엘리먼트들에 대응하는 그래픽 표현 (즉, 리소스 활용 맵) 으로 변환할 수도 있다. 리소스 활용 맵을 생성하는 이 프로세스는 애플리케이션들 및 프로세스들을 특정의 디스플레이 엘리먼트들에 상관시키고, 하나 보다 많은 프로세스들이 특정의 디스플레이 엘리먼트에 연결될 때 리소스 활용을 합산하는 것을 수반할 수도 있다. 이 프로세스는 리소스 활용 정보를 활용하여, 적합하게 치수화된 (sized) 및 착색된 오버레이, 적합하게 치수화된 및 위치된 바 그래프, 또는 적합하게 돋아진 (raised) 또는 음영처리된 디스플레이 엘리먼트들과 같은 적합한 디스플레이 오버레이를 생성하는 것을 또한 수반한다. 그래픽 디스플레이 엘리먼트들로의 리소스 활용 정보의 이 변환은 컴퓨팅 디바이스에 의해 생성되거나 또는 지원될 리소스 활용 맵의 각각의 유형에 대해 반복될 수도 있다. 이 정보를 그래픽 형태로 변환하기 위해, 정보의 활성 프로세스들은 디스플레이 하위 구성요소 또는 아이콘과 같은 하나 이상의 디스플레이 엘리먼트들과 연관될 수도 있다. 위에서 설명한 바와 같이, 그래픽 표현은 디스플레이 엘리먼트들에 대응하는 상이한 시각적 표시자들을 포함할 수도 있다. 이들 시각적 표시자들은 시각적 표시자가 대응하는 디스플레이 엘리먼트와 연관된 프로세스들의 리소스 활용 정보와 상관하기 위해, 예컨대, 칼라 또는 형태가 변경될 수도 있다. 예를 들어, 리소스 활용 정보가 프로세스에 의한 높은 메모리 사용을 나타내면, 프로세스의 연관된 디스플레이 엘리먼트에 대응하는 시각적 표시자는 어둡게 (darkly) 또는 뜨거운 (hot) 칼라 (예컨대, 적색 또는 주황색) 로 음영처리될 수도 있다. 디스플레이 엘리먼트들과 연관되지 않은 프로세스들에 대해, 획득되는 리소스 활용 정보는 사용자에 의해 디스플레이용으로 선택될 때까지 메모리에 유지될 수도 있는 백그라운드 맵을 생성하기 위해 사용될 수도 있다. 리소스 활용 맵을 생성할 때에, 리소스 활용의 여러 시각적 표시자들은 그들의 대응하는 디스플레이 엘리먼트들과 정렬될 수도 있다. 예를 들어, 밝은 적색 시각적 표시자는 연관되는 프로세스들이 프로세서 시간, 메모리 스토리지, 및/또는 통신 대역폭과 같은 하나 이상의 시스템 리소스들의 상당량을 활용하고 있는 디스플레이 하위 구성요소를 오버레이할 수도 있다. 추가 양태들에서, 그래픽 표현은 디스플레이 및 그래픽 표현이 함께 조정되거나, 열리거나, 또는 폐쇄될 수 있도록, 디스플레이와 통합될 수도 있다.
일부 양태들에서, 기능 또는 애플리케이션 프로그래밍 인터페이스 (API) 는 리소스 활용 맵을 애플리케이션과 통합하거나 또는 오버레이하는 것을 보조하기 위해 제공될 수도 있다. 이런 기능 또는 API 는 애플리케이션 또는 운영체제로부터 디스플레이 및 디스플레이의 엘리먼트들 또는 하위 구성요소들 상에서 데이터를 수신하고 각각의 시각적 표시자가 대응하는 디스플레이 엘리먼트와 적절히 정렬되는 리소스 활용 맵 디스플레이를 반환할 수도 있다.
시스템 리소스들을 활용하는 백그라운드 프로세스들이 존재하고 백그라운드 맵이 생성되는 경우들에서, 그 생성된 리소스 활용 맵은 사용자에게 백그라운드 맵의 이용가능성을 경고하는 아이콘을 또한 포함할 수도 있다.
블록 (906) 에서, 생성된 리소스 활용 맵은 디스플레이될 수도 있다. 디스플레이는 현재의 디스플레이 위에 그래픽 표현을 오버레이하는 것을 수반할 수도 있다. 디스플레이를 생성하고 오버레이 디스플레이들을 생성하는 메카니즘들은 컴퓨팅 분야에서 널리 알려져 있다.
블록 (908) 에서, 프로세서는 사용자 입력을 사용자 인터페이스를 통해서 수신할 수도 있다. 사용자 입력은 리소스 사용량의 디스플레이된 그래픽 표현에 응답하여 디스플레이 엘리먼트의 선택을 나타낼 수도 있다. 이 입력은 키보드 또는 마우스 상의 버튼 누름으로부터의 입력, 마이크로폰으로부터 수신된 구두 입력, 터치 스크린에 의해 수신된 터치 이벤트, 또는 다른 사용자 입력 센서와 같은, 컴퓨팅 디바이스 사용자 인터페이스들과 호환가능한 임의의 형태일 수도 있다. 예를 들어, 사용자는 리소스 활용 맵의 시각적 표시자를 클릭하거나 또는 아이콘에 대응하는 키를 누를 수도 있다.
블록 (910) 에서, 프로세서는 수신된 사용자 입력들을 사용하여, 시스템 리소스들을 재할당할 수도 있다. 프로세서에 의해 재할당되는 리소스들은 디스플레이된 리소스 활용맵에 나타낸 것과 동일한 리소스들일 수도 있다. 예를 들어, 메모리 사용량에 기초한 리소스 활용 맵이 제시되면, 메모리는 사용자 입력에 기초하여 재할당된 리소스일 수도 있다. 리소스들이 재할당될 수도 있는 방법은 리소스의 유형, 리소스를 사용하는 애플리케이션들 및 프로세스들, 시스템 퍼미션들, 및 컴퓨팅 디바이스의 동작 상태에 의존할 것이다. 또한, 시스템 리소스들을 재할당하는 프로세스는 더 많은 리소스들을 선택된 프로세스 또는 애플리케이션에 할당하거나, 또는 사용자에 의해 선택된 프로세스들 또는 애플리케이션들에 의해 액세스된 리소스를 감소시키거나 또는 제거할 수도 있다. 시스템 리소스들의 재할당은 운영체제를 통해서, 예컨대 스케쥴러 구성요소들에 의해, 또는 선택된 애플리케이션들 또는 프로세스들을 비활성화함으로써, 달성될 수도 있다. 일부 양태들에서, 컴퓨팅 디바이스 프로세서는 프로세스들에 의한 리소스들에의 액세스를 관리하는 것을 담당하는 스케쥴러를 가질 수도 있다. 스케쥴러는 선택된 프로세스들에 대한 사용자 선호사항들을 조정할 수 있는 상이한 스케쥴링 알고리즘들에 의존할 수도 있다. 다른 양태들에서, 컴퓨팅 디바이스의 운영체제의 부분인 리소스 관리 소프트웨어는 리소스들을 선택된 프로세스들에 재할당하기 위해 사용될 수도 있다.
방법 (900) 의 동작들은 리소스 활용 맵 프로세스가 활성으로 유지하는 한 계속할 수도 있다. 따라서, 컴퓨팅 디바이스는 블록 (910) 에서 사용자 선호사항들을 구현하는 것 이후 블록 (902) 으로 되돌아가, 현재의 리소스 활용 데이터를 수집할 수도 있다. 이와 같이, 사용자들은 그들이 그들의 컴퓨팅 디바이스 성능에 만족할 때까지 리소스 할당들을 계속 미세 튜닝할 수도 있다.
위에서 언급한 바와 같이, 일 양태에서, 애플리케이션 또는 프로세스 우선순위들에 관한 사용자 입력들은 커뮤니티-기반의 시스템 리소스 할당 방식들을 발전시킬 때에 사용하기 위해 중앙 서버로 송신될 수도 있다. 도 10a 는 리소스 할당들 또는 우선순위들에 관한 데이터를 중앙 서버로 중계하는 컴퓨팅 디바이스 상에서 리소스 활용 맵을 구현하는 양태 방법 (1000) 을 예시한다. 도 10b 는 커뮤니티 기반의 리소스 할당 방식을 발전시키기 위해 하나 이상의 컴퓨팅 디바이스들에 의해 중계되는 리소스 우선순위화 데이터를 활용하여 중앙 서버 상에서 구현될 수도 있는 양태 방법 (1020) 을 예시한다. 도 10c 는 리소스 활용 맵과 상호작용하는 사용자에 의해 변경될 수도 있는 초기 리소스 할당을 설정하기 위해 컴퓨팅 디바이스 상에서 커뮤니티 기반의 리소스 할당 방식을 활용하는 양태 방법 (1000A) 을 예시한다.
도 10a 를 참조하면, 방법 (1000) 은 리소스 우선순위화 데이터를 중앙 서버로 송신하는 블록 (1002) 에서의 추가적인 동작과 함께, 위에서 설명한 방법 (900) 의 동작들을 포함한다. 방법 (1000) 에서, 블록들 (902, 904, 906, 908, 및 910) 은 도 9 를 참조하여 위에서 설명한 방법과 동일한 방법으로 수행될 수도 있다. 블록 (1002) 에서, 컴퓨팅 디바이스 프로세서는 컴퓨팅 디바이스 리소스 할당들에 관한 사용자 입력들의 구현 (implementation) 또는 수신된 사용자 입력들로부터 기인하는 리소스 우선순위화 데이터를 중앙 서버로 송신할 수도 있다. 이 데이터는 사용자 입력들에 기초하여 컴퓨팅 디바이스에 의해 설정된 우선순위들 또는 리소스 할당들을 포함할 수도 있다. 이런 리소스 할당 데이터의 송신은 모바일 디바이스들의 경우 무선 데이터 통신 링크들을 포함한, 임의의 가용 원격 통신 메카니즘을 통해서, 달성될 수도 있다.
위에서 언급한 바와 같이, 중앙 서버는 많은 사용자들의 결정들을 반영하는 리소스 할당 정보를 수집하고, 그 정보를 사용하여, 커뮤니티 우선순위화 결정들 (즉, 커뮤니티 리소스 우선순위화 방식) 을 반영한 리소스 우선순위화 또는 할당 방식을 생성할 수도 있다. 커뮤니티 리소스 우선순위화 방식들의 생성 및 배포는 많은 컴퓨팅 디바이스들에 공통인 동작 조건들에 특히 유용할 수도 있다. 이런 공통 동작 조건의 일 예는 인기 있는 인터넷 웹사이트의 프리젠테이션이다. 예를 들어, 수 십만의 사용자들은 CNN.com, New York Times.com 등과 같은 인기 있는 뉴스 사이트들 뿐만 아니라, Facebook.com, YouTube.com 등과 같은 인기 있는 서비스 웹사이트들을 체크할 것이다. 일반적으로, 웹사이트 소유자들은 광고, 링크들 등을 포함한, 동일한 웹 페이지 상에서 디스플레이되는 대량의 상이한 콘텐츠를 포함한다. 복수의 컴퓨팅 디바이스들로부터 수신된 리소스 할당 데이터에 기초하여, 특정의 웹 페이지에 대한 커뮤니티 리소스 우선순위화 방식을 발전시킴으로써, 중앙 서버는 사용자들의 대다수 (또는, 적어도 큰 부분) 에 공통인 리소스 우선순위화 방식을 결정할 수 있다. 이런 커뮤니티 리소스 우선순위화 방식은 특정의 웹사이트에 액세스하는 다수의 사용자들에 적용가능할 것이므로, 예를 들어, 이 방식은 페이지에 액세스하는 컴퓨팅 디바이스들이 그의 콘텐츠를 커뮤니티 선호사항들을 반영한 미리 정의된 리소스 할당으로 제시가능하게 하는데 유용할 수도 있다. 이와 같이, 컴퓨팅 디바이스는 사용자가 그 또는 그녀의 자신의 조정들을 행할 기회를 갖기 전에 다수의 사용자들에게 적합할 우선순위화 방식을 사용하여 리소스들을 우선순위화할 수 있다. 사용자 리소스 할당 데이터를 수집하고 특정의 웹사이트들 또는 웹 페이지들에 대한 커뮤니티 리소스 우선순위화 방식을 동적으로 업데이트함으로써, 이런 중앙 서버는 평균 사용자 활동들 뿐만 아니라, 현재의 웹 페이지 콘텐츠를 반영하는 권장된 리소스 우선순위화 방식들을 제공할 수 있다. 예를 들어, 뉴스 페이지 웹사이트는 뉴스가 점진적으로 변함에 따라 온종일 변할 것이며, 따라서 사용자 리소스 우선순위화 결정들은 그 순간의 핫 스토리에 따라서 변할 것이다. 또한, 사용자 리소스 우선순위화들은 예컨대, 통근 시간들 근처에서 실시간 트래픽 업데이트들을 강조하지만 다른 시간들에서는 이런 원격 통신-리소스-집약적인 프로세스들을 경시하는 것처럼, 주어진 웹사이트에 대해 온종일 변할 수도 있다.
도 10b 를 참조하면, 방법 (1020) 에서, 중앙 서버는 블록 (1004) 에서 복수의 컴퓨팅 디바이스들로부터 리소스 우선순위화 데이터를 수신할 수도 있다. 이 데이터는 블록 (1002) 에서 컴퓨팅 디바이스에 의해, 그러나, 임의 개수의 디바이스들로부터 송신된 동일한 데이터를 포함할 수도 있다. 리소스 우선순위화 데이터의 수신은 인터넷, 로칼 네트워크들, 및 무선 데이터 네트워크들과 같은, 컴퓨팅 디바이스들에 의해 액세스될 수도 있는 임의의 가용 통신 링크를 통할 수도 있다. 수신된 데이터를 사용하여, 서버 또는 서버와 통신하는 다른 시스템은 블록 (1006) 에서 커뮤니티 리소스 우선순위화 방식을 생성할 수도 있다. 블록 (1006) 에서, 커뮤니티 리소스 우선순위화 방식은 리소스의 각각의 유형에 대해서 뿐만 아니라, 리소스 할당 데이터가 컴퓨팅 디바이스들로부터 수신되는 각각의 애플리케이션, 웹사이트, 및 디스플레이에 대해서 생성될 수도 있다.
커뮤니티 리소스 우선순위화 방식은 다양한 방법들을 사용하여 중앙 서버에 의해 생성될 수도 있다. 제 1 양태 방법에서, 커뮤니티 리소스 우선순위화 방식은 모든 보고하는 컴퓨팅 디바이스들로부터 수집된 리소스 우선순위들의 평균으로서 생성될 수도 있다. 제 2 양태 방법에서, 보고하는 컴퓨팅 디바이스들로부터의 우선순위들은, 커뮤니티 사상 리더들 (thought leaders) (예컨대, 그의 선호사항들이 대부분의 사용자들의 선호사항들을 반영하는 것으로 나타나는 개인들) 로서 식별되는 컴퓨팅 디바이스들과 같은, 다양한 기준들에 따라, 가중될 수도 있다. 제 3 양태 방법에서, 커뮤니티 리소스 할당 방식은 상대적인 할당들, 예컨대 리소스들 사이의 비교들을 반영하도록 구성될 수도 있다. 예를 들어, 할당 데이터가 웹 페이지 상에 오버레이된 리소스 활용 맵에 기초한 사용자 선택들에 부수하면, 커뮤니티 리소스 할당 방식은 특정의 디스플레이되는 웹 페이지 하위 구성요소들에의 리소스 할당들의 랭킹을 포함할 수도 있다. 제 4 양태 방법에서, 중앙 서버는 복수 또는 대부분의 사용자들에게 공통인 리소스 할당들을 결정하고, 그것을 커뮤니티 리소스 할당 방식으로서 채택할 수도 있다. 제 5 양태 방법에서, 특정의 사용자 그룹들의 멤버들에게 알려진 컴퓨팅 디바이스들이, 그들 특정의 사용자 그룹들에 대해 커뮤니티 리소스 할당 방식들을 생성하고 이에 따라서 그 인식된 사용자 그룹들의 각각에 적합한 다양한 커뮤니티 리소스 할당 방식들을 제공하기 위해, 사용될 수도 있다.
방법 (1020) 의 블록 (1008) 에서, 생성된 커뮤니티 리소스 할당 방식은 컴퓨팅 디바이스들로 인터넷, 폐쇄된 네트워크, 또는 무선 데이터 통신 네트워크와 같은 임의의 가용 통신 링크를 통해서 송신될 수도 있다. 커뮤니티 리소스 할당 방식의 이 송신은 모든 가입중인 컴퓨팅 디바이스들에게 브로드캐스트될 수도 있거나, 또는 리소스 할당 설정들을 중앙 서버로 보고한 그들 컴퓨팅 디바이스들에게만 송신될 수도 있다. 일 양태에서, 커뮤니티 리소스 할당 방식들의 송신은 사용자들이 예컨대, 서비스에 가입함으로써 또는 가입 요금을 지불함으로써, 가입할 수 있는 서비스일 수도 있다.
커뮤니티 리소스 할당 방식을 수신하는 컴퓨팅 디바이스들은 예컨대, 사용자가 선호사항들을 입력할 기회를 갖기 전에 웹사이트를 열자마자 리소스들을 할당하거나 또는 우선순위화하는 방식에 의존할 수도 있다. 예를 들어, 커뮤니티 리소스 할당 방식이 인기 있는 웹 페이지에 대한 리소스 할당들에 관한 데이터를 포함하면, 컴퓨팅 디바이스는 초기에, 웹 페이지를 로딩할 때 리소스 할당들을 위한 방식에 의존할 수도 있다. 리소스들은 추후에 위에서 설명한 바와 같이 리소스 활용 맵에 응답하여 사용자 입력들에 기초하여 재할당될 수도 있다. 추가 양태들에서, 커뮤니티 리소스 할당 방식에서 낮은 리소스 우선순위들을 가진 애플리케이션들 또는 프로세스들은 적어도 사용자가 활성화를 위한 대응하는 디스플레이 엘리먼트들을 선택할 때까지 차단되거나 또는 비활성화될 수도 있다.
도 10c 는 중앙 서버에 의해 송신된 이런 커뮤니티 리소스 할당 방식들을 활용하기 위해 컴퓨팅 디바이스들에서 구현될 수도 있는 예시적인 방법 (1000B) 을 예시한다. 방법 (1000B) 의 블록 (1010) 에서, 컴퓨팅 디바이스는 중앙 서버에 의해 송신된 커뮤니티 리소스 할당 방식을 수신할 수도 있다. 위에서 언급한 바와 같이, 커뮤니티 리소스 할당 방식의 이 수신은 컴퓨팅 디바이스와 중앙 서버 사이의 임의의 가용 통신 링크를 통할 수도 있다. 블록 (1012) 에서, 컴퓨팅 디바이스 프로세서는 그 수신된 방식 내의 리소스 우선순위화 데이터를 구현하거나 또는 사용하여, 리소스들을 애플리케이션들 또는 프로세스들에 할당할 수도 있다. 시스템 리소스들의 재할당은 리소스들이 위에서 설명한 사용자 입력들에 응답하여 할당될 수도 있는 방법과 유사한 방법으로 달성될 수도 있다. 그후, 컴퓨팅 디바이스는 리소스 활용 맵을 생성하고 사용자 입력들을 도 9 를 참조하여 위에서 설명한 바와 같은 동작들 (902-910) 을 수행하는 것을 통해서 수신할 수도 있다.
위에서 설명한 양태들은 모바일 컴퓨팅 디바이스들 및 노트북 컴퓨터들과 같은 임의의 다양한 컴퓨팅 디바이스들 상에서 구현될 수도 있다. 이런 컴퓨팅 디바이스 (1100) 의 예시적이고 비한정적인 양태의 예시적인 구성요소들 및 모듈들이 도 11 에 예시된다. 컴퓨팅 디바이스 (1100) 는 메모리 (1102) 에 커플링된 제어 프로세서 (1101) 를 포함하는 전자 구성요소들의 회로 보드 (1180) 를 포함할 수도 있으며, 이들 전자 구성요소들 중 일부 또는 모두는 온칩 시스템으로 통합될 수도 있다. 단일 프로세서 (1101) 가 도 11 에 도시되지만, 여러 양태들은, 제어 프로세서 (1101) 가 멀티-코어 프로세서일 때 또는 복수의 프로세서들이 형태 및 접속들에서 제어 프로세서 (1101) 와 유사한 별개의 칩들에 패키지화된 상태일 때와 같은 멀티-프로세서 디바이스들로 또한 구현될 수도 있다. 제어 프로세서 (1101) 는 또한 함께 커플링되는 디지털 신호 프로세서 (1111) 및/또는 아날로그 신호 프로세서 (1121) 에 추가로 커플링될 수도 있다. 일부 양태들에서, 제어 프로세서 (1101) 및 디지털 신호 프로세서 (1111) 는 동일한 구성요소일 수도 있거나 또는 동일한 프로세서 칩에 통합될 수도 있다. 디스플레이 제어기 (1133) 및 터치스크린 제어기 (1143) 는 제어 프로세서 (1101) 에 커플링될 수도 있으며, 그리고, 컴퓨팅 디바이스 (1100) 내의 또는 이에 접속된 디스플레이 또는 터치스크린 디스플레이 (1103) 에 커플링될 수도 있다.
제어 프로세서 (1101) 는 또한 착탈식 메모리 (1122) (예컨대, 모바일 컴퓨팅 디바이스들의 경우 SD 메모리 또는 SIM 카드) 에 커플링될 수도 있으며 및/또는 디스크 드라이브, CD 드라이브, 및 DVD 드라이브 중 하나 이상과 같은 외부 메모리 (1104) 에 커플링될 수도 있다. 제어 프로세서 (1101) 는 USB 포트 (1114) 에 커플링된 범용 시리얼 버스 (USB) 제어기 (1112) 에 또한 커플링될 수도 있다. 또한, 전원 (1170) 은 전력 (예컨대, DC 전력) 을 여러 전자 구성요소들에 제공하기 위해 USB 제어기 (1112) 를 통해서 또는 상이한 전기 접속들을 통해서 회로 보드 (1180) 에 커플링될 수도 있다.
제어 프로세서 (1101) 는 또한 위상 반전 주사선 (PAL) 인코더, SECAM (sequential couleur a memoire) 인코더, 또는 NTSC (national television system(s) committee) 인코더와 같은, 비디오 인코더 (1134) 에 커플링될 수도 있다. 또, 비디오 인코더 (1134) 는 비디오 인코더 (1134) 및 디스플레이 또는 터치스크린 디스플레이 (1103) 에 커플링될 수도 있는 비디오 증폭기 (1136) 에 커플링될 수도 있다. 또한, 비디오 포트 (1138) 는 컴퓨팅 디바이스 (1100) 를 외부 모니터, 텔레비전 또는 다른 디스플레이 (미도시) 에 접속하는 것을 가능하게 하기 위해 비디오 증폭기 (1136) 에 커플링될 수도 있다.
일부 양태들에서, 특히 모바일 컴퓨팅 디바이스들에서, 제어 프로세서 (1101) 는 무선 주파수 (RF) 송수신기 (1105) 에, 예컨대, 아날로그 신호 프로세서 (1121) 를 통해서 커플링될 수도 있다. RF 송수신기 (1105) 는 RF 신호들을 송신하고 수신하는 RF 안테나 (1104) 에 커플링될 수도 있다. RF 송수신기 (1105) 는 예를 들어, 셀룰러 전화기 (예컨대, G-3, UMTS, CDMA 등), WiFi, WiMax, 및 BlueTooth 를 포함하는, 하나 이상의 상이한 무선 통신 프로토콜들의 통신 신호들을 송신하고 수신하도록 구성될 수도 있다.
제어 프로세서 (1101) 는 네트워크 커넥터 (1116) 및/또는 RF 송수신기 (1105) 에 커플링되어 외부 네트워크 (예컨대, 근거리 네트워크들, 인터넷, 인트라넷, WiFi 네트워크들, BlueTooth 네트워크들, 개인 영역 네트워크 (PAN) 등) 를 통해서 통신들을 가능하게 하도록 구성될 수도 있는 네트워크 카드 (1106) 에 추가로 커플링될 수도 있다. 네트워크 카드 (1106) 는 별개의 칩 또는 카드의 유형일 수도 있거나, 또는 제어 프로세서 (1101) 또는 RF 송수신기 (1105) (또는, 양자) 의 부분으로서 풀 솔루션 통신 칩으로 구현될 수도 있다.
도 11 에 나타낸 바와 같은 키패드 (1108) 와 같은 다수의 아날로그 디바이스들이 아날로그 신호 프로세서 (1121) 를 통해서, 제어 프로세서 (1101) 에 커플링될 수도 있다. 다른 구현예들에서, 키패드 또는 키보드는 제어 프로세서 (1101) 와의 인터페이스가 직접 접속 (미도시) 을 경유하거나, 네트워크 접속부를 (예컨대, 네트워크 카드를 통해서) 경유하거나, 또는 USB 포트 (1114) 를 경유할 수 있도록, 그 자신의 프로세서를 포함할 수도 있다.
일부 구현예들에서, 디지털 카메라 (1148) 는 제어 프로세서 (1101) 에 커플링될 수도 있다. 예시적인 양태에서, 디지털 카메라 (1148) 는 전하 결합 소자 (CCD) 카메라 또는 상보형 금속 산화물 반도체 (CMOS) 카메라일 수도 있다. 디지털 카메라 (1148) 는 컴퓨팅 디바이스 (1100) 에 내장되거나 또는 외부 케이블에 의해 디바이스에 커플링될 수도 있다.
일부 구현예들에서, 오디오 코덱 (1150) (예컨대, 스테레오 코덱) 은 아날로그 신호 프로세서 (1121) 에 커플링되고, 사운드 신호들을 오디오 증폭기 (1152) 를 통해서 하나 이상의 스피커들 (1154) 로 전송하도록 구성될 수도 있다. 오디오 코덱 (1150) 은 또한 마이크로폰 (1158) 에 (예컨대, 마이크로폰 잭을 통해서) 커플링될 수도 있는 마이크로폰 증폭기 (1156) 에 커플링될 수도 있다. 헤드폰 잭 (1159) 은 또한 오디오를 헤드폰들로 출력하는 오디오 코덱 (1150) 에 커플링될 수도 있다.
일부 구현예들에서, 컴퓨팅 디바이스 (1100) 는 브로드캐스트 무선 통신 신호들을 수신하는 안테나 (1162) 에 커플링될 수도 있는 별개의 RF 수신기 회로 (1160) 를 포함할 수도 있다. 수신기 회로 (1160) 는 브로드캐스트 텔레비전 신호들 (예컨대, FLO TV 브로드캐스트들) 을 수신하고, 수신된 신호들을 프로세싱을 위해 DSP (1111) 에 제공하도록 구성될 수도 있다. 일부 구현예들에서, 수신기 회로 (1160) 는 FM 무선 신호들을 수신하도록 구성될 수도 있으며, 이 경우 그 수신된 신호들은 프로세싱을 위해 오디오 코덱 (1150) 으로 전달될 수도 있다.
일 양태에서, 위에서 설명한 방법 동작들 중 하나 이상을 달성하는 프로세서-실행가능한 명령들은 내부 메모리 (1102), 착탈식 메모리 (1122) 및/또는 (예컨대, 하드 드라이브, CD 드라이브, 또는 네트워크를 통해 액세스가능한 다른 스토리지와 같은) 비-휘발성 메모리 (1104) 에 저장될 수도 있다. 이런 프로세서-실행가능한 명령들은 본원에서 설명하는 방법들을 수행하기 위해서 제어 프로세서 (1101) 에 의해 실행될 수도 있다.
모바일 컴퓨팅 디바이스의 일 예는 도 12 에 예시되며, 노트북 컴퓨터의 일 예가 도 13 에 예시된다. 대표적인 모바일 컴퓨팅 디바이스들 (1200) 은 도 12 에 예시된 구성요소들을 공통으로 가질 것이다. 예를 들어, 모바일 컴퓨팅 디바이스들 (1100) 은 터치 표면 입력 디바이스 / 디스플레이 (1193) 및 내부 메모리 (1192) 에 커플링된 프로세서 (1191) 를 포함할 수도 있다. 저항-감지 터치스크린, 용량성-감지 터치스크린, 적외선 감지 터치스크린, 음향/압전 감지 터치스크린, 또는 기타 등등과 같은 터치스크린 디스플레이 (1193). 여러 양태들은 터치스크린 디스플레이 (1193) 또는 터치패드 기술의 임의의 특정 유형에 한정되지 않는다. 게다가, 컴퓨팅 디바이스 (1100) 는 무선 데이터 링크에 접속되는 전자기 방사선을 전송하고 수신하는 안테나 (1194) 및/또는 프로세서 (1191) 에 커플링된 셀룰러 전화기 송수신기 (1195) 를 가질 수도 있다. 컴퓨팅 디바이스들 (1100) 은 사용자 입력들을 수신하기 위한 물리적인 버튼들 (1196) 을 또한 포함할 수도 있다. 프로세서 (1191) 는 프로세서 (1191) 를 여러 양태들이 또한 적용될 수도 있는 외부 터치패드 또는 터치 표면에 접속하기 위해, 범용 시리얼 버스 (USB) 또는 FireWire® 커넥터 소켓과 같은 유선 네트워크 인터페이스 (1198) 에 추가로 접속될 수도 있다.
일부 구현예들에서, 터치 표면은 터치스크린 디스플레이 (1193) 외부의 전자 디바이스 (1100) 의 영역들에 제공될 수 있다. 예를 들어, 키패드 (미도시) 는 매립된 용량성 터치 센서들을 갖는 터치 표면을 포함할 수도 있다. 다른 구현예들에서, 터치스크린 디스플레이 (1193) 는 완전한 GUI 를 제공할 수도 있다.
위에서 설명한 양태들은 도 13 에 예시된 바와 같은 랩탑 컴퓨터 (1200) 와 같은 다양한 컴퓨팅 디바이스들 내에서 또한 구현될 수도 있다. 많은 랩탑 컴퓨터들은 컴퓨터의 포인팅 (pointing) 디바이스로서 기능하는 터치 패드 터치 표면을 포함하며, 따라서, 터치스크린 디스플레이가 장착된 모바일 컴퓨팅 디바이스들 상에서 구현되는 것들과 유사하게, 드래그, 스크롤, 및 플릭 제스쳐들을 수신할 수도 있다. 랩탑 컴퓨터 (1200) 는 일반적으로 휘발성 메모리 (1202) 및 대용량 비휘발성 메모리, 예컨대 디스크 드라이브 (1203) 에 커플링된 프로세서 (1201) 를 포함할 것이다. 컴퓨터 (1200) 는 프로세서 (1201) 에 커플링된 플로피 디스크 드라이브 (1204) 및 컴팩트 디스크 (CD) 드라이브 (1205) 를 또한 포함할 수도 있다. 컴퓨터 디바이스 (1200) 는 데이터 접속들을 확립하거나 또는 USB 또는 FireWire® 커넥터 소켓들과 같은 외부 메모리 디바이스들을 수용하기 위한, 프로세서 (1201) 에 커플링된 다수의 커넥터 포트들, 또는 프로세서 (1201) 를 네트워크에 커플링하기 위한 다른 네트워크 접속 회로들 (1206) 을 또한 포함할 수도 있다. 노트북 구성에서, 컴퓨터 하우징은 프로세서 (1201) 에 모두 커플링된, 터치패드 (1207), 키보드 (1208), 및 디스플레이 (1209) 를 포함한다. 컴퓨팅 디바이스의 다른 구성들은 널리 알려져 있는 바와 같이, (예컨대, USB 입력을 통해서) 프로세서에 커플링된 컴퓨터 마우스 또는 트랙볼을 포함할 수도 있다.
컴퓨팅 디바이스 프로세서 (1191, 1201) 는 위에서 설명한 여러 양태들의 기능들을 포함하는 다양한 기능들을 수행하는 소프트웨어 명령들 (애플리케이션들) 에 의해 구성될 수 있는, 임의의 프로그래밍가능 마이크로프로세서, 마이크로컴퓨터 또는 다수의 프로세서 칩 또는 칩들일 수도 있다. 일부 휴대형 컴퓨팅 디바이스들 (1100) 에서, 다수의 프로세서들 (1191) 은, 하나의 프로세서가 무선 통신 기능들을 담당하고 하나의 프로세서가 다른 애플리케이션들을 실행하는 것을 담당하는 것과 같이, 제공될 수도 있다. 프로세서는 또한 통신 칩셋의 부분으로서 포함될 수도 있다.
상기 방법 설명들 및 프로세스 흐름 다이어그램들은 단지 예시적인 예들로서 제공되며, 여러 양태들의 동작들 또는 단계들이 제시된 순서로 수행되어야 한다는 것을 요구하거나 또는 암시하려고 의도되지 않는다. 당업자가 주지하고 있는 바와 같이, 전술한 양태들에서의 동작들 또는 단계들의 순서는 임의의 순서로 수행될 수도 있다. "그후", "따라서", "다음" 등과 같은 단어들은 동작들 또는 단계들의 순서를 한정하려고 의도되지 않으며; 이들 단어들은 방법들의 설명을 통해서 독자를 안내하기 위해서 단지 사용된다. 또, 단수형으로, 예를 들어, 한정사 "한", "하나" 또는 "그" 를 사용한, 청구항 엘리먼트들에 대한 임의의 참조는 그 엘리먼트를 단수에 한정하는 것으로 해석되어서는 안된다.
본원에서 개시한 양태들과 관련하여 설명한 여러가지 예시적인 로직 블록들, 모듈들, 회로들, 및 알고리즘 단계들은 전자적 하드웨어, 컴퓨터 소프트웨어, 또는 양자의 조합들로서 구현될 수도 있다. 하드웨어와 소프트웨어의 이러한 상호 교환가능성을 명확히 예시하기 위하여, 여러가지 예시적인 구성요소들, 블록들, 모듈들, 회로들, 동작들, 및 단계들이 일반적으로 그들의 기능의 관점에서 위에서 설명되었다. 이런 기능이 하드웨어 또는 소프트웨어로 구현되는지 여부는 특정의 애플리케이션 및 전체 시스템에 부과되는 설계 제한 사항들에 의존한다. 숙련자들은 각각의 특정의 애플리케이션에 대해 설명한 기능을 여러가지 방법으로 구현할 수도 있지만, 그러나 이런 구현 결정들이 본 발명의 범위로부터 일탈을 초래하는 것으로 해석되어서는 안된다.
본원에서 개시한 양태들과 관련하여 설명한 여러 예시적인 로직들, 로직 블록들, 모듈들, 및 회로들을 구현하기 위해 사용되는 하드웨어는 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적회로 (ASIC), 필드 프로그래밍가능 게이트 어레이 (FPGA) 또는 다른 프로그래밍가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 구성요소들, 또는 본원에서 설명한 기능들을 수행하도록 설계된 이들의 임의의 조합으로 구현되거나 또는 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 그러나, 대안적으로는, 프로세서 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합, 예컨대, DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서들의 조합, DSP 코어와 결합된 하나 이상의 마이크로프로세서들의 조합, 또는 임의의 다른 이런 구성의 조합으로서 구현될 수도 있다. 이의 대안으로, 일부 동작들 또는 단계들은 주어진 기능에 특유한 회로에 의해 수행될 수도 있다.
하나 이상의 예시적인 양태들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되는 경우, 이 기능들은 컴퓨터-판독가능 매체 상에 하나 이상의 명령들 또는 코드들로서 저장되거나 또는 전달될 수도 있다. 본원에서 개시한 방법 또는 알고리즘의 단계들은 유형의 비일시성 컴퓨터-판독가능 저장 매체 상에 상주할 수도 있는 프로세서-실행가능한 소프트웨어 모듈에서 구현될 수도 있다. 유형의, 비일시성 컴퓨터-판독가능 저장 매체들은 컴퓨터에 의해 액세스될 수도 있는 임의의 가용 매체들일 수도 있다. 비제한적인 일 예로서, 이런 비일시성 컴퓨터-판독가능 매체들은 RAM, ROM, EEPROM, CD-ROM 또는 다른 광디스크 스토리지, 자기디스크 스토리지 또는 다른 자기 스토리지 디바이스들, 또는 원하는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 저장하는데 사용될 수도 있으며 컴퓨터에 의해 액세스될 수도 있는 임의의 다른 매체를 포함할 수도 있다. 디스크 (disk) 및 디스크 (disc) 는, 본원에서 사용할 때, 컴팩트 디스크 (CD), 레이저 디스크, 광 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크, 및 블루-레이 디스크를 포함하며, 디스크들 (disks) 은 데이터를 자기적으로 보통 재생하지만, 디스크들 (discs) 은 레이저로 데이터를 광학적으로 재생한다. 앞에서 언급한 것들의 조합들이 비일시성 컴퓨터-판독가능 매체들의 범위 내에 또한 포함되어야 한다. 게다가, 방법 또는 알고리즘의 동작들은 컴퓨터 프로그램 제품 상에 포함될 수도 있는 유형의 비일시성 머신 판독가능 매체 및/또는 컴퓨터-판독가능 매체 상에 코드들 및/또는 명령들의 하나 또는 이들의 임의의 조합 또는 이들의 세트로서 상주할 수도 있다.
개시된 양태들의 전술한 설명은 임의의 당업자가 본 발명을 실시하고 사용할 수 있도록 하기 위해서 제공된다. 이들 양태들에 대한 여러 변경들은 당업자들에게 명백할 것이며, 본원에서 정의하는 일반 원리들은 본 발명의 정신 또는 범주로부터 일탈함이 없이 다른 양태들에 적용될 수도 있다. 따라서, 본 발명은 본원에서 나타낸 양태들에 한정되도록 의도되지 않으며, 다음 청구범위에 부합하는 최광의의 범위 및 본원에서 개시된 원리들 및 신규한 특징들이 부여될 것이다.

Claims (88)

  1. 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법으로서,
    기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 리소스의 사용량 (usage) 을 나타내는 시각적 표시자를 포함하는 리소스 활용 맵으로 변환하는 단계; 및
    상기 시각적 표시자가 대응하는 디스플레이 엘리먼트와 정렬되도록 상기 리소스 활용 맵을 디스플레이하는 단계를 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  2. 제 1 항에 있어서,
    상기 리소스 활용 정보를 획득하는 단계를 더 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  3. 제 1 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를 히트 맵 (heat map) 리소스 활용 맵으로 변환하는 단계를 포함하며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 칼라의 관점에서 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는 칼라 오버레이 디스플레이를 생성하는 것을 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  4. 제 1 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를 바 그래프 리소스 활용 맵으로 변환하는 단계를 포함하며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 바 그래프에서의 바들의 높이의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는, 상기 디스플레이 엘리먼트들과 연계하여 제시되는 상기 바 그래프들을 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  5. 제 1 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를 표고 (elevation) 리소스 활용 맵으로 변환하는 단계를 포함하며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 쉐도우들의 사이즈의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는, 상기 디스플레이 엘리먼트들에 적용된 쉐도우들을 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  6. 제 1 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를 표고 리소스 활용 맵으로 변환하는 단계를 포함하며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 다른 디스플레이 엘리먼트들에 대한 상대 표고의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는 표고 디스플레이 엘리먼트들을 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  7. 제 1 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를, 프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들이 컴퓨팅 디바이스 디스플레이의 주변부 상에 위치된 표시자들을 포함하는 리소스 활용 맵으로 변환하는 단계를 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  8. 제 1 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 상기 컴퓨팅 디바이스 상에 저장된 애플리케이션들에 의한 리소스 활용에 관한 정보를 변환하는 단계를 포함하며,
    상기 시각적 표시자들은 상기 애플리케이션이 프로세서 상에서 실행되고 있을 때의 리소스 사용량을 나타내는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  9. 제 1 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 리소스 활용에 관한 정보를 디스플레이 엘리먼트와 연관되지 않은 백그라운드 프로세스들에 의한 리소스 활용을 나타내는 리소스 활용 맵으로 변환하는 단계를 포함하며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 상기 백그라운드 프로세스 및 상기 백그라운드 프로세스에 의한 상대적인 리소스 활용의 양자를 식별하는 표시자들의 디스플레이를 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  10. 제 1 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 복수의 리소스 활용 맵들로 변환하는 단계를 포함하며,
    상기 복수의 리소스 활용 맵들 각각은 복수의 시스템 리소스들 중 하나의 시스템 리소스에 대응하며, 상기 복수의 리소스 활용 맵들 각각은 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 복수의 시스템 리소스들 중 상기 하나의 시스템 리소스의 사용량을 나타내는 시각적 표시자를 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  11. 제 10 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 단계는, 제 1 및 제 2 리소스들의 활용에 관한 정보를 버블 이미지를 포함하는 버블 리소스 활용 맵으로 변환하는 단계를 포함하며,
    상기 제 1 리소스의 사용량을 나타내는 상기 시각적 표시자는 상기 버블의 직경이며, 상기 제 1 리소스의 사용량을 나타내는 상기 시각적 표시자는 상기 버블의 칼라 또는 명암 (intensity) 중 하나인, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  12. 제 1 항에 있어서,
    디스플레이되는 상기 리소스 활용 맵에 응답하여 사용자 입력을 수신하는 단계; 및
    수신된 상기 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 단계를 더 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  13. 제 12 항에 있어서,
    상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 단계는, 상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 직접적으로 할당하는 단계를 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  14. 제 12 항에 있어서,
    상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 단계는, 상기 수신된 사용자 입력에 기초하여 운영체제 메카니즘들을 사용하여 상기 컴퓨팅 디바이스의 리소스들을 간접적으로 할당하는 단계를 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  15. 제 12 항에 있어서,
    상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 단계는, 우선순위 설정 및 리소스 허가 중 하나 또는 양자를 조정하는 단계를 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  16. 제 12 항에 있어서,
    상기 컴퓨팅 디바이스로부터 사용자 선호사항들 및 리소스 할당 데이터 중 하나 또는 양자를 중앙 서버로 송신하는 단계로서, 상기 사용자 선호사항들 및 리소스 할당 데이터는 상기 수신된 사용자 입력으로부터 유도되는, 상기 중앙 서버로 송신하는 단계;
    상기 중앙 서버 상에서 사용자 선호사항들 및 리소스 할당 데이터 중 하나 또는 양자를 복수의 컴퓨팅 디바이스들로부터 수신하는 단계;
    상기 사용자 선호사항들 및 수신된 리소스 할당 데이터 중 하나 또는 양자에 기초하여 리소스 할당 방식을 생성하는 단계; 및
    상기 리소스 할당 방식을 송신하는 단계를 더 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  17. 제 12 항에 있어서,
    상기 컴퓨팅 디바이스로부터 중앙 서버로 상기 디스플레이되는 리소스 활용 맵에 응답하여 수신된 상기 사용자 입력을 송신하는 단계;
    상기 서버에 의해 수신된 상기 사용자 입력들에 기초하여 리소스 할당 방식을 생성하는 단계; 및
    상기 리소스 할당 방식을 송신하는 단계를 더 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  18. 제 12 항에 있어서,
    상기 컴퓨팅 디바이스에서 상기 송신된 리소스 할당 방식을 수신하는 단계; 및
    시스템 리소스들을 상기 컴퓨팅 디바이스 상에서 실행하는 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 초기에 할당하기 위해, 수신된 상기 리소스 할당 방식을 사용하는 단계를 더 포함하는, 컴퓨팅 디바이스 상에서 실행되는 사용자 인터페이스 방법.
  19. 중앙 서버 상에서 실행되는 리소스 최적화 방법으로서,
    대응하는 디스플레이 엘리먼트에 의한 리소스의 사용량을 나타내는 하나 이상의 시각적 표시자들을 포함하는 디스플레이된 그래픽 표현에 응답하여 사용자 입력들에 기초한 리소스 할당 데이터를 복수의 컴퓨팅 디바이스들로부터 수신하는 단계;
    수신된 상기 리소스 할당 데이터에 기초하여 커뮤니티 리소스 할당 방식을 생성하는 단계; 및
    상기 커뮤니티 리소스 할당 방식을 송신하는 단계를 포함하는, 중앙 서버 상에서 실행되는 리소스 최적화 방법.
  20. 제 19 항에 있어서,
    상기 수신된 리소스 할당 데이터는 사용자 선호사항들을 포함하는, 중앙 서버 상에서 실행되는 리소스 최적화 방법.
  21. 제 19 항에 있어서,
    상기 수신된 리소스 할당 데이터는 디스플레이된 리소스 활용 맵에 응답하여 상기 복수의 컴퓨팅 디바이스들의 각각에 의해 수신된 사용자 입력들을 포함하는, 중앙 서버 상에서 실행되는 리소스 최적화 방법.
  22. 제 19 항에 있어서,
    상기 수신된 리소스 할당 데이터는 디스플레이된 리소스 활용 맵에 응답하여 사용자 입력들을 수신하도록 장착된 각각의 컴퓨팅 디바이스들에 설정된 우선순위 설정 및 리소스 허가 중 하나 또는 양자를 포함하는, 중앙 서버 상에서 실행되는 리소스 최적화 방법.
  23. 디스플레이; 및
    상기 디스플레이에 커플링되며 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되는 프로세서를 포함하며,
    상기 동작들은,
    기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 리소스의 사용량을 나타내는 시각적 표시자를 포함하는 리소스 활용 맵으로 변환하는 것; 및
    상기 시각적 표시자가 대응하는 디스플레이 엘리먼트와 정렬되도록 상기 리소스 활용 맵을 디스플레이하는 것을 포함하는, 컴퓨팅 디바이스.
  24. 제 23 항에 있어서,
    상기 프로세서는 상기 리소스 활용 정보를 획득하는 것을 더 포함하는 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되는, 컴퓨팅 디바이스.
  25. 제 23 항에 있어서,
    상기 프로세서는, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 히트 맵 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 칼라의 관점에서 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는 칼라 오버레이 디스플레이를 생성하는 것을 포함하는, 컴퓨팅 디바이스.
  26. 제 23 항에 있어서,
    상기 프로세서는, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 바 그래프 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 바 그래프에서의 바들의 높이의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는, 상기 디스플레이 엘리먼트들과 연계하여 제시되는 상기 바 그래프들을 포함하는, 컴퓨팅 디바이스.
  27. 제 23 항에 있어서,
    상기 프로세서는, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 표고 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 쉐도우들의 사이즈의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는, 상기 디스플레이 엘리먼트들에 적용된 쉐도우들을 포함하는, 컴퓨팅 디바이스.
  28. 제 23 항에 있어서,
    상기 프로세서는, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 표고 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 다른 디스플레이 엘리먼트들에 대한 상대 표고의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는 표고 디스플레이 엘리먼트들을 포함하는, 컴퓨팅 디바이스.
  29. 제 23 항에 있어서,
    상기 프로세서는, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 컴퓨팅 디바이스 디스플레이의 주변부 상에 위치된 표시자들을 포함하는, 컴퓨팅 디바이스.
  30. 제 23 항에 있어서,
    상기 프로세서는, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 상기 컴퓨팅 디바이스 상에 저장된 애플리케이션들에 의한 리소스 활용에 관한 정보를 변환하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되며,
    상기 시각적 표시자들은 상기 애플리케이션이 상기 프로세서 상에서 실행되고 있을 때의 리소스 사용량을 나타내는, 컴퓨팅 디바이스.
  31. 제 23 항에 있어서,
    상기 프로세서는 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 디스플레이 엘리먼트와 연관되지 않은 백그라운드 프로세스들에 의한 리소스 활용을 나타내는 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은 상기 백그라운드 프로세스 및 상기 백그라운드 프로세스에 의한 상대적인 리소스 활용의 양자를 식별하는 표시자들의 디스플레이를 포함하는, 컴퓨팅 디바이스.
  32. 제 23 항에 있어서,
    상기 프로세서는, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 복수의 리소스 활용 맵들로 변환하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되며,
    상기 복수의 리소스 활용 맵들 각각은 복수의 시스템 리소스들 중 하나의 시스템 리소스에 대응하며, 상기 복수의 리소스 활용 맵들 각각은 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 복수의 시스템 리소스들 중 상기 하나의 시스템 리소스의 사용량을 나타내는 시각적 표시자를 포함하는, 컴퓨팅 디바이스.
  33. 제 32 항에 있어서,
    상기 프로세서는, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 제 1 및 제 2 리소스들의 활용에 관한 정보를 버블 이미지를 포함하는 버블 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되며,
    상기 제 1 리소스의 사용량을 나타내는 상기 시각적 표시자는, 상기 버블의 직경이며, 상기 제 1 리소스의 사용량을 나타내는 상기 시각적 표시자는 상기 버블의 칼라 또는 명암의 하나인, 컴퓨팅 디바이스.
  34. 제 23 항에 있어서,
    상기 프로세서는,
    디스플레이되는 상기 리소스 활용 맵에 응답하여 사용자 입력을 수신하는 것; 및
    수신된 상기 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 것을 더 포함하는 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되는, 컴퓨팅 디바이스.
  35. 제 34 항에 있어서,
    상기 프로세서는, 상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 것이 상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 직접적으로 할당하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되는, 컴퓨팅 디바이스.
  36. 제 34 항에 있어서,
    상기 프로세서는, 상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 것이 상기 수신된 사용자 입력에 기초하여 운영체제 메카니즘들을 사용하여 상기 컴퓨팅 디바이스의 리소스들을 간접적으로 할당하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되는, 컴퓨팅 디바이스.
  37. 제 34 항에 있어서,
    상기 프로세서는, 상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 것이 우선순위 설정 및 리소스 허가 중 하나 또는 양자를 조정하는 것을 포함하도록 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되는, 컴퓨팅 디바이스.
  38. 제 34 항에 있어서,
    상기 프로세서에 커플링된 송수신기를 더 포함하며,
    상기 프로세서는,
    상기 송수신기를 통해서 중앙 서버로 사용자 선호사항들 및 리소스 할당 데이터 중 하나 또는 양자를 송신하는 것을 더 포함하는 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되며,
    상기 사용자 선호사항들 및 리소스 할당 데이터는 상기 수신된 사용자 입력으로부터 유도되는, 컴퓨팅 디바이스.
  39. 제 34 항에 있어서,
    상기 프로세서에 커플링된 송수신기를 더 포함하며,
    상기 프로세서는,
    상기 송수신기를 통해서 중앙 서버로 상기 디스플레이되는 리소스 활용 맵에 응답하여 수신된 상기 사용자 입력을 송신하는 것을 더 포함하는 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되는, 컴퓨팅 디바이스.
  40. 제 34 항에 있어서,
    상기 프로세서는,
    상기 송수신기를 통해서, 상기 중앙 서버로부터 송신된 리소스 할당 방식을 수신하는 것; 및
    시스템 리소스들을 상기 컴퓨팅 디바이스 상에서 실행하는 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 초기에 할당하기 위해, 수신된 상기 리소스 할당 방식을 사용하는 것을 더 포함하는 동작들을 수행하는 프로세서-실행가능한 명령들로 구성되는, 컴퓨팅 디바이스.
  41. 컴퓨팅 디바이스로서,
    기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 리소스의 사용량을 나타내는 시각적 표시자를 포함하는 리소스 활용 맵으로 변환하는 수단; 및
    상기 시각적 표시자가 대응하는 디스플레이 엘리먼트와 정렬되도록 상기 리소스 활용 맵을 디스플레이하는 수단을 포함하는, 컴퓨팅 디바이스.
  42. 제 41 항에 있어서,
    상기 리소스 활용 정보를 획득하는 수단을 더 포함하는, 컴퓨팅 디바이스.
  43. 제 41 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 수단은, 리소스 활용에 관한 정보를 히트 맵 리소스 활용 맵으로 변환하는 수단을 포함하며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 칼라의 관점에서 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는 칼라 오버레이 디스플레이를 생성하는 것을 포함하는, 컴퓨팅 디바이스.
  44. 제 41 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 수단은, 리소스 활용에 관한 정보를 바 그래프 리소스 활용 맵으로 변환하는 수단을 포함하며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 바 그래프에서의 바들의 높이의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는, 상기 디스플레이 엘리먼트들과 연계하여 제시되는 상기 바 그래프들을 포함하는, 컴퓨팅 디바이스.
  45. 제 41 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 수단은, 리소스 활용에 관한 정보를 표고 리소스 활용 맵으로 변환하는 수단을 포함하며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 쉐도우들의 사이즈의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는, 상기 디스플레이 엘리먼트들에 적용된 쉐도우들을 포함하는, 컴퓨팅 디바이스.
  46. 제 41 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 수단은, 리소스 활용에 관한 정보를 표고 리소스 활용 맵으로 변환하는 수단을 포함하며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 다른 디스플레이 엘리먼트들에 대한 상대 표고의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는 표고 디스플레이 엘리먼트들을 포함하는, 컴퓨팅 디바이스.
  47. 제 41 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 수단은, 리소스 활용에 관한 정보를, 프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들이 컴퓨팅 디바이스 디스플레이의 주변부 상에 위치된 표시자들을 포함하는 리소스 활용 맵으로 변환하는 수단을 포함하는, 컴퓨팅 디바이스.
  48. 제 41 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 수단은, 상기 컴퓨팅 디바이스 상에 저장된 애플리케이션들에 의한 리소스 활용에 관한 정보를 변환하는 수단을 포함하며,
    상기 시각적 표시자들은 상기 애플리케이션이 프로세서 상에서 실행되고 있을 때의 리소스 사용량을 나타내는, 컴퓨팅 디바이스.
  49. 제 41 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 수단은, 리소스 활용에 관한 정보를 디스플레이 엘리먼트와 연관되지 않은 백그라운드 프로세스들에 의한 리소스 활용을 나타내는 리소스 활용 맵으로 변환하는 수단을 포함하며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 상기 백그라운드 프로세스 및 상기 백그라운드 프로세스에 의한 상대적인 리소스 활용의 양자를 식별하는 표시자들의 디스플레이를 포함하는, 컴퓨팅 디바이스.
  50. 제 41 항에 있어서,
    기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 수단은, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 복수의 리소스 활용 맵들로 변환하는 수단을 포함하며,
    상기 복수의 리소스 활용 맵들 각각은 복수의 시스템 리소스들 중 하나의 시스템 리소스에 대응하며,
    상기 복수의 리소스 활용 맵들 각각은 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 복수의 시스템 리소스들 중 상기 하나의 시스템 리소스의 사용량을 나타내는 시각적 표시자를 포함하는, 컴퓨팅 디바이스.
  51. 제 50 항에 있어서,
    상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 수단은, 제 1 및 제 2 리소스들의 활용에 관한 정보를 버블 이미지를 포함하는 버블 리소스 활용 맵으로 변환하는 수단을 포함하며,
    상기 제 1 리소스의 사용량을 나타내는 상기 시각적 표시자는 상기 버블의 직경이며, 상기 제 1 리소스의 사용량을 나타내는 상기 시각적 표시자는 상기 버블의 칼라 또는 명암 중 하나인, 컴퓨팅 디바이스.
  52. 제 41 항에 있어서,
    디스플레이되는 상기 리소스 활용 맵에 응답하여 사용자 입력을 수신하는 수단; 및
    수신된 상기 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 수단을 더 포함하는, 컴퓨팅 디바이스.
  53. 제 52 항에 있어서,
    상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 수단은, 상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 직접적으로 할당하는 수단을 포함하는, 컴퓨팅 디바이스.
  54. 제 52 항에 있어서,
    상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 수단은, 상기 수신된 사용자 입력에 기초하여 운영체제 메카니즘들을 사용하여 상기 컴퓨팅 디바이스의 리소스들을 간접적으로 할당하는 수단을 포함하는, 컴퓨팅 디바이스.
  55. 제 52 항에 있어서,
    상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 수단은, 우선순위 설정 및 리소스 허가 중 하나 또는 양자를 조정하는 수단을 포함하는, 컴퓨팅 디바이스.
  56. 제 52 항에 있어서,
    중앙 서버로 사용자 선호사항들 및 리소스 할당 데이터 중 하나 또는 양자를 송신하는 수단을 더 포함하며,
    상기 사용자 선호사항들 및 리소스 할당 데이터는 상기 수신된 사용자 입력으로부터 유도되는, 컴퓨팅 디바이스.
  57. 제 52 항에 있어서,
    송수신기를 통해서 중앙 서버로 상기 디스플레이되는 리소스 활용 맵에 응답하여 수신된 상기 사용자 입력을 송신하는 수단을 더 포함하는, 컴퓨팅 디바이스.
  58. 제 52 항에 있어서,
    중앙 서버로부터 송신된 리소스 할당 방식을 수신하는 수단; 및
    시스템 리소스들을 상기 컴퓨팅 디바이스 상에서 실행하는 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 초기에 할당하기 위해, 수신된 상기 리소스 할당 방식을 사용하는 수단을 더 포함하는, 컴퓨팅 디바이스.
  59. 컴퓨팅 디바이스의 프로세서로 하여금,
    기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 리소스의 사용량을 나타내는 시각적 표시자를 포함하는 리소스 활용 맵으로 변환하는 것; 및
    상기 시각적 표시자가 대응하는 디스플레이 엘리먼트와 정렬되도록 상기 리소스 활용 맵을 디스플레이하는 것을
    포함하는 동작들을 수행하게 하도록 구성되는 프로세서-실행가능한 명령들을 저장하고 있는, 비일시성 컴퓨팅 판독가능 저장 매체.
  60. 제 59 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 리소스 활용 정보를 획득하는 것을 더 포함하는 동작들을 수행하게 하도록 구성되는, 비일시성 컴퓨팅 판독가능 저장 매체.
  61. 제 59 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 히트 맵 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하게 하도록 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은 칼라의 관점에서 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는 칼라 오버레이 디스플레이를 생성하는 것을 포함하는, 비일시성 컴퓨팅 판독가능 저장 매체.
  62. 제 59 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 바 그래프 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하게 하도록 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은 바 그래프에서의 바들의 높이의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는, 상기 디스플레이 엘리먼트들과 연계하여 제시되는 상기 바 그래프들을 포함하는, 비일시성 컴퓨팅 판독가능 저장 매체.
  63. 제 59 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 표고 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하게 하도록 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 쉐도우들의 사이즈의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는, 상기 디스플레이 엘리먼트들에 적용된 쉐도우들을 포함하는, 비일시성 컴퓨팅 판독가능 저장 매체.
  64. 제 59 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 표고 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하게 하도록 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 다른 디스플레이 엘리먼트들에 대한 상대 표고의 관점에서, 디스플레이 엘리먼트들에 대응하는 프로세스들의 상대적인 리소스 활용을 나타내는 표고 디스플레이 엘리먼트들을 포함하는, 비일시성 컴퓨팅 판독가능 저장 매체.
  65. 제 59 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를, 프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들이 컴퓨팅 디바이스 디스플레이의 주변부 상에 위치된 표시자들을 포함하는 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하게 하도록 구성되는, 비일시성 컴퓨팅 판독가능 저장 매체.
  66. 제 59 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 상기 컴퓨팅 디바이스 상에 저장된 애플리케이션들에 의한 리소스 활용에 관한 정보를 변환하는 것을 포함하도록 동작들을 수행하게 하도록 구성되며,
    상기 시각적 표시자들은 상기 애플리케이션이 상기 프로세서 상에서 실행되고 있을 때의 리소스 사용량을 나타내는, 비일시성 컴퓨팅 판독가능 저장 매체.
  67. 제 59 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 리소스 활용에 관한 정보를 디스플레이 엘리먼트와 연관되지 않은 백그라운드 프로세스들에 의한 리소스 활용을 나타내는 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하게 하도록 구성되며,
    프로세스 또는 애플리케이션에 의한 리소스의 사용량을 나타내는 상기 시각적 표시자들은, 상기 백그라운드 프로세스 및 상기 백그라운드 프로세스에 의한 상대적인 리소스 활용의 양자를 식별하는 표시자들의 디스플레이를 포함하는, 비일시성 컴퓨팅 판독가능 저장 매체.
  68. 제 59 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 복수의 리소스 활용 맵들로 변환하는 것을 포함하도록 동작들을 수행하게 하도록 구성되며,
    상기 복수의 리소스 활용 맵들 각각은 복수의 시스템 리소스들 중 하나의 시스템 리소스에 대응하며, 상기 복수의 리소스 활용 맵들 각각은 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 복수의 시스템 리소스들 중 상기 하나의 시스템 리소스의 사용량을 나타내는 시각적 표시자를 포함하는, 비일시성 컴퓨팅 판독가능 저장 매체.
  69. 제 68 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 의한 상기 컴퓨팅 디바이스의 리소스 활용에 관한 정보를 리소스 활용 맵으로 변환하는 것이 제 1 및 제 2 리소스들의 활용에 관한 정보를 버블 이미지를 포함하는 버블 리소스 활용 맵으로 변환하는 것을 포함하도록 동작들을 수행하게 하도록 구성되며,
    상기 제 1 리소스의 사용량을 나타내는 상기 시각적 표시자는 상기 버블의 직경이며, 상기 제 1 리소스의 사용량을 나타내는 상기 시각적 표시자는 상기 버블의 칼라 또는 명암 중 하나인, 비일시성 컴퓨팅 판독가능 저장 매체.
  70. 제 59 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금:
    디스플레이되는 상기 리소스 활용 맵에 응답하여 사용자 입력을 수신하는 것; 및
    수신된 상기 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 것을
    더 포함하는 동작들을 수행하게 하도록 구성되는, 비일시성 컴퓨팅 판독가능 저장 매체.
  71. 제 70 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 것이 상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 직접적으로 할당하는 것을 포함하도록 동작들을 수행하게 하도록 구성되는, 비일시성 컴퓨팅 판독가능 저장 매체.
  72. 제 70 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 것이 상기 수신된 사용자 입력에 기초하여 운영체제 메카니즘들을 사용하여 상기 컴퓨팅 디바이스의 리소스들을 간접적으로 할당하는 것을 포함하도록 동작들을 수행하게 하도록 구성되는, 비일시성 컴퓨팅 판독가능 저장 매체.
  73. 제 70 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금, 상기 수신된 사용자 입력에 기초하여 상기 컴퓨팅 디바이스의 리소스들을 할당하는 것이 우선순위 설정 및 리소스 허가 중 하나 또는 양자를 조정하는 것을 포함하도록 동작들을 수행하게 하도록 구성되는, 비일시성 컴퓨팅 판독가능 저장 매체.
  74. 제 70 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금,
    송수신기를 통해서 중앙 서버로 사용자 선호사항들 및 리소스 할당 데이터 중 하나 또는 양자를 송신하는 것을 더 포함하는 동작들을 수행하게 하도록 구성되며,
    상기 사용자 선호사항들 및 리소스 할당 데이터는 상기 수신된 사용자 입력으로부터 유도되는, 비일시성 컴퓨팅 판독가능 저장 매체.
  75. 제 70 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금,
    송수신기를 통해서 중앙 서버로 상기 디스플레이되는 리소스 활용 맵에 응답하여 수신된 상기 사용자 입력을 송신하는 것을 더 포함하는 동작들을 수행하게 하도록 구성되는, 비일시성 컴퓨팅 판독가능 저장 매체.
  76. 제 70 항에 있어서,
    상기 저장된 프로세서-실행가능한 명령들은,
    컴퓨팅 디바이스의 프로세서로 하여금,
    송수신기를 통해서, 중앙 서버로부터 송신된 리소스 할당 방식을 수신하는 것; 및
    시스템 리소스들을 상기 컴퓨팅 디바이스 상에서 실행하는 기능, 프로세스, 애플리케이션, 프로세스의 구성요소, 및 애플리케이션의 구성요소 중 하나 이상에 초기에 할당하기 위해, 수신된 상기 리소스 할당 방식을 사용하는 것을
    더 포함하는 동작들을 수행하게 하도록 구성되는, 비일시성 컴퓨팅 판독가능 저장 매체.
  77. 복수의 컴퓨팅 디바이스들로부터 송신들을 수신하고 복수의 컴퓨팅 디바이스들로 송신들을 전송하도록 구성된 네트워크 접속부; 및
    동작들을 수행하는 프로세서-실행가능한 명령들로 구성된 서버 프로세서를 포함하며,
    상기 동작들은,
    대응하는 디스플레이 엘리먼트에 의한 리소스의 사용량을 나타내는 하나 이상의 시각적 표시자들을 포함하는 디스플레이된 그래픽 표현에 응답하여 사용자 입력들에 기초한 리소스 할당 데이터를 상기 복수의 컴퓨팅 디바이스들로부터 수신하는 것;
    수신된 상기 리소스 할당 데이터에 기초하여 커뮤니티 리소스 할당 방식을 생성하는 것; 및
    상기 네트워크 접속부를 통해서 상기 커뮤니티 리소스 할당 방식을 송신하는 것을 포함하는, 서버.
  78. 제 77 항에 있어서,
    상기 수신된 리소스 할당 데이터는 사용자 선호사항들을 포함하는, 서버.
  79. 제 77 항에 있어서,
    상기 수신된 리소스 할당 데이터는 디스플레이된 리소스 활용 맵에 응답하여 상기 복수의 컴퓨팅 디바이스들의 각각에 의해 수신된 사용자 입력들을 포함하는, 서버.
  80. 제 77 항에 있어서,
    상기 수신된 리소스 할당 데이터는 디스플레이된 리소스 활용 맵에 응답하여 사용자 입력들을 수신하도록 장착된 각각의 컴퓨팅 디바이스들에 설정된 우선순위 설정 및 리소스 허가 중 하나 또는 양자를 포함하는, 서버.
  81. 복수의 컴퓨팅 디바이스들로부터 송신들을 수신하고 상기 복수의 컴퓨팅 디바이스들로 송신들을 전송하는 수단;
    대응하는 디스플레이 엘리먼트에 의한 리소스의 사용량을 나타내는 하나 이상의 시각적 표시자들을 포함하는 디스플레이된 그래픽 표현에 응답하여 사용자 입력들에 기초한 리소스 할당 데이터를 상기 복수의 컴퓨팅 디바이스들로부터 수신하는 수단;
    수신된 상기 리소스 할당 데이터에 기초하여 커뮤니티 리소스 할당 방식을 생성하는 수단; 및
    네트워크 접속부를 통해서 상기 커뮤니티 리소스 할당 방식을 송신하는 수단을 포함하는, 서버.
  82. 제 81 항에 있어서,
    상기 수신된 리소스 할당 데이터는 사용자 선호사항들을 포함하는, 서버.
  83. 제 81 항에 있어서,
    상기 수신된 리소스 할당 데이터는 디스플레이된 리소스 활용 맵에 응답하여 상기 복수의 컴퓨팅 디바이스들의 각각에 의해 수신된 사용자 입력들을 포함하는, 서버.
  84. 제 81 항에 있어서,
    상기 수신된 리소스 할당 데이터는 디스플레이된 리소스 활용 맵에 응답하여 사용자 입력들을 수신하도록 장착된 각각의 컴퓨팅 디바이스들에 설정된 우선순위 설정 및 리소스 허가 중 하나 또는 양자를 포함하는, 서버.
  85. 서버로 하여금,
    대응하는 디스플레이 엘리먼트에 의한 리소스의 사용량을 나타내는 하나 이상의 시각적 표시자들을 포함하는 디스플레이된 그래픽 표현에 응답하여 사용자 입력들에 기초한 리소스 할당 데이터를 복수의 컴퓨팅 디바이스들로부터 수신하는 것;
    수신된 상기 리소스 할당 데이터에 기초하여 커뮤니티 리소스 할당 방식을 생성하는 것; 및
    상기 커뮤니티 리소스 할당 방식을 송신하는 것을
    포함하는 동작들을 수행하게 하도록 구성되는 프로세서-실행가능한 명령들을 저장하고 있는, 비일시성 컴퓨팅 판독가능 저장 매체.
  86. 제 85 항에 있어서,
    상기 수신된 리소스 할당 데이터는 사용자 선호사항들을 포함하는, 비일시성 컴퓨팅 판독가능 저장 매체.
  87. 제 85 항에 있어서,
    상기 수신된 리소스 할당 데이터는 디스플레이된 리소스 활용 맵에 응답하여 상기 복수의 컴퓨팅 디바이스들의 각각에 의해 수신된 사용자 입력들을 포함하는, 비일시성 컴퓨팅 판독가능 저장 매체.
  88. 제 85 항에 있어서,
    상기 수신된 리소스 할당 데이터는 디스플레이된 리소스 활용 맵에 응답하여 사용자 입력들을 수신하도록 장착된 각각의 컴퓨팅 디바이스들에 설정된 우선순위 설정 및 리소스 허가 중 하나 또는 양자를 포함하는, 비일시성 컴퓨팅 판독가능 저장 매체.
KR1020137029652A 2011-04-08 2012-04-06 리소스 활용 맵들을 사용한 최적화된 실행을 위한 방법 및 장치 KR101642557B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/082,650 US9804893B2 (en) 2011-04-08 2011-04-08 Method and apparatus for optimized execution using resource utilization maps
US13/082,650 2011-04-08
PCT/US2012/032523 WO2012139000A1 (en) 2011-04-08 2012-04-06 Method and apparatus for optimized execution using resource utilization maps

Publications (2)

Publication Number Publication Date
KR20140002035A true KR20140002035A (ko) 2014-01-07
KR101642557B1 KR101642557B1 (ko) 2016-07-25

Family

ID=46000365

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137029652A KR101642557B1 (ko) 2011-04-08 2012-04-06 리소스 활용 맵들을 사용한 최적화된 실행을 위한 방법 및 장치

Country Status (6)

Country Link
US (2) US9804893B2 (ko)
EP (1) EP2695062B1 (ko)
JP (1) JP5856282B2 (ko)
KR (1) KR101642557B1 (ko)
CN (1) CN103460193B (ko)
WO (1) WO2012139000A1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8437984B2 (en) 2008-08-12 2013-05-07 Rockwell Automation Technologies, Inc. Visualization employing heat maps to convey quality, prognostics, or diagnostics information
WO2012068551A1 (en) * 2010-11-18 2012-05-24 Google Inc. Surfacing off-screen visible objects
US9804893B2 (en) 2011-04-08 2017-10-31 Qualcomm Incorporated Method and apparatus for optimized execution using resource utilization maps
US9860365B2 (en) * 2012-03-23 2018-01-02 Fujitsu Limited Providing setting adjustments to a communication device
CN103780741B (zh) * 2012-10-18 2018-03-13 腾讯科技(深圳)有限公司 提示网速的方法和移动设备
US9438495B2 (en) * 2013-04-02 2016-09-06 Amazon Technologies, Inc. Visualization of resources in a data center
CN105765924B (zh) * 2013-09-11 2019-06-07 飞比特网络股份有限公司 应用状态变化通知方法以及存储介质
JP6055104B2 (ja) * 2013-09-11 2016-12-27 フリービット株式会社 ネットワーク接続システム及びその方法
US9331911B2 (en) * 2013-11-01 2016-05-03 International Business Machines Corporation Resizing resource allocation in a computing environment
CN103942105A (zh) * 2014-03-20 2014-07-23 华为技术有限公司 一种获取资源利用情况的方法和装置
CN105988872B (zh) 2015-02-03 2020-02-18 阿里巴巴集团控股有限公司 一种cpu资源分配的方法、装置及电子设备
US20170017365A1 (en) * 2015-07-14 2017-01-19 Futurewei Technologies, Inc. System, method, and computer program for visually altering a user interface based on application program runtime information
CN106406650B (zh) * 2015-07-30 2019-11-08 阿里巴巴集团控股有限公司 一种图标显示方法和设备
US10496940B2 (en) * 2015-12-01 2019-12-03 Sap Se Presenting resource utilization in a user interface
EP4171105A1 (en) * 2016-03-29 2023-04-26 Huawei Technologies Co., Ltd. Resource statistics collection method and terminal
US11093836B2 (en) 2016-06-15 2021-08-17 International Business Machines Corporation Detecting and predicting bottlenecks in complex systems
CN106371970B (zh) * 2016-08-29 2019-08-02 北京小米移动软件有限公司 应用监控方法及装置
US10592749B2 (en) 2016-11-14 2020-03-17 General Electric Company Systems and methods for analyzing turns at an airport
US10503233B2 (en) 2017-04-14 2019-12-10 Intel Corporation Usage scenario based monitoring and adjustment
JP2018183238A (ja) * 2017-04-24 2018-11-22 株式会社ユニバーサルエンターテインメント 遊技機
JP2018183239A (ja) * 2017-04-24 2018-11-22 株式会社ユニバーサルエンターテインメント 遊技機
JP6538769B2 (ja) * 2017-07-25 2019-07-03 エントイット ソフトウェア エルエルシーEntit Software Llc ヒートマップを用いた情報技術の状況の表示
CN107479744B (zh) * 2017-07-28 2021-02-02 Oppo广东移动通信有限公司 调整触摸屏调度优先级的方法、装置、终端及存储介质
US11531569B2 (en) 2017-11-10 2022-12-20 Core Scientific Operating Company System and method for scaling provisioned resources
US10834336B2 (en) 2018-01-29 2020-11-10 Ge Aviation Systems Llc Thermal imaging of aircraft
JP7374413B2 (ja) 2020-03-17 2023-11-07 Biprogy株式会社 現実物体に対するクラスタリングの可視化システム、可視化制御装置、可視化方法および可視化制御用プログラム
US11748171B2 (en) * 2020-03-17 2023-09-05 Dell Products L.P. Method and system for collaborative workload placement and optimization
US11240284B1 (en) * 2020-05-28 2022-02-01 Facebook, Inc. Systems and methods for application- and content-aware real-time video encoding

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030142109A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Displaying transparent resource aids
US20030142143A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Varying heights of application images to convey application status
US20030142140A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Adjusting the tint of a translucent window to convey status
US20030142141A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Displaying specified resource usage

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10001539B4 (de) 2000-01-14 2006-01-19 Uhde Gmbh Verfahren zur Beseitigung von NOx und N2O
JP2002342122A (ja) 2001-05-15 2002-11-29 Toshiba Corp データ処理装置及びデータ処理方法
US7027051B2 (en) * 2001-06-29 2006-04-11 International Business Machines Corporation Graphical user interface for visualization of sampled data compared to entitled or reference levels
US7146573B2 (en) 2002-01-28 2006-12-05 International Business Machines Corporation Automatic window representation adjustment
US20050149940A1 (en) 2003-12-31 2005-07-07 Sychron Inc. System Providing Methodology for Policy-Based Resource Allocation
JP2005275829A (ja) 2004-03-25 2005-10-06 Hitachi Ltd ストレージシステム
US8091088B2 (en) 2005-02-22 2012-01-03 Microsoft Corporation Method and system for hierarchical resource management involving hard and soft resource limits
US20060277206A1 (en) * 2005-06-02 2006-12-07 Bailey Philip G Automated reporting of computer system metrics
US20070150599A1 (en) 2005-12-22 2007-06-28 International Business Machines Corporation Generation of resource-usage profiles for application sessions of a number of client computing devices
GB2444518A (en) 2006-12-07 2008-06-11 Symbian Software Ltd Process priority profiles in a computer system
US8218177B2 (en) * 2007-11-09 2012-07-10 Xerox Corporation Resource management profiles
US8358659B2 (en) 2008-01-02 2013-01-22 International Business Machines Corporation Visual metering and response to maintain voice quality in a voice over internet protocol call
US8013859B2 (en) 2008-03-20 2011-09-06 Vmware, Inc. Graphical display for illustrating effectiveness of resource management and resource balancing
US20100031157A1 (en) * 2008-07-30 2010-02-04 Robert Neer System that enables a user to adjust resources allocated to a group
US8112366B2 (en) 2008-09-30 2012-02-07 Microsoft Corporation Expert system and visualization for multi-server capacity management
US8713157B2 (en) 2008-11-14 2014-04-29 Interpret, Llc System for collecting computer application usage data of targeted application programs executed on a plurality of client devices
JP5347648B2 (ja) 2009-03-30 2013-11-20 富士通株式会社 プログラム、情報処理装置及び状態出力方法
US8650426B2 (en) 2009-12-16 2014-02-11 Qualcomm Incorporated System and method for controlling central processing unit power in a virtualized system
US9563250B2 (en) 2009-12-16 2017-02-07 Qualcomm Incorporated System and method for controlling central processing unit power based on inferred workload parallelism
US9804893B2 (en) 2011-04-08 2017-10-31 Qualcomm Incorporated Method and apparatus for optimized execution using resource utilization maps

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030142109A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Displaying transparent resource aids
US20030142143A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Varying heights of application images to convey application status
US20030142140A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Adjusting the tint of a translucent window to convey status
US20030142141A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Displaying specified resource usage

Also Published As

Publication number Publication date
CN103460193A (zh) 2013-12-18
JP2014512050A (ja) 2014-05-19
US10592292B2 (en) 2020-03-17
CN103460193B (zh) 2017-10-31
US20120260179A1 (en) 2012-10-11
EP2695062A1 (en) 2014-02-12
WO2012139000A1 (en) 2012-10-11
US9804893B2 (en) 2017-10-31
JP5856282B2 (ja) 2016-02-09
EP2695062B1 (en) 2017-11-22
US20170255497A1 (en) 2017-09-07
KR101642557B1 (ko) 2016-07-25

Similar Documents

Publication Publication Date Title
US10592292B2 (en) Method and apparatus for optimized execution using resource utilization maps
US9542061B2 (en) Graphical user interface sizing and arrangement system
US9377839B2 (en) Dynamic battery management
US10282019B2 (en) Electronic device and method for processing gesture input
US10768681B2 (en) Electronic device and content display method thereof
CN105283844B (zh) 电子设备和通过电子设备提供电池信息的方法
US20190188030A1 (en) Terminal background application management method and apparatus
US10437462B2 (en) Method for locking and unlocking touchscreen-equipped mobile device and mobile device
KR102089459B1 (ko) 무선 통신에 기반한 데이터 송수신 방법 및 장치
KR102642689B1 (ko) 전자 장치 및 그 트래픽 제어 방법
JP2015531202A (ja) 写真を使用したオペレーティングシステムカラーの設定
EP3522614A1 (en) Electronic device and method for operating the same
CN106464727B (zh) 终端装置、云装置、驱动终端装置的方法、协同处理数据的方法和计算机可读记录介质
KR20150019892A (ko) 무선 통신에 기반한 데이터 송수신 방법 및 장치
KR20200058511A (ko) 아이콘 디스플레이 방법, 디바이스, 및 시스템
CN110730300A (zh) 相机控制方法、装置、存储介质和终端
CN114546219A (zh) 图片列表的处理方法及相关装置
US10313978B2 (en) Electronic apparatus and control method thereof
CN114383280B (zh) 一种终端和环境调节方法
KR20170084980A (ko) 전자 장치 및 그 제어 방법
CN117149431A (zh) 资源的管理方法、装置及电子设备
CN114416271A (zh) 应用管理方法及其装置
KR20180086708A (ko) 전자 장치 및 그의 서버에 액세스하는 방법

Legal Events

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