KR101634630B1 - 위치 소스로의 액세스를 제어하는 디바이스, 시스템, 방법 및 저장 매체 - Google Patents

위치 소스로의 액세스를 제어하는 디바이스, 시스템, 방법 및 저장 매체 Download PDF

Info

Publication number
KR101634630B1
KR101634630B1 KR1020147025147A KR20147025147A KR101634630B1 KR 101634630 B1 KR101634630 B1 KR 101634630B1 KR 1020147025147 A KR1020147025147 A KR 1020147025147A KR 20147025147 A KR20147025147 A KR 20147025147A KR 101634630 B1 KR101634630 B1 KR 101634630B1
Authority
KR
South Korea
Prior art keywords
location
application
location information
caching
requested
Prior art date
Application number
KR1020147025147A
Other languages
English (en)
Other versions
KR20140135187A (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 KR20140135187A publication Critical patent/KR20140135187A/ko
Application granted granted Critical
Publication of KR101634630B1 publication Critical patent/KR101634630B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/0205Details
    • G01S5/0244Accuracy or reliability of position solution or of measurements contributing thereto
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • 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/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72457User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to geographic location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • 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

Abstract

몇몇 예시적인 실시예는 위치 소스로의 액세스를 제어하는 디바이스, 시스템 및/또는 방법을 포함한다. 예를 들어, 디바이스는 2개 이상의 위치 소스로부터 검색된 위치 정보에 기초하여 캐시 내에 캐싱된 위치 정보를 저장하고, 적어도 하나의 애플리케이션으로부터 적어도 하나의 위치 요청을 수신하고, 위치 소스들 중 적어도 하나로부터 요청된 위치 정보를 검색하는 것과 캐시로부터 요청된 위치 정보를 검색하는 것 중 하나를 선택하고, 요청된 위치 정보를 포함하는 위치 응답을 애플리케이션에 제공하기 위한 위치 캐싱 제어기를 포함할 수도 있다.

Description

위치 소스로의 액세스를 제어하는 디바이스, 시스템, 방법 및 저장 매체 {DEVICE, SYSTEM AND METHOD OF CONTROLLING ACCESS TO LOCATION SOURCES}
연속적인 위치 인식은 현대 컴퓨팅 디바이스에서 고도로 바람직한 특징이다. 이 능력은 예를 들어, 위치-기반 애플리케이션, 상황 인식 컴퓨팅(Contextual Aware Computing) 및/또는 다수의 LES(Location Enabled Services: 위치 처리 서비스) 애플리케이션을 지원하도록 요구되고, 여기서 이들 애플리케이션 및 서비스들은 모두 위치 업데이트(주기적 또는 산발적/1회)를 요구한다.
디바이스에 의해 실행되는 애플리케이션은 디바이스의 추정된 위치를 결정하기 위해 하나 이상의 위치 데이터 소스로부터 수신된 위치를 사용할 수도 있다. 예를 들어, 도로 네비게이션 애플리케이션은 예를 들어 글로벌 네비게이션 위성 시스템(Global Navigation Satellite System: GNSS)의 위성, 셀룰러 기반 포지셔닝 서비스(cellular based positioning service), WiFi 기반 포지셔닝 서비스 등으로부터 수신될 수도 있는 위치 데이터를 사용할 수도 있다.
디바이스의 에너지 소비는 예를 들어 장소 업데이트를 위한 위치 소스로의 액세스의 수에 의해 영향을 받을 수도 있다.
도시의 간단화 및 명료화를 위해, 도면에 도시된 요소들은 반드시 실제 축적대로 도시되어 있는 것은 아니다. 예를 들어, 몇몇 요소들의 치수는 제시의 명료화를 위해 다른 요소에 대해 과장되어 있을 수도 있다. 더욱이, 도면 부호는 대응 또는 유사 요소를 지시하기 위해 도면들 사이에서 반복될 수도 있다. 도면은 아래와 같다.
도 1은 몇몇 예시적인 실시예에 따른 시스템의 개략 블록 다이어그램이다.
도 2는 몇몇 예시적인 실시예에 따른 캐싱 프로파일을 동적으로 업데이트하는 방법의 개략 흐름도이다.
도 3은 몇몇 예시적인 실시예에 따른 제 1 및 제 2 애플리케이션, 위치 캐싱 제어기 및 하나 이상의 위치 소스에 의해 수행된 동작의 시퀀스의 개략도이다.
도 4는 몇몇 예시적인 실시예에 따른 위치 소스로의 액세스를 제어하는 방법의 개략 흐름도이다.
도 5는 몇몇 예시적인 실시예에 따른 제조 물품의 개략도이다.
이하의 상세한 설명에서, 수많은 특정 상세가 몇몇 실시예의 완전한 이해를 제공하기 위해 설명된다. 그러나, 몇몇 실시예는 이들 특정 상세 없이 실시될 수도 있다는 것이 당 기술 분야의 숙련자들에 의해 이해될 수 있을 것이다. 다른 경우에, 공지의 방법, 절차, 구성 요소, 유닛 및/또는 회로는 설명을 불명료하게 하지 않기 위해 상세히 설명되어 있지 않다.
예를 들어, "프로세싱", "컴퓨팅", "계산", "결정", "설정", "분석", "검사" 등과 같은 용어들을 이용하는 본 명세서에서의 설명은, 컴퓨터의 레지스터 및/또는 메모리 내의 물리(예를 들어, 전자)량으로서 표현된 데이터를, 동작 및/또는 프로세스를 수행하기 위한 명령어를 저장할 수도 있는 컴퓨터의 레지스터 및/또는 메모리 또는 다른 정보 저장 장치 내에 물리량으로서 유사하게 표현되는 다른 데이터로 조작하고 그리고/또는 변환하는 컴퓨터, 컴퓨팅 플랫폼, 컴퓨팅 시스템 또는 다른 전자 컴퓨팅 디바이스의 동작(들) 및/또는 프로세스(들)를 나타낼 수도 있다.
용어 "복수" 및 "복수의"는 본 명세서에 사용될 때, 예를 들어, "다수의" 또는 "2개 이상"을 포함한다. 예를 들어, "복수의 아이템"은 2개 이상의 아이템을 포함한다.
몇몇 실시예는 예를 들어 모바일 컴퓨터, 랩탑 컴퓨터, 노트북 컴퓨터, 태블릿 컴퓨터, 서버 컴퓨터, 핸드헬드 컴퓨터, 핸드헬드 디바이스, 개인 휴대 정보 단말(PDA) 디바이스, 핸드헬드 PDA 디바이스, 온-보드 디바이스, 오프-보드 디바이스, 하이브리드 디바이스, 차량용 디바이스, 비-차량용 디바이스, 모바일 또는 휴대용 디바이스, 소비자 디바이스, 비-모바일 또는 비-휴대용 디바이스, 무선 통신 스테이션, 무선 통신 디바이스, 무선 액세스 포인트(AP), 유선 또는 무선 라우터, 유선 또는 무선 모뎀, 비디오 디바이스, 오디오 디바이스, 오디오-비디오(A/V) 디바이스, 셋탑박스(STB), 블루레이 디스크(BD) 플레이어, BD 레코더, 디지털 비디오 디스크(DVD) 플레이어, 고선명도(HD) DVD 플레이어, DVD 레코더, HD DVD 레코더, 퍼스널 비디오 레코더(PVR), 브로드캐스트 HD 수신기, 비디오 소스, 오디오 소스, 비디오 싱크, 오디오 싱크, 스테레오 튜너, 브로드캐스트 무선기기 수신기, 평판 패널 디스플레이, 퍼스널 미디어 플레이어(PMP), 디지털 비디오 카메라(DVC), 디지털 오디오 플레이어, 스피커, 오디오 수신기, 오디오 증폭기, 게임기, 데이터 소스, 데이터 싱크, 디지털 스틸 카메라(DSC), 유선 또는 무선 네트워크, 무선 통신망, 무선 비디오 통신망(WVAN), 근거리 통신망(LAN), 무선 LAN(WLAN), 무선 도시권 통신망(WMAN) 통신 시스템, 개인 통신망(PAN), 무선 PAN(WPAN) 디바이스 및/또는 네트워크, 예를 들어, IEEE 802.11(IEEE 802.11-2007: Standard for Information technology - Telecommunications and information exchange between systems - Local and metropolitan area networks - Specific requirements , Part 11: Wireless LAN Medium Access Control ( MAC ) and Physical Layer ( PHY ) Specifications - 2007년 6월), 802.11n(" IEEE 802.11n-2009- Amendment 5: Enhancements for Higher Throughput . IEEE - SA . 2009년 10월 29일"), 802.1ac("Very High Throughput <6 Ghz"), 802.11 task group ad(TGad)("Very High Throughput 60 GHz"), 및/또는 이들의 미래 버전 및/또는 파생물을 포함하는 현존하는 IEEE 802.11 표준들("802.11 표준들")에 따라 동작하는 디바이스들 및/또는 네트워크들, 예를 들어 802.16(IEEE - Std 802.16, 2004 Edition , Air Interface for Fixed Broadband Wireless Access Systems), 802.16d, 802.16e(IEEE - Std 802.16e, 2005 Edition , Physical and Medium Access Control Layers for Combined Fixed and Mobile Operation in Licensed Bands), 802.16f, 802.16m 표준들 및/또는 이들의 미래 버전 및/또는 파생물을 포함하는 현존하는 IEEE 802.16 표준들("802.16 표준들")에 따라 동작하는 디바이스들 및/또는 네트워크들, standards ("the 802.16 standards"), 현존하는 무선-기가바이트-얼라이언스(WGA) 및/또는 WiressHDTM 사양 및/또는 이들의 미래 버전 및/또는 파생물에 따라 동작하는 디바이스들 및/또는 네트워크들, 예를 들어 3세대 파트너쉽 프로젝트(3GPP), 3GPP 장기 진화(LTE) 및/또는 이들의 미래 버전 및/또는 파생물과 같은 현존하는 셀룰러 사양 및/또는 프로토콜에 따라 동작하는 디바이스들 및/또는 네트워크들, 보안 사용자 플레인 위치(Secure User Plane Location: SUPL) 프로토콜(SUPL - OMA - AD - SUPL - V2 .0 5.3.1.8) 및/또는 이들의 미래 버전 및/또는 파생물을 포함하는 현존하는 오픈 모바일 얼라이언스(Open Mobile Alliance: OMA) 표준들에 따라 동작하는 디바이스들 및/또는 네트워크들, W3C 하이퍼텍스트 마크업 언어( HTML ) 버전 5, 2010년 10월 및/또는 이들의 미래 버전 및/또는 파생물을 포함하는 현존하는 월드와이드웹 콘소시엄(World-Wide-Web Consortium: W3C) 표준들에 따라 동작하는 디바이스들 및/또는 네트워크들, 상기 네트워크들의 부분인 유닛들 및/또는 디바이스들, 일방향 및/또는 2방향 무선 통신 시스템, 셀룰러 무선-전화 통신 시스템, 셀룰러 전화, 무선 전화, 퍼스널 통신 시스템(Personal Communication Systems: PCS) 디바이스, 무선 통신 디바이스를 합체하는 PDA 디바이스, 모바일 또는 휴대용 글로벌 포지셔닝 시스템(GPS) 디바이스, GPS 수신기 또는 송수신기 또는 칩을 합체하는 디바이스, RFID 소자 또는 칩을 합체하는 디바이스, 다중 입력 다중 출력(MIMO) 송수신기 또는 디바이스, 글로벌 네비게이션 위성 시스템(GNSS) 디바이스, 하나 이상의 내부 안테나 및/또는 외부 안테나를 갖는 디바이스, 디지털 비디오 브로드캐스트(DVB) 디바이스 또는 시스템, 멀티-표준 무선 디바이스 또는 시스템, 유선 또는 무선 핸드헬드 디바이스, 예를 들어 스마트폰, 무선 애플리케이션 프로토콜(WAP), 블루투스(BT) 디바이스, 근거리 통신(NFC) 디바이스 등과 같은 다양한 디바이스 및 시스템과 함께 사용될 수도 있다.
몇몇 실시예는 예를 들어 무선 주파수(RF), 적외선(IR), 주파수-분할 멀티플렉싱(FDM), 직교 FDM(OFDM), 시분할 멀티플렉싱(TDM), 시분할 다중 접속(TDMA), 확장 TDMA(E-TDMA), 범용 패킷 무선 서비스(GPRS), 확장 GPRS, 코드-분할 다중 접속(CDMA), 광대역 CDMA(WCDMA), CDMA 2000, 단일-반송파 CDMA, 멀티-반송파 CDMA, 멀티-반송파 변조(MDM), 이산 멀티-톤(DMT), 블루투스
Figure 112014085272610-pct00001
, 글로벌 포지셔닝 시스템(GPS), 글로벌 네비게이션 위성 시스템(GNSS), Wi-Fi, Wi-Max, ZigBeeTM, 초광대역(UWB), 모바일 통신용 글로벌 시스템(GSM), 2G, 2.5G, 3G, 3.5G, GSM 진화를 위한 향상 데이터 레이트(EDGE), 블루투스(BT), 근거리 통신(NFC) 등과 같은 하나 이상의 유형의 무선 통신 신호 및/또는 시스템과 함께 사용될 수도 있다. 다른 실시예들이 다양한 다른 디바이스, 시스템 및/또는 네트워크에 사용될 수도 있다.
용어 "무선 디바이스"는 본 명세서에 사용될 때, 예를 들어 무선 통신이 가능한 디바이스, 무선 통신이 가능한 통신 디바이스, 무선 통신이 가능한 통신 스테이션, 무선 통신이 가능한 휴대용 또는 비-휴대용 디바이스 등을 포함한다. 몇몇 예시적인 실시예에서, 무선 디바이스는 컴퓨터와 일체인 주변 장치 또는 컴퓨터에 연결된 주변 장치일 수도 있거나 이들을 주변 장치를 포함할 수도 있다. 몇몇 예시적인 실시예에서, 용어 "무선 디바이스"는 무선 서비스를 제공하는데 사용될 수도 있다.
이제, 몇몇 예시적인 실시예에 따른 무선 통신 시스템(100)의 블록 다이어그램을 개략적으로 도시하는 도 1을 참조한다.
몇몇 예시적인 실시예에서, 시스템(100)은 디바이스(102)의 위치에 관련된 위치 정보(113)를 포함하는 무선 통신 신호를 수신하는 것이 가능한 무선 통신 디바이스(102)를 포함할 수도 있다. 디바이스(102)는 무선 통신 매체를 통해, 예를 들어 하나 이상의 안테나(107)를 거쳐 위치 정보(113)를 수신할 수도 있다.
몇몇 예시적인 실시예에서, 무선 매체는 예를 들어 무선 주파수(RF) 채널, WiFi 채널, 블루투스 채널, 셀룰러 채널, GNSS 채널, NFC 채널 등을 포함할 수도 있다.
몇몇 예시적인 실시예에서, 시스템(100)은 하나 이상의 안테나(108)를 거쳐 위치 정보(113)를 포함하는 무선 통신 신호를 전송하도록 구성된 적어도 하나의 디바이스(104)를 포함할 수도 있다.
예를 들어, 디바이스(104)는 예를 들어, GNSS의 위성, 하나 이상의 무선 충실도(WiFi) 핫스팟 또는 AP, 하나 이상의 블루투스 디바이스, 하나 이상의 셀룰러 디바이스, 하나 이상의 NFC 디바이스 등을 포함할 수도 있다.
몇몇 예시적인 실시예에서, 안테나(108 및/또는 107)는 무선 통신 신호, 블록, 프레임, 전송 스트림, 패킷, 메시지 및/또는 데이터를 전송 및/또는 수신하기에 적합한 임의의 유형의 안테나를 포함할 수도 있다. 안테나(108 및/또는 107)를 위해 사용될 수도 있는 안테나의 유형은 내부 안테나, 다이폴 안테나, 전방향성 안테나, 모노폴 안테나, 엔드피드 안테나, 원편광 안테나, 마이크로-스트립 안테나, 다이버시티 안테나, 위상 어레이 안테나 등을 포함할 수도 있지만, 이들에 한정되는 것은 아니다. 몇몇 실시예에서, 안테나(108 및/또는 107)는 개별 송수신 안테나 요소를 사용하여 송수신 기능성을 구현할 수도 있다. 몇몇 실시예에서, 안테나(108 및/또는 107)는 공통 및/또는 일체형 송수신 요소를 사용하여 송수신 기능성을 구현할 수도 있다.
몇몇 예시적인 실시예에서, 위치 정보(113)는 예를 들어 디바이스(104)의 위치 및/또는 디바이스(102)와 디바이스(104) 사이의 상대 위치에 관련될 수도 있다.
몇몇 예시적인 실시예에서, 디바이스(102)는 위치 정보(113)를 수신할 수도 있고, 위치 정보(113)에 기초하여 디바이스(102)의 위치를 결정할 수도 있다.
몇몇 예시적인 실시예에서, 디바이스(102)는 위치 정보(113)에 기초하여 디바이스(102)의 추정된 위치를 지시하는 위치 정보(119)를 제공하도록 구성된 하나 이상의 위치 정보 발생기(또한 "위치 소스" 또는 "위치 원점"이라 칭함)(141)를 포함할 수도 있다. 예를 들어, 위치 정보 발생기(141)는 예를 들어 디바이스(102)와 디바이스(104) 사이의 상대 위치를 계산함으로써 디바이스(104)의 위치에 기초하여 디바이스(102)의 위치를 추정할 수도 있다.
몇몇 예시적인 실시예에서, 위치 소스(141)의 하나 이상은 예를 들어 무선 통신 신호, RF 신호, 프레임, 블록, 전송 스트림, 패킷, 메시지, 데이터 아이템 및/또는 데이터를 송신하고 그리고/또는 수신하는 것이 가능한 하나 이상의 무선 송신기, 수신기 및/또는 송수신기를 포함하는 적어도 하나의 무선 통신 유닛(106)을 포함할 수도 있거나 또는 그 부분으로서 구현될 수도 있다. 예를 들어, 위치 소스(141) 중 하나 이상은 무선 네트워크 인터페이스 카드(NIC) 등을 포함할 수도 있거나 또는 그 부분으로서 구현될 수도 있다.
몇몇 예시적인 실시예에서, 위치 정보 발생기(141)는 예를 들어 위성과 같은 적어도 하나의 GNSS 디바이스로부터 수신된 위치 정보에 기초하여 디바이스(102)의 위치를 추정하도록 구성된 GNSS 수신기; 예를 들어 WiFi 핫스팟 또는 AP와 같은 적어도 하나의 WiFi 디바이스로부터 수신된 위치 정보에 기초하여 디바이스(102)의 위치를 추정하도록 구성된 WiFi 위치 정보 발생기; 적어도 하나의 BT 디바이스로부터 수신된 위치 정보에 기초하여 디바이스(102)의 위치를 추정하도록 구성된 블루투스 위치 정보 발생기; 적어도 하나의 NFC 디바이스로부터 수신된 위치 정보에 기초하여 디바이스(102)의 위치를 추정하도록 구성된 NFC 위치 정보 발생기; 예를 들어 셀룰러 안테나 및/또는 셀룰러 오퍼레이터와 같은 적어도 하나의 셀룰러 디바이스로부터 수신된 위치 정보에 기초하여 디바이스(102)의 위치를 추정하도록 구성된 셀룰러 위치 정보 발생기 중 하나 이상을 포함할 수도 있다.
몇몇 예시적인 실시예에서, 디바이스(102)는 디바이스(102)에 의해 실행된 하나 이상의 애플리케이션(131)을 포함할 수도 있다.
몇몇 예시적인 실시예에서, 디바이스(102)는 예를 들어 모바일 컴퓨터, 랩탑 컴퓨터, 노트북 컴퓨터, 태블릿 컴퓨터, 핸드헬드 컴퓨터, 핸드헬드 디바이스, PDA 디바이스, 핸드헬드 PDA 디바이스, 온-보드 디바이스, 오프-보드 디바이스, 하이브리드 디바이스(예를 들어 휴대폰 기능성을 PDA 디바이스 기능성과 조합함), 소비자 디바이스, 차량용 디바이스, 비-차량용 디바이스, 휴대폰, PCS 디바이스, 무선 통신 디바이스를 합체하는 PDA 디바이스, 모바일 또는 휴대용 GPS 디바이스, 비교적 소형 컴퓨팅 디바이스, 비-데스크탑 컴퓨터, "작은 크기 뛰어난 능력(Carry Small Live Large: CSLL)" 디바이스, 울트라 모바일 디바이스(UMD), 울트라 모바일 PC(UMPC), 모바일 인터넷 디바이스(MID), "오리가미(Origami)" 디바이스 또는 컴퓨팅 디바이스, 동적 콤포저블 컴퓨팅(Dynamically Composable Computing: DCC)을 지원하는 디바이스, 상황 인식 디바이스, 비디오 디바이스, 오디오 디바이스, A/V 디바이스, BD 플레이어, BD 레코더, DVD 플레이어, HD DVD 플레이어, DVD 레코더, HD DVD 레코더, PVR, 브로드캐스트 HD 수신기, 비디오 싱크, 오디오 싱크, 스테레오 튜너, 브로드캐스트 무선기기 수신기, 평판 패널 디스플레이, PMP, DVC, 디지털 오디오 플레이어, 스피커, 오디오 수신기, 게임기, 오디오 증폭기, 데이터 소스, 데이터 싱크, DSC, 미디어 플레이어, 스마트폰, 텔레비전, 음악 플레이어 등과 같은 모바일 또는 휴대용 디바이스를 포함할 수도 있거나 또는 이들의 부분으로서 포함될 수도 있다.
몇몇 예시적인 실시예에서, 디바이스(102)는 예를 들어 프로세서(164), 입력 유닛(166), 출력 유닛(169), 메모리 유닛(170), 및 저장 유닛(171) 중 하나 이상을 포함할 수도 있다. 디바이스(102)는 선택적으로 다른 적합한 하드웨어 구성 요소 및/또는 소프트웨어 구성 요소를 포함할 수도 있다. 몇몇 실시예에서, 디바이스(102)의 구성 요소의 일부 또는 모두는 공통 하우징 또는 패키징 내에 봉입될 수도 있고, 하나 이상의 유선 또는 무선 링크를 사용하여 상호 접속되거나 동작적으로 연계될 수도 있다. 다른 실시예에서, 디바이스(102)의 구성 요소는 다수의 또는 개별 디바이스 또는 위치 사이에 분배될 수도 있다.
프로세서(164)는 예를 들어 중앙 처리 유닛(CPU), 디지털 신호 프로세서(DSP), 하나 이상의 프로세서 코어, 단일-코어 프로세서, 듀얼-코어 프로세서, 다중-코어 프로세서, 마이크로프로세서, 호스트 프로세서, 제어기, 복수의 프로세서 또는 제어기, 칩, 마이크로칩, 하나 이상의 회로, 회로, 논리 유닛, 집적 회로(IC), 응용 주문형 IC(ASIC), 또는 임의의 다른 적합한 다용도 또는 특정 프로세서 또는 제어기를 포함할 수도 있다. 프로세서(164)는 예를 들어 무선 통신 디바이스(102)의 운영 체제(OS)의, 애플리케이션(131) 중 하나 이상의, 그리고/또는 하나 이상의 적합한 애플리케이션의 명령어를 실행한다.
입력 유닛(166)은 예를 들어 키보드, 키패드, 마우스, 터치패드, 트랙볼, 스타일러스, 마이크로폰, 또는 다른 적합한 포인팅 디바이스 또는 입력 디바이스를 포함한다. 출력 유닛(169)은 예를 들어 모니터, 스크린, 평판 패널 디스플레이, 음극선관(CRT) 디스플레이 유닛, 액정 디스플레이(LCD) 디스플레이 유닛, 플라즈마 디스플레이 유닛, 하나 이상의 오디오 스피커 또는 이어폰, 또는 다른 적합한 출력 디바이스를 포함한다.
메모리 유닛(170)은 예를 들어, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 동적 RAM(DRAM), 동기 DRAM(SD-RAM), 플래시 메모리, 휘발성 메모리, 비휘발성 메모리, 캐시 메모리, 버퍼, 단기 메모리 유닛, 장기 메모리 유닛, 또는 다른 적합한 메모리 유닛을 포함한다. 저장 유닛(171)은 예를 들어, 하드 디스크 드라이브, 플로피 디스크 드라이브, 콤팩트 디스크(CD) 드라이브, CD-ROM 드라이브, DVD 드라이브, 또는 다른 적합한 이동식 또는 비이동식 저장 유닛을 포함한다. 메모리 유닛(170) 및/또는 저장 유닛(171)은 예를 들어 무선 통신 디바이스(102)에 의해 프로세싱된 데이터를 저장할 수도 있다. 예를 들어, 메모리(170) 및/또는 저장 유닛(171)은 애플리케이션(131) 중 하나 이상 내에서 발생하는 명령어를 저장할 수도 있다.
몇몇 예시적인 실시예에서, 애플리케이션(131)은 위치 정보(119)를 사용하고 그리고/또는 프로세싱할 수도 있다. 애플리케이션(131)은 예를 들어 위치-기반 디바이스 페르소나의 애플리케이션, 상황 인식 컴퓨팅의 애플리케이션, 하나 이상의 LES(위치 처리 서비스) 애플리케이션 등을 포함할 수도 있다.
일례에서, 애플리케이션(131)은 도로/육상에서 차량을 네비게이팅하기 위해 위치 정보(119)를 사용할 수도 있는 도로/육상 네비게이션 애플리케이션을 포함할 수도 있다.
다른 예에서, 애플리케이션(131)은 소비자 애플리케이션, 소셜 애플리케이션, 엔터테인먼트 애플리케이션, 스포츠 애플리케이션, 예를 들어 런닝 애플리케이션, 자전거 투어 애플리케이션 등, 위치 기반 추천 애플리케이션, 예를 들어 레스토랑 추천 애플리케이션, 관광 위치 추천 애플리케이션, 엔터테인먼트 추천 애플리케이션 등, 트랙킹 애플리케이션, 예를 들어 플릿(fleet) 관리 애플리케이션, 배송 관리 애플리케이션, 수송 관리 애플리케이션 등을 포함할 수도 있다.
몇몇 예시적인 실시예에서, 애플리케이션(131)은 위치 소스(141)로부터 위치 정보(119)를 요청하기 위한 위치 요청(113)을 발생할 수도 있다.
몇몇 예시적인 실시예에서, 애플리케이션(131)에 의해 발생된 위치 요청은 예를 들어 타이밍, 의도 및/또는 정확도의 견지에서 동기화되지 않을 수도 있다.
예를 들어, 2개의 애플리케이션(131)이 시간 시프트를 갖고 동일한 위치 요청을 요청하여, 예를 들어 위치 소스, CPU 및/또는 하드웨어가 양 요청을 프로세싱하고 그리고/또는 양 요청에 대해 웨이크업하게 강요하면, 시간적 동기화의 결여가 존재할 수도 있다.
상이한 의도 특성에 기인하는 동기화의 결여는 예를 들어, 애플리케이션(131)이 상이한 목적으로 위치 정보를 사용하면 발생할 수도 있다. 예를 들어, 애플리케이션(131)의 일부는 맵 상에 위치를 표시하도록 구성될 수도 있고, 반면에 애플리케이션(131)의 일부는 디바이스(102)의 사용자가 다른 친구들 등에 가까운지를 인지할 필요만이 있을 수도 있다.
상이한 정확도 특성에 기인하는 동기화의 결여는 예를 들어, 애플리케이션(131)이 상이한 정확도 요구를 가지면 발생할 수도 있다. 예를 들어, 애플리케이션(131)의 일부, 예를 들어 네비게이션 및/또는 스마트 쇼핑 애플리케이션은 비교적 높은 제 1 정확도 레벨을 요구할 수도 있고, 반면에 애플리케이션(131)의 일부, 예를 들어 소셜 위치 공유 애플리케이션은 예를 들어 제 1 정확도 레벨에 비교하여, 비교적 낮은 제 2 정확도 레벨을 요구할 수도 있다. 예를 들어, 네비게이션 및/또는 스마트 쇼핑 애플리케이션은 예를 들어 수 미터의 정확도와 같은 매우 정확한 위치를 요구할 수도 있고, 반면에 소셜 위치 공유 애플리케이션은 상태 위치를 표시하기 위해 단지 도시명 또는 도시 이웃만을 요구할 수도 있다.
몇몇 예시적인 실시예에서, 위치 소스(141)가 위치 정보를 검색하기 위해("위치 업데이트") 액세스될수록, 더 많은 에너지가 디바이스(102)에 의해 사용된다. 이에 따라, 위치 소스(141)로의 액세스의 수를 감소시키고 그리고/또는 패턴을 제어하는 것이 바람직할 수도 있다.
몇몇 예시적인 실시예에서, 디바이스(102)는 예를 들어 이하에 상세히 설명되는 바와 같이 하나 이상의 애플리케이션(131)과 하나 이상의 위치 소스(141) 사이에 인터페이스하기 위한 액세스 제어기(110)를 포함할 수도 있다.
몇몇 예시적인 실시예에서, 액세스 제어기(110)는 예를 들어 이하에 설명되는 바와 같이 애플리케이션(131)으로부터 위치 요청(113)에 기초하여 위치 소스(141)에 제어 가능하게 액세스할 수도 있다.
몇몇 예시적인 실시예에서, 액세스 제어기(110)는, 예를 들어 이하에 더 상세히 설명되는 바와 같이, 요청(113)에 따라 요청된, 요청된 위치 정보를 위치 소스(141) 중 적어도 하나로부터 검색하는 것과 위치 소스(141) 중 적어도 하나로부터 이전에 검색된 위치 정보에 기초하는 캐싱된 위치 정보로부터 요청된 위치 정보를 검색하는 것 중 하나를 선택함으로써 위치 소스(141)에 제어 가능하게 액세스하도록 구성된 위치 캐싱 제어기의 기능성을 수행할 수도 있다.
부가적으로 또는 대안적으로, 몇몇 예시적인 실시예에서, 액세스 제어기(110)는, 예를 들어 이하에 설명되는 바와 같이, 예를 들어 위치 소스(141)의 특정 위치 소스로부터 위치 정보를 검색하기 위한 애플리케이션(131)의 2개 이상으로부터를 포함하여 2개 이상의 요청(113)을 특정 위치 소스로부터 위치 정보를 검색하기 위한 연합된(coalesced) 위치 요청으로 연합하고, 위치 소스로부터 검색된 위치 정보에 기초하여 2개 이상의 위치 응답을 2개 이상에 제공함으로써 위치 소스(141)를 제어 가능하게 액세스하도록 구성될 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는, 이하에 더 상세히 설명되는 바와 같이, 위치 소스(141) 중 2개 이상으로부터 검색된 위치 정보에 기초하는 캐싱된 위치 정보를 저장하여, 애플리케이션(131)의 적어도 하나의 애플리케이션으로부터 적어도 하나의 위치 요청을 수신하고, 2개 이상의 위치 소스(141) 중 적어도 하나로부터 요청된 위치를 검색하는 것과 캐싱된 위치 정보로부터 요청된 위치 정보를 검색하는 것 중 하나를 선택하고, 그리고 요청된 위치 정보를 포함하는 위치 응답을 애플리케이션(131)에 제공한다.
몇몇 예시적인 실시예에서, 디바이스(102)는 위치 소스(141)로부터 검색된 위치 정보에 대응하는 그리고/또는 위치 정보에 기초하는 캐싱된 위치 정보를 저장하기 위한 캐시 메모리(111)를 포함할 수도 있다.
몇몇 예시적인 실시예에서, 캐시 메모리(111)는 메모리(170)의 부분으로서, 제어기(110)의 부분으로서 그리고/또는 임의의 다른 메모리 및/또는 저장 요소 및/또는 유닛으로서 구현될 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 요청(113)에 기초하여 위치 소스(141)로부터 위치 정보를 검색할 수도 있고, 위치 소스(141)로부터 검색된 위치 정보에 기초하여 캐싱된 위치 정보를 메모리(111) 내에 저장할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 이하에 설명되는 바와 같이, 위치 요청(113)에 기초하여 위치 캐싱 프로파일(121)을 동적으로 업데이트할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 이하에 상세히 설명되는 바와 같이, 위치 캐싱 프로파일(121)에 기초하여, 위치 소스(141) 중 적어도 하나로부터 요청된 위치 정보를 검색하는 것과 캐시(111)의 캐싱된 위치 정보로부터 요청된 위치 정보를 검색하는 것 중 하나를 선택할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 애플리케이션(131)의 애플리케이션으로부터 위치 요청(113)을 수신할 수도 있고, 위치 요청에 응답하여 제어기(110)는 위치 캐싱 프로파일에 기초하여, 위치 소스(141)로부터 또는 캐시(111)의 캐싱된 위치 정보로부터 요청된 위치 정보를 검색해야 하는지 그리고 요청된 위치 정보를 포함하는 위치 응답(115)을 애플리케이션에 제공해야 하는지를 선택할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 위치 소스(141)로부터 위치 정보의 적응적 위치 캐싱을 제어할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 위치 요청(113)을 수락하고 예를 들어 통합된 동적 프로파일을 포함하는 프로파일(121)을 다수의 애플리케이션 요청(113)으로부터 발생하는 것을 담당할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 프로파일(121)에 따라 하나 이상의 위치 소스(141)로부터 위치 정보(119)를 유도할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 애플리케이션(131)과 위치 소스(141)와 통신하기 위해 전용 위치 의도 인터페이스, 비전용 인터페이스, 애플리케이션 프로그래밍 인터페이스(API), 또는 임의의 다른 인터페이스를 이용할 수도 있다. 몇몇 실시예에서, 제어기(110)는 디바이스(102)의 운영 시스템의 부분으로서 구현될 수 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 전용 전력 최적화된 위치 소스 인터페이스를 사용하여, 예를 들어 디바이스의 전력 소비를 최적화하고, 예를 들어 디바이스(102)의 총 전력 및/또는 위치 소스(141)의 총 전력 소비를 최적화할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 캐시(111) 내에 캐싱될 위치 정보를 선택하는 것 그리고/또는 캐시(111)로부터 또는 위치 소스(141)로부터 요청된 위치 정보를 검색하는 것 중 하나를 선택하도록 하나 이상의 적응적 위치 캐싱 전략을 사용할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 애플리케이션(131) 및/또는 소스(141)에 관련된 기준, 예를 들어 위치 정보의 요구되는 정확도, 이용 가능성 및/또는 관련성에 관련된 기준, 및/또는 디바이스(102)의 전력 소비에 관련된 기준, 예를 들어 디바이스(102)의 총 전력 소비 및/또는 위치 소스(141)의 총 전력 소비를 최적화하기 위한 기준에 기초하여 적응적 위치 캐싱 전략을 정의할 수도 있다.
몇몇 예시적인 실시예에서, 위치 캐싱 전략은 캐시(111) 내에 캐싱될 위치 정보를 선택하고 그리고/또는 캐시(111)로부터 또는 위치 소스(141)로부터 요청된 위치 정보를 검색하는 것 중 하나를 선택하는데 사용될 하나 이상의 캐싱 기준에 대응하는 하나 이상의 전략 계층을 포함할 수도 있다. 예를 들어, 위치 캐싱 전략은 예를 들어 이하에 설명되는 바와 같이, 이동 필터링 계층, 관련성 계층, 연합 계층, 및/또는 임의의 다른 계층을 포함할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 사전 정의된 순서에 따라 전략 계층을 통해 실행할 수도 있다. 예를 들어, 제어기(110)는 예를 들어 위치 캐싱 전략의 계층과 부합할 때, 캐시(111)로부터 요청된 위치 정보를 검색하도록 선택할 수도 있다. 제어기(110)는 예를 들어 전략 계층들 중 하나 이상이 고갈된 후에, 예를 단지 모든 계층들이 고갈된 후에 요청된 위치 정보를 검색하도록 위치 소스(141)에 액세스하도록 선택할 수도 있다.
몇몇 예시적인 실시예에서, 이동 필터링 계층은 디바이스(102)의 이동에 관한 적어도 하나의 이동 기준에 기초하여 위치 요청(113)을 필터링할 수도 있다.
예를 들어, 이동 필터링 계층은 디바이스(102)의 "상당한 이동"이 존재하는지 여부를 판단하기 위해 하나 이상의 이동 센서로부터 그리고/또는 위치 소스(141) 중 하나 이상으로부터 입력을 이용할 수도 있다. 이동 센서는 예를 들어, 예로서 디바이스(102)의 위치 및/또는 배향에 관한 정보에 기초하여 디바이스(102)의 이동을 검출하기 위한 소프트웨어 검출기, 예를 들어 자이로스코픽 이동 검출기와 같은 하드웨어 검출기, 및/또는 임의의 다른 이동 검출기를 포함할 수도 있다. 다른 예에서, 제어기(110)는 애플리케이션(131) 중 하나 이상 및/또는 위치 소스(141)의 하나 이상으로부터 디바이스(102)의 이동의 지시를 수신할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 이동 기준에 기초하여, 위치 소스(141) 중 적어도 하나로부터 또는 캐시(111)의 캐싱된 위치 정보로부터 요청된 위치 정보를 검색해야 하는지를 선택할 수도 있다.
예를 들어, 제어기(110)는 예를 들어 디바이스(102)의 감지된 이동이 사전 정의된 이동 임계치 이하이면, 예로서 위치 소스(141)에 액세스하지 않고, 캐시(111)의 캐싱된 위치 정보로부터 요청된 위치 정보를 검색하도록 선택할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 이동 기준이 충족되지 않으면, 예를 들어 디바이스(102)의 감지된 이동이 이동 임계치보다 크면, 다음의 전략 계층, 예를 들어 관련성 계층을 검사하도록 선택할 수도 있다.
몇몇 예시적인 실시예에서, 관련성 계층은 특정 애플리케이션(131)에 대한 캐싱된 위치 정보의 관련성을 정의하는 적어도 하나의 관련성 기준에 기초하여 특정 애플리케이션(131)으로부터 위치 요청(131)을 분류한다.
관련성 기준은 예를 들어 특정 애플리케이션(131)에 의해 요청된 위치 정보의 의도된 사용을 정의하는 의도 파라미터, 위치 요청(131)의 타이밍에 관한 시간 파라미터, 요청된 위치 정보의 요구된 정확성을 정의하는 정확도 파라미터, 주요 성능 인디케이터(key-performance-indicator: KPI) 및/또는 임의의 다른 관련성 파라미터 중 하나 이상에 관련될 수도 있다.
예를 들어, 제 1 애플리케이션(131)은 예를 들어 위치 정보의 덜 빈번한 업데이트를 요구할 수도 있는 소셜 애플리케이션과 같은 요청된 위치 정보를 위한 제 2 의도된 용도를 가질 수도 있는 제 2 애플리케이션(131)에 비교할 때, 비교적 최근의 최신 위치 정보를 요구할 수도 있는 예를 들어 차량 네비게이션과 같은 요청된 위치 정보에 대한 제 1 의도된 용도를 가질 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 관련성 기준에 기초하여, 위치 소스(141)의 적어도 하나로부터 또는 캐시(111)의 캐싱된 위치 정보로부터 요청된 위치 정보를 검색해야 하는지 여부를 선택할 수도 있다.
일례에서, 애플리케이션(131)은 애플리케이션(131)에 의해 제공된 서비스의 유형에 따라 특징화될 수도 있고 그리고/또는 위치 소스(141)는 위치 소스(141)에 의해 이용된 위치 추정 기술에 따라 특징화될 수도 있다.
예를 들어, 애플리케이션(131)에 대응하는 정확도 기준은 예를 들어 이하와 같이 사전 정의될 수도 있다.
Figure 112014085272610-pct00002
예를 들어, 위치 소스(141)에 대응하는 정확도 기준은 예를 들어 이하와 같이 사전 정의될 수도 있다.
Figure 112014085272610-pct00003
예를 들어, 제어기(110)는, 예를 들어 표 1 및/또는 표 2의 정확도 요구에 따라, 예를 들어 디바이스(102)의 최종 공지된 위치가 특정 애플리케이션(131)과 관련하여 관련성이 있는 것으로 간주되면, 위치 소스(141)에 액세스하지 않고, 캐시(111)의 캐싱된 위치 정보로부터 요청된 위치 정보를 검색하고 그리고/또는 캐싱된 위치 정보에 기초하여 위치 추정을 추정하도록 선택할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 위치 요청(113)에 기초하여 적응적 위치 캐싱 프로파일(121)을 선택적으로 업데이트하여, 새로운 통합된 동적 프로파일(121)을 계산하고 그리고/또는 선택적으로 위치 소스(141)의 하나 이상의 파라미터를 업데이트할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 애플리케이션(131)의 적어도 하나의 애플리케이션과 캐싱 프로파일(121)의 하나 이상의 계층을 협의할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 하나 이상의 KPI의 형태의 캐싱 프로파일(121)에 대응하는 하나 이상의 요청된 애플리케이션-특정 프로파일 및/또는 요청(113)을 애플리케이션(131)으로부터 수신할 수도 있다. 예를 들어, 제어기(110)는 프로파일(121)의 이동 필터링 계층에 의해 적용될 요청된 애플리케이션-특정 이동 임계치를 정의하는 이동 임계치 파라미터를 애플리케이션(131)으로부터 수신할 수도 있다. 부가적으로 또는 대안적으로, 제어기(110)는 프로파일(121)의 관련성 계층에 의해 적용될 하나 이상의 관련성 파라미터를 애플리케이션(131)으로부터 수신할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 요청된 애플리케이션-특정 프로파일 파라미터를 프로파일(121)에 적용해야 하는지 여부를 선택할 수도 있다. 제어기(110)는 예를 들어 요청된 애플리케이션-특정 프로파일 파라미터들 중 임의의 것을 이용하지 않도록, 그리고 요청된 애플리케이션-특정 프로파일 파라미터의 일부를 이용하도록, 또는 모든 요청된 애플리케이션-특정 프로파일 파라미터를 이용하도록 선택할 수도 있다. 이에 따라, 제어기(110)는 프로파일(121)의 업데이트된 프로파일 파라미터를 정의할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 업데이트된 프로파일(121) 및/또는 프로파일(121)의 하나 이상의 KPI에 관한 정보를 포함하는 프로파일 정보를 애플리케이션(131)에 재차 통신할 수도 있다. 예를 들어, 제어기(110)는 프로파일(121)의 업데이트된 프로파일 파라미터 중 하나 이상 및/또는 요청된 애플리케이션-특정 프로파일 파라미터에 관한 지시, 예를 들어 모든 요청된 애플리케이션-특정 프로파일 파라미터가 제어기(110)에 의해 수락되어 있다는 지시 또는 모든 요청된 애플리케이션-특정 프로파일 파라미터가 제어기(110)에 의해 거절되었다는 지시를 애플리케이션(131)에 재차 통신할 수도 있다.
몇몇 예시적인 실시예에서, 애플리케이션(131)은 프로파일 정보를 수신할 수도 있고, 업데이트된 프로파일(121)을 확인하고 그리고/또는 프로파일(121)의 하나 이상의 파라미터를 협의하도록 제어기(131)에 다른 요청을 송신하도록 결정할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 위치 캐싱 프로파일(121)에 기초하여 위치 소스(141) 중 하나 이상의 위치 소스의 하나 이상의 정보-검색 파라미터를 업데이트할 수도 있다. 위치 소스의 정보 검색 파라미터는 위치 소스의 동작에 관한 하나 이상의 파라미터, 예를 들어 위치 소스의 전력 모드, 위치 소스의 웨이크업 스케쥴 등; 위치 소스에 의해 제공될 위치 데이터에 관한 하나 이상의 파라미터, 예를 들어 데이터의 정확도, 위치 데이터가 제공될 레이트, 위치 데이터가 제공될 타이밍 등; 위치 소스의 구성에 관한 하나 이상의 파라미터 등을 포함할 수도 있다.
예를 들어, 제어기(110)는 프로파일(121)에 기초하여 특정 위치 소스(141)의 하나 이상의 파라미터를 조정하도록 특정 위치 소스(141)를 제어하는 것이 가능할 수도 있다.
일례에서, 제어기(110)는 프로파일(121)에 기초하여 특정 위치 소스(141)의 동작 모드의 구성을 제어할 수도 있다.
예를 들어, 프로파일(121)은 모든 애플리케이션(131)이 비교적 낮은 정확도 레벨에서 그리고/또는 비교적 낮은 업데이트 레이트에서 위치 정보를 요구하는 것을 정의하는 관련성 기준을 포함할 수도 있다. 이에 따라, 제어기(110)는 비교적 장시간 기간 동안 감소된 전력 모드로 스위칭하고 그리고/또는 낮은 업데이트 레이트에 따라 위치 소스(141)의 웨이크업 스케쥴을 정의하도록 위치 소스(141)를 제어할 수도 있다. 몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 디바이스(102)의 전력 소비에 관한 기준을 정의하는 전력 파라미터, 정확도 파라미터, 이용 가능성, 예를 들어 커버리지, 파라미터, 응답성(픽스 시간) 파라미터, 위치 파라미터, 예를 들어 실내, 실외 등, 활동 파라미터, 예를 들어 보행, 운전 등과 같은 프로파일(121)의 하나 이상의 파라미터를 업데이트할 수도 있다. 예를 들어, 제어기(110)는 위치 소스(141) 중 하나 이상의 하나 이상의 속성에 기초하여, 예를 들어 위치 소스(141)의 동작 모드에 기초하여 프로파일(121)의 하나 이상의 파라미터를 업데이트할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 제어기가 위치 소스(141)로부터 요청된 정보를 검색하도록 선택하면, 요청된 위치 정보를 검색하기 위해 특정 위치 소스(141)를 선택할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 위치 요청(113)에 기초하여 요청된 위치 정보를 검색하기 위해 특정 위치 소스(141)를 선택할 수도 있다.
일례에서, 위치 요청(113)은 요청 애플리케이션(131)에 의해 선택된 바람직한 위치 소스(141)의 지시를 포함할 수도 있다.
다른 예에서, 제어기(131)는 요청 애플리케이션(131)을 식별할 수도 있고, 요청 애플리케이션(131)의 아이덴티티에 기초하여 특정 위치 소스(141)를 선택할 수도 있다. 예를 들어, 제어기(131)는 요청 애플리케이션(131)에 관한 적어도 하나의 파라미터, 예를 들어 요청 애플리케이션(131)의 유형, 요청 애플리케이션(131)에 의해 요구된 위치 정보의 유형, 요청 애플리케이션(131)에 의해 요구된 위치 정보의 정확도 레벨 등에 기초하여 특정 위치 소스(141)를 선택할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 디바이스(102)의 최종 공지된 위치에 기초하여 요청된 위치 정보를 검색하기 위해 특정 위치 소스(141)를 선택할 수도 있다. 예를 들어, 제어기(110)는 최종 공지된 위치와 관련하여 예측된 더 높은 고레벨의 정확도 및/또는 예측된 감소된 전력 소비 레벨을 갖는 위치 소스를 선택하도록 구성될 수도 있다.
일례에서, 제어기(110)는 예를 들어 실외 위치와 같은 제 1 위치에서 예를 들어 GNSS 수신기와 같은 제 1 위치 소스(141)를, 그리고 예를 들어 실내 위치와 같은 제 2 위치에서 예를 들어, WiFi 수신기와 같은 제 2 위치 소스(141)를 선택할 수도 있다.
다른 예에서, 제어기(110)는 예를 들어 보행과 같은 제 1 활동에서 예를 들어 GNSS 수신기와 같은 제 1 위치 소스(141)를, 그리고 예를 들어 운전과 같은 제 2 활동에서 예를 들어 셀룰러 수신기와 같은 제 2 위치 소스(141)를 선택할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 예를 들어 이하에 설명되는 바와 같이, 복수의 애플리케이션(131)으로부터 위치 요청(113)을 연합하도록 구성될 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 프로파일(121)의 부분으로서 또는 프로파일과 함께 연합을 구현할 수도 있다. 예를 들어, 프로파일(121)은 적은 하드웨어 액세스를 산출하는 것에 대해, 공지의 주기적 위치 요청을 지원하도록 최적화된 위치 업데이트 패턴을 생성하기 위해 연합 방법을 이용하는 연합 계층을 포함할 수도 있다.
다른 예시적인 실시예에서, 제어기(110)는 프로파일(121)에 독립적으로 또는 심지어 캐시(11) 및/또는 프로파일(121)이 이용되지 않더라도 연합을 구현할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 적어도 하나의 위치 소스(141)로부터 위치 정보를 수신하기 위한 제 1 위치 요청(113)을 제 1 애플리케이션(131)으로부터 수신할 수 있고, 위치 소스(141)로부터 위치 정보를 수신하기 위한 제 2 위치 요청(113)을 제 2 애플리케이션(131)으로부터 수신할 수도 있고, 위치 소스(141)로부터 위치 정보를 검색하기 위해 제 1 및 제 2 위치 요청(1113)을 연합된 위치 요청(119) 내로 연합할 수도 있고, 위치 소스(141)로부터 검색된 위치 정보에 기초하여 제 1 및 제 2 위치 응답(115)을 제 1 및 제 2 애플리케이션(131)에 제공할 수도 있다.
몇몇 예시적인 실시예에서, 제 1 위치 요청(113)은 제 1 주기적 간격으로 위치 정보를 수신하기 위한 것일 수도 있고, 제 2 위치 요청(113)은 제 1 주기적 간격과는 상이하고 그리고/또는 그에 대해 시프트된 제 2 주기적 간격으로 위치 정보를 수신하기 위한 것일 수도 있다. 제어기(110)는 제 1 및 제 2 주기적 간격에 기초하고 그리고/또는 제 1 및 제 2 주기적 간격 중 하나의 타이밍과 일치하는 연합된 주기적 간격으로 위치 소스(141)에 연합된 위치 요청을 제공함으로써 제 1 및 제 2 위치 요청(113)을 연합할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 상이한 애플리케이션(131)으로부터 예를 들어 유사한 위치 소스(141)에 유사한 요청(113)을 식별하여 공통 시간 프레임에 정렬함으로써 요청(113)을 선택적으로 연합할 수도 있다. 예를 들어, 다수의 애플리케이션(131)은 주기적 위치, 예를 들어 매분마다 요청할 수 있고, 반면에 요청은 서로로부터 예를 들어 수초만큼 시프트될 수도 있다. 제어기(110)는 단일의 연합된 1분 주기 요청으로 요청을 연합할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)는 또한 예를 들어 전력 소비, 정확도, 이용 가능성, 응답성 등과 같은 위치 소스(141)에 관한 위치 소스 파라미터를 고려하여 요청을 연합할 수도 있다.
도 2는 몇몇 예시적인 실시예에 따른 캐싱 프로파일을 동적으로 업데이트하는 방법의 개략 흐름도이다. 몇몇 예시적인 실시예에서, 도 2의 동작의 하나 이상은 프로파일(121)(도 1)을 업데이트하기 위해 제어기(110)(도 1)에 의해 수행될 수도 있다.
블록 202에 지시된 바와 같이, 방법은 애플리케이션으로부터 위치 요청을 수신하는 단계를 포함할 수도 있다. 예를 들어, 제어기(110)(도 1)는 예를 들어 전술된 바와 같이, 애플리케이션(131)(도 1)으로부터 위치 요청(113)(도 1)을 수신할 수도 있다.
블록 204에 지시된 바와 같이, 방법은 예를 들어 수신된 위치 요청에 기초하여 캐싱 프로파일이 업데이트되어야 하는지 여부를 판정하는 단계를 포함할 수도 있다. 예를 들어, 제어기(110)(도 1)는 캐싱 프로파일(121)(도 1)이 업데이트되어야 하는지 여부를 판정할 수도 있다. 예를 들어, 제어기(110)(도 1)는 요청(113)(도 1)의 하나 이상의 KPI를 프로파일(121)(도 1)을 위해 정의된 캐싱 기준에 비교할 수도 있다.
블록 206에 지시된 바와 같이, 방법은 예를 들어 프로파일을 업데이트하지 않고, 캐싱 프로파일을 유지하는 단계를 포함할 수도 있다. 예를 들어, 제어기(110)는 예를 들어 캐싱 프로파일이 요청의 KPI에 정합하면, 캐싱 프로파일을 업데이트하지 않도록 결정할 수도 있다.
블록 208에 지시된 바와 같이, 방법은 예를 들어 프로파일이 업데이트되어야 하는 것으로 판정되면 프로파일을 업데이트하는 단계를 포함할 수도 있다.
몇몇 예시적인 실시예에서, 제어기(110)(도 1)는 예를 들어 요청(113)의 전력 기준, 정확도 기준, 이용 가능성 기준, 응답성 기준 및/또는 하나 이상의 위치 KPI에 기초하여 프로파일(121)(도 1)을 선택적으로 업데이트할 수도 있다.
부가적으로 또는 대안적으로, 제어기(110)(도 1)는 예를 들어 위치 소스(141)로부터 하나 이상의 지시, 예를 들어 위치 정보, 예를 들어 위치 픽스(fix), 위치-속도-시간(PVT) 등; 위치 소스(141)의 KPI, 예를 들어 전력, 정확도, 이용 가능성, 응답성 등; 하나 이상의 위치 이벤트, 예를 들어 위치(실내, 실외), 활동(보행, 운전) 등에 기초하여 프로파일(121)(도 1)을 선택적으로 업데이트할 수도 있다.
블록 210에 지시된 바와 같이, 방법은 선택적으로 업데이트된 프로파일에 따라 위치 소스 중 하나 이상을 업데이트하여, 예를 들어 업데이트된 프로파일에 따라 위치 정보를 제공하기 위해 위치 소스에 요청하는 단계를 포함할 수도 있다.
도 3은 제 1 및 제 2 애플리케이션, 예를 들어 애플리케이션(131)(도 1), 제어기, 예를 들어 제어기(110)(도 1), 및 하나 이상의 위치 소스, 예를 들어 위치 소스(141)(도 1)에 의해 수행된 동작의 시퀀스를 도시한다.
도 3에 도시된 바와 같이, 제 1 애플리케이션(310)은 위치 요청(312)을 제어기(330)에 발행할 수도 있고, 이는 통합된 동적 프로파일(332)을 업데이트하고 선택적으로 위치 소스(340)를 업데이트할 수도 있다. 제 2 애플리케이션(320)은 그 자신의 위치 요청(322)을 제어기(330)에 발행할 수도 있고, 이는 또한 그 통합된 동적 프로파일(334)을 업데이트하고 선택적으로 위치 소스(340)를 업데이트할 수도 있다.
도 3에 또한 도시된 바와 같이, 제어기(330)는 위치 소스(340)로부터 위치 응답(342)을 수신할 수도 있다. 제어기(330)는 예를 들어 모두 위치 응답(342)에 기초하여, 위치 응답(336)을 애플리케이션(310)에, 위치 응답(338)을 애플리케이션(320)에 송신할 수도 있다.
몇몇 예시적인 실시예에 따른 위치 소스로의 액세스를 제어하는 방법을 개략적으로 도시하는 도 4를 참조한다. 몇몇 예시적인 실시예에서, 도 4의 방법의 하나 이상의 동작은 시스템(100)(도 1)의 하나 이상의 요소, 예를 들어, 디바이스(102)(도 1), 제어기(10)(도 1), 애플리케이션(131)(도 1) 및/또는 위치 소스(141)(도 1)에 의해 수행될 수도 있다.
블록 400에 지시된 바와 같이, 방법은 디바이스 상에 동시 위치된 2개 이상의 위치 소스로부터 검색된 위치 정보에 기초하는 캐싱된 위치 정보를 저장하는 단계를 포함할 수도 있다.
블록 402에 지시된 바와 같이, 방법은 적어도 하나의 애플리케이션으로부터 하나 이상의 위치 요청을 검색하는 단계를 포함할 수도 있다. 예를 들어, 제어기(110)(도 1)는 예를 들어 전술된 바와 같이, 하나 이상의 애플리케이션(131)(도 1)으로부터 하나 이상의 위치 요청(113)(도 1)을 수신할 수도 있다.
블록 404에 지시된 바와 같이, 방법은 캐싱된 위치 정보로부터 요청된 위치 정보를 검색하는 것과 하나 이상의 위치 소스로부터 요청된 위치 정보를 검색하는 것을 선택하는 단계를 포함할 수도 있다. 예를 들어, 제어기(110)(도 1)는 예를 들어 전술된 바와 같이, 캐싱된 위치 정보로부터 요청된 위치 정보를 검색하는 것과 하나 이상의 위치 소스(141)(도 1)로부터 요청된 위치 정보를 검색하는 것 중 하나를 선택할 수도 있다.
블록 406에 지시된 바와 같이, 캐싱된 위치 정보로부터 요청된 위치 정보를 검색하는 것과 하나 이상의 위치 소스로부터 요청된 위치 정보를 검색하는 것 중 하나를 선택하는 단계는 위치 캐싱 프로파일에 기초하여 캐싱된 위치 정보로부터 요청된 위치 정보를 검색하는 것과 하나 이상의 위치 소스로부터 요청된 위치 정보를 검색하는 것 중 하나를 선택하는 단계를 포함할 수도 있다. 예를 들어, 제어기(110)(도 1)는 예를 들어 전술된 바와 같이, 프로파일(121)(도 1)에 기초하여, 캐싱된 위치 정보로부터 요청된 위치 정보를 검색하는 것과 하나 이상의 위치 소스(141)(도 1)로부터 요청된 위치 정보를 검색하는 것 중 하나를 선택할 수도 있다.
블록 408에 지시된 바와 같이, 방법은 위치 요청에 기초하여 위치 캐싱 프로파일을 동적으로 업데이트하는 단계를 포함할 수도 있다. 예를 들어, 제어기(110)(도 1)는 예를 들어 전술된 바와 같이, 요청(113)(도 1)에 기초하여 프로파일(121)(도 1)을 동적으로 업데이트할 수도 있다.
몇몇 예시적인 실시예에 따른 제조 물품(500)을 개략적으로 도시하는 도 5를 참조한다. 물품(500)은 예를 들어 제어기(110)(도 1)의 기능성의 적어도 일부를 수행하고 그리고/또는 도 2 및/또는 도 4의 방법의 하나 이상의 동작을 수행하는데 사용될 수도 있는 로직(504)을 저장하기 위한 비일시적 머신-판독 가능 저장 매체(502)를 포함할 수도 있다. 구문 "비일시적 머신-판독 가능 매체"는 단지 일시적 전파 신호인 것을 제외하고는, 모든 컴퓨터-판독 가능 매체를 포함하는 것으로 지시된다.
몇몇 예시적인 실시예에서, 물품(500) 및/또는 머신-판독 가능 저장 매체(502)는 휘발성 메모리, 비휘발성 메모리, 이동식 또는 비이동식 메모리, 소거 가능 또는 소거 불가능 메모리, 기록 가능 또는 재기록 가능 메모리 등을 포함하는 데이터를 저장하는 것이 가능한 하나 이상의 유형의 컴퓨터-판독 가능 저장 매체를 포함할 수도 있다. 예를 들어, 머신-판독 가능 저장 매체(502)는 RAM, DRAM, 더블-데이터-레이트 DRAM(DDR-DRAM), SDRAM, 정적 RAM(SRAM), ROM, 프로그램 가능 ROM(PROM), 소거 가능 프로그램 가능 ROM(EPROM), 전기 소거 가능 프로그램 가능 ROM(EEPROM), 콤팩트 디스크 ROM(CD-ROM), 콤팩트 디스크 레코더러블(CD-R), 콤팩트 디스크 재기록가능(CD-RW), 플래스 메모리(예를 들어, NOR 또는 NAND 플래시 메모리), 콘텐츠 어드레스 가능 메모리(CAM), 폴리머 메모리, 위상-변경 메모리, 강자성 메모리, 실리콘-산화물-질화물-산화물-실리콘(SONOS) 메모리, 디스크, 플로피 디스크, 하드 드라이브, 광학 디스크, 자기 디스크, 카드, 자기 카드, 광학 카드, 테이프, 카세트 등을 포함할 수도 있다. 컴퓨터-판독 가능 저장 매체는 예를 들어 모뎀, 무선기기 또는 네트워크 접속과 같은 통신 링크를 통해 반송파 또는 다른 전파 매체에 구체화된 데이터 신호에 의해 전달된 요청 컴퓨터로 원격 컴퓨터로부터 컴퓨터 프로그램을 다운로드하거나 전달하는 것에 수반된 임의의 적합한 매체를 포함할 수도 있다.
몇몇 예시적인 실시예에서, 로직(504)은 머신에 의해 실행되면, 머신이 본 명세서에 설명된 바와 같은 방법, 프로세스 및/또는 동작을 수행하게 할 수도 있는 명령어, 데이터 및/또는 코드를 포함할 수도 있다. 머신은 예를 들어 임의의 적합한 프로세싱 플랫폼, 컴퓨팅 플랫폼, 컴퓨팅 디바이스, 프로세싱 디바이스, 컴퓨팅 시스템, 프로세싱 시스템, 컴퓨터, 프로세서 등을 포함할 수도 있고, 하드웨어, 소프트웨어, 펌웨어 등의 임의의 적합한 조합을 사용하여 구현될 수도 있다.
몇몇 예시적인 실시예에서, 로직(504)은 소프트웨어, 소프트웨어 모듈, 애플리케이션, 프로그램, 서브루틴, 명령어, 명령어 세트, 컴퓨팅 코드, 워드, 값, 기호 등을 포함할 수도 있고 또는 이들로서 구현될 수도 있다. 명령어는 소스 코드, 컴파일링된 코드, 해석된 코드, 실행 가능 코드, 정적 코드, 동적 코드 등과 같은 임의의 적합한 유형의 코드를 포함할 수도 있다. 명령어는 프로세서가 특정 기능을 수행하도록 명령하기 위한 사전 정의된 컴퓨터 언어, 방식 또는 구문에 따라 구현될 수도 있다. 명령어는 C, C++, Java, BASIC, Matlab, Pascal, Visual BASIC, 어셈블리 언어, 머신 코드 등과 같은 임의의 적합한 고레벨, 저레벨, 객체 지향, 시각적, 컴파일링된 및/또는 해석된 프로그래밍 언어를 사용하여 구현될 수도 있다.
하나 이상의 실시예를 참조하여 본 명세서에 설명된 기능, 동작, 구성 요소 및/또는 특징은 하나 이상의 다른 실시예를 참조하여 본 명세서에 설명된 하나 이상의 다른 기능, 동작, 구성 요소 및/또는 특징과 조합되거나, 또는 이들과 조합하여 이용될 수도 있고, 또는 그 반대도 마찬가지이다.
본 발명의 특정 실시예가 본 명세서에 도시되고 설명되었지만, 다수의 수정, 치환, 변경 및 등가물이 당 기술 분야의 숙련자들에게 발생할 수도 있다. 따라서, 첨부된 청구범위는 본 발명의 진정한 사상 내에 있는 바와 같은 모든 이러한 수정 및 변경을 커버하도록 의도된다는 것이 이해되어야 한다.

Claims (27)

  1. 디바이스로서,
    2개 이상의 위치 소스와,
    상기 2개 이상의 위치 소스로부터 검색된 위치 정보에 기초하여 캐싱된 위치 정보를 캐시 내에 저장하도록 구성된 위치 캐싱 제어기
    를 포함하되,
    상기 위치 정보는 상기 디바이스의 추정된 위치를 나타내고,
    상기 위치 캐싱 제어기는 적어도 하나의 애플리케이션으로부터 적어도 하나의 위치 요청을 수신하고, 요청된 위치 정보를 상기 위치 소스들 중 적어도 하나로부터 검색하는 것과 상기 요청된 위치 정보를 상기 캐시로부터 검색하는 것 중 하나를 선택하고, 상기 요청된 위치 정보를 포함하는 위치 응답을 상기 애플리케이션에 제공하도록 구성되고,
    상기 위치 캐싱 제어기는 적어도 제 1 애플리케이션 및 제 2 애플리케이션으로부터의 위치 요청들을 상기 위치 소스들로의 하나의 연합된 위치 요청(a coalesced location request)으로 연합하도록 구성되며,
    상기 위치 캐싱 제어기는 상기 위치 소스들에 대응하는 하나 이상의 위치 소스 파라미터에 기초하여 상기 위치 요청들을 연합하도록 구성된
    디바이스.
  2. 제 1 항에 있어서,
    상기 적어도 하나의 애플리케이션은 복수의 애플리케이션을 포함하고,
    상기 위치 캐싱 제어기는 상기 복수의 애플리케이션에 의해 생성된 복수의 위치 요청에 기초하여 위치 캐싱 프로파일을 동적으로 업데이트하고,
    상기 위치 캐싱 제어기는 상기 위치 캐싱 프로파일에 기초하여, 상기 요청된 위치 정보를 상기 위치 소스들 중 적어도 하나로부터 검색하는 것과 상기 요청된 위치 정보를 상기 캐시로부터 검색하는 것 중 하나를 선택하는
    디바이스.
  3. 제 2 항에 있어서,
    상기 위치 캐싱 제어기는 상기 캐싱 프로파일의 하나 이상의 파라미터를 상기 적어도 하나의 애플리케이션과 협의(negotiate)하는
    디바이스.
  4. 제 2 항에 있어서,
    상기 위치 캐싱 제어기는 상기 위치 캐싱 프로파일에 기초하여 상기 하나 이상의 위치 소스의 하나 이상의 정보-검색 파라미터를 업데이트하는
    디바이스.
  5. 제 1 항에 있어서,
    상기 위치 캐싱 제어기는 상기 디바이스의 이동에 관한 적어도 하나의 이동 기준에 기초하여, 상기 요청된 위치 정보를 상기 위치 소스들 중 적어도 하나로부터 검색해야 하는지 또는 상기 캐시로부터 검색해야 하는지를 선택하는
    디바이스.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 위치 캐싱 제어기는 상기 애플리케이션에 대한 상기 캐싱된 위치 정보의 관련성을 정의하는 적어도 하나의 관련성 기준에 기초하여, 상기 요청된 위치 정보를 상기 위치 소스들 중 적어도 하나로부터 검색해야 하는지 또는 상기 캐시로부터 검색하는지를 선택하는
    디바이스.
  7. 제 6 항에 있어서,
    상기 관련성 기준은 상기 애플리케이션에 의한 상기 요청된 위치 정보의 의도된 용도를 정의하는 의도 파라미터(intent parameter), 상기 위치 요청의 타이밍에 관한 시간 파라미터, 상기 요청된 위치 정보의 요구되는 정확도를 정의하는 정확도 파라미터, 및 주요-성능-지시기(key-performance-indicator;KPI)로 이루어진 그룹으로부터 선택된 적어도 하나의 관련성 파라미터에 관한 것인
    디바이스.
  8. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 위치 캐싱 제어기는 상기 디바이스의 위치에 관한 파라미터 및 상기 애플리케이션에 관한 파라미터로 이루어진 그룹으로부터 선택된 적어도 하나의 파라미터에 기초하여 상기 위치 소스들 중 적어도 하나의 위치 소스를 선택하는
    디바이스.
  9. 삭제
  10. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 적어도 하나의 애플리케이션은 복수의 애플리케이션을 포함하는
    디바이스.
  11. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 디바이스는 상기 애플리케이션을 포함하는 모바일 디바이스인
    디바이스.
  12. 모바일 디바이스에 의해 수행되는 방법으로서,
    상기 모바일 디바이스의 적어도 하나의 위치 소스로부터 위치 정보를 수신하기 위한 제 1 위치 요청을 제 1 애플리케이션으로부터 수신하는 단계와,
    상기 모바일 디바이스의 상기 위치 소스로부터 위치 정보를 수신하기 위한 제 2 위치 요청을 제 2 애플리케이션으로부터 수신하는 단계와,
    상기 위치 소스에 대응하는 하나 이상의 위치 소스 파라미터에 기초하여, 상기 위치 소스로부터 위치 정보를 검색하기 위해 상기 제 1 위치 요청 및 상기 제 2 위치 요청을 하나의 연합된 위치 요청으로 연합하는 단계와,
    상기 위치 소스로부터 검색된 위치 정보에 기초하여 제 1 위치 응답 및 제 2 위치 응답을 상기 제 1 애플리케이션 및 상기 제 2 애플리케이션에 제공하는 단계를 포함하는
    방법.
  13. 제 12 항에 있어서,
    상기 제 1 위치 요청은 제 1 주기적 간격으로 위치 정보를 수신하기 위한 것이고, 상기 제 2 위치 요청은 상기 제 1 주기적 간격과는 상이한 제 2 주기적 간격으로 위치 정보를 수신하기 위한 것이고, 상기 제 1 위치 요청 및 상기 제 2 위치 요청을 연합하는 단계는 상기 제 1 주기적 간격 및 상기 제 2 주기적 간격에 기초한 연합된 주기적 간격으로 상기 위치 소스에 상기 연합된 위치 요청을 제공하는 단계를 포함하는
    방법.
  14. 제 12 항에 있어서,
    상기 적어도 하나의 위치 소스로부터 검색된 위치 정보에 기초하는 캐싱된 위치 정보를 저장하는 단계와,
    상기 제 1 애플리케이션 및 상기 제 2 애플리케이션 중 적어도 하나의 애플리케이션으로부터의 적어도 하나의 위치 요청에 응답하여, 요청된 위치 정보를 상기 위치 소스로부터 검색하는 것과 상기 요청된 위치 정보를 상기 캐싱된 위치 정보로부터 검색하는 것 중 하나를 선택하는 단계와,
    상기 요청된 위치 정보를 포함하는 위치 응답을 상기 적어도 하나의 애플리케이션에 제공하는 단계를 포함하는
    방법.
  15. 제 14 항에 있어서,
    상기 제 1 애플리케이션 및 상기 제 2 애플리케이션에 의해 생성된 복수의 위치 요청에 기초하여 위치 캐싱 프로파일을 동적으로 업데이트하는 단계를 포함하고,
    상기 선택하는 단계는 상기 위치 캐싱 프로파일에 기초하여, 상기 요청된 위치 정보를 상기 위치 소스들 중 적어도 하나로부터 검색하는 것과 상기 요청된 위치 정보를 상기 캐싱된 위치 정보로부터 검색하는 것 중 하나를 선택하는 단계를 포함하는
    방법.
  16. 제 15 항에 있어서,
    상기 캐싱 프로파일의 하나 이상의 파라미터를 상기 적어도 하나의 애플리케이션과 협의하는 단계를 포함하는
    방법.
  17. 제 14 항에 있어서,
    상기 위치 캐싱 프로파일을 동적으로 업데이트하는 단계는 이동 기준 및, 상기 적어도 하나의 애플리케이션에 대한 상기 캐싱된 위치 정보의 관련성을 정의하는 관련성 기준으로 이루어진 그룹으로부터 선택된 적어도 하나의 기준에 기초하여 상기 위치 캐싱 프로파일을 업데이트하는 단계를 포함하는
    방법.
  18. 프로세서에 의해 실행될 때, 청구항 제 12 항 내지 제 17 항 중 어느 한 항의 방법을 수행하게 하는 명령어를 포함하는 컴퓨터 판독 가능 비일시적 저장 매체.
  19. 모바일 디바이스를 포함하는 무선 통신 시스템에 있어서,
    상기 모바일 디바이스는
    무선기기와,
    하나 이상의 안테나와,
    메모리와,
    하나 이상의 위치 소스와,
    상기 위치 소스로부터 위치 정보를 검색하고, 상기 위치 소스로부터 검색된 상기 위치 정보에 대응하는 캐싱된 위치 정보를 상기 메모리에 저장하고, 상기 모바일 디바이스에 의해 실행되는 복수의 애플리케이션으로부터의 복수의 위치 요청에 기초하여 위치 캐싱 프로파일을 동적으로 업데이트하는 위치 캐싱 제어기를 포함하고,
    상기 복수의 애플리케이션들 중 하나의 애플리케이션으로부터의 위치 요청에 응답하여, 상기 위치 캐싱 제어기는 상기 위치 캐싱 프로파일에 기초하여, 요청된 위치 정보를 상기 하나 이상의 위치 소스로부터 검색하는 것과 상기 요청된 위치 정보를 상기 메모리로부터 검색하는 것 중 하나를 선택하고, 상기 요청된 위치 정보를 포함하는 위치 응답을 상기 애플리케이션에 제공하며,
    상기 위치 캐싱 제어기는 상기 복수의 애플리케이션 중 적어도 제 1 애플리케이션 및 제 2 애플리케이션으로부터의 위치 요청들을 상기 하나 이상의 위치 소스로의 하나의 연합된 위치 요청으로 연합하고, 상기 위치 캐싱 제어기는 상기 위치 소스들에 대응하는 하나 이상의 위치 소스 파라미터에 기초하여 상기 위치 요청들을 연합하도록 구성된
    무선 통신 시스템.
  20. 제 19 항에 있어서,
    상기 위치 캐싱 제어기는 상기 캐싱 프로파일의 하나 이상의 파라미터를 상기 애플리케이션과 협의하는
    무선 통신 시스템.
  21. 제 19 항에 있어서,
    상기 위치 캐싱 제어기는 상기 위치 캐싱 프로파일에 기초하여 상기 하나 이상의 위치 소스의 하나 이상의 정보-검색 파라미터를 업데이트하는
    무선 통신 시스템.
  22. 제 19 항 내지 제 21 항 중 어느 한 항에 있어서,
    상기 위치 캐싱 프로파일은 상기 모바일 디바이스의 이동에 관한 이동 기준, 및 상기 애플리케이션에 대한 상기 캐싱된 위치 정보의 관련성을 정의하는 관련성 기준으로 이루어진 그룹으로부터 선택된 적어도 하나의 기준에 관한 것인
    무선 통신 시스템.
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
KR1020147025147A 2012-03-07 2013-03-06 위치 소스로의 액세스를 제어하는 디바이스, 시스템, 방법 및 저장 매체 KR101634630B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261607776P 2012-03-07 2012-03-07
US61/607,776 2012-03-07
US13/533,006 US9973884B2 (en) 2012-03-07 2012-06-26 Device, system and method of controlling access to location sources
US13/533,006 2012-06-26
PCT/US2013/029350 WO2013134373A1 (en) 2012-03-07 2013-03-06 Device, system and method of controlling access to location sources

