KR101835303B1 - 컴퓨팅 장치들에 대한 시스템 성능 및 이벤트 데이터를 수집, 추적 및 저장하기 위한 시스템들 및 방법들 - Google Patents
컴퓨팅 장치들에 대한 시스템 성능 및 이벤트 데이터를 수집, 추적 및 저장하기 위한 시스템들 및 방법들 Download PDFInfo
- Publication number
- KR101835303B1 KR101835303B1 KR1020167009707A KR20167009707A KR101835303B1 KR 101835303 B1 KR101835303 B1 KR 101835303B1 KR 1020167009707 A KR1020167009707 A KR 1020167009707A KR 20167009707 A KR20167009707 A KR 20167009707A KR 101835303 B1 KR101835303 B1 KR 101835303B1
- Authority
- KR
- South Korea
- Prior art keywords
- computing device
- performance
- computing devices
- data set
- system event
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/323—Visualisation of programs or trace data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3428—Benchmarking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/86—Event-based monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Debugging And Monitoring (AREA)
- Hardware Redundancy (AREA)
- Computer And Data Communications (AREA)
- Power Sources (AREA)
- Telephonic Communication Services (AREA)
- Time Recorders, Dirve Recorders, Access Control (AREA)
- User Interface Of Digital Computer (AREA)
- Stored Programmes (AREA)
Abstract
시스템은 다양한 컴퓨팅 장치들에 대한 시스템 및 이벤트 데이터를 추적 및 저장하도록 구성된다. 상기 시스템은 상기 다양한 컴퓨팅 장치들을 상기 컴퓨팅 장치들의 특징들에 적어도 부분적으로 기초하여 프로파일들과 연관시킨다. 상기 시스템은 또한 특정 프로파일을 갖는 특정 컴퓨팅 장치들에 대한 성능 데이터 및/또는 성능 메트릭을 상기 특정 프로파일들을 공유하는 모든 다른 장치들에 대해 비교하도록 구성된다. 이때, 상기 시스템은 상기 비교를 상기 특정 컴퓨터 장치의 사용자에게 디스플레이하고, 상기 성능 및 시스템 이벤트 데이터에 기초하여 상기 특정 컴퓨팅 장치에서의 문제를 실질적으로 자동으로 진단하며, 및/또는 상기 사용자로 하여금 상기 성능 및 시스템 이벤트 데이터에 기초하여 상기 문제를 진단할 수 있게 한다.
Description
본 발명은 컴퓨팅 장치들에 대한 시스템 성능 및 이벤트 데이터를 수집, 추적 및 저장하기 위한 시스템들 및 방법에 관한 것이다.
컴퓨팅 문제들을 진단할 때, 기술자들이나 기타 다른 사람들은 상기 컴퓨팅 장치에 관한 현재 상태에서의 정보만을 확인할 수 있을 것이다. 이러한 것은, 상기 장치가 진정으로 열악한 방식(sub-standard way)으로 수행하고 있는지, 그렇다면 상기 열악한 성능을 일으키는 것이 무엇인지를 결정하기 어렵게 할 수 있다.
따라서, 컴퓨팅 장치들의 성능을 평가하고 및/또는 개선하는 데 있어 사용자를 지원하기 위한 개선된 시스템들 및 방법들이 요구된다.
컴퓨터 실행가능한 명령들을 저장한 비-일시적 컴퓨터 판독가능한 매체로서: (A) 시간에 걸쳐 취해진 복수의 컴퓨팅 장치들의 각각과 연관된 타임 스탬프 성능을 메모리에 저장하고; (B) 시간에 걸쳐 취해진 상기 복수의 컴퓨팅 장치들의 각각과 연관된 타임 스탬프 이벤트 데이터를 메모리에 저장하고; 및 (C) 상기 복수의 컴퓨팅 장치들 중 제 1 장치와 연관된 개인에게, 상기 복수의 컴퓨팅 장치들로부터 상기 제 1 컴퓨팅 장치와 유사한 다른 컴퓨팅 장치들의 일반적인 성능과 상기 제 1 컴퓨팅 장치의 성능을 비교한 것을 제공하도록 적어도 상기 타임 스탬프 성능 데이터 및/또는 상기 이벤트 데이터를 사용하기 위한 컴퓨터-실행가능한 명령들을 저장하는, 상기 비-일시적 컴퓨터 판독가능한 저장 매체가 있다. 상기 비교는 예를 들면, 시간에 걸쳐 취해진 하나 이상의 컴퓨팅 장치들에 대한 성능 및/또는 이벤트 데이터를 디스플레이하는 정보(또는 상기 복수의 컴퓨팅 장치들에 대한 집계된 정보)의 종적 디스플레이의 형태가 될 수 있다.
다양한 실시예들에 따라, 비-일시적 컴퓨터 판독가능한 저장 매체는: (A) 하나 이상의 특징들을 포함하는 장치 프로파일을 갖는 제 1 컴퓨팅 장치에 대한 제 1 시스템 이벤트 데이터를 수신하고; (B) 상기 제 1 컴퓨팅 장치에 대한 제 1 성능 데이터를 수신하고; (C) 상기 장치 프로파일을 갖는 적어도 하나의 제 2 컴퓨팅 장치에 대한 제 2 시스템 이벤트 데이터를 수신하고; (D) 상기 적어도 하나의 제 2 컴퓨팅 장치에 대한 제 2 성능 데이터를 수신하고; (E) 사용자로 하여금 상기 제 1 시스템 이벤트 데이터, 상기 제 1 성능 데이터, 상기 제 2 시스템 이벤트 데이터, 및 상기 제 2 성능 데이터를 비교할 수 있게 하는, 컴퓨터-실행가능한 명령들을 저장한다.
특정 실시예들에 따라, 컴퓨터 시스템은 적어도 하나의 프로세서를 포함한다. 다양한 실시예들에 있어서, 상기 컴퓨터 시스템은: (A) 제 1 모바일 컴퓨팅 장치와 연관된 제 1 데이터를 수신하는 것으로, 여기서 상기 제 1 데이터는 제 1 성능 데이터 및 적어도 하나의 제 1 시스템 이벤트를 포함하고, 상기 제 1 모바일 컴퓨팅 장치는 적어도 하나의 모바일 장치 특징을 포함하는, 상기 제 1 데이터의 수신과; (B) 하나 이상의 제 2 모바일 컴퓨팅 장치들과 연관된 제 2 데이터를 수신하는 것으로, 여기서 상기 제 2 데이터는 제 2 성능 데이터 및 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들의 각각에 대한 적어도 하나의 제 2 시스템 이벤트를 포함하는, 상기 제 2 데이터의 수신과; (C) 적어도 하나의 프로파일을 확립하는 것으로, 여기서 상기 적어도 하나의 프로파일은 상기 적어도 하나의 모바일 장치 특징과 연관되는, 상기 프로파일 확립과; (D) 상기 하나 이상의 제 2 컴퓨팅 장치들 중 어느 것이 상기 적어도 하나의 모바일 장치 특징을 갖는지를 결정하는 것과; (E) 상기 하나 이상의 제 2 컴퓨팅 장치들이 상기 적어도 하나의 모바일 장치 특징을 갖는지에 대한 결정에 적어도 부분적으로 응답하여, 상기 하나 이상의 제 2 컴퓨팅 장치들을 상기 프로파일에 할당하는 것과; (F) 상기 제 1 컴퓨팅 장치가 상기 적어도 하나의 모바일 장치 특징을 갖는 지를 결정하는 것과; (G) 상기 프로파일에 할당된 상기 하나 이상의 제 2 컴퓨팅 장치들의 제 1 데이터 및 제 2 데이터를 상기 제 1 모바일 장치의 사용자에게 디스플레이하는 것을 수행하도록 구성된다.
다양한 실시예들에 따라, 컴퓨터 실행 방법은 프로세서에 의해 복수의 컴퓨팅 장치들에 대한 시스템 이벤트 데이터 및 시스템 성능 데이터를 수신하는 단계를 포함한다. 특정 실시예들에서, 상기 복수의 컴퓨팅 장치들은 제 1 시스템 이벤트 데이터 및 제 1 시스템 성능 데이터와 연관된 제 1 컴퓨팅 장치를 포함하고, 상기 복수의 컴퓨팅 장치들의 적어도 하나 이상의 특징들에 기초한 적어도 하나의 프로파일 공유한다. 다양한 실시예들에서, 상기 컴퓨터 실행 방법은: 상기 시스템 이벤트 데이터 및 상기 시스템 성능 데이터에 적어도 부분적으로 기초하여 상기 복수의 컴퓨팅 장치들에 대한 평균 성능 메트릭을 프로세서에 의해 결정하는 단계; 상기 제 1 시스템 이벤트 데이터 및 상기 제 1 시스템 성능 데이터에 적어도 부분적으로 기초하여 상기 제 1 컴퓨팅 장치에 대한 제 1 성능 메트릭을 프로세서에 의해 결정하는 단계; 및 상기 평균 성능 메트릭 및 상기 제 1 성능 메트릭을 프로세서에 의해 상기 제 1 컴퓨팅 장치의 사용자에게 디스플레이하는 단계를 포함한다.
컴퓨팅 장치들에 대한 성능 및 시스템 정보를 수집, 추적 및 저장하기 위한 시스템 및 방법의 다양한 실시예들이 하기에 기술된다. 이러한 기술의 과정에서, 첨부된 도면들이 참조될 것이며, 이들은 반드시 스케일대로 도시되지 않았다.
도 1은 본 시스템의 일 실시예에 따른 컴퓨팅 장치의 진단 시스템의 블록도.
도 2는 다양한 실시예들에 사용하기 적합한, 도 1의 시스템 정보 서버와 같은 컴퓨터의 개략도.
도 3은 일반적으로 예를 들면 도 1의 시스템 정보 서버에 의해 실행될 수 있는 시스템 진단 모듈들에 의해 실행되는 다양한 단계를 도시하는 흐름도.
도 4 내지 도 9는 다양한 실시예들에 따른 시스템의 예시적인 스크린 디스플레이들을 도시하는 도면들.
도 2는 다양한 실시예들에 사용하기 적합한, 도 1의 시스템 정보 서버와 같은 컴퓨터의 개략도.
도 3은 일반적으로 예를 들면 도 1의 시스템 정보 서버에 의해 실행될 수 있는 시스템 진단 모듈들에 의해 실행되는 다양한 단계를 도시하는 흐름도.
도 4 내지 도 9는 다양한 실시예들에 따른 시스템의 예시적인 스크린 디스플레이들을 도시하는 도면들.
이제, 다양한 실시예들이 첨부된 도면들을 참조하여 이후 더욱 상세하게 기술될 것이다. 본 발명은 많은 상이한 형태들로 구현될 수 있다는 것을 이해해야하며, 여기에서 설명되는 실시예들로 제한되는 것으로 해석되어서는 안 된다. 오히려, 이러한 실시예들이 제공됨으로써, 본 개시가 철저하고 완전하게 될 것이며, 본 발명의 범위를 당업자에게 완전하게 전달할 것이다. 전반에 걸쳐, 동일한 번호들은 동일한 요소들을 참조한다.
개요
다양한 실시예들에서, 컴퓨팅 장치들(예를 들면, 데스크-탑 컴퓨터나, 태블릿 컴퓨터, 스마트폰과 같은 모바일 컴퓨팅 장치, 등)에 대한 성능 및 시스템 정보를 수집, 추적 및 저장하기 위한 시스템 및 방법은 하나 이상의 컴퓨팅 장치들(예를 들면, 하나 이상의 유사한 컴퓨팅 장치들), 특히 모바일 컴퓨팅 장치들에 대한 시스템 및 성능 정보를 저장한다. 다양한 실시예들에서, 컴퓨팅 장치의 성능 정보는 예를 들면 컴퓨터 장치에 대한 배터리 사용, 프로세서 자원 사용, 등과 같은 임의의 적합한 성능 정보를 포함한다. 컴퓨팅 장치 시스템 정보는 임의의 적합한 시스템 정보(예를 들면, 이벤트 정보)를 포함할 수 있으며, 이들은 예를 들면: (1) 신호 레벨의 변화(예를 들면, 무선 네트워크와의 연결에서의 신호 세기의 변화); (2) 새로 설치된 소프트웨어에 대한 정보; (3) 컴퓨팅 장치에 접속되거나 또는 그로부터 분리된 주변 장치들(예를 들면, 상기 컴퓨팅 장치와 연관된 USB, 파이어와이어(FireWire) 또는 다른 적합한 포트를 통한 프린터, 스캐너, 스마트폰 등)의 로그(log); (4) 상기 컴퓨팅 장치가 어떤 컴퓨터 네트워크에 대해 접속 및/또는 분리되는지에 관한 정보; (5) 상기 컴퓨팅 장치를 통해 방문되는 임의의 웹 사이트 등이다.
다양한 실시예들에서, 상기 시스템은 실질적으로 규칙적인 간격들(예를 들면, 매일, 매주, 매시간, 또는 어떠한 다른 적합한 간격)로 이러한 정보를 수집하고 저장한다. 다른 실시예들에서, 상기 시스템은 이벤트가 발생함에 따라 실질적으로 자동으로 데이터를 수집하도록 구성된다. 예를 들면, 스마트폰의 경우, 상기 시스템은 상기 스마트폰에 새로운 소프트웨어 애플리케이션을 설치하는 것과 관련된 시스템 이벤트에 대한 정보를 수집할 수 있다. 이 예에서 상기 시스템 이벤트 데이터는 예를 들면, 소프트웨어 애플리케이션의 발행인, 소프트웨어 애플리케이션의 버전 또는 소프트웨어 애플리케이션과 관련된 임의의 다른 정보를 포함할 수 있다. 다양한 실시예들에서, 상기 수집된 정보는 컴퓨팅 장치의 성능 및 시스템 정보의 종적 뷰(longitudinal view)를 제공하는데 사용될 수 있다(예를 들면, 시간에 걸친 상기 성능 및 시스템 정보의 스냅샷 또는 다른 묘사).
특정 실시예들에서, 상기 시스템은 상기 수집된 정보를 저장하여 예를 들면, 이후의 검색을 위해 클라우드 저장 서버 또는 다른 서버로 전송하도록 구성된다. 상기 시스템은 상기 장치가 아이들 상태(idle)이거나 충전 상태라는 결정에 응답하는 것과 같이 미리 결정된 이벤트에 응답하여 실질적으로 규칙적인 간격으로, 또는 임의의 다른 적합한 시간에 상기 정보를 전송하도록 구성될 수 있다.
다양한 실시예들에서, 상기 시스템은 특정한 컴퓨팅 장치에서의 성능 문제를 해결하는 사용자에게 상기 정보를 제공하도록 구성된다. 특정 실시예들에서, 상기 시스템은 문제가 처리되는 특정 컴퓨팅 장치에 대해서만 상기 정보를 제공한다. 다른 실시예들에서, 상기 시스템은 문제가 처리되는 컴퓨팅 장치에 대한 상기 정보와 문제가 있는 상기 컴퓨팅 장치와 유사한 컴퓨팅 장치들과 연관된 정보(예를 들면, 종합한 정보)를 제공하도록 구성된다. 이러한 유사한 컴퓨팅 장치들은, 예를 들면: (1) 유사한 장치 제조사 및 모델; (2) (예를 들면, 유사한 프로세서, 유사한 RAM의 양 등과 같은) 유사한 하드웨어 구성을 갖는 장치; (3) 유사한 유형의 컴퓨팅 장치(예를 들면, 다른 태블릿 컴퓨터, 기타 스마트폰, 등); (4) 유사한 지리적 영역에 위치된 컴퓨팅 장치; (5) 유사한 소프트웨어를 실행하는 컴퓨팅 장치; (6) 유사하거나 동일한 네트워크를 통해 연결된 컴퓨팅 장치(예를 들면, 특정 로컬 영역 네트워크, 셀룰러 폰 네트워크, 등); (7) 유사하게 연결된 주변 장치를 갖는 컴퓨팅 장치; (8) 유사한 운영 시스템을 실행하는 컴퓨팅 장치; 및/또는 (9) 또는 임의의 다른 적합한 유사한 컴퓨팅 장치를 포함할 수 있다. 다양한 실시예들에서, 유사한 다른 장치들(예를 들면, 유사한 장치들의 평균 성능)에 대해 장치 성능을 비교하는 것은 상기 시스템이 유사한 장치들의 실제 성능에 대비한 특정 장치의 상대적 성능을 제공할 수 있게 한다(예를 들면, 이러한 것은 미리 결정된 기준치의 성능 메트릭에 대한 비교와는 대조적이다).
다양한 실시예들에서, 상기 시스템은 기술자가 상기 정보(예를 들면, 성능 정보 및/또는 시스템 정보)에 적어도 부분적으로 기초하여 컴퓨팅 장치를 진단하거나 또는 문제를 처리할 수 있게 하도록 구성된다. 예를 들어, 상기 시스템은 과거(historical) 컴퓨팅 장치 성능 정보는 물론, 어떤 이벤트들(예를 들면, 특정 소프트웨어의 설치, 등)이 장치 성능의 감소를 일으키는지를 기술자 또는 다른 사용자가 결정할 수 있게 하는데 사용될 수 있는 시스템 정보를 디스플레이할 수 있다. 다른 실시예들에서, 상기 시스템은 상기 성능 및 시스템 정보에 적어도 부분적으로 기초하여 상기 컴퓨팅 장치를 실질적으로 자동으로 진단하거나 문제를 처리하도록 구성된다. 다양한 실시예들에서, 상기 정보는, 상기 컴퓨팅 장치가 악성 소프트웨어(예를 들면, 바이러스, 스파이웨어, 애드웨어, 등)에 의해 감염되는지, 상기 컴퓨팅 장치가 조각모음처리(defragment)될 필요가 있는지, 상기 컴퓨팅 장치가 열적 피로를 겪고 있는지, 또는 상기 컴퓨팅 장치의 프로세서 또는 배터리가 다른 적합한 하드웨어 장애를 겪고 있는지를 드러낼 수 있다. 다양한 실시예들에서, 상기 시스템은 상기 정보에 기초하여 진단된 어떠한 문제도 실질적으로 자동으로 수정하도록 구성된다.
예시적인 기술 플랫폼
관련 분야의 숙련자에 의해 이해될 바와 같이, 본 발명은, 예를 들면, 컴퓨터 시스템, 방법 또는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 따라서, 다양한 실시예들은 완전한 하드웨어 실시예, 완전한 소프트웨어 실시예, 또는 소프트웨어와 하드웨어 양면들을 조합한 실시예의 형태를 취할 수 있다. 또한, 특정 실시 예들은 저장 매체에 구현된 컴퓨터-판독가능 명령들(예를 들면, 소프트웨어)을 갖는 컴퓨터 판독가능한 저장 매체 상에 저장된 컴퓨터 프로그램 제품의 형태를 취할 수 있다. 다양한 실시예들은 웹 실행 컴퓨터 소프트웨어의 형태를 취할 수 있다. 임의의 적합한 컴퓨터 판독가능 저장 매체는 예를 들면, 하드 디스크, 콤팩트 디스크, DVD, 광 저장 장치, 및/또는 자기 저장 장치를 포함하여 활용될 수 있다.
다양한 실시예들이 방법, 장치(예를 들면, 시스템), 및 컴퓨터 프로그램 제품의 블록도 및 흐름도의 도면을 참조하여 하기에 기술된다. 블록도 및 흐름도 도면의 각각의 블록과, 블록도 및 흐름도 도면의 조합은 각각 컴퓨터 프로그램 명령을 실행하는 컴퓨터에 의해 실행될 수 있다는 것을 이해해야 한다. 이러한 컴퓨터 프로그램 명령들이 범용 컴퓨터, 특수용 컴퓨터 또는 다른 프로그램 가능한 데이터 프로세싱 장치상에 로딩되어, 상기 컴퓨터 또는 다른 프로그램 가능한 데이터 프로세싱 장치상에서 실행되는 명령들이 상기 흐름도 블록 또는 블록들에서 명시된 기능들을 실행하기 위한 수단들을 발생하는 머신을 생성한다.
이들 컴퓨터 프로그램 명령들은 또한 컴퓨터 또는 다른 프로그램가능한 데이터 프로세싱 장치가 특정한 방식으로 기능할 수 있도록 컴퓨터 판독가능한 메모리에 저장될 수 있어, 상기 컴퓨터 판독가능한 메모리에 저장된 명령들이 상기 흐름도 블록 또는 블록들에 명시된 기능을 수행하도록 구성된 제조 품목을 생성한다. 상기 컴퓨터 프로그램 명령들은 또한 일련의 동작 단계들이 컴퓨터 또는 다른 프로그램가능한 장치에서 실행되도록 컴퓨터 또는 다른 프로그램가능한 데이터 프로세싱 장치에 저장될 수 있어, 상기 컴퓨터 또는 다른 프로그램가능한 장치에서 실행하는 명령들이 상기 흐름도 블록 또는 블록들에 명시된 기능을 수행하는 단계들을 제공하도록 컴퓨터 실행 프로세스를 생성한다.
따라서, 블록도 및 흐름도의 블록들은 명시된 기능들을 수행하는 메카니즘의 조합, 명시된 기능들을 수행하기 위한 단계들의 조합, 명시된 기능들을 수행하기 위한 프로그램 명령들을 지원한다. 블록도 및 흐름도의 각각의 블록과 블록도 및 흐름도의 블록들의 조합들은, 명시된 기능들이나 단계들을 수행하는 특정 목적의 하드웨어 기반 컴퓨터 시스템들, 또는 특정 목적의 하드웨어와 적합한 컴퓨터 명령들을 실행하는 다른 하드웨어의 조합에 의해 실행될 수 있다.
구조의 시스템 예
도 1은 특정 실시예에 따른 시스템(110)의 블록도이다. 이 도면으로부터 알 수 있는 바와 같이, 시스템(110)은 하나 이상의 컴퓨터 네트워크(115), 시스템 정보 서버(100), 데이터베이스(140), 및 (예를 들면, 스마트폰, 태블릿 컴퓨터, 웨어러블 컴퓨터 장치, 랩탑 컴퓨터 등과 같은) 모바일 컴퓨팅 장치(156) 또는 데스크 탑 컴퓨터(154)를 포함한다. 특정 실시예들에서, 하나 이상의 컴퓨터 네트워크들은 시스템 정보 서버(100)와 데이터베이스(140)와 하나 이상의 원격 컴퓨팅 장치들(152, 154) 간의 통신을 용이하게 한다.
하나 이상의 컴퓨터 네트워크들(115)은 인터넷, 개인 인트라넷, 메시 네트워크, 공중 교환 전화망(PSTN) 또는 임의의 다른 유형의 네트워크(예를 들면, 컴퓨터들 사이의 통신을 용이하게 하는 블루투스(Bluetooth) 또는 근거리 무선 통신을 사용하는 네트워크)와 같은 임의의 다양한 유형의 유무선 컴퓨터 네트워크들을 포함한다. 시스템 정보 서버(100)와 데이터베이스(140) 간의 통신 링크는 예를 들면, 근거리 통신망(LAN)을 통해 또는 인터넷을 통해 구현될 수 있다.
도 2는 예를 들면, 클라이언트 컴퓨터(실례로, 도 1에 도시된 클라이언트 컴퓨터들(152, 154) 중 하나)로서 또는 서버 컴퓨터(실례로, 도 1에 도시된 시스템 정보 서버(100))로서 시스템(110) 내에서 사용될 수 있는 컴퓨터 아키텍쳐(120)의 개략적 표현을 도시한다. 특정 실시예들에서, 컴퓨터(120)는 컴퓨팅 장치들에 대한 성능 및 시스템 정보를 수집, 추적 및 저장하기 위해 구성되는 시스템(110)의 컨텍스트 내의 컴퓨터로 사용하기에 적합할 수 있다.
특정 실시예들에서, 컴퓨터(120)는 LAN, 인트라넷, 익스트라 넷, 및/또는 인터넷에 있는 다른 컴퓨터들에 연결(예를 들면, 네트워킹)될 수 있다. 상술한 바와 같이, 컴퓨터(120)는 클라이언트-서버 네트워크 환경에서 서버 또는 클라이언트 컴퓨터의 역할로서, 또는 피어-투-피어(또는 분산된) 네트워크 환경에서 피어 컴퓨터(peer computer)로서 동작할 수 있다. 컴퓨터(120)는 데스크탑 퍼스널 컴퓨터(PC), 태블릿 PC, 셋-탑 박스(STB), 개인 휴대 정보 단말기(PDA), 셀룰러 전화기, 웹 어플라이언스, 서버, 네트워크 라우터, 스위치 또는 브리지, 또는 해당 컴퓨터에 의해 취해질 동작들을 명시하는 명령들의 세트를 (순차적으로 또는 그와 다르게) 실행할 수 있는 임의의 다른 컴퓨터가 될 수 있다. 또한, 단일 컴퓨터가 예시되고 있지만, 용어 "컴퓨터"는 여기에서 설명되는 어떠한 하나 이상의 방법들을 수행하기 위해 명령들의 세트(또는 복수의 세트들)를 개별적으로 또는 공동으로 실행하는 컴퓨터들의 임의의 조합들을 포함하도록 취해질 수 있다.
예시적인 컴퓨터(120)는 프로세싱 장치(202), 메인 메모리(204)(예를 들면, 판독 전용 메모리(ROM), 플래시 메모리, 동기식 DRAM(SDRAM) 또는 램버스 DRAM (RDRAM)과 같은 동적 랜덤 액세스 메모리(DRAM), 등), 정적 메모리(206)(예를 들면, 플래시 메모리, 정적 램(SRAM), 등), 및 데이터 저장 장치(218)를 포함하며, 이들은 버스(232)를 통해 서로 통신한다.
프로세싱 장치(202)는 마이크로 프로세서, 중앙 처리 유닛 등과 같은 하나 이상의 범용 프로세싱 장치들을 나타낸다. 특히, 프로세싱 장치(202)는 복합 명령 셋 컴퓨팅(CISC) 마이크로프로세서, 감소된 명령 셋 컴퓨팅(RISC) 마이크로 프로세서, VLIW(very long instruction word) 마이크로프로세서, 또는 다른 명령 세트들을 실행하는 프로세서, 또는 명령 세트들의 조합을 실행하는 프로세서들이 될 수 있다. 프로세싱 장치(202)는 또한 주문형 집적 회로(ASIC), 필드 프로그래머블 게이트 어레이(FPGA), 디지털 신호 프로세서(DSP), 네트워크 프로세서 등과 같은 하나 이상의 특수 목적의 프로세싱 장치일 수 있다. 프로세싱 장치(202)는 여기에서 설명되는 다양한 동작들과 단계들을 수행하기 위한 프로세싱 로직(226)을 실행하도록 구성될 수 있다.
컴퓨터(120)는 또한 네트워크 인터페이스 장치(208)를 포함할 수 있다. 컴퓨터(120)는 또한 비디오 디스플레이 유닛(210)(예를 들면, 액정 디스플레이(LCD) 또는 음극선관(CRT)), 영숫자 입력 장치(212) (예를 들면, 키보드), 커서 제어 장치(214)(예를 들면, 마우스), 및 신호 발생 장치(216)(예를 들면, 스피커)를 포함할 수 있다.
데이터 저장 장치(218)는 비-일시적인 컴퓨터-액세스 가능한 저장 매체(230)(또한, 비-일시적 컴퓨터 판독가능 저장 매체 또는 비-일시적 컴퓨터 판독 가능 매체라고 함)를 포함할 수 있으며, 상기 매체에는 여기에서 기술되는 임의의 하나 이상의 방법들 및 기능들을 구현하는 하나 이상의 명령들의 세트(예를 들면, 소프트웨어(222))가 저장된다. 소프트웨어(222)는 또한 컴퓨터(120)에 의한 실행 동안에 메인 메모리(204) 내에 또는 프로세싱 장치(202) 내에 완전히 또는 적어도 부분적으로 상주(reside)할 수 있다. 상기 메인 메모리(204) 및 상기 프로세싱 장치(202)는 또한 컴퓨터-액세스 가능한 저장 매체를 구성한다. 소프트웨어(222)는 또한 네트워크 인터페이스 장치(208)를 통해 네트워크(115) 상에서 송신 또는 수신될 수 있다.
컴퓨터-액세스 가능한 저장 매체(230)가 단일 매체로서 예시적인 실시예에 도시되어 있지만, 용어 "컴퓨터-액세스 가능한 저장 매체"는 하나 이상의 명령들의 세트들을 저장하는 단일 매체 또는 다중 매체(예를 들면, 중앙 집중된 또는 분산된 데이터베이스를 및/또는 연관된 캐시들 및 서버들)를 포함하는 것으로 이해되어야한다. 용어 "컴퓨터-액세스 가능한 저장 매체"는 또한 컴퓨터에 의한 실행을 위한 명령들의 세트를 저장, 인코딩 또는 전달할 수 있고, 상기 컴퓨터로 하여금 본 발명의 임의의 하나 이상의 방법들을 수행할 수 있도록 하는 임의의 매체를 포함하는 것으로 이해되어야한다. 용어 "컴퓨터-액세스 가능한 저장 매체"는 이에 따라서 고체 메모리, 광학 및 자기 매체 등을 포함하는 것으로 이해되어야 하며, 또한 이들에 제한되는 것도 아니다.
예시적인 시스템 플랫폼
컴퓨팅 장치들에 대한 성능 및 시스템 정보를 수집, 추적 및 저장하기 위한 시스템 및 방법의 다양한 실시예들은 임의의 적합한 시스템 정보 서비스 내에서 실행될 수 있다. 특정 실시예들에서, 시스템은 예를 들면 컴퓨팅 장치가 제대로 기능하는 것을 보장하거나 그렇지 않다면 교체를 요구할 수 있도록 컴퓨팅 장치를 보험에 들기 위한 서비스와 같은 보험 서비스의 일부로서 실행될 수 있다. 특정 실시예들에서, (예를 들면, 고객들이 보험 서비스를 통해 효력이 발생되는 컴퓨팅 장치에 사용하기 위해) 시스템은 상기 보험 서비스의 고객들에게 컴퓨팅 장치들의 보험을 허락한 보험업자에 의해 제공될 수 있다. 시스템의 기능의 다양한 양태들이, 예를 들면, 모바일 컴퓨팅 장치(예를 들면, 셀룰러 폰이나 태블릿 컴퓨터) 또는 다른 컴퓨팅 장치에서 동작하는 소프트웨어 애플리케이션에 의해 수행될 수 있는 시스템 진단 모듈(300)을 포함하는 특정 시스템 모듈들에 의해 실행될 수 있다. 이러한 모듈은 하기에 더욱 상세히 설명된다.
시스템 진단 모듈
도 3은 예시적인 시스템 진단 모듈(300)에 의해 수행되는 동작들의 흐름도이다. 특정 실시예들에서, 시스템 진단 모듈(300)은 적어도 하나의 컴퓨팅 장치의 성능 및 시스템 정보를 수집, 추적 및 저장하기 용이하게 하며, 컴퓨팅 장치의 성능 문제를 진단할 목적으로 및/또는 장치의 과거 성능 또는 유사한 다른 장치들의 성능에 대비한 장치의 현재 성능을 모니터링할 목적으로 해당 정보를 기술자 또는 다른 사용자에게 제공할 수 있다. 다양한 실시예들에서, 시스템 진단 모듈(300)은 컴퓨팅 장치(예를 들면, 모바일 컴퓨팅 장치)에 국부적으로 저장된 소프트웨어 애플리케이션의 일부로서 실행된다.
시스템 진단 모듈(300)을 실행할 때, 시스템은 제 1 컴퓨팅 장치에 대한 제 1 시스템 이벤트 데이터를 수신함으로써 단계(310)에서 시작한다. 특정 실시예들에서, 시스템 이벤트 데이터는 예를 들면, 하나 이상의 이벤트가 발생된 시간(예를 들면, 날짜 및 시간)과 연관될 수 있는 하나 이상의 시스템 이벤트들을 포함할 수 있다. 통상적인 예에서, 시스템 이벤트 데이터는 제 1 시간에 발생한 제 1 이벤트, 제 2 시간에 발생한 제 2 이벤트, 등등에 관한 타임 스탬프 데이터를 포함할 수 있다. 다양한 실시예들에서, 하나 이상의 이벤트들 (예를 들면, 이벤트의 종류 등에 의해) 적어도 일정부분 관련될 수도 있다. 특정 실시예에서, 시스템 이벤트 데이터는 실질적으로 실시간으로 시간에 걸쳐 덧붙여진 시스템 이벤트의 로그를 포함할 수 있다.
다양한 실시예들에서, 시스템 이벤트 데이터는 제 1 컴퓨팅 장치와 하나 이상의 네트워크들(예를 들면, 무선 근거리 통신망, 셀룰러 전화망 등) 사이의 접속 동안 신호 레벨의 변화를 포함한다. 시스템 이벤트는, 예를 들면, 제 1 컴퓨팅 장치(예를 들면, 스마트폰)와 특정 셀룰러 전화망(예를 들면, Verizon®, AT&T®, Sprint®, 등) 사이의 접속 동안 두 개의 바들(bars)로부터 세 개의 바들로 신호 레벨의 변화를 포함할 수 있다. 다른 실시예들에서, 시스템 이벤트 데이터는 제 1 컴퓨팅 장치와 하나 이상의 네트워크 사이에 신호 세기에서의 임의의 다른 적합한 변화를 포함할 수 있다(예를 들면, 약한 신호로부터 강한 신호로의 변화, 등).
다른 실시예들에서, 시스템 이벤트 데이터는 특정 네트워크(예를 들면, 무선 네트워크)로의 연결 또는 그로부터의 분리를 포함한다. 예를 들면, 제 1 컴퓨팅 장치가 스마트폰인 경우, 시스템은 제 1 컴퓨팅 장치가 새로운 무선 근거리 통신망에 접속하는 시각에 연관된 정보를 포함하는 시스템 이벤트 데이터를 수신할 수 있다. 특정 네트워크와의 연결 및/또는 분리와 연관된 시스템 이벤트 데이터는 예를 들면: (1)네트워크의 보안 특징(예를 들면, 네트워크가 WEP, WPA WPA2 등과 같은 무선 보안 프로토콜이 있는지의 여부); (2)제 1 컴퓨팅 장치 전에 네트워크에 연결되었는지의 여부(예를 들면, 네트워크가 친숙한 네트워크인지의 여부); (3) 제 1 컴퓨팅 장치와 네트워크 사이의 신호 세기; (4) 네트워크에 대한 제 1 컴퓨팅 장치의 연결과 연관된 임의의 다른 적합한 정보와 같은 정보를 또한 포함할 수 있다.
다양한 실시예들에서, 시스템 이벤트 데이터는 컴퓨팅 장치의 다양한 특징들의 활성화 및 불활성화에 대한 데이터를 포함할 수 있다. 특정 실시예들에서, 이것은 예를 들면 제 1 컴퓨팅 장치에 대해 비행 모드를 켜거나 끄기, 제 1 컴퓨팅 장치에 대해 블루투스를 켜거나 끄기, 제 1 컴퓨팅 장치에 대해 GPS(예를 들면, 위치 기반 서비스)를 켜거나 끄기, 등을 포함할 수 있다.
특정 실시예들에서, 시스템 이벤트 데이터는 제 1 컴퓨팅 장치에 새롭게 설치된 소프트웨어와 연관된 데이터를 포함할 수 있다. 예를 들면, 시스템은 새로운 소프트웨어 애플리케이션이 제 1 컴퓨팅 장치에 설치된 날짜 및 시간을 포함하는 시스템 이벤트 데이터를 수신할 수 있다. 다양한 실시예들에서, 이러한 경우의 시스템 이벤트 데이터는 상기 소프트웨어 애플리케이션의 파일 크기, 소프트웨어 애플리케이션의 출판사, 소프트웨어 애플리케이션이 설치되는 소스(예를 들면, 소프트웨어가 다운로드된 웹사이트, 등)을 더 포함할 수 있다. 다른 실시예들에서, 시스템 이벤트 데이터는 상기 제 1 컴퓨팅 장치로부터 소프트웨어 제거에 대한 정보를 더 포함할 수 있다(예를 들면, 시스템 이벤트는 제 1 컴퓨팅 장치로부터 특정 소프트웨어 애플리케이션의 삭제를 포함할 수 있다).
특정 실시예들에서, 시스템 이벤트 데이터는 (예를 들면, USB, 파이어와이어, 무선 네트워크, 또는 제 1 컴퓨팅 장치가 주변 장치들과 통신하기 위해 포함하는 다른 적합한 메카니즘을 통해)제 1 컴퓨팅 장치에 접속된 또는 분리된 주변 장치들(예를 들면, 프린터, 스캐너, 외장형 하드 디스크, 광학 드라이브, 등)의 로그를 포함한다. 다양한 실시예들에서, 시스템 이벤트 데이터는 주변 장치들이 연결된 및/또는 분리된 시간, 주변 장치들과 관련하여 제 1 컴퓨팅 장치에 설치된 다른 소프트웨어 또는 임의의 디바이스 드라이버와 연관된 정보, 또는 주변 장치에 관한 임의의 다른 적합한 정보(예를 들면, 장치 유형, 모델 번호, 제조자, 등)를 포함한다. 예를 들면, 시스템은 새로운 프린터의 설치에 응답하여 적어도 부분적으로 컴퓨팅 장치에 설치된 새로운 프린터에 연관된 정보를 저장할 수 있다. 새로운 프린터에 연관된 정보는, 예를 들면, 프린터가 컴퓨팅 장치에 접속될 수 있게 하는 컴퓨팅 장치상의 포트, 컴퓨팅 장치를 프린터와 통신할 수 있도록 설치된 드라이버 정보, 프린터에 사용하기 위해 컴퓨팅 장치에 설치된 소프트웨어를 포함할 수 있다.
다양한 실시예들에서, 시스템 이벤트 데이터는 예를 들면, 다양한 웹 페이지들이 액세스된 시간을 포함할 수 있는, 제 1 컴퓨팅 장치에 의해 액세스된 임의의 웹 페이지들의 로그를 포함한다(예를 들면, 제 1 컴퓨팅 장치의 검색 내역). 다른 실시예들에서, 시스템 이벤트 데이터는 예를 들면, 쿠키 데이터(실례로, 특정 쿠키가 생성된 시간과 쿠키의 내용), 캐시, 또는 다른 적합한 데이터와 같은 웹-브라우징에 관한 다른 데이터를 포함할 수 있다.
특정 실시예들에서, 제 1 컴퓨팅 장치는 (예를 들면, 스마트폰, 랩탑, 태블릿 컴퓨터, 등과 같은) 모바일 컴퓨팅 장치이다. 다른 실시예들에서, 상기 제 1 컴퓨팅 장치는 데스크탑 컴퓨터이다. 특정 실시예들에서, 시스템은 (예를 들면, 시스템 이벤트들이 발생함에 따라) 시스템 이벤트 데이터를 로그 및/또는 저장하도록 구성된 제 1 컴퓨팅 장치상의 애플리케이션을 통해 시스템 이벤트 데이터를 수신하도록 구성된다. 특정 실시예들에서, 상기 시스템을 이벤트가 발생할 때 실질적으로 자동으로 시스템 이벤트 데이터를 수신하도록 구성된다. 예를 들면, 시스템은 스마트폰과 헤드셋의 페어링(pairing)에 응답하여 핸즈프리 블루투스 헤드셋과 연관된 정보를 저장할 수 있다. 이러한 경우에 시스템 이벤트 데이터는 예를 들면 블루투스 헤드셋의 제조업체 및 모델, 페어링이 발생한 시간, 블루투스 헤드셋의 배터리 수명, 또는 블루투스 헤드셋 또는 그 페이링에 관한 임의의 다른 적합한 정보를 포함 할 수 있다.
다양한 실시예들에서, 시스템은 (예를 들면, 제 1 컴퓨팅 장치에) 시스템 이벤트 데이터를 국부적으로 저장하도록 구성된다. 예를 들면, 제 1 컴퓨팅 장치에 저장된 소프트웨어 애플리케이션은 적어도 일시적 시스템 이벤트 데이터를 저장할 수 있다. 다른 실시예들에서, 시스템은 예를 들면, 시스템 이벤트 데이터를 국부적으로 저장하고, 시스템 이벤트 데이터를 예를 들면 클라우드 저장 서버 또는 다른 서버 또는 이후 검색을 위한 다른 적합한 원격 저장 위치로 전송하도록 구성된다. 특정 실시예들에서, 상기 시스템은 실질적으로 규칙적인 간격(예를 들면, 매일, 하루에 두 번, 6 시간마다, 또는 임의의 다른 적합한 시간 간격)에서 시스템 이벤트 데이터를 전송하도록 구성된다. 다른 실시예들에서, 상기 시스템은, 제 1 컴퓨팅 장치가 외부 전원에 연결된 것(예를 들면, 제 1 컴퓨팅 장치가 플러그 인(plug in)되어, 스마트폰인 제 1 컴퓨팅 장치의 경우에 충전되는 것)의 결정에 응답하는 것과 같이, 미리 결정된 이벤트들에 응답하여 시스템 이벤트 데이터를 전송하도록 구성된다. 또 다른 실시예들에서, 시스템은 제 1 컴퓨팅 장치가 (예를 들면, 무선 근거리 통신망, 특정의 무선 근거리 통신망, 셀룰러 전화망, 등을 통해) 네트워크에 연결된 것의 결정에 응답하여 시스템 이벤트 데이터를 전송하도록 구성된다. 특정 실시예에서, 시스템은 (예를 들면, 3g, 4g, 등을 통한 셀룰러 전화망과는 대조적으로) 1 컴퓨팅 장치가 외부 전원에 연결되어 무선 근거리 통신망을 통해 인터넷에 접속된 것의 결정에 응답하여 시스템 이벤트 데이터를 전송하도록 구성된다.
단계(320)로 돌아가서, 시스템은 제 1 컴퓨팅 장치에 대한 제 1 성능 데이터를 수신함으로써 계속된다. 다양한 실시예들에서, 제 1 성능 데이터는 배터리 사용상태(예를 들면, 배출 속도, 충전 레벨 등), 프로세서 자원 사용상태, 클럭 속도, 초당 밀리언 플로팅-포인트 오퍼레이션(MFLOPS), 저장 사용상태(storage usage), 데이터 사용상태(예를 들면, 모바일 데이터양 대 Wi-Fi 데이터 사용상태), 제 1 컴퓨팅 장치의 성능과 관련된 임의의 다른 적합한 성능 메트릭 또는 벤치마크를 포함한다. 다양한 실시예들에서, 상기 제 1 성능 데이터는 단계(310)에서 수신된 특정 시스템 이벤트 데이터 포인트와 실질적으로 동일한 시간에 수신된다(예를 들면, 그와 연관된다). 예를 들면, 제 1 컴퓨팅 장치가 네트워크 밖에 있다는 것을 시스템 이벤트 데이터가 나타내는 동안(예를 들면, 현재는 무선 네트워크에 접속되어 있지 않지만, 활발히 네트워크를 찾고 있고, 실례로 제 1 컴퓨팅 장치의 이용가능한 배터리 수명을 더 사용하는 동안), 배터리 사용상태는 시스템 성능 데이터로서 수신될 수 있다. 특정 실시예들에서, 시스템 성능 데이터는 특정한 양의 시간에 걸친 평균 성능을 포함할 수 있다(예를 들면, 하루 동안의 평균 프로세서 사용상태, 특정 레벨로 배출하는 배터리의 평균 시간, 등). 특정 실시예들에서, 시스템은 상기 장치의 타임 스탬프 성능 기록의 로그를 생성하기 위해 상기 성능 정보를 사용하도록 구성된다.
다양한 실시예들에서, 시스템은 상기 제 1 성능 데이터에 적어도 부분적으로 기초하여 성능 메트릭을 규정하도록 구성된다. 예를 들면, 성능 메트릭은, 예를 들면, 바로 앞서 기술한 성능 데이터의 유형들과 같은 둘 이상의 성능 데이터 포인트들의 조합에 적어도 부분적으로 기초할 수 있다. 예를 들면, 특정의 성능 메트릭은 배터리 사용상태 및 프로세서 사용상태의 양쪽 모두에 적어도 부분적으로 기초할 수 있다. 다양한 실시예들에서, 시스템은 임의의 다른 적합한 요소들에 기초하여 성능 메트릭을 규정하도록 구성될 수 있다.
이제, 시스템은 단계(330)에서, 상기 제 1 컴퓨팅 장치와 프로파일을 공유하는 하나 이상의 제 2 컴퓨팅 장치들에 대한 제 2 시스템 이벤트 데이터 및 제 2 성능 데이터를 수신한다. 다양한 실시예들에서, 제 2 시스템 이벤트 데이터는 예를 들면, 제 1 컴퓨팅 장치와 관련하여 (실례로, 단계(310)에서) 상술한 임의의 제 1 시스템 이벤트 데이터와 같은, 하나 이상의 제 2 컴퓨팅 장치와 연관된 임의의 적합한 시스템 이벤트 데이터가 될 있다. 특정 실시예들에서, 예를 들면, 제 1 컴퓨팅 장치와 관련하여 (실례로, 단계(320)에서) 상술한 임의의 제 1 성능 데이터의 유형들과 같은, 하나 이상의 제 2 컴퓨팅 장치와 연관된 임의의 적합한 성능 데이터가 될 있다.
다양한 실시예들에서, 제 1 컴퓨팅 장치와 적어도 하나의 프로파일을 공유하는 하나 이상의 제 2 컴퓨팅 장치는 제 1 컴퓨팅 장치와 공통적으로 하나 이상의 특징들을 갖는 컴퓨팅 장치들이다(예를 들면, 동일한 유형의 장치이고, 동일한 모델의 장치이고, 상기 제 1 컴퓨팅 장치와 유사한 소프트웨어를 실행하고 및/또는 제 1 컴퓨팅 장치와 유사한 운영 시스템을 갖는, 등). 특정 실시예들에서, 시스템은, (실질적으로 자동으로 적합한 프로파일을 결정하고, 하나 이상의 특징들을 상기 프로파일들과 연관시키고, 하나 이상의 특징들을 갖는 임의의 컴퓨팅 장치들을 상기 연관된 프로파일들에 할당함으로써) 다양한 컴퓨팅 장치들의 하나 이상의 특징들에 적어도 부분적으로 기초하여 적어도 하나의 프로파일을 확립하도록 구성된다. 다양한 실시예들에서, 시스템은 제 1 컴퓨팅 장치의 하나 이상의 특징들에 적어도 부분적으로 기초하여 상기 적어도 하나의 프로파일을 확립하도록 구성된다. 다양한 실시예들에서, 시스템은 컴퓨팅 장치들이 특정 프로파일들과 연관된 하나 이상의 특징들을 갖는다는 것을 결정하는데 응답하여, 컴퓨팅 장치들(예를 들면, 하나 이상의 제 2 컴퓨팅 장치들)을 특정 프로파일들에 할당하도록 구성된다.
특정 실시예들에서, 상기 하나 이상의 특징들은 예를 들면, 제 1 컴퓨팅 장치의 특정 하드웨어 구성(예를 들면, 제 1 컴퓨팅 장치가 포함하는 특정의 프로세서, 제 1 컴퓨팅 장치가 갖는 RAM의 양, 등)을 포함한다. 특정 실시예들에서, 시스템이 다양한 컴퓨팅 장치들에 대한 프로파일을 할당할 수 있는 하나 이상의 특징은 컴퓨팅 장치의 유형을 포함한다. 예를 들면, 제 1 컴퓨팅 장치가 스마트폰인 경우 시스템은 스마트폰들의 프로파일을 확립할 수 있고, 제 1 컴퓨팅 장치가 태블릿 컴퓨터인 경우 시스템은 태블릿 컴퓨터들에 대한 프로파일을 확립할 수 있다. 특정 실시예들에서, 상기 하나 이상의 특징들은 상기 컴퓨팅 장치들에 저장된 특정 소프트웨어를 포함할 수 있다. 예를 들면, 시스템은 특정 소프트웨어를 실행하는 모든 컴퓨팅 장치들에 대한 프로파일을 생성할 수 있다. 다른 실시예들에서, 상기 하나 이상의 특징들은 컴퓨팅 장치의 운영 시스템(예를 들면, Windows, iOS, Android, 등)을 포함할 수 있다.
다양한 실시예들에서, 상기 하나 이상의 특징들은 상기 컴퓨팅 장치가 위치되는 특정 지리적 영역을 포함할 수 있다. 특정 지리적 영역은 상기 컴퓨팅 장치의 GPS 위치에 적어도 부분적으로 기초하거나 임의의 다른 적합한 기술을 사용하여 결정될 수 있다. 특정 실시예들에서, 컴퓨팅 장치의 지리적 영역은 제 1 컴퓨팅 장치가 접속된 네트워크를 포함할 수 있다(예를 들면, 특정 무선 근거리 네트워크, 특정 셀룰러 전화망에서 특정 셀룰러 타워로의 접속, 등). 컴퓨팅 장치가 특정 셀룰러 전화망에 있는 특정 셀룰러 타워에 접속될 때, 시스템은, 예를 들면, 동일한 특정 셀룰러 타워에 접속된 모든 컴퓨팅 장치들에 대한 프로파일을 확립할 수 있다.
다양한 실시예들에서, 상기 하나 이상의 특징들은 상기 컴퓨팅 장치에 접속된 특정의 주변 장치들(예를 들면, 프린터, 주변 장치의 특정 브랜드, 스캐너, 등)을 갖는 것을 포함할 수 있다. 이 시스템은, 예컨대, USB를 통해 접속된 특정 모델 프린터 모델을 갖는 컴퓨팅 장치들에 대한 프로파일을 확립할 수 있다.
특정 프로파일들은 또한 복수의 상이한 장치 특징들을 포함할 수 있다. 예를 들면, 프로파일은 특정 모델/유형이며, 적어도 소프트웨어 애플리케이션들의 특정 조합을 실행하는 특정 업체(예를 들면, 애플®, Samsung®, 등)에 의해 제작된 임의의 컴퓨팅 장치로서 규정될 수 있다.
특정 실시예들에서, 제 1 컴퓨팅 장치와 프로파일을 공유하는 하나 이상의 제 2 컴퓨팅 장치에 대한 제 2 시스템 이벤트 데이터 및 제 2 성능 데이터를 수신하기 전에, 시스템은 어떤 프로파일들이 제 1 컴퓨팅 장치와 연관되는지 및 상기 하나 이상의 제 2 컴퓨팅 장치들 중 어느 것들이 이들 프로파일들과 연관되는지를 결정하도록 구성된다. 다양한 실시예들에서, 시스템은 제 1 시스템 이벤트 데이터, 제 1 성능 데이터, 제 2 시스템 이벤트 데이터 및 제 2 성능 데이터를 포함하는 데이터베이스를 덧붙이도록 구성된다. 이 데이터베이스는, 예를 들면, 시스템의 일부인 임의의 컴퓨팅 장치들에 대한 모든 관련 데이터를 포함할 수 있다. 시스템은 그런 경우 특정 프로파일에 적합한 컴퓨팅 장치들과 연관된 데이터를 그 특정 프로파일에 할당할 수 있다(예를 들면, 또는 연관시킬 수 있다). 이때, 상기 시스템은 그 프로파일을 갖는 특정 장치에 대한 비교를 위해 상기 프로파일을 공유하는 장치들의 평균 성능을 결정하도록 종합된 프로파일 데이터를 사용할 수 있다.
예를 들면, 시스템이 백 개의 스마트폰들로부터 시스템 이벤트 및 성능 데이터를 수신한다면, 시스템은 상기 백 개의 스마트폰들의 각각에 대한 데이터를 저장할 수 있을 것이다. 이들 백 개의 스마트폰들 중 열 개가 iPhone 5s라면, 시스템은 열 개의 iPhone 5s에 대한 데이터만을 포함하는 iPhone 5s에 대한 프로파일을 생성할 수 있다. 시스템은 이때, iPhone 5s의 평균 성능을 결정할 수 있으며, iPhone 5s 중 하나의 사용자에게 상기 사용자의 iPhone 5의 실제 성능과 함께 평균 성능을 디스플레이할 수 있다. 시스템은 또한 모든 스마트폰들을 포함하는 제 2 프로파일을 생성할 수 있다. 상기 iPhone 5 사용자의 성능을 제 2 프로파일에 비교할 때, 시스템은 상기 iPhone 5 사용자의 실제 성능과 함께 모든 100 개의 스마트폰들의 평균 성능을 디스플레이할 수 있다.
특정 실시예들에서, 각각의 특정 프로파일의 특징들은 시스템에 의해 실질적으로 자동으로 결정된다. 다른 실시예들에서, 특정의 특징들을 갖는 장치들(예를 들면, 사용자에 의해 제어되는 장치와 특정의 특징을 공유하는 장치들)에 대한 평균 성능을 확인하기 위한 사용자로부터의 요청에 적어도 부분적으로 기초하여 프로파일들이 확립된다. 다양한 실시예들에서, 상기 요청은 제 1 컴퓨팅 장치의 사용자로부터 올 수도 있다. 다른 실시예들에서, 상기 요청은 특정의 프로파일들을 갖는 컴퓨팅 장치들의 문제를 결정하기 위해 진단 서비스와 연관된 사람으로부터 올 수도 있다.
단계(340)로 돌아가서, 상기 시스템은 상기 하나 이상의 제 2 컴퓨팅 장치들(예를 들면, 특정 프로파일을 갖는 하나 이상의 제 2 컴퓨팅 장치들)에 대한 평균 시스템 성능을 결정함으로써 계속된다. 특정 실시예들에서, 시스템은 특정 프로파일 내에서 모든 장치들에 대한 평균 성능을 결정하도록 구성된다. 특정 실시예들에서, 상기 결정된 평균은 상술한 성능 메트릭들의 종합(aggregate)을 포함할 수 있다. 다른 실시예들에서, 상기 결정된 평균은 특정 프로파일을 공유하는 모든 컴퓨팅 장치들에 대한 성능 데이터의 특정 부분의 간단한 산술 평균이 될 수 있다. 다양한 실시 예들에서, 시스템은 특정 프로파일을 공유하는 모든 컴퓨팅 장치들에 대한 종합된 (예컨대, 평균) 성능을 결정하도록 구성된다.
시스템은 제 1 이벤트 데이터, 제 1 성능 데이터 및 제 2 성능 데이터의 평균을 사용자에게 디스플레이 함으로써(예를 들면, 제 1 컴퓨팅 장치의 디스플레이 스크린상에 상기 정보를 디스플레이함으로써), 단계(350)에서 계속된다. 다양한 실시예들에서, 상기 사용자는 제 1 컴퓨팅 장치의 사용자(예를 들면, 스마트폰의 소유자와 사용자)가 된다. 다른 실시예들에서, 상기 사용자는 제 1 컴퓨팅 장치와 성능 문제를 진단하는 기술자 또는 다른 사람이 된다. 특정 실시예들에서, 데이터를 디스플레이하는 것은 예를 들면, 그래프, 표 또는 다른 적합한 형태를 통해 상기 데이터를 사용자에게 디스플레이하는 것을 포함한다. 예를 들면, 특정 실시예들에서, 시스템은 iPhone 4의 소유자들에게 그들 장치의 평균 배터리 수명 및 다른 iPhone 4의 사용자들의 평균 배터리 수명을 디스플레이할 수 있다. 그때, 상기 사용자는, 예를 들면, 그들이 비교적 부족한 배터리 수명을 겪고 있는지를 판단하고, 상기 감소의 원인을 판단하고, 배터리 수명의 감소를 일으키는 어떠한 문제를 잠재적으로 수정하는 것과 같은, 어떠한 적절한 원인에 대한 데이터를 사용할 수 있다. 특정 실시예들에서, 상기 데이터는 사용자로 하여금 특정 컴퓨팅 장치가 결함 구성 요소들을 갖는지를 확인할 수 있게 한다(예를 들면, 하나 이상의 구성요소가 열 피로를 겪고 있을 수 있다). 그러한 실시예들에 있어서, 더 양호한 성능 데이터를 갖는 제 2 컴퓨팅 장치와 유사한 이벤트 데이터를 갖는 컴퓨팅 장치(예를 들면, 더 양호하게 실행하는 유사한 컴퓨팅 장치와 유사한 방식으로 사용되는 컴퓨팅 장치)는 하나 이상의 구성요소들의 교체를 요구할 수 있다.
다양한 실시예들에서, 시스템은 기술자 또는 제 1 컴퓨팅 장치의 사용자로 하여금 상기 데이터(예를 들면, 성능 정보 및/또는 시스템 정보)에 적어도 부분적으로 기초하여 상기 컴퓨팅 장치를 진단하거나 고장을 처리하게 할 수 있다. 예를 들면, 상기 시스템은, 기술자 또는 다른 사용자로 하여금 특정 이벤트들(예를 들면, 특정 소프트웨어의 설치, 등)이 성능의 저하를 지속시킬 수 있는지를 판단할 수 있게 하도록 과거 컴퓨팅 장치 성능 정보 및 일부 시스템 정보를 디스플레이할 수 있다.
자동적인 장치 진단
다양한 실시예들에서, 상기 시스템은 성능에 영향을 미칠 수 있는 컴퓨팅 장치에 의한 문제를 실질적으로 자동으로 결정하도록 구성된다. 특정 실시예들에서, 그들의 Samsung Galaxy S4의 배터리 수명의 저하를 겪고 있는 사용자에 대해, 상기 시스템은 상기 사용자에 의한 애플리케이션 사용상태를 다른 Galaxy S4 사용자들과 비교하여, 상기 사용자가 사용하고 있는 특정 소프트웨어 애플리케이션이 더 양호한 배터리 수명을 겪고 있는 다른 사용자들에 의해서는 사용되지 않는다는 것을 판단하게 할 수 있다. 상기 시스템은 그때, 예를 들면, 상기 사용자에게 상기 문제가 되는 애플리케이션을 삭제하도록 추천하거나 상기 사용자에게 상기 애플리케이션의 사용을 제한하도록 추천함으로써 상기 사용자에게 해결책을 제공하도록 구성될 수 있다.
예시적인 사용자 경험
특정 실시예들에서, 사용자는 그의 모바일 컴퓨팅 장치에(예를 들면, 스마트폰에) 소프트웨어 애플리케이션을 설치할 수 있다. 소프트웨어 애플리케이션이 실행되는 동안, 상기 애플리케이션은 상기 모바일 컴퓨팅 장치에 대한 타임 스탬프 시스템 이벤트 데이터(예를 들면, 본 명세서에서 설명된 시스템 이벤트 데이터 중 어떠한 것과도 같은 것) 및 시간 스탬프 시스템 성능 데이터를 로그(log)할 수 있다. 상기 데이터를 로깅하는(logging) 소프트웨어 애플리케이션은 실질적으로 상기 모바일 컴퓨팅 장치상의 백그라운드에서 실행될 수 있다(예를 들면, 상기 애플리케이션은 상기 애플리케이션이 상기 데이터를 로그하는 동안 상기 모바일 장치상에 어떠한 것도 디스플레이할 수 없거나, 그렇지 않으면 상기 애플리케이션이 상기 데이터를 로그하는 동안 사용자에게 통지할 수 없다). 사용자가 (예를 들면, 모바일 컴퓨팅 장치의 배터리를 충전하기 위해) 모바일 컴퓨팅 장치에 플러그-인할 때 및 상기 모바일 컴퓨팅 장치가 Wi-Fi에 접속되는 동안, 상기 시스템은 로깅된 타임 스탬프 데이터를 중앙 서버(예를 들면, 클라우드 저장 서버)에 전송할 수 있으며, 여기에서 상기 시스템은 복수의 컴퓨팅 장치들에 대한 유사한 데이터를 저장하도록 구성된다.
다양한 실시예들에서, 상기 시스템은 컴퓨팅 장치들에 대한 데이터(예를 들면, 상기 중앙 서버에 저장된 데이터)를 상기 컴퓨팅 장치들의 특징들에 기초한 하나 이상의 프로파일들과 연관시킬 수 있다. 상기 시스템은, 예를 들면, 스마트폰의 제조사와 모델에 대한 프로파일을 포함하는 프로파일을 사용자의 스마트폰에 할당할 수 있다. 그러면 시스템은 상기 프로파일의 모든 스마트폰들에 대한 데이터를 종합할 수 있으며, 상기 프로파일을 공유하는 장치들에 대한 평균 성능을 결정할 수 있다.
임의의 적합한 시간에, 사용자는 자신의 모바일 컴퓨팅 장치상의 소프트웨어 애플리케이션을 개방하여, 자신의 휴대 전화에 대한 성능 데이터와 사용자의 스마트폰과 프로파일을 공유하는 다른 폰들에 대해 자신의 폰이 어떻게 수행하는 있는지에 대한 상대적인 성능 데이터를 볼 수 있도록 요청할 수 있다. 다양한 실시예들에서, 사용자는 사용자가 자신의 장치의 상대적 성능을 보기를 원하는 프로파일을 선택하거나 제공할 수 있다. 예를 들면, 사용자는, 장치의 유형과는 상관없이 상기 시스템이 특정의 소프트웨어 애플리케이션이 설치된 모든 장치들에 대한 상대적 성능 데이터를 디스플레이하도록 요청할 수 있다. 상기 시스템은 그때 상기 요청에 응답하여, 상기 복수의 장치들 중 어느 장치들이 상기 소프트웨어 애플리케이션이 설치됐는지를 결정할 수 있으며, 또한 예를 들면 상기 원격 서버에 저장된 데이터에 기초하여 상기 사용자에게 디스플레이하기 위해 그 유사한 장치들에 대한 평균 성능 데이터를 결정할 수 있다. 특정 실시예들에서, 평균 성능 데이터는 복수의 상이한 카테고리들(예를 들면, 처리 속도, 무선 접속의 강도, 배터리 수명 등)로 세분될 수 있다.
도 4 내지 도 9는 본 명세서에서 기술된 시스템의 다양한 특징들을 나타내는 예시적인 스크린 디스플레이들이다. 이해할 수 있는 바와 같이, 이들 스크린 디스플레이들은 임의의 적합한 장치에 디스플레이될 수 있다(예를 들면, 상기한 시스템 진단 모듈(300)의 맥락에서 설명된 바와 같은 제 1 컴퓨팅 장치).
도 4는 특정 컴퓨팅 장치에 관한 정보(410)를 나타내는 스크린 디스플레이 (400)를 도시한다. 이 도면에 도시된 바와 같이, 정보(410)는 특정 컴퓨팅 장치의 마지막 리부팅 이후 시간에 대한 정보 (예를 들면, 1일) 및 시스템 성능을 향상하기 위한 추천 정보를 포함한다(예를 들면, 컴퓨팅 장치를 리부팅하는 것은 시스템의 성능을 향상시킬 수 있다는 조언). 정보(410)는 또한 가장 최근에 설치된 애플리케이션에 관한 정보, 음성 및 데이터 네트워크에 대한 접속에 관한 정보, 및 Wi-Fi 연결 정보를 포함한다. 가장 최근에 설치된 애플리케이션에 관한 정보(410)는 또한 최신 설치된 애플리케이션의 다른 사용자들에 대한 월 평균 데이터 사용상태를 보여주는 비교 정보(415)를 포함한다. 이 도면으로부터 알 수 있는 바와 같이, 시스템은 유사한 장치들(예를 들면, 상기 특정 애플리케이션이 역시 설치된 장치들)로부터 수신된 정보(410)를 디스플레이하고, 상기 특정 컴퓨팅 장치에 대한 관련 시스템 이벤트(예를 들면, 특정 애플리케이션의 설치)와 연관된 정보(410)를 디스플레이하도록 구성된다.
도 5는 현재와 과거의 배터리 충전 레벨(510)을 나타내는 스크린 디스플레이(500)를 도시한다. 이 도면으로부터 알 수 있는 바와 같이, 상기 시스템은 시간이 지남에 따라 과거의 배터리 레벨에 더하여 현재 배터리 레벨을 표시하도록 구성된다. 다양한 실시예들에서, 배터리 사용상태는 시스템이 시간에 걸쳐 추적하도록 구성되는 많은 종류의 성능 데이터 중 하나가 된다. 도 6은 다른 실시예에 따라 배터리 레벨(610)에 관련된 정보를 보여주는 스크린 디스플레이(600)를 도시한다. 이 도면에 도시된 바와 같이, 시스템은 상기 장치에 대한 평균 배터리 수명을 비교하는 상대적인 배터리 수명 정보(615)를 도시하도록 또한 구성되며, 여기에서, 스크린 디스플레이는 다른 장치들(예를 들면, 동일한 제조업체 및 모델의 장치와 같은 유사한 장치를 갖는 다른 장치들)의 평균 배터리 수명에 대비하여 디스플레이된다. 이 도면으로부터 알 수 있는 바와 같이, 데이터가 디스플레이되는 사용자의 장치는 완정 충전에 대하여 평균 배터리 수명보다 양호하다(예를 들면, 16h 9m 대 14h 7m).
도 7은 특정 컴퓨팅 장치(예를 들면, DROID RAZR)에 대한 최근의 접속 활동(710)을 나타내는 스크린 디스플레이(700)를 도시한다. 도면에 도시된 바와 같이, 상기 시스템은 Wi-Fi 신호 세기의 최근 변화, 특정 Wi-Fi 네트워크들에 대한 접속에서의 최근의 변화, 모바일 데이터 네트워크의 턴-온 및 턴-오프, 등을 디스플레이한다. 이 도면으로부터 알 수 있는 바와 같이, 상기 시스템은 이들이 발생시킨 바에 따른 이들의 접속 이벤트들을 로그하고, 사용자에게 추후 디스플레이하기 위해 이들을 저장한다. 도 8은 상기 시스템이 디스플레이하도록 구성될 수 있는 추가의 시스템 정보(810)를 나타내는 스크린 디스플레이(800)를 도시한다. 이 도면에 도시된 바와 같이, 상기 시스템 정보는 장치의 모델, 장치의 운영 시스템, 클라이언트 버전, 상태, 활성화 정보, 장치의 가장 최근의 리부팅에 관한 정보, 등을 포함할 수 있다. 상기 시스템은 또한 배터리 상태, 배터리 건강상태, 배터리 충전 기술, 배터리 충전 시간, 배터리 레벨, 네트워크 및 저장 정보 등을 디스플레이하도록 구성된다. 다양한 실시예들에서, 상기 시스템은 하나 이상의 유사한 컴퓨팅 장치들(예를 들면, 도 8의 시스템 정보(810)로서 디스플레이되는 하나 이상의 특징들을 공유하는 컴퓨팅 장치들)을 식별하기 위해 이러한 정보를 사용할 수 있다.
도 9는 특정 장치(예를 들면, 특정의 DROID RAZR)에 대한 애플리케이션 정보(910)를 보여주는 스크린 디스플레이(900)를 도시한다. 도면에서 도시된 바와 같이, 상기 장치에 설치된 다양한 애플리케이션들에 대하여, 상기 시스템은 각 애플리케이션에 대한 데이터 사용상태, CPU 사용상태, 및 다양한 애플리케이션들과 관련된 다른 정보를 디스플레이를 위해 추적 및 저장한다.
결론
본 발명이 속하는 기술분야에 숙련된 사람들은 전술한 설명 및 관련된 도면들에 제시된 설명의 이익을 갖는 본 발명의 많은 변형들 및 다른 실시예들이 떠오를 수 있을 것이다. 따라서, 본 발명은 개시된 특정 실시예들에 제한되는 것이 아니며, 변형들 및 다른 실시예들이 첨부된 청구범위의 범위 내에 포함되도록 의도되었다는 것을 이해해야한다. 특정 용어들이 본 명세서에 사용되었지만, 이들은 제한의 목적이 아니라 단지 일반적이고 설명적인 의미로 사용되었다.
Claims (30)
- 컴퓨터 실행가능한 명령들을 저장한 비-일시적 컴퓨터 판독가능한 매체에 있어서,
상기 컴퓨터 실행가능한 명령들은:
(A) 제 1 컴퓨팅 장치에 대한 제 1 시스템 이벤트와 연관된 제 1 시스템 이벤트 데이터 세트를 수신하고, 상기 제 1 컴퓨팅 장치는 제 1 장치 프로파일(device profile)을 갖고, 상기 제 1 장치 프로파일은 하나 이상의 특정 컴퓨팅 장치 특징을 포함하고;
(B) 상기 제 1 컴퓨팅 장치에 대한 제 1 성능 데이터 세트를 수신하고, 상기 제 1 성능 데이터 세트는 상기 제 1 컴퓨팅 장치가 상기 제 1 시스템 이벤트를 실행한 후 생성되는 상기 제 1 컴퓨팅 장치의 성능 데이터를 포함하고;
(C) 적어도 하나의 제 2 컴퓨팅 장치에 대한 제 2 시스템 이벤트와 연관된 제 2 시스템 이벤트 데이터 세트를 수신하고, 상기 제 2 컴퓨팅 장치는 제 2 장치 프로파일을 갖고, 상기 제 2 장치 프로파일은 상기 하나 이상의 특정 컴퓨팅 장치 특징을 포함하고;
(D) 상기 적어도 하나의 제 2 컴퓨팅 장치에 대한 제 2 성능 데이터 세트를 수신하고, 상기 제 2 성능 데이터 세트는 상기 제 2 컴퓨팅 장치가 상기 제 2 시스템 이벤트를 실행한 후 생성되는 상기 제 2 컴퓨팅 장치의 제 2 성능 데이터를 포함하고;
(E) 상기 제 1 시스템 이벤트 데이터 세트, 상기 제 1 성능 데이터 세트, 상기 제 2 시스템 이벤트 데이터 세트, 및 상기 제 2 성능 데이터 세트를 사용자에게 디스플레이함으로써, 상기 사용자로 하여금 상기 제 1 시스템 이벤트 데이터 세트, 상기 제 1 성능 데이터 세트, 상기 제 2 시스템 이벤트 데이터 세트, 및 상기 제 2 성능 데이터 세트를 비교할 수 있게 하고;
(F) 상기 제 1 시스템 이벤트 데이터 세트, 상기 제 1 성능 데이터 세트, 상기 제 2 시스템 이벤트 데이터 세트, 및 상기 제 2 성능 데이터 세트에 적어도 부분적으로 기초하여 상기 컴퓨팅 장치에서의 하나 이상의 성능 문제들을 상기 사용자로 하여금 진단할 수 있게 하기 위한 것인, 비-일시적 컴퓨터 판독가능한 매체. - 제 1 항에 있어서,
상기 사용자로 하여금 상기 제 1 시스템 이벤트 데이터 세트, 상기 제 1 성능 데이터 세트, 상기 제 2 시스템 이벤트 데이터 세트, 및 상기 제 2 성능 데이터 세트를 비교하게 하는 것은, 상기 제 1 시스템 이벤트 데이터 세트, 상기 제 1 성능 데이터 세트, 상기 제 2 시스템 이벤트 데이터 세트, 및 상기 제 2 성능 데이터 세트의 그래픽 표현을 상기 사용자에게 디스플레이하는 것을 포함하는, 비-일시적 컴퓨터 판독가능한 매체. - 제 1 항에 있어서,
상기 제 1 시스템 이벤트 데이터 세트는:
(i) 상기 제 1 컴퓨팅 장치가 접속되는 무선 네트워크의 신호 세기의 변화;
(ii) 상기 제 1 컴퓨팅 장치와 연관된 메모리로의 소프트웨어의 설치;
(iii) 특정 네트워크에 대한 접속;
(iv) 상기 특정 네트워크로부터의 분리; 및
(v) 외부 전원으로의 상기 제 1 컴퓨팅 장치의 접속
으로 구성된 그룹으로부터 선택되는, 비-일시적 컴퓨터 판독가능한 매체. - 제 3 항에 있어서,
상기 하나 이상의 특징은 상기 제 1 컴퓨팅 장치의 장치 유형을 포함하는, 비-일시적 컴퓨터 판독가능한 매체. - 제 4 항에 있어서,
상기 하나 이상의 특징은 상기 제 1 컴퓨팅 장치의 모델을 포함하는, 비-일시적 컴퓨터 판독가능한 매체. - 제 3 항에 있어서,
상기 제 1 시스템 이벤트 데이터 세트는 상기 제 2 시스템 이벤트 데이터 세트와 연관되는, 비-일시적 컴퓨터 판독가능한 매체. - 제 1 항에 있어서,
상기 제 1 시스템 이벤트 데이터 세트는 상기 제 1 컴퓨팅 장치와 연관된 복수의 시스템 이벤트들을 포함하고,
상기 복수의 시스템 이벤트들의 각각은 상기 복수의 시스템 이벤트들의 각각이 일어난 특정 시간들과 연관되는, 비-일시적 컴퓨터 판독가능한 매체. - 제 1 항에 있어서,
상기 제 1 시스템 이벤트 데이터 세트는 상기 제 1 성능 데이터 세트와 연관되며,
상기 제 2 시스템 이벤트 데이터 세트는 상기 제 2 성능 데이터 세트와 연관되는, 비-일시적 컴퓨터 판독가능한 매체. - 제 8 항에 있어서,
상기 제 1 성능 데이터 세트는:
상기 제 1 컴퓨팅 장치의 배터리 사용상태; 및
상기 제 1 컴퓨팅 장치의 프로세서 사용상태
로 구성된 그룹으로부터 선택되는, 비-일시적 컴퓨터 판독가능한 매체. - 제 1 항에 있어서,
상기 적어도 하나의 특징은 상기 제 1 컴퓨팅 장치의 모델인, 비-일시적 컴퓨터 판독가능한 매체. - 제 1 항에 있어서,
상기 적어도 하나의 특징은 특정 네트워크에 대한 접속인, 비-일시적 컴퓨터 판독가능한 매체. - 제 1 항에 있어서,
(G) 상기 제 1 시스템 이벤트 데이터 세트, 상기 제 1 성능 데이터 세트, 상기 제 2 시스템 이벤트 데이터 세트, 및 상기 제 2 성능 데이터 세트에 적어도 부분적으로 기초하여 상기 컴퓨팅 장치에서의 상기 하나 이상의 성능 문제들을 자동으로 진단하기 위한 컴퓨터 실행가능한 명령들을 더 저장하는, 비-일시적 컴퓨터 판독가능한 매체. - 컴퓨터 시스템에 있어서,
적어도 하나의 프로세서를 포함하고,
상기 컴퓨터 시스템은:
(A) 제 1 모바일 컴퓨팅 장치와 연관된 제 1 데이터 세트를 수신하는 것으로, 상기 제 1 데이터 세트는 제 1 성능 데이터 세트를 포함하고, 상기 제 1 성능 데이터 세트는 상기 제 1 모바일 컴퓨팅 장치가 제 1 시스템 이벤트 및 적어도 하나의 제 1 시스템 이벤트 데이터 세트를 실행한 후 생성된 상기 제 1 모바일 컴퓨팅 장치의 성능 데이터를 포함하고, 상기 제 1 모바일 컴퓨팅 장치는 적어도 하나의 모바일 장치 특징을 포함하는, 상기 제 1 데이터 세트를 수신하는 것과;
(B) 하나 이상의 제 2 모바일 컴퓨팅 장치들과 연관된 제 2 데이터 세트를 수신하는 것으로, 상기 제 2 데이터 세트는 제 2 성능 데이터 세트를 포함하고, 상기 제 2 성능 데이터 세트는 상기 제 2 모바일 컴퓨팅 장치가 제 2 시스템 이벤트 및 상기 하나 이상의 제 2 모바일 컴퓨팅 장치 각각에 대한 적어도 하나의 제 2 시스템 이벤트 데이터 세트를 실행한 후 생성된 상기 제 2 모바일 컴퓨팅 장치의 제 2 성능 데이터를 포함하는, 상기 제 2 데이터 세트를 수신하는 것과;
(C) 적어도 하나의 장치 프로파일을 확립하는 것으로, 상기 적어도 하나의 장치 프로파일은 상기 적어도 하나의 모바일 장치 특징과 연관되는, 상기 프로파일을 확립하는 것과;
(D) 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들 중 어느 것이 상기 적어도 하나의 모바일 장치 특징을 갖는 지를 결정하는 것과;
(E) 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들이 상기 적어도 하나의 모바일 장치 특징을 갖는지에 대한 결정에 적어도 부분적으로 응답하여, 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들을 상기 장치 프로파일에 할당하는 것과;
(F) 상기 제 1 모바일 컴퓨팅 장치가 상기 적어도 하나의 모바일 장치 특징을 갖는 지를 결정하는 것과;
(G) 상기 장치 프로파일에 할당된 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들의 상기 제 1 데이터 세트 및 상기 제 2 데이터 세트를 상기 제 1 모바일 컴퓨팅 장치의 사용자에게 디스플레이하는 것과;
(H) 상기 장치 프로파일에 할당된 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들의 상기 제 1 데이터 세트 및 상기 제 2 데이터 세트에 적어도 부분적으로 기초하여 상기 제 1 모바일 컴퓨팅 장치에서의 하나 이상의 성능 문제들을 상기 사용자로 하여금 진단할 수 있게 하는 것
을 수행하도록 구성되는, 컴퓨터 시스템. - 제 13 항에 있어서,
상기 제 1 성능 데이터 세트는 상기 제 1 모바일 컴퓨팅 장치의 제 1 배터리 수명을 포함하고;
상기 제 2 성능 데이터 세트는 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들의 제 2 배터리 수명을 포함하고;
상기 적어도 하나의 모바일 장치 특징은 상기 제 1 모바일 컴퓨팅 장치의 모델을 포함하는, 컴퓨터 시스템. - 제 13 항에 있어서,
상기 제 1 성능 데이터 세트는 상기 제 1 모바일 컴퓨팅 장치와 특정 네트워크 사이의 신호 세기를 포함하고;
상기 제 2 성능 데이터 세트는 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들과 상기 특정 네트워크 사이의 신호 세기를 포함하는, 컴퓨터 시스템. - 제 15 항에 있어서,
상기 특정 네트워크는 특정의 무선 전화 제공자와 연관된 네트워크인, 컴퓨터 시스템. - 제 13 항에 있어서,
상기 적어도 하나의 제 1 시스템 이벤트는:
(i) 상기 제 1 모바일 컴퓨팅 장치가 접속되는 무선 네트워크의 신호 세기의 변화;
(ii) 상기 제 1 모바일 컴퓨팅 장치와 연관된 메모리로의 소프트웨어의 설치;
(iii) 특정 네트워크에 대한 접속;
(iv) 상기 특정 네트워크로부터의 분리; 및
(v) 외부 전원으로의 상기 제 1 모바일 컴퓨팅 장치의 접속
으로 구성된 그룹으로부터 선택되는, 컴퓨터 시스템. - 제 17 항에 있어서,
상기 적어도 하나의 제 2 시스템 이벤트 및 상기 적어도 하나의 제 1 시스템 이벤트는 동일한 이벤트인, 컴퓨터 시스템. - 제 13 항에 있어서,
상기 제 1 성능 데이터 세트는:
(A) 상기 제 1 모바일 컴퓨팅 장치의 배터리 사용상태; 및
(B) 상기 제 1 모바일 컴퓨팅 장치의 프로세서 사용상태
로 구성된 그룹으로부터 선택되는, 컴퓨터 시스템. - 제 19 항에 있어서,
상기 제 2 성능 데이터 세트는 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들에 대한 상기 제 1 성능 데이터 세트와 유사한 유형의 성능 데이터 세트를 포함하는, 컴퓨터 시스템. - 제 13 항에 있어서,
(H) 상기 프로파일에 할당된 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들과 연관된 상기 제 2 데이터 세트를 종합(aggregate)하는 것과;
(I) 상기 종합된 데이터 세트를 상기 제 1 모바일 컴퓨팅 장치의 상기 사용자에게 디스플레이하는 것
을 더 수행하도록 구성되는, 컴퓨터 시스템. - 제 21 항에 있어서,
상기 종합은 상기 프로파일에 할당된 상기 하나 이상의 제 2 모바일 컴퓨팅 장치들과 연관된 상기 제 2 데이터 세트를 평균화하는 것을 포함하는, 컴퓨터 시스템. - 컴퓨터 실행 방법에 있어서,
프로세서에 의해, 복수의 컴퓨팅 장치들에 대한 복수의 시스템 이벤트 데이터 세트 및 복수의 시스템 성능 데이터 세트를 수신하는 단계로서, 상기 복수의 컴퓨팅 장치들은,
제 1 시스템 이벤트와 연관된 제 1 시스템 이벤트 데이터 세트, 및 제 1 시스템 성능 데이터 세트와 연관된 제 1 컴퓨팅 장치를 포함하고, 상기 제 1 시스템 성능 데이터 세트는 상기 제 1 컴퓨팅 장치가 상기 제 1 시스템 이벤트를 실행한 후 생성된 상기 제 1 컴퓨팅 장치의 성능 데이터를 포함하며;
상기 복수의 컴퓨팅 장치들의 적어도 하나 이상의 특징에 기초해 적어도 하나의 장치 프로파일을 공유하는, 상기 수신하는 단계;
상기 프로세서에 의해, 상기 복수의 시스템 이벤트 데이터 세트 및 상기 복수의 시스템 성능 데이터 세트에 적어도 부분적으로 기초하여 상기 복수의 컴퓨팅 장치들에 대한 평균 성능 메트릭을 결정하는 단계;
상기 프로세서에 의해, 상기 제 1 시스템 이벤트 데이터 세트 및 상기 제 1 시스템 성능 데이터 세트에 적어도 부분적으로 기초하여 상기 제 1 컴퓨팅 장치에 대한 제 1 성능 메트릭을 결정하는 단계;
상기 프로세서에 의해, 상기 평균 성능 메트릭 및 상기 제 1 성능 메트릭을 상기 제 1 컴퓨팅 장치의 사용자에게 디스플레이하는 단계; 및
상기 평균 성능 메트릭 및 상기 제 1 성능 메트릭에 적어도 부분적으로 기초하여 상기 제 1 컴퓨팅 장치상의 하나 이상의 성능 문제들을 상기 사용자로 하여금 처리(troubleshoot)할 수 있게 하는 단계를 포함하는, 컴퓨터 실행 방법. - 제 23 항에 있어서,
상기 복수의 시스템 이벤트 데이터 세트는:
(i) 상기 복수의 컴퓨팅 장치들이 접속되는 무선 네트워크의 신호 세기의 변화;
(ii) 상기 복수의 컴퓨팅 장치들과 연관된 메모리로의 소프트웨어의 설치;
(iii) 상기 복수의 컴퓨팅 장치들에 의한 특정 네트워크에 대한 접속;
(iv) 상기 복수의 컴퓨팅 장치들에 의한 상기 특정 네트워크로부터의 분리; 및
(v) 외부 전원으로의 상기 복수의 컴퓨팅 장치들의 접속
으로 구성된 그룹으로부터 선택된 시스템 이벤트와 연관되는, 컴퓨터 실행 방법. - 제 23 항에 있어서,
상기 평균 성능 메트릭 및 상기 제 1 성능 메트릭에 적어도 부분적으로 기초하여 상기 제 1 컴퓨팅 장치상의 상기 하나 이상의 성능 문제들을 자동으로 처리하는 단계를 더 포함하는, 컴퓨터 실행 방법. - 제 25 항에 있어서,
상기 하나 이상의 특징은 상기 복수의 컴퓨팅 장치들의 모델을 포함하는, 컴퓨터 실행 방법. - 컴퓨터 실행가능한 명령들을 저장한 비-일시적 컴퓨터 판독가능한 매체에 있어서,
상기 컴퓨터 실행가능한 명령들은:
(A) 시간에 걸쳐 취해진 복수의 컴퓨팅 장치들의 각각과 연관된 복수의 타임 스탬프 성능 데이터 세트를 메모리에 저장하고, 상기 복수의 타임 스탬프 성능 데이터 세트는 상기 복수의 컴퓨팅 장치들 각각이 제 1 시스템 이벤트를 실행한 후 생성된 상기 복수의 컴퓨팅 장치들 각각의 성능 데이터를 포함하고,
(B) 시간에 걸쳐 취해진 상기 복수의 컴퓨팅 장치들의 각각과 연관된 복수의 타임 스탬프 이벤트 데이터 세트를 메모리에 저장하고;
(C) 상기 복수의 컴퓨팅 장치들 중 제 1 컴퓨팅 장치와 연관된 개인에게, 상기 복수의 컴퓨팅 장치들 중 상기 제 1 컴퓨팅 장치와 유사한, 다른 컴퓨팅 장치들의 일반적인 성능과 상기 복수의 컴퓨팅 장치들 중 상기 제 1 컴퓨팅 장치의 성능을 비교한 것을 제공하기 위해 적어도 상기 타임 스탬프 성능 데이터 세트를 사용하고;
(D) 상기 복수의 컴퓨팅 장치들로부터, 상기 복수의 컴퓨팅 장치들 중 상기 제 1 컴퓨팅 장치와 유사한, 다른 컴퓨팅 장치들의 일반적인 성능과 상기 제 1 컴퓨팅 장치의 상기 성능 비교에 적어도 부분적으로 기초하여 상기 복수의 컴퓨팅 장치들 중 상기 제 1 컴퓨터 장치상의 하나 이상의 성능 문제들을 상기 개인으로 하여금 처리할 수 있게 하기 위한 것인, 비-일시적 컴퓨터 판독가능한 매체. - 제 27 항에 있어서,
상기 복수의 컴퓨팅 장치들 중 상기 제 1 컴퓨팅 장치의 성능을 다른 유사한 컴퓨팅 장치들의 일반적인 성능과 비교한 것을 제공하도록 적어도 상기 타임 스탬프 성능 데이터 세트를 사용하는 단계는 상기 비교를 제공하도록 상기 시간 스탬프 성능 데이터 세트 및 상기 시간 스탬프 이벤트 데이터 세트 양쪽 모두를 사용하는 것을 포함하는, 비-일시적 컴퓨터 판독가능한 매체. - 제 27 항에 있어서,
상기 복수의 컴퓨팅 장치들의 각각의 하나 이상의 특징에 관한 정보를 저장하고;
상기 복수의 컴퓨팅 장치들로부터 상기 유사한 컴퓨팅 장치들을 식별하도록 상기 복수의 컴퓨팅 장치들의 각각의 상기 하나 이상의 특징에 관한 상기 정보를 사용하기 위한 컴퓨터 실행가능한 명령들을 더 포함하는, 비-일시적 컴퓨터 판독가능한 매체. - 제 29 항에 있어서,
상기 유사한 컴퓨팅 장치들을 식별하는 단계는 상기 복수의 컴퓨팅 장치들 중 상기 제 1 컴퓨팅 장치와 동일한 프로파일을 갖는 하나 이상의 컴퓨팅 장치들을 식별하는 것을 포함하는, 비-일시적 컴퓨터 판독가능한 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/026,965 | 2013-09-13 | ||
US14/026,965 US10073754B2 (en) | 2013-09-13 | 2013-09-13 | Systems and methods for collecting, tracking, and storing system performance and event data for computing devices |
PCT/US2014/055429 WO2015038918A1 (en) | 2013-09-13 | 2014-09-12 | Systems and methods for collecting, tracking, and storing system performance and event data for computing devices |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160120714A KR20160120714A (ko) | 2016-10-18 |
KR101835303B1 true KR101835303B1 (ko) | 2018-03-08 |
Family
ID=52666329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020167009707A KR101835303B1 (ko) | 2013-09-13 | 2014-09-12 | 컴퓨팅 장치들에 대한 시스템 성능 및 이벤트 데이터를 수집, 추적 및 저장하기 위한 시스템들 및 방법들 |
Country Status (13)
Country | Link |
---|---|
US (5) | US10073754B2 (ko) |
EP (2) | EP4123460A1 (ko) |
JP (5) | JP2016535371A (ko) |
KR (1) | KR101835303B1 (ko) |
CN (1) | CN105934746B (ko) |
AU (1) | AU2014318559B2 (ko) |
BR (1) | BR112016007759A2 (ko) |
CA (1) | CA2924181C (ko) |
CL (1) | CL2016000579A1 (ko) |
ES (1) | ES2929456T3 (ko) |
MX (2) | MX365262B (ko) |
PE (1) | PE20160925A1 (ko) |
WO (1) | WO2015038918A1 (ko) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150133076A1 (en) * | 2012-11-11 | 2015-05-14 | Michael Brough | Mobile device application monitoring software |
US10073754B2 (en) | 2013-09-13 | 2018-09-11 | Assurant, Inc. | Systems and methods for collecting, tracking, and storing system performance and event data for computing devices |
US20160335580A1 (en) * | 2015-05-13 | 2016-11-17 | Wal-Mart Stores, Inc. | Systems, devices, and methods for configuring a graphical user interface |
JP6314923B2 (ja) * | 2015-07-09 | 2018-04-25 | 京セラドキュメントソリューションズ株式会社 | 画像処理装置 |
US10671504B2 (en) * | 2015-07-28 | 2020-06-02 | Lenovo (Singapore) Pte. Ltd. | System performance monitoring and optimization |
US10678320B2 (en) * | 2015-07-28 | 2020-06-09 | Lenovo (Singapore) Pte. Ltd. | Device power monitoring and optimization |
US10069710B2 (en) * | 2016-03-01 | 2018-09-04 | Dell Products, Lp | System and method to identify resources used by applications in an information handling system |
US10831641B2 (en) * | 2016-09-08 | 2020-11-10 | At&T Intellectual Property I, L.P. | Method and apparatus for determining a performance impact by a software upgrade of a mobile user endpoint device |
US11126465B2 (en) * | 2017-03-23 | 2021-09-21 | Microsoft Technology Licensing, Llc | Anticipatory collection of metrics and logs |
KR102276895B1 (ko) * | 2017-08-17 | 2021-07-12 | 삼성전자주식회사 | 반도체 장치 및 그 이벤트 프로파일링 방법 |
US10303516B1 (en) * | 2018-01-03 | 2019-05-28 | Sas Institute Inc. | Allocating computing resources for providing various datasets to client devices |
JP2019179372A (ja) * | 2018-03-30 | 2019-10-17 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 学習データ作成方法、学習方法、危険予測方法、学習データ作成装置、学習装置、危険予測装置、及び、プログラム |
US10671142B2 (en) | 2018-04-19 | 2020-06-02 | International Business Machines Corporation | Social-geofenced-based application management for battery maximization |
JP2020005751A (ja) * | 2018-07-04 | 2020-01-16 | オリンパス株式会社 | 内視鏡システム |
KR102688020B1 (ko) | 2018-11-12 | 2024-07-25 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
US11153373B2 (en) | 2019-05-03 | 2021-10-19 | EMC IP Holding Company LLC | Method and system for performance-driven load shifting |
FI128274B (en) * | 2019-05-27 | 2020-02-14 | Blancco Tech Group Ip Oy | Prioritization of diagnostic tests based on collected diagnostic reports |
US20220138068A1 (en) * | 2019-07-02 | 2022-05-05 | Hewlett-Packard Development Company, L.P. | Computer readable program code change impact estimations |
US11157514B2 (en) | 2019-10-15 | 2021-10-26 | Dropbox, Inc. | Topology-based monitoring and alerting |
CA3166922A1 (en) * | 2020-02-07 | 2021-08-12 | Mircea Ionescu | Guided computing device repair systems, methods, and apparatus |
JP2023504956A (ja) * | 2020-11-16 | 2023-02-08 | バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド | 性能検出方法、装置、電子機器及びコンピュータ可読媒体 |
BR102021013558A2 (pt) * | 2021-07-08 | 2023-01-17 | Globetek Holding, Llc. | Sistema para provisão de empréstimos financeiros ou viabilização de garantia, processos de bloqueio e de desbloqueio |
US20230244767A1 (en) * | 2022-02-02 | 2023-08-03 | Hewlett-Packard Development Company, L.P. | Extrapolating return data for a plurality of computing devices |
WO2024177690A1 (en) | 2023-02-26 | 2024-08-29 | Assurant, Inc. | Systems, methods, apparatuses, computer readable media, and computer program products for optimizing resource usage |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020069037A1 (en) * | 2000-09-01 | 2002-06-06 | Keith Hendrickson | System and method for measuring wireless device and network usage and performance metrics |
Family Cites Families (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5765011A (en) * | 1990-11-13 | 1998-06-09 | International Business Machines Corporation | Parallel processing system having a synchronous SIMD processing with processing elements emulating SIMD operation using individual instruction streams |
US5504675A (en) | 1994-12-22 | 1996-04-02 | International Business Machines Corporation | Method and apparatus for automatic selection and presentation of sales promotion programs |
US5848396A (en) | 1996-04-26 | 1998-12-08 | Freedom Of Information, Inc. | Method and apparatus for determining behavioral profile of a computer user |
GB2337386B (en) * | 1996-09-09 | 2001-04-04 | Dennis J Dupray | Location of a mobile station |
US6446119B1 (en) | 1997-08-07 | 2002-09-03 | Laslo Olah | System and method for monitoring computer usage |
US6269401B1 (en) | 1998-08-28 | 2001-07-31 | 3Com Corporation | Integrated computer system and network performance monitoring |
US6799154B1 (en) * | 2000-05-25 | 2004-09-28 | General Electric Comapny | System and method for predicting the timing of future service events of a product |
US7222269B2 (en) * | 2001-12-06 | 2007-05-22 | Ns Solutions Corporation | Performance evaluation device, performance evaluation information managing device, performance evaluation method, performance evaluation information managing method, performance evaluation system |
US7599293B1 (en) * | 2002-04-25 | 2009-10-06 | Lawrence Michael Bain | System and method for network traffic and I/O transaction monitoring of a high speed communications network |
US7454458B2 (en) * | 2002-06-24 | 2008-11-18 | Ntt Docomo, Inc. | Method and system for application load balancing |
US7058953B2 (en) * | 2002-07-23 | 2006-06-06 | Microsoft Corporation | Managing a distributed computing system |
US7162312B2 (en) | 2003-09-24 | 2007-01-09 | Siemens Aktiengesellschaft | Method, system and device for predictive error recognition in a plant |
JP3912680B2 (ja) | 2003-09-30 | 2007-05-09 | 日本電気株式会社 | 無線lan装置 |
US7643826B2 (en) | 2004-01-07 | 2010-01-05 | Hewlett-Packard Development Company, L.P. | Mobile care engine system |
US7966522B2 (en) | 2005-03-14 | 2011-06-21 | Napster Llc | System and method for automatically uploading analysis data for customer support |
CA2578602C (en) | 2005-07-05 | 2012-04-10 | Carrier Iq, Inc. | Rule based data collection and management in a wireless communications network |
US20070150581A1 (en) | 2005-12-22 | 2007-06-28 | American Express Travel Services, Co., Inc. a New York Corporation | System and method for monitoring system performance levels across a network |
US20070156706A1 (en) | 2005-12-27 | 2007-07-05 | Christian Hayes | Apparatus, system, and method for monitoring the usage of computers and groups of computers |
JP4573179B2 (ja) * | 2006-05-30 | 2010-11-04 | 日本電気株式会社 | 性能負荷異常検出システム、性能負荷異常検出方法、及びプログラム |
US7617423B2 (en) | 2006-08-14 | 2009-11-10 | Kyocera Corporation | System and method for detecting, reporting, and repairing of software defects for a wireless device |
JP2008108120A (ja) | 2006-10-26 | 2008-05-08 | Hitachi Ltd | エージェントを使用して性能を監視する計算機システム及びその方法 |
JP4412322B2 (ja) | 2006-12-26 | 2010-02-10 | ソニー株式会社 | 通信システム及びその障害検出用の情報の提供方法 |
US7966039B2 (en) | 2007-02-02 | 2011-06-21 | Microsoft Corporation | Bidirectional dynamic offloading of tasks between a host and a mobile device |
EP2132956A1 (en) * | 2007-03-30 | 2009-12-16 | Phonak AG | Method for establishing performance of hearing devices |
US20090055465A1 (en) | 2007-08-22 | 2009-02-26 | Microsoft Corporation | Remote Health Monitoring and Control |
US20090182533A1 (en) | 2008-01-14 | 2009-07-16 | Apple Inc. | Remote diagnostic service |
US20090204667A1 (en) | 2008-02-13 | 2009-08-13 | Osvaldo Diaz | User-Initiated Computer Support Using Out-Of-Band Network |
US7925742B2 (en) | 2008-02-28 | 2011-04-12 | Microsoft Corporation | Correlating performance data of multiple computing devices |
US8295191B2 (en) | 2008-03-04 | 2012-10-23 | Microsoft Corporation | Endpoint report aggregation in unified communication systems |
US20090235267A1 (en) | 2008-03-13 | 2009-09-17 | International Business Machines Corporation | Consolidated display of resource performance trends |
US8219983B1 (en) | 2008-03-31 | 2012-07-10 | Symantec Corporation | Systems and methods for providing guidance on the potential impact of application and operating-system changes on a computing system |
US8074124B2 (en) | 2008-08-29 | 2011-12-06 | Xerox Corporation | Visualization of user interactions in a system of networked devices |
US9113345B2 (en) * | 2008-10-06 | 2015-08-18 | Root Wireless, Inc. | Web server and method for hosting a web page for presenting location based user quality data related to a communication network |
US8296262B1 (en) | 2009-05-04 | 2012-10-23 | United Services Automobile Association (Usaa) | Systems and methods for real-time online monitoring of computing devices |
US8381208B2 (en) | 2009-06-11 | 2013-02-19 | International Business Machines Corporation | Tracking application installation among a plurality of client devices |
US8538484B2 (en) | 2009-08-14 | 2013-09-17 | Google Inc. | Providing a user with feedback regarding power consumption in battery-operated electronic devices |
GB2473196B (en) | 2009-09-02 | 2012-01-04 | 1E Ltd | Monitoring the performance of and controlling a computer |
JP5477174B2 (ja) * | 2010-06-07 | 2014-04-23 | 株式会社リコー | 分散処理システム |
US8839346B2 (en) | 2010-07-21 | 2014-09-16 | Citrix Systems, Inc. | Systems and methods for providing a smart group |
US9158650B2 (en) | 2010-08-04 | 2015-10-13 | BoxTone, Inc. | Mobile application performance management |
US8868727B2 (en) * | 2010-09-22 | 2014-10-21 | Blue Stripe Software, Inc. | Methods and computer program products for storing generated network application performance data |
US8423638B2 (en) | 2010-09-29 | 2013-04-16 | International Business Machines Corporation | Performance monitoring of a computer resource |
US9524224B2 (en) | 2010-10-05 | 2016-12-20 | Red Hat Israel, Ltd. | Customized monitoring of system activities |
US9009185B2 (en) | 2010-12-28 | 2015-04-14 | Sevone, Inc. | Scalable performance management system |
US20120209654A1 (en) * | 2011-02-11 | 2012-08-16 | Avaya Inc. | Mobile activity assistant analysis |
US20120239681A1 (en) * | 2011-03-14 | 2012-09-20 | Splunk Inc. | Scalable interactive display of distributed data |
US8650550B2 (en) * | 2011-06-07 | 2014-02-11 | Blackberry Limited | Methods and devices for controlling access to computing resources |
US9075850B2 (en) | 2011-06-28 | 2015-07-07 | Hitachi, Ltd. | Monitoring system and monitoring method |
US8713378B2 (en) | 2011-07-07 | 2014-04-29 | Microsoft Corporation | Health monitoring of applications in a guest partition |
US8665847B2 (en) * | 2011-11-08 | 2014-03-04 | Microsoft Corporation | Service-assisted network access point selection |
US8880022B2 (en) * | 2011-11-10 | 2014-11-04 | Microsoft Corporation | Providing per-application resource usage information |
EP2786322A4 (en) | 2011-11-29 | 2015-10-07 | Neurio Technology Inc | METHOD AND SYSTEM FOR PREDICTING THE POWER REQUIREMENT WITH GRAIN METRICS |
US9369589B2 (en) * | 2012-01-27 | 2016-06-14 | Microsoft Technology Licensing, Llc | Updating dynamic data usage plans and statistics |
CN103294580B (zh) | 2012-02-02 | 2017-08-08 | 塔塔咨询服务有限公司 | 实时性能监控 |
US10491650B1 (en) * | 2012-02-06 | 2019-11-26 | Amazon Technologies, Inc. | Monitoring performance of computing devices |
US8626192B1 (en) * | 2012-07-24 | 2014-01-07 | Google Inc. | System and method for controlling mobile device operation |
US20140059388A1 (en) * | 2012-08-23 | 2014-02-27 | Rawllin International Inc. | Diagnostic and performance data collection |
US20140115514A1 (en) * | 2012-10-19 | 2014-04-24 | Google Inc. | User-specific mobile computing device resource management |
US20140188778A1 (en) * | 2012-12-27 | 2014-07-03 | General Electric Company | Computer-Implemented System for Detecting Anomaly Conditions in a Fleet of Assets and Method of Using the Same |
US11201802B2 (en) * | 2012-12-31 | 2021-12-14 | W.W. Grainger, Inc. | Systems and methods for providing infrastructure metrics |
US20150356446A1 (en) * | 2013-01-31 | 2015-12-10 | Lf Technology Development Corporation Limited | Systems and methods for a learning decision system with a graphical search interface |
US9766799B2 (en) * | 2013-02-20 | 2017-09-19 | Panasonic Intellectual Property Corporation Of America | Control method for information apparatus and computer-readable recording medium |
US9965946B2 (en) * | 2013-03-13 | 2018-05-08 | Masimo Corporation | Systems and methods for monitoring a patient health network |
US8990009B2 (en) * | 2013-07-24 | 2015-03-24 | Samsung Electronics Co., Ltd | System, method, and apparatus for minimizing power consumption in a portable device capable of receiving satellite navigational system signals |
US10073754B2 (en) * | 2013-09-13 | 2018-09-11 | Assurant, Inc. | Systems and methods for collecting, tracking, and storing system performance and event data for computing devices |
-
2013
- 2013-09-13 US US14/026,965 patent/US10073754B2/en active Active
-
2014
- 2014-09-12 WO PCT/US2014/055429 patent/WO2015038918A1/en active Application Filing
- 2014-09-12 EP EP22195380.5A patent/EP4123460A1/en active Pending
- 2014-09-12 MX MX2016003285A patent/MX365262B/es active IP Right Grant
- 2014-09-12 KR KR1020167009707A patent/KR101835303B1/ko active IP Right Grant
- 2014-09-12 AU AU2014318559A patent/AU2014318559B2/en active Active
- 2014-09-12 CN CN201480061889.2A patent/CN105934746B/zh active Active
- 2014-09-12 CA CA2924181A patent/CA2924181C/en active Active
- 2014-09-12 JP JP2016542821A patent/JP2016535371A/ja active Pending
- 2014-09-12 EP EP14843613.2A patent/EP3044681B1/en active Active
- 2014-09-12 BR BR112016007759-8A patent/BR112016007759A2/pt not_active Application Discontinuation
- 2014-09-12 PE PE2016000371A patent/PE20160925A1/es unknown
- 2014-09-12 ES ES14843613T patent/ES2929456T3/es active Active
-
2016
- 2016-03-11 CL CL2016000579A patent/CL2016000579A1/es unknown
- 2016-03-11 MX MX2019006051A patent/MX2019006051A/es unknown
-
2018
- 2018-01-05 JP JP2018000437A patent/JP6932653B2/ja active Active
- 2018-08-21 US US16/106,588 patent/US10872022B2/en active Active
-
2020
- 2020-02-25 JP JP2020029008A patent/JP6983928B2/ja active Active
- 2020-11-19 US US16/952,648 patent/US11429506B2/en active Active
-
2021
- 2021-11-24 JP JP2021190217A patent/JP7451479B2/ja active Active
-
2022
- 2022-07-27 US US17/815,363 patent/US11704221B2/en active Active
-
2023
- 2023-06-01 US US18/327,397 patent/US20230385170A1/en active Pending
-
2024
- 2024-03-06 JP JP2024033819A patent/JP2024056003A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020069037A1 (en) * | 2000-09-01 | 2002-06-06 | Keith Hendrickson | System and method for measuring wireless device and network usage and performance metrics |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11704221B2 (en) | Systems and methods for collecting, tracking, and storing system performance and event data for computing devices | |
US20150133076A1 (en) | Mobile device application monitoring software | |
US20160283711A1 (en) | eMMC Monitoring Method and Apparatus | |
US20120117576A1 (en) | Method and apparatus for obtaining feedback from a device | |
RU2601148C1 (ru) | Система и способ выявления аномалий при подключении устройств | |
KR20140090194A (ko) | 애플리케이션별 자원 사용 정보의 제공 기법 | |
CN101794359A (zh) | 用于启用用于遗留应用的经群体测试的安全特征的方法和系统 | |
JP2012198796A (ja) | ログ収集システム、装置、方法及びプログラム | |
US20140289719A1 (en) | Automatic version management | |
WO2015009405A1 (en) | Systems and methods for filtering low utility value messages from system logs | |
WO2016197737A1 (zh) | 自检处理方法、装置及系统 | |
US20180300199A1 (en) | System and method for maintaining the health of a machine | |
JP6015750B2 (ja) | ログ収集サーバ、ログ収集システム、ログ収集方法 | |
CN115545452B (zh) | 运维方法、运维系统、设备及存储介质 | |
CN115048272A (zh) | 容器监控处理方法、装置、宿主机、系统、存储介质及程序产品 | |
US20220269979A1 (en) | System method and code for un-learning an individual from an artificial intelligence (ai) model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |