KR100937063B1 - 외부 컴퓨팅 장치의 무선 장치-중앙 제어를 제공하기 위한방법들 및 장치 - Google Patents

외부 컴퓨팅 장치의 무선 장치-중앙 제어를 제공하기 위한방법들 및 장치 Download PDF

Info

Publication number
KR100937063B1
KR100937063B1 KR1020077026460A KR20077026460A KR100937063B1 KR 100937063 B1 KR100937063 B1 KR 100937063B1 KR 1020077026460 A KR1020077026460 A KR 1020077026460A KR 20077026460 A KR20077026460 A KR 20077026460A KR 100937063 B1 KR100937063 B1 KR 100937063B1
Authority
KR
South Korea
Prior art keywords
wireless device
external device
application
resource
wireless
Prior art date
Application number
KR1020077026460A
Other languages
English (en)
Other versions
KR20080000649A (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 KR20080000649A publication Critical patent/KR20080000649A/ko
Application granted granted Critical
Publication of KR100937063B1 publication Critical patent/KR100937063B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/04Wireless resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)

Abstract

무선 장치로 하여금 접속가능한 외부 장치 상의 자원들을 활용할 수 있게 하는 장치 및 방법들은 외부 장치 상에 소프트웨어 컴포넌트를 설치하는 것을 포함할 수 있는데, 상기 소프트웨어 컴포넌트는 무선 장치와 외부 장치 상의 원하는 자원 간의 통신을 가능하게 하도록 동작할 수 있다. 다른 양상들에서, 무선 장치에 존재하는 애플리케이션은 무선 네트워크를 통해 원격 서버로부터 애플리케이션 설치 패키지를 획득하고 또한, 요구시, 외부 장치 상에 외부 장치 애플리케이션을 설치하도록 동작할 수 있다.

Description