Publications (2)

Publication Number Publication Date
KR20140135187A KR20140135187A (ko) 2014-11-25
KR101634630B1 true KR101634630B1 (ko) 2016-06-29

Family

ID=49115129

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147025147A KR101634630B1 (ko) 2012-03-07 2013-03-06 위치 소스로의 액세스를 제어하는 디바이스, 시스템, 방법 및 저장 매체

Country Status (6)

Country Link
US (1) US9973884B2 (ko)
EP (1) EP2823654A4 (ko)
JP (1) JP6104951B2 (ko)
KR (1) KR101634630B1 (ko)
CN (1) CN104186004A (ko)
WO (1) WO2013134373A1 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101642213B1 (ko) 2012-03-29 2016-07-22 인텔 코포레이션 모바일 장치의 위치 추정 장치, 시스템 및 방법
US9645242B2 (en) 2012-04-10 2017-05-09 Intel Corporation Device, system and method of collaborative location error correction
US8918117B2 (en) * 2012-12-12 2014-12-23 Intel Corporation Apparatus, system and method of estimating a location of a mobile device
JP6608578B2 (ja) * 2014-03-03 2019-11-20 Kddi株式会社 端末装置、位置情報測位制御方法及びプログラム
CN104063423B (zh) * 2014-05-30 2017-11-21 小米科技有限责任公司 一种确定位置的方法及装置
US9763044B2 (en) * 2014-09-16 2017-09-12 Intel IP Corporation Method, system and apparatus for enabling location determination using multiple simultaneous location databases
US9706364B2 (en) 2014-09-16 2017-07-11 Microsoft Technology Licensing, Llc Accounting for indoor-outdoor transitions during position determination
JP6140660B2 (ja) * 2014-09-25 2017-05-31 Kddi株式会社 端末装置、位置取得方法、及び、位置取得制御用プログラム
JP6162669B2 (ja) * 2014-09-25 2017-07-12 Kddi株式会社 位置情報サーバ
US9652486B2 (en) * 2015-06-07 2017-05-16 Apple Inc. Power saving techniques for a navigation application
CN107422356A (zh) * 2016-10-09 2017-12-01 北京摩拜科技有限公司 车辆定位方法和车辆定位系统
JP6396534B2 (ja) * 2017-05-01 2018-09-26 Kddi株式会社 装置、位置取得方法、及び、位置取得制御用プログラム
CN107027160A (zh) * 2017-05-08 2017-08-08 广东欧珀移动通信有限公司 信息处理方法、装置和移动终端
JP6346348B2 (ja) * 2017-06-15 2018-06-20 Kddi株式会社 位置情報サーバ、位置提供システム、位置提供方法及びコンピュータプログラム
JP2018007270A (ja) * 2017-09-19 2018-01-11 Kddi株式会社 端末装置、位置取得方法、およびプログラム
CN108111971B (zh) * 2017-12-13 2021-02-23 Oppo广东移动通信有限公司 定位方法、装置、存储介质及移动终端
WO2020178277A1 (en) * 2019-03-04 2020-09-10 Telefonaktiebolaget Lm Ericsson (Publ) Privacy control of user equipment and related apparatuses

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003207556A (ja) * 2002-01-10 2003-07-25 Hitachi Ltd 端末位置情報システムにおける端末およびサーバ装置
JP2011149860A (ja) * 2010-01-22 2011-08-04 Ntt Docomo Inc 携帯端末および位置測位方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5617100A (en) 1994-04-07 1997-04-01 Matsushita Electric Industrial Co., Ltd. Accurate position measuring system
US6154656A (en) 1997-02-27 2000-11-28 Ericsson Inc. Wireless communication device and system incorporating location-determining means
US6873998B1 (en) 2000-10-18 2005-03-29 Navteq North America, Llc System and method for updating a geographic database using satellite imagery
EP1374605A1 (en) 2001-03-01 2004-01-02 Signalsoft Corp. Managing wireless location information in a multi-source environment
US20030101225A1 (en) 2001-11-27 2003-05-29 Song Han Method and system for providing location-based event service
GB2409376B (en) 2003-12-17 2006-06-28 Motorola Inc A subscriber unit, a cellular communication system and a method for determining a location therefor
WO2005078474A1 (en) 2004-02-18 2005-08-25 Telefonaktiebolaget Lm Ericsson (Publ) Satellite-based positioning of mobile terminals
US7565362B2 (en) 2004-11-11 2009-07-21 Microsoft Corporation Application programming interface for text mining and search
GB2425853A (en) 2005-04-12 2006-11-08 Christopher Gare Presence information and location monitor
JP4254741B2 (ja) 2005-04-27 2009-04-15 セイコーエプソン株式会社 測位システム
US20080082225A1 (en) 2006-08-15 2008-04-03 Tomtom International B.V. A method of reporting errors in map data used by navigation devices
US8095618B2 (en) 2007-03-30 2012-01-10 Microsoft Corporation In-memory caching of shared customizable multi-tenant data
US20080249713A1 (en) 2007-04-03 2008-10-09 Darren Brett Sessions Gps position accuracy using feedback from a map database
GB0710126D0 (en) 2007-05-26 2007-07-04 Tann Ltd Global positioning system error correction and global positioning system vehicle tracking
JP4914500B2 (ja) 2007-12-14 2012-04-11 パナソニック株式会社 通信端末装置
US8214139B2 (en) 2008-01-25 2012-07-03 Garmin Switzerland Gmbh Position source selection
US7847729B2 (en) * 2008-01-28 2010-12-07 Research In Motion Limited GPS pre-acquisition for geotagging digital photos
US20090287415A1 (en) 2008-05-15 2009-11-19 Helio, Llc Systems, devices and methods for increasing location based service accuracy
CN102100058A (zh) 2008-06-06 2011-06-15 探空气球无线公司 通过选择最佳wlan-ps方案使用混合卫星和wlan定位系统确定定位的方法和系统
JP2010151725A (ja) 2008-12-26 2010-07-08 Toyota Motor Corp Gnss受信装置及び測位方法
JP2010223684A (ja) 2009-03-23 2010-10-07 Toyota Motor Corp 移動体用測位装置
JP5264590B2 (ja) 2009-03-27 2013-08-14 三菱電機株式会社 移動無線機、基地局、位置情報管理装置
US8682342B2 (en) 2009-05-13 2014-03-25 Microsoft Corporation Constraint-based scheduling for delivery of location information
US8812232B2 (en) 2009-06-22 2014-08-19 Nokia Corporation Method and apparatus for reducing energy consumption of a user equipment
US8825375B2 (en) * 2009-09-29 2014-09-02 Apple Inc. Snap-to-road using wireless access point data
US20110117924A1 (en) 2009-11-18 2011-05-19 Qualcomm Incorporated Position determination using a wireless signal
US8310394B2 (en) 2010-03-08 2012-11-13 Deutsche Telekom Ag Apparatus, method, manufacture, and system for sensing substitution for location-based applications
US20120136849A1 (en) * 2010-11-29 2012-05-31 Research In Motion Limited Dynamic Selection of Point-Of-Interest Search Services
US8768620B2 (en) 2011-07-27 2014-07-01 Msa Technology, Llc Navigational deployment and initialization systems and methods
US9243918B2 (en) 2011-12-22 2016-01-26 AppLabz, LLC Systems, methods, and apparatus for providing indoor navigation using magnetic sensors
KR101642213B1 (ko) 2012-03-29 2016-07-22 인텔 코포레이션 모바일 장치의 위치 추정 장치, 시스템 및 방법
US8781047B2 (en) 2012-06-28 2014-07-15 Intel Corporation Device, system and method of clock distribution

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003207556A (ja) * 2002-01-10 2003-07-25 Hitachi Ltd 端末位置情報システムにおける端末およびサーバ装置
JP2011149860A (ja) * 2010-01-22 2011-08-04 Ntt Docomo Inc 携帯端末および位置測位方法

