KR20170098795A - 정황상 인식되는 다이나믹 그룹 형성 - Google Patents

정황상 인식되는 다이나믹 그룹 형성 Download PDF

Info

Publication number
KR20170098795A
KR20170098795A KR1020177013008A KR20177013008A KR20170098795A KR 20170098795 A KR20170098795 A KR 20170098795A KR 1020177013008 A KR1020177013008 A KR 1020177013008A KR 20177013008 A KR20177013008 A KR 20177013008A KR 20170098795 A KR20170098795 A KR 20170098795A
Authority
KR
South Korea
Prior art keywords
group
devices
locations
context
contextual
Prior art date
Application number
KR1020177013008A
Other languages
English (en)
Other versions
KR102452159B1 (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 KR20170098795A publication Critical patent/KR20170098795A/ko
Application granted granted Critical
Publication of KR102452159B1 publication Critical patent/KR102452159B1/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
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

시스템들, 장치들, 및 방법들은 정황상 인식되는 다이나믹 그룹 형성을 제공할 수 있다. 일 양상에서, 접속 매니저는 디바이스 사용자에 의해 자주 방문되는 하나 이상의 위치들에 기초하여 정황상의 위치를 결정하는 정황상의 위치 식별기를 갖는다. 리스트 생성기는 정황상의 위치 그룹 내의 신뢰 디바이스들의 정황상의 위치 그룹 디바이스 리스트를 생성할 수 있다. ID 생성기는 정황상의 위치 그룹 내의 신뢰 디바이스들에 대한 데이터 공유 토큰 역할을 하는 정황상의 위치 그룹 ID를 생성할 수 있다.

Description

정황상 인식되는 다이나믹 그룹 형성{CONTEXTUALLY AWARE DYNAMIC GROUP FORMATION}
<관련 출원들에 대한 상호 참조>
본 출원은 2014년 12월 17일자 출원된 미국 정식 특허 출원 제14/573,093호에 대한 우선권의 이익을 주장한다.
<기술분야>
실시예들은 일반적으로 디바이스들 사이의 그룹 형성에 관한 것이다. 보다 구체적으로, 실시예들은 디바이스들 사이의 정황상 인식되는 다이나믹 그룹 형성에 관한 것이다.
최근, 디바이스들 사이의 접속이 피어-투-피어인 것으로 나타나지만 실제로는 외부 네트워크 및 클라우드 서비스를 통과하는 다양한 "앱들(apps)"(애플리케이션들)을 사용하는, 디바이스들, 특히 모바일 디바이스들 사이의 피어-투-피어 공유가 출현되어 왔다. 외부 네트워크를 사용하는 것은 사용자들의 데이터를 제3자들에게 노출시킴으로써 사용자들의 프라이버시를 침해한다. 또한, 다양한 앱들의 사용은 그 특정 앱에 공유를 "샌드박스(sandbox)"할 수 있다. 즉, 이러한 앱들을 지원하는 플러그인들이 요구될 수 있다. 또한, 데이터의 복사를 가능하게 하는 추가 코드가 요구될 수 있다.
사용자가 한 명 이상의 다른 사용자들과 데이터를 공유하는 것이 바람직한 많은 상황들이 발생할 수 있다. 예를 들어, 고객들을 방문하거나 회의에 참석하는 사용자는 새로 형성된 그룹의 디바이스들과 파일들을 공유하기를 원할 수 있다. 그러나, 이러한 그룹들과의 진정한 피어-투-피어 파일 공유는 현재 번거로울 수 있거나, 또는 외부 네트워크를 통과하는 것을 수반할 수 있다.
실시예들의 다양한 이점들은 이하의 명세서 및 첨부된 청구범위를 읽고, 이하의 도면들을 참조함으로써 관련분야에서의 숙련된 자에게 명백하게 될 것이다.
도 1은 실시예에 따른 접속 매니저 장치를 포함하는 컴퓨터 플랫폼의 예의 블록도이다.
도 2는 실시예에 따른 접속 매니저 장치를 동작시키는 방법의 예의 흐름도이다.
도 3 및 도 4는 실시예에 따른 접속 매니저 장치를 포함하는 컴퓨터 플랫폼을 동작시키는 방법들의 예들의 흐름도들이다.
도 5는 실시예에 따른 프로세서의 예의 블록도이다.
도 6은 실시예에 따른 시스템의 예의 블록도이다.
이제, 도 1을 참조하면, 접속 매니저 장치(105)를 포함하는 컴퓨터 플랫폼(100)이 개략적으로 도시된다. 컴퓨터 플랫폼(100)은, 예를 들어, 이동 전화, 태블릿, 개인 휴대 정보 단말, 랩톱, 노트북, 웨어러블 컴퓨팅 디바이스, 또는 다양한 위치들 사이에서 이동될 수 있는 임의의 다른 컴퓨팅 디바이스와 같은 모바일 컴퓨팅 디바이스일 수 있다. 다이나믹 그룹 형성을 용이하게 하기 위해, 컴퓨터 플랫폼(100)은 접속 매니저 장치(105)를 포함한다. 접속 매니저 장치(105) 내에는 선택적 위치 추적부(115)를 포함하는 정황상의 위치 식별기(110)가 있다. 컴퓨터 플랫폼(100)의 위치를 추적하기 위해, 접속 매니저 장치(105)는 GPS(global positioning system) 유닛, 가속도계, 자이로스코프, 무선 네트워크 센서, 근접 센서, 또는 열 센서 중 하나 이상을 포함할 수 있는 센서(150)와 통신할 수 있다. 도시되는 접속 매니저 장치(105)는 디바이스들의 그룹 사이의 데이터 공유를 용이하게 하는 토큰으로 사용될 수 있는 정황상의 위치 ID(identification)를 생성하는 ID 생성기(120)를 더 포함한다. 리스트 생성기(125)는 접속 매니저 장치(105)에 대한 신뢰 디바이스들의 리스트를 생성할 수 있다. 근접 디바이스 로그(130)는 컴퓨터 플랫폼(100)이 마주친 디바이스들의 리스트를 생성할 수 있다. 도시되는 근접 디바이스 로그(130) 내에는, 예를 들어, 제3자 디바이스들(180)과 같은 제3자 디바이스와의 마주침의 수에 기초하여 신뢰 점수를 생성할 수 있는 신뢰 점수 생성기(135)가 있다. 접속 매니저 장치(105)에서의 데이터 공유 매니저(140)는 데이터 저장부(155)와 통신할 수 있다.
통신 매니저 장치(105)는 사용자 인터페이스(160)를 통해 사용자와 통신할 수 있다. 다른 디바이스들과 통신하기 위해, 디바이스간 통신기(165)가 제공된다. 이것은 WiFi(예를 들어, IEEE 802.11 프로토콜), Bluetooth 프로토콜(예를 들어, Bluetooth Core Specification, Version 3.0, 2009), 또는 임의의 다른 타입의 무선 네트워킹 디바이스를 사용하는 디바이스일 수 있다. 다른 디바이스들에 전송되는 데이터가 디바이스간 통신기(165)를 사용할 수 있고; 데이터가 디바이스간 통신기(165)를 통해 수신될 수도 있다.
플랫폼을 관리하고 데이터 전송을 분석하기 위해, 플랫폼 매니저(145)가 제공될 수 있다. 플랫폼 매니저(145)는 접속 매니저 장치(105)의 동작들을 감독할 수 있으며, 이하에서 더 상세히 논의될 콘텐츠 공유 분석기(147)를 포함할 수 있다.
예로서, 데이터를 공유하기 위한 디바이스들의 그룹들을 다이나믹하게 생성함에 있어서, 예를 들어, 접속 매니저 장치(105)(도 1)와 같은 접속 매니저 장치에 대한 선택적인 동작 절차를 도시하는 개요 방법 10의 흐름도가 도 2에 제공된다. 디바이스들의 그룹은 2 이상의 디바이스들을 포함할 수 있다. 도 1 및 도 2 양자 모두를 참조하면, 시작 블록 20에서, 접속 매니저 장치(105)가 활성화된다. 정황상의 위치 식별기(110)는 도시되는 블록 21에서 정황상의 위치를 결정한다. 예를 들어, 사용자가 방문하는 위치들이 사용자가 각각의 위치에서 보내는 시간과 함께 모니터링될 수 있다. 정황상의 위치 식별기(110)는 이러한 다양한 정황상의 위치들의 경계들을 확인할 수 있다. 선택적 기술은 GPS 클러스터링 알고리즘을 사용하여 좌표를 추적하는 것일 수 있다.
각각의 정황상의 위치에서, 접속 매니저 장치(105)는 제3자 디바이스들(180)과 같은 다른 디바이스들과 근접하게 될 수 있다. 블록 22에서, 근접 디바이스 로그(130)는 이러한 근접 디바이스들을 식별할 수 있고, 리스트 생성기(125)와 접속하여, 디바이스가 장시간 동안 보여지면 또는 사용자가 제3자 디바이스를 인증하였으면 신뢰 디바이스들의 리스트를 생성할 수 있다. 이러한 리스트는 블록 22의 정황상의 위치 그룹 디바이스 리스트이다.
클러스터의 중심을 사용하여, 접속 매니저 장치(105)는 블록(23)에서 ID 생성기(120)를 사용하여 제3자 디바이스(180)와의 데이터 공유를 용이하게 하는 토큰으로서 사용될 수 있는 정황상의 위치 그룹 ID를 생성할 수 있다. 즉, 도시되는 블록 22에서 정황상의 위치 그룹 디바이스 리스트에 추가된 디바이스들은 개입하는 네트워크를 요구하지 않고 직접 피어-투-피어 방식으로 그룹 디바이스 리스트 상의 디바이스들 사이에 파일 또는 다른 데이터를 전송하는 토큰으로서 사용될 수 있는 위치 그룹 ID를 블록 23에서 수신할 것이다.
정황상의 위치 ID를 생성함에 있어서 도 1의 컴퓨터 플랫폼(100)에 대한 선택적 동작 절차를 도시하는 방법 300의 흐름도가 도 3에 제공된다. 방법 10(도 2) 뿐만 아니라, 방법 300은 RAM(random access memory), ROM(read only memory), PROM(programmable ROM), 펌웨어, 플래시 메모리 등과 같은 머신 또는 컴퓨터 판독 가능 저장 매체에 저장되는 로직 명령어들의 세트에서의, 예를 들어, PLA들(programmable logic arrays), FPGA들(field programmable gate arrays), CPLD들(complex programmable logic devices)과 같은 구성 능한 로직에서의, 예를 들어, ASIC(application specific integrated circuit), CMOS(complementary metal oxide semiconductor) 또는 TTL(transistor-transistor logic) 기술과 같은 회로 기술을 사용하는 고정 기능성 하드웨어 로직에서의, 또는 이들의 임의의 조합에서의 하나 이상의 모듈들로서 구현될 수 있다.
도 1 및 도 3 양자 모두를 참조하면, 블록 305에서의 시작에서, 사용자는 정황상의 위치 ID들을 생성하는 주 디바이스로서 컴퓨터 플랫폼(100)을 지정할 수 있다. 지정된 주 디바이스는 통상적으로 가정, 직장, 레크리에이션 장소, 레스토랑, 호텔 등과 같은 다양한 정황상의 위치들에 사용자와 가장 빈번하게 동반되는 것이다. 주 디바이스를 결정하는데 도움을 주기 위해, 빈도의 이동 시간이 모니터링될 수 있고/있거나 인간의 음성을 나타내는 오디오 데이터가 분석될 수 있다. 대안적으로, 컴퓨터 플랫폼/디바이스가 사용자 및 디바이스에 대한 사용자 근접성을 인식할 수 있게 하는 열 센서 또는 임의의 다른 기술을 통해 사용자 음성 인식 또는 체온에 의해 결정되는 사용자 근접성의 지식을 사용하여 주 디바이스가 자동으로 검출될 수 있다.
주 디바이스로서 할당된 컴퓨터 플랫폼(100)은 사용자가 방문하는 위치들 및 각각의 위치에서 사용자가 소비하는 시간을 모니터링할 수 있다. 이러한 목적으로, GPS를 포함하는 센서(150)가 사용될 수 있다. 도시되는 블록 310에서, 컴퓨터 플랫폼(100)은 새로운 위치를 관찰한다. 블록 315에서, 컴퓨터 플랫폼(100)은 이전에 식별된 위치로 클러스터되어야 하는지 결정하기 위해 그 위치를 검사한다. 클러스터되지 않아야 하면, 블록 320에서 새로운 정황상의 위치가 생성될 수 있다. 클러스터되어야 하면, 그 위치는 블록(325)에서 이전에 식별된 정황상의 위치에 추가될 수 있다. 예를 들어, 이전에 식별된 정황상의 위치는 "직장"이고 클러스터 될 새로운 위치는 사용자에 의해 이전에 방문되지 않은 "직장"에서의 새로운 회의실이다. "직장"의 이전에 식별된 정황상의 위치로 새로운 회의실을 클러스터링함에 있어서, 사용자는 "직장" 위치에서의 이전 디바이스들과 유사한 데이터 공유를 요구하는 유사한 디바이스들을 마주치기 쉬워, 이러한 정황에 대한 우수한 선택을 클러스터링을 행한다.
정황은 다양한 방식들로 식별될 수 있다. 예를 들어 정황은 공유되는 오브젝트들 및 그들의 타입들을 모니터링하는 것을 통해 식별될 수 있다. 모니터링된 오브젝트들로부터, 정황을 정의하는 키워드들이 추출될 수 있다. 이러한 기술은 온라인 디렉터리들에 대한 역방향 GPS 룩업들을 사용하여 또한 증강될 수 있다.
도시되는 블록 330에서, 컴퓨터 플랫폼(100)은 그 위치의 중요성을 분석한다. 중요성은 그 위치에서 보낸 시간, 그 위치로 이동한 빈도, 사용자 입력, 또는 그 위치에서 마주친 디바이스들의 수를 포함하는 다수의 요인들에 의해 결정될 수 있다. 예를 들어, 통상적인 사용자에 대해, 중요한 위치들은 집/거주지 및 직장이다. 덜 중요한 다른 것들은 커피 숍이나 좋아하는 레크리에이션 지역과 같이 사용자가 방문하는 흔한 장소들일 수 있다. 데이터 공유에 대해 통상적인 정황들이 아닌 보다 일시적인 위치들 또는 사용자에 의해 방문된 위치들(예를 들어, 지역 주유소)는 "중요하다(important)"로 여겨지지 않을 수 있다. 위치가 "중요하다"라고 여겨지면, 블록 335에서 접속 매니저 장치(105)의 정황상의 위치 ID 생성기에 의해 위치 ID가 생성된다. 위에 논의된 바와 같이, 이러한 위치 ID는 정황상의 위치 그룹 내의 디바이스들 사이의 데이터 공유를 위한 토큰으로서 사용될 수 있다. 사용자가 특정 위치로 이동하는 것을 중지하면, 그 위치에 관련된 정황이 에이징되고, 정황상의 공유 그룹들의 리스트에서 삭제될 수 있다는 점에 주목하자. 그러나, 사용자는 사용자 인터페이스(160)를 통해 식별되는 정황들 및 위치들의 리스트에 대한 액세스 및 제어를 갖는다. 정황상의 위치 ID를 생성하는 프로세스는 블록 340에서 종료된다.
데이터를 공유할 디바이스들의 신뢰 리스트를 생성함에 있어서 도 1의 컴퓨터 플랫폼(100)에 대한 선택적 동작 절차를 도시하는 방법 400의 흐름도가 도 4에 제공된다. 도 1 및 도 4 양자 모두를 참조하면, 본 방법은 블록 405에서 시작하며, 여기서는, 사용자에 의해 방문되는 각각의 정황에서, 컴퓨터 플랫폼(100)이 다른 디바이스들과 근접하게 된다. 이러한 디바이스들은 블록 410에서 관찰된다. 접속 매니저 장치(105)의 근접 디바이스 로그(130)를 사용하면, MAC 어드레스, 블루투스 어드레스, 또는 마주치게 되는 임의의 다른 디바이스 ID와 같은 고유 식별자를 사용하여 근접 디바이스들의 로그가 유지될 수 있다. 컴퓨터 플랫폼(100)이 동일한 정황에서 또는 여러 정황들에서 동일한 디바이스를 다수 회 마주침에 따라, 신뢰 점수 생성기(135)는 이러한 마주침들에 기초하여 신뢰 점수를 생성할 것이다. 따라서, 블록 415에서, 근접 디바이스 로그(130)/신뢰 점수 생성기(135)는 마주치게되는 디바이스가 새로운 것인지 결정할 것이다. 새로운 것이면, 블록 425에서 디바이스 ID가 근접 디바이스 로그(130)에 의해 기록될 것이다. 디바이스와의 두 번째 또는 후속 마주침이면, 블록 420에서 신뢰 점수가 업데이트된다. 대안적으로, 사용자는 특정 정황상의 위치에 대한 신뢰 디바이스들의 리스트에 디바이스를 수동으로 추가할 수 있다.
디바이스가 장시간 동안 또는 다수의 마주침들 동안 보여지면, 블록 430에서 임계 신뢰 점수를 달성할 것이다. 이러한 점수 레벨은 자동으로 결정될 수 있거나 사용자에 의해 설정될 수 있다. 디바이스가 신뢰 임계 위일 때, 블록 435에서 리스트 생성기(125)에 의해 생성되는 디바이스들의 신뢰 리스트에 그 디바이스를 추가하라고 사용자에게 프롬프트될 수 있다. 임의의 적합한 사용자 통지 기술을 통해, 통상적으로는 사용자 인터페이스(160)를 통한 통지를 통해 프롬프트가 발생될 수 있다. 디바이스가 신뢰 디바이스 리스트에 추가되는 것이 승인되면, 이것은 블록 445에서 리스트 생성기(125)에 의해 신뢰 디바이스의 리스트에 추가된다. 다음으로, 정황상의 위치 ID는 이러한 디바이스와 공유되어 피어-투-피어 데이터 공유를 용이하게 하고, 프로세스는 블록 450에서 종료된다.
피어-투-피어 데이터 공유의 예로서, 정황상의 위치 ID는 WebRTC(Web Real Time Communication) 파일 공유 프로세스에서 토큰으로서 사용될 수 있다. WebRTC는 플러그인들을 필요로 하지 않고도 음성 통화, 화상 채팅, 및 피어-투-피어 파일 공유를 위한 브라우저-투-브라우저 애플리케이션들을 지원하는 W3C(World Wide Web Consortium)에 의해 초안이 작성된 API 정의이다. WebRTC는 많은 브라우저들 및 HTML5(Hyper-Text Mark-Up Language version 5)에 의해 지원된다. JavaScript API들이 통상적으로 WebPvTC에 의해 이용된다. 그러나, WebRTC는 위 실시예들의 정황상 인식되는 다이나믹 그룹 형성 능력들이 부족하다. WebRTC가 파일 공유에 사용될 수 있는 유일한 프로토콜이 아니라는 점에 주목하자. Intel CCF(Common Connectivity Framework)와 같은 다른 직접 피어-투-피어 프로토콜들이 또한 사용할 수 있다. WebRTC 또는 Intel CCF를 사용하여, 컴퓨터 플랫폼(100)은 정황 내의 디바이스들 사이의 접속들을 프록시할 수 있거나 또는 컴퓨터 플랫폼(100)을 통과하지 않고 직접 통신할 필요가 있는 경우 신뢰 디바이스들이 피어-투-피어 접속들을 생성하게 하는 랑데뷰 포인트로서 사용될 수도 있다.
데이터 공유를 더 용이하게 하기 위해, 도 1의 플랫폼 매니저(145)는 접속 매니저 장치(105)에 의해 이루어지는 접속들을 추적할 수 있다. 접속 매니저 장치(105)에 의해 공유되는 콘텐츠는 콘텐츠 공유 분석기(147)에 의해 분석될 것이다. 콘텐츠/데이터는 메타 데이터, 파일 서명들, 통신의 길이, 통신하고 있는 디바이스들, 또는 사용자에 의해 명시되는 기준을 선택적으로 갖는 임의의 다른 분석 툴을 사용하여 분석될 수 있다. 이러한 분석을 사용하여, 플랫폼 매니저(145)는 어떤 종류의 데이터가 공유되는지를 결정할 수 있고, 이러한 정보를 사용하여 미래의 공유를 위한 데이터의 추천들을 행할 수 있다. 이것은 특정 종류의 반복 데이터의 공유를 용이하게 할 수 있다. 예를 들어, 사용자가 자주 공원을 방문하여 그의 자식들의 사진을 찍어 귀가시 배우자와 이러한 사진들을 공유하면, 플랫폼 매니저(145)/콘텐츠 공유 분석기(147)는 그 공원으로의 미래 방문 후 사용자가 귀가시 공유 기준을 충족시키는 사진들을 강조 표시할 수 있다. 사용자는 공유를 자동화하기로 결정할 수도 있다.
다른 정황상의 위치에서, 사용자는 그 위치를 새로운 정황으로서 수동으로 정의하여 그 정황상의 위치 ID를 근접한 임의의 디바이스에 공개할 수 있다. 예를 들어, 회의에서, 사용자는 파일들을 사용자의 프리젠테이션 참석자들에게 공유하기를 원할 수 있다. 되풀이되는 회의들에 대해서, 생성된 정황상의 위치 ID는 디바이스들에 의해 캐시되어 재사용될 수 있으며, 발견 단계가 생략되므로 미래의 접속들을 더 빠르게 한다.
도 5는 일 실시예에 따른 프로세서 코어(200)를 도시한다. 프로세서 코어(200)는 마이크로-프로세서, 내장형 프로세서, DSP(digital signal processor), 네트워크 프로세서, 또는 코드를 실행하는 다른 디바이스와 같은 임의의 타입의 프로세서에 대한 코어일 수 있다. 하나의 프로세서 코어(200)만이 도 5에 도시되지만, 처리 엘리먼트는 대안적으로 도 5에 도시된 프로세서 코어(200)의 하나보다 많은 것을 포함할 수 있다. 프로세서 코어(200)는 단일 스레드형(single-threaded) 코어일 수 있거나, 또는 적어도 일 실시예에서 프로세서 코어(200)는 코어당 하나보다 많은 하드웨어 스레드 콘텍스트(또는 "논리 프로세서")를 포함할 수 있다는 점에서 멀티스레드형(multithreaded)일 수 있다.
도 5는 프로세서 코어(200)에 연결되는 메모리(270)를 또한 도시한다. 메모리(270)는 관련분야에서의 기술자들에게 알려지거나 다른 방식으로 이용가능한 (메모리 계층구조의 다양한 층들을 포함하는) 광범위한 메모리들 중 임의의 것일 수 있다. 메모리(270)는 프로세서 코어(200)에 의해 실행될 하나 이상의 코드(213) 명령어(들)를 포함할 수 있으며, 코드(213)는, 이미 논의된, 방법 10(도 2), 방법 300(도 3) 및/또는 방법 400(도 4)을 구현할 수 있다. 프로세서 코어(200)는 코드(213)에 의해 표시되는 명령어들의 프로그램 시퀀스를 추종한다. 각각의 명령어는 프론트 엔드 부분(210)에 진입할 수 있고, 하나 이상의 디코더들(220)에 의해 처리될 수 있다. 디코더(220)는 그 출력으로서 미리 정의된 포맷의 고정 폭 마이크로 연산(fixed width micro operation)과 같은 마이크로 연산을 생성할 수 있거나, 또는 본래의 코드 명령어를 반영하는 다른 명령어들, 마이크로명령어들, 또는 제어 신호들을 생성할 수 있다. 도시된 프론트 엔드 부분(210)은 레지스터 리네이밍 로직(225) 및 스케줄링 로직(230)을 또한 포함할 수 있으며, 이들은 일반적으로 리소스들을 할당하고 또한 실행을 위한 변환 명령어에 대응하는 연산을 큐잉한다.
프로세서 코어(200)는 실행 유닛들의 세트(255-1 내지 255-N)를 갖는 실행 로직(250)을 포함하는 것으로 도시된다. 일부 실시예들은 구체적인 기능들 또는 기능들의 세트들에 전용인 다수의 실행 유닛들을 포함할 수 있다. 다른 실시예들은 특정 기능을 수행할 수 있는 단 하나의 실행 유닛 또는 하나의 실행 유닛을 포함할 수 있다. 도시된 실행 로직(250)은 코드 명령어들에 의해 구체화되는 연산들을 수행한다.
코드 명령어들에 의해 구체화되는 연산들의 실행의 완료 이후, 백 엔드 로직(260)은 코드(213)의 명령어들을 리타이어(retire)한다. 일 실시예에서, 프로세서 코어(200)는 비순차적 실행을 허가하지만, 명령어들의 순차적 리타이어먼트(retirement)를 요구한다. 리타이어먼트 로직(265)은 관련분야에서의 숙련자들게 알려진 바와 같은 다양한 형태들(예를 들어, 재정렬 버퍼들 등)을 취할 수 있다. 이러한 방식으로, 프로세서 코어(200)는 적어도, 디코더에 의해 생성되는 출력, 레지스터 리네이밍 로직(225)에 의해 이용되는 하드웨어 레지스터들 및 테이블들, 및 실행 로직(250)에 의해 수정되는 임의의 레지스터들(도시되지 않음)에 의해서, 코드(213)의 실행 동안 변환된다.
도 5에 도시되지 않지만, 처리 엘리먼트는 프로세서 코어(200)와 함께 칩상에 다른 엘리먼트들을 포함할 수 있다. 예를 들어, 처리 엘리먼트는 프로세서 코어(200)와 함께 메모리 제어 로직을 포함할 수 있다. 처리 엘리먼트는 I/O 제어 로직을 포함할 수 있고 및/또는 메모리 제어 로직과 통합되는 I/O 제어 로직을 포함할 수 있다. 처리 엘리먼트는 하나 이상의 캐시들을 또한 포함할 수 있다.
이제 도 6을 참조하면, 실시예에 따른 시스템(1000) 실시예의 블록도가 도시된다. 제1 처리 엘리먼트(1070) 및 제2 처리 엘리먼트(1080)를 포함하는 멀티프로세서 시스템(1000)이 도 6에 도시된다. 2개의 처리 엘리먼트들(1070 및 1080)이 도시되지만, 시스템(1000)의 실시예는 하나의 이러한 처리 엘리먼트를 또한 포함할 수 있다는 점이 이해되어야 한다.
시스템(1000)은 포인트-투-포인트 인터커넥트 시스템으로서 도시되며, 제1 처리 엘리먼트(1070) 및 제2 처리 엘리먼트(1080)는 포인트-투-포인트 인터커넥트(1050)를 통해 연결된다. 도 6에 도시되는 임의의 또는 모든 인터커넥트들은 포인트-투-포인트 인터커넥트보다는 멀티-드롭(multi-drop) 버스로서 구현될 수 있다는 점이 이해되어야 한다.
도 6에 도시된 바와 같이, 각각의 처리 엘리먼트들(1070, 1080)은 제1 및 제2 프로세서 코어들(즉, 프로세서 코어들(1074a, 1074b)과 프로세서 코어들(1084a, 1084b))을 포함하는 멀티코어 프로세서들일 수 있다. 이러한 코어들(1074a, 1074b, 1084a, 1084b)은 도 5와 관련하여 위에 논의된 것과 유사한 방식으로 명령어 코드를 실행하도록 구성될 수 있다.
각각의 처리 엘리먼트(1070, 1080)는 적어도 하나 공유 캐시(1896a, 1896b)(예를 들러, 정적 랜덤 액세스 메모리/SRAM을)포함할 수 있다. 공유 캐시(1896a, 1896b)는, 각각, 코어들(1074a, 1074b, 및 1084a, 1084b)과 같은, 프로세서의 하나 이상의 컴포넌트들에 의해 이용되는 데이터(예를 들어, 오브젝트들, 명령어들)를 저장할 수 있다. 예를 들어, 공유 캐시(1896a, 1896b)는 프로세서의 컴포넌트들에 의한 더 빠른 액세스를 위해 메모리(1032, 1034)에 저장되는 데이터를 국부적으로 캐시할 수 있다. 하나 이상의 실시예들에서, 공유 캐시(1896a, 1896b)는 레벨 2(L2), 레벨 3(L3), 레벨 4(L4), 또는 다른 레벨들의 캐시와 같은 하나 이상의 중간 레벨 캐시들, 최종 레벨 캐시(LLC), 및/또는 이들의 조합들을 포함할 수 있다.
2개의 처리 엘리먼트들(1070, 1080)로만 도시되지만, 실시예들의 범위가 이에 제한되는 것은 아니라는 점이 이해되어야 한다. 다른 실시예들에서는, 하나 이상의 추가적 처리 엘리먼트들이 주어진 프로세서에 존재할 수 있다. 대안적으로, 처리 엘리먼트들(1070, 1080) 중 하나 이상은 가속기 또는 필드 프로그래머블 게이트 어레이(field programmable gate array)와 같은 프로세서 이외의 엘리먼트일 수 있다. 예를 들어, 추가적 처리 엘리먼트(들)는 제1 프로세서(1070)와 동일한 추가적 프로세서(들), 제1 프로세서(1070)와는 이질적이거나 비대칭인 추가적 프로세서(들), (예를 들어, 그래픽 가속기들 또는 DSP(digital signal processing) 유닛들과 같은) 가속기들, 필드 프로그래머블 게이트 어레이들, 또는 임의의 다른 처리 엘리먼트를 포함할 수 있다. 아키텍처, 마이크로아키텍처, 열, 전력 소비 특성 등을 포함하는 메트릭들의 스펙트럼의 면에서, 처리 엘리먼트들(1070, 1080) 사이에는 다양한 차이들이 존재할 수 있다. 이러한 차이들은 처리 엘리먼트들(1070, 1080) 사이의 비대칭성 및 이종성으로서 그들 자신을 실제적으로 드러낼 수 있다. 적어도 하나의 실시예에 대하여, 다양한 처리 엘리먼트들(1070, 1080)이 동일 다이 패키지에 상주할 수 있다.
제1 처리 엘리먼트(1070)는 메모리 컨트롤러(MC) 로직(1072) 및 P-P(point-to-point) 인터페이스들(1076 및 1078)을 더 포함할 수 있다. 유사하게, 제2 처리 엘리먼트(1080)는 MC(1082) 및 P-P 인터페이스들(1086 및 1088)을 포함할 수 있다. 도 6에 도시되는 바와 같이, MC들(1072 및 1082)은 프로세서들을 각각의 메모리들, 즉 메모리(1032) 및 메모리(1034)에 연결하며, 이들은 각각의 프로세서들에 국부적으로 부착되는 메인 메모리의 부분들일 수 있다. MC 로직(1072 및 1082)이 처리 엘리먼트들(1070, 1080) 내에 통합되는 것으로 도시되지만, 대안적인 실시예들에 대해 MC 로직은 그 안에 통합되기보다는 오히려 처리 엘리먼트들(1070, 1080) 외부에 있는 이산 로직일 수 있다.
제1 처리 엘리먼트(1070) 및 제2 처리 엘리먼트(1080)는 각각 P-P 인터커넥트들(1076, 1086)을 통해 I/O 서브시스템(1090)에 연결될 수 있다. 도 6에 도시되는 바와 같이, I/O 서브시스템(1090)은 P-P 인터페이스들(1094, 1098)을 포함한다. 또한, I/O 서브시스템(1090)은 I/O 서브시스템(1090)을 고성능 그래픽 엔진(1038)과 연결하는 인터페이스(1092)를 포함한다. 일 실시예에서, 버스(1049)는 그래픽 엔진(1038)을 I/O 서브시스템(1090)에 연결하는데 사용될 수 있다. 대안적으로, 포인트-투-포인트 인터커넥트가 이러한 컴포넌트들을 연결할 수 있다.
다음으로, I/O 서브시스템(1090)이 인터페이스(1096)를 통해 제1 버스(1016)에 연결될 수 있다. 일 실시예에서, 제1 버스(1016)는 PCI(Peripheral Component Interconnect) 버스, 또는 PCI Express 버스 또는 다른 3세대 I/O 인터커넥트 버스와 같은 버스일 수 있지만, 실시예들의 범위가 이에 제한되는 것은 아니다.
도 6에 도시되는 바와 같이, 다양한 I/O 디바이스들(1014)(예를 들어, 카메라들, 센서들)이 제1 버스(1016)에, 제1 버스(1016)를 제2 버스(1020)에 결합할 수 있는 버스 브리지(1018)와 함께, 연결될 수 있다. 일 실시예에서, 제2 버스(1020)는 LPC(low pin count) 버스일 수 있다. 일 실시예에서, 예를 들어, 키보드/마우스(1012), (다음 차례로 컴퓨터 네트워크와 통신할 수 있는) 네트워크 제어기들/통신 디바이스(들)(1026), 및 코드(1030)를 포함할 수 있는 디스크 드라이브 또는 다른 대용량 저장 디바이스와 같은 데이터 저장 유닛(1019)을 포함하는 다양한 디바이스들이 제2 버스(1020)에 연결될 수 있다. 코드(1030)는 위에 설명된 방법들 중 하나 이상의 것들의 실시예들을 수행하기 위한 명령어들을 포함할 수 있다. 따라서, 도시된 코드(1030)은, 이미 논의된, 방법 10(도 2), 방법 300 (도 3) 및/또는 방법 400(도 4)를 구현할 수 있다. 또한, 오디오 I/O(1024)가 제2 버스(1020)에 연결될 수 있다.
다른 실시예들이 고려된다는 점에 주목하자. 예를 들어, 도 6의 포인트-투-포인트 아키텍처 대신에, 시스템은 멀티-드롭 버스 또는 다른 그러한 통신 토폴로지를 구현할 수 있다. 또한, 도 6의 엘리먼트들은 도 6에 도시된 것보다 더 많은 또는 더 적은 집적된 칩들을 사용하여 대안적으로 구획될 수 있다.
추가적 사항들 및 예들:
예 1은 디바이스들 사이의 직접 피어-투-피어 공유를 용이하게 하는 컴퓨터 플랫폼을 포함할 수 있고, 이는, 글로벌 포지셔닝 시스템, 자이로스코프, 가속도계, 무선 네트워크 센서, 또는 열 센서로부터 선택되는 하나 이상의 센서들, 하나 이상의 센서들과 통신하는 접속 매니저를 포함하고, 접속 매니저는, 디바이스 사용자에 의해 자주 방문되는 하나 이상의 위치들에 기초하여 정황상의 위치를 식별하는 정황상의 위치 식별기, 정황상의 위치 그룹 내의 신뢰 디바이스들의 정황상의 그룹 디바이스 리스트를 생성하는 리스트 생성기, 및 정황상의 위치 그룹 ID(identification)를 생성하는 ID 생성기- 정황상의 그룹 ID는 정황상의 위치 그룹 내의 신뢰 디바이스들에 대한 데이터 공유 토큰 역할을 함 -를 포함한다.
예 2는 예 1의 컴퓨터 플랫폼을 포함할 수 있고, 접속 매니저 및 하나 이상의 센서들과 통신하는 플랫폼 매니저를 더 포함한다.
예 3은 예 1 또는 예 2의 컴퓨터 플랫폼을 포함할 수 있고, 플랫폼 매니저는 접속 매니저에 의해 피어 디바이스들과 공유되는 데이터를 분석하는 콘텐츠 공유 분석기를 더 포함한다.
예 4는 예 1 또는 예 2의 컴퓨터 플랫폼을 포함할 수 있고, 디바이스 매니저 및 접속 매니저와 통신하는 사용자 인터페이스를 더 포함한다.
예 5는 예 1 또는 예 2의 컴퓨터 플랫폼을 포함할 수 있고, 피어 디바이스들과 공유될 데이터를 저장하는 데이터 저장부를 더 포함한다.
예 6은 예 1 또는 예 2의 컴퓨터 플랫폼을 포함할 수 있고, 디바이스간 통신기를 더 포함한다.
예 7은 정황상의 위치 그룹 내의 디바이스들 사이의 직접 피어-투-피어 데이터 공유를 용이하게 하는 접속 매니저 장치를 포함할 수 있고, 이는, 디바이스 사용자에 의해 자주 방문되는 하나 이상의 위치들에 기초하여 정황상의 위치를 결정하는 정황상의 위치 식별기, 정황상의 위치 그룹 내의 신뢰 디바이스들의 정황상의 위치 그룹 디바이스 리스트를 생성하는 리스트 생성기, 및 정황상의 위치 그룹 ID를 생성하는 ID 생성기- 정황상의 위치 그룹 ID는 정황상의 위치 그룹 내의 신뢰 디바이스들에 대한 데이터 공유 토큰 역할을 함 -를 포함한다.
예 8은 예 7의 장치를 포함할 수 있고, 접속 매니저와 통신하는 플랫폼 매니저를 더 포함한다.
예 9는 예 7 또는 예 8의 장치를 포함할 수 있고, 플랫폼 매니저는 접속 매니저에 의해 피어 디바이스들과 공유되는 데이터를 분석하는 콘텐츠 공유 분석기를 더 포함한다.
예 10은 예 7 또는 예 8의 장치를 포함할 수 있고, 명시된 정황상의 위치 내의 근접한 디바이스들을 추적하는 근접 디바이스 로그를 더 포함한다.
예 11은 예 7 또는 예 8의 장치를 포함할 수 있고, 신뢰 점수 생성기를 더 포함한다.
예 12는 예 7 또는 예 8의 장치를 포함할 수 있고, 데이터 저장부와 통신하는 접속 매니저 내의 데이터 공유 매니저를 더 포함한다.
예 13은 정황상의 위치 그룹 내의 디바이스들 사이의 직접 피어-투-피어 데이터 공유를 용이하게 하는 방법을 포함할 수 있고, 이는, 디바이스 사용자에 의해 자주 방문되는 하나 이상의 위치들에 기초하여 정황상의 위치를 결정하는 단계, 정황상의 위치 그룹 내의 신뢰 디바이스들의 정황상의 위치 그룹 디바이스 리스트를 생성하는 단계, 및 정황상의 위치 그룹 내의 신뢰 디바이스들에 대한 데이터 공유 토큰 역할을 하는 정황상의 위치 그룹 ID를 생성하는 단계를 포함한다.
예 14는 예 13의 방법을 포함할 수 있고, 정황상의 위치 그룹을 결정하기 위해 센서를 사용하여 디바이스 사용자에 의해 자주 방문되는 위치들을 모니터링하는 단계를 더 포함한다.
예 15는 예 14의 방법을 포함할 수 있고, 정황상의 위치 그룹 내의 다른 디바이스들의 존재를 모니터링하는 단계를 더 포함한다.
예 16은 예 15의 방법을 포함할 수 있고, 정황상의 위치 그룹 내의 다른 디바이스의 출현 빈도에 기초하여 신뢰 점수를 결정하는 단계를 더 포함한다.
예 17은 예 16의 방법을 포함할 수 있고, 신뢰 점수에 기초하여 정황상의 위치 그룹에 디바이스를 추가하라고 디바이스 사용자에게 프롬프트하는 단계를 더 포함한다.
예 18은 예 13 또는 예 14의 방법을 포함할 수 있고, 정황상의 위치 그룹 내의 다른 디바이스와 데이터를 직접 공유하는 단계를 더 포함한다.
예 19는 예 18의 방법을 포함할 수 있고, 데이터 공유는 WebRTC(Web Real Time Communication)를 사용한다.
예 20은 명령어들의 세트를 포함하는 적어도 하나의 컴퓨터 판독가능 저장 매체를 포함할 수 있고, 명령어들은, 컴퓨팅 디바이스에 의해 실행될 때, 컴퓨팅 디바이스로 하여금, 디바이스 사용자에 의해 자주 방문되는 하나 이상의 위치들에 기초하여 정황상의 위치를 결정하게 하고, 정황상의 위치 그룹 내의 신뢰 디바이스들의 정황상의 위치 그룹 디바이스 리스트를 생성하게 하며, 정황상의 위치 그룹 내의 신뢰 디바이스들에 대한 데이터 공유 토큰 역할을 하는 정황상의 위치 그룹 ID를 생성하게 한다.
예 21은 예 20의 적어도 하나의 컴퓨터 판독가능 저장 매체를 포함할 수 있고, 명령어들은, 실행될 때, 컴퓨팅 디바이스로 하여금, 정황상의 위치 그룹을 결정하기 위해 디바이스 사용자에 의해 자주 방문되는 위치들을 모니터링하게 한다.
예 22는 예 21의 적어도 하나의 컴퓨터 판독가능 저장 매체를 포함할 수 있고, 명령어들은, 실행될 때, 컴퓨팅 디바이스로 하여금 정황상의 위치 그룹 내의 다른 디바이스들의 존재를 모니터링하게 한다.
예 23은 예 22의 적어도 하나의 컴퓨터 판독가능 저장 매체를 포함할 수 있고, 명령어들은, 실행될 때, 컴퓨팅 디바이스로 하여금 정황상의 위치 그룹 내의 다른 디바이스의 출현 빈도에 기초하여 신뢰 점수를 결정하게 한다.
예 24는 예 23의 적어도 하나의 컴퓨터 판독가능 저장 매체를 포함할 수 있고, 명령어들은, 실행될 때, 컴퓨팅 디바이스로 하여금 신뢰 점수에 기초하여 정황상의 위치 그룹에 디바이스를 추가하라고 디바이스 사용자에게 프롬프트하게 한다.
예 25는 예 20 또는 예 21의 적어도 하나의 컴퓨터 판독가능 저장 매체를 포함할 수 있고, 명령어들은, 실행될 때, 컴퓨팅 디바이스로 하여금 정황상의 위치 그룹 내의 다른 디바이스와 데이터를 직접 공유하게 한다.
예 26은 예 25의 적어도 하나의 컴퓨터 판독가능 저장 매체를 포함할 수 있고, 데이터 공유는 WebRTC(Web Real Time Communication)를 사용한다.
예 27은 정황상의 위치 그룹 내의 디바이스들 사이의 직접 피어-투-피어 데이터 공유를 용이하게 하는 접속 매니저 장치를 포함할 수 있고, 이는, 디바이스 사용자에 의해 자주 방문되는 하나 이상의 위치들에 기초하여 정황상의 위치를 결정하는 수단, 정황상의 위치 그룹 내의 신뢰 디바이스들의 정황상의 위치 그룹 디바이스 리스트를 생성하는 수단, 및 정황상의 위치 그룹 내의 신뢰 디바이스들에 대한 데이터 공유 토큰 역할을 하는 정황상의 위치 그룹 ID를 생성하는 수단을 포함한다.
예 28는 예 27의 장치를 포함할 수 있고, 정황상의 위치 그룹을 결정하기 위해 센서를 사용하여 디바이스 사용자에 의해 자주 방문되는 위치들을 모니터링하는 수단을 더 포함한다.
예 29는 예 28의 장치를 포함할 수 있고, 정황상의 위치 그룹 내의 다른 디바이스들의 존재를 모니터링하는 수단을 더 포함한다.
예 30은 예 29의 장치를 포함할 수 있고, 정황상의 위치 그룹 내의 다른 디바이스의 출현 빈도에 기초하여 신뢰 점수를 결정하는 수단을 더 포함한다.
예 31은 예 30의 장치를 포함할 수 있고, 신뢰 점수에 기초하여 정황상의 위치 그룹에 디바이스를 추가하라고 디바이스 사용자에게 프롬프트하는 수단을 더 포함한다.
예 32는 예 27 또는 예 28의 장치를 포함할 수 있고, 정황상의 위치 그룹 내의 다른 디바이스와 데이터를 직접 공유하는 수단을 더 포함한다.
예 33은 예 32의 장치를 포함할 수 있고, 데이터 공유는 WebRTC(Web Real Time Communication)를 사용한다.
따라서, 위에 설명된 실시예들은 신뢰 디바이스들과 직접 피어-투-피어 방식으로 데이터 공유를 용이하게 하는 정황상 인식되는 다이나믹 그룹 형성을 허용한다. 위치들을 관찰하고, 정황상의 위치 ID들을 생성하고, 신뢰 디바이스 리스트를 생성함으로써, 최소한의 사용자 개입으로 직관적인 방식으로 그룹들이 형성되어, 인간 접촉의 자연스러운 패턴들을 모방하는 보다 매끄러운 데이터 공유 경험을 생성한다.
실시예들은 모든 타입들의 반도체 IC(integrated circuit) 칩들과의 사용에 적용될 수 있다. 이러한 IC 칩들의 예들은 프로세서들, 제어기들, 칩셋 컴포넌트들, PLA들(programmable logic arrays), 메모리 칩들, 네트워크 칩들, SoC들(systems on chip), SSD/NAND 제어기 ASIC들 등을 포함하지만 이에 제한되는 것은 아니다. 또한, 도면들 중 일부에서, 신호 도체 라인들은 라인들로 표현된다. 더 많은 구성 신호 경로들을 표시하고, 숫자 라벨을 갖고, 다수의 구성 신호 경로들을 표시하고, 그리고/또는 하나 이상의 단부들에 화살표들을 갖고, 주 정보 흐름 방향을 표시하기 위해, 일부는 상이할 수 있다. 그러나, 이것은 제한된 방식으로 이해되어서는 안 된다. 오히려, 이러한 추가된 상세사항은 회로의 더 쉬운 이해를 용이하게 하기 위해 하나 이상의 예시적인 실시예들과 연계되어 사용될 수 있다. 추가적인 정보를 갖는 여부와 상관없이, 임의의 표현되는 신호 라인들은 다수의 방향들로 이동할 수 있고 임의의 적합한 타입의 신호 방식, 예를 들어, 차동 쌍들, 광 섬유 라인들, 및/또는 단일-단(single-ended) 라인들로 구현되는 디지털 또는 아날로그 라인들로 구현될 수 있는 하나 이상의 신호들을 실제로 포함할 수 있다.
예시적인 크기들/모델들/값들/범위들이 주어졌지만, 실시예들이 이들에 제한되는 것은 아니다. 제조 기술(예를 들어, 포토리소그래피)이 시간에 따라 발달함에 따라, 더 작은 크기의 디바이스들이 제조될 수 있다고 예상된다. 또한, IC 칩들 및 다른 컴포넌트들로 잘 알려진 전원/접지 접속들은, 도시 및 설명의 간소화를 위해, 그리고 실시예들의 특정 양상들을 불명료하게 하지 않기 위해, 도면들 내에 도시되거나 도시되지 않을 수 있다. 또한, 구성들은 실시예들을 불명료하게 하지 않기 위해 그리고 또한 이러한 블록도 구성들의 구현과 관련된 상세들이 실시예가 구현되어야 하는 플랫폼에 크게 의존한다는 사실, 즉 이러한 상세들이 관련분야의 통상의 기술자의 이해 범위 내에 있어야 한다는 사실에 비추어 블록도 형태로 도시될 수 있다. 예시적인 실시예들을 설명하기 위해 구체적인 상세사항들(예를 들어, 회로들)이 제시되는 경우, 이러한 구체적인 상세사항들의 변경 없이, 또는 변경과 함께 실시예들이 실시될 수 있다는 점이 관련분야에서의 숙련된 자에게 명백할 것이다. 따라서, 설명은 제한적인 것 대신에 예시적인 것으로 간주되어야 한다.
"연결되는(coupled)"이라는 용어는 관심 대상의 컴포넌트들 사이에서 직접적 또는 간접적인 임의의 타입의 관계성을 지칭하기 위해 본 명세서에 사용될 수 있고, 전기적, 기계적, 유동적, 광학적, 전자기적, 전자기계적 또는 다른 접속들에 적용될 수 있다. 또한, "제1(first)", "제2(second)" 등의 용어들은 본 명세서에서 단지 논의를 용이하게 하기 위해 사용될 수 있으며, 달리 표시되지 않는 한 어떠한 특정한 시간적 또는 연대기적 의미도 수반하지 않을 수 있다.
본 출원 및 특허청구범위에서 사용된 바와 같이, "~중 하나 이상(one or more of)"이라는 용어에 의해 결합되는 아이템들의 리스트는 열거되는 항목들의 임의의 조합을 의미할 수 있다. 예를 들어, "A, B 또는 C 중 하나 이상(one or more of A, B or C)"라는 문구는 A; B; C; A 및 B; A 및 C; B 및 C; 또는 A, B 및 C를 의미할 수 있다.
관련분야에서의 숙련된 자는 전술한 설명으로부터 실시예들의 광범위한 기술들이 다양한 형태들로 구현될 수 있다는 점을 이해할 것이다. 따라서, 실시예들이 그 특정한 예들과 관련하여 설명되었지만, 도면들, 명세서 및 이하의 청구범위의 검토시에 다른 수정들이 숙련된 실시자에게는 명백할 것이기 때문에 실시예들의 진정한 범위가 이에 제한되어서는 안 된다.

Claims (25)

  1. 디바이스들 사이의 직접 피어-투-피어 공유를 용이하게 하는 컴퓨터 플랫폼으로서,
    글로벌 포지셔닝 시스템, 자이로스코프, 가속도계, 무선 네트워크 센서, 또는 열 센서로부터 선택되는 하나 이상의 센서들;
    상기 하나 이상의 센서들과 통신하는 접속 매니저
    를 포함하고,
    상기 접속 매니저는,
    디바이스 사용자에 의해 자주 방문되는 하나 이상의 위치들에 기초하여 정황상의 위치를 식별하는 정황상의 위치 식별기,
    상기 정황상의 위치 그룹 내의 신뢰 디바이스들의 정황상의 그룹 디바이스 리스트를 생성하는 리스트 생성기, 및
    정황상의(contextual) 위치 그룹 ID(identification)를 생성하는 ID 생성기- 상기 정황상의 그룹 ID는 상기 정황상의 위치 그룹 내의 상기 신뢰 디바이스들에 대한 데이터 공유 토큰 역할을 함 -
    를 포함하는 컴퓨터 플랫폼.
  2. 제1항에 있어서,
    상기 접속 매니저 및 상기 하나 이상의 센서들과 통신하는 디바이스 매니저를 더 포함하는 컴퓨터 플랫폼.
  3. 제1항 또는 제2항에 있어서,
    상기 디바이스 매니저는 상기 접속 매니저에 의해 피어 디바이스들과 공유되는 데이터를 분석하는 콘텐츠 공유 분석기를 더 포함하는 컴퓨터 플랫폼.
  4. 제1항 또는 제2항에 있어서,
    상기 디바이스 매니저 및 상기 접속 매니저와 통신하는 사용자 인터페이스를 더 포함하는 컴퓨터 플랫폼.
  5. 제1항 또는 제2항에 있어서,
    피어 디바이스들과 공유될 데이터를 저장하는 데이터 저장부를 더 포함하는 컴퓨터 플랫폼.
  6. 제1항 또는 제2항에 있어서,
    디바이스간 통신기를 더 포함하는 컴퓨터 플랫폼.
  7. 정황상의 위치 그룹 내의 디바이스들 사이의 직접 피어-투-피어 데이터 공유를 용이하게 하는 접속 매니저 장치로서,
    디바이스 사용자에 의해 자주 방문되는 하나 이상의 위치들에 기초하여 정황상의 위치를 결정하는 정황상의 위치 식별기;
    상기 정황상의 위치 그룹 내의 신뢰 디바이스들의 정황상의 위치 그룹 디바이스 리스트를 생성하는 리스트 생성기; 및
    정황상의 위치 그룹 ID를 생성하는 ID 생성기- 상기 정황상의 위치 그룹 ID는 상기 정황상의 위치 그룹 내의 상기 신뢰 디바이스들에 대한 데이터 공유 토큰 역할을 함 -
    를 포함하는 장치.
  8. 제7항에 있어서,
    상기 접속 매니저와 통신하는 플랫폼 매니저를 더 포함하는 장치.
  9. 제7항 또는 제8항에 있어서,
    상기 플랫폼 매니저는 상기 접속 매니저에 의해 피어 디바이스들과 공유되는 데이터를 분석하는 콘텐츠 공유 분석기를 더 포함하는 장치.
  10. 제7항 또는 제8항에 있어서,
    명시된 정황상의 위치 내의 근접한 디바이스들을 추적하는 근접 디바이스 로그를 더 포함하는 장치.
  11. 제7항 또는 제8항에 있어서,
    신뢰 점수 생성기를 더 포함하는 장치.
  12. 제7항 또는 제8항에 있어서,
    데이터 저장부와 통신하는 상기 접속 매니저 내의 데이터 공유 매니저를 더 포함하는 장치.
  13. 정황상의 위치 그룹 내의 디바이스들 사이의 직접 피어-투-피어 데이터 공유를 용이하게 하는 방법으로서,
    디바이스 사용자에 의해 자주 방문되는 하나 이상의 위치들에 기초하여 정황상의 위치를 결정하는 단계;
    상기 정황상의 위치 그룹 내의 신뢰 디바이스들의 정황상의 위치 그룹 디바이스 리스트를 생성하는 단계; 및
    상기 정황상의 위치 그룹 내의 상기 신뢰 디바이스들에 대한 데이터 공유 토큰 역할을 하는 정황상의 위치 그룹 ID를 생성하는 단계
    를 포함하는 방법.
  14. 제13항에 있어서,
    상기 정황상의 위치 그룹을 결정하기 위해 센서를 사용하여 상기 디바이스 사용자에 의해 자주 방문되는 위치들을 모니터링하는 단계를 더 포함하는 방법.
  15. 제14항에 있어서,
    상기 정황상의 위치 그룹 내의 다른 디바이스들의 존재를 모니터링하는 단계를 더 포함하는 방법.
  16. 제15항에 있어서,
    상기 정황상의 위치 그룹 내의 다른 디바이스의 출현 빈도에 기초하여 신뢰 점수를 결정하는 단계를 더 포함하는 방법.
  17. 제16항에 있어서,
    상기 신뢰 점수에 기초하여 상기 정황상의 위치 그룹에 디바이스를 추가하라고 상기 디바이스 사용자에게 프롬프트(prompt)하는 단계를 더 포함하는 방법.
  18. 제13항 또는 제14항에 있어서,
    상기 정황상의 위치 그룹 내의 다른 디바이스와 데이터를 직접 공유하는 단계를 더 포함하는 방법.
  19. 제18항에 있어서,
    상기 데이터 공유는 WebRTC(Web Real Time Communication)를 사용하는 방법.
  20. 명령어들의 세트를 포함하는 적어도 하나의 컴퓨터 판독가능 저장 매체로서,
    상기 명령어들은, 컴퓨팅 디바이스에 의해 실행될 때, 상기 컴퓨팅 디바이스로 하여금,
    디바이스 사용자에 의해 자주 방문되는 하나 이상의 위치들에 기초하여 정황상의 위치를 결정하게 하고;
    상기 정황상의 위치 그룹 내의 신뢰 디바이스들의 정황상의 위치 그룹 디바이스 리스트를 생성하게 하며;
    상기 정황상의 위치 그룹 내의 상기 신뢰 디바이스들에 대한 데이터 공유 토큰 역할을 하는 정황상의 위치 그룹 ID를 생성하게 하는
    적어도 하나의 컴퓨터 판독가능 저장 매체.
  21. 제20항에 있어서,
    상기 명령어들은, 실행될 때, 상기 컴퓨팅 디바이스로 하여금, 상기 정황상의 위치 그룹을 결정하기 위해 디바이스 사용자에 의해 자주 방문되는 위치들을 모니터링하게 하는 적어도 하나의 컴퓨터 판독 가능 저장 매체.
  22. 제21항에 있어서,
    상기 명령어들은, 실행될 때, 상기 컴퓨팅 디바이스로 하여금 상기 정황상의 위치 그룹 내의 다른 디바이스들의 존재를 모니터링하게 하는 적어도 하나의 컴퓨터 판독 가능 저장 매체.
  23. 제22항에 있어서,
    상기 명령어들은, 실행될 때, 상기 컴퓨팅 디바이스로 하여금 상기 정황상의 위치 그룹 내의 다른 디바이스의 출현 빈도에 기초하여 신뢰 점수를 결정하게 하는 적어도 하나의 컴퓨터 판독 가능 저장 매체.
  24. 제23항에 있어서,
    상기 명령어들은, 실행될 때, 상기 컴퓨팅 디바이스로 하여금 상기 신뢰 점수에 기초하여 상기 정황상의 위치 그룹에 디바이스를 추가하라고 상기 디바이스 사용자에게 프롬프트하게 하는 적어도 하나의 컴퓨터 판독 가능 저장 매체.
  25. 제20항 또는 제21항에 있어서,
    상기 명령어들은, 실행될 때, 상기 컴퓨팅 디바이스로 하여금 상기 정황상의 위치 그룹 내의 다른 디바이스와 데이터를 직접 공유하게 하는 적어도 하나의 컴퓨터 판독 가능 저장 매체.
KR1020177013008A 2014-12-17 2015-12-04 정황상 인식되는 다이나믹 그룹 형성 KR102452159B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/573,093 US9848306B2 (en) 2014-12-17 2014-12-17 Contextually aware dynamic group formation
US14/573,093 2014-12-17
PCT/US2015/063989 WO2016099961A1 (en) 2014-12-17 2015-12-04 Contextually aware dynamic group formation

Publications (2)

Publication Number Publication Date
KR20170098795A true KR20170098795A (ko) 2017-08-30
KR102452159B1 KR102452159B1 (ko) 2022-10-11

Family

ID=56127351

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177013008A KR102452159B1 (ko) 2014-12-17 2015-12-04 정황상 인식되는 다이나믹 그룹 형성

Country Status (5)

Country Link
US (1) US9848306B2 (ko)
EP (1) EP3235272A4 (ko)
KR (1) KR102452159B1 (ko)
CN (1) CN107005801B (ko)
WO (1) WO2016099961A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9116137B1 (en) 2014-07-15 2015-08-25 Leeo, Inc. Selective electrical coupling based on environmental conditions
US20160071219A1 (en) 2014-09-08 2016-03-10 Leeo, Inc. Dynamic insurance based on environmental monitoring
US10841316B2 (en) * 2014-09-30 2020-11-17 Citrix Systems, Inc. Dynamic access control to network resources using federated full domain logon
US10026304B2 (en) 2014-10-20 2018-07-17 Leeo, Inc. Calibrating an environmental monitoring device
SG10201505791PA (en) * 2015-07-24 2017-02-27 Mastercard International Inc Method for securing an electronic transaction request from a computing device for fraud detection
US10805775B2 (en) 2015-11-06 2020-10-13 Jon Castor Electronic-device detection and activity association
US9801013B2 (en) * 2015-11-06 2017-10-24 Leeo, Inc. Electronic-device association based on location duration
US10216917B2 (en) * 2017-07-17 2019-02-26 International Business Machines Corporation Identity validation using local environment information
US10623471B2 (en) 2017-11-08 2020-04-14 International Business Machines Corporation Data sharing among processing systems in a collaboration group
US10958640B2 (en) 2018-02-08 2021-03-23 Citrix Systems, Inc. Fast smart card login
US11614934B1 (en) 2021-11-24 2023-03-28 International Business Machines Corporation Monolithic computer application refactoring

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120149309A1 (en) * 2010-12-10 2012-06-14 Verizon Patent And Licensing Inc. Method and system for providing proximity-relationship group creation
US20130104221A1 (en) * 2008-09-18 2013-04-25 Apple Inc. Group Formation Using Anonymous Broadcast Information
WO2014051577A1 (en) * 2012-09-27 2014-04-03 Hewlett-Packard Development Company, L. P. Sharing content between collocated mobile devices in an ad-hoc private social group

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7644144B1 (en) * 2001-12-21 2010-01-05 Microsoft Corporation Methods, tools, and interfaces for the dynamic assignment of people to groups to enable enhanced communication and collaboration
US7783777B1 (en) 2003-09-09 2010-08-24 Oracle America, Inc. Peer-to-peer content sharing/distribution networks
CN101146294B (zh) * 2005-10-28 2010-12-01 华为技术有限公司 一种移动台数据下载方法
US7680959B2 (en) * 2006-07-11 2010-03-16 Napo Enterprises, Llc P2P network for providing real time media recommendations
US8554784B2 (en) 2007-08-31 2013-10-08 Nokia Corporation Discovering peer-to-peer content using metadata streams
US8364969B2 (en) * 2009-02-02 2013-01-29 Yahoo! Inc. Protecting privacy of shared personal information
CN101800928A (zh) * 2009-02-09 2010-08-11 中兴通讯股份有限公司 群组定位方法、装置及系统
US8621656B2 (en) * 2010-07-06 2013-12-31 Nokia Corporation Method and apparatus for selecting a security policy
CN102647667B (zh) * 2011-02-21 2014-10-08 华为技术有限公司 群组的管理方法及push服务器
US8718672B2 (en) * 2011-04-18 2014-05-06 Microsoft Corporation Identifying status based on heterogeneous sensors
US8769003B2 (en) 2012-05-09 2014-07-01 Qualcomm Innovation Center, Inc. Method for proximity determination between mobile peers while maintaining privacy
EP2787696B1 (en) * 2012-11-15 2016-10-26 Huawei Device Co., Ltd. Method and device for transferring web real-time communication session
US9668166B2 (en) 2013-02-05 2017-05-30 Qualcomm Incorporated Quality of service for web client based sessions

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130104221A1 (en) * 2008-09-18 2013-04-25 Apple Inc. Group Formation Using Anonymous Broadcast Information
US20120149309A1 (en) * 2010-12-10 2012-06-14 Verizon Patent And Licensing Inc. Method and system for providing proximity-relationship group creation
WO2014051577A1 (en) * 2012-09-27 2014-04-03 Hewlett-Packard Development Company, L. P. Sharing content between collocated mobile devices in an ad-hoc private social group

Also Published As

Publication number Publication date
US20160183064A1 (en) 2016-06-23
EP3235272A4 (en) 2018-05-30
WO2016099961A1 (en) 2016-06-23
CN107005801A (zh) 2017-08-01
EP3235272A1 (en) 2017-10-25
CN107005801B (zh) 2021-03-02
KR102452159B1 (ko) 2022-10-11
US9848306B2 (en) 2017-12-19

Similar Documents

Publication Publication Date Title
KR102452159B1 (ko) 정황상 인식되는 다이나믹 그룹 형성
CN108737242B (zh) 提供对话内容的系统
EP3437262B1 (en) Multi-modal conversational intercom
US10419429B2 (en) Information providing method and device for sharing user information
US11176485B2 (en) Dynamic integration of machine-learning modules
US9772990B2 (en) Personal assistant context building
US10762174B2 (en) Collaborative public user profile
US11294545B2 (en) Interface to display shared user groups
KR20200078704A (ko) 맞춤화된 전자 메시징 그래픽의 디스플레이
KR20200122433A (ko) 커스터마이즈된 사용자-제어형 미디어 오버레이들
US11356435B1 (en) Multiple application authentication
US20200341617A1 (en) Program Orchestration Method and Electronic Device
KR20240013273A (ko) 상호작용형 정보 인터페이스
KR20200041903A (ko) 애플리케이션-독립적 메시징 시스템
JP2021184284A (ja) メッセージ基盤の通知を提供するための方法およびシステム
WO2019059908A1 (en) COMMUNICATION PLATFORM FOR MINORS
US20240045899A1 (en) Icon based tagging
TWI727216B (zh) 發佈訊息對話到電子論壇
CN110708238A (zh) 用于处理信息的方法和装置
US10715477B2 (en) Communication platform for minors
KR102600688B1 (ko) 메신저 상에서 자동 응답 기능을 제공하는 방법 및 시스템
EP3460741A1 (en) Communication platform for minors
JP2022058711A (ja) メッセージ基盤の通知を提供するための方法およびシステム

Legal Events

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