외부 컴퓨팅 장치의 무선 장치-중앙 제어를 제공하기 위한 방법들 및 장치{METHODS AND APPARATUS FOR PROVIDING WIRELESS DEVICE-CENTRIC CONTROL OF AN EXTERNAL COMPUTING DEVICE}
기재된 실시예들은 전반적으로 무선 통신 장치들에 관한 것이다. 더 상세히 말하자면, 기재된 실시예들은 접속된 외부 컴퓨팅 장치와 상호작용하는 무선 장치에 관한 것이다.
본 특허출원은 2005년 4월 21일에 "Raptor Handset Centric Design(RHCD)"란 명칭으로 가출원되어 본 출원의 양수인에게 양도되어진 제 60/673,867호의 우선권을 청구한다.
무선 장치들은 증가된 컴퓨팅 성능들을 갖도록 제작되고 있으며, 개인용 컴퓨터들과 같은 것들로 되고 있다. 셀룰러 전화기들과 같은 이러한 "스마트" 무선 장치들은 데이터의 업로딩 및 다운로딩과 같은 용도를 위해서 외부 컴퓨팅 장치에 접속될 수 있는 통신 포트들을 구비한다.
무선 장치들의 현재의 성능들에도 불구하고, 많은 양상의 무선 장치 테스팅이 데스크톱 또는 랩톱 컴퓨터의 제어 하에서 여전히 수행되고 있다.
따라서, 무선 장치의 사용을 통해 외부 자원들의 제어를 제공하는 새롭고 개 선된 방법들 및 장치들을 제공하는 것이 요구된다.
기재된 실시예들은 부속된 외부 장치의 장치 자원들을 활용하기 위해서 무선 장치 중앙 메커니즘을 제공하도록 동작할 수 있는 장치, 방법들, 컴퓨터 판독가능 매체들 및 프로세서들을 포함한다. 이러한 실시예들은 부속된 외부 컴퓨팅 장치의 자원들을 이용하도록 현재의 무선 애플리케이션들의 기능을 확장시킬 수 있다.
일부 양상들에서는, 무선 장치가 접속된 외부 장치 상의 자원을 활용하는 방법이 미리 결정된 장치 자원을 활용하도록 동작할 수 있는 애플리케이션을 무선 장치 상에서 실행하는 단계를 포함한다. 무선 장치는 미리 결정된 장치 자원 중 제 1 자원을 포함한다. 또한, 상기 방법은 외부 장치를 무선 장치에 접속시키는 단계를 포함하는데, 상기 외부 장치는 미리 결정된 장치 자원 중 제 1 자원을 포함한다. 또한, 상기 방법은 미리 결정된 자원 중 제 1 자원을 활용하는 것과 미리 결정된 자원 중 제 2 자원을 활용하는 것 사이에서 무선 장치 애플리케이션을 자동적으로 스위칭시키는 단계를 포함한다. 관련된 양상들에서, 기계-판독가능 매체는 기계에 의해서 실행될 경우 상기 기계로 하여금 위에 설명된 동작들을 수행하도록 하는 지시들을 포함한다. 다른 관련된 양상들에서, 적어도 하나의 프로세서는 위에 설명된 액션들을 수행하도록 구성된다.
다른 양상들에서, 무선 장치는 미리 결정된 장치 자원을 활용하도록 동작할 수 있는 애플리케이션을 무선 장치 상에서 실행하기 위한 수단을 포함하는데, 상기 무선 장치는 미리 결정된 장치 자원 중 제 1 자원을 포함한다. 또한, 상기 장치는 외부 장치를 무선 장치에 접속시키기 위한 수단을 포함하는데, 상기 외부 장치는 미리 결정된 장치 자원 중 제 1 자원을 포함한다. 또한, 상기 장치는 미리 결정된 자원 중 제 1 자원을 활용하는 것과 미리 결정된 자원 중 제 2 자원을 활용하는 것 사이에서 무선 장치 애플리케이션을 자동적으로 스위칭시키기 위한 수단을 포함한다.
또 다른 양상들에서, 무선 장치는 처리 엔진 및 상기 처리 엔진에 의해 액세스가능한 메모리를 포함한다. 또한, 무선 장치는 프로세서와 메모리 간의 통신과 무선 장치와 제 1 미리 결정된 장치 자원을 갖는 외부 장치 간의 통신을 바꾸도록 동작할 수 있는 통신 모듈을 포함한다. 무선 장치는 또한 통신 모듈과 통신하는 제 2 미리 결정된 장치 자원을 포함한다. 또한, 무선 장치는 메모리에 존재하며 처리 엔진에 의해서 실행될 수 있는 제 1 애플리케이션을 포함한다. 제 1 애플리케이션은 제 1 미리 결정된 장치 자원 및 제 2 미리 결정된 장치 자원 중 어느 하나를 활용하도록 동작할 수 있다. 또한, 무선 장치는 메모리에 존재하면서 처리 엔진에 의해 실행될 수 있는 선택 모듈을 포함한다. 선택 모듈은 제 1 애플리케이션의 실행 동안에 제 2 미리 결정된 장치 자원을 활용하는 것과 제 1 미리 결정된 장치 자원을 활용하는 것 사이에서 제 1 애플리케이션을 자동적으로 스위칭하도록 동작할 수 있다.
다른 양상들에서는, 무선 네트워크 상의 무선 장치에 접속된 외부 장치 상에 애플리케이션을 설치하는 방법이 외부 장치에 접속된 무서 장치로부터 명령을 수신하는 단계를 포함한다. 그 명령은 무선 장치 상에서 실행될 수 있는 애플리케이션 관리 패키지에 대한 요청을 포함하고, 여기서 상기 애플리케이션 관리 패키지는 외부 장치 상에 외부 장치 애플리케이션을 설치하도록 동작할 수 있다. 외부 장치 애플리케이션은 데이터를 교환하고 또한 무선 장치 상에서 실행되는 무선 장치 애플리케이션과 함께 실행되도록 동작할 수 있다. 또한, 상기 방법은 무선 장치에 애플리케이션 관리 패키지를 전송하는 단계를 포함한다. 관련된 양상들에서, 기계-판독가능 매체는 기계에 의해서 실행될 경우 기계로 하여금 위에 설명된 동작들을 수행하도록 야기하는 지시들을 포함한다. 다른 관련된 양상들에서, 적어도 하나의 프로세서는 위에 설명된 액션들을 수행하도록 구성된다.
또 다른 양상들에서, 장치는 외부 장치에 접속되는 무선 장치로부터 명령을 수신하기 위한 수단을 포함한다. 그 명령은 무선 장치 상에서 실행될 수 있는 애플리케이션 관리 패키지에 대한 요청을 포함하고, 여기서 상기 애플리케이션 관리 패키지는 외부 장치 상에 외부 장치 애플리케이션을 설치하도록 동작할 수 있다. 외부 장치 애플리케이션은 데이터를 교환하고 또한 무선 장치 상에서 실행되는 무선 장치 애플리케이션과 함께 실행되도록 동작할 수 있다. 또한, 상기 장치는 무선 장치에 애플리케이션 관리 패키지를 전송하기 위한 수단을 포함한다.
다른 양상들에서, 외부 장치 애플리케이션을 무선 장치에 전송하기 위한 장치는 프로세서 및 상기 프로세서와 통신하는 메모리를 포함한다. 메모리는 무선 장치 상에서 실행될 수 있는 애플리케이션 관리 패키지를 포함하고, 여기서 애플리케이션 관리 패키지는 외부 장치 상에 외부 장치 애플리케이션을 설치하도록 동작할 수 있다. 외부 장치 애플리케이션은 데이터를 교환하고 또한 무선 장치 상에서 실행되는 무선 장치 애플리케이션과 함께 실행되도록 동작할 수 있다. 또한, 상기 장치는 무선 장치에 애플리케이션 관리 패키지를 전송하기 위한 수단을 포함한다. 상기 장치는 또한 메모리에 존재하면서 프로세서에 의해 실행될 수 있는 사용자 관리자 제어 로직을 포함한다. 상기 사용자 관리자 제어 로직은 애플리케이션 관리 패키지를 무선 네트워크를 통해서 무선 장치에 전송하도록 구성된다.
또한, 다른 양상들에서, 무선 장치에 접속된 외부 장치 상의 장치 자원을 사용하는 방법은 무선 장치에서 무선 장치 애플리케이션을 수신하는 단계를 포함한다. 상기 방법은 무선 장치 애플리케이션을 실행하는 단계를 더 포함하고, 그로 인해서 상기 무선 장치 애플리케이션은 장치 기능-관련 데이터를 무선 장치 상의 메모리에 기록한다. 또한, 상기 방법은 추가 메모리 자원들이 무선 장치 애플리케이션에 의해서 요구되는지를 자동적으로 결정하는 단계를 포함한다. 이로써, 상기 방법은 이용가능한 메모리를 포함하는 외부 장치를 무선 장치에 접속시키는 단계를 포함한다. 또한, 상기 방법은 외부 장치에 무선 장치 인터페이스 컴포넌트들을 자동적으로 설치하는 단계 및 외부 장치의 이용가능한 메모리에 기능-관련 데이터를 기록하는 단계를 포함한다. 추가적으로, 일부 양상들에서, 상기 방법은 무선 장치가 외부 장치 상에서 원격 서버로의 네트워크 접속을 자동적으로 검출하는 단계, 및 외부 장치에서 검출된 네트워크 접속을 통해서 저장된 기능-관련 데이터를 원격 서버에 전송하는 단계를 포함한다.
기재된 실시예들은 설명을 위해서 제공될 뿐 기재된 실시예들을 제한하지 않도록 제공되는 첨부된 도면들과 함께 이후로 설명될 것이고, 도면들에서는 동일한 명칭들이 동일한 엘리먼트들을 나타낸다.
도 1은 외부 장치의 무선 장치 중앙 제어를 제공하기 위한 시스템의 일 양상에 대한 개략도.
도 2는 도 1의 무선 장치의 블록도에 대한 일 양상을 나타내는 도면.
도 3은 도 1의 외부 장치 관리자의 블록도에 대한 일 양상을 나타내는 도면.
도 4는 도 1의 원격 서버의 블록도에 대한 일 양상을 나타내는 도면.
도 5는 도 1의 외부 장치의 블록도에 대한 일 양상을 나타내는 도면.
도 6은 도 1의 셀룰러 전화기 네트워크 양상에 대한 일 양상을 나타내는 도면.
도 7은 도 1의 무선 장치의 동작에 대한 양상들과 연관된 흐름도.
도 8은 도 7의 동작에 대한 양상들과 연관된 흐름도.
도 9는 도 1의 원격 서버의 동작에 대한 일 양상과 연관된 흐름도.
외부 장치들과 상호작용하는 무선 장치의 기능을 확장하기 위한 장치 및 방법이 여기서 설명된다. 이러한 장치 및 방법들은 접속가능한 외부 컴퓨팅 장치의 무선 장치-중앙 제어(핸드셋-중앙 제어로도 지칭됨)를 제공할 수 있다. 일부 양상들에서는, 예컨대, 무선 장치가 외부 컴퓨팅 장치의 하나 이상의 장치 자원들을 제어하기 위해 활용될 수 있다. 이를테면, 무선 장치는 외부 장치 상에서 저장 성능 및/또는 네트워크 접속과 같은 자원을 활용할 수 있다. 게다가, 다른 양상들에서 는, 무선 장치의 제어 하에서, 사용자는 예컨대 "주문(on-demand)" 형태로 외부 컴퓨팅 장치 애플리케이션들을 설치할 수 있을 뿐만 아니라 외부 컴퓨팅 장치 상에 이미 설치된 기존 애플리케이션들에 대한 업그레이드들 및/또는 패치들(patches)을 설치할 수 있다.
하나의 비-제한적인 시나리오에서는, 예컨대, 설명된 장치가 무선 장치 기능의 필드-기반 테스팅, 모니터링 및/또는 분석에 유용하다. 이러한 시나리오에서, 기술자는 원하는 기능을 수행하기 위해서 무선 장치-기반 애플리케이션을 활용할 수 있고, 이어서 (1) 외부 장치 자원을 이용가능하거나 적절할 때 활용할 수 있고, 및/또는, (2) 무선 장치 애플리케이션과 함께 동작하기 위해 외부 장치 상에 보충 애플리케이션을 다운로딩할 수 있다. 여하튼, 기재된 실시예들은 효율을 향상시키는 것과 또한 무선 장치와 외부 장치 간의 상호작용을 자동화하는 것을 가능하게 한다. 이를테면, 기재된 양상들을 통해서, 무선 장치 애플리케이션은 외부 장치와의 통신을 자동적으로 설정할 수 있고, 기존 장치 구동기(driver)들 및 애플리케이션들을 자동적으로 스캔할 수 있으며, 무선 장치 상에서 실행되는 및/또는 계획된 애플리케이션 활성도에 관련되는 새로운 및/또는 업데이팅된 구동기들 및/또는 애플리케이션들을 자동적으로 로딩할 수 있다.
도 1은 접속가능한 외부 컴퓨팅 장치(106)의 자원들을 이용함으로써(leveraging) 및/또는 무선 장치(102) 상에서 실행되는 무선 애플리케이션(114)을 제어 및/또는 모니터링하기 위해 외부 컴퓨팅 장치(106) 상에 실행가능한 애플리케이션 모듈(136)을 설치함으로써 무선 장치(102)의 기능을 확장하도록 동작할 수 있는 시스템(100)의 일 양상을 나타낸다.
외부 장치 자원을 활용하는 양상들에서는, 예컨대, 무선 장치(102)가 무선 애플리케이션(114)이 설치되어 있는 컴퓨터 플랫폼(112)을 포함할 수 있다. 예컨대, 무선 애플리케이션(114)은 무선 장치(102)의 미리 결정된 기능을 테스트 및/또는 모니터링하고 또한 대응하는 데이터 및/또는 대응하는 장치 상태 정보를 기록하도록 동작할 수 있는 진단- 및/또는 모니터링-타입 애플리케이션을 포함할 수 있다. 무선 장치(114)에 의해서 수집되는 이러한 정보는 정상적인 동작 동안에 및/또는 정해진 테스트의 실행에 대해서 무선 장치(102)의 미리 결정된 기능 파라미터들을 분석하는데 사용될 수 있다. 여하튼, 무선 애플리케이션(114)은 무선 애플리케이션(114)의 실행 동안에, 무선 장치(102)와 연관된 임의의 하드웨어 및/또는 소프트웨어 컴포넌트를 포함해서 하나 이상의 무선 장치 자원들(115)을 활용할 수 있다. 예컨대, 하드웨어 및/또는 소프트웨어 컴포넌트는 메모리, 데이터 저장, 처리 성능, 디스플레이, 오디오 스피커 및/또는 촉각-반응 메커니즘과 같은 출력 메커니즘, 키, 키보드, 터치 스크린, 음성 인식 모듈 및/또는 마우스와 같은 입력 메커니즘, 통신 인터페이스 등과 같은 컴포넌트들 중 하나 또는 임의의 결합을 포함할 수 있지만, 이러한 것들로 제한되지는 않는다.
무선 장치(114)가 존재하는 무선 장치 자원(115)을 모두 소모하거나 또는 무선 장치 자원(115)에 의해 수행되는 기능이 최적의 상황에 미치지 못하거나 및/또는 일부 방식으로 제한되는 경우들이 있을 수 있다. 이러한 경우들에서는, 무선 장치(102)가 무선 장치 자원(115)을 보충하기 위해서 다른 자원들을 찾는 것이 유리할 수 있다. 예컨대, 무선 장치(102)는 또한 무선 애플리케이션(114)에 의해 활용될 수 있는 외부 장치 자원(132)을 갖는 외부 장치(106)와의 통신들을 개시하도록 동작할 수 있는 외부 장치 관리자(120)를 포함할 수 있다. 예컨대, 외부 장치 관리자(120)는 하나 이상의 인터페이스 구동기들(134)을 포함할 수 있고, 외부 장치 관리자(120)는 외부 컴퓨팅 장치(106) 상에 이러한 구동기들 중 선택되는 하나 이상을 설치하도록 동작할 수 있다. 특히, 이러한 양상들에서, 하나 이상이 인터페이스 구동기(134) 중 선택된 구동기들은 무선 애플리케이션(114)에 의한 후속적인 활용을 위해서 각각의 외부 장치 자원(132)과 무선 애플리케이션(114)을 인터페이싱하도록 동작할 수 있다. 예컨대, 외부 장치 자원(132)은 외부 장치(106)의 임의의 하드웨어 및/또는 소프트웨어 컴포넌트를 포함할 수 있다. 이를테면, 외부 장치 자원(132)은 메모리, 데이터 저장, 처리 성능, 디스플레이, 오디오 스피커 및/또는 촉각 반응 메커니즘과 같은 출력 메커니즘, 키, 키보드, 터치 스크린, 음성 인식 모듈 및/또는 마우스와 같은 입력 메커니즘, 통신 인터페이스 등 중 하나 또는 임의의 결합을 포함할 수 있지만, 이러한 것들로 제한되지는 않는다.
예컨대, 외부 장치 자원(132)이 메모리 및/또는 데이터 보관소를 포함하는 경우에는, 무선 애플리케이션(114)이 존재하는 무선 장치 메모리로부터 외부 장치 메모리 또는 데이터 보관소로 수집된 데이터를 로그 파일들의 형태와 같은 형태로 전송할 수 있다. 예컨대, 이러한 데이터 전송은 존재하는 무선 장치 메모리가 미리 결정되어진 사용된 용량 임계치에 도달하였을 때 발생할 수 있거나, 및/또는, 상기 데이터는 자신들이 스트리밍 형태로 수집되었을 때 전송될 수 있다. 다른 예에서, 외부 장치 자원(132)은 네트워크(110)로의 통신 링크(140)를 포함할 수 있다. 무선 장치(102)가 서버(104)로의 통신 링크를 갖지 않는 경우나 혹은 외부 장치(106)의 통신 링크(140)가 동일한 무선 장치-기반 링크보다 비교적 더 빠르거나 및/또는 더 효율적인 경우에는, 무선 장치에 존재하는 애플리케이션(114)이 원격 서버(104)와 통신할 수 있기 위해서 외부 장치 자원(132)에 액세스할 수 있다. 따라서, 이러한 양상들에서는, 외부 장치 관리자(120)가 무선 애플리케이션(114)으로 하여금 하나 이상의 외부 장치 자원들(132)을 활용할 수 있도록 하기 위해서 동작될 수 있다.
외부 장치 상에 애플리케이션들을 다운로딩하는 양상들에서는, 예컨대, 외부 장치 관리자(120)는 외부 컴퓨팅 장치(106) 상에 애플리케이션 모듈(136)을 설치하도록 동작할 수 있다. 애플리케이션 모듈(136)은 관리 및/또는 제어 기능과 같은 것에 대해서 무선 애플리케이션(114)과 인터페이싱하거나 및/또는 무선 애플리케이션(114)의 동작과 관련하여 사후-처리 성능들을 제공하도록 동작할 수 있다.
예컨대, 관리 및 제어 경우에, 애플리케이션 모듈(136)은 무선 애플리케이션(114)과 연관되면서 또한 무선 애플리케이션(114)의 실행과 연관된 파라미터들을 제어, 관리 및 변경하는 기능적인 능력을 구비하는 애플리케이션을 포함할 수 있다. 이를테면, 일부 양상들에서, 무선 애플리케이션(114)은 무선 장치(102)로부터의 진단 데이터를 모을 수 있거나, 및/또는, 상기 무선 장치(102) 상에서 성능 테스트를 실행할 수 있고, 애플리케이션 모듈(135)은 어떤 데이터가 모이는지 및/또는 어떤 테스트들이 실행되는지, 그 데이터가 어떻게 모이는지 및/또는 그 테스트들이 어떻게 수행되는지, 및 그 데이터 및/또는 그 성능 테스트 결과들이 애플리케이션 모듈(136) 또는 어떤 다른 규정된 주소에 어떻게 보고되는지를 제어하는 능력을 제공한다. 다른 경우에, 애플리케이션 모듈(136)은 무선 애플리케이션(114)에 대한 사용을 더욱 쉽게 하기 위한 것과 같이 무선 애플리케이션(114)과의 통신에서 사용하기 위한 툴(tool)을 제공할 수 있다. 예컨대, 만약 외부 장치(106)가 무선 장치(102) 상에 있는 대응하는 디스플레이 및 키보드보다 더 큰 디스플레이 및 더 큰 키보드를 구비한다면, 애플리케이션 모듈(136)은 무선 애플리케이션(114)을 관리 및 제어하기 위해 외부 장치(106) 상에서 이러한 사용자 인터페이스 컴포넌트들을 활용하는 성능을 제공할 수 있다.
게다가, 예컨대, 무선 장치(102)는 원격 서버(104)에 접속되는 네트워크(110)로의 무선 주파수(RF) 링크와 같은 무선 인터페이스(138)를 구비할 수 있다. 본 예에서, 무선 애플리케이션(114)은 인터페이스(138)를 통해서 원격 서버(104)로부터 다운로딩되는 장치 구동기/애플리케이션 모듈 관리 패키지(122)를 사용하여 "주문(on-demand)" 형태로 애플리케이션 모듈(136)을 설치하도록 동작할 수 있다. 일 양상에서, 장치 구동기/애플리케이션 모듈 관리 패키지(122)는 외부 컴퓨팅 장치(106)의 구성가능한 장소에 애플리케이션 모듈(136)을 설치 및/또는 설치해제(uninstall)한다. 이를테면, 위에서 설명된 바와 같이, 외부 장치(106)에 애플리케이션 모듈(136)을 제공하기 위한 무선 장치(102)의 성능은 필드 테스팅과 같은 상황들에서 바람직할 수 있는데, 여기서는 원격 서버로의 무선 액세스가 외부 컴퓨팅 장치(106) 상에 애플리케이션 모듈(136)을 설치하는 가장 편리한 방법일 수 있다.
대안적으로, 일부 상황들에서는, 외부 컴퓨팅 장치(106) 상에 존재하는 애플리케이션 모듈(136)은 비-통용적(non-current) 버전일 수 있다. 시스템(100)의 다른 양상에서, 외부 장치 관리자 모듈(134)은 현존하는 애플리케이션 모듈(136)에 대응하는 업그레이드 및/또는 패치를 원격 서버(104)로부터 검색하고 또한 외부 컴퓨팅 장치(106)의 메모리(506)(도 5)에 그 업그레이드 및/또는 패치를 또한 설치하도록 동작할 수 있다. 현존하는 애플리케이션 모듈(136)은 무선 장치(102) 및/또는 외부 장치 관리자(134)에 의해 미리 설치된 모듈일 필요가 없다는 것을 알아야 한다.
무선 장치(102)는 통신 인터페이스(108)를 통해 외부 컴퓨팅 장치와 통신할 수 있다. 예컨대, 통신 인터페이스(108)는 외부 장치에서 이용될 수 있는 물리적인 인터페이스 또는 무선 인터페이스를 포함해서 임의의 통신 포트로의 유선 또는 케이블, 또는 임의의 인터페이스 메커니즘을 포함할 수 있다. 예컨대, 통신 인터페이스(108)는 BLUETOOTH 기술 인터페이스와 같은 무선 원격통신 인터페이스, 직렬 포트, USB(universal serial bus) 포트, FIREWIRE 직렬 버스 인터페이스, 적외선 인터페이스 및 단거리 무선 주파수 인터페이스 중 하나 또는 그것들의 임의의 결합을 포함할 수 있지만, 이러한 것들로 제한되지는 않는다.
비록 본 명세서에 기재된 실시예들은 핸드-헬드 무선 장치들 상에서 데이터를 모니터, 로그 및/또는 분석하기 위해 실행될 수 있는 무선 장치에 존재하는 애플리케이션(114)에 관한 것일 수 있지만, 시스템(100)의 장치 및 방법은 비-제한적이며, 또한 외부 장치(106)에서 이용가능할 수 있는 하나 이상의 자원들을 활용하도록 동작할 수 있는 임의의 무선 장치에 존재하는 애플리케이션(114)에 관한 것일 수 있다.
도 2를 참조하면, 무선 장치(102)는 셀룰러 전화기(102), PDA(personal digital assistant), 양방향 텍스트 페이저, 휴대용 컴퓨터, 및 심지어 무선 통신 포털을 갖는 별도의 컴퓨터 플랫폼과 같은 임의의 타입의 컴퓨터화된 무선 장치(102)를 포함할 수 있고, 이들은 또한 네트워크 또는 인터넷으로의 유선 접속을 가질 수도 있다. 무선 장치(102)는 원격 센서들, 진단 툴들, 및 데이터 중계부들과 같이, 최종 사용자를 갖지 않지만 무선 네트워크(110)를 통해 데이터를 간단히 통신하는 원격-슬레이브 또는 다른 장치일 수 있다.
무선 장치(102)는 컴퓨터 플랫폼(206)에 상호접속되는 입력 메커니즘(202) 및 출력 메커니즘(204)을 또한 구비할 수 있다. 입력 메커니즘(202)은 무선 장치(102)로의 입력을 생성하도록 동작할 수 있으며, 키 또는 키보드, 마우스, 터치-스크린 디스플레이, 및 음성 인식 모듈과 같은 메커니즘을 구비할 수 있다. 출력 메커니즘(204)은 예컨대 정보를 무선 장치(102)의 사용자에게 중계하기 위해 디스플레이, 오디오 스피커, 및 촉각 반응 메커니즘을 구비할 수 있다.
컴퓨터 플랫폼(112)은 메모리(206)를 구비할 수 있는데, 상기 메모리(206)는 판독 전용 및/또는 랜덤-액세스 메모리(RAM 및 ROM), EPROM, EEPROM, 플래시 카드들, 또는 컴퓨터 플랫폼들에 공통적인 임의의 메모리와 같은 휘발성 및 비휘발성 메모리를 또한 포함할 수 있다. 또한, 메모리(206)는 하나 이상의 플래시 메모리 셀들을 구비할 수 있거나, 또는 자기 매체들, 광학 매체들, 테이프, 혹은 소프트 또는 하드 디스크와 같은 임의의 2차 또는 2차 저장 장치일 수 있다.
게다가, 컴퓨터 플랫폼(112)은 처리 어셈블리(212)를 구비할 수 있는데, 상기 처리 어셈블리(212)는 ASIC(application-specific integrated circuit)일 수 있거나 또는 메모리(206)에 존재하는 애플리케이션 프로그램들을 실행하도록 동작할 수 있는 다른 칩셋, 프로세서, 로직 회로, 또는 다른 데이터 처리 장치일 수 있다. 처리 어셈블리(212)는 무선 장치(102)의 기능 및 네트워크(110)에서 무선 장치(102)의 동작을 가능하게 하는 하드웨어, 소프트웨어, 펌웨어, 실행가능 지시들, 데이터, 및 그것들의 결합으로 구현되는 여러 처리 서브시스템들(214)을 구비한다.
더 상세하게는, 처리 서브시스템들(162)은 통신들의 개시 및 유지를 허용할 수 있고, 또한 API 층(210)으로부터 데이터 판독들 및 데이터 기록들을 수신하는 임의의 서브시스템 컴포넌트를 포함하여 컴퓨터 플랫폼(206) 상에서 실행되는 다른 장치들 및 애플리케이션들과의 데이터 교환을 허용할 수 있다. 셀룰러 전화기에서와 같은 일 양상에서, 처리 서브시스템들(214)은 진단, 비휘발성 메모리, 파일 시스템, 전송, 수신, 탐색기, 층 1, 층 2, 층 3, 메인 제어, 원격 절차, 핸드셋, 전력 관리, 디지털 신호 프로세서, 비디오, 캠코더, 보코더, 메시징, 통화 관리자, 위치 결정, 위치결정 엔진, 사용자 인터페이스(UI), 슬립, 제한된 서비스들, 보안, 인증, USIM/SIM, 음성 서비스들, 그래픽들, 및 MPEG, MPEG 등과 같은 다중매체를 포함하는 이러한 컴포넌트들을 지원하는 시스템 모니터들을 구비할 수 있다.
API 층(210)은 메모리에 존재하는 애플리케이션 프로그램들을 처리 어셈블리(212) 및 거기에 포함된 서브시스템들과 인터페이스시키는 소프트웨어 컴포넌트들을 포함할 수 있다. 일 양상에서, API 층(210)은 각각의 무선 장치(102) 상에서 실행되는 런타임 환경이다. 하나의 이러한 런타임 환경은 캘리포니아 샌디에고에 위치한 Qualcomm,Inc.에 의해서 개발되어진 BREW(Binary Runtime Environment for Windows) 소프트웨어이다. 예컨대 무선 컴퓨팅 장치들 상에서 애플리케이션들의 실행을 제어하도록 동작하는 다른 런타임 환경들이 활용될 수도 있다.
무선 애플리케이션들은 원격 서버(104)와 같은 무선 장치(102)에 물리적으로 부속되거나 또는 그와 통신하는 임의의 컴퓨터 장치로부터 다운로딩하는 것을 포함한 여러 메커니즘들에 의해서 메모리(206)에 로딩될 수 있다.
하나의 이러한 무선 애플리케이션은 무선 장치(102)의 미리 결정된 기능적인 성능을 모니터 및/또는 테스트하고 또한 대응하는 기능-관련 데이터(121)를 기록하도록 동작할 수 있는 무선 애플리케이션(114)을 포함할 수 있다. 예컨대, 무선 애플리케이션(114)은 예컨대 모니터링 및/또는 기록할 데이터는 무엇인지, 수행할 테스트들을 무엇인지 및 수집된 데이터를 어떻게 보고할 것인지를 지시하는 파라미터들을 갖는 구성(123)을 포함할 수 있다. 예컨대, 기능-관련 데이터(121)는 처리 서브시스템들(214)로부터의 기록들과 같은 데이터, 장치 컴포넌트 상태 정보, OTA(over-the-air) 메시지들, 및 모니터링된 및/또는 테스트된 활성도 이전에, 그 동안에, 및/또는 그 이후에 무선 장치 기능 및/또는 무선 장치의 상태를 반영할 수 있는 임의의 다른 데이터를 포함할 수 있지만, 이러한 것들로 제한되지는 않는다. 일부 양상들에서, 무선 애플리케이션(114)은 기능-관련 데이터(121)를 로그(124)에 저장할 수 있는 반면에, 다른 양상들에서는, 기능-관련 데이터(121)가 본 명세서에 설명된 원리들에 기초하여 외부 장치(106)(도 1)에 스트리밍될 수 있다.
다른 무선 애플리케이션은 접속된 외부 컴퓨팅 장치(106)의 자원들에 대한 액세스를 무선 애플리케이션(114)에 제공하도록 구성되는 하드웨어, 소프트웨어, 펌웨어, 실행가능 지시, 및 데이터 중 하나 또는 이들의 임의의 결합을 포함할 수 있는 외부 장치 관리자(120)를 구비할 수 있다.
도 2 및 도 3을 참조하면, 외부 장치 관리자(120)는 외부 장치 자원들(132)(도 1)을 액세스하기 위한 그리고 외부 장치(106) 상에서 실행가능한 애플리케이션 모듈(136)을 설치하기 위한 무선 장치-중앙 메커니즘을 제공하도록 동작할 수 있다. 외부 장치 관리자(120)는 무선 장치(102) 상에 존재하는 임의의 애플리케이션에 의해서 활용될 수 있다는 것을 알아야 한다. 일 양상에서, 외부 장치 관리자(120) 및 무선 애플리케이션(114)은 개별적인 모듈들일 수 있다. 다른 실시예들에서, 외부 장치 관리자(120)는 무선 애플리케이션(114)의 소프트웨어 내에 통합될 수 있다.
외부 장치 관리자(120)는 외부 장치 관리자(120)의 모든 기능들을 관리하기 위해서 사용자 인터페이스(302)와 함께 동작할 수 있는 제어 로직(328)을 포함할 수 있다. 예컨대, 무선 장치(102)에 대한 외부 장치(106)의 초기 접속 시에, 외부 장치 관리자(120)는 무선 장치(102)로 하여금 외부 장치(106)의 자원들에 액세스할 수 있도록 하기 위해서 하나 이상의 인터페이스 구동기들(134)을 외부 장치(106) 상에 로딩하는 것을 개시할 수 있다. 인터페이스 구동기(134)는 무선 애플리케이션(114)으로 하여금 각각의 외부 장치 자원(132)과 통신하고 또한 명령들을 그 외부 장치 자원(132)에 보내도록 할 수 있다. 예컨대, 인터페이스 구동기(134)는 외 부 장치(106)에 의해서 수신되는 데이터를 예컨대 메모리 장치, 디스플레이 유닛, 및/또는 네트워크 어댑터와 같은 적절한 장치 자원에 보내도록 동작할 수 있다. 또한, 외부 장치 관리자(120)는 예컨대 하나 이상의 애플리케이션 모듈들(136)을 설치 및 설치해제하기 위해서 외부 장치(106)에 대해 장치 구동기/애플리케이션 모듈 관리 패키지(122)의 실행을 제어할 수 있다.
또한, 일부 상황들에서는, 외부 장치(106)가 예컨대 Win32, Linux 등과 같은 상이한 운영 시스템들을 각각 포함하고 있는 임의의 다수의 상이한 타입의 개인용 컴퓨터들 중 한 개인용 컴퓨터를 포함할 수 있다. 이로써, 외부 장치 관리자(120)는 사용자로 하여금 무선 장치(102)에 접속되는 외부 장치(106)에 특정된 장치 타입을 선택할 수 있도록 동작할 수 있는 메커니즘, 즉, 지원되는 외부 장치 타입들을 포함하고 있는 외부 장치 목록(325)을 갖는 외부 장치-타입 선택 모듈(324)을 구비할 수 있다. 선택되는 장치 타입은 외부 장치-타입 파라미터(326)로서 저장될 수 있으며, 원격 서버(104)에 전송될 수 있다. 특히, 외부 장치-타입 파라미터(326)는 장치 제조자, 장치 모델, 장치 운영 시스템, 운영 시스템 버전, 장치 하드웨어 컴포넌트, 장치 하드웨어 컴포넌트 버전, 장치 소프트웨어 컴포넌트, 장치 소프트웨어 컴포넌트 버전, 및 무선 장치(102)와 외부 장치(106) 간에 인터페이스를 설정하는데 유용할 수 있는 임의의 다른 정보 중 하나 또는 이들의 임의의 결합을 포함할 수 있지만, 이러한 것들로 제한되지는 않는다.
또한, 일부 양상들에서는, 외부 장치 관리자(120)가 특정 외부 장치에 대한 관련 애플리케이션들 및/또는 장치 구동기들을 모으기 위해서 원격 서버(104)에 요청을 전송하도록 동작할 수 있다. 예컨대, 그 요청은 외부 장치-타입 파라미터(326)를 포함할 수 있는데, 상기 외부 장치-타입 파라미터(326)는 원격 서버(104)에 의해서 대응하는 애플리케이션들 및/또는 장치 구동기들과 상관될 수 있다. 이로써, 그 요청에 응하여, 외부 장치 관리자(120)는 부속된 외부 장치(106)에 특정적인 주문형(on-demand) 애플리케이션/장치 구동기 모듈(308)을 수신하여 저장할 수 있다. 예컨대, 애플리케이션/장치 구동기 모듈(308)은 이용가능한 애플리케이션 목록(309) 및 이용가능한 장치 구동기 목록(311)을 포함할 수 있고, 그로 인해서 사용자 하여금 외부 장치(106) 상에 설치할 특정 애플리케이션 및/또는 장치 구동기를 선택할 수 있게 한다.
이용가능한 애플리케이션 목록(309) 및/또는 이용가능한 구동기 목록(311)으로부터의 선택에 기초해서, 외부 장치 관리자(120)는 다른 요청을 생성하여 원격 서버(104)에 전송할 수 있다. 예컨대, 그 요청은 애플리케이션/장치 구동기 식별자를 포함할 수 있는(그러나, 이러한 것으로 제한되지는 않음) 선택된 애플리케이션/장치 구동기 파라미터(316)를 포함할 수 있다. 응답으로, 외부 장치 관리자(120)는 원격 서버(104)로부터 무선 장치(102)에 다운로딩될 수 있는 대응하는 장치 구동기/애플리케이션 모듈 관리 패키지(122)를 원격 서버(104)로부터 수신할 수 있다. 장치 구동기/애플리케이션 모듈 관리 패키지(122)는 무선 장치(102) 및 무선 애플리케이션(114)과 인터페이스하기 위해서 외부 장치(106)에 의해 실행될 수 있는 요청된 애플리케이션 및/또는 장치 구동기를 포함할 수 있다.
게다가, 원격 서버(104) 및/또는 외부 장치(106)와의 통신 중에 임의의 시점 에서, 외부 장치 관리자(120) 내에 배치되는 허가 로직(306)은 무선 장치(102)의 신원을 확인하도록 동작할 수 있다. 허가 방식들은 예컨대 사용자이름/패스워드 정보와 같은 사용자 정보(310)를 교환하는 것을 포함하지만, 이러한 것으로 제한되지는 않는다.
외부 장치(120)는 예컨대 주문형 애플리케이션/장치 구동기 모듈(308), 인터페이스 구동기들(134), 및 장치 구동기/애플리케이션 모듈 관리 패키지(122)를 원격 서버(104)와 같은 원격 서버로부터 다운로딩하기 위해서 상기 원격 서버의 네트워크 주소를 가질 수 있는 구성 설정들(322)을 또한 포함할 수 있다.
외부 장치 관리자 제어 로직(328)은 또한 제어 명령(320)을 생성하여 원격 서버(104) 및/또는 외부 장치(106)에 전송하도록 동작할 수 있다. 예컨대, 제어 명령(320)은 예컨대 장치 구동기들(134), 외부 장치-타입 모듈(324), 주문형 애플리케이션/장치 구동기 모듈(328), 및 장치 구동기/애플리케이션 모듈 관리 패키지(122)와 같은 데이터의 성공적인 수신 시에 위에 설명된 요청 메시지들 및/또는 원격 서버(104)에 전송되는 확인응답 메시지를 포함할 수 있다. 또한, 예컨대, 제어 명령(320)은 외부 컴퓨팅 장치(106) 상에서 실행될 수 있는 동작을 개시하는 임의의 메시지일 수 있다. 예컨대, 이러한 동작들은 메모리(506)(도 5) 내의 특정 장소에 수신된 데이터를 저장하는 것, 구성가능한 네트워크(110)로부터 데이터를 전송/수신하는 것, 및 이미 설치된 애플리케이션 모듈을 설치해제하는 것 중 하나 또는 이들의 결합을 포함할 수 있지만, 이러한 것들로 제한되지는 않는다.
또한, 외부 장치 관리자(120)는 선택 로직(331)을 구비한 외부 장치 자원 선택 모듈(330)을 포함할 수 있는데, 상기 선택 로직(331)은 외부 장치(106) 상의 이용가능한 외부 장치 자원들(132)을 검사하고 또한 활용할 외부 장치 자원들(132) 중 하나 이상을 선택하는 능력을 무선 장치(102)의 사용자에게 제공하도록 동작할 수 있다. 일부 양상들에서, 각각의 존재하는 무선 장치 자원(115)은 각 컴포넌트의 현재 및/또는 기존의 기능적인 성능에 관한 하나 이상의 파라미터들을 식별하는 무선 장치 자원 특징(117)(도 2)을 포함한다. 마찬가지로, 각각의 외부 장치 자원(132)(도 5)은 각 컴포넌트의 현재 및/또는 기존의 기능적인 성능에 관한 하나 이상의 파라미터들을 식별하는 외부 장치 자원 특징(133)(도 5)을 포함할 수 있다. 이로써, 일부 양상들에서는, 외부 장치 자원 선택 모듈(330)이 각 무선 장치 자원 특징(117)의 상태 및 외부 장치 자원 특징(133)의 대응하는 상태를 자동적으로 모니터링하고, 또한 그들의 각 상태들에 따라서 무선 애플리케이션(114)에 의한 그들의 활용을 스위칭하도록 동작할 수 있다. 이와 관련해서, 선택 로직(331)은 어떤 자원이 임의의 정해진 시간에 최적인지를 결정하기 위해 미리 결정된 규칙들, 알고리즘들, 루틴들, 퍼지(fuzzy) 로직, 발견적 관계들(heuristic relationships) 등을 포함할 수 있다. 또한, 선택 로직(331)은 어떤 각각의 장치 자원을 사용할 것인지에 관해 무선 장치 사용자에게 선택권을 또한 제공할 수 있다.
예컨대, 무선 애플리케이션(114)이 원격 서버(104)와 같은 다른 장치에 수집된 데이터(121)를 전송할 필요가 있는 때와 같은 한 시나리오에서는, 외부 장치 관리자(120)가 이용가능한 무선 장치 통신 인터페이스 성능과 함께 제공될 수 있는 하나 이상의 외부 장치 통신 인터페이스 성능들에 대한 목록을 제공할 수 있다. 이러한 목록은 무선 장치(102)의 사용자로 하여금 상황의 특별한 요건들에 따라 하나 이상의 원하는 통신 인터페이스들을 선택할 수 있게 한다. 예컨대, 외부 장치(106)는 무선 장치(102) 상에서 이용가능한 무선 인터페이스(138)보다 더 빠른 네트워크(110)로의 네트워크 접속을 가질 수 있고, 일부 시나리오들에서는 더 빠른 접속이 필요할 수 있다. 다른 시나리오들에서는, 그러나, 외부 장치가 비교적 느리거나 비교적 낮은 대역폭을 갖는 대안적인 데이터 접속보다 더욱 비용이 많이 드는 비교적 빠르거나 비교적 높은 대역폭 데이터 접속을 가질 수 있다. 이어서, 무선 장치(102)의 사용자는 추가적인 비용이 들어갈 가치가 있는지를 결정할 수 있다. 이를테면, 만약 전송될 데이터가 급한 것이 아니라면, 비교적 느린 데이터 접속으로도 충분할 수 있다. 여하튼, 외부 장치 자원 선택 모듈(330)은 이용가능한 자원들의 식별을 제공하고 또한 무선 애플리케이션(114)과 함께 사용하기 위한 하나 이상의 필요한 자원들의 선택을 가능하게 하도록 구성될 수 있다. 게다가, 외부 장치 자원 선택 모듈(330)은 또한 미리 결정된 규칙들, 설정들, 퍼지 로직, 발견적 관계들, 신경 네트워크들 등에 기초하여 존재하는 자원들 및/또는 외부 장치 자원들의 최적의 구성을 분석하여 자동적으로 선택하도록 동작할 수 있다.
또한, 외부 장치 관리자(120)는 접속된 외부 장치(106) 상에 존재하는 장치 구동기들 및 애플리케이션들에 관한 정보를 모으도록 동작할 수 있는 외부 장치 검사 모듈(332)을 포함할 수 있다. 예컨대, 외부 장치 검사 모듈(332)은 검사 결과들(333)을 수집하도록 동작할 수 있는데, 상기 검사 결과들(333)은 이름들, 식별자들, 버전 번호들, 및 각각의 장치 구동기 및/또는 애플리케이션이 통용되는지를 식 별하는데 있어 유용한 임의의 다른 정보를 포함해서 장치 구동기들 및/또는 애플리케이션들의 목록들을 포함할 수 있다. 또한, 외부 장치 검사 모듈(332) 및/또는 외부 장치 관리자(120)는 주문형 장치 구동기/애플리케이션 관리 모듈(308)에 의해 원격 서버(104)로부터 검색될 수 있는 것과 같은 각 장치 구동기 및/또는 애플리케이션의 공지된 현재 버전의 목록을 그 검사 결과들(3333)과 비교하도록 동작할 수 있다. 여하튼, 아래에서 설명되는 바와 같이, 외부 장치 검사 모듈(332) 및/또는 외부 장치 관리자(120)는 검사 결과들(333)의 목록화된 장치 구동기들 및/또는 애플리케이션들 중 만약 있다면 어느 것들이 통용되지 않는지를 식별하는 목록을 생성하도록 동작할 수 있고, 그럼으로써 후속하는 업데이팅을 가능하게 한다.
원격 서버(104) 및 외부 장치(106) 중 하나 또는 둘 모두와 무선 장치(102) 사이의 통신은 통신 모듈(224)에 의해 설정될 수 있다. 통신 모듈(224)은 무선 장치(102), 외부 장치(106), 무선 네트워크(110) 및 무선 네트워크(110)에 접속되는 다른 장치들의 여러 컴포넌트들 간에 통신을 가능하게 하도록 동작할 수 있는 하드웨어, 소프트웨어, 실행가능 지시들, 데이터, 및 그것들의 결합 중 어느 하나에서 구현될 수 있다.
통신 모듈(224)은 무선 장치(102)의 존재한 컴포넌트들 간에 그리고 무선 장치(102)와 임의의 다른 외부 장치 간에 데이터 및 통신들을 전송 및/또는 수신하도록 통신할 수 있는 임의의 컴포넌트를 포함할 수 있다. 예컨대, 통신 모듈(224)은 무선 장치(102)로 들어가는 임의의 지점 및/또는 통신 모듈(224)로부터 나가는 임의의 지점을 포함할 수 있는 임의의 포트 및/또는 인터페이스를 포함해서, 전송 및 수신 연쇄 컴포넌트들을 구비한다.
일부 양상들에서, 무선 장치(102) 및 원격 장치들, 예컨대 원격 서버(104)는 무선 네트워크(110)를 통해서 제한된-액세스 통신들을 통신할 수 있다. 통신 채널은 제한된 서비스 구성(230)에 기초하여 설정될 수 있고, 무선 장치(102) 및/또는 컴퓨팅 장치(106) 중 어느 하나에 저장된 테스트 데이터를 원격 서버(104)에 전송하기 위해서나 혹은 무선 애플리케이션(114) 및 외부 장치 관리자(120)의 적어도 부분들을 무선 장치(102)에 다운로딩하기 위해서 사용될 수 있다. 제한된-액세스 통신 채널은 일반적으로 최종 사용자에게 이용가능하지 않으며, 허용가능한 타입의 통신들을 식별하는 제한된 서비스 설정(232) 및 활용될 수 있는 연관된 통신 채널들에 기초하여 구성될 수 있다. 제한된 서비스 구성(230)은 무선 네트워크(110)를 통해서 다운로딩될 수 있거나, 직렬 접속을 통해서와 같이 국부적으로 무선 장치(102)에 전송될 수 있거나, 무선 장치(102) 상에 사전로딩될 수 있다.
도 4를 참조하면, 원격 서버(104)(또는 다수의 서버들)는 임의의 타입의 프로세서 어셈블리(408), 서버, 개인용 컴퓨터, 미니 컴퓨터, 메인프레임 컴퓨터, 단말기, 또는 예컨대 무선 애플리케이션(114); 외부 장치 관리자(120); 주문형 장치 구동기/애플리케이션 모듈(308); 인터페이스 구동기(134); 및 하나 이상의 장치 구동기/애플리케이션 모듈 관리 패키지(122)와 같은 소프트웨어 에이전트들 또는 애플리케이션들을 무선 네트워크(110)를 통해서 무선 장치(102)에 전송하도록 동작할 수 있는 특수 용도의 임의의 컴퓨팅 장치 또는 일반 범용 컴퓨팅 장치 중 적어도 하나를 포함할 수 있다. 또한, 데이터를 무선 장치(102) 및 외부 장치(106)에 다 운로딩하거나 혹은 그들로부터 수신되는 데이터를 저장하기 위해서 일제히 동작하는 원격 서버(104)와 연관된 별도의 서버들 또는 컴퓨터 장치들이 존재할 수 있다.
또한, 원격 서버(104)는 원격 서버(104)를 네트워크(110)에 접속하도록 동작할 수 있는 통신 모듈(410)을 포함할 수 있다. 게다가, 통신 모듈(410)은 원격 서버(104)로 하여금 네트워크에 접속된 외부 장치(106)에 의해서 직접 액세스될 수 이게 한다.
원격 서버(104)는 또한 사용자 메모리(402) 및 메모리에 존재하는 사용자 관리자 모듈(118)을 포함할 수 있는데, 상기 사용자 관리 모듈(118)은 소프트웨어, 하드웨어, 데이터, 및 일반적으로 무선 장치(102) 및/또는 무선 장치(102), 예컨대 사용자 관리자 제어 로직(404)으로 데이터를 다운로딩하고 또한 그로부터 데이터를 다운로딩하는 것을 관리하도록 동작할 수 있는 임의의 실행가능한 지시를 포함할 수 있다.
사용자 관리자 모듈(118)은 또한 임의의 타입의 메모리 및/또는 저장 장치를 포함하면서 또한 무선 장치(102) 및/또는 무선 장치(102)로부터 수신되는 데이터를 저장하도록 동작할 수 있는 정보 보관소(repository)(406)를 포함할 수 있다.
이미 설명된 바와 같이, 원격 서버(104)는 무선 장치(102)로의 다운로딩을 위해 이용될 수 있는 무선 애플리케이션(114), 인터페이스 구동기(134), 주문형 장치 구동기/애플리케이션 모듈(308), 외부 장치 관리자(120), 및 장치 구동기/애플리케이션 모듈 관리 패키지(122)를 포함할 수 있다.
또한, 사용자 관리자 모듈(118) 내에 배치되는 허가 로직(412)이 원격 서 버(104)로/로부터 데이터를 전송 또는 수신하기 위해 시도하는 무선 장치(102)의 신원을 확인하도록 동작할 수 있다. 허가 방식들은 무선 장치(102)에 의해 전송되는 예컨대 사용자 이름/패스워드 정보와 같은 사용자 정보(310)를 교환하는 것을 포함하는데, 이러한 것으로 제한되지는 않는다(도 3 참조).
사용자 관리자 모듈(118)의 기재된 컴포넌트들의 실질적인 위치는 비제한적이며, 네트워크(110)에 접속된 서버나 다른 장치 상에 물리적으로 위치될 수 있다.
도 5를 참조하면, 비록 일부 양상들에서는 외부 장치(106)가 휴대용 랩톱 컴퓨터일 수 있지만, 외부 장치(106)의 물리적인 속성들은 비제한적이다. 예컨대, 외부 장치(106)는 임의의 타입의 랩톱 컴퓨터, 개인용 컴퓨터, 미리 컴퓨터, 메인프레임 컴퓨터, 단말기, 또는 무선 장치 애플리케이션(114)에 의해서 이용될 수 있는 예컨대 메모리, 데이터 저장부, 네트워크 접속부들, 출력 메커니즘들 등과 같은 장치 자원들을 구비한 특수한 용도의 임의의 컴퓨팅 장치나 범용의 컴퓨팅 장치 중 적어도 하나를 포함할 수 있지만, 이러한 것들로 제한되지는 않는다.
일부 양상들에서, 외부 장치(106)는 예컨대 Linux, Win32 등과 같이 메모리에 존재하는 운영 시스템(500)을 실행시키는 처리 어셈블리(512)를 포함할 수 있다. 또한, 외부 장치(106)는 무선 장치(102)로/로부터 메시지들 및 데이터를 전송 및 수신하도록 동작할 수 있는 통신 모듈(514)을 포함할 수 있다. 외부 장치(106)는 예컨대 직렬 포트, USB, FIREWIRE, BLUETOOTH, 적외선 등과 같은 임의의 이용가능한 인터페이스를 통해 무선 장치(102)와 통신할 수 있다.
외부 장치(106)는 컴퓨터 플랫폼(130)에 접속되는 입력 메커니즘(502) 및 출 력 메커니즘(504), 예컨대 LCD 스크린과 같은 디스플레이 스크린을 또한 포함할 수 있다. 입력 메커니즘(502) 및 출력 메커니즘(504)은 허가된 사용자로 하여금 무선 장치(102)로부터 다운로딩되는 애플리케이션 모듈(136)과 직접 인터페이스할 수 있고 또한 무선 장치 애플리케이션(114)과 인터페이스할 수 있도록 허용한다.
외부 장치 컴퓨터 플랫폼(130)은 하나 이상의 애플리케이션 모듈(136), 하나 이상의 인터페이스 구동기들(134), 및 접속된 무선 장치(102)로부터 수신되는 데이터를 저장하도록 구성되는 메모리(506)를 또한 포함할 수 있다. 일부 양상들에서는, 예컨대, 로그(508)가 무선 장치(102)에 의해서 수집되는 배치 파일들 및/또는 스트림 OTA 메시지들, 기능 데이터, 무선 장치 컴포넌트 상태 정보 등을 저장할 수 있다. 진단 모니터 및 로거(logger)와 같은 애플리케이션 모듈(136)이 원격 서버(104)나 임의의 다른 미리 결정된 목적지로의 후속적인 전송을 위해 로그(508)에 수집된 정보를 저장하고 및/또는 출력 메커니즘(504)을 통해 OTA 메시지들을 보여주도록 동작할 수 있다.
도 1을 다시 참조하면, 네트워크(110)는 무선 장치(102)와 네트워크에 접속된 임의의 장치 간의 무선 통신들을 가능하게 하도록 적어도 부분적으로 동작할 수 있는 임의의 통신 네트워크를 포함할 수 있다. 또한, 네트워크(110)는 모든 네트워크 컴포넌트들 및 그 네트워크를 형성하는 모든 접속된 장치들을 포함할 수 있다. 예컨대, 네트워크(110)는 셀룰러 전화기 네트워크; 캘리포니아 샌디에고에 있는 Qualcomm, Inc.로부터 입수가능한 MEDIAFLO 시스템과 같은 FLO(Forward Link Only) 네트워크와 같은 멀티캐스트 네트워크; 위성을 위한 DVB-S, 케이블을 위한 DVB-C, 지상 텔레비전을 위한 DVB-T, 핸드헬드들용의 지상 텔레비전을 위한 DVB-H와 같은 DVB(digital video broadcasting) 네트워크; 지상 전화기 네트워크; 위성 전화기 네트워크; IrDA(Infrared Data Association)-기반 네트워크와 같은 적외선 네트워크; 단거리 무선 네트워크; BLUETOOTH 기술 네트워크; ZIGBEE 프로토콜 네트워크; UWB(ultra wide band) 프로토콜 네트워크; HomeRF(home radio frequency) 네트워크; SWAP(shared wireless access protocol) 네트워크; WECA(wireless Ethernet compatibility alliance) 네트워크, Wi-Fi Alliance(wireless fidelity alliance) 네트워크, 및 802.11 네트워크와 같은 광대역 네트워크; 공중 교환 전화망; 인터넷과 같은 공중 헤테로지니어스 통신 네트워크; 사설 통신 네트워크; 및 지상 이동 무선 네트워크 중 적어도 하나나 혹은 이들의 임의의 결합을 포함할 수 있다.
전화 네트워크들의 적절한 예들은 CDMA(code division multiple access), WCDMA(wideband code division multiple access), UMTS(universal mobile telecommunications system), AMPS(advanced mobile phone service), TDMA(time division multiple access), FDMA(frequency division multiple access), OFDMA(orthogonal frequency division multiple access), GSM(global system for mobile communications), 단일 반송파(1X) 무선 전송 기술(RTT), EV-DO(evolution data only) 기술, GPRS(general packet radio service), EDGE(enhanced data GSM environment), HSPDA(high speed downlink data packet access), 아날로그 및 디지털 위성 시스템들, 및 무선 통신 네트워크와 데이터 통신 네트워크 중 적어도 하나에서 사용될 수 있는 임의의 다른 기술들/프로토콜들과 같은 아날로그 및 디지털 네트워크들/기술들 중 적어도 하나 또는 이들의 임의의 결합을 포함한다.
도 6을 참조하면, 시스템(100)과 유사한 시스템(600)의 양상은 적어도 하나의 무선 장치(102)와, 캐리어 네트워크(606)를 통해서 유선 네트워크(602)에 접속되는 셀룰러 전화기 무선 네트워크(610)를 포함한다. 참조번호 610의 셀룰러 전화기 시스템은 단순히 예시적인 것이며 임의의 시스템을 포함할 수 있고, 그로 인해서 무선 장치들(102)과 같은 원격 모듈들이 무선 네트워크 캐리어들 및/또는 서버들을 포함하는(그러나, 이러한 것들로 제한되지는 않음) 네트워크(110)의 컴포넌트들 간에 무선으로 음성 및 데이터를 포함한 패킷들을 통신한다.
네트워크(110)에 따라, 원격 서버(104)는 무선 장치(102)로부터 수신되는 데이터를 저장하기 위해 유선 네트워크(602)(예컨대, LAN(local area network))를 통해서 통신할 수 있다. 원격 서버(104)는 셀룰러 원격통신 서비스들을 제공하기 위해 필요한 임의의 다른 네트워크 컴포넌트들과 함께 네트워크(602) 상에 존재할 수 있다.
원격 서버(104)는 인터넷, 안전한 LAN, WAN, 또는 다른 네트워크와 같은 데이터 링크들(604)을 통해서 캐리어 네트워크(606)와 통신할 수 있다. 캐리어 네트워크(606)는 이동 스위칭 센터(MSC)(612)에 전송되는 메시지들(일반적으로 데이터 패킷들임)을 제어한다. 또한, 캐리어 네트워크(606)는 인터넷과 같은 네트워크(608) 및/또는 POTS("plain old telephone service")에 의해서 MSC(612)와 통신한다. 통상적으로, 네트워크(610)에서, 네트워크 또는 인터넷 부분은 데이터를 전송하고, POTS 부분은 음성 정보를 전송한다. MSC(612)는 데이터 전송을 위한 데이 터 네트워크 및/또는 인터넷 부분 및 음성 정보를 위한 POTS 부분과 같은 다른 네트워크(614)에 의해서 여러 기지국들(BTS)(616)에 접속될 수 있다. BTS(616)는 결국 단문자 메시징 서비스(SMS) 또는 다른 OTA(over-the-air) 방법들에 의해서 무선 장치들(102)로 메시지들을 무선으로 방송한다.
동작에 있어서, 도 7을 참조하면, 일부 양상들에서는, 무선 장치로 하여금 접속된 외부 장치 상의 외부 장치 자원을 활용할 수 있게 하고 및/또는 무선 장치로 하여금 그 외부 장치 상에 애플리케이션의 주문형 설치를 수행할 수 있게 하는 방법이 도시되어 있다. 단계(702)에서는, 외부 자원 활용 및 애플리케이션 다운로드 성능들을 구현하기 위해 필수적인 로직 및 메커니즘들을 제공할 수 있는 외부 장치 관리자(120)가 무선 장치(102)의 메모리(206)에 로딩될 수 있다. 예컨대, 다수의 메커니즘들 중 임의의 하나는 원격 서버(104)와 같은 네트워크 장치로부터 네트워크(110)를 통한 무선 전송, 상기 무선 장치에 직접 접속된 다른 장치로부터의 로딩, 및 상기 무선 장치의 제조시의 로딩을 포함해서(그러나 이러한 것들로 제한되지는 않음) 무선 장치(102) 상에 외부 장치 관리자(120)를 로딩하는데 활용될 수 있다.
또한, 예컨대, 일부 양상들에서는, 무선 장치(102)가 외부 장치 관리자(120)를 요청하는 명령(320)을 원격 서버(104)에 전송할 수 있다. 무선 장치(102)와 원격 서버(104)간의 통신이 이루어진다. 일부 양상들에서는, 명령(320)이 예컨대 제한된 서비스 구성(230) 내에서 정해진 서비스 설정들(232)에 기초하여 제한된 액세스 서비스 채널을 통해 전송될 수 있다. 여하튼, 접속 프로토콜은 HTTP(hyper- text protocol), FTP(file transfer protocol), 또는 네트워크(110)를 통한 데이터의 전송을 가능하게 하는데 이용될 수 있는 임의의 다른 프로토콜일 수 있다. 게다가, 일부 양상들에서는, 무선 장치(102)의 외부 장치 관리자(120)에 존재하는 원격 서버 허가 로직(412) 및 허가 로직(306)이 사용자 식별 정보(310)에 기초하여 무선 장치(102)의 신원을 인증하기 위해 동작할 수 있다. 이러한 사용자 식별 정보(310)는 구성가능한 사용자이름/패스워드 정보를 포함할 수 있다.
상기 방법은 무선 장치에 외부 장치를 접속시키는 단계(704)를 포함할 수 있다. 예컨대, 외부 장치(106)는 통신 인터페이스(108)를 통해서 무선 장치(102)에 접속될 수 있다. 통신 인터페이스(108)는 직접적인 전기 접속, 무선 링크 및/또는 무선파 접속 등과 같이 두 장치들 간의 데이터 및/또는 통신들의 교환을 가능하게 하는 임의의 메커니즘일 수 있다.
두 장치들을 접속시킬 때, 상기 방법은 무선 장치가 외부 장치 상에 장치 구동기들을 설치하는 단계(706)를 포함한다. 예컨대, 외부 장치 관리자(120)는 하나 이상의 인터페이스 구동기들(134)을 외부 장치(106) 상에 다운로딩하도록 동작할 수 있는 장치 구동기/장치 구동기/애플리케이션 모듈 관리 패키지(122)를 실행할 수 있다. 일부 양상들에서는, 하나 이상의 인터페이스 구동기들(134)이 한 세트의 미리 결정된 장치 구동기들의 초기 다운로드 패키지를 포함할 수 있다. 이를테면, 초기 다운로드 패키지는 무선 애플리케이션(114) 및/또는 외부 장치 관리자(120)를 포함해서 무선 장치(102)로 하여금 메모리 및/또는 데이터 저장부, 프로세서, 통신 인터페이스, 디스플레이, 키보드, 마우스 등을 포함하는 일반적으로 활용될 수 있는 통상적인 자원들과 같은 하나 이상의 미리 결정된 외부 장치 자원들(132)을 활용할 수 있게 하도록 동작할 수 있는 장치 구동기들을 포함할 수 있다. 또한, 예컨대, 초기 다운로드 패키지는 다수의 운영 시스템들에 대응하는 세트들에 위에서 설명된 장치 구동기들을 포함시킬 수 있다. 이로써, 외부 장치(106)의 운영 시스템(510)은 다수 세트의 초기 장치 구동기들 중 적어도 하나를 인지하여 다운로드하도록 동작할 수 있고, 그럼으로써 외부 장치(106)와 무선 장치(102) 간의 통신들을 가능하게 한다.
선택적으로, 일단 두 장치들 간의 통신들이 설정되면, 상기 방법은 무선 장치가 외부 장치 상의 장치 구동기들 및/또는 애플리케이션들에 대한 상태 검사를 개시함으로써 이러한 컴포넌트들이 최신의 것인지를 결정하는 단계를 또한 포함한다(단계 708). 예컨대, 외부 장치 관리자(120)는 이름, 버전 번호, 각 아이템의 상태에 관한 임의의 다른 정보를 포함한, 외부 장치 상의 장치 구동기들 및 애플리케이션들을 식별하도록 동작할 수 있는 외부 장치 검사 모듈(332)을 실행할 수 있다.
또한, 이러한 선택적인 양상에서는, 상기 방법이 또한 외부 장치 상의 장치 구동기 및/또는 애플리케이션 상태 정보에 대한 검사 결과를 수신하는 단계(710), 및 업데이트들이 이용가능하거나 및/또는 요구되는지를 결정하는 단계(712)를 포함할 수 있다. 예컨대, 외부 장치 관리자(120)는 위에 설명된 장치 구동기 및/또는 애플리케이션 상태 정보에 대한 목록과 같은 검사 결과들(333)을 수신하여 저장할 수 있다. 또한, 외부 장치 관리자(120)는 무선 장치(102) 및/또는 외부 장치(106)의 사용자에게 어느 한 장치 상의 사용자 인터페이스를 통해 검사 결과들(333)을 제공할 수 있다. 또한, 사용자 입력에 따라서 및/또는 업데이트 설정에 기초해서, 만약 업데이트가 이용가능하거나 및/또는 요구된다면, 상기 방법은 도 8과 관련하여 아래에서 설명되는 바와 같은 업데이팅(단계 802 참조)을 수행하고, 이어서 상기 방법은 아래에서 설명되는 단계(714)로 리턴한다. 만약 어떠한 업데이트도 이용가능하지 않거나 및/또는 요구되지 않는다면, 이러한 선택적인 양상을 종료하고 아래에 설명된 단계(714)로 리턴한다.
외부 장치와의 통신을 설정할 때 그리고 외부 장치 상의 장치 구동기들 및/또는 애플리케이션들을 업데이팅할 때, 상기 방법은 무선 장치 사용자가 외부 장치 자원을 사용하길 원할지(단계 714) 및/또는 외부 장치 상의 애플리케이션을 다운로딩하길 원할지(단계 716) 여부를 계속해서 결정한다.
만약 외부 장치 자원의 활용이 요구된다면, 무선 장치는 활용할 하나 이상의 선택된 자원들에 대한 지시를 수신한다. 예컨대, 일부 양상들에서는, 외부 장치 관리자(120)가 사용자 인터페이스를 통해서 무선 장치(102)의 사용자로부터 선택을 수신한다. 다른 양상들에서는, 외부 장치 관리자(120) 및/또는 무선 애플리케이션(114)이 미리 결정된 설정들에 기초해서 및/또는 무선 애플리케이션(114)의 특정 기능에 기초해서 하나 이상의 외부 장치 자원들(132)을 자동적으로 선택할 수 있다. 예컨대, 만약 무선 애플리케이션(114)이 무선 장치(102) 상의 이용가능한 메모리/저장부를 초과하여 미리 결정된 양의 데이터 저장부를 활용하는 것으로 통보된다면, 외부 장치 관리자 제어 로직(328)은 활용할 외부 장치 메모리 및/또는 데이터 자원을 자동적으로 선택할 수 있다.
활용할 하나 이상의 외부 장치 자원들을 식별할 때, 무선 장치는 적절한 장치 구동기가 무선 애플리케이션으로 하여금 선택된 외부 장치 자원과 통신할 수 있도록 하기 위해서 존재한다는 것을 확인한다. 예컨대, 외부 장치 관리자(120)는 검사 결과들(333)에 목록화되었거나 혹은 독립적으로 확인된 현존하는 장치 구동기들을 선택된 외부 장치 자원과 비교하도록 동작할 수 있음으로써, 적절한 장치 구동기가 외부 장치(106) 상에 존재하는 것을 보장할 수 있다.
만약 적절한 구동기가 존재하지 않는다면, 상기 방법은 위에서 설명된 바와 같이 적절한 구동기를 설치하는 단계(706)로 리턴한다.
만약 적절한 구동기가 존재한다면, 무선 장치는 하나 이상의 선택된 외부 장치 자원들을 활용한다(단계 722). 예컨대, 무선 애플리케이션(114)은 메모리, 데이터 저장부, 프로세서, 통신 인터페이스 등과 같은 선택된 외부 장치 자원과 통신하도록 실행되는 동안에 동작할 수 있다.
외부 장치 자원이 필요시에 무선 애플리케이션에 의해서 활용된 이후에는, 상기 방법은 각각의 하나 이상의 장치가 설치해제되어야 하는지를 결정하는 단계(724)를 또한 포함할 수 있다. 예컨대, 무선 장치(114)의 실행이 종료되었을 때는, 외부 장치 관리자(120)가 각각의 장치 구동기(들)를 설치해제하는지 여부를 무선 장치 사용자에게 질의할 수 있다. 대안적으로, 상기 결정은 정해진 무선 애플리케이션(114)과 연관되거나 및/또는 외부 장치 관리자(120)와 연관된 미리 결정되어진 설정들에 기초할 수 있다.
여하튼, 만약 장치 구동기들이 설치해제되지 않는다면, 상기 방법은 종료한 다(단계 728).
만약 장치 구동기들이 설치해제된다면, 상기 방법은 무선 애플리케이션에 의해 활용되는 하나 이상의 각각의 장치 구동기들의 설치해제로 진행하여 이를 수행하고(단계 726), 이어서 상기 방법이 종료된다(단계 728). 예컨대, 외부 장치 관리자(120)는 각각의 장치 구동기들을 설치해제하도록 동작할 수 있는 장치 구동기/장치 구동기/애플리케이션 모듈 관리 패키지(122)를 실행할 수 있다. 설치해제 처리가 완료된 이후에는, 상기 방법이 종료된다.
선택적으로, 외부 장치 자원의 활용(단계 722) 이후에는, 상기 방법은 다른 장치 구동기 및/또는 애플리케이션 모듈을 다운로딩하도록 하는 무선 장치에 대한 옵션을 외부 장치에 제공할 수 있고(단계 716), 이는 아래에서 더 상세히 설명될 것이다.
위에서 언급된 바와 같이, 외부 장치 자원을 활용하지 않을 것이라는 결정(단계 714) 이후나, 또는 선택적으로 외부 장치 자원을 활용한 이후에는(단계 722), 상기 방법은 다른 장치 구동기 및/또는 애플리케이션 모듈을 다운로딩하도록 무선 장치에 대한 옵션을 외부 장치에 제공할 수 있다(단계 716). 예컨대, 외부 장치 관리자(120)는 무선 장치로부터의 애플리케이션을 외부 장치에 다운로딩하도록 동작할 수 있는 장치 구동기/장치 구동기/애플리케이션 모듈 관리 패키지(122)를 실행할 수 있다.
만약 무선 장치가 다운로딩이 요구되지 않는다는 입력을 수신하면, 상기 방법은 위에 설명된 바와 같이 단계(724)에서 계속된다. 예컨대, 외부 장치 관리 자(120)는 장치 구동기 및/또는 애플리케이션을 다운로딩할 지 여부를 대한 사용자-지시 질의에 대한 응답을 수신할 수 있다. 대안적으로, 지시가 정해진 무선 애플리케이션(114)과 연관되거나 및/또는 외부 장치 관리자(120)와 연관된 미리 결정되어진 설정들에 기초할 수 있다.
만약 무선 장치가 다운로드가 요구된다는 입력을 수신하면, 상기 방법은 아래에서 설명되는 바와 같이 단계(802)에서 계속된다. 예컨대, 외부 장치 관리자(120)는 장치 구동기 및/또는 애플리케이션을 다운로딩할 지 여부에 대한 사용자-지시 질의에 대한 응답을 수신할 수 있다. 대안적으로, 지시는 정해진 무선 애플리케이션(114)과 연관되거나 및/또는 외부 장치 관리자(120)와 연관된 미리 결정되어진 설정들에 기초할 수 있다.
도 8을 참조하면, 상기 방법은 검사로부터 발생한 업데이트들(도 7, 단계 712)을 획득하기 위한 지시, 장치 자원을 활용하는 것(도 7, 단계들 714 및 716)에 반대되는 장치 구동기 및/또는 애플리케이션을 획득하기 위한 지시, 및/또는 장치 자원을 활용(도 7, 단계들 722 및 716)한 이후에 수신되는 유사한 지시 중 어느 하나에 기초하여, 장치 구동기들 및/또는 애플리케이션들을 식별해서 외부 장치에 다운로딩하는 단계를 포함할 수 있다. 이 시점에서, 상기 방법은 원격 서버와 접속하고 식별된 외부 장치-타입에 특정된 장치 구동기들 및/또는 애플리케이션들에 대한 목록을 요청하는 단계(802)를 포함할 수 있다. 예컨대, 외부 장치 관리자(120)는 외부 장치 타입 파라미터(326)와 같은 외부 장치 타입과 연관된 식별 정보를 수신하도록 동작할 수 있다. 이러한 식별 정보는 잠재적인 외부 장치 타입들에 대한 목록으로부터 선택될 수 있거나, 및/또는, 장치 사용자에 의해 입력되고 무선 장치(102) 및/또는 원격 서버(106)에서 장치 타입 파라미터(326)와 연관될 수 있다. 또한, 외부 장치 관리자(120)는 이러한 정보를 질의하기 위해서 정해진 원격 서버(104)를 식별하는 하나 이상의 구성 파라미터들(322)을 포함할 수 있다.
또한, 예컨대, 일부 양상들에서는, 원격 서버(104)가 사용자자 제일 먼저 식별할 수 있는 특정 외부 장치-타입들에 로딩되도록 설계되어진 장치 구동기/애플리케이션 모듈 설치 패키지(122)를 포함할 수 있다. 따라서, 무선 장치(102)의 사용자는 외부 장치 타입 모듈(324)에 의해 제공되는 메뉴로부터 접속된 외부 장치(106)에 따른 특정 외부 장치 타입을 사용자 인터페이스(302)의 동작을 통해 선택할 수 있다. 무선 장치(102)는 선택된 외부 장치 타입을 외부 장치 타입 파라미터(326)로서 저장할 수 있다. 일부 실시예들에서, 외부 장치 타입 모듈(324)은 외부 장치 관리자(120)의 일부로서 다운로딩될 수 있다. 다른 양상들에서, 외부 장치 타입 모듈(324)이 구성될 수 있으며, 원격 서버(104)로부터 다운로딩될 수 있다.
추가적으로, 이러한 양상들에서는, 외부 장치 타입을 선택할 때, 외부 장치 관리자(120)가 원격 서버(104)에 접속하고, 또한 외부 장치(106)에 특정된 주문형 애플리케이션들의 모듈(308)을 수신하기 위해서 외부 장치 타입 파라미터(326)를 전송하도록 동작할 수 있다. 접속 프로토콜은 네트워크(110)를 통한 데이터의 전송을 가능하게 하는데 이용될 수 있는 HTTP, FTP 또는 임의의 다른 프로토콜일 수 있다.
상기 방법은 또한 이용가능한 장치-타입 특정 장치 구동기들 및/또는 애플리케이션들에 대한 목록을 원격 서버로부터 수신하는 단계(804)를 포함할 수 있다. 예컨대, 무선 장치(102)는 주문형 장치 구동기 목록(311) 및/또는 규정된 외부 장치(106)에 특정적인 주문형 애플리케이션 목록(309)을 갖는 모듈(308)로부터의 메뉴를 원격 서버(104)로부터 수신하도록 동작할 수 있다. 외부 장치 관리자(120)는 출력 메커니즘(204)을 사용하여 모듈(308)로부터의 메뉴를 디스플레이하도록 또한 동작할 수 있다.
상기 방법은 이용가능한 장치 구동기 및/또는 이용가능한 애플리케이션 중 선택된 하나 이상을 설치하라는 지시를 수신하는 단계를 또한 포함할 수 있다. 예컨대, 무선 장치(102)는 모듈(308)로부터의 메뉴로부터 주문형 장치 구동기 및/또는 애플리케이션의 사용자 선택들을 사용자 인터페이스(302)의 동작을 통해 수신할 수 있다. 게다가, 무선 장치(102)는 선택된 장치 구동기 및/또는 애플리케이션을 선택된 장치 구동기/애플리케이션 파라미터(316)로서 저장할 수 있다.
또한, 상기 방법은 선택된 장치 구동기 및/또는 애플리케이션에 대한 요청을 원격 서버에 전송하는 단계(808)를 포함할 수 있다. 예컨대, 외부 장치 관리자(120)는 원격 서버(104)로의 파라미터(316)의 전송을 개시하도록 동작할 수 있다.
상기 방법은 요청된 장치 구동기 및/또는 애플리케이션에 기초하여 설치 패키지를 원격 서버로부터 수신하는 단계(810)를 도한 포함할 수 있다. 예컨대, 무선 장치(102)는 외부 장치(106)에 대한 요청된 장치 구동기 및/또는 애플리케이션 에 기초하여 원격 서버(104)로부터 다운로딩되는 장치 구동기/애플리케이션 관리 패키지(122)를 수신하여 저장할 수 있다.
또한, 상기 방법은 무선 장치가 수신된 장치 구동기 및/또는 애플리케이션을 외부 장치 상에 설치하는 단계(812)를 포함할 수 있다. 예컨대, 외부 장치 관리자(120)는 요청된 구동기/애플리케이션을 외부 장치(106) 상에 설치하기 위해 동작할 수 있는 수신된 장치 구동기/애플리케이션 관리 패키지(122)를 실행할 수 있다.
또한, 상기 방법은 다운로딩된 장치 구동기 및/또는 애플리케이션을 통해 외부 장치와 함께 무선 장치 상에서 동작들을 수행하는 단계(814)를 포함할 수 있다. 예컨대, 일부 양상들에서, 외부 장치(106)는 무선 장치(102) 상에서의 동작들을 관리, 제어, 및/또는 모니터링하도록 애플리케이션 모듈(136)을 실행할 수 있다.
도 9를 참조하면, 일부 양상들에서는, 원격 서버(104) 상에서 동작할 수 있는 방법이 도 7 및 도 8의 흐름도에 있는 방법과 상응하게 무선 장치(102)와 통신하는 것으로 도시되어 있다. 특히, 도 9의 방법은 무선 장치(102) 상에 장치 구동기/장치 구동기/애플리케이션 모듈 관리 패키지(122)를 로딩하도록 동작할 수 있고, 그 이후에는 무선 장치(102)가 인터페이스 구동기(136) 및/또는 애플리케이션 모듈(136) 중 하나 이상을 접속된 외부 장치(106) 상에 자동적으로 설치하도록 동작할 수 있다.
단계(902)에서, 원격 서버(104)의 메모리(402)에 존재하는 사용자 관리자 모듈(118)은, 무선 장치(102)로부터 접속 요청을 수신하였을 때, 허가 로직(412)을 사용하여 무선 장치(102)의 신원을 인증할 수 있다. 인증 시에, 사용자 관리자 제 어 로직(404)은 예컨대 HTTP 및 FTP를 포함하는 임의의 이용가능한 프로토콜을 사용하여 무선 장치(102)에 내부 장치 관리자(120)를 네트워크(110)를 통해서 전송할 수 있다. 일부 실시예들에서, 사용자 관리자 모듈(118)은 외부 장치 관리자(120)의 전송에 대한 확인응답을 수신하도록 동작할 수 있다.
단계(904)에서, 원격 서버(104)는 무선 장치(102)에 접속된 외부 장치(106)에 특정적인 적용가능한 장치 구동기들 및/또는 애플리케이션들을 목록화하고 있는 메뉴를 모듈(308)로부터 전송하라는 요청을 수신할 수 있다. 일 실시예에서, 원격 서버(104)는 무선 장치(102)에 접속된 외부 장치(106)의 타입을 규정하는 외부 장치 타입 파라미터(326)를 포함하고 있는 명령(320)을 수신할 수 있다.
단계(904)에서의 수신된 요청에 응하여, 단계(906)에서는 원격 서버(104)가 무선 장치(102)에 모듈(308)로부터의 메뉴를 전송하도록 동작할 수 있다. 모듈(308)은 무선 장치(102)에 접속된 특정 외부 장치(106)에 적용될 수 있는 장치 구동기들 및/또는 애플리케이션들을 목록화할 수 있다.
단계(908)에서는, 원격 서버(104)가 특정 장치 구동기/애플리케이션 모듈 관리 패키지(122)의 다운로드에 대한 요청을 수신하도록 동작할 수 있다. 일 실시예에서, 선택된 장치 구동기/애플리케이션 파라미터(316)를 포함하는 명령(320)은 사용자 관리자 제어 로직(404)에 의해서 수신되어 분석될 수 있다.
단계(910)에서, 원격 서버(104)는 선택된 장치 구동기/애플리케이션 파라미터(316)에 기초하여 각각의 관리 패키지(122)를 무선 장치(102)에 전송하도록 동작할 수 있다.
따라서, 설명된 양상들은 외부 장치 자원의 무선 장치-중앙식 또는 핸드셋-중앙식 제어 및/또는 무선 장치(102)에 접속된 외부 장치(106) 상에 구동기들 및/또는 애플리케이션들의 주문형 설치 및 설치해제를 가능하게 한다.
따라서, 제한적인 것으로서 해석되지 않아야 하는 일예의 경우에, 무선 장치에 접속된 외부 장치 상의 장치 자원들을 사용하는 방법은 무선 장치 애플리케이션을 무선 장치에서 수신하는 단계를 포함한다. 상기 방법은 또한 무선 장치 애플리케이션을 실행하는 단계를 포함하고, 그로 인해서 상기 애플리케이션은 장치 기능-관련 데이터를 무선 장치 상의 메모리에 기록한다. 또한, 상기 방법은 추가적인 메모리 자원들이 무선 장치 애플리케이션에 필요하다는 것을 자동적으로 결정하는 단계를 포함한다. 이로써, 상기 방법은 이용가능한 메모리를 포함하고 있는 외부 장치를 무선 장치에 접속시키는 단계를 포함한다. 또한, 상기 방법은 무선 장치 인터페이스 컴포넌트들을 외부 장치 상에 자동적으로 설치하는 단계, 및 외부 장치의 이용가능한 메모리에 기능-관련 데이터의 적어도 일부를 기록하는 단계를 포함한다. 또한, 일부 양상들에서, 상기 방법은 무선 장치가 원격 서버로의 네트워크 접속을 외부 장치에서 자동적으로 검출하는 단계, 및 외부 장치에 검출된 네트워크 접속을 통해서 상기 저장된 기능-관련 데이터의 적어도 일부를 원격 서버에 전송하는 단계를 또한 포함할 수 있다.
본 명세서에서 기재된 양상들과 관련하여 설명된 여러 기술적인 로직들, 로직 블록들, 소자들, 모듈들, 및 회로들은 범용 프로세서, 디지털 신호 프로세서(DSP), ASIC(application specific integrated circuit), FPGA(field programmable gate array), 또는 다른 프로그램가능 로직 장치, 이산적인 게이트 또는 트랜지스터 로직, 이산적인 하드웨어 컴포넌트들, 또는 본 명세서에 기재된 기능을 수행하도록 설계된 그들의 임의의 결합을 사용하여 구현되거나 수행될 수 있다. 범용 프로세서는 마이크로프로세서일 수 있지만, 대안적으로는, 상기 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수 있다. 프로세서는 또한 예를 들어 DSP 및 마이크로프로세서의 결합, 복수의 마이크로프로세서들, DSP 코어와 연계하는 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성과 같은 컴퓨팅 장치들의 결합으로서 구현될 수 있다.
본 명세서에 기재된 양상들과 관련하여 설명되는 방법 또는 알고리즘의 단계들은 하드웨어, 프로세서에 의해 실행되는 소프트웨어 모듈, 또는 그들의 결합을 통해 즉시 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드디스크, 제거가능 디스크, CD-ROM 또는 해당 분야에 공지되어 있는 임의의 다른 형태의 저장 매체에 존재할 수 있다. 예시적인 저장 매체는 프로세서가 저장매체로부터 정보를 판독하고 그 정보를 상기 저장매체에 기록할 수 있도록 상기 프로세서에 연결된다. 대안적으로, 저장 매체는 프로세서에 통합될 수 있다. 프로세서 및 저장 매체는 ASIC 내에 존재할 수 있다. ASIC은 사용자 단말기에 존재할 수 있다. 대안적으로, 프로세서 및 저장 매체는 사용자 단말기 내에 이산적인 소자들로서 존재할 수 있다.
비록 앞선 설명은 예시적인 양상들을 나타내지만, 여러 변형들 및 변경들이 첨부된 청구항들에 의해 정해지는 설명된 양상들의 범위로부터 벗어나지 않고 본 발명에서 이루어질 수 있다는 것을 알아야 한다. 또한, 비록 설명된 양상들의 엘리먼트들이 단수인 것으로서 설명되거나 청구될 수 있지만, 단수로 제한되는 것으로 명확히 설명되지 않는 한은 복수인 것도 고려된다. 또한, 임의의 양상 모두나 또는 그 중 일부가 달리 설명되지 않는 한은 임의의 다른 양상 모두나 또는 그 중 일부와 활용될 수 있다.