Also Published As

Publication number Publication date
CN104186004A (zh) 2014-12-03
EP2823654A1 (en) 2015-01-14
US20130238857A1 (en) 2013-09-12
WO2013134373A1 (en) 2013-09-12
US9973884B2 (en) 2018-05-15
JP6104951B2 (ja) 2017-03-29
EP2823654A4 (en) 2015-11-18
JP2015512227A (ja) 2015-04-23
KR20140135187A (ko) 2014-11-25

Similar Documents

Publication Publication Date Title
KR101634630B1 (ko) 위치 소스로의 액세스를 제어하는 디바이스, 시스템, 방법 및 저장 매체
US8918117B2 (en) Apparatus, system and method of estimating a location of a mobile device
US9426724B2 (en) Apparatus, system and method of controlling wireless scanning
US10027452B2 (en) Device, system and method of transferring a wireless communication session between wireless communication frequency bands
KR101642213B1 (ko) 모바일 장치의 위치 추정 장치, 시스템 및 방법
US10257645B2 (en) Apparatus, system and method of neighbor awareness networking (NAN) geo-fencing
US20110038290A1 (en) Device, system and method of power management in a wireless area network
US8781047B2 (en) Device, system and method of clock distribution
US9807815B2 (en) Apparatus, system and method of simultaneous connectivity to location origin transceivers
KR20200003833A (ko) 동기 신호 블록의 타이밍 방법 및 관련 제품
US10182446B2 (en) Apparatus, system and method of selecting a wireless communication channel
US9846237B2 (en) Apparatus, system and method of time preservation
US11678167B1 (en) Apparatus, system, and method of bluetooth audio source selection

Legal Events

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

Payment date: 20190530

Year of fee payment: 4