KR20130124363A - 애드혹 파일 공유 - Google Patents

애드혹 파일 공유 Download PDF

Info

Publication number
KR20130124363A
KR20130124363A KR1020137021225A KR20137021225A KR20130124363A KR 20130124363 A KR20130124363 A KR 20130124363A KR 1020137021225 A KR1020137021225 A KR 1020137021225A KR 20137021225 A KR20137021225 A KR 20137021225A KR 20130124363 A KR20130124363 A KR 20130124363A
Authority
KR
South Korea
Prior art keywords
file sharing
hoc
user
devices
sharing service
Prior art date
Application number
KR1020137021225A
Other languages
English (en)
Other versions
KR101491396B1 (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 KR20130124363A publication Critical patent/KR20130124363A/ko
Application granted granted Critical
Publication of KR101491396B1 publication Critical patent/KR101491396B1/ko

Links

Images

Classifications

    • 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • 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/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Abstract

애드혹 파일 공유 서비스를 이용하여 파일을 전송하고 파일 브라우징을 수행하는 기기의 방법 및 장치가 설명된다. 예시적인 방법에서, 이 기기는 애드혹 파일 공유 서비스의 알림을 하나 이상의 다른 기기들 각각에 전송한다. 전송된 알림은 각각 제1 기기에 관련된 사용자의 사용자 ID를 포함한다. 더욱이, 애드혹 파일 공유 서비스로의 액세스는 사용자별로 승인된다. 이 기기는 다른 기기들 각각과의 연결을 설정하고 복수의 다른 기기들 각각과 파일을 주고받는다.

Description

애드혹 파일 공유{AD HOC FILE SHARING}
본 발명은 일반적으로 파일 공유 및 브라우징에 관한 것이며, 특히 애드혹 기반(ad hoc basis)의 파일 공유 및 브라우징에 관한 것이다.
파일 공유는 컴퓨터 또는 기타 기기에 저장된 파일들로의 액세스를 배포 및/또는 제공하는데 이용된다. 파일 공유는 클라이언트 컴퓨터들이 중앙 서버의 파일들에 액세스하여, 제3자 서비스로 컴퓨터들 간에 피어-투-피어 파일 공유를 설정하고, 파일들을 이동식 매체에 공유될 수 있게 배치하고 이 매체를 컴퓨터들 간에 이동시키는 등의 행위에 의해 실행될 수 있다. 파일 공유의 한 특정 이용은 특정한 목적 또는 임무를 위해 파일들을 공유하는 애드혹 기반으로 파일들을 공유하는 것이다. 예를 들어, 이는 회의 참석자들 간에 임시 파일 공유를 설정하는데 유용할 수 있다.
그러나, 두 대의 컴퓨터들 간에 파일 공유가 유용한 만큼, 평균적인 사용자가 그들의 컴퓨터로 애드혹 파일 공유를 적절하게 설정하기가 어려울 수 있다. 예를 들어, 애드혹 파일 공유를 위해서는 참여 컴퓨터들이 동일한 Wi-Fi 네트워크상에 있어야 하고, 개인이 파일 공유를 가능하게 하고 파일 승인을 설정해야 하는 등의 행위가 필요할 수 있다. 애드혹 파일 공유를 설정하는데 요구되는 단계가 많을수록, 그만큼 컴퓨터 사용자가 이러한 유형의 파일 공유를 이용할 가능성이 적을 것이다.
<발명의 개요>
애드혹 파일 공유 서비스를 이용하여 파일들을 전송(transfer)하고 파일 브라우징(browsing)을 실행하는 기기의 방법 및 장치가 설명된다. 한 예시적인 방법에서, 제1 기기는 하나 이상의 다른 기기들 각각에 애드혹 파일 공유 서비스의 알림(advertisement)을 전송한다. 전송된 알림들 각각은 제1 기기에 관련된 사용자의 사용자 ID(identity)를 포함하고 있다. 더욱이, 애드혹 파일 공유 서비스로의 액세스는 사용자별로(on a per-user basis) 승인된다. 제1 기기는 복수의 다른 기기들 각각과의 연결을 설정할 수 있고 이들 복수의 다른 기기들 각각과 파일들을 주고받을 수 있다.
다른 실시예에서, 기기는 애드혹 파일 공유 서비스의 알림을 복수의 다른 기기들 각각에 전송하며, 여기서 알림은 제1 기기에 연관된 사용자의 사용자 ID를 포함하고 있다. 더욱이, 이 기기는 복수의 다른 기기들 각각이 애드혹 파일 공유 서비스에 액세스할 수 있게 허용해주며, 여기서 애드혹 파일 공유 서비스로의 액세스는 사용자별로 승인된다. 게다가, 이러한 액세스는 복수의 다른 기기들 각각에 해당하는 사용자가 제1 기기에 대한 파일 공유 계정을 갖지 않고도 성취될 수 있다.
한 실시예에서, 애드혹 파일 공유 프로세스는 사용자가 애드혹 파일 공유를 위해 지정되거나 구성된 폴더 또는 아이콘을 선택하거나 여는 것에 응답해서 제1 기기에서 개시될 수 있다. 이 폴더나 아이콘을 선택하거나 열면 애드혹 파일 공유 프로세스가 자동으로 가능해지고, 이 프로세스는 애드혹 파일 공유 서비스의 알림을 하나 이상의 다른 기기들 각각에 전송하는 것을 포함할 수 있다. 이 알림은 제1 기기에 관련된 사용자의 사용자 ID 또는 제1 기기의 기기 ID 또는 사용자 ID와 기기 ID 양자를 포함할 수 있다. 각 기기에서의 액세스는 사용자별로 승인될 수 있고, 액세스는 알림이 수신되기 전에 다른 기기의 사용자가 파일 공유를 설정하지 않고도 성취될 수 있다.
다른 방법 및 기기들도 또한 설명된다.
본 발명은 첨부 도면의 그림들에 제한이 아니라 예로서 도시되어 있으며 그림들에서 동일 참조번호가 유사한 요소들을 가리키고 있다.
도 1은 애드혹 파일 공유에 참여하는 다수의 기기들의 일 실시예의 블록도이다.
도 2는 애드혹 파일 공유를 실행하기 위한 프로세스의 일 실시예의 흐름도이다.
도 3a은 애드혹 파일 공유 서비스를 가능하게 하고 이를 알려주기 위한 프로세스의 일 실시예의 흐름도이다.
도 3b는 애드혹 파일 공유 서비스로부터 알림을 수신하기 위한 프로세스의 일 실시예의 흐름도이다.
도 4a 및 4b는 애드혹 파일 공유 서비스를 이용하여 파일들을 전송하기 위한 프로세스의 일 실시예의 흐름도이다.
도 5a 및 5b는 애드혹 파일 공유 서비스를 이용하여 파일들을 브라우징(browse)하기 위한 프로세스의 일 실시예의 흐름도이다.
도 6은 애드혹 파일 공유 서비스를 이용한 파일 공유 및 브라우징을 보여주는 파일 공유 사용자 인터페이스의 블록도이다.
도 7은 애드혹 파일 공유를 실행하는 애드혹 파일 공유 모듈의 블록도이다.
도 8a는 애드록 파일 공유 서비스를 가능하게 하고 이를 알려주는 애드혹 파일 공유 이네이블 모듈의 블록도이다.
도 8b는 애드혹 파일 공유 서비스에 대한 알림을 수신하는 알림 수신 모듈의 블록도이다.
도 9a, 9b 및 9c는 애드혹 파일 공유 서비스를 이용하여 파일들을 전송하는 파일 전송 모듈의 블록도이다.
도 10a, 10b 및 10c는 애드혹 파일 공유 서비스를 이용하여 파일들을 브라우징하는 파일 브라우징 모듈의 블록도이다.
도 11은 여기에 설명된 실시예들에 연관되어서 이용될 수 있는 전형적인 컴퓨터 시스템의 일례를 보여주고 있다.
도 12는 본 발명의 일 실시예에 이용될 수 있는 데이터 처리 시스템의 일례를 보여주고 있다.
애드혹 파일 공유 서비스를 이용하여 파일들을 전송하고 파일 브라우징을 실행하는 기기의 방법 및 장치가 설명된다. 다음 설명에서는 본 발명의 실시예들에 대한 철저한 설명을 제공하기 위해 많은 특정 세부사항들이 설명된다. 이 기술 분야의 숙련자에게는 본 발명의 실시예들이 이들 특정 세부사항 없이도 실시될 수 있음은 자명할 것이다. 다른 예들에서, 충분히 공지되어 있는 컴포넌트, 구조 및 기술은 이 설명의 이해가 불명료해지지 않도록 하기 위해서 상세히 설명하지 않았다.
이 명세서에서 "한 실시예" 또는 "실시예"에 대한 참조는 이 실시예에 연관되어 기술된 특정한 피처, 구조 또는 특성이 적어도 본 발명의 한 실시예에 포함될 수 있음을 의미한다. 이 명세서에서 다양한 장소에 나타나는 구 "한 실시예에서"는 반드시 동일 실시예를 지칭하는 것이 아니다.
다음의 설명 및 청구항에서, 용어 "결합된" 및 "연결된"은 그들의 파생어와 함께 이용될 수 있다. 이들 용어는 서로 동의어로 의도된 것이 아님을 이해하여야 한다. "결합된"은 서로 직접 물리적 또는 전기적 접촉일 수 있거나 그렇지 않을 수 있는 둘 이상의 요소들이 서로 협동하거나 상호작용하는 것을 나타내는데 이용된다. "연결된"은 서로 결합되어 있는 둘 이상의 요소들 간의 통신의 확립을 나타내는데 이용된다.
다음의 도면들에 도시된 프로세스들은 하드웨어(예를 들어, 회로, 전용 로직, 등), 소프트웨어(예로, 범용 컴퓨터 시스템 또는 전용 머신에서 실행되는 소프트웨어) 또는 이 둘의 조합을 포함하는 처리 로직에 의해 실행된다. 프로세스들이 어떤 순차적인 동작들의 관점에서 이하 설명될지라도, 설명된 동작들 중 몇몇은 다른 순서로 실행될 수 있음을 이해하여야 한다. 더욱이, 몇몇 동작들은 순차적이 아니라 병렬로 실행될 수 있다.
용어 "서버", "클라이언트", 및 "기기"는 구체적으로 서버, 클라이언트 및/또는 기기에 대한 특정한 폼 팩터를 지칭하는 것이 아니라 일반적으로 데이터 처리 시스템을 지칭하는 것으로 의도되어 있다.
애드혹 파일 공유 서비스를 이용하여 파일들을 전송하고 파일 브라우징을 실행하는 기기의 방법 및 장치가 설명된다. 예시적인 방법에서, 기기는 하나 이상의 다른 기기들 각각에 애드혹 파일 공유 서비스의 알림을 전송한다. 전송된 알림들 각각은 제1 기기에 연관된 사용자의 사용자 ID를 포함한다. 더욱이, 애드록 파일 공유 서비스로의 액세스는 사용자별로 승인된다. 기기는 복수의 다른 기기들 각각과의 연결을 설정하고 이들 복수의 다른 기기들 각각과 파일들을 주고받는다.
도 1은 애드혹 파일 공유에 참여하는 다수의 기기들의 한 실시예의 블록도이다. 도 1에서, 기기들(102A-C)은 네트워크 연결(104A-C)을 통해서 결합한다. 한 실시예에서, 기기(102A)는 네트워크 연결(104A)을 통해서 기기(102B)에 결합하고, 기기(102B)는 네트워크 연결(104B)을 통해서 기기(102C)에 결합한다. 유사하게, 기기(102C)는 네트워크 연결(104C)을 통해서 기기(102A)에 결합한다. 한 실시예에서, 3개의 기기들이 네트워크 연결들을 통해서 함께 결합하는 것으로 도시되어 있지만, 대안 실시예들에서는 포인트-투-포인트 네트워크 연결들의 풀 메시(full mesh) 및/또는 풀 메시보다 적은 네트워크 연결들의 네트워크 토폴로지(topology)로 네트워크 연결을 통해 함께 결합하는 더 많거나 더 적은 기기들이 있을 수 있다. 예를 들어, 한 실시예에서는 링(ring) 구조의 네트워크 연결들은 4개 이상의 기기들의 그룹용으로 이용될 수 있다.
한 실시예에서, 기기는 개인용 컴퓨터, 랩톱, 노트북, 태블릿, 스마트폰, 셀룰러 전화, 게임 기기, 미디어 플레이어, 등 및/또는 네트워크 연결을 가질 수 있고 파일들을 저장 및/또는 전송할 수 있는 임의 다른 유형의 기기일 수 있다. 한 실시예에서, 네트워크 연결은 두 개의 서로 다른 기기를 연결할 수 있는 임의 유형의 네트워크 연결: 무선 연결(WiFi, 셀룰러, 블루투스, 적외선, 등), 유선 연결(이더넷 등) 및/또는 이들의 조합일 수 있다. 한 실시예에서, 각 기기(102A-C)는 애드혹 파일 공유 서비스를 이용하여 다른 기기 파일 시스템에 있는 파일을 전송 및/또는 브라우징할 수 있다. 한 실시예에서, 각 기기(102A-C)는 애드혹 파일 공유 서비스를 통해 다른 기기들(102A-C)에도 이용가능한 파일들을 특정 폴더에 저장하며, 이는 사용자가 어느 파일이 공유될 수 있는지 또는 공유될 수 없는지에 대한 승인을 수동으로 설정해야 하는 필요성 또는 특정 파일 시스템을 설치해야 하는 필요성을 경감시켜줄 수 있다. 이 경우에, 사용자는 파일(또는 이 파일의 별명 또는 단축키)을 특정 폴더에 배치할 수 있고 이 파일을 이 특정 폴더에 배치함으로써 이 파일의 파일 공유를 자동으로 허용해줄 수 있다. 특정 폴더는 여기에 설명된 애드혹 파일 공유의 실시예를 통해서 사용자가 공유하기를 원하는 파일을 수신할 수 있게 지정되거나 구성될 수 있다. 이 폴더를 선택하거나 여는 행동 또는 어떤 파일을 이 폴더에 연계하거나 배치하는 행동은 이 파일과 이 폴더에 배치되었거나 연계된 임의 다른 파일에 대한 애드혹 파일 공유가 자동으로 가능하게 해줄 수 있다. 이 파일 또는 이 파일에 대한 별명 또는 단축키는 이 파일에 대한 애드혹 파일 공유가 가능해질 수 있도록 이 폴더에 배치되거나 연계될 수 있다. 이러한 특정 폴더는 공유되는 파일들의 범위를 한정하는 데 이용될 수 있는데, 한 실시예에서는, 이러한 특정 폴더에 배치되거나 연계된 파일들만이 애드혹 파일 공유가 가능하다.
한 실시예에서, 애드혹 파일 공유 서비스는 특정한 임무, 프로젝트 및/또는 기타 필요를 위해 설정될 수 있는 포인트-투-포인트 파일 공유 서비스이다. 한 실시예에서, 애드혹 파일 공유 서비스는 알림을 이 기기의 애드혹 파일 공유 서비스에 참여할 수 있는 다른 기기들에 전송함으로써 작동한다. 이 실시예에서는, 전송된 알림은 애드혹 파일 공유 서비스가 다른 기기들 각각이 이용가능함을 다른 기기들에 알려준다. 제1 기기의 제1 사용자는, 포인트-투-포인트 서비스를 이용함으로써, 제2 기기의 제2 사용자가 파일 공유 서비스를 위한 제1 기기에 대한 계정을 갖도록 하지 않고도, 또는 제3자 서버 및/또는 제3 기기에서 호스팅되는 서비스(예를 들어, 피어-투-피어 파일 공유, 등)가 필요 없이 제2 기기의 제2 사용자에게 액세스를 허용해줄 수 있다. 더욱이, 한 실시예에서, 애드혹 파일 공유 서비스로의 액세스는 사용자별로 승인된다. 따라서, 이 실시예에서는, 애드혹 파일 공유 서비스는 계정이 없는 사용자가 다른 사용자에게는 승인되지 않을 수 있는 애드혹 파일 공유 서비스로의 특별한 액세스를 할 수 있게 허용해 준다. 이는 파일 공유 액세스를 임의 모든 원격 사용자들에게 승인해주는 게스트 계정 액세스(guest account access)를 가질 수 있는 상이한 유형의 파일 공유 서비스와는 대조적이다. 게다가, 애드혹 파일 공유 서비스로의 액세스는 원격 기기에 애드혹 파일 공유 서비스로의 액세스를 승인하는 인증 서비스를 이용하지 않고도 성취될 수 있다.
한 실시예에서, 애드혹 파일 공유 서비스는 하나의 기기가 그 기기에 파일 공유 서비스가 존재하다는 것을 알리는 알림을 기기들(104A-C) 각각이 참여하고 있는 네트워킹 연결을 통해서 다른 기기들에 전송함으로써 작동한다. 예를 들어, 한 실시예에서, 기기(102A)는 그의 네트워크 연결(104A-C)을 통해서 알림을 전송한다. 한 실시예에서, 하나 이상의 기기들(102A-C)은 그 기기가 참여하고 있는 네트워크 연결로 애드혹 파일 공유 서비스의 알림을 전송한다(예를 들어, 기업 근거리 통신망(LAN), 홈 네트워크 LAN으로 브로드캐스트한다(예로, 알림을 모든 다른 기기에 네트워크 연결(104A-C)로 브로드캐스트한다)). 다른 실시예에서, 기기(102A-C)는 그 기기에 대한 알림을 그 기기(102A-C)의 주변에 있는 다른 기기들에만 전송하기를 원한다. 이 실시예에서, 기기(102A-C)는 전송 기기 주변에 있는 다른 기기들에 알림을 전송할 것이다. 예를 들어, 한 실시예에서, 기기(102A)는 Wi-Fi, 블루투스 및/또는 셀룰러 신호 세기, 라우팅 홉, 기기(102A-C)의 물리적인 위치(GPS 위치결정, 셀룰러 전화 위치결정 등), 등 및/또는 이들의 조합을 기반으로 측정했을 때 주변에 있는 다른 기기들(102B-C)에 알림을 전송한다. 예를 들어, 한 실시예에서, 블루투스 신호의 신호 세기는 Wi-Fi가 기기들을 찾는 수를 제한하는데 이용될 수 있다.
한 실시예에서, 기기들(102A-C)의 애드혹 파일 공유 서비스들은 파일 공유 연결을 통해서 파일들을 브라우징하고 파일들을 전송한다. 한 실시예에서, 파일 공유 연결은 하나의 기기에서 실행되는 애드혹 파일 공유 서비스로의 추가 액세스를 승인하지 않고도 하나의 기기가 원격 기기의 파일들을 브라우징할 수 있고 원격 기기와 파일들을 주고받을 수 있음을 의미한다. 이 실시예에서, 이는 파일 공유 저장소에 있는 하나 이상의 파일들 및/또는 디렉터리들을 애드혹 파일 공유 서비스를 통해서 원격 기기가 볼 수 있다는 것을 의미한다. 한 실시예에서, 애드혹 파일 공유 서비스는 원격 기기가 처음에 이러한 애드혹 파일 공유 서비스를 호스팅하는 기기에 파일들을 브라우징 및/또는 전송 시도할 때 원격 기기에게 액세스를 승인한다. 액세스의 시도는 도 4a 및 5a에서 이하 더 설명된다.
한 실시예에서, 애드혹 파일서버에 의해 제어되는 기기들(102A-C)에서의 애드록 파일 공유 서비스들은 공유 서비스 모듈(106A-C)을 찾는다. 이 실시예에서, 애드혹 파일 검색 공유 서비스 모듈(106A-C)은 이러한 파일 공유 서비스의 가능화를 제어하고, 애드혹 파일 공유 서비스를 지원하기 위한 관련 네트워크 서비스 및 연결을 구축하고(예를 들어, Wi-Fi, 블루투스, 등을 구축하고), 애드혹 파일 공유 서비스가 액세스할 수 있는 파일들의 전송 및/또는 브라우징을 제어한다. 애드혹 파일 공유 서비스 모듈의 동작은 도 2에서 이하 더 설명된다.
더욱이, 각각의 기기(102A-C)는 애드혹 파일 저장소(108A-C)를 포함하고 있다. 한 실시예에서, 애드혹 파일 공유 서비스를 위한 파일 저장소(108A-C)는 디렉터리, 개별 파일 시스템, 탈착가능 저장 장치, 내부 메모리, 등 및/또는 파일을 저장하는데 이용될 수 있는 기기의 임의 컴포넌트이다. 유의할 점은 본 발명에는 애드혹 파일 공유 서비스를 지원하기 위한 개별 파일 시스템이 필요하지 않다는 것이다. 한 실시예에서, 애드혹 파일 공유 서비스는 애드혹 파일 공유 서비스를 위해 이용되는 파일들의 임시 저장소로서 미팅룸이라는 타이틀의 폴더를 지정한다.
도 2는 애드혹 파일 공유를 실행하기 위한 프로세스의 한 실시예의 흐름도이다. 도 2에서, 프로세스(200)는 블록 202에서 애드혹 파일 공유 서비스를 가능하게 하고 이 서비스의 존재를 알려주는 것으로 시작된다. 한 실시예에서, 프로세스(200)는 애드혹 파일 공유 서비스를 제어하는 프로세스를 구축함으로써 애드혹 파일 공유 서비스를 가능하게 한다. 이 실시예에서, 애드혹 파일 공유 서비스를 가능하게 함으로써. 예를 들어 한 실시예에서, 기기의 사용자는 애드혹 파일 공유 서비스를 턴온하고 이 서비스를 이용하여 다른 기기와 파일들을 주고받을 수 있으며 또한 원격 기기들을 브라우징하고 원격 기기가 해당 기기를 브라우징하게 할 수 있다. 이 예에서, 기기의 사용자는 필요에 따라서 애드혹 파일 공유 서비스를 턴온 및 턴오프할 수 있다. 예를 들어, 한 실시예에서, 미팅 중에 있는 한 사용자가 이 미팅에 참석한 다른 사람들과 파일을 공유하기를 원하면 애드혹 파일 공유 서비스를 턴온할 수 있다. 미팅이 끝나면 사용자는 애드혹 파일 공유 서비스를 턴오프하여 애드혹 파일 공유 서비스를 이용한 파일 공유를 불허할 수 있다. 다른 실시예에서, 프로세스(200)는 일정 기간 동안(예를 들어, 1시간 이하 또는 어떤 다른 기간 동안) 애드혹 파일 공유 서비스를 가능하게 할 수 있다. 이 실시예에서, 프로세스(200)는 이러한 일정 기간의 만료시 애드혹 파일 공유 서비스를 턴오프할 수 있다. 다른 실시예에서, 프로세스(200)는 애드혹 파일 공유 서비스를 가능하게 한다. 한 실시예에서, 프로세스(200)는 사용자가 UI에 있는 애드혹 파일 공유 서비스를 나타내는 아이콘을 클릭할 때 이 서비스를 가능하게 한다. 예를 들어, 한 실시예에서, 이하, 도 6에서 설명된 바와 같이 파일 브라우징 사용자 인터페이스에 있는 미팅룸 아이콘을 클릭함으로써 애드혹 파일 공유 서비스를 가능하게 할 수 있다. 더욱이, 프로세스(200)는 애드혹 파일 공유 서비스의 존재를 다른 기기들에 알려준다. 애드혹 파일 공유 서비스의 알림을 가능하게 하는 것은 도 3을 참조하여 이하 더 설명된다.
블록(204)에서, 프로세스(200)는 프로세스(200)를 실행하는 기기와 다른 기기들 간에 파일들을 전송한다. 예를 들어, 한 실시예에서, 프로세스(200)는 보안 하이퍼텍스트 전송 프로토콜(HTTPS)과 같은 프로토콜을 이용하여 파일을 주고받을 수 있다. 대안 실시예에서, 프로세스(200)는 파일을 전송하기 위해 이 기술 분야에 공지되어 있는 다른 파일 전송 프로토콜(예를 들어, 파일 전송 프로토콜(FTP), 하이퍼텍스트 전송 프로토콜(HTTP), 서버 메시지 블록(SMB), 애플 파일링 프로토콜(AFP), 등)을 이용할 수 있다. 파일의 전송은 도 4a-b를 참조하여 이하 더 설명된다.
블록(206)에서, 프로세스(200)는 프로세스(200)를 실행하는 기기와 다른 원격 기기들 간에 브라우징 가능한 파일들을 브라우징한다. 예를 들어, 한 실시예에서, 프로세스(200)는 HTTPS 프로토콜을 이용함으로써 파일들 및/또는 디렉터리들의 리스팅을 요청할 수 있고 그러한 유사한 요청을 수신할 수 있다. 대안 실시예에서, 프로세스(200)는 파일 브라우징 요청을 주고받기 위하여 이 기술 분야에 공지되어 있는 다른 프로토콜(예를 들어, FTP, HTTP, SMB, AFP, 등)을 이용할 수 있다. 파일 브라우징은 도 5a-b를 참조하여 이하 더 설명된다.
도 3은 애드혹 파일 공유 서비스를 가능하게 하고 이를 알려주기 위한 프로세스(300)의 한 실시예의 흐름도이다. 도 3에서, 프로세스(300)는 블록(302)에서 애드혹 파일 공유 서비스를 가능하게 하는 것으로 시작된다. 한 실시예에서, 프로세스(300)는 애드혹 파일 공유 서비스를 제어하는 프로세스를 개시한다. 일단 개시되면, 프로세스(300)를 실행하는 기기는 파일 전송과 파일 브라우징 요청을 송수신하고 수행할 수 있을 것이다. 한 실시예에서, 프로세스(300)는 애드혹 파일 공유 서비스를 가능하게 한다. 한 실시예에서, 프로세스(300)는 이하 도 6을 참조로 더 설명되는 바와 같이 사용자 인터페이스에서 이 서비스를 나타내는 아이콘, 예로, 미팅룸 아이콘을 클릭함으로써 이 서비스를 가능하게 한다.
프로세스(300)는 필요하다면, 블록(304)에서 관련 네트워킹 서비스를 구축한다. 한 실시예에서, 프로세스(300)는 Wi-Fi, 블루투스, 셀룰러 데이터, 적외선, 유선 네트워킹(이더넷, 등), 및/또는 이들의 조합을 구축할 수 있다. 한 실시예에서, 프로세스(300)는 블록(304)에서 가능한 네트워킹 서비스들 모두를 구축할 수 있고, 대안 실시예에서, 프로세스(300)는 네트워크 서비스들 중 하나 또는 일부를 구축한다(예로, 프로세스(300)는 Wi-Fi, 또는 WiFi 및 블루투스를 구축한다). 이러한 대안 실시예에서, 프로세스(300)가 구축하는 네트워킹 서비스들은 구성 파일 및/또는 파라미터(들)에 의해 제어된다. 다른 실시예에서, 프로세스(300)는 프로세스(300)가 검출한 주변에 있는 네트워킹 서비스들을 구축한다. 예를 들어, 한 실시예에서, 프로세스(300)는 LAN으로부터 Wi-Fi 네트워크(예를 들어, LAN이 이용가능함을 알려주는 Wi-Fi 액세스 포인트)를 검출하여, 기기에서 이 Wi-Fi 네트워크를 구축하고, 그럼으로써, 이 기기는 해당 LAN과 자동으로 연결될 수 있다. 대안으로, 프로세스(300)는 가능한 포인트-투-포인트 네트워킹 서비스(Wi-Fi 포인트-투-포인트 또는 애드혹 Wi-Fi, 블루투스, 적외선, 등)를 가지고 있음을 알려주는 다른 기기를 검출하여, 관련 네트워킹 서비스를 구축할 수 있고, 그럼으로써, 이 기기는 자동으로 다른 기기와 연결되어 포인트-투-포인트 네트워킹 연결을 만들어낼 수 있다. 예를 들어, 한 실시예에서, 프로세스(300)는 Wi-Fi 서비스를 알려주는 다른 기기를 검출하여, 프로세스(300)를 실행하는 기기에서 Wi-Fi 서비스를 구축할 수 있다.
블록(304)에서, 프로세스(300)는 애드혹 파일 공유 서비스의 존재를 알려준다. 한 실시예에서, 프로세스(300)는 기기가 구성한 네트워크 연결들로 알림 패킷을 전송한다. 한 실시예에서, 애드혹 파일 공유 서비스는 이용가능한 네트워크 연결들을 통해서 애드혹 파일 공유 서비스를 다른 기기들에 알려주기 위하여 Bonjour 서비스 디스커버리 프로토콜을 이용한다. 예를 들어, 이 실시예에서, 기기(102A)는 네트워크 연결들(104A 및 104C)을 각각 이용하여 기기들(102B-C)에 애드혹 파일 공유 서비스를 각 알려주기 위하여 Bonjour 서비스 디스커버리 프로토콜을 이용한다. 애드혹 파일 공유 서비스의 존재를 알려주기 위하여 이 기술 분야에 공지된 다른 유형의 알림(유니캐스트, 브로드캐스트, 멀티캐스트 알림, 등)을 이용할 수 있다.
한 실시예에서, 알림 패킷은 알려지는 애드혹 파일 공유 서비스에 연관된 사용자의 ID(identification)를 포함한다. 예를 들어, 한 실시예에서, 프로세스(300)는 이메일 주소, Apple ID, MobileMe ID, 소셜 네트워크 ID, 그러한 식별자의 해시(예를 들어, 보안 해시 알고리즘(SHA)-1 또는 이 기술에 공지된 다른 해시 알고리즘, 등), 키로서 이용된 번호, 판독가능 이름(예를 들어, 퍼스트 네임, 라스트 네임 및/또는 이들의 결합, 등), 범용 고유 식별자(UUID)(예를 들어, 세계적으로 고유한 키로서 이용되는 번호), 증명 "지문"(예를 들어, X509 증명에 관련된 번호 해시), 전화번호, 등과 같은 사용자의 ID를 포함한다. 더욱이, 사용자 ID는 이 사용자에 대해 알려진 식별자들의 리스트(예를 들어, 동일 및/또는 다른 유형의 다수의 식별자 등)일 수 있다. 한 실시예에서, ID의 해시가 이용되면, 알림을 수신하는 기기는 알림에 저장되어 있는 ID 데이터에 매칭하기 위하여 알려진 ID들(예를 들어, 알려진 이메일 주소, 소셜 네트워킹 ID들, 등)의 집합에 유사한 해시를 이용할 수 있다. 이 실시예는 이메일 어드레스나 다른 ID가 보통문으로 전송되는 일 없이 알림이 전송될 수 있게 해준다. 다른 실시예에서, 증명 "지문"은 키로서 이용되는 번호에 대한 변형으로, 부가의 시맨틱(semantic)이 사용자의 증명에 고유하게 연관되며, 이는 보안 파일 전송을 암호화하는데 추가로 이용될 수 있다.
도 3b는 애드혹 파일 공유 서비스 알림을 수신하는 프로세스(350)의 실시예의 흐름도이다. 도 3b에서, 프로세스(350)는 블록(352)에서 애드혹 파일 공유 서비스 알림을 수신하는 것으로 시작된다. 한 실시예에서, 애드혹 파일 공유 서비스 알림은 그 알림을 보낸 기기로부터의 애드혹 파일 공유 서비스를 이용할 수 있다는 표시이다. 더욱이, 한 실시예에서, 알림 패킷은 위에 설명한 바와 같이 알려지는 애드혹 파일 공유 서비스에 관련된 사용자의 ID를 포함한다.
블록(354)에서, 프로세스(350)는 알림을 전송하는 기기가 프로세스(350)를 실행하는 기기에 알려져 있는지 여부를 판정한다. 한 실시예에서, 프로세스(350)는 이용가능한 애드혹 파일 공유 서비스를 갖춘 것으로 알려져 있는 기기들의 리스트를 보유하고 있다. 애드혹 파일 공유 서비스가 알려져 있지 않으면, 프로세스(350)는 블록(356)에서 이용가능한 애드혹 파일 공유 서비스를 갖춘 알려진 기기들의 리스트에 이 기기를 추가한다. 한 실시예에서, 이용가능한 애드혹 파일 공유 서비스를 갖춘 원격 기기의 존재는 파일 공유 연결이 설정되었다는 것을 반드시 의미하지는 않는다. 이 실시예에서, 원격 기기의 애드혹 파일 공유 서비스를 이용하여 파일을 전송 및/또는 브라우징하는 시도에 의해서 파일 공유 연결이 설정될 수 있다. 파일 공유 연결의 설정은 도 4a 및 도 5a를 참조하여 이하 더 설명된다. 프로세스(350)의 실행은 블록(358)으로 진행한다.
알림을 전송하는 기기가 프로세스(350)를 실행하는 기기에 알려져 있으면, 프로세스(350)는 블록(358)에서 애드혹 파일 공유 서비스의 이용가능성 표시를 갱신한다. 한 실시예에서, 프로세스(350)는 도 6에 설명되어 있는 바와 같이 UI에 원격 애드혹 파일 공유 서비스의 이용가능성을 표시한다.
앞서 설명한 바와 같이, 애드혹 파일 공유 서비스는 다양한 기기들 간에 파일을 전송하는데 이용된다. 도 4a 및 도 4b는 애드혹 파일 공유 서비스를 이용하여 파일을 전송하기 위한 프로세스의 실시예들이 흐름도이다. 특히, 도 4a는 애드혹 파일 공유 서비스를 이용하여 파일을 수신하기 위한 프로세스(400)의 한 실시예의 흐름도이다. 도 4a는 프로세스(400)가 블록(402)에서 애드혹 파일 시스템으로부터 파일을 수신하라는 요청을 수신하는 것으로 시작된다. 한 실시예에서, 프로세스(400)는 프로세스(400)를 실행하는 기기에 파일을 전송하라는 HTTPS 요청을 수신한다. 대안으로, 프로세스(400)는 이 기술에 공지된 다른 유형(FTP, HTTP, 등)의 파일 전송 요청을 수신할 수 있다. 예를 들어, 한 실시예에서, 프로세스(400)는 파일과 이 파일을 전송하기를 원하는 전송 기기의 ID를 식별하는 HTTPS 요청을 수신한다. 위에 설명한 바와 같이, ID는 이메일 주소, 소셜 네트워크 ID, 외부 서비스 ID(예를 들어, 트위터 ID, 애플 ID, MobileMe ID, 또는 몇몇 다른 알려진 서비스 ID, 등) 및/또는 그러한 ID의 해시, 등일 수 있다.
블록(404)에서, 프로세스(400)는 파일 전송을 요청하는 기기와의 파일 공유 연결이 설정되어 있는지 여부를 판정한다. 한 실시예에서, 제1 기기의 사용자가 다른 사용자에게 애드혹 파일 공유 서비스로의 액세스를 허용했다면 파일 공유 연결이 설정된 것이다. 이와 같이 두 기기 간에 파일 공유 연결을 설정함으로써, 파일 공유의 포인트-투-포인트 속성이 확립된다. 이 실시예에서, 최초 사용자가 다른 사용자에게 제1 기기의 애드혹 파일 공유 서비스로의 액세스를 승인하면, 다른 사용자는 파일을 보고, 검색하고, 및/또는 제1 기기에 전송할 수 있다. 한 실시예에서는, 애드혹 파일 공유 서비스로의 액세스가 일방으로 승인되지만, 대안 실시예에서는, 일방의 액세스가 있으면 자동으로 역방향으로의 액세스가 승인될 수 있다(예를 들어, 사용자 A가 사용자 B가 파일을 검색하고 및/또는 사용자 A의 기기로 전송할 수 있게 승인하면, 사용자 A가 파일을 검색하고 및/또는 사용자 B의 기기에 전송할 수 있게 액세스가 승인된다). 한 실시예에서, 프로세스(400)는 애드혹 파일 공유 서비스에 관련된 ID를 찾아서 이 ID에 관련된 기기가 파일 공유 연결을 설정하였는지 여부를 판정한다. 이 ID는 이메일 주소, 소셜 네트워크 ID, 외부 서비스 ID(예를 들어, 트위터 ID, 애플 ID, MobileMe ID 또는 몇몇 다른 알려진 서비스 ID, 등), 등일 수 있다. 더욱이, 한 실시예에서, 이 ID는 위에 열거한 ID의 해시(예를 들어, 보안 해시 알고리즘(SHA)-1, 등)일 수 있다.
파일 전송을 요청하는 기기와의 파일 공유 연결이 설정되지 않았다고 프로세스(400)가 판정하면, 블록(410)에서, 프로세스(400)는 프로세스(400)를 실행하는 기기의 사용자에게 파일을 수신하라는 요청을 제공하다. 한 실시예에서, 프로세스(400)는 다른 기기가 애드혹 파일 공유 서비스를 통해서 파일을 프로세스(400)를 실행하는 기기의 사용자에게 전송하기를 원함을 나타내는 사용자 인터페이스(UI) 다이얼로그를 제공한다. 게다가, 이 실시예에서, 파일 전송 요청을 받아들임으로써, 두 기기 간의 파일 공유 연결이 설정된다. 한 실시예에서는, 예를 들어, 프로세스(400)는 파일을 수신 기기에 전송하기를 원하는 기기에 관련된 사용자 및 파일의 이름을 나타내는 사용자 인터페이스(UI) 다이얼로그를 제공한다.
블록(412)에서, 프로세스(400)는 이 요청이 받아들여졌는지 그렇지 않은지 여부를 판정한다. 이 요청이 받아들여지지 않았다면, 블록(414)에서, 프로세스(400)는 요청을 거부한다. 한 실시예에서 프로세스(400)는 파일 전송 요청이 거부되었다는 메시지, 리턴 코드, 또는 다른 유형의 인디케이터를 파일을 전송하기를 원하는 기기에게 전송한다. 이 요청이 블록(412)에서 받아들여지면, 프로세스(400)는 블록(406)에서 이 파일을 수신한다. 프로세스(400)의 실행은 블록(408)으로 진행하고, 이는 이하 설명된다.
블록(404)에서, 파일 전송을 요청하는 기기와의 파일 공유 연결이 설정되었다고 프로세스(400)가 판정하면, 블록(406)에서 프로세스(400)는 파일을 수신한다. 블록(408)에서, 프로세스(400)는 애드혹 파일 공유 서비스를 위해 이용되는 파일 저장소에 이 파일을 저장한다. 예를 들어, 한 실시예에서, 프로세스(400)는 도 1을 참조하여 위에서 설명한 바와 같이 수신된 파일을 애드혹 파일 저장소(108A-C)에 저장한다.
도 4b는 애드혹 파일 공유 서비스를 이용하여 파일을 전송하기 위한 프로세스(450)의 한 실시예의 흐름도이다. 도 4b에서, 프로세스(450)는 블록(452)에서 애드혹 파일 공유 서비스를 통해서 다른 기기에 파일 전송 요청을 전송하는 것으로 시작된다. 한 실시예에서, 프로세스(450)는 이 요청을 파일의 이름과 이 파일을 전송하기 원하는 사용자의 ID를 포함하는 HTTPS 요청을 이용하여 전송한다. 한 실시예에서, 이 ID는 이메일 주소, 소셜 네트워크 ID, 외부 서비스 ID(예를 들어, 트위터 ID, 애플 ID, MobileMe ID 또는 몇몇 다른 알려진 서비스 ID, 등), 등일 수 있다. 더욱이, 한 실시예에서, 이 ID는 위에 열거한 ID의 해시(예를 들어, 보안 해시 알고리즘(SHA)-1, 등)일 수 있다.
블록(454)에서, 프로세스(450)는 전송이 수락되었는지 여부를 판정한다. 예를 들어, 한 실시예에서, 프로세스(450)가 다른 기기로부터의 응답(예를 들어, 리턴 코드, 응답 메시지, 등)을 준거로 전송 요청이 수락되었는지 여부를 판정한다. 이 요청이 수락되지 않았다면, 블록(458)에서 프로세스(450)는 파일을 전송하지 않는다. 블록(454)에서 이 요청이 수락되었다면, 블록(456)에서 프로세스(450)는 파일을 전송한다.
위에 설명한 바와 같이, 애드혹 파일 공유 서비스는 사용자가 애드혹 파일 공유 서비스를 통해서 볼 수 있는 원격 기기의 파일을 브라우징함은 물론이고 파일을 전송할 수 있게 해준다. 도 5a 및 도 5b는 애드혹 파일 공유 서비스를 이용하여 파일을 브라우징하기 위한 프로세스(500)의 한 실시예의 흐름도이다. 도 5a는 애드혹 파일 공유 서비스를 이용하여 파일 브라우징을 허용해주기 위한 프로세스(500)의 한 실시예의 흐름도이다. 도 5a는 블록(502)에서 프로세스(500)가 애드혹 파일 공유 서비스로부터의 파일 브라우징 요청을 수신하는 것으로 시작된다. 한 실시예에서, 프로세스(500)는 프로세스(500)를 실행하고 있는 기기에 대한 파일 브라우징을 위한 HTTPS 요청을 수신한다. 대안으로, 프로세스(500)는 다른 유형의 요청(FTP, HTTP, 등)을 수신할 수 있다. 예를 들어, 한 실시예에서, 프로세스(500)는 브라우징될 파일 디렉터리의 ID, 파일 리스트에 적용되어야만 하는 임의 필터들(선택적), 및/또는 파일(들)을 브라우징하기를 원하는 전송 기기의 ID를 포함하는 HTTPS 요청을 수신한다. 위에 설명한 바와 같이, 이 ID는 이메일 주소, 소셜 네트워크 ID, 외부 서비스 ID(예를 들어, 트위터 ID, 애플 ID, MobileMe ID 또는 몇몇 다른 알려진 서비스 ID, 등), 및/또는 그러한 ID의 해시, 등일 수 있다. 한 실시예에서, 파일 브라우징 요청에 포함되어 있는 파일 필터는 이 필터에 매칭하는 파일들 및/또는 디렉터리들의 리스트로 리턴된 파일들 및/또는 디렉터리들의 결과를 한정하는 필터이다. 예를 들어, 한 실시예에서, 필터는 파일들 및/또는 디렉터리들의 리스트를 필터 "*.exe"에 매칭하는 파일들 및/또는 디렉터리들의 리스트에 한정하는 것일 수 있다. 대안으로, 파일 브라우징 요청에는 파일 필터가 없을 수 있다.
블록(504)에서, 프로세스(500)는 파일 브라우징을 요청하는 기기와의 파일 공유 연결이 설정되어 있는지 여부를 판정한다. 위에 설명한 바와 같이, 제1 기기에 대한 파일 공유 연결은, 제1 기기의 사용자가 다른 기기의 사용자에게 파일을 전송하거나 브라우징할 수 있게 허용했을 때, 설정된다. 두 기기 간의 파일 공유 연결을 설정함으로써, 파일 공유의 포인트-투-포인트 속성이 확립된다. 이 실시예에서, 최초 사용자가 다른 사용자에게 제1 기기의 애드혹 파일 공유 서비스로의 액세스를 승인해주면, 다른 사용자는 파일을 보고, 검색하고, 및/또는 제1 기기에 전송할 수 있다. 한 실시예에서, 프로세스(500)는 도 4의 블록(404)에서 설명한 바와 같이 애드혹 파일 공유 서비스에 연관된 ID를 찾는다.
블록(510)에서 파일 전송을 요청하는 기기와의 파일 공유 연결이 설정되지 않았다고 프로세스(500)가 판정하면, 프로세스(500)는 파일 브라우징 요청을 수신하고자 하는 요청을 프로세스(500)를 실행하는 기기의 사용자에게 제공한다. 한 실시예에서, 프로세스(500)는 다른 기기가 애드혹 파일 공유 서비스를 통해 사용자의 애드혹 파일 공유 저장소를 브라우징하기를 원한다는 것을 나타내는 사용자 인터페이스(UI) 다이얼로그를 프로세스(500)를 실행하는 기기의 사용자에게 제공한다. 또한, 이 실시예에서는, 파일 공유 요청을 수락함으로써, 두 기기 간에 파일 공유 연결이 설정된다. 예를 들어, 한 실시예에서, 프로세스(500)는 수신 기기의 파일 공유 저장소를 브라우징하기 원하는 기기에 연관된 사용자를 나타내는 사용자 인터페이스(UI) 다이얼로그를 제공한다.
블록(512)에서, 프로세스(500)는 요청이 수락되었는지 여부를 판정한다. 요청이 수락되지 않으면, 블록(514)에서, 프로세스(500)는 요청을 거부한다. 한 실시예에서, 프로세스(500)는 파일 공유 저장소를 브라우징하기 원하는 기기에게 파일 브라우징 요청이 거부되었다는 메시지, 리턴 코드 또는 다른 유형의 인디케이터를 전송한다. 블록(512)에서, 이 요청이 수락되면, 프로세스(500)는 블록(506)에서 파일 브라우징 요청을 이행한다. 한 실시예에서, 프로세스(500)는 파일 브라우징 요청에 존재하는 파일 필터(있다면)의 기준에 부합하는 파일들 및/또는 디렉터리들의 리스트를 어셈블함으로써 파일 브라우징 요청을 이행하고, 이 리스트를 최초로 파일 브라우징 요청을 한 기기에게 전송한다.
블록(504)에서, 프로세스(500)가 파일 전송을 요청하는 기기와의 파일 공유 연결이 설정되었다고 판정하면, 블록(506)에서, 프로세스(500)는 위에 설명된 바와 같이 파일 브라우징 요청을 이행한다.
도 5b는 애드혹 파일 공유 서비스를 이용하여 파일 브라우징 요청을 전송하기 위한 프로세스(550)의 한 실시예의 흐름도이다. 도 5b에서, 프로세스(550)는 블록(552)에서 애드혹 파일 공유 서비스를 통해 파일 브라우징 요청을 다른 기기에 전송하는 것으로 시작된다. 한 실시예에서, 프로세스는 이 요청을 파일의 이름, 파일을 전송하기를 원하는 사용자의 ID, 및 선택적으로 파일 필터를 포함하는 HTTPS 요청을 이용하여 전송한다. 한 실시예에서, 이 ID는 이메일 주소, 소셜 네트워크 ID, 외부 서비스 ID(예를 들어, 트위터 ID, 애플 ID, MobileMe ID 또는 어떤 다른 알려진 서비스 ID, 등), 등일 수 있다. 더욱이, 한 실시예에서, 이 ID는 위에 열거한 ID의 해시(예를 들어, 보안 해시 알고리즘(SHA)-1, 등)일 수 있다.
블록(554)에서, 프로세스(550)는 파일 브라우징이 수락되었는지 여부를 판정한다. 예를 들어, 한 실시예에서, 프로세스(550)는 다른 기기로부터의 응답(예를 들어, 리턴 코드, 응답 메시지, 등)을 기반으로 파일 브라우징 요청이 수락되었는지 여부를 판정한다. 이 요청이 수락되지 않았으면, 블록(560)에서, 프로세스(550)는 실패를 신호로 알려준다(예를 들어, 사용자 인터페이스 다이얼로그, 등을 제공한다). 블록(554)에서 이 요청이 수락되었으면, 프로세스(550)는 도 5b의 블록(556)에서 설명하고 있듯이 파일 브라우징 요청의 결과를 수신한다.
블록(558)에서, 프로세스(550)는 파일 시스템 브라우징의 결과를 제공한다. 한 실시예에서, 프로세스(550)는 다른 기기의 애드혹 파일 공유 저장소의 콘텐츠를 보여주는 UI를 갱신한다. 예를 들어, 한 실시예에서, 프로세스(550)는 도 6을 참조하여 이하 설명되는 바와 같이 UI의 파일 표시 부분을 갱신한다.
도 6은 애드혹 파일 공유 서비스를 이용한 파일 공유 및 브라우징을 보여주는 파일 공유 UI(600)의 블록도이다. 도 6에서, 파일 공유 UI(600)는 다양한 엔티티, 사용자 구성가능 표시(602), 파일 표시(604) 및 미팅룸 표시(606)를 표시하기 위한 UI의 3개의 개별 부분들을 포함하고 있다. 사용자 구성가능 표시(602)는 기기들(608A), 공유(608B), 장소(608C) 및 미팅룸(608D)을 나타내는 하나 이상의 UI 아이콘을 포함하고 있다.
한 실시예에서, 기기들(608A)에 대한 하나 이상의 아이콘은 UI를 표시하고 있는 기기에 부착된 하나 이상의 기기(예를 들어, 하드 디스크, 탈착가능 저장 장치, 프린터 등 및/또는 종래 기술에 공지된 다른 부착가능 기기)의 리스트에 대한 UI 아이콘들을 포함할 수 있다. 더욱이, 한 실시예에서, 공유 표시(608B)는 UI를 표시하는 기기에 대한 다양한 공유 기기들(예를 들어, 다른 컴퓨터들, 네트워크 부착 주변기기 등 및/또는 이 기술에 공지된 다른 네트워크 액세스 가능 기기)을 나타내는 하나 이상의 아이콘을 포함할 수 있다. 한 실시예에서, 장소 표시(608C)는 UI를 표시하는 기기의 사용자에 의해 일반적으로 이용되는 디렉터리(예를 들어, 데스크톱, 애플리케이션, 문서, 영화, 사진, 음악, 그림, 등 및/또는 사용자-구성가능 디렉터리)를 나타낸다.
한 실시예에서, 미팅룸(608D)은 UI(600)를 제공하는 기기의 애드혹 파일 공유 서비스를 나타내는 하나 이상의 아이콘의 집합이다. 한 실시예에서, 미팅룸(608D)에 있는 아이콘들 중 한 아이콘이 클릭되면, 애드혹 파일 공유 저장소 내의 파일들 및/또는 디렉터리들은 파일 표시(604)에 열거된다. 파일들 및/또는 디렉터리들은 이 기술 분야에 공지되어 있는 임의 방식으로, 예를 들어, 알파벳 순으로, 날짜로 분류되거나, 크기로 분류되거나, 다양한 아이콘으로 표현되거나, 파일들 및/또는 디렉터리들 중 몇몇을 보여주기 위해 필터링되거나, 등등 및/또는 이들의 조합으로 열거될 수 있다.
더욱이, 도 6에서, 미팅룸 표시(606)는 UI 표시(600)를 제공하는 기기를 위해 이용가능한 다양한 미팅룸들(612A-C)을 포함하고 있다. 한 실시예에서, 각각의 미팅룸(612A-C)은 하나 이상의 기기들에서의 애드혹 파일 공유 서비스를 나타낸다. 한 실시예에서, 하나의 기기에 다수의 동시 애드혹 파일 공유 서비스들이 있을 수 있다. 예를 들어, 한 실시예에서, 예를 들어, 2개의 그래픽 사용자 세션들(예를 들어, 이 기기에 이용가능한 패스트 사용자 스위칭을 이용함으로써)이 있을 수 있고, 각 사용자는 각 세션의 미팅룸에 있을 수 있다. 이 경우에, 한 명씩 사용자가 따콘솔을 이용할 수 있어, 단지 한 사용자만이 다른 사용자와 상호 작용할 수 있고 파일을 수락/거절/전송할 수 있다. 다수의 사용자가 있는 다른 실시예는 가상 스크린으로 스크린 공유를 이용하는 것일 수 있다. 이 실시예에서는, 이 기기에 미팅룸이 동시에 2개가 있는 경우가 있을 것이다.
예를 들어, 한 실시예에서, 로컬 미팅룸(612A)은 UI(600)을 제공하고 있는 기기에서의 애드혹 파일 공유 서비스를 나타내는 아이콘이다. 또한, 이 실시예에서, 원격 미팅룸들(612B-C)은 UI(600)를 제공하는 기기에 결합되어 있는 원격 기기(들)에서의 애드혹 파일 공유 서비스를 나타내는 아이콘이다. 예를 들어, 한 실시예에서, 기기(102A)가 UI(600)를 제공하고 있다면, 로컬 미팅룸(612A)은 기기(102A)에서의 애드혹 파일 공유 서비스를 나타내며, 원격 미팅룸들(612B-C)은 기기들(612B-C) 각각에서의 애드혹 파일 공유 서비스를 나타낸다.
한 실시예에서, 사용자는 파일들을 파일 표시(604) 및/또는 로컬 미팅룸(612A)에 대한 아이콘에 드래그 및 드롭하여 파일들 및/또는 디렉터리들을 애드혹 파일 공유 서비스에 추가할 수 있다. 더욱이, 한 실시예에서, 하나 이상의 파일들 및/또는 디렉터리들을 원하는 원격 미팅룸 아이콘(예를 들어, 미팅룸(612B-612C))에 드롭함으로써 하나 이상의 파일들 및/또는 디렉터리들이 원격 애드혹 파일 공유 시스템들에 전송될 수 있다. 한 실시예에서, 사용자는 원격 애드혹 파일 공유 저장소에 있는 파일들을 브라우징하기 위해, 관심 대상인 원격 애드혹 파일 공유 서비스를 나타내는 아이콘, 예를 들어, 미팅룸(612B 또는 612C)을 클릭할 수 있다. 이 실시예에서, 미팅룸(612B 또는 612C)을 클릭하면, 해당 애드혹 파일 저장소(108b 또는 108C)에 있는 파일들 및/또는 디렉터리들의 리스트가 파일 표시(604)에 표시된다. 예를 들어, 한 실시예에서, 기기(102B)에 대응하는 미팅룸(612B)을 클릭함으로써, 이 애드혹 파일 저장소에 있는 파일들 및/또는 디렉터리들의 리스트가 표시된다. 한 실시예에서는, 애드혹 파일 공유 저장소에 있는 파일들 및/또는 디렉터리들 모두가 열거되는만, 다른 실시예에서는, 애드혹 파일 공유 저장소에 있는 파일들 및/또는 디렉터리들 중 일부가 열거된다(예를 들어, 이 기술에 공지된 바와 같이 파일 필터를 이용하여 필터링되고, 디렉터리에 의해 구성된 바와 같이 표시되고, 이 기술에 공지된 다양한 방식으로 저장되는, 등등).
한 실시예에서, 한 기기의 사용자는 원하는 파일들을 원격 애드혹 파일 공유 서비스로부터 로컬 기기에 드래그 및 드롭하여 하나 이상의 파일들 및/또는 디렉터리들을 원격 기기로부터 로컬 기기로 가져올 수 있다. 예를 들어, 한 실시예에서, 사용자는 원격 기기의 애드혹 파일 공유 서비스에서 원격으로 이용가능한 파일들을 표시하고 있는 파일 표시(604)로부터 하나 이상의 파일들을 드래그 및 드롭하여, 이들 선택된 파일들을 사용자의 로컬 기기의 데스크톱에 드롭할 수 있다. 이는 이들 선택된 파일들을 원격 기기의 애드혹 파일 공유 저장소로부터 사용자 기기의 데스크톱에 전송하는 효과를 갖는다.
도 7은 애드혹 파일 공유를 실행하는 애드혹 파일 공유 모듈(106)의 블록 도이다. 한 실시예에서, 애드혹 파일 공유 모듈(106A-C)은 애드혹 파일 공유 모듈(106)을 이용한다. 도 7에서, 애드혹 파일 공유 모듈(106)은 애드혹 파일 공유 서비스 이네이블 모듈(702), 파일 공유 모듈(704) 및 파일 브라우징 모듈(706)을 포함한다. 한 실시예에서, 애드혹 파일 공유 서비스 이네이블 모듈(702)은 도 2의 블록(202)에서 설명한 바와 같이 애드혹 파일 공유 서비스를 가능하게 한다. 파일 공유 모듈(704)은 도 2의 블록(204)에서 설명한 바와 같이 애드혹 파일 공유 서비스를 이용하여 파일을 전송한다. 파일 브라우징 모듈(706)은 도 2의 블록(202)에서 설명한 바와 같이 애드혹 파일 공유 서비스를 이용하여 파일들 및/또는 디렉터리들을 브라우징한다.
도 8a는 애드혹 파일 공유 서비스를 가능하게 하고 이를 알려주는 애드혹 파일 공유 이네이블 모듈(702)의 블록 도이다. 도 8a에서, 애드혹 파일 공유 서비스 이네이블 모듈(702)은 애드혹 파일 공유 서비스 이네이블 모듈(802), 네트워킹 채널 모듈(804), 알림 모듈(806) 및 파일 저장소 이네이블 모듈(808)을 포함하고 있다. 애드혹 파일 공유 서비스 이네이블 모듈(802)은 도 3a의 블록(302)에서 설명한 바와 같이, 애드혹 파일 공유 서비스를 가능하게 한다. 네트워킹 채널 모듈(804)은 도 3a의 블록(304)에서 설명한 바와 같이 필요에 따라 네트워킹 채널들을 구축한다. 알림 모듈(806)은 도 3a의 블록(306)에서 설명한 바와 같이 애드혹 파일 공유 서비스의 이용가능성을 알려준다. 파일 저장소 이네이블 모듈(808)은 도 3a의 블록(302)에서 설명한 바와 같이 애드혹 파일 공유 저장소를 가능하게 한다.
도 8b는 애드혹 파일 공유 서비스를 대한 알림을 수신하는 알림 수신 모듈(850)의 블록 도이다. 도 8b에서, 알림 수신 모듈(850)은 알림 수신 모듈(852), 기기 추가 모듈(854) 및 갱신 표시(856)를 포함하고 있다. 알림 수신 모듈(852)은 도 3b의 블록(352)에서 설명한 바와 같이 애드혹 파일 공유 알림을 수신한다. 기기 추가 모듈(854)은 도 3b의 블록(354)에서 설명한 바와 같이 이용가능한 공지된 애드혹 파일 공유 서비스(들)의 리스트에 한 기기를 추가한다. 갱신 표시(856)는 도 3b의 블록(358)에서 설명한 바와 같이 애드혹 파일 공유 서비스의 이용가능성의 표시를 갱신한다.
도 9a, 9b 및 9c는 애드혹 파일 공유 서비스를 이용하여 파일을 전송하는 파일 전송 모듈의 블록 도이다. 도 9a는 파일을 전송하는 제1 전송 모듈(704)의 블록 도이다. 도 9a에서, 파일 전송 모듈(704)은 파일 수신 모듈(902) 및 파일 전송 모듈(904)을 포함하고 있다. 파일 수신 모듈(902)은 도 5a에서 설명된 바와 같이 파일들을 수신한다. 파일 전송 모듈(904)은 도 5b에서 설명한 바와 같이 파일들을 전송한다.
도 9b는 파일들을 수신하는 파일 수신 모듈(902)의 블록 도이다. 도 9b에서, 파일 수신 모듈(902)은 파일 요청 수신 모듈(910), 파일 공유 연결 설정 모듈(912), 파일 수신 모듈(914), 파일 저장 모듈(916), 요청 제공 모듈(918) 및 에러 모듈(920)을 포함하고 있다. 파일 요청 수신 모듈(910)은 도 4a의 블록(402)에서 설명한 바와 같이 파일 전송 요청을 수신한다. 파일 공유 연결 설정 모듈(912)은 도 4a의 블록(416)에서 설명한 바와 같이 파일 공유 연결을 설정한다. 파일 수신 모듈(914)은 도 4a의 블록(406)에서 설명한 바와 같이 파일들을 수신한다. 파일 저장 모듈(916)은 도 4a의 블록(408)에서 설명한 바와 같이 파일을 애드혹 파일 저장소에 저장한다. 요청 제공 모듈(918)은 도 4a의 블록(410)에서 설명한 바와 같이 파일 수신을 위한 요청을 제공한다. 에러 모듈(920)은 도 4a의 블록(414)에서 설명한 바와 같이 파일 전송 요청을 거부한다.
도 9c는 파일을 전송하는 파일 전송 모듈(904)의 블록 도이다. 도 9c에서, 파일 전송 모듈(904)은 파일 요청 전송 모듈(930), 파일 전송 모듈(932), 및 에러 모듈(934)을 포함하고 있다. 파일 요청 전송 모듈(930)은 도 4a의 블록(452)에서 설명한 바와 같이 파일 전송 요청을 전송한다. 파일 전송 모듈(932)은 도 4a의 블록(456)에서 설명한 바와 같이 파일을 전송한다. 에러 모듈(934)은 도 4a의 블록(468)에서 설명한 바와 같이 파일 전송 요청을 거부한다.
도 10a, 10b 및 10c는 애드혹 파일 공유 서비스를 이용하여 파일들을 브라우징하는 파일 브라우징 모듈의 블록 도이다. 도 10a는 애드혹 파일 공유 서비스를 이용하여 파일들을 브라우징하는 파일 브라우징 모듈(706)의 블록 도이다. 도 10a에서, 파일 브라우징 모듈(706)은 파일 브라우징 수신 모듈(1002) 및 파일 브라우징 획득 모듈(1004)을 포함하고 있다. 파일 브라우징 수신 모듈(1002)은 도 5a에서 설명한 바와 같이 원격 브라우징 요청에 응답한다. 파일 브라우징 획득 모듈(1004)은 도 5b에서 설명한 바와 같이 원격 컴퓨터들을 브라우징한다.
도 10b는 애드혹 파일 공유 서비스를 이용하여 원격 브라우징 요청에 응답하는 파일 브라우징 수신 모듈(1002)의 블록 도이다. 도 10b에서, 파일 브라우징 수신 모듈(1002)은 파일 브라우징 요청 수신 모듈(1010), 파일 공유 연결 설정 모듈(1012), 파일 브라우징 이행 모듈(1014), 파일 브라우징 요청 제공 모듈(1016) 및 요청 거부 모듈(1018)을 포함하고 있다. 파일 브라우징 요청 수신 모듈(1010)은 도 5a의 블록(502)에서 설명한 바와 같이 파일 브라우징 요청을 수신한다. 파일 공유 연결 설정 모듈(1012)은 도 5a의 블록(508)에서 설명한 바와 같이 파일 공유 연결을 설정한다. 파일 브라우징 이행 모듈(1014)은 도 5a의 블록(506)에서 설명한 바와 같이 파일 저장소의 파일 공유 브라우징를 이행한다. 파일 브라우징 요청 제공 모듈(1016)은 도 5a의 블록(510)에서 설명한 바와 같이 파일 브라우징 요청을 제공한다. 요청 거부 모듈(1018)은 도 5a의 블록(514)에서 설명한 바와 같이 파일 브라우징 요청을 거부한다.
도 10c는 애드혹 파일 공유 서비스를 이용하여 원격 컴퓨터들을 브라우징하는 파일 브라우징 획득 모듈(1004)의 블록 도이다. 도 10c에서, 파일 브라우징 획득 모듈(1004)은 파일 브라우징 요청 전송 모듈(1030), 브라우징 결과 수신 모듈(1032), 파일 브라우징 제공 모듈(1034) 및 에러 모듈(1036)을 포함하고 있다. 파일 브라우징 요청 전송 모듈(1030)은 도 5b의 블록(552)에서 설명한 바와 같이 파일 브라우징 요청을 전송한다. 파일 브라우징 결과 수신 모듈(1032)은 도 5b의 블록(556)에서 설명한 바와 같이 파일 브라우징 결과를 수신한다. 파일 브라우징 제공 모듈(1034)은 도 5b의 블록(558)에서 설명한 바와 같이 파일 브라우징 결과를 제공한다. 에러 모듈(1036)은 도 5a의 블록(560)에서 설명한 바와 같이 파일 브라우징 요청을 거부한다.
도 11은 본 발명의 한 실시예에 이용될 수 있는 데이터 처리 시스템(1100)의 한 예이다. 예를 들어, 시스템(1100)은 도 1에 도시된 바와 같이 호스트(host)를 포함하도록 구현될 수 있다. 유의해야 할 점은 도 11이 컴퓨터 시스템의 다양한 구성요소를 보여주고 있을지라도 그 구성요소들을 상호 연결하는 어떤 특정한 아키텍처나 방식을 제시하고자 의도된 것이 아니며, 이는 그러한 세부사항들이 본 발명과는 밀접한 관련이 없기 때문이다. 또한, 네트워크 컴퓨터들, 및 더 적은 구성요소들 혹은 더 많은 구성요소들을 갖추고 있는 기타 데이터 처리 시스템들 또는 기타 소비자 전자 기기들도 본 발명에 이용될 수 있음은 이해하여야 한다.
도 11에 도시된 바와 같이, 데이터 처리 시스템의 형태인 컴퓨터 시스템(1100)은 마이크로프로세서(들)(1105), ROM(판독 전용 메모리)(1107), 휘발성 RAM(1109) 및 비휘발성 메모리(1111)에 결합하는 버스(1103)를 포함하고 있다. 마이크로프로세서(1105)는 메모리(1107, 1109, 1111)로부터 명령어를 검색하고 이 명령어를 실행하여 앞서 설명한 동작들을 수행할 수 있다. 버스(1103)는 이들 다양한 구성요소들을 함께 상호연결하며 또한 이들 구성요소들(1105, 1107, 1109 및 1111)을 표시 제어기 및 표시 기기(1113)에 그리고 마우스, 키보드, 모뎀, 네트워크 인터페이스, 프린터 및 이 기술에 공지된 기타 기기들일 수 있는 입/출력(I/O) 기기와 같은 주변 기기들에 상호연결한다. 통상은, 입/출력 기기(1115)는 입/출력 제어기(1117)을 통해서 시스템에 결합한다. 휘발성 RAM(랜덤 액세스 메모리)(1109)는 통상 메모리 내의 데이터를 리프레시하거나 유지하기 위하여 계속적으로 전력을 필요로 하는 동적 RAM(DRAM)으로 구현된다.
대용량 저장 장치(1111)는 통상 자기 하드 드라이브, 자기 광학 드라이브, 광학 드라이브, DVD RAM, 플래시 메모리, 또는 시스템으로부터 전원이 차단되더라도 데이터(예로, 많은 량의 데이터)를 유지하는 다른 유형의 메모리 시스템이다. 통상은, 대용량 저장 장치(1111)는 또한 필수는 아닐지라도 랜덤 액세스 메모리일 수 있다. 도 11에서, 대용량 저장 장치(1111)가 데이터 처리 시스템에서 나머지 구성요소들에 직접 결합하는 로컬 기기인 것으로 도시되어 있을지라도, 본 발명이 모뎀, 이더넷 인터페이스 또는 무선 네트워크와 같은 네트워크 인터페이스를 통해서 데이터 처리 시스템에 결합하는 네트워크 저장 기기와 같이 시스템으로부터 원거리에 있는 비휘발성 메모리를 이용할 수도 있음은 이해하여야 한다. 버스(1103)는 다양한 브리지, 제어기 및/또는 이 기술에 잘 알려져 있는 어댑터들을 통해서 서로 연결된 하나 이상의 버스를 포함할 수 있다.
도 12는 본 발명의 실시예에 이용될 수 있는 다른 데이터 처리 시스템(1200)의 일례를 보여주고 있다. 예를 들어, 시스템(1200)은 도 1에 도시된 바와 같이 휴대용 저장 기기로 구현될 수 있다. 도 12에 도시된 데이터 처리 시스템(1200)은 하나 이상의 마이크로프로세서일 수 있거나 시스템 온 칩 집적 회로일 수 있는 처리 시스템(1211)을 포함하며, 데이터 처리 시스템(1200)은 또한 처리 시스템에 의한 실행을 위한 데이터 및 프로그램을 저장하는 메모리(1201)를 포함한다. 시스템(1200)은 또한 오디오 입/출력 서브시스템(1205)을 포함하며, 이 서브시스템은 마이크로폰 및 스피커를 포함할 수 있으며, 예를 들어, 이 스피커 및 마이크로폰을 통해서 음악을 재생하거나 전화 기능을 제공한다.
표시 제어기 및 표시 기기(1209)는 사용자를 위해 비주얼 사용자 인터페이스를 제공하며; 이러한 디지털 인터페이스는 OS X 운영 시스템 소프트웨어를 실행할 때는 매킨토시 컴퓨터 또는 iOS 운영 시스템을 실행할 때는 애플 아이폰, 등등에서 볼 수 있는 것과 유사한 그래픽 사용자 인터페이스를 포함할 수 있다. 이 시스템(1200)은 또한 도 12의 시스템(1200)과 같은, 다른 데이터 처리 시스템과 통신하는 하나 이상의 무선 송수신기(1203)를 포함한다. 무선 송수신기는 WLAN 송수신기, 적외선 송수신기, 블루투스 송수신기, 및/또는 무선 셀룰러 전화 송수신기일 수 있다. 도시되지 않았지만 추가의 구성요소들이 특정 예에서는 시스템(1200)의 일부가 될 수 있고, 특정 실시예에서는, 도 12에 도시된 것보다 더 적은 구성요소들이 데이터 처리 시스템에 이용될 수도 있음은 이해하여야 한다. 시스템(1200)은 도 12의 시스템(1200)과 같은, 다른 데이터 처리 시스템과 통신할 수 있는 하나 이상의 통신 포트(1217)를 더 포함한다. 통신 포트는 USB 포트, Firewire 포트, 블루투스 인터페이스 등일 수 있다.
데이터 처리 시스템(1200)은 또한 사용자가 이 시스템에 입력을 할 수 있게 제공되는 하나 이상의 입력 기기들(1213)을 포함한다. 이들 입력 기기는 키패드, 키보드, 터치 패널 또는 멀티 터치 패널일 수 있다. 데이터 처리 시스템(1200)은 또한 도크(dock)를 위한 커넥터일 수 있는 선택적인 입/출력 기기(1215)를 포함하다. 도시되지 않았지만 하나 이상의 버스가 이 기술에 잘 알려져 있는 바와 같이 다양한 구성요소들을 상호연결하는데 이용될 수 있음은 이해하고 있을 것이다. 도 12에 도시된 데이터 처리 시스템은 핸드헬드 컴퓨터, PDA(personal digital assistant), PDA 기능이 있는 셀룰러 전화, 셀룰러 전화를 포함하는 핸드헬드 컴퓨터, 아이팟과 같은 미디어 플레이어, 하나의 기기 또는 내장형 기기에 PDA와 셀룰러 전화와 결합된 미디어 플레이어와 같이 이들 기기의 양태와 기능이 합쳐져 있는 기기, 또는 기타 소비자 전자 기기일 수 있다. 다른 실시예에서, 데이터 처리 시스템(1200)은 네트워크 컴퓨터 또는 다른 기기 내에 내장된 처리 기기, 또는 도 12에 도시된 것보다 적거나 많은 구성요소를 갖춘 다른 유형의 데이터 처리 시스템일 수 있다.
적어도 본 발명의 특정 실시예들은 휴대용 음악 및/또는 비디오 미디어 플레이어와 같은 디지털 미디어 플레이어의 일부일 수 있고, 이러한 플레이어는 미디어를 제공하기 위한 미디어 처리 시스템, 미디어를 저장하기 위한 저장 기기를 포함할 수 있고, 안테나 시스템과 미디어 처리 시스템에 연결된 무선 주파수(RF) 송수신기(예를 들어, 셀룰러 전화를 위한 RF 송수신기)를 추가로 포함할 수 있다. 특정 실시예들에서, 원격 저장 기기에 저장된 미디어는 RF 송수신기를 통해서 미디어 플레이어에게 전송될 수 있다. 이 미디어는, 예를 들어, 음악 또는 다른 오디오, 정지화상, 동화상 중 하나 이상일 수 있다.
휴대용 미디어 플레이어는 캘리포니아 쿠퍼티노 소재의 애플에서 출시된 iPod® 또는 iPod Nano® 미디어 플레이어의 클릭 휠 입력 기기와 같은 미디어 선택 기기, 터치 스크린 입력 기기, 푸시버튼 기기, 이동가능 포인팅 입력 기기 또는 기타 입력 기기를 포함할 수 있다. 미디어 선택 기기는 저장 장치 및/또는 원격 저장 기기에 저장된 미디어를 선택하는데 이용될 수 있다. 휴대용 미디어 플레이어는 적어도 특정 실시예들에서는, 입력 기기를 통해 선택되어, 스피커 또는 이어폰(들)을 통해, 또는 표시 기기에, 또는 표시 기기 및 스피커 또는 이어폰(들)을 통해서 제공되는 미디어의 타이틀들 또는 다른 표시자들을 표시하기 위해서 미디어 처리 시스템에 결합하는 표시 장치를 포함할 수 있다. 휴대용 미디어 플레이어의 예들은 공개된 미합중국 특허 번호 7,345,671 및 미합중국 공개 특허 번호 2004/0224638에 설명되어 있으며, 이들은 참조로서 여기에 통합된다.
위에 설명된 것의 일부들은 전용 논리 회로와 같은 논리 회로 또는 마이크로프로세서 또는 프로그램 코드 명령어를 실행하는 다른 형태의 처리 코어로 구현될 수 있다. 따라서, 위에 논의한 프로세스들은 머신-실행가능 명령어들과 같은 프로그램 코드로 수행될 수 있고, 이 머신-실행가능 명령어들은 머신으로 하여금 이 명령어들을 실행하여 특정 기능을 수행하게 한다. 이러한 문맥에서, "머신"은 중간 형태(또는 "추상") 명령어를 프로세서 관련 명령어(예를 들어, "가상 머신"(예를 들어, 자바 가상 머신)과 같은 추상 실행 환경, 인터프리터, 공통 언어 런타임, 하이-레벨 언어 가상 머신 등)으로 변환하는 머신, 및/또는 범용 프로세서 및/또는 특수-목적 프로세서와 같은 명령어를 실행하도록 설계된 반도체 칩에 배치된 전자 회로(예를 들어, 트랜지스터들로 구현된 "논리 회로")일 수 있다. 위에서 논의한 프로세스들은 프로그램 코드의 실행 없이 이들 프로세스(또는 그들의 일부)를 실행하도록 설계된 전자 회로에 의해(머신의 대안으로 또는 머신과 조합하여) 실행될 수 있다.
본 발명은 또한 여기에 설명된 동작들을 수행하는 장치에 관한 것이다. 이 장치는 필요한 목적을 위해 특별히 구성될 수 있고 또는 컴퓨터에 저장되는 컴퓨터 프로그램에 의해서 선택적으로 활성화되거나 재구성되는 범용 컴퓨터를 포함할 수 있다. 그러한 컴퓨터 프로그램은 컴퓨터 판독가능 저장 매체에 저장될 수 있으며, 이러한 저장 매체로는 플로피 디스크, 광 디스크, CD-ROM, 및 자기-광학 디스크를 포함하는 임의 유형의 디스크, 판독 전용 메모리(ROM), RAM, EPROM, EEPROM, 자기 또는 광학 카드, 또는 전자 명령어를 저장하기에 적합한 임의 유형의 미디어 등이 있으며, 이들 각각은 컴퓨터 시스템 버스에 연결된다.
머신 판독가능 매체는 머신(예를 들어, 컴퓨터)이 판독할 수 있는 형태로 정보를 저장 또는 전송하기 위한 임의 메커니즘을 포함한다. 예를 들어, 머신 판독가능 매체는 판독 전용 메모리("ROM"); 랜덤 액세스 메모리("RAM"); 자기 디스크 저장 매체; 광학 저장 매체; 플래시 메모리 기기; 등을 포함한다.
프로그램 코드를 저장하기 위한 제조 물품이 이용될 수 있다. 프로그램 코드를 저장하는 제조 물품은 하나 이상의 메모리(예를 들어, 하나 이상의 플래시 메모리, 랜덤 액세스 메모리(정적, 동적 또는 기타)), 광학 디스크, CD-ROM, DVD ROM, EPROM, EEPROM, 자기 또는 광학 카드 또는 전자 명령어를 저장하기에 적합한 다른 유형의 머신 판독가능 매체, 등으로 구현될 수 있으나, 이들에 제한되는 것은 아니다. 프로그램 코드는 또한 전파 매체에 구현된 데이터 신호에 의해서(예를 들어, 통신 링크(예를 들어, 네트워크 연결)를 통해서) 원격 컴퓨터(예를 들어, 서버)로부터 요청 컴퓨터(예를 들어, 클라이언트)로 다운로드될 수 있다.
이전의 상세한 설명은 컴퓨터 메모리 내의 데이터 비트에 대한 동작들의 알고리즘 및 기호 표현의 관점에서 제공되었다. 이들 알고리즘 설명 및 표현은 이 기술에 숙련된 자들이 그들의 연구 내용을 이 기술에 숙련된 다른 자들에게 가장 효과적으로 전달하기 위하여 이용하는 도구이다. 알고리즘은 일반적으로 원하는 결과를 이끌어내는 동작들의 일관성 있는 시퀀스인 것으로 생각할 수 있다. 동작들은 물리적인 양의 물리적인 조작을 필요로 하는 것이다. 반드시 그렇지는 않더라도, 일반적으로, 이들 양은 저장되고, 전송되고, 합쳐지고, 비교되고, 다른 방식으로 조작될 수 있는 전기 또는 자기 신호의 형태를 취한다. 주로 공통 이용의 이유로 때로는 이들 신호를 비트, 값, 요소, 심벌, 문자, 기간, 숫자 등으로 지칭하는 것이 편리하다는 것이 증명되었다.
이들 및 유사한 용어들 모두는 적절한 물리적인 양에 관련되어 있으며 단지 이들 양에 적용되는 편리한 라벨이라는 것은 유의해야 한다. 위의 설명으로부터 알 수 있듯이, 다르게 구체적으로 언급하지 않는 한, 설명 전반을 통해서, "계산", "선택", "제공", "판정", "관련", "전송", "저장", "수신", "설정", "전송" 등과 같은 용어를 이용하는 논의는 컴퓨터 시스템의 레지스터 및 메모리 내의 물리적인(전자) 양으로 표현되는 데이터를 조작하여 컴퓨터 시스템 메모리 또는 레지스터 또는 다른 그러한 정보 저장 장치, 전송 또는 표시 장치 내의 물리적인 양으로 유사하게 표현되는 다른 데이터로 변환하는 컴퓨터 시스템 또는 유사한 전자 컴퓨팅 기기의 액션 및 처리를 나타내는 것임을 이해하여야 한다.
여기에 제시된 프로세스와 표시는 임의 특정한 컴퓨터 또는 다른 장치에 고유하게 관련되어 있는 것이 아니다. 다양한 범용 컴퓨터를 본 명세서의 가르침에 따른 프로그램들과 함께 이용할 수 있고, 아니면 설명된 동작들을 수행하기 위해 좀 더 전문화된 장치를 구성하는 것이 편리할 수 있다. 다양한 이들 시스템에 요구되는 구조는 하기의 설명으로부터 명백할 것이다. 또한, 본 발명은 임의 특정 프로그래밍 언어를 참조하여 설명하지 않았다. 여기에 설명된 바와 같은 본 발명의 가르침을 구현하는데 다양한 프로그래밍 언어가 이용될 수 있음은 이해하여야 한다.
위의 설명은 단지 본 발명의 몇몇 예시적인 실시예들을 기술하고 있다. 이 기술에 숙련된 자이면 그러한 논의, 첨부 도면 및 청구항들로부터, 본 발명의 정신 및 범위를 벗어나지 않고도 다양한 수정을 할 수 있음을 잘 인식하고 있을 것이다.

Claims (21)

  1. 하나 이상의 처리 유닛으로 하여금 제1 기기와 하나 이상의 다른 기기 간에 파일들을 전송하는 방법을 수행하게 하는 실행가능 명령어들을 갖는 비일시적(non-transitory) 머신 판독가능 매체로서,
    상기 방법은,
    상기 제1 기기를 이용해, 애드혹 파일 공유 서비스의 알림(advertisement)을 상기 다른 기기들 각각에 전송하는 단계 - 상기 알림은 상기 제1 기기와 관련된 사용자의 사용자 ID(identity)를 포함하며, 상기 애드혹 파일 공유 서비스로의 액세스는 사용자별로(on a per-user basis) 승인됨 - ;
    상기 다른 기기들 각각과의 연결을 설정하는 단계; 및
    상기 다른 기기들 각각과 파일들을 전송하는 단계
    를 포함하는 비일시적 머신 판독가능 매체.
  2. 제1항에 있어서,
    상기 연결을 설정하는 단계는 파일 공유 연결을 설정하는 비일시적 머신 판독가능 매체.
  3. 제1항에 있어서,
    상기 다른 기기들 각각에 대해 상기 연결을 설정하는 단계는,
    해당 다른 기기에 대응하는 사용자의 사용자 ID(identification)를 상기 제1 기기의 사용자에게 제공하는 단계; 및
    해당 다른 기기에 대응하는 사용자에게 상기 애드혹 파일 공유 서비스로의 액세스를 허용하는 단계
    를 포함하는 비일시적 머신 판독가능 매체.
  4. 제3항에 있어서,
    상기 애드혹 파일 공유 서비스로의 액세스는, 해당 다른 기기에 대응하는 사용자가 상기 제1 기기에 대한 파일 공유 계정을 갖지 않고도 성취되는 비일시적 머신 판독가능 매체.
  5. 제3항에 있어서,
    상기 애드혹 파일 공유 서비스로의 액세스는, 상기 제1 기기도 상기 다른 기기들 중 하나의 기기도 아닌 또 다른 기기에 대한 인증 서비스를 이용하지 않고도 성취되는 비일시적 머신 판독가능 매체.
  6. 제3항에 있어서,
    상기 애드혹 파일 공유 서비스로의 액세스는, 해당 다른 기기에 대응하는 사용자가 상기 애드혹 파일 공유 서비스에 로그인할 필요 없이 성취되는 비일시적 머신 판독가능 매체.
  7. 제1항에 있어서,
    상기 방법은, 상기 애드혹 파일 공유 서비스를 위한 파일 저장소를 설정하는 단계를 더 포함하는 비일시적 머신 판독가능 매체.
  8. 제8항에 있어서,
    상기 파일 저장소는 디렉터리인 비일시적 머신 판독가능 매체.
  9. 제1항에 있어서,
    상기 방법은, 상기 다른 기기들 중 하나의 기기로부터의 파일 브라우징 요청을 이행하는 단계를 더 포함하는 비일시적 머신 판독가능 매체.
  10. 하나 이상의 처리 유닛으로 하여금 제1 기기와 하나 이상의 다른 기기 간에 파일들을 전송하는 방법을 수행하게 하는 실행가능 명령어들을 갖는 비일시적 머신 판독가능 매체로서,
    상기 방법은,
    상기 제1 기기를 이용해, 애드혹 파일 공유 서비스의 알림을 상기 다른 기기들 각각에 전송하는 단계 - 상기 알림은 상기 제1 기기와 관련된 사용자의 사용자 ID를 포함함 - ; 및
    상기 다른 기기들 각각에게 상기 애드혹 파일 공유 서비스로의 액세스를 허용하는 단계
    를 포함하며,
    상기 애드혹 파일 공유 서비스로의 액세스는 사용자별로 승인되고, 상기 액세스는 상기 다른 기기들 각각에 대응하는 사용자가 상기 제1 기기에 대한 파일 공유 계정을 갖지 않고도 성취되는 비일시적 머신 판독가능 매체.
  11. 제10항에 있어서,
    상기 애드혹 파일 공유 서비스로의 액세스는, 해당 다른 기기에 대응하는 사용자가 파일 공유 계정을 갖지 않고도 성취되는 비일시적 머신 판독가능 매체.
  12. 제10항에 있어서,
    상기 애드혹 파일 공유 서비스로의 액세스는, 상기 제1 기기도 상기 다른 기기들 중 하나의 기기도 아닌 또 다른 기기를 이용한 인증 서비스 없이도 성취되는 비일시적 머신 판독가능 매체.
  13. 제10항에 있어서,
    상기 애드혹 파일 공유 서비스로의 액세스는, 해당 다른 기기에 대응하는 사용자가 상기 애드혹 파일 공유 서비스에 로그인할 필요 없이 성취되는 비일시적 머신 판독가능 매체.
  14. 제10항에 있어서,
    상기 방법은, 상기 애드혹 파일 공유 서비스를 위한 파일 저장소를 설정하는 단계를 더 포함하는 비일시적 머신 판독가능 매체.
  15. 제14항에 있어서,
    상기 파일 저장소는 디렉터리인 비일시적 머신 판독가능 매체.
  16. 제10항에 있어서,
    상기 방법은, 상기 다른 기기들 중 하나의 기기부터의 파일 브라우징 요청을 이행하는 단계를 더 포함하는 비일시적 머신 판독가능 매체.
  17. 애드혹 파일 공유 서비스의 알림을 하나 이상의 다른 기기들 각각에 전송하는 수단 - 상기 알림은 상기 제1 기기와 관련된 사용자의 사용자 ID를 포함하며, 상기 애드혹 파일 공유 서비스로의 액세스는 사용자별로 승인됨 - ;
    상기 다른 기기들 각각과의 연결을 설정하는 수단; 및
    상기 다른 기기들 각각과 파일들을 전송하는 수단
    을 포함하는 장치.
  18. 제17항에 있어서,
    상기 연결을 설정하는 수단은 파일 공유 연결을 설정하는 장치.
  19. 제17항에 있어서,
    상기 다른 기기들 각각에 대해 상기 연결을 설정하는 수단은,
    해당 다른 기기에 대응하는 사용자의 사용자 ID를 상기 제1 기기의 사용자에게 제공하는 수단; 및
    해당 다른 기기에 대응하는 사용자에게 상기 애드혹 파일 공유 서비스로의 액세스를 허용하는 수단
    을 포함하는 장치.
  20. 제19항에 있어서,
    상기 애드혹 파일 공유 서비스로의 액세스는, 해당 다른 기기에 대응하는 사용자가 상기 제1 기기에 대한 파일 공유 계정을 갖지 않고도 성취되는 장치.
  21. 하나 이상의 처리 유닛으로 하여금, 제1 기기와 하나 이상의 다른 기기 간에 파일들을 전송하는 데 이용되는 애드혹 파일 공유 프로세스의 방법을 수행하게 하는 실행가능 명령어들을 갖는 비일시적 머신 판독가능 매체로서,
    상기 방법은,
    사용자가 애드혹 파일 공유 프로세스를 위해 구성된 폴더를 선택하는 것에 응답해서,
    상기 제1 기기에서, 상기 애드혹 파일 공유 프로세스를 개시하는 단계; 및
    상기 애드혹 파일 공유 서비스의 알림을 상기 하나 이상의 다른 기기 각각에 전송함으로써 상기 애드혹 파일 공유 프로세스를 가능하게 하는 단계
    를 포함하며,
    상기 알림은 상기 제1 기기와 관련된 사용자의 사용자 ID를 포함하고, 상기 애드혹 파일 공유 서비스로의 액세스는 사용자별로 승인되고, 상기 액세스는 상기 다른 기기들 각각에 대응하는 사용자가 상기 제1 기기에 대한 파일 공유 계정을 갖지 않고도 성취되는 비일시적 머신 판독가능 매체.
KR1020137021225A 2011-01-13 2012-01-12 애드혹 파일 공유 KR101491396B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/006,378 US8990273B2 (en) 2011-01-13 2011-01-13 Ad hoc file sharing
US13/006,378 2011-01-13
PCT/US2012/021073 WO2012097147A1 (en) 2011-01-13 2012-01-12 Ad hoc file sharing

Publications (2)

Publication Number Publication Date
KR20130124363A true KR20130124363A (ko) 2013-11-13
KR101491396B1 KR101491396B1 (ko) 2015-02-06

Family

ID=45615043

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137021225A KR101491396B1 (ko) 2011-01-13 2012-01-12 애드혹 파일 공유

Country Status (6)

Country Link
US (1) US8990273B2 (ko)
EP (1) EP2664125B1 (ko)
JP (1) JP5947314B2 (ko)
KR (1) KR101491396B1 (ko)
CN (1) CN103329503B (ko)
WO (1) WO2012097147A1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160148646A (ko) * 2014-05-30 2016-12-26 애플 인크. 전자 디바이스들 사이의 액티비티 계속
KR20170012428A (ko) * 2014-05-30 2017-02-02 애플 인크. 액티비티 협력을 위한 동반 애플리케이션
US10187770B2 (en) 2014-05-30 2019-01-22 Apple Inc. Forwarding activity-related information from source electronic devices to companion electronic devices
US10237711B2 (en) 2014-05-30 2019-03-19 Apple Inc. Dynamic types for activity continuation between electronic devices
US10546113B2 (en) 2014-05-30 2020-01-28 Apple Inc. Proximity unlock and lock operations for electronic devices

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8942213B2 (en) * 2011-03-18 2015-01-27 Verizon Patent And Licensing Inc. Method and system for accessing storage devices
JP2013077227A (ja) * 2011-09-30 2013-04-25 Fujitsu Ltd 制御プログラム、情報処理装置および方法
CN102832975B (zh) * 2012-08-14 2015-03-11 华为终端有限公司 数据传输方法、装置以及具有触摸显示屏的终端
KR101979380B1 (ko) * 2012-08-24 2019-05-17 삼성전자주식회사 전자 기기의 콘텐트 공유 방법 및 그 전자 기기
US20140214940A1 (en) * 2013-01-31 2014-07-31 Sony Corporation Networked devices matching capabilities with tasks
US10243786B2 (en) * 2013-05-20 2019-03-26 Citrix Systems, Inc. Proximity and context aware mobile workspaces in enterprise systems
US9986044B2 (en) * 2013-10-21 2018-05-29 Huawei Technologies Co., Ltd. Multi-screen interaction method, devices, and system
EP2866415A1 (en) * 2013-10-24 2015-04-29 NEC Corporation Instant sharing of contents broadcasted over a local network
CN103595789B (zh) * 2013-11-14 2016-09-21 国家电网公司 一种基于wifi的无线安全电力文件共享设备
US9585177B2 (en) 2013-12-11 2017-02-28 At&T Intellectual Property I, L.P. Cellular connection sharing
CN103780682B (zh) * 2014-01-07 2017-03-08 中国船舶重工集团公司第七0九研究所 一种面向Ad Hoc网络的信息共享系统
CN103729152A (zh) * 2014-01-24 2014-04-16 福州瑞芯微电子有限公司 一种安卓共享磁盘的方法及设备
US9549375B2 (en) 2014-05-30 2017-01-17 Apple Inc. Operating-mode transitions based on advertising information
US9451438B2 (en) 2014-05-30 2016-09-20 Apple Inc. Predefined wireless pairing
US10447659B2 (en) * 2016-03-02 2019-10-15 Google Llc Sharing protected user content between devices
KR101752781B1 (ko) 2016-08-26 2017-07-11 이호동 지리정보시스템을 이용한 공동 프로젝트 운영방법
EP3968672B1 (en) * 2016-09-09 2023-11-08 Huawei Technologies Co., Ltd. File sending method and terminal
CN108322522A (zh) * 2018-01-18 2018-07-24 努比亚技术有限公司 基于移动终端的文件共享方法、移动终端及存储介质
CN109168152A (zh) * 2018-08-27 2019-01-08 优视科技新加坡有限公司 一种文件传输的方法及其装置、设备/终端/服务器
US11782881B2 (en) * 2018-12-05 2023-10-10 Vmware, Inc. Recommending remotely executed applications for opening files
CN115087137A (zh) * 2021-03-16 2022-09-20 华为技术有限公司 一种设备连接方法、终端设备和分布式系统
US20230056790A1 (en) * 2021-08-19 2023-02-23 Flyshot, Inc. Unique identifiers for digital advertisement, branded and influencer content

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002057917A2 (en) * 2001-01-22 2002-07-25 Sun Microsystems, Inc. Peer-to-peer network computing platform
JP2002244906A (ja) * 2001-02-13 2002-08-30 Information & Mathematical Science Laboratory Inc ネットワークシステム及びその情報共有方法
JP2002345039A (ja) * 2001-05-21 2002-11-29 Sony Corp データ端末機器及びファイル共有方法
US6842460B1 (en) * 2001-06-27 2005-01-11 Nokia Corporation Ad hoc network discovery menu
US7203753B2 (en) * 2001-07-31 2007-04-10 Sun Microsystems, Inc. Propagating and updating trust relationships in distributed peer-to-peer networks
CN1160911C (zh) * 2002-09-06 2004-08-04 联想(北京)有限公司 家庭主干网中实现设备间动态组网与资源共享的方法
US20030236890A1 (en) 2002-06-25 2003-12-25 Intel Corporation Wireless communication device and method for sharing device resources
US7613772B2 (en) 2002-07-25 2009-11-03 Colligo Networks, Inc. Method for context based discovery and filtering of portable collaborative networks
US7549047B2 (en) 2002-11-21 2009-06-16 Xerox Corporation Method and system for securely sharing files
US20040203381A1 (en) * 2002-12-31 2004-10-14 Cahn Janet E. Method and apparatus for data transfer
JP2004259161A (ja) * 2003-02-27 2004-09-16 Canon Inc 会議支援システム
US20130097302A9 (en) * 2003-10-01 2013-04-18 Robert Khedouri Audio visual player apparatus and system and method of content distribution using the same
US7567987B2 (en) * 2003-10-24 2009-07-28 Microsoft Corporation File sharing in P2P group shared spaces
JP2005229522A (ja) * 2004-02-16 2005-08-25 Sony Corp コンテンツ共有システム
US7860923B2 (en) 2004-08-18 2010-12-28 Time Warner Inc. Method and device for the wireless exchange of media content between mobile devices based on user information
US20060094456A1 (en) * 2004-10-29 2006-05-04 Rittle Loren J Device and method for service discovery in adhoc networks using beacon signalling
FI20041638A0 (fi) * 2004-12-21 2004-12-21 Nokia Corp Sisällön yhteiskäyttö kommunikaatiojärjestelmässä
JP2007005921A (ja) * 2005-06-21 2007-01-11 Matsushita Electric Ind Co Ltd ファイルを共有する携帯端末装置とファイル共有方法
US7836016B2 (en) 2006-01-13 2010-11-16 International Business Machines Corporation Method and apparatus for disseminating new content notifications in peer-to-peer networks
US7827289B2 (en) * 2006-02-16 2010-11-02 Dell Products, L.P. Local transmission for content sharing
EP1843550B1 (en) * 2006-04-05 2011-12-21 Motorola Mobility, Inc. Transport medium selection to optimize device operation
US8090366B2 (en) * 2006-10-19 2012-01-03 At&T Mobility Ii Llc Systems and methods for file sharing through mobile devices
US20090017799A1 (en) * 2007-07-13 2009-01-15 Sony Ericsson Mobile Communications Ab System, device and method for transmitting a file by use of a throwing gesture to a mobile terminal
US20090215398A1 (en) 2008-02-25 2009-08-27 Adler Mitchell D Methods and Systems for Establishing Communications Between Devices
US20090215477A1 (en) * 2008-02-27 2009-08-27 Qualcomm, Incorporated Intelligent multiple device file sharing in a wireless communications system
US8260883B2 (en) * 2009-04-01 2012-09-04 Wimm Labs, Inc. File sharing between devices
US8312392B2 (en) * 2009-10-02 2012-11-13 Qualcomm Incorporated User interface gestures and methods for providing file sharing functionality

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160148646A (ko) * 2014-05-30 2016-12-26 애플 인크. 전자 디바이스들 사이의 액티비티 계속
KR20170012428A (ko) * 2014-05-30 2017-02-02 애플 인크. 액티비티 협력을 위한 동반 애플리케이션
KR20180086514A (ko) * 2014-05-30 2018-07-31 애플 인크. 전자 디바이스들 사이의 액티비티 계속
US10165391B2 (en) 2014-05-30 2018-12-25 Apple Inc. Companion application for activity cooperation
KR20190000399A (ko) * 2014-05-30 2019-01-02 애플 인크. 액티비티 협력을 위한 동반 애플리케이션
US10187770B2 (en) 2014-05-30 2019-01-22 Apple Inc. Forwarding activity-related information from source electronic devices to companion electronic devices
US10193987B2 (en) 2014-05-30 2019-01-29 Apple Inc. Activity continuation between electronic devices
US10237711B2 (en) 2014-05-30 2019-03-19 Apple Inc. Dynamic types for activity continuation between electronic devices
US10546113B2 (en) 2014-05-30 2020-01-28 Apple Inc. Proximity unlock and lock operations for electronic devices
KR20200024348A (ko) * 2014-05-30 2020-03-06 애플 인크. 전자 디바이스들 사이의 액티비티 계속
US10659200B2 (en) 2014-05-30 2020-05-19 Apple Inc. Companion application for activity cooperation
US10667109B2 (en) 2014-05-30 2020-05-26 Apple Inc. Forwarding activity-related information from source electronic devices to companion electronic devices
US10708371B2 (en) 2014-05-30 2020-07-07 Apple Inc. Activity continuation between electronic devices
US10771946B2 (en) 2014-05-30 2020-09-08 Apple Inc. Dynamic types for activity continuation between electronic devices
KR20200140944A (ko) * 2014-05-30 2020-12-16 애플 인크. 전자 디바이스들 사이의 액티비티 계속
US11055392B2 (en) 2014-05-30 2021-07-06 Apple Inc. Proximity unlock and lock operations for electronic devices
US11356829B2 (en) 2014-05-30 2022-06-07 Apple Inc. Dynamic types for activity continuation between electronic devices
US11741210B2 (en) 2014-05-30 2023-08-29 Apple Inc. Proximity unlock and lock operations for electronic devices

Also Published As

Publication number Publication date
WO2012097147A1 (en) 2012-07-19
EP2664125A1 (en) 2013-11-20
CN103329503A (zh) 2013-09-25
JP5947314B2 (ja) 2016-07-06
JP2014508347A (ja) 2014-04-03
US8990273B2 (en) 2015-03-24
KR101491396B1 (ko) 2015-02-06
US20120185520A1 (en) 2012-07-19
CN103329503B (zh) 2016-09-07
EP2664125B1 (en) 2021-03-24

Similar Documents

Publication Publication Date Title
KR101491396B1 (ko) 애드혹 파일 공유
US10069899B2 (en) System and method of secure file sharing using P2P
JP5922709B2 (ja) データ転送を簡略化するシステム及び方法
US10499205B2 (en) SMS proxying
US8639810B2 (en) Access rights used for resource discovery in peer-to-peer networks
RU2411682C2 (ru) Способ, устройство, сетевой элемент, система и компьютерный программный продукт для обеспечения совместного доступа к контенту
US9125002B2 (en) Apparatus and method for connecting with bluetooth device in portable terminal
EP2896232B1 (en) A method, device, server, and system for managing devices
US20080267091A1 (en) System, method, and computer program product for service and application configuration in a network device
EP3058685B1 (en) Granting permissions to an object when adding people to a conversation
TW201621706A (zh) 使用近場通訊來以權限控制進行共享內容
US9734538B2 (en) Integrated operation method for social network service function and system supporting the same
WO2012025000A1 (zh) 蓝牙服务的管理方法和装置
Bennaceur et al. The iBICOOP middleware: Enablers and services for emerging pervasive computing environments
WO2011032273A1 (en) Method, system and computer program for sharing content based on a shared social context
KR101044455B1 (ko) 정보 공유 시스템 및 방법
KR20110113557A (ko) 정보 공유 시스템 및 방법
AU2012100064A4 (en) Local/Global Interconnected Copy Pasting
KR20160079104A (ko) 데이터를 공유하는 소셜 드라이브
KR20130080925A (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
FPAY Annual fee payment

Payment date: 20180103

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190103

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200103

Year of fee payment: 6