Claims (41)

  1. 무선 장치가 접속된 외부 장치 상의 자원을 활용하는 방법으로서,
    무선 장치-관련 기능을 수행하기 위해서 미리 결정된 장치 자원을 활용하도록 동작할 수 있는 애플리케이션을 무선 장치 상에서 실행하는 단계 - 상기 무선 장치는 상기 미리 결정된 장치 자원의 제 1 자원을 포함함 -;
    외부 장치를 상기 무선 장치에 접속시키는 단계 - 상기 외부 장치는 상기 미리 결정된 장치 자원의 제 2 자원을 포함함 -; 및
    상기 무선 장치에서 상기 기능을 수행하기 위해 상기 미리 결정된 장치 자원의 제 1 자원 및 상기 미리 결정된 장치 자원의 제 2 자원의 결합을 활용하는 단계를 포함하며,
    상기 무선 장치는 상기 미리 결정된 장치 자원의 제 2 자원의 활용 동안에 상기 외부 장치를 통해서 데이터를 원격 서버에 전송하는,
    자원 활용 방법.
  2. 제 1항에 있어서,
    상기 기능을 수행하기 위해 상기 미리 결정된 장치 자원의 제 1 자원의 활용 및 상기 미리 결정된 장치 자원의 제 2 자원의 활용 사이에서 자동적으로 스위칭하는 단계를 더 포함하고,
    상기 자동적으로 스위칭하는 단계는 미리 결정된 외부 장치 자원 선택 로직에 기초하는, 자원 활용 방법.
  3. 제 1항에 있어서,
    접속된 외부 장치 상에 인터페이스 메커니즘을 설치하는 단계를 더 포함하고,
    상기 인터페이스 메커니즘은 무선 장치 애플리케이션과 외부 장치 상의 미리 결정된 장치 자원 간에 통신을 가능하게 하도록 동작할 수 있는, 자원 활용 방법.
  4. 제 3항에 있어서, 무선 네트워크를 통해 원격 서버로부터 상기 인터페이스 메커니즘을 상기 무선 장치 상에서 획득하는 단계를 더 포함하는, 자원 활용 방법.
  5. 제 1항에 있어서,
    상기 외부 장치의 메모리에 외부 장치 애플리케이션 모듈을 설치하는 단계를 더 포함하고,
    상기 애플리케이션 모듈은 무선 장치 애플리케이션과 관련하여 외부 장치 상에서 실행될 수 있는, 자원 활용 방법.
  6. 제 5항에 있어서, 상기 외부 장치 애플리케이션 모듈을 설치하는 단계는,
    상기 무선 장치 상에서 애플리케이션 관리 패키지를 획득하는 단계; 및
    상기 애플리케이션 관리 패키지를 사용하여 상기 외부 장치 상에 외부 장치 애플리케이션을 설치하는 단계를 더 포함하는, 자원 활용 방법.
  7. 제 6항에 있어서, 무선 네트워크를 통해 원격 서버로부터 상기 애플리케이션 관리 패키지를 획득하는 단계를 더 포함하는, 자원 활용 방법.
  8. 제 6항에 있어서, 다수의 애플리케이션 모듈들로부터 상기 외부 장치 애플리케이션 모듈의 선택을 수신하는 단계를 더 포함하는, 자원 활용 방법.
  9. 제 8항에 있어서, 상기 선택은 외부 장치 타입에 기초하는, 자원 활용 방법.
  10. 제 6항에 있어서, 무선 네트워크를 통해 원격 서버로부터의 애플리케이션 모듈 관리 패키지를 상기 무선 장치 상에서 획득하는 단계를 더 포함하는, 자원 활용 방법.
  11. 제 5항에 있어서, 상기 무선 장치의 제어 하에서 상기 외부 장치 애플리케이션 모듈을 설치해제(uninstall)하는 단계를 더 포함하는, 자원 활용 방법.
  12. 제 2항에 있어서,
    상기 자동적으로 스위칭하는 단계는 데이터를 상기 외부 장치로 전송하는 단계를 더 포함하고,
    상기 외부 장치는 상기 외부 장치의 메모리 내에 상기 데이터를 저장하도록 동작할 수 있는, 자원 활용 방법.
  13. 제 2항에 있어서, 상기 자동적으로 스위칭하는 단계는 데이터를 원격 서버에 전송하도록 동작할 수 있는 상기 외부 장치 상의 통신 인터페이스로 상기 데이터를 전송하는 단계를 더 포함하는, 자원 활용 방법.
  14. 제 2항에 있어서, 상기 자동적으로 스위칭하는 단계는 상기 외부 장치로부터 처리된 데이터를 수신하는 단계를 더 포함하는, 자원 활용 방법.
  15. 제 1항에 있어서,
    다수의 네트워크 접속들로부터 선택되는 네트워크 접속을 사용하여 원격 서버와 통신하는 단계를 더 포함하고,
    상기 다수의 네트워크 접속들은 적어도 하나의 외부 장치에 존재하는 네트워크 접속을 포함하는, 자원 활용 방법.
  16. 제 1항에 있어서, 외부 장치 상에 미리 설치되는 외부 장치 애플리케이션 및 장치 구동기 중 적어도 하나를 변경하는 단계를 더 포함하는, 자원 활용 방법.
  17. 컴퓨터 판독-가능 매체로서,
    무선 장치로 하여금 무선 장치-관련 기능을 수행하기 위해서 미리 결정된 장치 자원을 활용하도록 동작할 수 있는 애플리케이션을 실행하게 하는 제 1 세트의 코드들 - 상기 무선 장치는 상기 미리 결정된 장치 자원의 제 1 자원을 포함함 -;
    상기 무선 장치로 하여금 외부 장치를 상기 무선 장치에 접속시키게 하는 제 2 세트의 코드들 - 상기 외부 장치는 상기 미리 결정된 장치 자원의 제 2 자원을 포함함 -; 및
    상기 무선 장치로 하여금 상기 무선 장치에서 상기 기능을 수행하도록 하기 위해 상기 미리 결정된 장치 자원의 제 1 자원 및 상기 미리 결정된 장치 자원의 제 2 자원의 결합을 활용하게 하는 제 3 세트의 코드들을 포함하며,
    상기 무선 장치는 상기 미리 결정된 장치 자원의 제 2 자원의 활용 동안에 상기 외부 장치를 통해서 데이터를 원격 서버에 전송하는,
    컴퓨터 판독-가능 매체.
  18. 무선 장치-관련 기능을 수행하기 위해서 미리 결정된 장치 자원을 활용하도록 동작할 수 있는 애플리케이션을 무선 장치 상에서 실행하는 단계 - 상기 무선 장치는 상기 미리 결정된 장치 자원의 제 1 자원을 포함함 -;
    외부 장치를 상기 무선 장치에 접속시키는 단계 - 상기 외부 장치는 상기 미리 결정된 장치 자원의 제 2 자원을 포함함 -; 및
    상기 무선 장치에서 상기 기능을 수행하기 위해 상기 미리 결정된 장치 자원의 제 1 자원 및 상기 미리 결정된 장치 자원의 제 2 자원의 결합을 활용하는 단계를 수행하도록 구성되며,
    상기 무선 장치는 상기 미리 결정된 장치 자원의 제 2 자원의 활용 동안에 상기 외부 장치를 통해서 데이터를 원격 서버에 전송하는,
    적어도 하나의 프로세서.
  19. 무선 장치-관련 기능을 수행하기 위해서 미리 결정된 장치 자원을 활용하도록 동작할 수 있는 애플리케이션을 무선 장치 상에서 실행하기 위한 수단 - 상기 무선 장치는 상기 미리 결정된 장치 자원의 제 1 자원을 포함함 -;
    외부 장치를 상기 무선 장치에 접속시키기 위한 수단 - 상기 외부 장치는 상기 미리 결정된 장치 자원의 제 2 자원을 포함함 -; 및
    상기 무선 장치에서 상기 기능을 수행하기 위해 상기 미리 결정된 장치 자원의 제 1 자원 및 상기 미리 결정된 장치 자원의 제 2 자원의 결합을 활용하기 위한 수단을 포함하며,
    상기 무선 장치는 상기 미리 결정된 장치 자원의 제 2 자원의 활용 동안에 상기 외부 장치를 통해서 데이터를 원격 서버에 전송하는,
    무선 장치.
  20. 무선 장치로서,
    처리 엔진;
    상기 처리 엔진에 의해서 액세스될 수 있는 메모리;
    상기 처리 엔진과 상기 메모리 사이에서 그리고 상기 무선 장치와 제 1 미리 결정된 장치 자원을 갖는 외부 장치 사이에서 통신들을 교환하도록 동작할 수 있는 통신 모듈;
    상기 통신 모듈과 통신하는 제 2 미리 결정된 장치 자원;
    상기 메모리에 존재하며 무선 장치-관련 기능을 수행하기 위해 상기 처리 엔진에 의해서 실행될 수 있는 제 1 애플리케이션 - 상기 제 1 애플리케이션은 상기 제 1 미리 결정된 장치 자원 및 상기 제 2 미리 결정된 장치 자원 중 어느 하나를 활용하도록 동작할 수 있음 -; 및
    상기 메모리에 존재하며 상기 처리 엔진에 의해서 실행될 수 있는 선택 모듈을 포함하며,
    상기 선택 모듈은 상기 무선 장치에서 상기 기능을 수행하기 위해 상기 제 1 애플리케이션의 실행 동안에 상기 제 2 미리 결정된 장치 자원 및 상기 제 1 미리 결정된 장치 자원의 결합을 활용하도록 동작할 수 있는,
    상기 무선 장치는 상기 제 1 미리 결정된 장치 자원의 활용 동안에 상기 외부 장치를 통해서 데이터를 원격 서버에 전송하도록 구성되는,
    무선 장치.
  21. 제 20항에 있어서, 상기 선택 모듈은 상기 제 1 미리 결정된 장치 자원 및 상기 제 2 미리 결정된 장치 자원 사이에서 활용을 자동적으로 스위칭시킬 때를 결정하도록 동작할 수 있는 미리 결정된 외부 장치 자원 선택 로직을 더 포함하는, 무선 장치.
  22. 제 20항에 있어서, 상기 제 1 애플리케이션은 데이터 저장, 데이터 처리 및 데이터 전송 중 적어도 하나를 위해 상기 제 1 미리 결정된 장치 자원 및 상기 제 2 미리 결정된 장치 자원의 결합을 활용하도록 또한 동작할 수 있는, 무선 장치.
  23. 삭제
  24. 제 20항에 있어서,
    상기 무선 장치는 인터페이스 메커니즘을 갖는 외부 장치 관리자를 더 포함하고,
    상기 외부 장치 관리자는 상기 외부 장치 상에 인터페이스 메커니즘을 설치하도록 동작할 수 있으며,
    상기 인터페이스 메커니즘은 상기 제 1 애플리케이션 및 상기 외부 장치 상의 제 1 미리 결정된 장치 자원 간의 통신을 가능하게 하도록 동작할 수 있는, 무선 장치.
  25. 제 20항에 있어서,
    상기 무선 장치는 장치 구동기(driver) 및 외부 장치 애플리케이션 중 적어도 하나를 포함하고 있는 주문형(on-demand) 모듈을 갖는 외부 장치 관리자를 더 포함하고,
    상기 주문형 모듈은 상기 장치 구동기 및 상기 외부 장치 애플리케이션 중 적어도 하나를 상기 외부 장치 상에 다운로드하여 설치하도록 동작할 수 있는, 무선 장치.
  26. 제 25항에 있어서, 상기 장치 구동기 및 상기 외부 장치 애플리케이션은 상기 외부 장치 상에 존재하는 기존 장치 구동기 및 기존 외부 장치 애플리케이션의 각각의 업데이팅된 버전들을 포함하는, 무선 장치.
  27. 제 25항에 있어서, 상기 장치 구동기 및 상기 외부 장치 애플리케이션은 상기 외부 장치와 연관된 장치 타입에 기초하여 다수의 장치 구동기들 및 다수의 외부 장치 애플리케이션들로부터 각각 선택되는, 무선 장치.
  28. 제 27항에 있어서,
    다수의 잠재적인 외부 장치들의 목록을 갖는 외부 장치-타입 선택 모듈을 더 포함하고,
    상기 장치-타입은 상기 다수의 잠재적인 외부 장치들 중 선택된 외부 장치에 대응하는, 무선 장치.
  29. 제 20항에 있어서,
    상기 외부 장치를 조사하여 상기 외부 장치 상에 존재하는 외부 장치 애플리케이션 및 장치 구동기 중 적어도 하나의 목록을 포함하는 검사 결과를 생성하도록 동작할 수 있는 외부 장치 검사 모듈을 더 포함하고,
    상기 검사 결과는 상기 장치 구동기 및 상기 외부 장치 애플리케이션 각각과 연관된 버전 정보를 더 포함하는, 무선 장치.
  30. 제 20항에 있어서, 무선 네트워크를 통해 제한된 서비스 통신 채널을 상기 무선 장치 상에 설정하도록 동작할 수 있는 제한된 서비스 구성을 더 포함하는, 무선 장치.
  31. 네트워크 서버가 무선 네트워크 상의 무선 장치의 기능을 보조하기 위한 방법으로서,
    상기 무선 장치로부터 명령을 수신하는 단계 - 상기 명령은 상기 무선 장치 상에서 무선 장치 애플리케이션의 실행 동안에 무선 장치 자원과 함께 활용되도록 동작할 수 있는 외부 장치 자원을 가지도록 결정된 외부 장치와 상기 무선 장치 사이의 접속에 기초하고, 상기 명령은 상기 무선 장치 상에서 실행될 수 있는 애플리케이션 관리 패키지에 대한 요청을 포함하고, 상기 애플리케이션 관리 패키지는 상기 외부 장치 상에 외부 장치 애플리케이션을 설치하도록 동작할 수 있으며, 상기 외부 장치 애플리케이션은 상기 무선 장치 애플리케이션과 데이터를 교환하고 함께 실행되도록 상기 외부 장치 자원을 제어하도록 동작할 수 있고, 상기 무선 장치 애플리케이션은 상기 무선 장치에서 무선 장치 관련-기능을 수행하기 위해 상기 무선 장치 자원과 함께 상기 외부 장치 자원을 활용하도록 동작할 수 있음 -; 및
    상기 애플리케이션 관리 패키지를 상기 무선 장치에 전송하는 단계를 포함하며,
    상기 무선 장치의 제어 하에서 동작하는 상기 외부 장치 자원을 통해 상기 외부 장치로부터 데이터를 수신하는 단계를 더 포함하는,
    무선 장치 기능 보조 방법.
  32. 제 31항에 있어서,
    다수의 외부 장치 타입들 중 선택된 외부 장치 타입에 기초하여 선택된 외부 장치 타입 상에서 실행될 수 있는 외부 장치 애플리케이션들의 목록에 대한 요청을 상기 무선 장치로부터 수신하는 단계를 더 포함하는, 무선 장치 기능 보조 방법.
  33. 삭제
  34. 무선 장치로부터 명령을 수신하는 단계 - 상기 명령은 상기 무선 장치 상에서 무선 장치 애플리케이션의 실행 동안에 무선 장치 자원과 함께 활용되도록 동작할 수 있는 외부 장치 자원을 가지도록 결정된 외부 장치와 상기 무선 장치 사이의 접속에 기초하고, 상기 명령은 상기 무선 장치 상에서 실행될 수 있는 애플리케이션 관리 패키지에 대한 요청을 포함하고, 상기 애플리케이션 관리 패키지는 상기 외부 장치 상에 외부 장치 애플리케이션을 설치하도록 동작할 수 있으며, 상기 외부 장치 애플리케이션은 상기 무선 장치 애플리케이션과 데이터를 교환하고 함께 실행되도록 상기 외부 장치 자원을 제어하도록 동작할 수 있고, 상기 무선 장치 애플리케이션은 상기 무선 장치에서 무선 장치 관련-기능을 수행하기 위해 상기 무선 장치 자원과 함께 상기 외부 장치 자원을 활용하도록 동작할 수 있음 -; 및
    상기 애플리케이션 관리 패키지를 상기 무선 장치에 전송하는 단계를 수행하도록 구성되며,
    상기 무선 장치의 제어 하에서 동작하는 상기 외부 장치 자원을 통해 상기 외부 장치로부터 데이터를 수신하는 단계를 더 수행하도록 구성되는,
    적어도 하나의 프로세서.
  35. 컴퓨터-판독가능 매체로서,
    네트워크 서버로 하여금 무선 장치로부터의 명령을 수신하게 하는 제 1 세트의 코드들 - 상기 명령은 상기 무선 장치 상에서 무선 장치 애플리케이션의 실행 동안에 무선 장치 자원과 함께 활용되도록 동작할 수 있는 외부 장치 자원을 가지도록 결정된 외부 장치와 상기 무선 장치 사이의 접속에 기초하고, 상기 명령은 상기 무선 장치 상에서 실행될 수 있는 애플리케이션 관리 패키지에 대한 요청을 포함하고, 상기 애플리케이션 관리 패키지는 상기 외부 장치 상에 외부 장치 애플리케이션을 설치하도록 동작할 수 있으며, 상기 외부 장치 애플리케이션은 상기 무선 장치 애플리케이션과 데이터를 교환하고 함께 실행되도록 상기 외부 장치 자원을 제어하도록 동작할 수 있고, 상기 무선 장치 애플리케이션은 상기 무선 장치에서 무선 장치 관련-기능을 수행하기 위해 상기 무선 장치 자원과 함께 상기 외부 장치 자원을 활용하도록 동작할 수 있음 -; 및
    상기 네트워크 서버로 하여금 상기 애플리케이션 관리 패키지를 상기 무선 장치에 전송하게 하는 제 2 세트의 코드들을 포함하며,
    상기 네트워크 서버로 하여금 상기 무선 장치의 제어 하에서 동작하는 상기 외부 장치 자원을 통해 상기 외부 장치로부터 데이터를 수신하게 하는 제 3 세트의 코드들을 더 포함하는,
    컴퓨터-판독가능 매체.
  36. 무선 장치로부터 명령을 수신하기 위한 수단 - 상기 명령은 상기 무선 장치 상에서 무선 장치 애플리케이션의 실행 동안에 무선 장치 자원과 함께 활용되도록 동작할 수 있는 외부 장치 자원을 가지도록 결정된 외부 장치와 상기 무선 장치 사이의 접속에 기초하고, 상기 명령은 상기 무선 장치 상에서 실행될 수 있는 애플리케이션 관리 패키지에 대한 요청을 포함하고, 상기 애플리케이션 관리 패키지는 상기 외부 장치 상에 외부 장치 애플리케이션을 설치하도록 동작할 수 있으며, 상기 외부 장치 애플리케이션은 상기 무선 장치 애플리케이션과 데이터를 교환하고 함께 실행되도록 상기 외부 장치 자원을 제어하도록 동작할 수 있고, 상기 무선 장치 애플리케이션은 상기 무선 장치에서 무선 장치 관련-기능을 수행하기 위해 상기 무선 장치 자원과 함께 상기 외부 장치 자원을 활용하도록 동작할 수 있음 -; 및
    상기 애플리케이션 관리 패키지를 상기 무선 장치에 전송하기 위한 수단을 포함하며,
    상기 무선 장치의 제어 하에서 동작하는 상기 외부 장치 자원을 통해 상기 외부 장치로부터 데이터를 수신하기 위한 수단을 더 포함하는,
    네트워크 서버 장치.
  37. 무선 장치의 기능을 보조하기 위한 네트워크 서버 장치로서,
    프로세서;
    상기 프로세서와 통신하는 메모리 - 상기 메모리는 상기 무선 장치 상에서 실행될 수 있는 애플리케이션 관리 패키지를 포함하고, 상기 애플리케이션 관리 패키지는 상기 무선 장치 상에서 무선 장치 애플리케이션의 실행 동안에 무선 장치 자원과 함께 활용되도록 동작할 수 있는 외부 장치 자원을 가지도록 결정되고 상기 무선 장치로 접속될 수 있는 외부 장치 상에 외부 장치 애플리케이션을 설치하도록 동작할 수 있으며, 상기 외부 장치 애플리케이션은 상기 무선 장치 애플리케이션과 데이터를 교환하고 함께 실행되도록 상기 외부 장치 자원을 제어하도록 동작할 수 있고, 상기 무선 장치 애플리케이션은 상기 무선 장치에서 무선 장치 관련-기능을 수행하기 위해 상기 무선 장치 자원과 함께 상기 외부 장치 자원을 활용하도록 동작할 수 있음 -; 및
    상기 메모리에 존재하며 상기 프로세서에 의해 실행될 수 있는 사용자 관리자 제어 로직 - 상기 사용자 관리자 제어 로직은 무선 네트워크를 통해 상기 무선 장치로 상기 애플리케이션 관리 패키지를 전송하도록 구성됨 - 을 포함하며,
    상기 무선 장치의 제어 하에서 동작하는 상기 외부 장치 자원을 통해 상기 외부 장치로부터 전송되는 데이터를 수신하도록 동작할 수 있는 정보 보관소(repository)를 더 포함하는,
    네트워크 서버 장치.
  38. 제 37항에 있어서,
    상기 메모리에 존재하며 다수의 외부 장치 애플리케이션들 및 다수의 장치 구동기들 중 적어도 하나의 목록을 갖는 주문형 장치 구동기/애플리케이션 모듈을 더 포함하며,
    애플리케이션 관리 모듈과 연관된 상기 외부 장치 애플리케이션은 장치 타입에 기초하여 다수의 외부 장치 애플리케이션들 중 선택된 애플리케이션을 포함하는, 네트워크 서버 장치.
  39. 삭제
  40. 무선 장치에 접속된 외부 장치 상의 장치 자원들을 사용하는 방법으로서,
    무선 장치에서 무선 장치 애플리케이션을 수신하는 단계;
    무선 장치-관련 기능을 수행하도록 상기 무선 장치 애플리케이션을 실행하는 단계 - 상기 무선 장치 애플리케이션은 무선 장치 기능-관련 데이터를 상기 무선 장치의 메모리에 저장함 -;
    추가적인 메모리 자원들이 상기 애플리케이션에 의해 요구되는지를 자동적으로 결정하는 단계;
    이용가능한 메모리를 포함하고 있는 외부 장치를 상기 무선 장치에 접속시키는 단계;
    상기 외부 장치 상에 무선 장치 인터페이스 컴포넌트들을 자동적으로 설치하는 단계; 및
    상기 무선 장치에서 상기 기능을 수행하는 것과 함께 상기 무선 장치 애플리케이션에 의해 생성되는 기능-관련 데이터의 적어도 일부를 상기 외부 장치의 이용가능한 메모리에 저장하는 단계를 포함하며,
    상기 무선 장치가 상기 외부 장치 상에서 원격 서버로의 네트워크 접속을 자동적으로 검출하고, 상기 외부 장치 상에서 검출된 상기 네트워크 접속을 통해 상기 저장된 기능-관련 데이터의 적어도 일부를 상기 원격 서버에 전송하는 단계를 더 포함하는,
    자원 사용 방법.
  41. 삭제
KR1020077026460A 2005-04-21 2006-04-21 외부 컴퓨팅 장치의 무선 장치-중앙 제어를 제공하기 위한방법들 및 장치 KR100937063B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US67386705P 2005-04-21 2005-04-21
US60/673,867 2005-04-21

Publications (2)

Publication Number Publication Date
KR20080000649A KR20080000649A (ko) 2008-01-02
KR100937063B1 true KR100937063B1 (ko) 2010-01-15

Family

ID=36994155

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077026460A KR100937063B1 (ko) 2005-04-21 2006-04-21 외부 컴퓨팅 장치의 무선 장치-중앙 제어를 제공하기 위한방법들 및 장치

Country Status (9)

Country Link
US (1) US20060258342A1 (ko)
EP (1) EP1872608A2 (ko)
JP (1) JP2008537452A (ko)
KR (1) KR100937063B1 (ko)
CN (1) CN101199222A (ko)
CA (1) CA2605664A1 (ko)
MX (1) MX2007013087A (ko)
TW (1) TWI331718B (ko)
WO (1) WO2006116026A2 (ko)

Families Citing this family (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658091B1 (en) 2002-02-01 2003-12-02 @Security Broadband Corp. LIfestyle multimedia security system
US20160065414A1 (en) 2013-06-27 2016-03-03 Ken Sundermeyer Control system user interface
US11489812B2 (en) 2004-03-16 2022-11-01 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
US20050216302A1 (en) 2004-03-16 2005-09-29 Icontrol Networks, Inc. Business method for premises management
US9729342B2 (en) 2010-12-20 2017-08-08 Icontrol Networks, Inc. Defining and implementing sensor triggered response rules
US10375253B2 (en) 2008-08-25 2019-08-06 Icontrol Networks, Inc. Security system with networked touchscreen and gateway
US9191228B2 (en) 2005-03-16 2015-11-17 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US8963713B2 (en) 2005-03-16 2015-02-24 Icontrol Networks, Inc. Integrated security network with security alarm signaling system
US11244545B2 (en) 2004-03-16 2022-02-08 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US10444964B2 (en) 2007-06-12 2019-10-15 Icontrol Networks, Inc. Control system user interface
US11113950B2 (en) 2005-03-16 2021-09-07 Icontrol Networks, Inc. Gateway integrated with premises security system
US11677577B2 (en) 2004-03-16 2023-06-13 Icontrol Networks, Inc. Premises system management using status signal
US9531593B2 (en) 2007-06-12 2016-12-27 Icontrol Networks, Inc. Takeover processes in security network integrated with premise security system
US11316958B2 (en) 2008-08-11 2022-04-26 Icontrol Networks, Inc. Virtual device systems and methods
US10142392B2 (en) 2007-01-24 2018-11-27 Icontrol Networks, Inc. Methods and systems for improved system performance
US8635350B2 (en) 2006-06-12 2014-01-21 Icontrol Networks, Inc. IP device discovery systems and methods
US10339791B2 (en) 2007-06-12 2019-07-02 Icontrol Networks, Inc. Security network integrated with premise security system
US20090077623A1 (en) 2005-03-16 2009-03-19 Marc Baum Security Network Integrating Security System and Network Devices
US10522026B2 (en) 2008-08-11 2019-12-31 Icontrol Networks, Inc. Automation system user interface with three-dimensional display
US10200504B2 (en) 2007-06-12 2019-02-05 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US11916870B2 (en) 2004-03-16 2024-02-27 Icontrol Networks, Inc. Gateway registry methods and systems
US20170118037A1 (en) 2008-08-11 2017-04-27 Icontrol Networks, Inc. Integrated cloud system for premises automation
US11159484B2 (en) 2004-03-16 2021-10-26 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
US10156959B2 (en) 2005-03-16 2018-12-18 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US11343380B2 (en) 2004-03-16 2022-05-24 Icontrol Networks, Inc. Premises system automation
US9141276B2 (en) 2005-03-16 2015-09-22 Icontrol Networks, Inc. Integrated interface for mobile device
US10062273B2 (en) 2010-09-28 2018-08-28 Icontrol Networks, Inc. Integrated security system with parallel processing architecture
US11277465B2 (en) 2004-03-16 2022-03-15 Icontrol Networks, Inc. Generating risk profile using data of home monitoring and security system
US10382452B1 (en) 2007-06-12 2019-08-13 Icontrol Networks, Inc. Communication protocols in integrated systems
US10721087B2 (en) 2005-03-16 2020-07-21 Icontrol Networks, Inc. Method for networked touchscreen with integrated interfaces
US9609003B1 (en) 2007-06-12 2017-03-28 Icontrol Networks, Inc. Generating risk profile using data of home monitoring and security system
US11811845B2 (en) 2004-03-16 2023-11-07 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US11190578B2 (en) 2008-08-11 2021-11-30 Icontrol Networks, Inc. Integrated cloud system with lightweight gateway for premises automation
US10313303B2 (en) 2007-06-12 2019-06-04 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
US11582065B2 (en) 2007-06-12 2023-02-14 Icontrol Networks, Inc. Systems and methods for device communication
US10237237B2 (en) 2007-06-12 2019-03-19 Icontrol Networks, Inc. Communication protocols in integrated systems
US11201755B2 (en) 2004-03-16 2021-12-14 Icontrol Networks, Inc. Premises system management using status signal
US8988221B2 (en) 2005-03-16 2015-03-24 Icontrol Networks, Inc. Integrated security system with parallel processing architecture
US11368429B2 (en) 2004-03-16 2022-06-21 Icontrol Networks, Inc. Premises management configuration and control
US7711796B2 (en) 2006-06-12 2010-05-04 Icontrol Networks, Inc. Gateway registry methods and systems
US11615697B2 (en) 2005-03-16 2023-03-28 Icontrol Networks, Inc. Premise management systems and methods
US11496568B2 (en) 2005-03-16 2022-11-08 Icontrol Networks, Inc. Security system with networked touchscreen
US20110128378A1 (en) 2005-03-16 2011-06-02 Reza Raji Modular Electronic Display Platform
US9450776B2 (en) 2005-03-16 2016-09-20 Icontrol Networks, Inc. Forming a security network including integrated security system components
US9306809B2 (en) 2007-06-12 2016-04-05 Icontrol Networks, Inc. Security system with networked touchscreen
US20170180198A1 (en) 2008-08-11 2017-06-22 Marc Baum Forming a security network including integrated security system components
US11700142B2 (en) 2005-03-16 2023-07-11 Icontrol Networks, Inc. Security network integrating security system and network devices
US10999254B2 (en) 2005-03-16 2021-05-04 Icontrol Networks, Inc. System for data routing in networks
US20120324566A1 (en) 2005-03-16 2012-12-20 Marc Baum Takeover Processes In Security Network Integrated With Premise Security System
JP4756994B2 (ja) * 2005-10-27 2011-08-24 キヤノン株式会社 ネットワークプリントシステム及びネットワーク周辺装置及び情報処理装置とプログラム
JP4865299B2 (ja) * 2005-11-02 2012-02-01 キヤノン株式会社 情報処理装置及び情報処理方法及びそのプログラム
US10079839B1 (en) 2007-06-12 2018-09-18 Icontrol Networks, Inc. Activation of gateway device
US8135342B1 (en) 2006-09-15 2012-03-13 Harold Michael D System, method and apparatus for using a wireless cell phone device to create a desktop computer and media center
US11706279B2 (en) 2007-01-24 2023-07-18 Icontrol Networks, Inc. Methods and systems for data communication
US7633385B2 (en) 2007-02-28 2009-12-15 Ucontrol, Inc. Method and system for communicating with and controlling an alarm system from a remote server
US9090939B1 (en) * 2007-04-03 2015-07-28 Kyocera Corporation System and method for peripheral device detection on mobile handset serial port
US8451986B2 (en) 2007-04-23 2013-05-28 Icontrol Networks, Inc. Method and system for automatically providing alternate network access for telecommunications
US8150371B2 (en) * 2007-05-03 2012-04-03 Qualcomm Incorporated Interactive control of access to services and capabilities of a mobile device
US7890299B2 (en) * 2007-05-21 2011-02-15 Qualcomm, Incorporated Providing event-controlled continuous logging for a mobile operating environment
US10389736B2 (en) 2007-06-12 2019-08-20 Icontrol Networks, Inc. Communication protocols in integrated systems
US10666523B2 (en) 2007-06-12 2020-05-26 Icontrol Networks, Inc. Communication protocols in integrated systems
US11316753B2 (en) 2007-06-12 2022-04-26 Icontrol Networks, Inc. Communication protocols in integrated systems
US11212192B2 (en) 2007-06-12 2021-12-28 Icontrol Networks, Inc. Communication protocols in integrated systems
US10523689B2 (en) 2007-06-12 2019-12-31 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US11089122B2 (en) 2007-06-12 2021-08-10 Icontrol Networks, Inc. Controlling data routing among networks
US10616075B2 (en) 2007-06-12 2020-04-07 Icontrol Networks, Inc. Communication protocols in integrated systems
US11646907B2 (en) 2007-06-12 2023-05-09 Icontrol Networks, Inc. Communication protocols in integrated systems
US10423309B2 (en) 2007-06-12 2019-09-24 Icontrol Networks, Inc. Device integration framework
US10498830B2 (en) 2007-06-12 2019-12-03 Icontrol Networks, Inc. Wi-Fi-to-serial encapsulation in systems
US11218878B2 (en) 2007-06-12 2022-01-04 Icontrol Networks, Inc. Communication protocols in integrated systems
US10051078B2 (en) 2007-06-12 2018-08-14 Icontrol Networks, Inc. WiFi-to-serial encapsulation in systems
US11601810B2 (en) 2007-06-12 2023-03-07 Icontrol Networks, Inc. Communication protocols in integrated systems
US12003387B2 (en) 2012-06-27 2024-06-04 Comcast Cable Communications, Llc Control system user interface
US11423756B2 (en) 2007-06-12 2022-08-23 Icontrol Networks, Inc. Communication protocols in integrated systems
US11237714B2 (en) 2007-06-12 2022-02-01 Control Networks, Inc. Control system user interface
US11831462B2 (en) 2007-08-24 2023-11-28 Icontrol Networks, Inc. Controlling data routing in premises management systems
WO2009033172A1 (en) 2007-09-07 2009-03-12 Kace Networks, Inc. Architecture and protocol for extensible and scalable communication
US11916928B2 (en) 2008-01-24 2024-02-27 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US8811196B2 (en) * 2008-02-19 2014-08-19 Qualcomm Incorporated Providing remote field testing for mobile devices
US20170185278A1 (en) 2008-08-11 2017-06-29 Icontrol Networks, Inc. Automation system user interface
US11729255B2 (en) 2008-08-11 2023-08-15 Icontrol Networks, Inc. Integrated cloud system with lightweight gateway for premises automation
US11792036B2 (en) 2008-08-11 2023-10-17 Icontrol Networks, Inc. Mobile premises automation platform
US11758026B2 (en) 2008-08-11 2023-09-12 Icontrol Networks, Inc. Virtual device systems and methods
US11258625B2 (en) 2008-08-11 2022-02-22 Icontrol Networks, Inc. Mobile premises automation platform
US9628440B2 (en) 2008-11-12 2017-04-18 Icontrol Networks, Inc. Takeover processes in security network integrated with premise security system
US8638211B2 (en) 2009-04-30 2014-01-28 Icontrol Networks, Inc. Configurable controller and interface for home SMA, phone and multimedia
KR20110062937A (ko) * 2009-12-04 2011-06-10 삼성전자주식회사 화상형성장치 및 클라이언트와 연결된 서버, 클라이언트 및 화상형성장치의 드라이버 원격설치방법
US8990361B2 (en) * 2010-04-23 2015-03-24 Psion Inc. Method and system for proximity-based, peer-initiated device configuration
AU2011250886A1 (en) 2010-05-10 2013-01-10 Icontrol Networks, Inc Control system user interface
KR101763426B1 (ko) * 2010-08-20 2017-07-31 삼성전자주식회사 외부기기 제어장치 및 방법
US8836467B1 (en) 2010-09-28 2014-09-16 Icontrol Networks, Inc. Method, system and apparatus for automated reporting of account and sensor zone information to a central station
US9113499B2 (en) * 2010-10-01 2015-08-18 Viasat, Inc. Multiple domain smartphone
KR101269223B1 (ko) * 2010-10-01 2013-06-13 주식회사 코리아퍼스텍 스마트폰을 이용한 원격 제어방법 및 장치
US8270963B1 (en) 2010-10-01 2012-09-18 Viasat, Inc. Cross domain notification
US8495731B1 (en) * 2010-10-01 2013-07-23 Viasat, Inc. Multiple domain smartphone
US8458800B1 (en) 2010-10-01 2013-06-04 Viasat, Inc. Secure smartphone
WO2012046891A1 (ko) * 2010-10-06 2012-04-12 엘지전자 주식회사 이동단말기, 디스플레이 장치 및 그 제어 방법
US11750414B2 (en) 2010-12-16 2023-09-05 Icontrol Networks, Inc. Bidirectional security sensor communication for a premises security system
US9147337B2 (en) 2010-12-17 2015-09-29 Icontrol Networks, Inc. Method and system for logging security event data
KR20120113642A (ko) * 2011-04-05 2012-10-15 삼성전자주식회사 차량용 헤드 유닛과 모바일 장치 간 데이터 교환을 위한 장치 및 방법
CN103946822B (zh) * 2011-09-30 2016-11-09 英特尔公司 用于促进定制在计算设备处的多用途互连代理的机制
DE102011122160A1 (de) * 2011-12-23 2013-06-27 Vodafone Holding Gmbh Mobiles Endgerät zum Betrieb in einem Mobilfunknetz mit wenigstens drei Speicherbereichen und über eine Schnittstelle mit dem mobilen Endgerät verbindbare Recheneinrichtung
JP5647157B2 (ja) * 2012-01-11 2014-12-24 日本電信電話株式会社 無線信号処理方法及び無線信号処理システム
GB201207816D0 (en) 2012-05-04 2012-06-13 Vodafone Ip Licensing Ltd Telecommunication networks
JP6052576B2 (ja) * 2012-05-30 2016-12-27 日本電気株式会社 情報処理システム、情報処理方法、情報処理装置、携帯端末およびその制御方法と制御プログラム
JP5980037B2 (ja) * 2012-08-06 2016-08-31 キヤノン株式会社 管理システム、サーバー、クライアント、及びその方法
JP6026318B2 (ja) 2013-02-27 2016-11-16 クラリオン株式会社 プログラム拡張システム、それに使用されるサーバ、プログラム拡張方法、および、プログラム管理プログラム
US9928975B1 (en) 2013-03-14 2018-03-27 Icontrol Networks, Inc. Three-way switch
US9867143B1 (en) 2013-03-15 2018-01-09 Icontrol Networks, Inc. Adaptive Power Modulation
US9287727B1 (en) 2013-03-15 2016-03-15 Icontrol Networks, Inc. Temporal voltage adaptive lithium battery charger
CN104049988A (zh) * 2013-03-15 2014-09-17 宇宙互联有限公司 图标界面更新系统及方法
CN104111844A (zh) * 2013-04-19 2014-10-22 腾讯科技(深圳)有限公司 在移动终端内安装应用程序的方法及系统
EP3031206B1 (en) 2013-08-09 2020-01-22 ICN Acquisition, LLC System, method and apparatus for remote monitoring
US11146637B2 (en) 2014-03-03 2021-10-12 Icontrol Networks, Inc. Media content management
US11405463B2 (en) 2014-03-03 2022-08-02 Icontrol Networks, Inc. Media content management
CN105988824A (zh) * 2015-01-29 2016-10-05 正文科技股份有限公司 多个智能装置的程序同步更新方法及其更新系统
US10147061B2 (en) * 2015-06-29 2018-12-04 Applied Software Technology, Inc. Integrating a construction jobsite system with external tools
JP7211856B2 (ja) * 2019-03-11 2023-01-24 本田技研工業株式会社 エージェント装置、エージェントシステム、サーバ装置、エージェント装置の制御方法、およびプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020096105A (ko) * 2001-06-16 2002-12-31 엘지전자 주식회사 이동 무선 단말기를 이용한 디지털 장비 업그레이드 방법
KR20050030979A (ko) * 2003-09-27 2005-04-01 삼성전자주식회사 휴대용 무선단말기의 보조 메모리를 갖는 이어 마이크로폰장치 및 그 운영 방법

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3110035B2 (ja) * 1990-06-07 2000-11-20 株式会社東芝 携帯可能電子装置
JPH08314846A (ja) * 1995-05-23 1996-11-29 Kofu Nippon Denki Kk 一実装位置に多種装置接続可能な情報処理システム
JP2919400B2 (ja) * 1996-11-22 1999-07-12 埼玉日本電気株式会社 携帯電話機
US6684397B1 (en) * 1997-09-08 2004-01-27 Novell, Inc. Auto-install apparatus and method
JPH11252197A (ja) * 1998-02-27 1999-09-17 Kyocera Corp 着脱式無線通信端末装置
JP3913890B2 (ja) * 1998-03-17 2007-05-09 株式会社東芝 移動無線通信端末装置
JP4197061B2 (ja) * 1998-05-15 2008-12-17 大日本印刷株式会社 包装袋
US6161134A (en) * 1998-10-30 2000-12-12 3Com Corporation Method, apparatus and communications system for companion information and network appliances
US7505974B2 (en) * 1999-02-12 2009-03-17 Gropper Robert L Auto update utility for digital address books
JP2001103568A (ja) * 1999-09-30 2001-04-13 Toshiba Corp 通信システム、この通信システムに用いられる移動体通信装置、携帯型情報処理装置及びデータ通信方法
JP2001309024A (ja) * 2000-04-19 2001-11-02 Seiko Instruments Inc 無線装置
JP2001320496A (ja) * 2000-05-11 2001-11-16 Nec Corp 遠隔制御方法、システム、サーバ、情報処理装置、および記録媒体
US7005966B1 (en) * 2000-05-18 2006-02-28 Micron Technology, Inc. Remote computer controller and control method
JP2001352373A (ja) * 2000-06-08 2001-12-21 Nintendo Co Ltd 携帯端末を用いた表示処理システム、それに用いられる携帯端末、およびそれに用いられる変換アダプタ
JP2002330473A (ja) * 2001-03-02 2002-11-15 Seiko Epson Corp 装着型無線通信装置、携帯電話装置、それらの制御方法、無線通信システムの制御方法、制御プログラムおよび記録媒体
US11467856B2 (en) * 2002-12-12 2022-10-11 Flexiworld Technologies, Inc. Portable USB device for internet access service
US20020051200A1 (en) * 2000-11-01 2002-05-02 Chang William Ho Controller for device-to-device pervasive digital output
JP2002152695A (ja) * 2000-11-07 2002-05-24 Nec Corp 分離型携帯画像端末システム
JP4502499B2 (ja) * 2000-12-04 2010-07-14 株式会社東芝 無線通信端末
JP2002232946A (ja) * 2001-01-31 2002-08-16 Mitsumi Electric Co Ltd モバイルコンピューティングシステム
US6754895B1 (en) * 2001-04-26 2004-06-22 Palm Source, Inc. Method and system for automatic firmware updates in a portable hand-held device
JP2003009250A (ja) * 2001-06-27 2003-01-10 Matsushita Electric Ind Co Ltd 無線通信システム
JP2003022236A (ja) * 2001-07-09 2003-01-24 Fujitsu Ltd モバイル装置によるサーバから別のサーバへのコンテンツ・データのダウンロードの遠隔制御
JP2003032381A (ja) * 2001-07-17 2003-01-31 Casio Comput Co Ltd 情報通信端末装置、及びプログラム
US20030041125A1 (en) * 2001-08-16 2003-02-27 Salomon Kirk C. Internet-deployed wireless system
US20030073432A1 (en) * 2001-10-16 2003-04-17 Meade, William K. Mobile computing device with method and system for interrupting content performance among appliances
DE10153747A1 (de) * 2001-10-31 2003-05-28 Siemens Ag Mobiles Endgerät sowie Kommunikationssystem mit integriertem mobilen Endgerät
US20030118015A1 (en) * 2001-12-20 2003-06-26 Magnus Gunnarsson Location based notification of wlan availability via wireless communication network
US20040203800A1 (en) * 2002-10-24 2004-10-14 John Myhre System and method for content delivery using alternate data paths in a wireless network
US20040148229A1 (en) * 2002-11-01 2004-07-29 Maxwell Scott Kevin Method and system for online software purchases
JP2004206749A (ja) * 2002-12-24 2004-07-22 Funai Electric Co Ltd データ記憶装置
US20040176118A1 (en) * 2003-02-18 2004-09-09 Michael Strittmatter Service attribute based filtering system and method
US7383061B1 (en) * 2003-04-02 2008-06-03 Palm, Inc. Peripheral device for a wireless communication device
US7299315B2 (en) * 2003-04-02 2007-11-20 Nisca Corporation Control device including connecting device for rewriting memory region
US7539759B2 (en) * 2003-04-15 2009-05-26 Panasonic Corporation Session endpoint management protocol
US20050003810A1 (en) * 2003-05-28 2005-01-06 Sun Microsystems, Inc. Method and system for optimizing software program start-up time
JP4462852B2 (ja) * 2003-06-23 2010-05-12 株式会社日立製作所 ストレージシステム及びストレージシステムの接続方法
TW200527314A (en) * 2004-02-13 2005-08-16 Incomm Technologies Co Ltd Portable memory device having multiple transmission interface
US20060018270A1 (en) * 2004-06-30 2006-01-26 Forand Richard A Method and system for n-way synchronization with partial or full content
US7818005B2 (en) * 2004-09-27 2010-10-19 Siemens Enterprise Communications, Inc. System and method for setting presence status based on access point usage
US7796975B2 (en) * 2004-11-23 2010-09-14 Sony Ericsson Mobile Communications Ab Method of transferring data files to and from a portable wireless communication device
US20060160569A1 (en) * 2005-01-14 2006-07-20 Mediatek Inc. Cellular phone and portable storage device using the same
US7778675B1 (en) * 2005-01-14 2010-08-17 American Megatrends, Inc. Remotely accessing a computing device in a low-power state

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020096105A (ko) * 2001-06-16 2002-12-31 엘지전자 주식회사 이동 무선 단말기를 이용한 디지털 장비 업그레이드 방법
KR20050030979A (ko) * 2003-09-27 2005-04-01 삼성전자주식회사 휴대용 무선단말기의 보조 메모리를 갖는 이어 마이크로폰장치 및 그 운영 방법

Also Published As

Publication number Publication date
WO2006116026A2 (en) 2006-11-02
TWI331718B (en) 2010-10-11
CN101199222A (zh) 2008-06-11
KR20080000649A (ko) 2008-01-02
JP2008537452A (ja) 2008-09-11
US20060258342A1 (en) 2006-11-16
WO2006116026A3 (en) 2007-02-01
EP1872608A2 (en) 2008-01-02
CA2605664A1 (en) 2006-11-02
MX2007013087A (es) 2008-01-14
TW200643734A (en) 2006-12-16

Similar Documents

Publication Publication Date Title
KR100937063B1 (ko) 외부 컴퓨팅 장치의 무선 장치-중앙 제어를 제공하기 위한방법들 및 장치
JP5107899B2 (ja) 無線デバイスのマルチメディア性能状況を決定するための方法及び装置
KR101133596B1 (ko) 무선 디바이스 상에서 구성가능한 태스크 관리를 제공하기 위한 장치 및 방법들
US8065554B2 (en) Communication device and a method of self-healing thereof
JP5485201B2 (ja) 分析装置、受容試験方法および受容試験装置
JP4658186B2 (ja) 無線デバイスのバッテリー性能管理装置および方法
KR101014461B1 (ko) 무선 통신 디바이스에서 허가되지 않은 실행가능한 명령들의 검출 및 관리를 위한 장치 및 방법
KR101145987B1 (ko) 무선 장치를 위한 다운로드 가능 구성 애플리케이션
US8886179B2 (en) Fielded device failure tracking and response
US7461373B2 (en) Apparatus and method for upgrading software of a wireless mobile station
US7925715B2 (en) Apparatus and methods for service programming of a wireless device on a wireless communications network
EP1429569A1 (en) Mobile station and method for selectively downloading components of a software by comparing component specific version numbers
KR20050085836A (ko) 디바이스상의 컴포넌트들을 자동으로 처리하기 위한 시스템
KR20100105758A (ko) 원격 장치 데이터를 통한 무선 네트워크 최적화
KR20090048473A (ko) 접속 품질 메트릭들을 결정하는 장치 및 방법들
US7117494B2 (en) System and method for bi-directional communication and execution of dynamic instruction sets
US20110213843A1 (en) System and method for providing access to a service relating to an account for an electronic device in a network
KR100974662B1 (ko) 이동 통신 단말기 및 이의 펌웨어 업데이트 방법
US8977252B1 (en) System and method for automatic detection and recovery of malfunction in mobile devices
EP2369472A1 (en) System and method for providing access to a service relating to an account for an electronic device in a network
KR20050023357A (ko) 원격 장치 데이터를 통한 무선 네트워크 최적화

Legal Events

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