KR20180009140A - 전자 장치들의 연동 방법 및 장치 - Google Patents
전자 장치들의 연동 방법 및 장치 Download PDFInfo
- Publication number
- KR20180009140A KR20180009140A KR1020160090668A KR20160090668A KR20180009140A KR 20180009140 A KR20180009140 A KR 20180009140A KR 1020160090668 A KR1020160090668 A KR 1020160090668A KR 20160090668 A KR20160090668 A KR 20160090668A KR 20180009140 A KR20180009140 A KR 20180009140A
- Authority
- KR
- South Korea
- Prior art keywords
- electronic device
- wireless communication
- docking station
- processor
- various embodiments
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
-
- H04W4/008—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H04W76/023—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/06—Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephone Function (AREA)
Abstract
본 발명의 다양한 실시 예들은 본 발명의 다양한 실시 예들에서는 전자 장치들 간의 연동(interworking)을 통해 전자 장치의 사용성을 높일 수 있는 방법 및 장치에 관하여 개시한다. 본 발명의 다양한 실시 예들에 따르면, 다른 전자 장치와 제1 무선 통신을 수행하도록 구성된 제1 무선 통신부; 상기 다른 전자 장치와 제2 무선 통신을 수행하도록 구성된 제2 무선 통신부; 및 상기 제1 무선 통신부 및 상기 제2 무선 통신부와 기능적으로 연결된 프로세서를 포함하고, 상기 프로세서는, 상기 제1 무선 통신부를 이용하여, 상기 다른 전자 장치와 상기 제1 무선 통신으로 연결하고, 상기 제1 무선 통신에 기초하여 상기 다른 전자 장치와 제1 프로세스를 실행하고, 상기 제1 프로세스를 실행하는 동안 제2 프로세스를 감지하고, 상기 제1 프로세스와 상기 제2 프로세스를 처리하기 위한 리소스를, 대응하는 프로파일에 따라 재할당하고, 및 할당된 리소스에 기초하여 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 처리하도록 구성할 수 있다. 다양한 실시 예들이 가능하다.
Description
본 발명의 다양한 실시 예들에서는 전자 장치들 간의 연동(interworking)을 통해 전자 장치의 사용성을 높일 수 있는 방법 및 장치에 관하여 개시한다.
최근 디지털 기술의 발달과 함께 이동통신 단말기, 스마트폰(smart phone), 태블릿(tablet) PC(personal computer), 노트북(notebook), 웨어러블 장치(wearable device), 디지털 카메라(digital camera) 또는 개인용 컴퓨터(personal computer) 등과 같은 다양한 유형의 전자 장치가 널리 사용되고 있다.
최근, 전자 장치들 간의 연결은, 케이블(cable)을 이용한 유선 연결(cable connection)에서 케이블 없이(cable-less) 무선 연결(wireless connection)이 사용되고 있는 추세이다. 또한 전자 장치의 충전의 경우에도 유선 케이블 충전에서 무선 충전으로 확장되고 있다. 예를 들면, 유선 연결 방식의 경우 전자 장치, 도킹 스테이션, 그리고 외부 장치 간에 모두 유선으로 연결하는 경우, 연결성, 이동서 또는 조작성에 제약이 따를 수 있다. 이에, 장치들 간의 무선 연결을 통해, 장치들 간의 연결성의 편의성을 제공하고, 장치들의 이동이나 조작에 있어서 편리함을 제공할 수 있다.
최근에는, 정보의 광대역화 및 초고속화에 대한 요구가 증가하고 있으며, 이에 무선 연결의 방식으로 초고속 근접 통신을 위한 주파수 대역(예: 60GHz 대역)이 주목되고 있다. 하지만, 초고속 근접 통신을 이용한 장치들 간의 연결의 경우, 유효 동작 거리(예: 1Cm ~ 10Cm)의 제약으로, 프로세스의 유기적인 수행이 어려울 수 있다. 예를 들면, 사용자가 장치들을 연결하여 데이터 통신을 수행하는 중에, 다른 액션(예: 전화, 메시지, 게임 등)을 수행할 때, 장치들 간의 거리가 유효 동작 거리를 쉽게 벗어남에 따라, 데이터 통신이 끊어지는 문제가 있다.
다양한 실시 예들에서는, 복수의 전자 장치들 간의 연동을 원활하게 제공하여 전자 장치의 사용성을 높일 수 있는 방법 및 장치에 관하여 개시한다.
다양한 실시 예들에서는, 전자 장치, 도킹 스테이션(docking station), 그리고 외부 장치를 연결하고, 전자 장치에서 도킹 스테이션과의 연결 상태에 기초하여 데이터 통신을 적응적으로 변경하여 수행하는 방법 및 장치에 관하여 개시한다.
다양한 실시 예들에서는, 전자 장치가 도킹 스테이션을 통해 연결된 외부 장치를 구분하고, 기존 프로세스 진행 중에 신규 프로세스 발생 시 도킹 스테이션과 초고속 근접 통신의 연결 상태에 따라 외부 장치를 위한 데이터 통신을 자동 변경하여 다중 프로세스를 처리하는 방법 및 장치에 관하여 개시한다.
다양한 실시 예들에서는, 전자 장치가 도킹 스테이션에 연결되고, 이후에 전자 장치에 의해 새로운 프로세스가 발생하는 경우, 기존 프로세스와 새로운 프로세스를 끊김 없이(seamless) 처리하는 방법 및 장치에 관하여 개시한다.
본 발명의 다양한 실시 예들에 따른 전자 장치는, 다른 전자 장치와 제1 무선 통신을 수행하도록 구성된 제1 무선 통신부; 상기 다른 전자 장치와 제2 무선 통신을 수행하도록 구성된 제2 무선 통신부; 및 상기 제1 무선 통신부 및 상기 제2 무선 통신부와 기능적으로 연결된 프로세서를 포함하고, 상기 프로세서는, 상기 제1 무선 통신부를 이용하여, 상기 다른 전자 장치와 상기 제1 무선 통신으로 연결하고, 상기 제1 무선 통신에 기초하여 상기 다른 전자 장치와 제1 프로세스를 실행하고, 상기 제1 프로세스를 실행하는 동안 제2 프로세스를 감지하고, 상기 제1 프로세스와 상기 제2 프로세스를 처리하기 위한 리소스를, 대응하는 프로파일에 따라 재할당하고, 및 할당된 리소스에 기초하여 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 처리하도록 구성할 수 있다.
본 발명의 다양한 실시 예들에 따른 전자 장치의 동작 방법은, 제1 무선 통신부를 이용하여, 다른 전자 장치와 제1 무선 통신으로 연결하는 동작, 상기 제1 무선 통신에 기초하여 상기 다른 전자 장치와 제1 프로세스를 실행하는 동작, 상기 제1 프로세스를 실행하는 동안 제2 프로세스를 감지하는 동작, 상기 제1 프로세스와 상기 제2 프로세스를 처리하기 위한 리소스를, 대응하는 프로파일에 따라 재할당하는 동작, 및 할당된 리소스에 기초하여 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 처리하는 동작을 포함할 수 있다.
상기와 같은 과제를 해결하기 위하여 본 발명의 다양한 실시 예들에서는, 상기 방법을 프로세서에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 포함할 수 있다.
다양한 실시 예들에 따른 전자 장치 및 그의 동작 방법에 따르면, 복수의 무선 통신 기능을 지원하는 전자 장치와 도킹 스테이션 간의 연결에서, 기존 프로세스 외에 새로운 신규 프로세스가 추가로 실행될 경우의 시나리오에서, 장치들 간의 연동을 원활하게 제공하여 전자 장치의 사용성을 높일 수 있다.
다양한 실시 예들에 따르면, 전자 장치, 도킹 스테이션, 그리고 외부 장치를 연결하고, 전자 장치에서 도킹 스테이션과의 연결 상태에 기초하여 데이터 통신을 적응적으로 변경하여 수행할 수 있다. 다양한 실시 예들에 따르면, 전자 장치가 도킹 스테이션을 통해 연결된 외부 장치를 구분하고, 기존 프로세스 진행 중에 신규 프로세스 발생 시 도킹 스테이션과 초고속 근접 통신의 연결 상태에 따라 외부 장치를 위한 데이터 통신을 자동 변경하여 다중 프로세스를 처리할 수 있다. 다양한 실시 예들에 따르면, 전자 장치가 도킹 스테이션에 연결되고, 이후에 전자 장치에 의해 새로운 프로세스가 발생하는 경우, 기존 프로세스와 새로운 프로세스를 끊김 없이(seamless) 처리할 수 있다. 이를 통해, 다양한 실시 예들에서는, 전자 장치의 사용성을 더욱 높일 수 있고, 여러 장치들의 연동을 원활하게 하며, 전자 장치의 성능을 확장하고 여러 기능을 향상된 방법으로 제공할 수 있다.
도 1은 본 발명의 다양한 실시 예들에 따른 전자 장치를 포함하는 네트워크 환경을 도시하는 도면이다.
도 2는 본 발명의 다양한 실시 예들에 따른 전자 장치의 블록도이다.
도 3은 본 발명의 다양한 실시 예들에 따른 프로그램 모듈의 블록도이다.
도 4는 본 발명의 다양한 실시 예들에 따른 시스템 환경을 개략적으로 도시하는 도면이다.
도 5는 본 발명의 다양한 실시 예들에 따른 시스템에서 장치들의 구성을 도시하는 도면이다.
도 6a는 본 발명의 다양한 실시 예들에 따른 전자 장치, 도킹 스테이션 및 외부 장치가 연결된 시스템에서 전자 장치의 동작을 도시하는 흐름도이다.
도 6b는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 다중 프로세스를 수행하는 방법을 도시하는 흐름도이다.
도 7 및 도 8은 본 발명의 다양한 실시 예들에 따른 프로파일의 예시를 설명하기 위해 도시하는 도면들이다.
도 9는 본 발명의 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 10은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 인터럽트에 대한 알림 출력 방법을 도시하는 흐름도이다.
도 11, 도 12 및 도 13은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스 발생 시 통지 방법을 도시하는 도면들이다.
도 14는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스 실행 방법을 도시하는 흐름도이다.
도 15는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스 실행 방법을 도시하는 흐름도이다.
도 16은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 17은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 도면이다.
도 18은 본 발명의 다양한 실시 예들에 따른 시스템에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 도면이다.
도 19는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 도면이다.
도 20은 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 도면이다.
도 21은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하기 위한 프로파일을 설명하기 위해 도시하는 도면이다.
도 22는 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 도면이다.
도 23은 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 도면이다.
도 24는 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하기 위한 프로파일을 설명하기 위해 도시하는 도면이다.
도 25는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 26은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 27은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 2는 본 발명의 다양한 실시 예들에 따른 전자 장치의 블록도이다.
도 3은 본 발명의 다양한 실시 예들에 따른 프로그램 모듈의 블록도이다.
도 4는 본 발명의 다양한 실시 예들에 따른 시스템 환경을 개략적으로 도시하는 도면이다.
도 5는 본 발명의 다양한 실시 예들에 따른 시스템에서 장치들의 구성을 도시하는 도면이다.
도 6a는 본 발명의 다양한 실시 예들에 따른 전자 장치, 도킹 스테이션 및 외부 장치가 연결된 시스템에서 전자 장치의 동작을 도시하는 흐름도이다.
도 6b는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 다중 프로세스를 수행하는 방법을 도시하는 흐름도이다.
도 7 및 도 8은 본 발명의 다양한 실시 예들에 따른 프로파일의 예시를 설명하기 위해 도시하는 도면들이다.
도 9는 본 발명의 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 10은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 인터럽트에 대한 알림 출력 방법을 도시하는 흐름도이다.
도 11, 도 12 및 도 13은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스 발생 시 통지 방법을 도시하는 도면들이다.
도 14는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스 실행 방법을 도시하는 흐름도이다.
도 15는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스 실행 방법을 도시하는 흐름도이다.
도 16은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 17은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 도면이다.
도 18은 본 발명의 다양한 실시 예들에 따른 시스템에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 도면이다.
도 19는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 도면이다.
도 20은 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 도면이다.
도 21은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하기 위한 프로파일을 설명하기 위해 도시하는 도면이다.
도 22는 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 도면이다.
도 23은 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 도면이다.
도 24는 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하기 위한 프로파일을 설명하기 위해 도시하는 도면이다.
도 25는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 26은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 27은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 흐름도이다.
이하, 본 문서의 다양한 실시 예들이 첨부된 도면을 참조하여 기재된다. 실시 예 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B" 또는 "A 및/또는 B 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", "첫째", 또는 "둘째" 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서, "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, 하드웨어(hardware)적 또는 소프트웨어(software)적으로 "~에 적합한", "~하는 능력을 가지는", "~하도록 변경된", "~하도록 만들어진", "~를 할 수 있는", 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다. 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU(central processing unit) 또는 AP(application processor))를 의미할 수 있다.
본 문서의 다양한 실시 예들에 따른 전자 장치는, 예를 들면, 스마트폰, 태블릿 PC, 이동 전화기, 영상 전화기, 전자책 리더기, 데스크탑 PC, 랩탑 PC, 넷북 컴퓨터, 워크스테이션, 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 의료기기, 카메라, 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(HMD(head-mounted-device), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드(skin pad) 또는 문신), 또는 생체 이식형 회로(implantable circuit) 중 적어도 하나를 포함할 수 있다. 어떤 실시 예들에서, 전자 장치는, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스, 홈 오토매이션 컨트롤 패널, 보안 컨트롤 패널, 미디어 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시 예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(예: 혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 드론(drone), 금융 기관의 ATM(automated teller machine), 상점의 POS(point of sales), 또는 사물 인터넷(IoT(internet of things)) 장치(예: 전구, 각종 센서, 스프링클러 장치, 화재 경보기, 온도조절기, 가로등, 토스터, 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다. 어떤 실시 예에 따르면, 전자 장치는 가구, 건물/구조물 또는 자동차의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터, 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예들에서, 전자 장치는 플렉서블(flexible)하거나, 또는 전술한 다양한 장치들 중 둘 이상의 조합일 수 있다. 본 문서의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다. 본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
도 1은 다양한 실시 예들에 따른 전자 장치를 포함하는 네트워크 환경을 도시하는 도면이다.
도 1을 참조하여, 다양한 실시 예들에서의, 네트워크 환경(100) 내의 전자 장치(101)가 기재된다. 전자 장치(101)는 버스(110), 프로세서(120), 메모리(130), 입출력 인터페이스(150), 디스플레이(160), 및 통신 인터페이스(170)를 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(101)는, 구성요소들 중 적어도 하나를 생략하거나 다른 구성요소를 추가적으로 구비할 수 있다.
버스(110)는 구성요소들(110-170)을 서로 연결하고, 구성요소들 간의 통신(예: 제어 메시지 또는 데이터)을 전달하는 회로를 포함할 수 있다.
프로세서(120)는, 중앙처리장치(CPU), 어플리케이션 프로세서(AP), 또는 커뮤니케이션 프로세서(CP(communication processor)) 중 하나 또는 그 이상을 포함할 수 있다. 프로세서(120)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다. 다양한 실시 예들에 따른 프로세서(120)의 처리(또는 제어) 동작은 후술하는 도면들을 참조하여 구체적으로 설명된다.
메모리(130)는, 휘발성 메모리(volatile memory) 및/또는 비휘발성 메모리(non-volatile memory)를 포함할 수 있다. 메모리(130)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 한 실시 예에 따르면, 메모리(130)는 소프트웨어 및/또는 프로그램(140)을 저장할 수 있다. 프로그램(140)은, 예를 들면, 커널(kernel)(141), 미들웨어(middleware)(143), 어플리케이션 프로그래밍 인터페이스(API(application programming interface))(145), 및/또는 어플리케이션 프로그램(application program)(또는 "어플리케이션")(147) 등을 포함할 수 있다. 커널(141), 미들웨어(143), 또는 API(145)의 적어도 일부는, 운영 시스템(OS(operating system))으로 지칭될 수 있다.
메모리(130)는, 프로세서(120)에 의해 실행되는 하나 또는 그 이상의 프로그램들(one or more programs)을 저장할 수 있고, 입/출력되는 데이터들의 임시 저장을 위한 기능을 수행할 수도 있다. 다양한 실시 예들에 따라, 메모리(130)는 획득된 데이터를 저장하는 역할을 담당하며, 실시간으로 획득된 데이터는 일시적인 저장 장치에 저장할 수 있고, 저장하기로 확정된 데이터는 오래 보관 가능한 저장 장치에 저장할 수 있다. 메모리(130)는, 다양한 실시 예들에 따른 방법을 프로세서(120)에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 포함할 수 있다.
커널(141)은, 예를 들면, 다른 프로그램들(예: 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147))에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)을 제어 또는 관리할 수 있다. 또한, 커널(141)은 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147)에서 전자 장치(101)의 개별 구성요소에 접근함으로써, 시스템 리소스들을 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
미들웨어(143)는, 예를 들면, API(145) 또는 어플리케이션 프로그램(147)이 커널(141)과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 미들웨어(143)는 어플리케이션 프로그램(147)으로부터 수신된 하나 이상의 작업 요청들을 우선 순위에 따라 처리할 수 있다. 예를 들면, 미들웨어(143)는 어플리케이션 프로그램(147) 중 적어도 하나에 전자 장치(101)의 시스템 리소스(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)를 사용할 수 있는 우선 순위를 부여하고, 상기 하나 이상의 작업 요청들을 처리할 수 있다. API(145)는 어플리케이션(147)이 커널(141) 또는 미들웨어(143)에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 창 제어, 영상 처리, 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(function)(예: 명령어)를 포함할 수 있다.
입출력 인터페이스(150)는, 예를 들면, 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 전자 장치(101)의 다른 구성요소(들)에 전달하거나, 또는 전자 장치(101)의 다른 구성요소(들)로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다. 예를 들면, 유/무선 헤드폰 포트(port), 외부 충전기 포트, 유/무선 데이터 포트, 메모리 카드(memory card) 포트, 오디오 입/출력(input/output) 포트, 비디오 입/출력 포트, 이어폰 포트 등이 입출력 인터페이스(150)에 포함될 수 있다.
디스플레이(160)는, 예를 들면, 액정 디스플레이(LCD(liquid crystal display)), 발광 다이오드(LED(light emitting diode)) 디스플레이, 유기 발광 다이오드(OLED(organic LED)) 디스플레이, 또는 마이크로 전자기계 시스템(MEMS(micro-electromechanical systems)) 디스플레이, 또는 전자종이(electronic paper) 디스플레이를 포함할 수 있다. 디스플레이(160)는, 예를 들면, 사용자에게 각종 콘텐츠(예: 텍스트, 이미지, 비디오, 아이콘, 및/또는 심볼 등)을 표시할 수 있다. 디스플레이(160)는, 터치 스크린(touchscreen)을 포함할 수 있으며, 예를 들면, 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스처, 근접, 또는 호버링 입력을 수신할 수 있다.
디스플레이(160)는, 예를 들면, 사용자에게 시각적인 출력(visual output)을 보여줄 수 있다. 시각적 출력은 텍스트(text), 그래픽(graphic), 비디오(video)와 이들의 조합의 형태로 나타날 수 있다. 디스플레이(160)는 전자 장치에서 처리되는 다양한 정보를 표시(출력)할 수 있다. 예를 들면, 디스플레이(160)는 전자 장치의 사용과 관련된 유저 인터페이스(UI(user interface)) 또는 그래픽 유저 인터페이스(GUI(graphical UI))를 표시할 수 있다.
통신 인터페이스(170)는, 예를 들면, 전자 장치(101)와 외부 장치(예: 제 1 외부 전자 장치(102), 제 2 외부 전자 장치(104), 또는 서버(106)) 간의 통신을 설정할 수 있다. 예를 들면, 통신 인터페이스(170)는 무선 통신 또는 유선 통신을 통해서 네트워크(162)에 연결되어 외부 장치(예: 제 2 외부 전자 장치(104) 또는 서버(106))와 통신할 수 있다.
무선 통신은, 예를 들면, LTE(long term evolution), LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(wireless broadband), 또는 GSM(global system for mobile communications) 등 중 적어도 하나를 사용하는 셀룰러 통신을 포함할 수 있다. 한 실시 예에 따르면, 무선 통신은, 예를 들면, WiFi(wireless fidelity), 블루투스(Bluetooth), 블루투스 저전력(BLE(Bluetooth low energy)), 지그비(Zigbee), NFC(near field communication), 자력 시큐어 트랜스미션(magnetic secure transmission), 라디오 프리퀀시(RF(radio frequency)), 또는 보디 에어리어 네트워크(BAN(body area network)) 중 적어도 하나를 포함할 수 있다. 한 실시 예에 따르면, 무선 통신은 GNSS를 포함할 수 있다. GNSS는, 예를 들면, GPS(global positioning system), Glonass(global navigation satellite system), Beidou Navigation Satellite System(이하 “Beidou”) 또는 Galileo, the European global satellite-based navigation system일 수 있다. 이하, 본 문서에서는, “GPS”는 “GNSS”와 상호 호환적으로 사용될 수 있다. 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard232), 전력선 통신(power line communication), 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다.
네트워크(162)는 텔레커뮤니케이션 네트워크(telecommunications network), 예를 들면, 컴퓨터 네트워크(예: LAN(local area network) 또는 WAN(wide area network)), 인터넷, 또는 텔레폰 네트워크(telephone network) 중 적어도 하나를 포함할 수 있다.
제 1 및 제 2 외부 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 다양한 실시 예들에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 전자 장치(예: 전자 장치(102, 104), 또는 서버(106)에서 실행될 수 있다. 한 실시 예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 다른 장치(예: 전자 장치(102, 104), 또는 서버(106))에게 요청할 수 있다. 다른 전자 장치(예: 전자 장치(102, 104), 또는 서버(106))는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅(cloud computing), 분산 컴퓨팅(distributed computing), 또는 클라이언트-서버 컴퓨팅(client-server computing) 기술이 이용될 수 있다.
도 2는 다양한 실시 예들에 따른 전자 장치의 블록도이다.
전자 장치(201)는, 예를 들면, 도 1에 도시된 전자 장치(101)의 전체 또는 일부를 포함할 수 있다. 전자 장치(201)는 하나 이상의 프로세서(예: AP)(210), 통신 모듈(220), 가입자 식별 모듈(224), 메모리(230), 센서 모듈(240), 입력 장치(250), 디스플레이(260), 인터페이스(270), 오디오 모듈(280), 카메라 모듈(291), 전력 관리 모듈(295), 배터리(296), 인디케이터(297), 및 모터(298) 를 포함할 수 있다.
프로세서(210)는, 예를 들면, 운영 체제 또는 어플리케이션 프로그램을 구동하여 프로세서(210)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(210)는, 예를 들면, SoC(system on chip)로 구현될 수 있다. 한 실시 예에 따르면, 프로세서(210)는 GPU(graphic processing unit) 및/또는 이미지 시그널 프로세서(ISP(image signal processor))를 더 포함할 수 있다. 프로세서(210)는 도 2에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈(221))를 포함할 수도 있다. 프로세서(210)는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드하여 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다.
통신 모듈(220)은, 예를 들면, 도 1에 도시된 통신 인터페이스(170)와 동일 또는 유사한 구성을 가질 수 있다. 통신 모듈(220)은, 예를 들면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227), NFC 모듈(228) 및 RF 모듈(229)을 포함할 수 있다.
셀룰러 모듈(221)은, 예를 들면, 통신 네트워크를 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 한 실시 예에 따르면, 셀룰러 모듈(221)은 가입자 식별 모듈(예: SIM(subscriber identification module) 카드)(224)을 이용하여 통신 네트워크 내에서 전자 장치(201)의 구별 및 인증을 수행할 수 있다. 한 실시 예에 따르면, 셀룰러 모듈(221)은 프로세서(210)가 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 한 실시 예에 따르면, 셀룰러 모듈(221)은 커뮤니케이션 프로세서(CP)를 포함할 수 있다. 어떤 실시 예에 따르면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227) 또는 NFC 모듈(228) 중 적어도 일부(예: 두 개 이상)는 하나의 IC(integrated chip) 또는 IC 패키지 내에 포함될 수 있다.
RF 모듈(229)은, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. RF 모듈(229)은, 예를 들면, 트랜시버(transceiver), PAM(power amp module), 주파수 필터, LNA(low noise amplifier), 또는 안테나(antenna) 등을 포함할 수 있다. 다른 실시 예에 따르면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227) 또는 NFC 모듈(228) 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다.
WiFi 모듈(223)은, 예를 들면, 무선 인터넷 접속 및 다른 외부 장치(예: 다른 전자 장치(102) 또는 서버(106) 등)와 무선 랜 링크(link)를 형성하기 위한 모듈을 나타낼 수 있다. WiFi 모듈(223)은 전자 장치(400)에 내장되거나 외장될 수 있다. 무선 인터넷 기술로는 WiFi, Wibro, WiMax(world interoperability for microwave access), HSDPA(high speed downlink packet access), 또는 mmWave(millimeter Wave) 등이 이용될 수 있다. WiFi 모듈(223)은 전자 장치와 네트워크(예: 무선 인터넷 네트워크)(예: 네트워크(162))를 통해 연결되어 있는 다른 외부 장치(예: 다른 전자 장치(104) 등)와 연동하여, 전자 장치의 다양한 데이터들을 외부로 전송하거나, 또는 외부로부터 수신할 수 있다. WiFi 모듈(223)은 상시 온(on) 상태를 유지하거나, 전자 장치의 설정 또는 사용자 입력에 따라 턴-온(turn-on)/턴-오프(turn-off) 될 수 있다.
블루투스 모듈(225) 및 NFC 모듈(228)은, 예를 들면, 근거리 통신(short range communication)을 수행하기 위한 근거리 통신 모듈을 나타낼 수 있다. 근거리 통신 기술로 블루투스, 저전력 블루투스(BLE), RFID(radio frequency identification), 적외선 통신(IrDA), UWB(ultra wideband), 지그비(Zigbee), 또는 NFC 등이 이용될 수 있다. 근거리 통신 모듈은 전자 장치와 네트워크(예: 근거리 통신 네트워크)를 통해 연결되어 있는 다른 외부 장치(예: 다른 전자 장치(102) 등)와 연동하여, 전자 장치의 다양한 데이터들을 외부 장치로 전송하거나 수신 받을 수 있다. 근거리 통신 모듈은 상시 온 상태를 유지하거나, 전자 장치의 설정 또는 사용자 입력에 따라 턴-온/턴-오프 될 수 있다.
가입자 식별 모듈(224)은, 예를 들면, 가입자 식별 모듈을 포함하는 카드 또는 임베디드 SIM을 포함할 수 있으며, 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다.
메모리(230)(예: 메모리(130))는, 예를 들면, 내장 메모리(232) 또는 외장 메모리(234)를 포함할 수 있다. 내장 메모리(232)는, 예를 들면, 휘발성 메모리(예: DRAM(dynamic RAM(random access memory)), SRAM(synchronous RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(예: OTPROM(one time programmable ROM(read only memory)), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically EPROM), mask ROM, flash ROM, 플래시 메모리, 하드 드라이브, 또는 솔리드 스테이트 드라이브(SSD(solid state drive)) 중 적어도 하나를 포함할 수 있다. 외장 메모리(234)는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱 등을 포함할 수 있다. 외장 메모리(234)는 다양한 인터페이스를 통하여 전자 장치(201)와 기능적으로 또는 물리적으로 연결될 수 있다.
센서 모듈(240)은, 예를 들면, 물리량을 계측하거나 전자 장치(201)의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 센서 모듈(240)은, 예를 들면, 제스처 센서(gesture sensor)(240A), 자이로 센서(gyro sensor)(240B), 기압 센서(barometer sensor)(240C), 마그네틱 센서(magnetic sensor)(240D), 가속도 센서(acceleration sensor)(240E), 그립 센서(grip sensor)(240F), 근접 센서(proximity sensor)(240G), 컬러 센서(color sensor)(240H)(예: RGB(red, green, blue) 센서), 생체 센서(medical sensor)(240I), 온/습도 센서(temperature-humidity sensor)(240J), 조도 센서(illuminance sensor)(240K), 또는 UV(ultra violet) 센서(240M) 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대체적으로(additionally or alternatively), 센서 모듈(240)은, 예를 들면, 후각(e-nose) 센서, 일렉트로마이오그라피(EMG(electromyography)) 센서, 일렉트로엔씨팔로그램 센서(EEG(electroencephalogram) sensor), 일렉트로카디오그램 센서(ECG(electrocardiogram) sensor), IR(infrared) 센서, 홍채 센서(iris scan sensor) 및/또는 지문 센서(finger scan sensor)를 포함할 수 있다. 센서 모듈(240)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(201)는 프로세서(210)의 일부로서 또는 별도로, 센서 모듈(240)을 제어하도록 구성된 프로세서를 더 포함하여, 프로세서(210)가 슬립(sleep) 상태에 있는 동안, 센서 모듈(240)을 제어할 수 있다.
입력 장치(250)는, 예를 들면, 터치 패널(252), (디지털) 펜 센서(254), 키(256), 또는 초음파 입력 장치(258)를 포함할 수 있다. 터치 패널(252)은, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 터치 패널(252)은 제어 회로를 더 포함할 수도 있다. 터치 패널(252)은 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다. (디지털) 펜 센서(254)는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 쉬트를 포함할 수 있다. 키(256)는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 초음파 입력 장치(258)는 마이크(288)를 통해, 입력 도구에서 발생된 초음파를 감지하여, 상기 감지된 초음파에 대응하는 데이터를 확인할 수 있다.
디스플레이(260)(예: 디스플레이(160))는 패널(262), 홀로그램 장치(264), 프로젝터(266), 및/또는 이들을 제어하기 위한 제어 회로를 포함할 수 있다.
패널(262)은, 예를 들면, 유연하게, 투명하게, 또는 착용할 수 있게 구현될 수 있다. 패널(262)은 터치 패널(252)과 하나 이상의 모듈로 구성될 수 있다. 한 실시 예에 따르면, 패널(262)은 사용자의 터치에 대한 압력의 세기를 측정할 수 있는 압력 센서(또는 포스 센서)를 포함할 수 있다. 상기 압력 센서는 터치 패널(252)과 일체형으로 구현되거나, 또는 터치 패널(252)과는 별도의 하나 이상의 센서로 구현될 수 있다. 홀로그램 장치(264)는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 프로젝터(266)는 스크린에 빛을 투사하여 영상을 표시할 수 있다. 스크린은, 예를 들면, 전자 장치(201)의 내부 또는 외부에 위치할 수 있다.
인터페이스(270)는, 예를 들면, HDMI(272), USB(274), 광 인터페이스(optical interface)(276), 또는 D-sub(D-subminiature)(278)를 포함할 수 있다. 인터페이스(270)는, 예를 들면, 도 1에 도시된 통신 인터페이스(170)에 포함될 수 있다. 추가적으로 또는 대체적으로, 인터페이스(270)는, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD카드/MMC(multi-media card) 인터페이스, 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다.
오디오 모듈(280)은, 예를 들면, 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 오디오 모듈(280)의 적어도 일부 구성요소는, 예를 들면, 도 1 에 도시된 입출력 인터페이스(145)에 포함될 수 있다. 오디오 모듈(280)은, 예를 들면, 스피커(282), 리시버(284), 이어폰(286), 또는 마이크(288) 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다. 오디오 모듈(280)은 프로세서(210)로부터 입력 받은 오디오 신호를 출력 장치(예: 스피커(282), 리시버(284) 또는 이어폰(286))로 전송하고, 입력 장치(예: 마이크(288))로부터 입력 받은 음성 등의 오디오 신호를 프로세서(210)에 전달하는 기능을 수행할 수 있다. 오디오 모듈(280)은 음성/음향 데이터를 프로세서(210)의 제어에 따라 출력 장치를 통해 가청음으로 변환하여 출력하고, 입력 장치로부터 수신되는 음성 등의 오디오 신호를 디지털 신호로 변환하여 프로세서(210)에게 전달할 수 있다.
스피커(282) 또는 리시버(284)는 통신 모듈(220)로부터 수신되거나, 또는 메모리(230)에 저장된 오디오 데이터를 출력할 수 있다. 스피커(282) 또는 리시버(284)는 전자 장치에서 수행되는 다양한 동작(기능)과 관련된 음향 신호를 출력할 수도 있다. 마이크(288)는 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리할 수 있다. 마이크(288)에는 외부의 음향 신호를 입력 받는 과정에서 발생되는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘(noise reduction algorithm)이 구현될 수 있다. 마이크(288)는 음성 명령 등과 같은 오디오 스트리밍의 입력을 담당할 수 있다.
카메라 모듈(291)은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시 예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, 이미지 시그널 프로세서(ISP), 또는 플래시(예: LED 또는 xenon lamp 등)를 포함할 수 있다.
전력 관리 모듈(295)은, 예를 들면, 전자 장치(201)의 전력을 관리할 수 있다. 한 실시 예에 따르면, 전력 관리 모듈(295)은 PMIC(power management integrated circuit), 충전 IC, 배터리 또는 연료 게이지(fuel gauge)를 포함할 수 있다. PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 배터리 게이지는, 예를 들면, 배터리(296)의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 배터리(296)는, 예를 들면, 충전식 전지(rechargeable battery) 및/또는 태양 전지(solar battery)를 포함할 수 있다.
인디케이터(297)는 전자 장치(201) 또는 그 일부(예: 프로세서(210))의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터(298)는 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동, 또는 햅틱 효과 등을 발생시킬 수 있다. 전자 장치(201)는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting), 또는 미디어플로(mediaFloTM) 등의 규격에 따른 미디어 데이터를 처리할 수 있는 모바일 TV 지원 장치(예: GPU)를 포함할 수 있다.
본 문서에서 기술된 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시 예들에서, 전자 장치(예: 전자 장치(101, 201))는 일부 구성요소가 생략되거나, 추가적인 구성요소를 더 포함하거나, 또는, 구성요소들 중 일부가 결합되어 하나의 개체로 구성되되, 결합 이전의 해당 구성요소들의 기능을 동일하게 수행할 수 있다.
도 3은 다양한 실시 예들에 따른 프로그램 모듈의 블록도이다.
한 실시 예에 따르면, 프로그램 모듈(310)(예: 프로그램(140))은 전자 장치(예: 전자 장치(101, 201))에 관련된 자원을 제어하는 운영 체제 및/또는 운영 체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 프로그램(147))을 포함할 수 있다. 운영 체제는, 예를 들면, AndroidTM, iOSTM, WindowsTM, SymbianTM, TizenTM, 또는 BadaTM를 포함할 수 있다.
도 3을 참조하면, 프로그램 모듈(310)은 커널(320)(예: 커널(141)), 미들웨어(330)(예: 미들웨어(143)), API(360)(예: API(145)), 및/또는 어플리케이션(370)(예: 어플리케이션 프로그램(147))을 포함할 수 있다. 프로그램 모듈(310)의 적어도 일부는 전자 장치 상에 프리로드(preload) 되거나, 외부 전자 장치(예: 전자 장치(102, 104), 서버(106) 등)로부터 다운로드(download) 가능하다.
커널(320)은, 예를 들면, 시스템 리소스 매니저(321) 및/또는 디바이스 드라이버(323)를 포함할 수 있다. 시스템 리소스 매니저(321)는 시스템 리소스의 제어, 할당, 또는 회수를 수행할 수 있다. 한 실시 예에 따르면, 시스템 리소스 매니저(321)는 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부를 포함할 수 있다. 디바이스 드라이버(323)는, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, WiFi 드라이버, 오디오 드라이버, 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다. 미들웨어(330)는, 예를 들면, 어플리케이션(370)이 공통적으로 필요로 하는 기능을 제공하거나, 어플리케이션(370)이 전자 장치 내부의 제한된 시스템 자원을 사용할 수 있도록 API(360)를 통해 다양한 기능들을 어플리케이션(370)으로 제공할 수 있다.
한 실시 예에 따르면, 미들웨어(330)는 런타임 라이브러리(runtime library)(335), 어플리케이션 매니저(application manager)(341), 윈도우 매니저(window manager)(342), 멀티미디어 매니저(multimedia manager)(343), 리소스 매니저(resource manager)(344), 파워 매니저(power manager)(345), 데이터베이스 매니저(database manager)(346), 패키지 매니저(package manager)(347), 커넥티비티 매니저(connectivity manager)(348), 노티피케이션 매니저(notification manager)(349), 로케이션 매니저(location manager)(350), 그래픽 매니저(graphic manager)(351), 또는 시큐리티 매니저(security manager)(352) 중 적어도 하나를 포함할 수 있다.
런타임 라이브러리(335)는, 예를 들면, 어플리케이션(370)이 실행되는 동안에 프로그래밍 언어(programming language)를 통해 새로운 기능을 추가하기 위해 컴파일러(compiler)가 사용하는 라이브러리 모듈을 포함할 수 있다. 런타임 라이브러리(335)는 입출력 관리, 메모리 관리, 또는 산술 함수 처리를 수행할 수 있다.
어플리케이션 매니저(341)는, 예를 들면, 어플리케이션(370)의 생명 주기(life cycle)를 관리할 수 있다. 윈도우 매니저(342)는 화면에서 사용되는 GUI(graphical user interface) 자원을 관리할 수 있다. 멀티미디어 매니저(343)는 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱을 이용하여 미디어 파일의 인코딩 또는 디코딩을 수행할 수 있다. 리소스 매니저(344)는 어플리케이션(370)의 소스 코드 또는 메모리의 공간을 관리할 수 있다. 파워 매니저(345)는, 예를 들면, 배터리의 용량 또는 전원을 관리하고, 전자 장치의 동작에 필요한 전력 정보를 제공할 수 있다. 한 실시 예에 따르면, 파워 매니저(345)는 바이오스(BIOS(basic input/output system))와 연동할 수 있다. 데이터베이스 매니저(346)는, 예를 들면, 어플리케이션(370)에서 사용될 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 패키지 매니저(347)는 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 갱신을 관리할 수 있다.
커넥티비티 매니저(348)는, 예를 들면, 무선 연결을 관리할 수 있다. 노티피케이션 매니저(349)는, 예를 들면, 도착 메시지, 약속, 근접성 알림 등의 이벤트를 사용자에게 제공할 수 있다. 로케이션 매니저(350)는, 예를 들면, 전자 장치의 위치 정보를 관리할 수 있다. 그래픽 매니저(351)는, 예를 들면, 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 시큐리티 매니저(352)는, 예를 들면, 시스템 보안 또는 사용자 인증을 제공할 수 있다.
한 실시 예에 따르면, 미들웨어(330)는 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화(telephony) 매니저 또는 전술된 구성요소들의 기능들의 조합을 형성할 수 있는 하는 미들웨어 모듈을 포함할 수 있다. 한 실시 예에 따르면, 미들웨어(330)는 운영 체제의 종류 별로 특화된 모듈을 제공할 수 있다. 미들웨어(330)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다.
API(360)는, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠의 경우, 플랫폼 별로 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션(370)은, 예를 들면, 홈(371), 다이얼러(372), SMS/MMS(373), IM(instant message)(374), 브라우저(375), 카메라(376), 알람(377), 컨택트(378), 음성 다이얼(379), 이메일(380), 달력(381), 미디어 플레이어(382), 앨범(383), 와치(384), 헬스 케어(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보(예: 기압, 습도, 또는 온도 정보) 제공 어플리케이션을 포함할 수 있다.
한 실시 예에 따르면, 어플리케이션(370)은 전자 장치와 외부 전자 장치 사이의 정보 교환을 지원할 수 있는 정보 교환 어플리케이션을 포함할 수 있다. 정보 교환 어플리케이션은, 예를 들면, 외부 전자 장치에 특정 정보를 전달하기 위한 노티피케이션 릴레이(notification relay) 어플리케이션, 또는 외부 전자 장치를 관리하기 위한 장치 관리(device management) 어플리케이션을 포함할 수 있다. 예를 들면, 노티피케이션 릴레이 어플리케이션은 전자 장치의 다른 어플리케이션에서 발생된 알림 정보를 외부 전자 장치로 전달하거나, 또는 외부 전자 장치로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. 장치 관리 어플리케이션은, 예를 들면, 전자 장치와 통신하는 외부 전자 장치의 기능(예: 외부 전자 장치 자체(또는, 일부 구성 부품)의 턴-온(turn-on)/턴-오프(turn-off) 또는 디스플레이의 밝기(또는, 해상도) 조절), 또는 외부 전자 장치에서 동작하는 어플리케이션을 설치, 삭제, 또는 갱신할 수 있다. 한 실시 예에 따르면, 어플리케이션(370)은 외부 전자 장치의 속성에 따라 지정된 어플리케이션(예: 모바일 의료 기기의 건강 관리 어플리케이션)을 포함할 수 있다.
한 실시 예에 따르면, 어플리케이션(370)은 외부 전자 장치로부터 수신된 어플리케이션을 포함할 수 있다. 프로그램 모듈(310)의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어(예: 프로세서(210)), 또는 이들 중 적어도 둘 이상의 조합으로 구현(예: 실행)될 수 있으며, 하나 이상의 기능을 수행하기 위한 모듈, 프로그램, 루틴, 명령어 세트 또는 프로세스를 포함할 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛(unit)을 포함하며, 예를 들면, 로직(logic), 논리 블록(logic block), 부품(component), 또는 회로(circuit) 등의 용어와 상호 호환적으로 사용될 수 있다. "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있으며, 예를 들면, 어떤 동작들을 수행하는, 알려졌거나 앞으로 개발될, ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays), 또는 프로그램 가능 논리 장치를 포함할 수 있다. 다양한 실시 예들에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 저장 매체(예: 메모리(130))에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다.
컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(magnetic media)(예: 자기테이프), 광기록 매체(optical recording media)(예: CD-ROM(compact disc read only memory), DVD(digital versatile disc), 자기-광 매체(magneto-optical media)(예: 플롭티컬 디스크(floptical disk)), 내장 메모리 등을 포함할 수 있다. 명령어는 컴파일러에 의해 만들어지는 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 다양한 실시 예들에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 다른 구성요소를 더 포함할 수 있다.
다양한 실시 예들에 따른, 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
본 발명의 다양한 실시 예들에 따른 전자 장치는, 통신 기능을 지원하며, AP, CP, GPU, 및 CPU 등의 다양한 프로세서 중 하나 또는 그 이상을 사용하는 모든 장치를 포함할 수 있다. 예를 들면, 다양한 실시 예들에 따른 전자 장치는, 통신 기능 지원하는 모든 정보통신기기, 멀티미디어기기, 웨어러블 장치(wearable device), IoT 기기, 또는 그에 대한 응용기기를 포함할 수 있다.
이하에서, 첨부 도면을 참조하여 본 발명의 다양한 실시 예들에 따른 동작 방법 및 장치에 대하여 살펴보기로 한다. 하지만, 본 발명의 다양한 실시 예들이 하기에서 기술하는 내용에 의해 제한되거나 한정되는 것은 아니므로, 하기의 실시 예에 의거하여 다양한 실시 예들에 적용할 수 있음에 유의하여야 한다. 이하에서 설명되는 본 발명의 다양한 실시 예들에서는 하드웨어적인 접근 방법을 예시로서 설명한다. 하지만, 본 발명의 다양한 실시 예들에서는 하드웨어와 소프트웨어를 모두 사용하는 기술을 포함하고 있으므로, 본 발명의 다양한 실시 예들이 소프트웨어 기반의 접근 방법을 제외하는 것은 아니다.
도 4는 본 발명의 다양한 실시 예들에 따른 시스템 환경을 개략적으로 도시하는 도면이다.
도 4를 참조하면, 다양한 실시 예들에 따른 시스템은, 전자 장치(400), 도킹 스테이션(500), 그리고 외부 장치(600)를 포함할 수 있다. 예를 들면, 도 4는 전자 장치(400), 도킹 스테이션(500) 및 도킹 스테이션(500)에 연결되는 적어도 하나의 외부 장치(500)가 연결되는 예시를 나타낼 수 있다.
다양한 실시 예들에서, 전자 장치(400)는 디스플레이(410)와, 디스플레이(410)가 안착되어 체결되는 하우징(또는 본체)(420)과, 하우징(420)에 형성되어 전자 장치(400)의 기능 수행을 위한 부가 장치 등을 포함하여 구성될 수 있다. 다양한 실시 예들에서 부가 장치는 제1 스피커(401), 제2 스피커(403), 마이크(405), 센서(예: 전면 카메라 모듈(407), 조도 센서(409) 등), 통신 인터페이스(예: 충전 또는 데이터 입/출력(Input/Output) 포트(411), 오디오 입/출력 포트(413) 등), 버튼(415) 등을 포함할 수 있다.
다양한 실시 예들에서, 디스플레이(410)는 평면형 디스플레이 또는 종이처럼 얇고 유연한 기판을 통해 손상 없이 휘거나 구부리거나 말 수 있는 벤디드 디스플레이를 포함할 수 있다. 벤디드 디스플레이는 하우징(420)에 체결되어 구부러진 형태를 유지할 수 있다. 다양한 실시 예들에서 전자 장치(400)는 벤디드 디스플레이와 같은 형태를 비롯하여, 플렉서블 디스플레이(flexible display)와 같이 구부렸다가 폈다가를 자유자재로 할 수 있는 디스플레이 장치로 구현될 수도 있다. 다양한 실시 예들에서 디스플레이(410)는 액정 디스플레이(LCD, liquid crystal display), 발광다이오드(LED, light emitting diode), 유기발광다이오드(OLED, organic LED) 및 능동형 OLED(AMOLED, active matrix OLED) 등에서 액정을 싸고 있는 유리 기판을 플라스틱 필름으로 대체하여, 접고 펼 수 있는 유연성을 부여할 수 있다.
다양한 실시 예들에서, 전자 장치(400)는 도킹 스테이션(500)과 연결할 수 있다. 다양한 실시 예들에서 전자 장치(400)는 무선 통신(예: 제1 무선 통신 또는 제2 무선 통신) 기술에 기반하여 도킹 스테이션(500)과 연결될 수 있다. 다양한 실시 예들에서 제1 무선 통신은 초고속 근접 통신으로, 예를 들면, 60GHz 주파수 대역을 이용하는 무선 통신을 포함할 수 있다. 다양한 실시 예들에서 제2 무선 통신은 근거리 무선 통신으로, 예를 들면, 블루투스, 저전력 블루투스(BLE, Bluetooth low energy), 와이파이(WiFi), 와이기그(WiGig) 등의 통신을 포함할 수 있다.
다양한 실시 예들에서, 전자 장치(400)는 제1 무선 통신 또는 제2 무선 통신 중 적어도 하나를 이용하여 도킹 스테이션(500)과 연결할 수 있다. 예를 들면, 전자 장치(400)는 외부 장치(600)에 관련된 데이터를 제1 무선 통신을 이용하여 도킹 스테이션(500)에 전송하거나, 외부 장치(600)에 관련된 데이터를 제2 무선 통신을 이용하여 도킹 스테이션(500)에 전송하거나, 외부 장치(600)에 관련된 데이터를 제1 무선 통신과 제2 무선 통신을 이용하여 도킹 스테이션(500)에 전송할 수 있다.
다양한 실시 예들에서, 전자 장치(400)는 도킹 스테이션(500)과 연결되면, 도킹 스테이션(500)에 연결된 외부 장치(600)의 장치 정보를 판단할 수 있다. 다양한 실시 예들에서, 전자 장치(400)는 외부 장치(600)의 장치 정보에 기초하여, 외부 장치(600)를 구분할 수 있고, 도킹 스테이션(500)을 통해 외부 장치(600)와 사용자 요청에 대응하는 프로세스(process)(또는 작업, 동작 등)를 수행할 수 있다. 예를 들면, 전자 장치(400)는 외부 장치(600)와 PC 모드, 비디오 모드, 또는 오디오 모드 등으로 동작할 수 있고, 각 모드에 따른 데이터를 제1 무선 통신을 이용하여 도킹 스테이션(500)으로 전송하는 프로세스를 처리할 수 있다. 도킹 스테이션(500)은 전자 장치(400)로부터 제1 무선 통신을 이용하여 데이터를 수신하고, 수신된 데이터를 외부 장치(600)와 연결된 다른 통신(예: 유선 통신(예: HDMI), 무선 통신(예: WiFi) 등)을 이용하여 외부 장치(600)에 전달할 수 있다. 외부 장치(600)는 도킹 스테이션(500)으로부터 다른 통신을 이용하여 데이터를 수신하고 외부 장치(600)에 대응하는 데이터 출력(예: 비디오 출력, 오디오 출력 등)을 처리할 수 있다.
다양한 실시 예들에서, 전자 장치(400)는 도킹 스테이션(500)과 제1 무선 통신으로 연결되어 제1 프로세스(예: 기존 프로세스)를 수행하는 중에, 제2 프로세스(예: 신규 프로세스)에 관련된 이벤트 발생을 감지할 수 있다. 다양한 실시 예들에서, 전자 장치(400)는 제2 프로세스에 대응하여, 기존 제1 프로세스를 유지, 중지 또는 변경하고, 새로운 제2 프로세스를 처리할 수 있다. 다양한 실시 예들에 따라, 전자 장치(400)는 다른 장치들(예: 도킹 스테이션(500), 외부 장치(600))와 연동하여 프로세스를 수행할 시, 다양한 상황에 대응하는 프로파일에 기초하여 하나 또는 그 이상의 프로세스를 처리할 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 도킹 스테이션(500)의 제1 프로세스 및/또는 제2 프로세스에 관련된 동작을 제어할 시, 프로파일에 기초하여 제1 프로세스 및/또는 제2 프로세스 처리에 필요한 리소스를 재할당(분배)하여 프로세스를 처리할 수 있다. 한 실시 예에 따라, 전자 장치(400)는 도킹 스테이션(500)과 제1 무선 통신에 기초하여 수행하는 제1 프로세스에 대해, 도킹 스테이션(500)과 연결 상태를 고려하여 리소스를 재할당하고, 제2 무선 통신에 기초하여 제1 프로세스에 관련된 동작을 계속하여 처리할 수도 있다. 다양한 실시 예들에 따라, 전자 장치(400)가 프로세스를 처리하는 동작에 대하여 후술하는 도면들을 참조하여 상세히 설명된다. 예를 들면, 후술하는 도면들을 통해, 다양한 실시 예들에서, 전자 장치(400)가 도킹 스테이션(500)과 제1 무선 통신의 연결 상태와 신규 프로세스에 따라 동작을 제어하는 예시들에 대해 설명된다.
다양한 실시 예들에서, 전자 장치(400)는 도킹 스테이션(500)과 연동하여 충전(예: 유선 충전 또는 무선 충전)될 수 있다. 예를 들면, 전자 장치(400)는 도킹 스테이션(500)에 안착될 시 도킹 스테이션(500)으로부터 공급되는 전압에 기초하여 충전 동작을 수행할 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 도킹 스테이션(500)으로부터 전기적 회로를 통해 전송된 전력을 전기적 회로를 통해 인가 받을 수 있고, 인가된 전력에 기반하여 내부 배터리를 충전할 수 있다.
다양한 실시 예들에 따르면, 전자 장치(400)는 충전 전력(예: 충전 전압 및 충전 전류)에 관련된 정보(예: 전력 정보)를 도킹 스테이션(500)과 통신을 이용하여 교환할 수 있다. 예를 들어, 전자 장치(400)와 도킹 스테이션(500)은 각각의 전기적 회로를 통해 정보 송수신을 위한 통신을 수행할 수 있다. 또는 전자 장치(400)와 도킹 스테이션(500)은 제1 무선 통신(예: 초고속(또는 60GHz) 근접 통신) 또는 제2 무선 통신(예: BLE, Zigbee, NFC 등)을 통해 정보 송수신을 위한 통신을 수행할 수 있다.
다양한 실시 예들에 따르면, 전자 장치(400)는 도킹 스테이션(500)으로부터 복수의 충전 전력들 중 적어도 하나의 충전 전력을 선택적으로 수신할 수 있다. 전자 장치(400)는 선택된 적어도 하나의 충전 전력을 이용하여 배터리 충전을 처리할 수 있다. 예를 들면, 전자 장치(400)는 도킹 스테이션(400)으로부터 제1 충전 전력(예: 일반 충전 전력)을 수신하고, 수신되는 제1 충전 전력에 대응하여 충전을 수행할 수 있다. 전자 장치(400)는 도킹 스테이션(500)과의 통신을 통하여 일반 충전 시에 이용되는 제1 충전 전력 보다 큰 제2 충전 전력(예: 고속 충전 전력)을 도킹 스테이션(500)에 요청할 수 있다. 이에 따라, 전자 장치(400)는 도킹 스테이션(500)으로부터 제2 충전 전력에 대응되는 전력을 공급 받을 수 있다. 다양한 실시 예들에 따르면, 전자 장치(400)는 도킹 스테이션(500)으로부터 공급된 제2 충전 전력을 이용하여 고속 충전을 수행할 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 요청된 제2 충전 전력이 공급되지 않으면, 도킹 스테이션(500)으로부터 공급되는 전력(예: 제1 충전 전력)을 이용하여 일반 충전을 수행할 수 있다. 다양한 실시 예들에 따르면, 전자 장치(400)의 배터리는 전원을 공급하는 전원 공급 장치(예: 트래블 어댑터(TA, travel adapter) 또는 파워 서플라이(power supply))의 출력 전력을 직접 공급받아 충전할 수도 있다.
다양한 실시 예들에 따른 전자 장치(400)는 도킹 스테이션(500)으로부터 무선으로 전력을 공급받을 수 있다. 전자 장치(400)는 도킹 스테이션(500)으로부터 무선으로 전력을 공급받을 수 있는 적어도 하나의 코일을 포함할 수 있다. 도킹 스테이션(500)은 무선으로 전력을 전자 장치(400)로 제공할 수 있는 적어도 하나의 코일을 포함할 수 있다. 또는, 전자 장치(400)는 도킹 스테이션(500)으로부터 핑(ping) 신호, 트리거(trigger) 신호 또는 데이터를 수신할 수 있다. 전자 장치(400)는 무선으로 충전이 이루어지는 동안에 도킹 스테이션(500)과 데이터 송수신을 수행할 수 있다.
도킹 스테이션(500)은 전자 장치(400)로 무선으로 전력을 제공할 수 있다. 도킹 스테이션(500)은 전자 장치(400)로 무선으로 전력을 제공하는 중에 전자 장치(400)와 데이터를 송수신할 수 있다. 도킹 스테이션(500)은 유무선을 통해 적어도 하나의 외부 장치(600, 710, 720)와 연결될 수 있다. 도킹 스테이션(500)은 전자 장치(400)와 적어도 하나의 외부 장치(600, 710, 720) 간에 송수신되는 데이터를 포워딩(forwarding)할 수 있다.
다양한 실시 예들에 따라, 도킹 스테이션(500)은 미리 정의된 주파수 범위로 전자 장치(400)와 데이터를 송수신할 수 있다. 다양한 실시 예들에서, 데이터는 비압축 시청각 데이터를 포함할 수 있다. 다양한 실시 예들에서, 미리 정의된 주파수 범위는 55GHz 내지 66GHz의 범위를 포함할 수 있다. 다양한 실시 예들에서, 미리 정의된 주파수 범위는 55GHz 내지 66GHz을 포함하는 것으로 기술하였으나, 55GHz 내지 66GHz의 범위뿐만 아니라 이보다 작은 주파수 범위 또는 이보다 큰 주파수 범위를 포함할 수 있다.
다양한 실시 예들에서, 도킹 스테이션(500)은 전자 장치(400)와 제1 무선 통신으로 연결되어, 전자 장치(400)에서 전송되는 데이터(예: 비디오, 오디오 등)를 수신하고, 수신된 데이터를 외부 장치(600)와 연결된 통신을 통해 전달하는 장치를 나타낼 수 있다.
다양한 실시 예들에서, 도킹 스테이션(500)은 하우징(또는 본체)(580)을 포함할 수 있고, 예를 들면, 하우징(580)은 전자 장치(400)가 착탈 가능하도록 장착 또는 안착되는 부분, 스피커, 전력 인터페이스, 제어 회로, 배터리, 무선 통신 회로(예: 초고속 근접 통신을 위한 통신 회로, 근거리 무선 통신을 위한 통신 회로), 메모리, 또는 프로세서 등을 포함할 수 있다. 한 실시 예에 따르면, 도킹 스테이션(500)은 충전 장치일 수 있다.
다양한 실시 예들에서, 도킹 스테이션(500)은 제1 무선 통신 또는 제2 무선 통신 중 적어도 하나를 이용하여 전자 장치(400)와 연결할 수 있다. 예를 들면, 도킹 스테이션(500)은 제1 무선 통신을 이용하여 전자 장치(400)로부터 외부 장치(600)에 관련된 데이터를 수신하거나, 제2 무선 통신을 이용하여 전자 장치(400)로부터 외부 장치(600)에 관련된 데이터를 수신하거나, 또는 제1 무선 통신과 제2 무선 통신을 이용하여 전자 장치(400)로부터 외부 장치(600)에 관련된 데이터를 수신할 수 있다.
다양한 실시 예들에서, 도킹 스테이션(500)은 적어도 하나의 배터리를 포함할 수 있고, 전자 장치(400)를 충전하기 위한 충전 회로를 포함할 수 있다. 다양한 실시 예들에서 도킹 스테이션(500)은 무선 충전을 위한 코일을 포함하여 구성될 수 있다. 다양한 실시 예들에 따르면, 도킹 스테이션(500)은 전원 공급 장치(미도시)(예: 트래블 어댑터(TA) 또는 파워 서플라이)에서 직류(DC, direct current) 전원이 공급되면, DC 전원을 교류(AC, alternating current) 전력으로 변환하여 전기적 회로(예: 충전 단자)(또는 무선 충전을 위한 송신 코일)을 통해 전력을 전자 장치(400)에 전송하는 동작을 수행할 수 있다. 다양한 실시 예들에서 전원 공급 장치는 도킹 스테이션(500)과 일체의 장치로 포함되거나, 또는 별도의 장치(예: 충전기)로 구현될 수 있다.
다양한 실시 예들에 따르면, 도킹 스테이션(500)은 전자 장치(400)와의 통신을 통하여 제1 충전 전력 보다 큰 제2 충전 전력에 대한 요청을 수신할 수 있다. 한 실시 예에 따르면, 도킹 스테이션(500)은 전원 공급 장치와의 통신을 통하여 제2 충전 전력을 전원 공급 장치에 전달하고, 제2 충전 전력을 공급하도록 전원 공급 장치를 제어할 수 있다. 예를 들어, 도킹 스테이션(500)은 전자 장치(400)에 대한 일반 충전 시보다 더 높은 출력 전압을 전원 공급 장치에 요청하고, 전원 공급 장치로부터 일반 충전 시보다 더 높은 출력 전압을 공급 받도록 제어할 수 있다.
외부 장치(600)는 도킹 스테이션(500)과 유선 또는 무선 중 적어도 하나의 통신 방식으로 연결되고, 도킹 스테이션(500)으로부터 전자 장치(400)가 전송하는 데이터를 수신하여 출력하는 다양한 장치를 포함할 수 있다. 예를 들면, 외부 장치(600)는 디스플레이 장치(예: 모니터, VR 장치)와 오디오 출력 장치 등과 같이 데이터의 출력이 가능한 다양한 장치일 수 있다. 다양한 실시 예들에 따라 외부 장치(600)는 주변 장치(예: 마우스, 키보드 등)와 유선 또는 무선으로 연결될 수 있다.
다양한 실시 예들에서는, 도킹 스테이션(500)과 외부 장치(600)를 독립적인 구성으로 도시하였으나, 이에 한정되지는 않는다. 한 실시 예에 따르면, 도킹 스테이션(500)과 외부 장치(600)를 하나의 장치에 의해 구현할 수도 있다. 예를 들면, 외부 장치(600)는 도킹 스테이션(500)을 포함하는 장치로 구성될 수 있다.
이상에서 도 4를 참조하여 살펴본 바와 같이, 전자 장치(400)와 도킹 스테이션(500)은 다양한 무선 통신 기술에 기반하여 연결될 수 있고, 예를 들면, 제1 무선 통신 또는 제2 무선 통신 중 적어도 하나에 의해 연결될 수 있다. 다양한 실시 예들에서, 제1 무선 통신은 초고속 근접 통신으로, 예를 들면, 60GHz 근접 통신을 포함할 수 있고, 제2 무선 통신은 제1 무선 통신 외에 근거리 무선 통신으로, 예를 들면, WiFi, WiGig, 블루투스, BLE, AoBLE 등의 다양한 근거리 통신을 포함할 수 있다.
최근에는 정보의 광대역화 및 초고속화에 대한 요구가 증가하고 있으며, 이러한 요구에 적합한 밀리미터파 대역(예: 30GHz ~ 300GHz)에 대한 연구가 활발히 진행되고 있다. 밀리미터파 대역과 마이크로파 대역의 경계인 20GHz ~ 40GHz 대역은 과거 위성 통신 등에서 발전된 기술을 바탕으로 현재 고정 및 이동용으로 확장되고 있으며, 최근 관심이 높아지고 있는 주파수 대역이 60GHz 대역(대략 55GHz ~ 65GHz)이다. 아래 <표 1>은 초고속 근접 통신(예: 60GHz)과 근거리 통신(예: WiFi, WiGig) 간의 특성을 나타낸다.
초고속 근접 통신 (60GHz 근접 통신) |
WiGig / WiFi | ||
품질 | Latency | 20mS 내외 | > 70mS (예상) |
Data rate 화면 끊김 |
3Gbps (화면 끊김 없음) |
Max 3Gbps (사용환경에 따라 가변적) 환경변화에 의한 끊김 |
|
통신거리 | < 10cm | 10m 내외 | |
연결 | 설정 없이 연결, 즉시 연결 | 설정 필요 |
<표 1>에 나타낸 바와 같이, 초고속 근접 통신(60GHz 대역)은, 반송파 주파수가 높기 때문에 허용 주파수 대역폭이 수 GHz 까지도 가능하므로, 초고속(예: Gbps 급) 데이터 전송이나 멀티미디어 데이터 전송에 적합할 수 있다. 60GHz 대역의 전파 특성은 대기중의 산소 분자에 의한 흡수 현상 때문에 동일채널 간섭 확률이 작아진다. 따라서 동일한 주파수를 재사용하므로 경제적인 시스템의 구성이 가능할 수 있다. 또한 60GHz 대역의 파장은 밀리미터 단위로 아주 작기 때문에 안테나 및 RF 송수신기의 소형 경량화가 가능하다. 따라서 송신 신호를 수신 안테나까지 전달하기 위하여 고이득 안테나의 사용이 가능하다. 안테나에서 방출되는 전자파의 빔폭은 안테나의 지름에 반비례하므로 파장이 짧을수록 안테나를 작게 만들 수 있다. 또한 도파관과 같이 파장에 비례하는 크기를 가지는 소자들도 소형화 효과가 있으므로 장비의 소형화가 가능하다. 또한 60GHz 대역의 신호는 기본적으로 저전력(예: 수십 mW 단위)을 사용하고 있다.
전자 장치(400)는, 전술한 바와 같은 제1 무선 통신을 이용하여 초고화질(예: FHD 급) 무압축 영상의 순간 전송이 가능할 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 전자 장치(400)에 저장된 2시간 분량의 영화(예: 약 650Mb)를 10Cm 이내에 있는 다른 장치(예: 도킹 스테이션(500), 또는 다른 전자 장치)에 1초 정도의 시간으로 전송할 수 있으며, 전송 지연이나 화질 저화 없이 고화질 영상 스트리밍을 제공할 수 있다.
도 5는 본 발명의 다양한 실시 예들에 따른 시스템에서 장치들의 구성을 도시하는 도면이다.
도 5를 참조하면, 다양한 실시 예들에 따른 전자 장치(400)는, 예를 들면, 전원 제어부(511), 무선 충전부(512), 제1 무선 통신부(513)(예: 근접 통신부), 근접 센싱부(514), 제2 무선 통신부(515) 및 프로세서(120)를 포함할 수 있다. 그리고, 전자 장치(400)와 도킹 스테이션(500) 사이에는 무선 근접 통신(예: 60GHz, WiGig, WiFi 등)이 가능하며, 무선 충전이 이루어질 수 있다. 그리고, 도킹 스테이션(500)과 외부 장치(600, 710, 720, 730)간에는 유무선으로 연결될 수 있다. 도킹 스테이션(500)은 자신과 연결된 마우스(710), 키보드(720), USB(730) 및 모니터(600)(또는 TV 등)와 배타적(exclusive)으로 연결될 수 있다. 다양한 실시 예들에서, 전자 장치(400)는 도 5에 도시된 구성들이 필수적인 것은 아니어서, 도 5에 도시된 구성들보다 많은 구성들을 가지거나, 또는 그 보다 적은 구성들을 가지는 것으로 구현될 수 있다. 예를 들면, 전자 장치(400)는 도 1 또는 도 2의 전자 장치와 동일 또는 유사한 구성을 가질 수 있다.
다양한 실시 예들에 따르면, 전원 제어부(511)는 프로세서(120)의 제어에 따라 전자 장치(400)의 하우징(420)에 배치되는 하나 또는 복수의 배터리(도시되지 아니함)에 전원을 공급할 수 있다. 전원 제어부(511)에 포함될 수 있는 하나 또는 복수의 배터리(도시되지 아니함)는 전자 장치(400)에 전원을 공급할 수 있다. 일 실시 예에 따르면, 전원 제어부(511)는 유선 케이블을 통해 외부의 전원 소스(도시되지 아니함)에서부터 입력되는 전원을 전자 장치(400)로 공급할 수 있다. 일 실시 예에 따르면, 전원 제어부(511)는 무선 충전을 통해 도킹 스테이션(500)으로부터 무선으로 입력되는 전원을 전자 장치(400)로 공급할 수도 있다. 전원 제어부(511)는 무선 충전부(512)에 구비된 무선 전력 송수신 도전성 패턴(또는 코일)을 통해 도킹 스테이션(500)으로부터 무선으로 전력을 공급받을 수 있다.
다양한 실시 예에 따르면, 무선 충전부(512)는 도킹 스테이션(500)으로부터 전력을 무선으로 수신하기 위한 인터페이스, 유도 결합 및 커플링, 레이저 또는 빛 등을 통해서 무선으로 전력을 공급 받을 수 있으며, 전력을 수신할 때 가능한 통신 자원(resource)을 이용하여 데이터 통신을 수행할 수 있다. 예를 들면, 인밴드(inband) 데이터 통신의 예약(reserved) 영역을 이용하는 경우, 무선 충전부(512)는 근접 통신(예: 초고속 근접 통신)의 유무 및 초기 정보의 송수신이 가능하며, 이는 도킹 스테이션(500)의 지원 기능을 인식하는데 사용될 수 있다. 또는, 영상 재생이 가능한 도킹 스테이션(500)과 전자 장치(400)가 서로 연결되어 있는 경우, 전자 장치(400)는 자동으로 도킹 스테이션(500)으로 영상 관련한 정보를 전송할 수 있고, 음악 재생이 가능하면 자동으로 도킹 스테이션(500)으로 음악 관련한 정보를 전송할 수 있다.
무선 충전부(512)는 도킹 스테이션(500)으로부터 무선으로 전력을 제공받는 충전 회로를 포함할 수 있다. 무선 충전부(512)는 도킹 스테이션(500)으로부터 도킹 스테이션(500)에 관한 정보 또는 도킹 스테이션(500)에 연결된 외부 장치(600, 710, 720, 730))에 관한 정보 중 적어도 일부를 수신할 수 있다. 무선 충전부(512)는 도킹 스테이션(500)의 감지에 대응하여 도킹 스테이션(500)으로부터 핑(ping) 신호를 수신할 수 있다.
무선 충전부(512)는, 예를 들면, 배터리, 배터리 잔량 측정 회로(예: fuel gauge), 전력관리 집적회로(PMIC, power management integrated circuit), 승압 회로, 충전 IC(charger Integrated Circuit) 등을 포함할 수 있다. 다양한 실시 예들에 따르면, 무선 충전부(512)는 무선 충전 방식을 위한 충전 IC를 포함할 수 있다. 다양한 실시 예들에서, 무선 충전 방식으로는, 예를 들면, 전자기 공진 방식, 자기 유도 방식 또는 전자기파 방식 등이 있으며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일, 코일 루프, 공진 회로 또는 정류기 등의 회로가 추가될 수 있다. 다양한 실시 예들에 따라, 전자 장치(400)는 배터리를 포함할 수 있고, 전자 장치(400)의 배터리는 도킹 스테이션(500)을 통해 무선 충전할 수 있다. 다양한 실시 예들에 따르면, 전자 장치(400)의 배터리는 전원을 공급하는 전원 공급 장치(예: 트래블 어댑터(TA, travel adapter) 또는 파워 서플라이(power supply))의 출력 전력을 직접 공급받아 충전할 수도 있다.
다양한 실시 예들에 따르면, 제1 무선 통신부(513)는 외부 입출력 및/또는 저장 장치, USB 허브(hub), 네트워크 연결부, 디스플레이 연결부 또는 컨버터 칩(converter chip)을 포함하는 마이크로 컨트롤러(micro controller)를 통해서 데이터 통신이 가능하며, PCIe(peripheral component interconnect express) 방식과 USB 방식을 통해서 통신 허브를 구성할 수 있다. 제1 무선 통신부(513)는 도킹 스테이션(500)과 미리 정의된 주파수 범위를 갖는 무선 통신을 지원하는 무선 통신 회로를 통해서 도킹 스테이션(500)과 데이터를 송수신할 수 있다. 다양한 실시 예들에서, 미리 정의된 주파수 범위는 55GHz 내지 66GHz의 범위를 포함할 수 있다. 또는 다양한 실시 예들에 따라, 미리 정의된 주파수 범위는 55GHz 내지 66GHz의 범위뿐만 아니라 이보다 작은 주파수 범위 또는 이보다 큰 주파수 범위를 포함할 수 있다. 제1 무선 통신부(513)는 도킹 스테이션(500)으로부터 도킹 스테이션(500)에 관한 정보 또는 도킹 스테이션(500)에 연결된 적어도 하나의 외부 장치(600, 710, 720, 730)에 관한 정보 중 적어도 일부를 수신할 수 있다. 전자 장치(400)는 제1 무선 통신부(513)를 통해 도킹 스테이션(500)과 근접 통신이 가능해지면, 제1 무선 통신부(513)를 통해 도킹 스테이션(500)과 근접 통신을 연결하고, 도킹 스테이션(500)으로부터 도킹 스테이션(500)의 세부 정보를 수신할 수 있다.
한 실시 예에 따르면, 제1 무선 통신부(513)는, 전자 장치(400)와 도킹 스테이션(500) 사이의 제1 무선 통신(예: 60GHz 대역의 초고속 근접 통신)을 가능하게 하는 모듈을 포함할 수 있다. 예를 들면, 제1 무선 통신부(513)는 전술한 <표 1>을 참조한 바와 같이, ISM(industrial scientific medical) 대역(band)인 60GHz 대역의 4채널을 사용하여 USB 3.0의 데이터 레이트(예: 3Gbps)를 무선으로 전송할 수 있고, 대역폭(bandwidth)는, 예를 들면, 2.16GHz를 사용하며, 유효 거리는 0Cm ~ 10Cm로 도킹 스테이션(500)에 근접하여 즉시, 인식 및 구동할 수 있도록 구성될 수 있다. 예를 들면, 제1 무선 통신부(513)는 도킹 스테이션(500)과 무선 신호를 송수신할 수 있다. 무선 신호는 음성 신호, 데이터 신호 또는 다양한 형태의 제어 신호를 포함할 수 있다. 제1 무선 통신부(513)는 전자 장치(400)의 동작에 필요한 다양한 데이터들을 사용자 요청에 응답하여 도킹 스테이션(500)로 전송할 수 있다. 제1 무선 통신부(513)는 전력 소모 측면에서 유리하고 전자 장치(400)와 도킹 스테이션(500)이 유효 거리 내에서 접촉하여 제1 무선 통신을 제공할 수 있다.
다양한 실시 예들에 따르면, 근접 센싱부(514)는 적어도 하나의 센서를 포함할 수 있다. 근접 센싱부(514)는 도 2의 센서 모듈(240)에 수행되는 적어도 하나의 동작 또는 기능을 수행할 수 있다. 근접 센싱부(514)는 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(400)는 프로세서(120)의 일부로서 또는 별도로, 센서 모듈(240)을 제어하도록 구성된 프로세서를 더 포함하여, 프로세서(120)가 슬립(sleep) 상태에 있는 동안, 센서 모듈(240)을 제어할 수 있다. 근접 센싱부(514)는 도킹 스테이션(500)으로부터 트리거 신호를 수신할 수 있다. 전자 장치(400)는 BLE(bluetooth low energy), 압력 센서, 근접 센서, 자석, NFC(near field communication) 또는 WiGig 중 적어도 하나를 이용하여 도킹 스테이션(500)을 검출할 수 있다. 또한, 전자 장치(400)는 상술한 것들 이외에 다양한 방법으로 도킹 스테이션(500)을 검출할 수 있고, 도킹 스테이션(500)으로부터 이러한 검출에 대응되는 트리거 신호를 수신할 수 있다.
다양한 실시 예들에 따르면, 제2 무선 통신부(515)는, 예를 들면, 도 2의 WiFi 모듈(223)과 동일 또는 유사한 구성을 가질 수 있다. 또는 제2 무선 통신부(515)는, 예를 들면, 밀리미터파(mmWave, millimeter Wave) 통신(예: WiGig 통신)을 수행하기 위한 모듈을 포함할 수 있다. 또는 제2 무선 통신부(515)는, 예를 들면, 근거리 통신(short range communication)을 수행하기 위한 모듈을 포함할 수 있다. 다양한 실시 예들에 따라, 근거리 통신 기술로, 예를 들면, 블루투스(Bluetooth), 저전력 블루투스(BLE, Bluetooth Low Energy), RFID(Radio Frequency IDentification), 적외선 통신(IrDA, Infrared Data Association), UWB(Ultra Wideband), 지그비(ZigBee), 또는 NFC(Near Field Communication) 등이 이용될 수 있다. 제2 무선 통신부(515)는 전자 장치(400)와 도킹 스테이션(500) 사이, 또는 전자 장치(400)와 외부 장치(600) 사이에서 제2 무선 통신에 기초하여 무선 신호를 송수신할 수 있다.
다양한 실시 예들에 따라, 제2 무선 통신부(515)는, 제1 무선 통신(예: 초고속 근접 통신)과는 별개로 전자 장치(400)에서 지원 가능한 다른 다양한 통신 방식을 지원하는 블록을 나타낼 수 있다. 다양한 실시 예들에서는, 전자 장치(400)와 도킹 스테이션(500)이 제1 무선 통신이 기본으로 연결된 상태에서 추가적인 통신을 더 구성하고 연결하여 사용성을 확장할 수 있다. 예를 들면, 제2 무선 통신부(515)는 제2 무선 통신 방식으로, 전자 장치(400)가 도킹 스테이션(500) 또는 외부 장치(600)와의 연결을 수행함에 있어 보조적으로 도움을 제공할 수 있다. 한 실시 예에 따르면, 제2 무선 통신부(515)에 의한 제2 무선 통신을 통해, 전자 장치(400)와 도킹 스테이션(500) 사이의 접촉이 해제되어 제1 무선 통신이 해제되는 경우(예: 전자 장치(400)와 도킹 스테이션(500)이 잠시 떨어질 경우)가 발생할 수 있다. 이러한 경우, 다양한 실시 예들에서는, 제1 무선 통신의 연결 대신에, 제2 무선 통신부(515)에 의한 제2 무선 통신을 사용하여 전자 장치(400)와 도킹 스테이션(500) 사이의 연결을 지속하거나 다른 추가적인 연결을 지원하도록 할 수 있다.
다양한 실시 예들에 따르면, 프로세서(120)는 도 1의 프로세서(120)에서 수행되는 적어도 하나의 동작 또는 기능을 수행할 수 있다. 프로세서(120)는 전자 장치(400)의 적어도 하나의 다른 구성요소들의 제어, 통신에 관한 연산이나 데이터 처리 및/또는 무선 전력 송수신 모드를 실행하거나 제어할 수 있다. 프로세서(120)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서(120)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(120)는 적어도 하나의 센서를 포함하는 근접 센싱부(514), 도킹 스테이션(500)으로부터 무선으로 전력을 제공받는 충전 회로를 포함하는 무선 충전부(512) 및 도킹 스테이션(500)과 미리 정의된 주파수 범위를 갖는 무선 통신을 지원하는 무선 통신 회로를 통해서 도킹 스테이션(500)으로 데이터를 전송하는 제1 무선 통신부(513)를 제어할 수 있고, 도킹 스테이션(500)으로부터 수신된 정보를 통해서 도킹 스테이션(500)에 대응되도록 설정을 변경할 수 있다. 프로세서(120)는 무선 충전부(512) 및 제1 무선 통신부(513) 중 적어도 하나를 제어하여 도킹 스테이션(500)으로부터 도킹 스테이션(500)에 관한 정보 또는 도킹 스테이션(500)에 연결된 적어도 하나의 외부 장치(600, 710, 720, 730)에 관한 정보 중 적어도 일부를 수신할 수 있다. 프로세서(120)는 도킹 스테이션(500)의 감지에 대응하여 도킹 스테이션(500)으로부터 핑(ping) 신호가 무선 충전부(512)를 통해 수신되면, 수신된 핑 신호로부터 도킹 스테이션(500)의 근접 통신(예: 초고속 근접 통신) 가능 여부 및 무선 충전 가능 여부를 판단할 수 있다. 예를 들면, 프로세서(120)는 도킹 스테이션(500)과의 근접 통신이 가능하면, 도킹 스테이션(500)과 근접 통신을 연결하고, 연결된 근접 통신을 통해 도킹 스테이션(500)으로부터 도킹 스테이션(500)의 세부 정보를 수신하고, 핑 신호 또는 세부 정보 중 적어도 하나의 적어도 일부에 기반하여 도킹 스테이션(500)에 필요한 설정 변경 및 어플리케이션을 실행할 수 있다. 또는, 예를 들면, 프로세서(120)는 근접 센싱부(514)를 통해 도킹 스테이션(500)으로부터 트리거 신호가 수신되면, 도킹 스테이션(500)과 근접 통신(예: 초고속 근접 통신)을 연결하고, 연결된 근접 통신을 통해 도킹 스테이션(500)으로부터 수신되는 도킹 스테이션(500)에 관한 정보를 수신하고, 정보의 적어도 일부에 기반하여 도킹 스테이션(500)에 필요한 설정 변경 및 어플리케이션을 실행할 수 있다.
프로세서(120)는 도킹 스테이션(500)과의 접속이 유지된 상태에서 도킹 스테이션(500)으로부터 미리 결정된 시간 동안 핑 신호가 수신되지 않으면, 도킹 스테이션(500)과의 데이터 경로 및 유저 인터페이스를 변경하고, 제1 무선 통신부(513)를 비활성화할 수 있다.
프로세서(120)는 도킹 스테이션(500)에 연결된 외부 장치가 영상 출력 장치(예: 600)이면, 디스플레이(예: 160, 410)에 표시된 화면을 영상 출력 장치에서 출력되는 화면으로 구성하여 도킹 스테이션(500)으로 전송할 수 있다. 그리고, 프로세서(120)는 도킹 스테이션(500)이 어떤 성격(또는 사양, 특성)을 갖는 장치인지 확인할 수 있으며, 도킹 스테이션(500)에서 어떤 동작을 수행해야 하는지 등을 판단하고 수행할 수 있다.
프로세서(120)는 전자 장치(400)의 전반적인 동작을 제어할 수 있다. 다양한 실시 예들에서, 프로세서(120)는, 예를 들면, 도 1의 프로세서(120) 또는 도 2의 프로세서(210)와 동일 또는 유사한 구성을 가질 수 있다. 다양한 실시 예들에서, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500) 또는 전자 장치(400)와 외부 장치(600, 710, 720, 730) 사이의 데이터 통신과 관련된 동작을 처리할 수 있다. 다양한 실시 예들에 따라, 프로세서(120)는 전자 장치(400)와 다른 장치(예: 도킹 스테이션(500), 외부 장치(600)) 간의 연동에 따른 동작 시, 대응되는 프로파일에 기초하여 리소스를 할당(분배)하여 프로세스를 처리할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 전자 장치(400), 도킹 스테이션(500), 그리고 외부 장치(600, 710, 720, 730) 간의 연결을 제어하고, 전자 장치(400)에서 도킹 스테이션(500)과의 연결 상태에 기초하여 데이터 통신을 적응적으로 변경하여 수행하는 것과 관련된 동작을 제어할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 전자 장치(400)가 도킹 스테이션(500)을 통해 연결된 외부 장치(예: 600)를 구분하고, 기존 프로세스 진행 중에 신규 프로세스 발생 시 도킹 스테이션(500)과 제1 무선 통신(예: 초고속 근접 통신)의 연결 상태에 따라 외부 장치(예: 600)를 위한 데이터 통신을 자동 변경하여 다중 프로세스를 처리하는 것과 관련된 동작을 제어할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 전자 장치(400)가 도킹 스테이션(500)에 연결되고, 이후에 전자 장치(400)에 의해 새로운 프로세스가 발생하는 경우, 기존 프로세스와 새로운 프로세스를 끊김 없이(seamless) 처리하는 것과 관련된 동작을 제어할 수 있다.
본 발명의 다양한 실시 예들에 따른 프로세서(120)의 제어 동작은 후술하는 도면들을 참조하여 구체적으로 설명된다. 본 발명의 다양한 실시 예들에 따르면, 프로세서(120)는 메모리(예: 도 1의 메모리(130), 도 2의 메모리(230))에 저장되는 하나 또는 그 이상의 프로그램들을 실행하여 본 발명의 다양한 실시 예들에 따른 전자 장치(400)의 동작을 제어하는 하나 또는 그 이상의 프로세서들(one or more processors)로 구현될 수 있다.
다양한 실시 예들에 따른 도킹 스테이션(500)은, 예를 들면, 근접 센싱부(520), 무선 충전부(523), 메모리(522), 디스플레이 처리부(525), 제3 무선 통신부(524)(예: 근접 통신부), 제4 무선 통신부(530), 허브/스위치부(527), USB 단자(528), 전원부(526), 유무선 통신부(529) 및 제어부(521)를 포함할 수 있다. 그리고, 도킹 스테이션(500)은 다양한 외부 장치(예: 모니터(또는 TV 등)(600), 키보드(710), 마우스(720) 및 USB(730)) 중 적어도 하나와 연결될 수 있다. 도킹 스테이션(500)은 외부 장치(600, 710, 720, 730)와 배타적(exclusive)으로 연결될 수 있다. 도킹 스테이션(500)은 외부 장치(600, 710, 720, 730) 중 적어도 하나와 연결되면, 연결됨을 알리는 정보를 전자 장치(400)로 전송할 수 있다. 다양한 실시 예들에서, 정보는 연결된 적어도 하나의 외부 장치(600, 710, 720, 730)에 대한 정보, 적어도 하나의 외부 장치(600, 710, 720, 730)와 연결된 USB 설정 정보를 포함할 수 있다. 한 실시 예에 따라, 외부 장치(600)(예: 모니터, TV)는 도킹 스테이션(500)의 디스플레이 처리부(525)에 연결될 수 있으며, 외부 장치(예: 키보드(710), 마우스(720) 및 USB(730)는 도킹 스테이션(500)의 USB 단자(528)에 연결될 수 있다. 다양한 실시 예들에서, 도킹 스테이션(500)은 도 5에 도시된 구성들이 필수적인 것은 아니어서, 도 5에 도시된 구성들보다 많은 구성들을 가지거나, 또는 그 보다 적은 구성들을 가지는 것으로 구현될 수 있다. 예를 들면, 도킹 스테이션(500)은 도 1 또는 도 2의 전자 장치에 대응되는 유사한 구성을 가질 수 있다.
다양한 실시 예들에 따르면, 근접 센싱부(520)는 적어도 하나의 센서를 포함할 수 있다. 근접 센싱부(520)는 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 근접 센싱부(514)는 전자 장치(400)로 트리거 신호를 전송할 수 있다. 도킹 스테이션(500)은 BLE, 압력 센서, 근접 센서, 자석, NFC 또는 WiGig 중 적어도 하나를 이용하여 전자 장치(400)를 검출할 수 있다. 또한, 도킹 스테이션(500)은 상술한 것들 이외에 다양한 방법으로 전자 장치(400)를 검출할 수 있고, 전자 장치(400)로부터 이러한 검출에 대응되는 트리거 신호를 전송할 수 있다.
다양한 실시 예들에 따르면, 무선 충전부(523)는 전자 장치(400)로 전력을 무선으로 제공하기 위한 인터페이스, 유도 결합 및 커플링, 레이저 또는 빛 등을 통해서 무선으로 전력을 공급할 수 있으며, 전력을 공급할 때 가능한 통신 자원을 이용하여 데이터 통신을 수행할 수 있다. 예를 들면, 인밴드(inband) 데이터 통신의 예약(reserved) 영역을 이용하는 경우, 무선 충전부(523)는 근접 통신(예: 초고속 근접 통신)의 유무 및 초기 정보의 송수신이 가능하며, 이는 전자 장치(400)의 지원 기능을 인식하는데 사용될 수 있다. 또는, 영상 재생이 가능한 외부 장치(예: 600)로부터 수신되는 영상 관련 데이터를 전자 장치(400)로 전송할 수 있고, 음악 재생이 가능한 외부 장치로부터 수신되는 음악 관련한 정보를 전자 장치(400)로 전송할 수 있다.
무선 충전부(523)는 전자 장치(400)로 전력을 제공하기 위한 충전 회로를 포함할 수 있다. 무선 충전부(523)는 전자 장치(400)로 도킹 스테이션(500)에 관한 정보 또는 도킹 스테이션(500)에 연결된 적어도 하나의 외부 장치(600, 710, 720, 730)에 관한 정보 중 적어도 일부를 전송할 수 있다. 무선 충전부(523)는 전자 장치(400)의 감지에 대응하여 전자 장치(400)로부터 핑(ping) 신호를 전송할 수 있다.
무선 충전부(523)는, 무선 충전을 위한 코일을 포함하여 구성될 수 있고, 전원 공급 장치(미도시)(예: 트래블 어댑터(TA) 또는 파워 서플라이)에서 직류(DC, Direct Current) 전원이 공급되면, DC 전원을 교류(AC, Alternating Current) 전력으로 변환하여 전기적 회로(예: 충전 단자)(또는 무선 충전을 위한 송신 코일을 통해 전력을 전자 장치(400)에 전송하는 동작을 수행할 수 있다. 다양한 실시 예들에 따라, 무선 충전부(523)는 전자 장치(400)와 도킹 스테이션(500) 사이에서 제1 무선 통신(예: 초고속 근접 통신)의 유/무 및 초기 정보를 송수신 하는 것을 지원할 수 있다. 이를 통해, 다양한 실시 예들에서는, 전자 장치(400) 또는 외부 장치(600)의 지원 기능을 인식, 또는 전자 장치(400)나 외부 장치(600, 710, 720, 730)의 연결에 필요한 정보를 주고 받을 수도 있다.
다양한 실시 예들에 따르면, 메모리(522)는 외부 장치(600, 710, 720, 730)의 식별자를 저장할 수 있다. 또는, 메모리(522)는 적어도 하나의 외부 장치(600, 710, 720, 730)를 그룹화한 정보를 저장할 수 있다. 또는, 메모리(522)는 전자 장치(400)와 적어도 하나의 외부 장치(600, 710, 720, 730) 간에 송수신되는 데이터를 저장할 수 있다.
다양한 실시 예들에 따르면, 제3 무선 통신부(524)는 미리 정의된 주파수 범위를 갖는 무선 통신을 지원하는 무선 통신 회로를 통해서 전자 장치(400)와 데이터를 송수신할 수 있다. 다양한 실시 예들에서, 미리 정의된 주파수 범위는 55GHz 내지 66GHz의 범위를 포함할 수 있다. 또는, 미리 정의된 주파수 범위는 55GHz 내지 66GHz의 범위뿐만 아니라 이보다 작은 주파수 범위 또는 이보다 큰 주파수 범위를 포함할 수 있다. 제3 무선 통신부(524)는 전자 장치(400)로 도킹 스테이션(500)에 관한 정보 또는 도킹 스테이션(500)에 연결된 적어도 하나의 외부 장치(600, 710, 720, 730)에 관한 정보 중 적어도 일부를 전송할 수 있다. 도킹 스테이션(500)은 제3 무선 통신부(524)를 통해 전자 장치(400)와 근접 통신이 가능해지면, 제3 무선 통신부(524)를 통해 전자 장치(400)와 근접 통신을 연결하고, 전자 장치(400)로 도킹 스테이션(500)의 세부 정보를 전송할 수 있다. 제3 무선 통신부(524)는 외부 입출력 및/또는 저장 장치, USB 허브, 네트워크 연결부, 디스플레이 연결부 또는 컨버터 칩을 포함하는 마이크로 컨트롤러를 통해서 데이터 통신이 가능하며, 전자 장치(400)와 쉽게 연결될 수 있다.
제3 무선 통신부(524)는, 다양한 실시 예들에서, 전자 장치(400)와 도킹 스테이션(500) 사이의 제1 무선 통신(예: 60GHz 대역의 초고속 근접 통신)을 가능하게 하는 모듈을 포함할 수 있다. 예를 들면, 제3 무선 통신부(524)는 전자 장치(400)로부터 제1 무선 통신을 통해 전송되는 데이터를 수신할 수 있다. 제3 무선 통신부(524)는 제1 무선 통신을 통해 수신된 데이터를 USB 방식이나 PCIe 기반 방식을 사용하여 외부 장치(600)에 전달할 수 있다. 다양한 실시 예들에서 제3 무선 통신부(524)는 전술한 전자 장치(400)의 제1 무선 통신부(513) 구성에 대응할 수 있으며, 그의 상세한 설명은 생략하기로 한다.
제4 무선 통신부(530)는, 예를 들면, 제1 무선 통신과는 별개로 도킹 스테이션(500)에서 지원 가능한 다른 제2 무선 통신을 지원하는 모듈을 포함할 수 있다. 다양한 실시 예들에서 제4 무선 통신부(530)는 전자 장치(400)와 직접 통신을 하거나, 또는 외부 장치(600, 710, 720, 730)와의 연결을 지원할 수 있다. 제4 무선 통신부(530)는, 도킹 스테이션(500)에 포함하지 않을 수도 있다. 제4 무선 통신부(530)는 전술한 전자 장치(400)의 제2 무선 통신부(515) 구성에 대응할 수 있으며, 그의 상세한 설명은 생략하기로 한다.
다양한 실시 예들에 따르면, 디스플레이 처리부(525)는 전자 장치(400)로부터 수신되는 영상 관련 데이터를 모니터, TV 등과 같은 외부 장치(600)로 전송할 수 있다. 디스플레이 처리부(525)는 USB 또는 HDMI 단자를 통해 영상을 재생하는 장치로 영상 관련 데이터를 전송할 수 있다.
다양한 실시 예들에 따르면, 허브/스위치부(527)는 USB 단자(528)와 유무선 통신부(529)를 스위칭하여 데이터 송수신을 제어할 수 있다. 예를 들면, 송수신되는 데이터를 재생하는 외부 장치가 도킹 스테이션(500)과 USB 단자(528)로 연결되어 있는 경우, 허브/스위치부(527)는 송수신되는 데이터를 USB 단자(528)로 스위칭할 수 있다. 또는, 송수신되는 데이터를 재생하는 외부 장치가 도킹 스테이션(500)과 유무선 통신부(529)를 통해 연결되어 있는 경우, 허브/스위치부(527)는 송수신되는 데이터를 유무선 통신부(529)로 스위칭할 수 있다.
다양한 실시 예들에 따르면, USB 단자(528)는 적어도 하나의 USB를 연결할 수 있는 단자를 포함할 수 있다. USB 단자(528)는 외부 장치(예: 키보드(710), 마우스(720) 또는 USB(730)) 중 적어도 하나와 연결될 수 있다. 또는, USB 단자(528)는 외부 장치(600)(예: 모니터, TV)와 연결될 수 있다.
다양한 실시 예들에 따르면, 유무선 통신부(529)는 LAN 또는 WiFi를 통해 적어도 하나의 외부 장치와 연결되어 통신을 수행할 수 있다. 또는, 유무선 통신부(529)는 LAN 또는 WiFi 이외에 외부 장치(600, 710, 720, 730)와 통신을 수행할 수 있는 다른 통신 모듈을 포함할 수 있다. 예를 들면, HDMI, USB, 광 인터페이스, 또는 D-sub 등이 유무선 통신부(529)에 포함될 수 있다.
다양한 실시 예들에 따르면, 전원부(526)는 외부로부터 AC(alternating current) 전원(예: 220V)을 인가 받고, 인가 받은 AC 전원을 DC(direct current) 전원으로 변환할 수 있다. 전원부(526)는 통상적으로 벽에 설치된 콘센트에 도킹 스테이션(500)의 단자(예: 어뎁터)를 삽입함으로써, 외부로부터 전원을 공급받을 수 있다. 그리고, 전원부(526)는 외부로부터 공급받은 220V의 AC 전원을 5V 또는 9V의 DC 전원으로 변환할 수 있다. 전원부(526)는 변환된 5V 또는 9V의 DC 전원을 10V~20V로 승압할 수 있는 가변 DC/DC 소자를 포함할 수 있다.
다양한 실시 예들에 따르면, 제어부(521)는 도킹 스테이션(500)의 표면에 구성되는 전기적 도전 코일을 통해 전자 장치(400)로 전력을 무선으로 제공하기 위해 도킹 스테이션(500)의 전반적인 동작을 제어할 수 있다. 제어부(521)는 도킹 스테이션(500)에 관한 정보 또는 도킹 스테이션(500)에 연결된 적어도 하나의 외부 장치(600, 710, 720, 730)에 관한 정보 중 적어도 일부를 무선 충전부(523) 또는 제1 무선 통신부(524) 중 적어도 하나를 통해 전자 장치(400)로 전송할 수 있다. 제어부(521)는 전자 장치(400)로 전송된 핑 신호에 응답하는 응답 신호의 수신에 대응하여 전자 장치(400)의 근접 통신(예: 초고속 근접 통신) 가능 여부 및 무선 충전 가능 여부를 판단할 수 있다. 예를 들면, 전자 장치(101)가 근접 통신이 가능하면, 제어부(521)는 도킹 스테이션(500)의 세부 정보를 무선 충전부(523)를 통해 전자 장치(400)로 전송할 수 있다. 다양한 실시 예들에서, 세부 정보는 도킹 스테이션(500)의 식별자, 상태, 사양, 인증 또는 보안 등에 관련된 정보 중 적어도 하나를 포함할 수 있다. 예를 들면, 충전이 요구되지 않은 전자 장치(400)가 감지되면, 제어부(521)는 도킹 스테이션(500)에 관한 정보를 제1 무선 통신부(524)를 통해 전자 장치(400)로 전송할 수 있다. 적어도 하나의 외부 장치와의 연결에 대응하여 식별자를 포함하는 정보가 수신되면, 제어부(521)는 수신된 식별자를 통해 적어도 하나의 외부 장치를 분류하고, 분류된 결과를 전자 장치(400)로 전송할 수 있다. 제어부(521)는 연결된 적어도 하나의 외부 장치를 우선순위 또는 종류에 따라 분류할 수 있다. 제어부(521)는 전자 장치(400)와의 접속이 유지된 상태에서 미리 결정된 시간 동안 전송된 핑 신호에 응답하는 응답 신호가 전자 장치(400)로부터 수신되지 않으면, 전자 장치(400)와의 근접 통신(예: 초고속 근접 통신)을 비활성화할 수 있다. 제어부(521)는 전자 장치(400)를 판별할 수 있으며, 전자 장치(400)로 하여금 도킹 스테이션(500)이 인식될 수 있도록 정보를 전송하고 통신 가능한 상태로 전환할 수 있으며, 정보에 기초하여 무선 충전 또는 근접 통신에 연관된 동작을 수행할 수 있다.
제어부(521)는 도킹 스테이션(500)의 전반적인 동작을 제어할 수 있다. 다양한 실시 예들에서, 제어부(521)는, 예를 들면, 도 2의 프로세서(210)와 동일 또는 유사한 구성을 가질 수 있다. 다양한 실시 예들에서, 제어부(521)는 도킹 스테이션(500)과 전자 장치(400) 또는 도킹 스테이션(500)과 외부 장치(600, 710, 720, 730) 사이의 데이터 통신과 관련된 동작을 처리할 수 있다. 다양한 실시 예들에 따라, 제어부(521)는 전자 장치(400), 도킹 스테이션(500), 그리고 외부 장치(600, 710, 720, 730) 간의 연결을 제어하고, 전자 장치(400)와의 연결 상태에 기초하여 데이터 통신을 적응적으로 변경하여 수행하는 것과 관련된 동작을 제어할 수 있다. 본 발명의 다양한 실시 예들에 따른 제어부(521)의 제어 동작은 후술하는 도면들을 참조하여 구체적으로 설명된다. 본 발명의 다양한 실시 예들에 따르면, 제어부(521)는 메모리(522)에 저장되는 하나 또는 그 이상의 프로그램들을 실행하여 본 발명의 다양한 실시 예들에 따른 도킹 스테이션(500)의 동작을 제어하는 하나 또는 그 이상의 프로세서들(one or more processors)로 구현될 수 있다.
다양한 실시 예들에서, 외부 장치(600, 710, 720, 730)는 외부 장치(600, 710, 720, 730)의 종류에 대응하는 다양한 구성, 예를 들면, 유선 통신 회로, 무선 통신 회로, 프로세서, 디스플레이, 입력 장치, 출력 장치 등을 포함할 수 있다. 다양한 실시 예들에서, 외부 장치(600, 710, 720, 730)는 다른 장치(예: 전자 장치(400), 도킹 스테이션(500))와 유선 또는 무선 연결에 기반하여 통신할 수 있다. 한 실시 예에 따르면, 외부 장치(600, 710, 720, 730)는 다른 장치(예: 도킹 스테이션(500) 또는 전자 장치(400))와 무선(예: RF, NFMI(near-field magnetic induction), BT, AoBLE 등)으로 연결될 수 있다. 한 실시 예에 따르면, 외부 장치(600, 710, 720, 730)는 다른 장치(예: 도킹 스테이션(500))와 유선(예: HDMI)으로 연결될 수 있다. 다양한 실시 예들에 따라, 외부 장치(600, 710, 720, 730)는 유선 또는 무선 연결된 다른 장치로부터 제공되는 데이터를 수신하여 관련 정보(예: 영상 데이터, 오디오 데이터 등)를 출력할 수 있다. 한 실시 예에 따라, 외부 장치(600, 710, 720, 730)는 전자 장치(400)와 도킹 스테이션(500) 간의 제1 무선 통신을 통해 전달되는 데이터를, 도킹 스테이션(500)으로부터 유선 통신을 통해 수신할 수 있다. 외부 장치(600, 710, 720, 730)는 수신된 데이터를 외부 장치(600, 710, 720, 730)의 종류(예: 표시 장치인지, 오디오 출력 장치인지 등)에 대응하는 출력을 수행할 수 있다.
한 실시 예에 따라, 외부 장치(600, 710, 720, 730)가 디스플레이 장치인 경우, 외부 장치(600)는 도킹 스테이션(500)과 HDMI나 USB로 연결될 수 있고, 외부 장치(600)가 오디오 출력 장치인 경우, 외부 장치(600)는 도킹 스테이션(500)과 AUX나 광 출력 단자 등으로 연결될 수 있다.
한 실시 예에 따라, 외부 장치(600, 710, 720, 730)는 부가적으로 전자 장치(400) 또는 도킹 스테이션(500)과 무선 연결을 지원할 수도 있다. 예를 들면, 외부 장치(600, 710, 720, 730)는 전자 장치(400)의 제2 무선 통신부(515) 또는 도킹 스테이션(500)의 제4 무선 통신부(530)와 같이 제2 무선 통신을 지원하기 위한 제5 무선 통신부(미도시)를 더 포함할 수 있다. 외부 장치(600, 710, 720, 730)는 제5 무선 통신부를 통해 전자 장치(400)와 직접 연결하거나, 또는 도킹 스테이션(500)과 연결할 수 있다.
이상에서 도 4 및 도 5를 참조하여 살펴본 바와 같이, 전자 장치(400)와 도킹 스테이션(500)은 제1 무선 통신 또는 제2 무선 통신 중 적어도 하나를 이용하여 데이터 통신을 수행할 수 있고, 무선 충전을 제공할 수 있다. 도킹 스테이션(500)과 외부 장치(600, 710, 720, 730)는 유선 통신(예: HDMI, USB 등) 또는 무선 통신(예: WiFi, WiGig, BT 등)을 이용하여 데이터 통신을 수행할 수 있다.
다양한 실시 예들에 따라, 전자 장치(400)와 도킹 스테이션(500)이 연결되면, 무선 충전의 인밴드 통신을 통해 근접 통신의 유무, 통신의 종류, 도킹 스테이션(500)이 지원하는 기능, 도킹 스테이션(500)의 기본 모드 등의 정보를 확인하고, 근접 통신 회로부를 활성화하여 도킹 스테이션(500)과 전자 장치(400)의 정보를 이용하여 이에 맞는 신호를 송수신할 수 있다.
다양한 실시 예들에 따라, 전자 장치(400)와 도킹 스테이션(500)이 연결되면, 무선 충전의 전력으로 전자 장치(400)의 유무 및 관련 정보를 전송하고, 정보 전송이 완료되면, 충전이 시작될 수 있다. 이때, 관련 정보를 송수신하기 위해 인밴드 통신이 진행되고, 그의 유휴 프레임(예: reserved 영역)을 이용하여 통신에 추가적으로 사용할 수 있다. 다양한 실시 예들에 따르면, 전자 장치(400)와 도킹 스테이션(500) 간의 이러한 근접 통신(예: 초고속 근접 통신)을 통해서 대용량의 데이터를 빠르게 전송할 수 있다. 또한, 전자 장치(400)는 도킹 스테이션(500) 또는 도킹 스테이션(500)에 연결된 외부 장치(예: 영상 재생 장치)로 스트리밍 서비스를 제공할 수 있다.
이상에서 살펴본 바와 같이, 다양한 실시 예에 따른 도킹 스테이션(500)은, 제1 방향으로 향하는 제1 표면 및 제1 방향과 다른 제2 방향으로 향하는 제2 표면을 포함하며, 제1 표면의 적어도 일부는 제1 전자 장치(예: 전자 장치(400))의 표면에 접촉(또는 비접촉)하도록 구성된 하우징과, 제2 표면보다 제1 표면에 근접하여 하우징 내에 위치한 전기적 도전 코일과, 외부 전력원으로부터 전력을 수신하고, 코일을 거쳐 제1 표면을 통해 제1 전자 장치로 전력을 무선으로 제공하는 충전 회로를 포함하는 무선 충전부와, 하우징에 노출된 전기적 연결부와, 제1 전자 장치와 무선 통신을 지원하며, 무선 통신은 미리 정의된 주파수 범위를 갖는 무선 통신 회로와 무선 통신 회로를 사용하여 제1 전자 장치로부터 데이터를 수신하고, 연결부를 통해 적어도 하나의 제2 전자 장치(예: 외부 장치(600))로 데이터를 전송하는 유선 통신 회로를 포함하는 하는 통신부와, 제1 전자 장치로 무선 충전을 제공하기 위해 도킹 스테이션의 동작을 전반적으로 제어하는 프로세서(예: 제어부(521))를 포함할 수 있다.
일 실시 예에 따르면, 도킹 스테이션은 이미지를 표시하기 위한 표시부를 구비하지 않을 수 있다. 일 실시 예에 따르면, 연결부는 HDMI(high definition multimedia interface) 단자 및/또는 USB(universal serial bus) 단자를 포함할 수 있다. 일 실시 예에 따르면, 제1 전자 장치로부터 수신된 데이터는 비압축 시청각 데이터를 포함할 수 있다. 일 실시 예에 따르면, 미리 정의된 주파수 범위는 55GHz 내지 66GHz의 범위를 포함할 수 있다.
일 실시 예에 따르면, 프로세서는 도킹 스테이션에 관한 정보 또는 도킹 스테이션에 연결된 제2 전자 장치에 관한 정보 중 적어도 일부를 무선 충전부 또는 통신부 중 적어도 하나를 통해 제1 전자 장치로 전송할 수 있다. 일 실시 예에 따르면, 충전이 요구되는 제1 전자 장치가 감지되면, 무선 충전부는 도킹 스테이션에 관한 정보를 포함하는 핑(ping) 신호를 제1 전자 장치로 전송할 수 있다. 일 실시 예에 따르면, 도킹 스테이션에 관한 정보는, 근접 통신 유무, 통신 방식 종류, 메모리 유무 또는 상기 충전 장치가 지원하는 데이터 종류 중 적어도 하나를 포함할 수 있다. 일 실시 예에 따르면, 프로세서는 전송된 핑 신호에 응답하는 응답 신호의 수신에 대응하여 제1 전자 장치의 근접 통신 가능 여부 및 무선 충전 가능 여부를 판단할 수 있다. 일 실시 예에 따르면, 제1 전자 장치가 근접 통신이 가능하면, 프로세서는 도킹 스테이션의 세부 정보를 무선 충전부를 통해 제1 전자 장치로 전송할 수 있다. 일 실시 예에 따르면, 세부 정보는 도킹 스테이션의 식별자, 상태, 사양, 인증 또는 보안 중 적어도 하나를 포함할 수 있다. 일 실시 예에 따르면, 충전이 요구되지 않은 제1 전자 장치가 감지되면, 프로세서는 도킹 스테이션에 관한 정보를 통신부를 통해 제1 전자 장치로 전송할 수 있다.
일 실시 예에 따르면, 적어도 하나의 제2 전자 장치와의 연결에 대응하여 식별자를 포함하는 정보가 수신되면, 프로세서는 수신된 식별자를 통해 적어도 하나의 제2 전자 장치를 분류하고, 분류된 결과를 제1 전자 장치로 전송할 수 있다. 일 실시 예에 따르면, 프로세서는 연결된 적어도 하나의 제2 전자 장치를 우선순위 또는 종류에 따라 분류할 수 있다. 일 실시 예에 따르면, 제1 전자 장치와의 접속이 유지된 상태에서 미리 결정된 시간 동안 전송된 핑 신호에 응답하는 응답 신호가 제1 전자 장치로부터 수신되지 않으면, 프로세서는 제1 전자 장치와의 근접 통신을 비활성화할 수 있다.
이상에서 살펴본 바와 같이, 다양한 실시 예에 따른 전자 장치(400)는, 디스플레이와, 적어도 하나의 센서를 포함하는 센서부와, 도킹 스테이션으로부터 무선으로 전력을 제공받는 충전 회로를 포함하는 무선 충전부와, 도킹 스테이션과 미리 정의된 주파수 범위를 갖는 무선 통신을 지원하는 무선 통신 회로를 통해서 도킹 스테이션으로 데이터를 전송하는 통신부와, 도킹 스테이션으로부터 수신된 정보를 통해서 도킹 스테이션에 대응되도록 설정을 변경하는 프로세서를 포함할 수 있다.
일 실시 예에 따르면, 데이터는 비압축 시청각 데이터를 포함할 수 있다. 일 실시 예에 따르면, 미리 정의된 주파수 범위는 55GHz 내지 66GHz의 범위를 포함할 수 있다. 일 실시 예에 따르면, 무선 충전부 및 상기 통신부 중 적어도 하나는 도킹 스테이션으로부터 도킹 스테이션에 관한 정보 또는 도킹 스테이션에 연결된 제2 전자 장치(예: 외부 장치(600))에 관한 정보 중 적어도 일부를 수신할 수 있다.
일 실시 예에 따르면, 프로세서는, 도킹 스테이션의 감지에 대응하여 도킹 스테이션으로부터 핑(ping) 신호가 무선 충전부를 통해 수신되면, 수신된 핑 신호로부터 도킹 스테이션의 근접 통신 가능 여부 및 무선 충전 가능 여부를 판단할 수 있다.
일 실시 예에 따르면, 도킹 스테이션과의 근접 통신이 가능하면, 프로세서는 도킹 스테이션과 근접 통신(예: 초고속 근접 통신)을 연결하고, 연결된 근접 통신을 통해 도킹 스테이션으로부터 도킹 스테이션의 세부 정보를 수신하고, 핑 신호 또는 세부 정보 중 적어도 하나의 적어도 일부에 기반하여 도킹 스테이션에 필요한 설정 변경 및 어플리케이션을 실행할 수 있다.
일 실시 예에 따르면, 센서부를 통해 도킹 스테이션으로부터 트리거 신호가 수신되면, 프로세서는 도킹 스테이션과 근접 통신을 연결하고, 연결된 근접 통신을 통해 도킹 스테이션으로부터 수신되는 도킹 스테이션에 관한 정보를 수신하고, 정보의 적어도 일부에 기반하여 도킹 스테이션에 필요한 설정 변경 및 어플리케이션을 실행할 수 있다.
일 실시 예에 따르면, 도킹 스테이션과의 접속이 유지된 상태에서 도킹 스테이션으로부터 미리 결정된 시간 동안 핑 신호가 수신되지 않으면, 프로세서는 도킹 스테이션과의 데이터 경로 및 유저 인터페이스를 변경하고, 도킹 스테이션과의 근접 통신을 비활성화할 수 있다.
일 실시 예에 따르면, 제2 전자 장치가 영상 출력 장치이면, 프로세서는, 디스플레이에 표시된 화면을 영상 출력 장치에서 출력되는 화면으로 구성하여 도킹 스테이션으로 전송할 수 있다.
이상에서 살펴본 바와 같이, 다양한 실시 예들에 따른 전자 장치(400)는, 다른 전자 장치와 제1 무선 통신을 수행하도록 구성된 제1 무선 통신부; 상기 다른 전자 장치와 제2 무선 통신을 수행하도록 구성된 제2 무선 통신부; 및 상기 제1 무선 통신부 및 상기 제2 무선 통신부와 기능적으로 연결된 프로세서를 포함하고, 상기 프로세서는, 상기 제1 무선 통신부를 이용하여, 상기 다른 전자 장치와 상기 제1 무선 통신으로 연결하고, 상기 제1 무선 통신에 기초하여 상기 다른 전자 장치와 제1 프로세스를 실행하고, 상기 제1 프로세스를 실행하는 동안 제2 프로세스를 감지하고, 상기 제1 프로세스와 상기 제2 프로세스를 처리하기 위한 리소스를, 대응하는 프로파일에 따라 재할당하고, 및 할당된 리소스에 기초하여 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 처리하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 제1 무선 통신은 초고속 근접 통신을 포함하고, 상기 제2 무선 통신은 상기 제1 무선 통신 외의 다른 하나 또는 그 이상의 무선 통신을 포함하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서는, 상기 제1 프로세스 실행 중에 상기 제2 프로세스를 감지할 시, 상기 제1 무선 통신의 연결 상태에 따라, 상기 제2 무선 통신에 의해 상기 다른 전자 장치와 연결을 실행하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서는, 상기 제1 무선 통신에 의한 상기 다른 전자 장치와의 연결 상태에 따라, 상기 제2 무선 통신부를 이용한 상기 제2 무선 통신에 기초하여, 상기 다른 전자 장치와 상기 제1 프로세스를 실행하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서는, 상기 다른 전자 장치와 연결이 해제될 시, 상기 제1 프로세스를 상기 제2 무선 통신에 대응하도록 변경하고, 변경된 제1 프로세스를 상기 제2 무선 통신부를 이용하여, 상기 다른 전자 장치와 실행하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서는, 상기 제1 프로세스를 유지, 중지 또는 변경하고, 상기 제2 프로세스를 실행하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서는, 상기 제2 프로세스가 발생하면, 상기 전자 장치의 리소스를 판단하고, 상기 제1 프로세스와 상기 제2 프로세스의 처리에 필요한 리소스를 재할당하고, 재할당된 리소스에 따라 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 실행하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서는, 상기 제2 프로세스가 종료되면, 상기 제1 프로세스를 위한 리소스를 복원하여, 상기 제1 프로세스를 실행하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서는, 상기 제2 프로세스 감지에 응답하여, 상기 제1 프로세스에 대한 실행 정보를 저장하고, 상기 제2 프로세스 종료에 응답하여, 상기 실행 정보에 따라 상기 다른 전자 장치와 상기 제1 프로세스를 연속적으로 실행하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서는, 상기 제2 프로세스 종료에 응답하여, 상기 다른 전자 장치의 식별자를 확인하고, 상기 다른 전자 장치의 식별자에 기초하여 상기 제1 무선 통신에 따른 연결을 초기화 하거나, 상기 다른 전자 장치와 상기 제1 프로세스를 재개하도록 구성할 수 있다.
이하에서는, 다양한 실시 예들에서 전자 장치(400), 도킹 스테이션(500), 그리고 외부 장치(600)의 연동에 따라 프로세스를 처리하는 동작 예시에 대하여 살펴보기로 한다. 예를 들면, 다양한 실시 예들에서는, 전자 장치(400)와 도킹 스테이션(500)이 연결(예: 제1 무선 통신에 의해 연결)되어 제1 프로세스를 실행하는 중에, 새로운 제2 프로세스가 발생하는 경우, 제1 프로세스와 제2 프로세스를 끊김 없이 유기적으로 처리할 수 있다. 이하의 설명에서는, 다양한 실시 예들에서는, 제1 프로세스 실행 중에 제2 프로세스의 발생을 감지하면, 이를 통지하는 방법, 제2 프로세스와 제1 프로세스를 순차적, 독립적, 또는 병렬적으로 처리하는 방법, 그리고 제2 프로세스가 종료되고 다시 이전 상황(예: 제1 프로세스)으로 복귀하는 방법 등에 대하여 설명된다.
도 6a는 본 발명의 다양한 실시 예들에 따른 전자 장치, 도킹 스테이션 및 외부 장치가 연결된 시스템에서 전자 장치의 동작을 도시하는 흐름도이다.
다양한 실시 예에 따르면, 도 6a는 전자 장치(400)와 도킹 스테이션(500)이 연결되고, 도킹 스테이션(500)에 외부 장치(600)(예: 디스플레이 장치)가 연결되어, 전자 장치(400)가, 예를 들면, PC 모드로 동작하여 기존 프로세스를 처리하고 있는 상태에서, 전자 장치에 신규 프로세스가 발생하는 경우의 동작 예시를 나타낼 수 있다. 한 실시 예에 따르면, 상기의 시스템에서, 전자 장치(400)가 재생하는 영상 데이터를 연결된 도킹 스테이션(500)을 통해 외부 장치(600)로 전송하고, 외부 장치(600)가 전자 장치(400)에서 재생되는 영상 데이터를 수신하여 관련 화면을 표시하고 있는 상태에서, 전자 장치(400)에 통화가 수신될 수 있다.
도 6a를 참조하면, 동작 601에서, 전자 장치(400)는 도킹 스테이션(500)과 접촉하여 연결된 상태일 수 있다. 예를 들면, 전자 장치(400)의 제1 무선 통신부(513)와 도킹 스테이션(500)의 제3 무선 통신부(524)에 기반하여 근접 통신이 연결된 상태일 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 도킹 스테이션(500)과 연결하여 PC 모드로 동작하여 재생하는 영상 데이터를 제1 무선 통신(예: 초고속 근접 통신)을 통해 도킹 스테이션(500)으로 전송하고, 도킹 스테이션(500)에 연결된 외부 장치(600)를 통해 영상 데이터를 표시하도록 하는 상태일 수 있다. 즉, 전자 장치(400)는 도킹 스테이션(500)과 연결에 응답하여 제1 프로세스(예: 기존 프로세스로, 예를 들면, 영상 데이터 재생 및 전송에 관련된 프로세스)를 처리하는 상태일 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 도킹 스테이션(500)에 접촉하고, 도킹 스테이션(500)과 무선 충전 및/또는 근접 통신의 연결 절차를 거쳐 데이터를 전송하고 받는 기존 프로세스를 수행할 수 있다. 다양한 실시 예들에 따라, 데이터는 음성, 영상 등의 여러 가지의 형식의 데이터로 전송이 가능하며, 외부 장치(600)를 통해 사용자에게 기능을 제공할 수 있다.
동작 603에서, 전자 장치(400)는 제1 프로세스를 처리하는 중에 제2 프로세스(예: 신규 프로세스로, 예를 들면, 통화 수신에 관련된 프로세스) 관련 인터럽트 발생을 감지할 수 있다. 다양한 실시 예들에 따르면, 전자 장치(400)는 도킹 스테이션(500)과 연결되고, 이후에 기존 프로세스를 처리하는 중에 어떠한 새로운 신규 프로세스가 발생하는 경우, 기존 프로세스와 신규 프로세스를 끊김 없이(seamless) 처리할 수 있다. 전자 장치(400)는 먼저 신규 프로세스가 도착한 것을 인식하고 사용자에게 알려줄 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 기존 프로세스를 수행하는 중에 새로운 신규 프로세스가 발생되면 사용자에게 알려주는 단계를 수행할 수 있다. 예를 들면, 전자 장치(400)는 동작 603에서, 도킹 스테이션(500)을 통해 외부 장치(600)로 영상 데이터를 전송하는 것과 같은 기존 프로세스 처리 중에, 통화 수신과 같은 신규 프로세스 발생에 대한 알림을 사용자에게 제공할 수 있다. 다양한 실시 예들에 따른 신규 프로세스에 대한 알림 방법에 대하여 후술하는 도면들을 참조하여 구체적으로 설명된다.
동작 605에서, 전자 장치(400)는 신규 프로세스가 외부 장치(600)에 의해 처리 가능한지 여부를 판단할 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 신규 프로세스(예: 통화 수신) 발생에 대해 사용자에게 알림을 제공한 후, 사용자가 해당 알림에 대해 승락을 하는 경우에, 신규 프로세스가 외부 장치(600)에 의해 처리 가능한 프로세스인지, 또는 외부 장치(600)에서 신규 프로세스를 처리하도록 설정된 상태인 지 등에 적어도 일부 기반하여 신규 프로세스에 대한 처리를 결정할 수 있다. 한 실시 예에 따르면, 전자 장치(400)은 신규 프로세스를 받아 들이기 위해서 필요한 리소스와 방법을 계산할 수 있다. 이러한 과정에서 도킹 스테이션(500)은 전자 장치(400)에게 외부 장치(600)가 어떤 장치인지, 어느 정도의 처리 용량을 가진 장치인지를 알려주고, 전자 장치(400)가 지원할 수 있는 부분을 계산할 수 있도록 지원할 수 있다. 전자 장치(400)는 도킹 스테이션(500)을 통해 전달받은 외부 장치(600)와 전자 장치(400)가 가진 리소스를 계산하고 가능한 리소스를 검색하여, 신규 프로세스가 통합 처리가 가능한 프로세스인지 여부를 확인할 수 있다. 전자 장치(400)는 통합 처리가 가능하지 않은 경우, 기존 프로세스와 신규 프로세스의 우선 순위를 선택하고 차등적으로 리소스를 할당하여 프로세스를 수행할 수 있다.
동작 605에서, 전자 장치(400)는 외부 장치(600)에 의해 처리 가능한 것으로 판단하면(동작 605의 예), 동작 607에서, 신규 프로세스 및 관련 데이터를 도킹 스테이션(500)을 통해 외부 장치(600)에 전송할 수 있다. 외부 장치(600)는 신규 프로세스와 관련 데이터를 수신하고, 그에 대한 처리를 수행할 수 있다.
동작 605에서, 전자 장치(400)는 외부 장치(600)에 의해 처리 가능하지 않은 것으로 판단하면(동작 605의 아니오), 동작 609에서, 신규 프로세스에 대해 전자 장치(400)에서 처리를 결정할 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 기존 프로세스를 위한 PC 모드로 동작하면서 신규 프로세스를 위한 통화를 동시에 처리하여 수행하는 것을 결정할 수 있다. 다양한 실시 예들에 따르면, 전자 장치(400)는 전자 장치(400)에서 기존 프로세스와 신규 프로세스의 처리를 결정할 시, 기존 프로세스와 신규 프로세스에 대한 우선 순위를 선정 후 처리할 수도 있다.
동작 611에서, 전자 장치(400)는 기존 프로세스와 신규 프로세스를 처리할 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 신규 프로세스의 처리 결정에 응답하여, 기존 프로세스를 위한 PC 모드로 동작하면서 신규 프로세스를 위한 통화를 동시에 처리할 수 있다. 다양한 실시 예들에 따르면, 전자 장치(400)는 신규 프로세스를 처리하기 위하여 시스템에서 가능한 용량을 계산하고 우선 순위를 계산할 수 있다. 이후, 전자 장치(400)는 신규 프로세스와 기존 프로세스를 모두 실행할 수 있도록 용량을 할당하여 처리할 수 있다. 예를 들면, 전자 장치(400)는 기존 프로세스가 어떻게 같이 동작이 되어야 하는지 다양한 조건에 적어도 일부 기초하여 판단할 수 있다. 다양한 실시 예들에 따른 기존 프로세스와 신규 프로세스를 동시에 수행하기 위한 처리 방법에 대하여 후술하는 도면들을 참조하여 구체적으로 설명된다.
동작 613에서, 전자 장치(400)는 신규 프로세스의 종료를 감지할 수 있다. 예를 들면, 전자 장치(400)는 기존 프로세스와 신규 프로세스를 처리하는 중에, 제2 프로세스의 종료를 감지할 수 있다. 한 실시 에에 따르면, 전자 장치(400)는 PC 모드에서 외부 장치(600)에 영상 데이터를 전송하는 기존 프로세스와, 통화를 수행하는 신규 프로세스를 실행하는 중에, 통화 종료에 따라 신규 프로세스의 종료를 감지할 수 있다.
동작 615에서, 전자 장치(400)는 신규 프로세스의 종료 감지에 응답하여 기존 프로세스를 재개할 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 통화가 종료되면 PC 모드로 동작하여 기존에 수행 중인 상태로 복원하여 PC 모드에 따른 동작을 재개할 수 있다. 예를 들면, 전자 장치(400)는 신규 프로세스가 종료되면, 기존 프로세스의 처리에 관련된 리소스를 재할당하여 처리할 수 있다. 다양한 실시 예들에 따라, 전자 장치(400)는 기존 프로세스의 복원 시 전자 장치(400)와 도킹 스테이션(500)의 연결 상태를 고려하여 기존 프로세스를 다양한 방식으로 재개할 수 있다. 다양한 실시 예들에 따라, 기존 프로세스를 복원하여 처리하는 동작 예시들에 대하여 후술하는 도면들을 참조하여 구체적으로 설명된다.
도 6b는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 다중 프로세스를 수행하는 방법을 도시하는 흐름도이다.
도 6을 참조하면, 동작 631에서, 전자 장치(400)는 도킹 스테이션(500)과 연결 상태이고, 동작 633에서, 전자 장치(400)의 프로세서(120)는 제1 프로세스를 수행할 수 있다. 예를 들면, 프로세서(120)는 제1 프로파일에 기초하여 제1 무선 통신으로 데이터 통신을 수행할 수 있다. 예를 들면, 프로세서(120)는 도킹 스테이션(500)을 통해 연결된 외부 장치(600)와 연동을 위한 제1 프로파일에 기초하여, 제1 프로세스(예: 데이터 통신)을 도킹 스테이션(500)과 수행할 수 있다. 다양한 실시 예들에 따른 프로파일에 대하여 후술하는 도면들을 참조하여 상세히 설명된다.
동작 635에서, 프로세서(120)는 제1 프로세스를 처리하는 중에 제2 프로세스에 관련된 인터럽트 발생 여부를 판단할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 도킹 스테이션(500)과 제1 프로세스에 따른 데이터 통신 중에 제1 프로세스 외의 새로운 제2 프로세스(예: 콜 이벤트 수신)를 감지할 수 있다.
동작 635에서, 프로세서(120)는 제2 프로세스를 위한 인터럽트가 감지되지 않으면(동작 635의 아니오), 동작 633으로 진행하여, 동작 633 이하의 동작 수행을 처리할 수 있다.
동작 635에서, 프로세서(120)는 제2 프로세스를 위한 인터럽트가 감지되면(동작 635의 예), 동작 637에서, 인터럽트를 판단할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 인터럽트가 콜 수신, 콜 발신 또는 동작 모드 전환(예: 비디오 모드 -> PC 모드 등) 등의 적어도 하나에 대응되는지 판단할 수 있다. 예를 들면, 프로세서(120)는 제2 프로세스를 위한 인터럽트의 종류를 판단할 수 있다.
동작 639에서, 프로세서(120)는 인터럽트에 대응하는 제2 프로파일을 판단할 수 있다. 예를 들면, 프로세서(120)는 인터럽트 종류에 대응하여 동작 가능한 미리 설정된 프로파일을 검색 및 추출할 수 있다. 다양한 실시 예들에 따라, 프로세서(120)는 인터럽트 종류와 도킹 스테이션(500)을 통해 연결된 외부 장치의 장치 정보에 적어도 일부 기초하여 프로파일을 판단할 수 있다.
동작 641에서, 프로세서(120)는 제2 프로파일에 의한 동작 상태 정보를 판단할 수 있다. 예를 들면, 프로세서(120)는 제2 프로파일에 의해 가용 가능한 용량, 하드웨어, 외부 장치 연동 여부, 데이터 변환 방식 등에 관련된 동작 상태 정보를 판단할 수 있다.
동작 643에서, 프로세서(120)는 제2 프로파일에 기초하여 제1 무선 통신 또는 제2 무선 통신 중 적어도 하나의 통신으로 제1 프로세스에 따른 데이터 통신을 처리할 수 있다.
동작 645에서, 프로세서(120)는 인터럽트에 따른 기능을 처리할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 처리하면서, 인터럽트에 관련된 제2 프로세스를 시작할 수 있다.
도 7 및 도 8은 본 발명의 다양한 실시 예들에 따른 프로파일의 예시를 설명하기 위해 도시하는 도면들이다.
다양한 실시 예들에 따르면, 전자 장치(400)는 하나 또는 그 이상의 프로파일을 미리 구성하여 저장할 수 있고, 전자 장치(400)의 상황에 따라 적응적으로 해당 프로파일에 기초하여 동작하도록 하여, 전자 장치(400)의 상황에 따라 빠르고 효율적인 대응이 가능할 수 있다.
도 7을 참조하면, 다양한 실시 예들에서, 프로파일은 통신 자원(710), 데이터 전송 처리 방법(720), 시스템의 할당 용량(730) 등에 적어도 일부 기초하여 구성할 수 있다. 예를 들면, 프로파일은 전송되는 데이터의 용량과 종류, 시스템의 용량, 통신 방법 등을 구분하는 방식으로 구성될 수 있으며, 상황에 따라 다양한 구성이 가능하다.
다양한 실시 예들에서, 프로파일은 통신 자원(710), 데이터 전송 처리 방법(720), 시스템의 할당 용량(730) 등의 각 항목마다 상세 정보가 지정될 수 있다. 예를 들면, 도 8에 도시한 바와 같이, 제1 프로파일 또는 제2 프로파일의 예시와 같이 구성할 수 있다.
한 실시 예에 따르면, 전자 장치(400)에서 주요 프로세스를 두 가지를 실행할 경우 제1 프로파일과 제2 프로파일을 선택적으로 사용할 수 있다. 예를 들면, 전자 장치(400)에서 제1 프로세스를 실행하는 중에 제2 프로세스가 실행되는 경우 기존의 제1 프로파일에서 새로운 제2 프로파일로 변경하여 사용할 수 있다. 전자 장치(400)는 제1 프로세스에 따라 제1 무선 통신을 이용하여 영상을 출력하는 중에, 제2 프로세스가 실행되면 제1 프로세스를 제2 프로파일에 따라 변경하여 동작할 수 있다. 일 예로, 제1 프로파일에서는 제1 무선 통신(예: 60GHz 근접 통신)을 이용하여 영상을 출력할 수 있고, 그에 대응하여 코덱과 시스템을 도 8의 제1 프로파일의 예시와 같이 할당하여 사용할 수 있다. 다른 예로, 제2 프로파일에서는 제2 무선 통신(예: 와이파이)을 이용하여 영상을 출력할 수 있고, 그에 대응하여 코덱을 시스템을 도 8의 제2 프로파일의 예시와 같이 할당하여 사용할 수 있다.
다양한 실시 예들에 따르면, 전자 장치(400)는 새로운 프로세스를 판단하여 프로파일을 구성할 수 있고 그에 따라 리소스를 할당 또는 분배하여 동작할 수도 있다. 또한 다양한 실시 예들에 따르면, 프로파일을 도킹 스테이션(500)에서 별도의 연산 처리부(미도시)와 저장부(미도시)를 구비하고, 도킹 스테이션(500)에서 상황을 판단하여 전자 장치(400)에서 프로파일을 사용할 수 있도록 가이드 하는 방식으로 동작할 수도 있다.
도 9는 본 발명의 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 9를 참조하면, 동작 901에서, 전자 장치(400)의 프로세서(120)는 도킹 스테이션(500)과 연결 후 특정 동작 상태일 수 있다. 예를 들면, 프로세서(120)는 도킹 스테이션(500)과 제1 프로세스(예: 제1 무선 통신을 통해 FHD 영상 전송)를 수행하는 상태일 수 있다.
동작 903에서, 프로세서(120)는 새로운 프로세스 관련 인터럽트 발생을 감지할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 수행하는 중에, 제2 프로세스(예: 콜 수신, 메시지 수신, 전자 장치(400)의 움직임, 동작 모드 전환 등)를 추가 실행하는 것과 관련된 인터럽트 발생을 감지할 수 있다.
동작 905에서, 프로세서(120)는 인터럽트에 관련된 알림을 출력할 수 있다. 예를 들면, 프로세서(120)는 제2 프로세스가 콜 수신에 대응하는 경우 콜 수신에 관련된 알림을 출력할 수 있고, 제2 프로세스가 메시지 수신에 대응하는 경우 메시지 수신에 관련된 알림을 출력할 수 있다. 다양한 실시 예들에서, 프로세서(120)는 다양한 상황(예: 인터럽트 종류, 외부 장치(600)의 장치 종류, 현재 상황(예: 공개 장소인지, 회의 상황인지 등의 여부) 등)에 기초하여 전자 장치(400) 또는 외부 장치(600) 중 적어도 하나를 통해 인터럽트에 관련된 알림을 출력하도록 처리할 수 있다. 다양한 실시 예들에 따라, 인터럽트에 관련된 알림 출력은 후술하는 도면들을 참조하여 상세히 설명된다.
동작 907에서, 프로세서(120)는 인터럽트를 판단하고, 동작 909에서, 인터럽트에 대해 외부 장치(600)에 의해 처리 가능한지 여부를 판단할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스 실행 중에 제2 프로세스의 실행을 감지하면, 제2 프로세스가 외부 장치(600)에 의해 처리 가능한 프로세스인지 여부를 판단할 수 있다.
동작 909에서, 프로세서(120)는 인터럽트가 외부 장치(600)에 의해 처리 가능한 인터럽트인 것으로 판단하면(동작 909의 예), 동작 911에서, 인터럽트에 따라 실행하는 프로세스 및 관련 데이터를 외부 장치(600)에 전송하도록 처리할 수 있다. 예를 들면, 프로세서(120)는 제2 프로세스를 실행하고, 제2 프로세스에 관련된 정보 및 데이터를 도킹 스테이션(500)을 통해 외부 장치(600)에 제공할 수 있다. 다양한 실시 예들에 따라, 프로세서(120)는 제1 무선 통신 또는 제2 무선 통신의 적어도 일부에 기초하여 프로세스 및 관련 데이터를 전송할 수 있다.
동작 913에서, 프로세서(120)는 기존 프로세스 수행을 처리할 수 있다. 예를 들면, 프로세서(120)는 제2 프로세스를 외부 장치(600)에 의해 실행하도록 처리하고, 제1 프로세스를 계속하여 처리할 수 있다. 예를 들면, 제1 프로세스는 계속하여 전자 장치(400)에 의해 계속 수행 중인 상태일 수 있다.
동작 909에서, 프로세서(120)는 인터럽트가 외부 장치(600)에 의해 처리 가능하지 않은 인터럽트인 것으로 판단하면(동작 909의 아니오), 즉, 전자 장치(400)에 의해 처리해야 하는 인터럽트인 것으로 판단하면, 동작 915에서, 인터럽트에 대응하는 프로파일을 판단할 수 있다. 예를 들면, 프로세서(120)는 인터럽트에 대해 전자 장치(400)에 우선 순위를 선정하여 전자 장치(400) 내에서의 처리를 결정할 수 있다. 프로세서(120)는 인터럽트를 전자 장치(400)에 내에서 처리를 결정할 시, 인터럽트에 대응하는 프로파일을 판단할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 현재 상황(예: 수행 중인 제1 프로세스의 종류, 연결된 외부 장치(600)의 종류, 제2 프로세스 실행에 필요한 리소스 정보 등)을 판단하고, 미리 설정된 프로파일들 중 판단하는 결과에 대응하는 프로파일을 검색 및 선택할 수 있다.
동작 917에서, 프로세서(120)는 프로파일에 대응하여 기존 프로세스 및 신규 프로세스를 처리할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스에 대해 프로파일에 따라 리소스를 재할당하여 처리하고, 제2 프로세스의 실행을 처리할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 제1 무선 통신을 이용한 FHD 영상 전송 중인 경우, 데이터의 용량 및 종류, 코덱, 또는 코어 등을 선택 및 결정하고, 제2 무선 통신을 이용하여 변경된 영상 전송을 처리할 수 있다. 프로세서(120)는 제1 프로세스에 대해 프로파일에 따라 처리하면서 제2 프로세스를 동시에 처리할 수 있다. 다양한 실시 예들에 따라, 기존 프로세스와 신규 프로세스를 처리하는 동작 예시들에 대하여 후술하는 도면들을 참조하여 상세히 설명된다.
동작 919에서, 프로세서(120)는 신규 프로세스의 종료를 감지할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스와 제2 프로세스를 처리하는 중에, 제2 프로세스의 종료를 감지할 수 있다. 한 실시 에에 따르면, 프로세서(120)는 외부 장치(600)에 영상 데이터를 전송하는 제1 프로세스와, 통화를 수행하는 제2 프로세스를 실행하는 중에, 통화 종료에 따라 제2 프로세스의 종료를 감지할 수 있다.
동작 921에서, 프로세서(120)는 신규 프로세스의 종료를 감지할 시 기존 프로세스를 재개할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 변경된 프로파일에 따라 처리하는 중에, 제2 프로세스가 종료되면, 제1 프로세스를 변경 이전의 프로파일에 기초하여 리소스를 재할당하여 처리할 수 있다. 다양한 실시 예들에 따라, 프로세서(120)는 제1 프로세스의 복원 시 전자 장치(400)와 도킹 스테이션(500)의 연결 상태를 고려하여 제1 프로세스를 다양한 방식으로 재개할 수 있다. 다양한 실시 예들에 따라, 기존 프로세스를 복원하여 처리하는 동작 예시들에 대하여 후술하는 도면들을 참조하여 상세히 설명된다.
이상에서 살펴본 바와 같이, 다양한 실시 예들에 따르면, 먼저 전자 장치(400)와 도킹 스테이션(500)이 접촉하고 무선 충전 또는 제1 무선 통신(예: 60GHz 대역의 초고속 근접 통신)의 연결 절차를 거쳐, 전자 장치(400)와 도킹 스테이션(500) 간에 데이터를 주고받는 프로세스를 수행하게 된다. 다양한 실시 예들에서, 데이터는, 예를 들면, 음성, 영상 등의 여러 가지의 형식의 데이터를 포함할 수 있으며, 외부 장치(600)를 통해 사용자에게 관련 기능을 제공하게 된다.
이어서, 다양한 실시 예들에 따라, 새로운 프로세스가 발생되면, 사용자에게 알려주는 단계를 수행할 수 있다. 이후, 전자 장치(400)는 선택적으로 사용자로부터 알림에 대한 승인이 입력되거나, 또는 자동으로, 새로운 프로세스를 처리하기 위하여 시스템에서 가능한 리소스(예: 용량)를 계산하고 프로세스의 우선순위를 계산할 수 있다. 다양한 실시 예들에 따라, 전자 장치(400)는 새로운 프로세스와 기존의 프로세스를 모두 실행할 수 있도록 리소스를 할당하여 처리할 수 있다. 또한 전자 장치(400)는 하나의 프로세스(예: 새로운 프로세스)가 다 끝나거나 완료된 후에는 기존 프로세스를 재개할 수 있다. 다양한 실시 예들에서는, 기존 프로세스에 다시 리소스를 할당하고 동작의 재개 여부를 결정하는 단계를 더 수행할 수 있다.
도 10은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 인터럽트에 대한 알림 출력 방법을 도시하는 흐름도이다.
도 10을 참조하면, 동작 1001에서, 전자 장치(400)의 프로세서(120)는 인터럽트를 감지할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 수행하는 중에 새로운 제2 프로세스의 실행을 위한 인터럽트 발생을 감지할 수 있다.
동작 1003에서, 프로세서(120)는 전자 장치(400)의 현재 동작 모드를 판단하고, 동작 1005에서, 전자 장치(400)가 공용(또는 회의) 모드로 동작 중인지 여부를 판단할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 전자 장치(400)의 현재 위치 정보, 도킹 스테이션(500)의 식별 정보(예: ID 등), 공용(또는 회의) 모드 설정 정보, 프리젠테이션 동작 정보, 또는 다양한 센서에 의해 획득하는 주변 상황 정보 등에 적어도 일부 기초하여 전자 장치(400)의 동작 모드를 판단할 수 있다.
동작 1005에서, 프로세서(120)는 전자 장치(400)가 공용 모드로 동작 중인 것으로 판단하면(동작 1005의 예), 동작 1007에서, 인터럽트에 대해 제한적 알림 출력을 처리할 수 있다. 예를 들면, 프로세서(120)는 인터럽트가 콜 수신이고, 알림 출력으로 벨소리 모드가 설정되고 외부 장치(600)에 의한 알림 출력 방식인 경우를 가정하면, 프로세서(120)는 진동 모드 또는 무음 모드로 설정을 자동 변경하고, 콜 수신 알림에 대해 전자 장치(400) 내에서만 출력되도록 처리할 수 있다.
동작 1005에서, 프로세서(120)는 전자 장치(400)가 공용 모드로 동작 중이 아닌 것으로 판단하면(동작 1005의 아니오), 동작 1009에서, 설정된 방식에 따라 알림 출력을 처리할 수 있다. 예를 들면, 프로세서(120)는 인터럽트가 콜 수신이고, 알림 출력으로 벨소리 모드가 설정되고 외부 장치(600)에 의한 알림 출력 방식인 경우를 가정하면, 프로세서(120)는 벨소리 모드에 의한 알림 출력과, 외부 장치(600)를 통한 알림 출력이 수행되도록 처리할 수 있다.
도 11, 도 12 및 도 13은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스 발생 시 통지 방법을 도시하는 도면들이다.
도 11을 참조하면, 동작 1101에서, 전자 장치(400)의 프로세서(120)는 인터럽트를 감지할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 수행하는 중에 새로운 제2 프로세스의 실행을 위한 인터럽트 발생을 감지할 수 있다.
동작 1103에서, 프로세서(120)는 인터럽트에 대한 알림 출력에 관련된 알림 정보를 판단할 수 있다. 예를 들면, 프로세서(120)는 알림 출력 방법이 진동 모드, 무음 모드, 또는 벨소리 모드에 의한 것인지 여부를 설정된 알림 정보에 기초하여 판단할 수 있다.
동작 1105에서, 프로세서(120)는 판단하는 알림 정보에 따라 전자 장치(400) 또는 외부 장치(600) 중 적어도 하나에 기반하여 알림 출력을 처리할 수 있다. 다양한 실시 예들에서, 알림 정보에 따라 알림 출력을 처리하는 동작 예시들이 도 12 및 도 13에 도시된다.
도 12를 참조하면, 도 12는 디스플레이를 이용하여 알림 출력을 처리하는 동작 예시를 나타낼 수 있다.
도 12에 도시한 바와 같이, 전자 장치(400)는 인터럽트에 대한 알림을 외부 장치(600)를 통해 출력할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 전자 장치(400)의 디스플레이(1250)가 오프(off) 상태(예: 화면 꺼짐)에서, 도킹 스테이션(500)을 통해 외부 장치(600)에 알림에 관련된 데이터를 전달할 수 있다. 외부 장치(600)는 수신된 알림에 관련된 데이터에 기초하여, 인터럽트에 대한 알림을 팝업(1200) 형태로 출력(표시)할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 발신인의 중요도, 연관성, 알림의 내용, 또는 알림의 종류 등에 적어도 일부에 기초하여 외부 장치(600)의 디스플레이(1270) 내에서 알림 위치(예: 화면 가장 자리, 화면 중간 등)를 다르게 출력하도록 관련 제어 정보를 포함하여 제공할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 알림 출력의 출력(표시) 시간, 출력(표시) 방법(예: 깜박임 등)을 다르게 할 수 있으며, 또한 인터럽트에 따른 해당 프로세스의 종류에 따라 출력(표시)를 다르게 할 수도 있다. 일 예로, 프로세스(470)는 외부 장치(600)의 디스플레이(1270)의 오른쪽 하단에 알림 메시지(예: “새로운 수신 전화가 있습니다.”, “새로운 영상 통화가 있습니다.”, “새로운 메시지가 있습니다.” 등)가 팝업(1200) 형태로 출력되도록 할 수 있다.
도 13을 참조하면, 도 13은 진동을 이용하여 알림 출력을 처리하는 동작 예시를 나타낼 수 있다.
전자 장치(400)가 인터럽트에 대한 알림을 진동으로 출력하는 경우, 전자 장치(400)와 도킹 스테이션(500)과의 위치(또는 거리 등)가 어긋나서 전자 장치(400)와 도킹 스테이션(500) 간의 제1 무선 통신에 의한 연결이 불안정해 질 수 있다. 또한 전자 장치(400)가 도킹 스테이션(500)을 통해 무선 충전 중인 경우, 전자 장치(400)의 진동으로 인하여 무선 충전이 효율적으로 진행되지 않을 수 있다. 이에, 다양한 실시 예들에서는 전자 장치(400)와 도킹 스테이션(500)이 연결된 경우, 전자 장치(400)에서 직접적으로 진동에 의한 알림을 출력하지 않도록 처리할 수 있다.
한 실시 예에 따르면, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500)이 연결된 상태를 판단하는 경우, 인터럽트에 대해 설정된 진동 방식을 다른 방식(예: 벨소리, 램프)으로 자동 전환하여 알림 출력을 처리할 수 있다. 또한 프로세서(120)는, 도 13에 도시한 바와 같이, 도킹 스테이션(500)을 통해 연결된 외부 장치(600) 또는 외부 장치(600)의 주변 장치(1300)(예: 키보드, 마우스)에 알림 출력에 관련된 데이터를 전송하여, 외부 장치(600) 또는 주변 장치(1300)에 의해 진동으로 알림 출력이 수행되도록 할 수 있다. 다양한 실시 예들에 따르면, 외부 장치(600)는 수신된 데이터에 기초하여 외부 장치(600)의 디스플레이를 통해 알림에 대한 정보를 표시하면서, 외부 장치(600)와 연결된 주변 장치(1300)를 통해 알림에 대한 진동을 출력하도록 동작할 수 있다.
다양한 실시 예들에 따르면, 알림 출력 방법은 전술한 방법 외에 다양하게 구현될 수 있다.
한 실시 예에 따르면, 전자 장치(400)를 통해 알림 출력을 처리할 수 있다. 예를 들면, 전자 장치(400)가 매우 공개적인 장소(예: 회의실, 사무실 등)에서 도킹 스테이션(500)을 통해 외부 장치(600)와 연동되는 경우, 프로세서(120)는 외부 장치(600)에 의한 알림 출력(표시)을 수행하지 않고, 전자 장치(400)의 디스플레이 내에서 출력(표시)가 수행되도록 동작할 수 있다. 다양한 실시 예들에 따르면, 공개적인 장소에서 외부 장치(600)를 주목하고 있는 많은 사람들의 집중력 저해를 방지하고, 사용자 개인의 프라이버시 등을 보호하도록, 전자 장치(400)의 디스플레이를 응용한 다양한 방식으로 알림을 출력할 수 있다. 예를 들면, 프로세서(120)는 회의실이 어두운 상황인 경우, 알림을 작게 표시하거나 어두운 색으로 표시할 수 있다.
한 실시 예에 따르면, 벨소리를 이용하여 알림 출력을 처리할 수 있다. 다양한 실시 예들에서, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500)의 연결 상태를 감지하여, 알림에 대한 벨소리를 다르게 출력할 수 있다. 예를 들면, 전자 장치(400)가 사무실의 도킹 스테이션(500)이나, 또는 집의 도킹 스테이션(500)에 연결되어 사용될 경우, 프로세서(120)는 전자 장치(400)가 연결된 도킹 스테이션(500)에 따라 벨소리를 다르게 출력할 수 있다. 일 예로, 사무실과 같은 공통의 공간에서 다른 사람들의 집중력을 저해하지 않도록 단발성의 벨소리를 출력할 수 있고, 집과 같은 개인의 공간에서는 연속성의 벨소리를 출력할 수 있다. 이와 같이, 다양한 실시 예들에서는, 전자 장치(400)가 연결되는 도킹 스테이션(500)에 따라 알림 출력을 다르게 수행할 수 있다.
한 실시 예에 따르면, 외부 장치(600)에 따라 알림 출력을 다르게 처리할 수 있다. 예를 들면, 화면만 출력 가능한 디스플레이 장치, 스피커와 같은 음향 출력 장치, 또는 스피커를 구비한 디스플레이 장치 등과 같이 외부 장치(600)의 종류에 따라 디스플레이에 의한 알림 출력, 소리에 의한 알림 출력, 또는 진동에 의한 알림 출력 중 적어도 하나의 출력을 선택적으로 수행할 수 있다.
한 실시 예에 따르면, 램프를 이용하여 알림 출력을 처리할 수 있다. 예를 들면, 전자 장치(400), 도킹 스테이션(500), 외부 장치(600), 또는 외부 장치(600)와 연결되는 주변 장치(예: 키보드, 마우스 등) 등의 모든 장치는 해당 장치의 상태를 표시해 주는 램프(예: LED 램프)가 적어도 하나씩 포함할 수 있다. 이에, 다양한 실시 예들에서는, 새로운 프로세스에 따른 인터럽트에 대한 알림을 상호 연동된 다양한 장치들 중 적어도 하나의 장치에 구비된 램프를 이용하여 알림 출력을 처리할 수 있다. 한 실시 예에 따르면, 광학 마우스의 경우 광학부를 이용할 수 있고, 키보드의 경우 키 관련 LED를 이용할 수 있고, 모니터의 경우 전원 관련 LED를 이용하여, 인터럽트에 대한 알림을 출력할 수 있다. 또한 램프를 이용한 알림 출력 시, 깜박임의 횟수 또는 발광 길이를 다르게 하거나, 또는 LED 색을 다르게 구분(예: 빨강 -> 초록)하여, 인터럽트에 대한 알림 출력을 다양하게 제공할 수 있다.
이상에서와 같이, 다양한 실시 예들에 따르면, 기존 프로세스 실행 중에 새로운 프로세스 발생 시, 그에 대해 사용자에게 다양한 방식으로 통지할 수 있다. 예를 들면, 도킹 스테이션(500)이 전자 장치(400)와 접촉되고, 이후 전자 장치(400)에 새로운 프로세스에 관련된 인터럽트가 발생할 경우 여러 가지 방법으로 사용자에게 알림을 제공할 수 있다. 예를 들면, 디스플레이, 벨소리, 진동, 램프 등에 적어도 일부 기반하여, 전자 장치(400) 및/또는 외부 장치(600)를 통해 사용자에게 알림을 제공할 수 있는 모든 방식으로 통지할 수 있다. 또한 다양한 실시 예들에서는, 도킹 스테이션(500)에 따라, 또는 도킹 스테이션(500)과 연결된 외부 장치(600)에 따라 다른 방식의 알림을 제공할 수 있다. 또한, 다양한 실시 예들에서는, 사용자에게 프로세스의 알림을 줄 때 상황에 따라 다르게 제공할 수도 있다.
또한 다양한 실시 예들에서는, 새로운 프로세스에 대한 알림 동작으로, 도 10, 도 11, 도 12 및 도 13을 독립적으로 설명하였으나, 다양한 실시 예들이 이에 한정되지는 않는다. 예를 들면, 도 10, 도 11, 도 12 또는 도 13의 적어도 하나의 조합에 의하여, 새로운 프로세스에 관련된 알림 동작을 병렬적으로 또는 순차적으로 수행할 수도 있다.
도 14는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스 실행 방법을 도시하는 흐름도이다.
도 14에 도시한 바와 같이, 도 14는 기존 프로세스(예: 제1 프로세스)와 신규 프로세스(예: 제2 프로세스)를 처리하는 동작 방법을 설명하기 위해 도시하는 도면이다.
도 14를 참조하면, 동작 1401에서, 전자 장치(400)의 프로세서(120)는 기존 프로세스와 신규 프로세스의 처리에 필요한 리소스를 판단할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스에 의한 동작(예: 제1 무선 통신에 의한 FHD 영상을 도킹 스테이션(500)에 전송) 중에 제2 프로세스 실행에 관련된 인터럽트에 응답하여, 제1 프로세스와 제2 프로세스 처리에 필요한 리소스를 판단할 수 있다.
동작 1403에서, 프로세서(120)는 판단된 리소스를 계산(또는 예측)할 수 있다.
동작 1405에서, 프로세서(120)는 계산된 리소스에 기반하여 기존 프로세스와 신규 프로세스를 통합 처리 가능한 정도의 리소스의 범위인지 판단할 수 있다.
동작 1405에서, 프로세서(120)는 통합 처리 가능한 리소스인 것으로 판단하면(동작 1405의 예), 동작 1407에서 기존 프로세스와 신규 프로세스를 처리할 수 있다.
동작 1405에서, 프로세서(120)는 통합 처리가 가능한 리소스가 아닌 것으로 판단하면(동작 1405의 아니오), 동작 1409에서, 데이터 분할 처리 방식을 판단할 수 있다. 예를 들면, 프로세서(120)는 제1 무선 통신을 통해 도킹 스테이션(500)으로 전송하는 데이터에 대한 분할(할당) 처리 방식을 판단할 수 있다.
동작 1411에서, 프로세서(120)는 판단하는 결과에 기반하여 프로세스별 리소스를 할당(분배)할 수 있다. 다양한 실시 예들에 따라, 데이터 분할 처리 방식에 따른 리소스를 할당(분배)하는 동작에 대하여 후술하는 도면들을 참조하여 상세히 설명된다.
동작 1413에서, 프로세서(120)는 기존 프로세스와 함께 신규 프로세스를 실행할 수 있다. 예를 들면, 프로세서(120)는 리소스 할당(분배)에 대응하여 제1 프로세스에 관련된 데이터 전송을 계속하여 수행할 수 있고, 리소스 할당(분배)에 대응하여 제2 프로세스를 처리할 수 있다.
동작 1415에서, 프로세서(120)는 프로세스의 종료 여부를 판단할 수 있다. 예를 들면, 프로세서(120)는 기존 프로세스 또는 신규 프로세스 중 적어도 하나의 프로세스가 종료되는 인터럽트 발생을 감지할 수 있다.
동작 1415에서, 프로세서(120)는 프로세스의 종료가 감지되지 않으면(동작 1415의 아니오), 동작 1413으로 진행하여, 동작 1413 이하의 동작 수행을 처리할 수 있다.
동작 1415에서, 프로세서(120)는 프로세스의 종료가 감지되면(동작 1415의 예), 동작 1417에서, 종료되는 프로세스를 판단할 수 있다. 예를 들면, 프로세서(120)는 프로세스의 종료가, 기존 프로세스인지 또는 신규 프로세스인지 여부를 판단할 수 있다.
동작 1417에서, 프로세서(120)는 신규 프로세스의 종료인 것으로 판단하면(동작 1417의 예), 동작 1419에서, 기존 프로세스에 대한 계속 실행을 처리할 수 있다. 예를 들면, 프로세서(120)는 신규 프로세스는 종료하고, 기존 프로세스에 대한 데이터 전송 동작을 계속하여 실행할 수 있다. 다양한 실시 예들에 따라, 프로세서(120)는 신규 프로세스를 종료할 때, 기존 프로세스를 위한 리소스를 재할당(분배)할 수 있다. 예를 들면, 프로세서(120)는 신규 프로세스를 실행하기 이전에 기존 프로세스에 할당된 리소스에 기초하여 데이터 전송을 처리할 수 있다.
동작 1417에서, 프로세서(120)는 기존 프로세스의 종료인 것으로 판단하면(동작 1417의 아니오), 동작 1421에서, 신규 프로세스에 대한 계속 실행을 처리할 수 있다. 예를 들면, 프로세서(120)는 기존 프로세스는 종료하고, 신규 프로세스에 대한 동작을 계속하여 실행할 수 있다. 다양한 실시 예들에 따라, 프로세서(120)는 기존 프로세스를 종료할 때, 신규 프로세스를 위한 리소스를 재할당(분배)할 수 있다. 예를 들면, 프로세서(120)는 신규 프로세스를 실행하는 것에 관련된 리소스를 보다 할당하여 신규 프로세스의 처리에 따른 성능 또는 속도 등을 향상할 수 있다.
도 15는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스 실행 방법을 도시하는 흐름도이다.
도 15를 참조하면, 동작 1501에서, 전자 장치(400)의 프로세서(120)는 프로세스 우선순위를 판단할 수 있다. 예를 들면, 프로세서(120)는 신규 프로세스가 기존 프로세스에 의해 통합 처리 가능한 리소스의 범위에 포함되지 않으면(예: 도 14의 동작 1405의 아니오), 기존 프로세스와 신규 프로세스에 대한 프로세스 우선순위를 판단할 수 있다. 다양한 실시 예들에서, 프로세스에 대한 우선순위 판단은 선택적으로 수행할 수 있다. 예를 들면, 도 15에서 동작 1501은 수행하지 않고, 동작 1503으로 바로 진행할 수 있다.
동작 1503에서, 프로세서(120)는 프로세스에 대응하여 데이터 분할 정보를 판단할 수 있다. 다양한 실시 예들에서, 데이터 분할 정보에 대하여 후술하는 도면들을 참조하여 상세히 설명된다.
동작 1505에서, 프로세서(120)는 판단하는 분할 정보에 기초하여 프로세스를 처리할 리소스를 할당(분배)할 수 있다. 예를 들면, 프로세서(120)는 기존 프로세스와 신규 프로세스의 프로세스 별 가능한 리소스를 분할 정보에 기초하여 할당할 수 있다.
다양한 실시 예들에 따르면, 전자 장치(400)의 프로세서(120)는 기존 프로세스와 신규 프로세스를 동시에 동작할 수 있다. 예를 들면, 전자 장치(400)는 도킹 스테이션(500)과 연결되어 제1 프로세스에 관련된 동작을 실행하는 중에, 제2 프로세스에 따른 인터럽트를 감지할 수 있다. 전자 장치(400)는 제1 프로세스를 실행하는 중에 제2 프로세스에 따른 인터럽트를 감지하면, 제2 프로세스를 받아들이기 위해서 필요한 리소스와 방법을 판단할 수 있다. 이러한 과정에서, 도킹 스테이션(500)은 전자 장치(400)에게 외부 장치(600)가 어떠한 장치인지 에 대한 장치 정보(예: 장치의 종류, 능력, 성능, 용량 등)를 제공할 수 있고, 전자 장치(400)에서 지원할 수 있는 부분을 계산하여 제공할 수도 있다. 전자 장치(400)의 프로세서(120)는 도킹 스테이션(500)을 통해 전달받은 외부 장치(600)와, 전자 장치(400)가 가지는 리소스를 계산하고, 가능한 리소스를 검색하여 신규 프로세스가 기존 프로세스에 통합 처리가 가능한 프로세스인지 여부를 확인할 수 있다. 프로세서(120)는 신규 프로세스가 통합 처리가 가능하지 않은 경우, 기존 프로세스와 신규 프로세스에 대한 프로세스 우선순위를 선택(결정)하고, 차등적으로 리소스를 할당하여 프로세스를 수행할 수 있다.
이하에서는, 다양한 실시 예들에 따라 프로세스에 대해 리소스를 차등적으로 할당(분배)하는 동작 예시들에 대하여 살펴보기로 한다.
다양한 실시 예들에 따르면, 영상 데이터를 조정하여 데이터의 용량을 조정할 수 있다. 다양한 실시 예들에서, 밀리미터파(mmWave) 통신(예: 근접 64GHz, WiGig 등)의 경우, 데이터 레이트(data-rate)가 3Gbps 급이며, 차세대(next generation)에서는 10Gbps 급의 통신이 가능할 수 있다. 이러한 전송률을 압축률, 프레임(frame)의 수, 또는 화질의 해상도 등에 적어도 일부에 따라 데이터의 용량을 조절할 수 있다. 한 실시 예에 따르면, 해상도를 HD, FHD, QHD, UHD, 8K로서 조정하여 셋-업하고, 각 해상도에 따라서 다른 압축률로 용량을 조정할 수 있다. 아래 <표 2>는 다양한 실시 예들에서, 데이터의 용량을 조절하는 예시를 나타낼 수 있다.
Resolution | Bandwidth(bits) | |||||||
Compress | Raw data | 1/3 Compress | 1/4 Compress | 1/5 Compress | ||||
fps/bits | 30fps/24bits | 60fps/24bits | 30fps/24bits | 60fps/24bits | 30fps/24bits | 60fps/24bits | 30fps/24bits | 60fps/24bits |
HD | 663,552,000 | 1,327,104,000 | 221,184,000 | 442,368,000 | 165,888,000 | 331,776,000 | 132,710,400 | 265,420,800 |
Full HD | 1,492,992,000 | 2,985,984,000 | 497,664,000 | 995,328,000 | 373,248,000 | 746,496,000 | 298,598,400 | 597,196,800 |
QHD | 2,654,208,000 | 5,308,416,000 | 884,736,000 | 1,769,472,000 | 663,552,000 | 1,327,104,000 | 530,841,600 | 1,061,683,200 |
UHD | 5,971,968,000 | 11,943,936,000 | 1,990,656,000 | 3,981,312,000 | 1,492,992,000 | 2,985,984,000 | 1,194,393,600 | 2,388,787,200 |
8K | 23,887,872,000 | 47,775,744,000 | 7,962,624,000 | 15,925,248,000 | 5,971,968,000 | 11,943,936,000 | 4,777,574,400 | 9,555,148,800 |
<표 2>의 예시에 나타낸 바와 같이, <표 2>는 해상도(resolution), 프레임(frame), 압축(compress)에 따른 필요 데이터-레이트(data-rate)를 나타낸 것이다. <표 2>를 참조하여 살펴보면, 한 실시 예에 따르면, 1/3, 1/4, 1/5의 압축률로 원하는 용량을 조절할 수 있다. 또한, 한 실시 예에 따르면, 30fps, 60fps 등의 프레임을 조정하여 용량을 조정할 수도 있다. 다양한 실시 예들에 따라, 앞서 전송 용량이 10Gbps라고 가정을 할 경우, 각 압축률 및 프레임 수 별로 <표 1>에 마킹된 부분과 같이 지원할 수 있다. 한 실시 예에 따르면, Full HD까지 RAW Data를 무압축으로 처리가 가능하며, 그보다 높은 High resolution의 QHD, UHD, 8K의 데이터를 처리하기 위해서는 Loss-less 압축을 통하여 가능할 수 있다. 또한 다양한 실시 예들에 따르면, 압축 방식뿐만 아니라 기존의 프레임 레이트(frame-rate)를 변경(예: 60fps 영상을 30fps로 변경)하여 용량을 줄여서 전송하는 것도 가능할 수 있다.
다양한 실시 예들에 따르면, 오디오 데이터를 조정하여 데이터의 용량을 조정할 수 있다. 예를 들면, 아래 <표 3>과 같이 다양한 오디오 품질에 대해서 코덱을 통한 압축률을 선택하여 용량 조절이 가능할 수 있다.
오디오 품질 | 압축 |
32kbps | AM 품질 |
96kbps | FM 품질 |
192kbps | DAB (디지털 오디오 방송) 품질 |
224 ~ 320kbps | CD 품질 |
96 ~ 640kbps | 손실 데이터 압축 중 돌비 디지털 (AC3)규격의 비트레이트 범위 |
1,536kbps | DTS, 콤팩트 디스크 디지털 오디오의 PCM 소리 포맷 |
6,000kbps | 손실 데이터 압축 중 DTS-HD High Resolution AUDIO 규격의 최대 비트레이트 |
18,000kbps | 무손실 데이터 압축 ->Dolby TRUE HD 규격의 최대 비트레이트 (VBR) |
24,500kbps | 무손실 데이터 압축 -> DTS-HD MASTER AUDIO 규격의 최대 비트레이트(VBR) |
다양한 실시 예들에서, <표 3>의 예시와 같은 압축률 선택은, 예를 들면, 아래의 <표 4>에서 오디오 코덱의 각 방식에 따라서 압축률을 선택할 수 있으며, 이는 코덱을 선택하여 압축률을 선택하고 그에 대응하여 용량을 결정하는 방식일 수 있다.
데이터 압축 구현 및 압축 소프트웨어 | |||
영상 코덱 |
손실 | MPEG-4 ASP | 3ivx, DivX, FFmpeg MPEG-4, HDX4, Xvid |
H.264/MPEG-4 AVC | CoreAVC, HDX4, 퀵타임 H.264, x264 | ||
기타 | 시네팩, FFmpeg, Dirac, Indeo, VP3, VP7, Pixlet, Tarkin, Theora, WMV | ||
무손실 | CorePNG, FFV1, Huffyuv, Lagarith, MSU 비손실 | ||
오디오 코덱 | 일반 | 돌비 디지털, ADPCM, ATRAC, Musepack, TwinVQ, Vorbis, WMA | |
발음/목소리 | iLBC, IMBE, iSAC, QCELP, Speex | ||
무손실 | 애플 무손실, 돌비 트루HD, DTS-HD 마스터 오디오, OptimFROG, FLAC, APE, TTA, WavePack, WMA 무손실 | ||
압축 소프트웨어 | 오픈 소스 | 7-Zip, File Roller, KGB, PeaZip, The Unarchiver | |
프리웨어 | 다집, 반디집, 빵집, 콩집, DGCA, FilZip, GCA, IZArc, TUGZip, Zipeg, ZipGenius | ||
상용 | 알집, 파워아카이버, BOMArchiveHelper, MacBinary, Squeez, Stuffit, V3 Zip, WinAce, WinRAR, WinRK, WinZip | ||
명령 줄 | ARC, ARJ, JAR, bzip2, compress, gzip, Infor-ZIP, LHA, lzop, NABOB, PAQ, PKZIP, RAR, SBC, UPX |
다양한 실시 예들에서는, <표 4>의 예시에 도시된 바와 같은 여러 방식의 포맷, 또는 영상과 음성의 코덱 등에 적어도 일부에 따라 상황 선택을 적절히 하여, 영상과 음성을 포함한 전체의 용량을 조절할 수 있다.
다양한 실시 예들에 따르면, 전자 장치(400)의 회로(예: 코어, 프로세서, 통신 자원 등) 별로 분리 처리를 통해 용량을 조정할 수 있다. 이의 예시들에 대해 도면을 참조하여 살펴보기로 한다.
도 16은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 16에 도시한 바와 같이, 도 16은 전자 장치(400)의 프로세서(120)의 코어 별로 분리 처리하는 경우의 예시를 나타낼 수 있다.
도 16을 참조하면, 동작 1601에서, 프로세서(120)는 코어 정보를 획득할 수 있다. 다양한 실시 예들에서, 코어 정보는 프로세서(120)의 코어 개수 또는 클럭 셋(clock set) 정보(예: CPU 클럭 정보) 등을 포함할 수 있다.
동작 1603에서, 프로세서(120)는 외부 장치(600)에 관련된 장치 정보를 획득할 수 있다. 예를 들면, 프로세서(120)는 도킹 스테이션(500)을 통해 도킹 스테이션(500)에 연결된 외부 장치의 개수, 외부 장치의 종류(능력) 등을 획득할 수 있다. 또는 프로세서(120)는 도킹 스테이션(500)과 최초 연결 시 도킹 스테이션(500)을 통해 획득되어 전자 장치(400)에 저장된 외부 장치(600)에 대한 장치 정보를 추출할 수 있다.
동작 1605에서, 프로세서(120)는 코어 정보 및 장치 정보에 대응하여 프로세스에 대한 분배를 설정할 수 있다. 예를 들면, 프로세서(120)는 기존 프로세스와 신규 프로세스의 프로세스별 가능한 리소스를 코어 정보와 장치 정보를 고려하여 차등적으로 분배할 수 있다.
동작 1607에서, 프로세서(120)는 분배 설정에 기초하여 프로세스를 처리할 리소스를 할당(분배)할 수 있다.
다양한 실시 예들에 따라, 코어 별로 분리 처리하는 동작은 다음과 같이 이루어질 수 있다. 예를 들면, 전자 장치(400)는 내부 프로세서(120)의 코어 개수, 클럭 셋 정보 등을 획득하고, 지원할 수 있는 외부 장치의 특성을 도킹 스테이션(500)을 통해 전달받을 수 있다. 이후, 전자 장치(400)는 외부 장치(600)의 장치 정보를 기반으로 운영 방법을 결정할 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 현재 전자 장치(400)에서 사용 가능한 코어의 개수 및 용량을 파악하고 각 외부 장치(600) 별로 지원 가능한 성능을 확인할 수 있다. 이어서, 전자 장치(400)는 외부 장치(600) 별로 코어의 분배 설정을 진행할 수 있다. 예를 들면, 전자 장치(400)의 프로세서(120)를 구성하는 코어가 총 8개이고 사용 가능한 코어가 6개 있다고 가정하고, 외부 장치(600)(예: 외부 디스플레이 장치)의 개수가 2개일 경우를 가정한다. 그리고 제1 외부 디스플레이 장치에는 FHD, 제2 외부 디스플레이 장치에는 WQHD를 지원하는 경우를 가정하면, 전자 장치(400)는 제1 외부 디스플레이 장치에는 코어를 2개 할당하고 제2 외부 디스플레이 장치에는 4개를 할당할 수 있다. 이때, 전자 장치(400)의 각 코어 별로 성능이 다를 수 있으며, 이에 전자 장치(400)는 코어의 성능에 따라 코어 수를 변경하여 할당할 수도 있다.
다양한 실시 예들에서, 만약, 코어의 수와 용량이 연결된 외부 장치(600)의 성능을 만족시키지 못하는 경우, 예를 들면, 디스플레이 처리 중 네트워크나 전자 장치(400)의 부하(load) 등의 제약으로, 또는 처리량(throughput)이 떨어지는 경우, 전송하는 데이터를 다운스케일링(downscaling)하여 성능을 유지할 수도 있다. 이는 전술한 바와 같이 데이터를 줄이거나 압축하는 방법으로 가능할 수 있다.
도 17은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 도면이다.
도 17에 도시한 바와 같이, 도 17은 프로세서(예: AP, CP) 별로 분리 처리하는 경우의 예시를 나타낼 수 있다.
도 17을 참조하면, 프로세서(예: AP(1710), CP(1730))를 구분하여 프로세스에 대한 분리 처리는, 전술한 코어의 분리와 유사한 방법으로 수행될 수 있다. 예를 들면, 다양한 실시 예들에 따르면, 데이터의 성격 및 종류에 따라 AP(1710)와 CP(1730) 별로 처리가 가능할 수 있다. 한 실시 예에 따르면, AP(1710)와 CP(1730) 모두 다 코어를 가지고 있고, 그에 따라 같은 종류의 데이터를 분리하여 처리할 수 있으나, 모든 데이터가 AP(1710)에 몰릴 수 있다. 따라서 다양한 실시 예들에서는, 전자 장치(400)의 부하를 줄이기 위해 간단한 작업은, CP(1730)에서 처리하도록 할 수 있다. 예를 들면, 외부 장치(600)를 통한 영상 데이터가 전송될 경우 메시지(예: SMS) 수신이나 콜(call)과 같은 작업은 AP(1710)를 통할 필요 없이 CP(1730)에서 바로 처리하도록 할 수 있다. 일 예로, 도 17에 도시한 바와 같이, 영상 데이터는 AP(1710)를 이용하여 도킹 스테이션(500)과 연결된 외부 장치(600)에 전송하도록 하고, SMS 등 간단한 작업은 CP(1730)를 이용하여 전자 장치(400)에 바로 표시하여 전자 장치(400) 내부의 리소스(resource)를 효율적으로 처리하도록 할 수 있다.
도 18은 본 발명의 다양한 실시 예들에 따른 시스템에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 도면이다.
도 18에 도시한 바와 같이, 도 18은 통신 자원 별로 분리 처리하는 경우의 예시를 나타낼 수 있다. 도 18에서는 전자 장치(400)와 연결되는 도킹 스테이션(500)을 예시로 도시하였으나, 도 18에 따른 동작은 전자 장치(400)와 외부 장치(600) 간에도 수행될 수 있다. 예를 들면, 도 18에서 도킹 스테이션(500)은 외부 장치(600)로 대체될 수도 있다.
도 18을 참조하면, 동작 1801에서, 전자 장치(400)와 도킹 스테이션(500)은 제2 무선 통신(예: BT, WiGig, WiFi 등)으로 제1 데이터 통신을 수행할 수 있고, 동작 1803에서, 전자 장치(400)와 도킹 스테이션(500)는 제1 무선 통신(예: 초고속 근접 통신)으로 제2 데이터 통신을 수행할 수 있다. 한 실시 예에 따르면, 전자 장치(400)는 제1 무선 통신부(430)를 통해 제2 데이터를 전송할 수 있고, 제2 무선 통신부(440)를 통해 제1 데이터를 전송할 수 있다. 도킹 스테이션(500)은 제3 무선 통신부(510)를 통해 제2 데이터를 수신할 수 있고, 제4 무선 통신부(520)를 통해 제2 데이터를 수신할 수 있다. 다양한 실시 예들에 따라 제1 데이터와 제2 데이터는, 리소스 할당에 따라 하나의 데이터가 분할된 데이터이거나, 서로 다른 데이터일 수 있다.
동작 1805 및 동작 1807에서, 전자 장치(400)의 제1 프로세서(120)와 도킹 스테이션(500)의 제2 프로세서(570)는 연결 해제 이벤트 발생을 감지할 수 있다. 예를 들면, 전자 장치(400)의 제1 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500) 간의 거리가 통신 가능한 거리보다 멀어지는 경우, 도킹 스테이션(500)과 연결 해제를 판단할 수 있다. 또한 도킹 스테이션(500)의 제2 프로세서(570)는 도킹 스테이션(500)과 전자 장치(400) 간의 거리가 통신 가능한 거리보다 멀어지는 경우, 전자 장치(400)와 연결 해제를 판단할 수 있다.
동작 1817에서, 전자 장치(400)와 도킹 스테이션(500)은 연결 해제될 수 있다. 다양한 실시 예들에 따라, 전자 장치(400)와 도킹 스테이션(500)의 연결 해제는 지원 가능한 거리를 벗어나는 시점에서 자동으로 해제될 수 있다.
동작 1809에서, 제1 프로세서(120)는 제1 무선 통신부(430)를 이용하여 전송 중인 데이터에 대한 핸드오버를 결정할 수 있다. 예를 들면, 제1 프로세서(120)는 제1 무선 통신부(430)를 이용하여 제1 무선 통신으로 전송 중인 데이터를 제2 무선 통신부(440)를 이용하여 제2 무선 통신을 통해 끊김 없이 전송하도록 핸드오버를 결정할 수 있다.
동작 1811에서, 제2 프로세서(570)는 제3 무선 통신부(510)를 이용하여 수신 중인 데이터에 대한 핸드오버를 준비할 수 있다. 예를 들면, 제2 프로세서(570)는 제3 무선 통신부(510)를 이용하여 제1 무선 통신으로 수신 중인 데이터를 제4 무선 통신부(520)를 이용하여 제2 무선 통신을 통해 끊김 없이 수신하도록 핸드오버를 준비할 수 있다.
동작 1813에서, 제1 프로세서(120)는 가능한 용량을 계산할 수 있다. 예를 들면, 제1 프로세서(120)는 제2 무선 통신의 통신 방식에서 처리 가능한 용량을 계산할 수 있다.
동작 1815에서, 제1 프로세서(120)는 제1 무선 통신에 대응하는 성능으로 전송 중인 데이터를, 제2 무선 통신에 대응하는 성능의 데이터로 다운스케일링(downscaling) 할 수 있다. 예를 들면, 제1 프로세서(120)는 기존 데이터를 FHD 또는 고압축 등으로 다운스케일링 할 수 있다.
동작 1819에서, 제1 프로세서(120)는 다운스케일링된 데이터를 제2 무선 통신부(440)를 이용하여 제2 무선 통신으로 도킹 스테이션(500)에 전송하도록 처리할 수 있다. 다양한 실시 예들에 따라, 제1 프로세서(120)는, 예를 들면, 제1 데이터 통신에 따른 데이터와 제2 데이터 통신에 따른 데이터가 서로 다른 데이터인 경우, 제2 무선 통신부(440)를 이용한 제2 데이터 통신에 따른 데이터 전송은 유지하면서, 다운스케일링된 데이터를 전송하도록 처리할 수 있다. 또는 제1 프로세서(120)는, 예를 들면, 제1 데이터 통신에 따른 데이터와 제2 데이터 통신에 따른 데이터가 동일한 데이터이고 리소스 분배에 따라 분할된 데이터인 경우, 제2 무선 통신부(440)를 이용한 데이터와 제1 무선 통신부(430)를 이용한 데이터를 결합하고, 결합된 데이터를 다운스케일링 하여 하나의 데이터로서 전송하도록 처리할 수 있다.
동작 1821에서, 전자 장치(400)와 도킹 스테이션(500)은 제2 무선 통신으로 제3 데이터 통신을 수행할 수 있다. 한 실시 예에 따르면,
전자 장치(400)는 제2 무선 통신부(430)를 통해 제3 데이터 독립적으로 또는 하나의 데이터로 전송할 수 있다. 도킹 스테이션(500)은 제4 무선 통신부(510)를 통해 제3 데이터를 수신할 수 있다.
다양한 시실 예들에 따르면, 전자 장치(400)와 도킹 스테이션(500) 간에는 기본적으로 제1 무선 통신(예: 초고속 근접 통신)으로 연결이 되고, 그 이외의 기타 제2 무선 통신(예: BT, WiGig, WiFi 등)과 같이 추가적인 통신을 더 구성 및 연결하여 사용성을 높일 수 있다. 이는, 전자 장치(400)와 도킹 스테이션(500) 간, 전자 장치(400)와 외부 장치(600) 간, 또는 도킹 스테이션(500)과 외부 장치(600) 간에 추가적으로 연결될 수 있으며, 각 장치들 간의 연결에 있어 보조적으로 도움을 받을 수도 있고, 메인 연결(예: 제1 무선 통신에 의한 연결)이 잠시 해제될 경우(예: 도킹 스테이션(500)과 전자 장치(400)가 잠시 떨어질 경우), 제1 무선 통신(예: 초고속 근접 통신)의 연결 대신에 제2 무선 통신을 사용하여 연결을 지속할 수 있고, 제1 무선 통신 및 무선 충전의 접촉 프로세스를 사전에 도와줄 수도 있다.
한 실시 예에 따르면, 제2 무선 통신의 통신 방식이 와이파이인 경우, 802.11n의 현재 가장 많이 사용되는 와이파이 규격으로 최대 150Mbps를 지원할 수 있다. MIMO를 지원한다면, 예를 들면, 600Mbps를 최대로 지원할 수 있고, 이러한 경우 HD 급 영상 데이터나 FHD 급 압축 데이터를 전송하여 처리할 수 있다.
한 실시 예에 따르면, 제2 무선 통신의 통신 방식이 와이기그일 경우에는, 제1 무선 통신(예: 초고속 근접 통신)의 데이터 전송 속도와 유사한 전송 속도를 제공할 수 있다. 예를 들면, 와이기그는 최대 7Gbps를 지원할 수 있으며, 매우 높은 직진성과 방향성을 가질 수 있다. 다양한 실시 예들에 따르면, 제1 무선 통신(예: 초고속 근접 통신)과 제2 무선 통신(예: 와이기그)가 함께 연결하여, 예를 들면, 두 배의 전송 속도를 보장하여 시너지 효과를 낼 수도 있다. 한 실시 예에 따라, 전술한 바와 같이 8K의 동영상이나 UHD 급 동영상을 보다 원활하게 지원할 수 있게 된다. 또는 전자 장치(400)와 도킹 스테이션(500) 간에 접촉이 해제되어 제1 무선 통신이 끊어지고, 제2 무선 통신(예: 와이기그)으로만 데이터 전송이 이루어 질 경우에도 일정한 영역 내에서는 문제 없이 일정한 데이터를 전송할 수 있다.
한 실시 예에 따르면, 제2 무선 통신의 통신 방식이 블루투스 및 기타 통신 방식의 경우에는, 용량에 한계로 큰 사이즈의 영상을 제공하는데 무리가 있을 수 있다. 그러나 제2 무선 통신을 이용하여 음성 데이터를 전송하거나, 제2 무선 통신을, 제1 무선 통신을 보다 원활하게 연결을 도와주는 매개체가 되거나, 또는 사용성을 확장하여 줄 수 있는 역할을 할 수 있다. 예를 들면, BLE를 사용하여 전자 장치(400)와 도킹 스테이션(500) 간에 접촉이 해제되었을 경우, 바로 다시 연결할지 아니면 완전히 해제할지 사용자의 의도를 파악하는 것을 도와주는데 이용될 수도 있다.
다양한 실시 예들에 따라, 제1 무선 통신과 병행하여 사용하는 전술한 통신 방법의 효율적인 이용을 위해서는, 제1 무선 통신과 제2 무선 통신을 결합하여 데이터 통신을 진행하고, 데이터의 전송 속도를 늘리는 방법과 제1 무선 통신을 보조하여 계속 연결을 유지할 수 있게 하는 방법이 있을 수 있다. 예를 들면, 전자 장치(400)와 도킹 스테이션(500)의 접촉이 해제되었을 경우에도, 제1 무선 통신으로 전송 중인 영상 데이터를 유지하기 위해서 해당 통신 수단을 핸드오버 하는 경우, 끊김 없도록(seamless) 하는 전환이 가능하다. 이러한 에시를 도 19를 참조하여 살펴본다.
도 19는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 리소스를 할당하는 예시를 설명하기 위해 도시하는 도면이다.
도 19를 참조하면, 예시(1910)에 도시한 바와 같이, 그래픽 프로세서(graphic processor)의 Core0에서 QHD 급 영상 데이터를 처리하여 제1 무선 통신으로 통신을 수행하고 있는 중, 네트워크 환경의 변화로 2Gbps 급을 유지하지 못하는 경우, 영상 데이터의 표시가 끊기는 경우가 발생할 수 있다. 이에, 다양한 실시 예들에서는, 예시(1920)에 도시한 바와 같이, 제2 무선 통신을 사용할 수 있다. 예를 들면, Core1에서는 기존 영상 데이터를 FHD 또는 고압축 등으로 다운스케일링 하여 처리를 하고, Core0를 모니터링 하면서 원활한 처리가 되지 않을 때, Core1으로 쉬프트(shift)를 하여 영상 데이터의 표시를 유지할 수 있다. 이때, 통신 수단은 동일 수단으로 유지할 수도 있으며, 다른 수단으로 핸드오버 할 수도 있다.
다양한 실시 예들에서는, 전술한 여러 가지 방법들을 통해서 전자 장치(400), 도킹 스테이션(500), 그리고 외부 장치(600) 간에 데이터 전송 시 상황에 맞는 프로파일을 구성하여 가능한 시나리오를 대응할 수 있도록 구성할 수 있다.
예를 들어, 도 19를 참조하여 살펴보면, 도 19는 제1 무선 통신으로 데이터를 전송을 운영하는 방식에서, 새로운 프로세스(예: WiFi를 사용하는 경우)가 추가되는 경우에 대해 운영하는 방식의 예시를 나타낼 수 있다. 도 19에 도시한 바와 같이, 기존의 방식에서 두 개의 프로파일들(예: 도 을 참조한 프로파일1, 프로파일2)로서 나누어 각각 제1 무선 통신(예: 초고속 근접 통신)과 제2 무선 통신(예: WiFi 통신)을 지원할 수 있다. 한 실시 예에 따르면, 도 19의 예시(1920)에 도시한 바와 같이, 통신 방식에 따라 시스템(예: Core0, Core1), 프레임율(예: 30fps, 60fps), 압축률 등을 나누어서 진행하는 예시이다. 이러한 경우, 프로파일을 통신 방식에 따라 분배한 경우일 수 있으며, 상황에 따라 시스템, 데이터 전송 방식 등에 따라서도 프로파일을 분배하여 사용할 수 있다.
이하에서는, 첨부된 도면들을 참조하여, 다양한 실시 예들에 따라 다양한 시나리오 별로 프로파일을 이용하는 실시 예들에 대하여 살펴보기로 한다. 다양한 실시 예들에서, 새로운 프로세스가 추가되는 여러 실제 상황이 있을 수 있으며, 그에 따라 프로파일을 다양하게 구성하여 제공할 수 있다.
도 20은 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 도면이다.
도 20을 참조하면, 도 20은 전자 장치(400)가 외부 장치(600)와 연동하여 전자 장치(400)의 영상 데이터를 외부 장치(600)를 통해 표시하는 중에, 전자 장치(400)에 콜 이벤트가 수신된 경우에서, 전자 장치(400)와 도킹 스테이션(500)의 연결이 해제되는 경우의 시나리오를 나타낼 수 있다.
도 20에 도시한 바와 같이, 전자 장치(400)가 도킹 스테이션(500)과 접촉되고, 도킹 스테이션(500)에 외부 장치(600)가 연결된 상태에서, 전자 장치(400)의 데이터가 도킹 스테이션(500)을 통해 외부 장치(600)에 전달되어 표시될 수 있다. 이러한 상태에서, 전자 장치(400)에 콜이 수신되고, 사용자가 직접 전자 장치(400)를 들고 전화를 받을 경우, 전자 장치(400)와 도킹 스테이션(500) 간의 제1 무선 통신(예: 초고속 근접 통신)의 연결은 끊어지게 된다. 따라서 다양한 실시 예들에서는, 외부 장치(600)를 이용한 데이터 표시를 계속 유지하기 위하여, 통신 가능한 제2 무선 통신을 이용하여 연결을 전자 장치(400)와 도킹 스테이션(500) 간의 데이터 통신을 유지하도록 한다.
예를 들면, 기존 프로세스에 따라, 전자 장치(400)와 도킹 스테이션(500) 간에는 제1 무선 통신(예: 초고속 근접 통신)으로 통신하고, 도킹 스테이션(500)과 외부 장치(600) 간에는 HDMI, DP 등의 유선 연결로 통신하는 상태일 수 있다. 이러한 상태에서, 전자 장치(400)와 도킹 스테이션(500) 간에 제1 무선 통신의 연결이 해제되는 이벤트가 발생하는 경우, 새로운 프로세스에 따라, 전자 장치(400)와 도킹 스테이션(500) 간에는 제2 무선 통신(예: WiFi, WiGig 등)으로 통신하고, 도킹 스테이션(500)과 외부 장치(600) 간에는 기존 연결 방식을 유지할 수 있다.
한 실시 예에 따르면, 도킹 스테이션(500)이 제2 무선 통신(예: WiFi 및/또는 WiGig 등)를 지원하기 위한 관련 통신부를 포함할 수 있으며, 전자 장치(400)와 도킹 스테이션(500) 간에 처음 연결 시 제1 무선 통신을 이용하여 연결을 수행할 뿐만 아니라 제2 무선 통신에 대응하는 연결도 셋업할 수 있다. 이후, 특정 이벤트로 인하여, 전자 장치(400)와 도킹 스테이션(500)의 접촉 해제가 발생하는 경우, 제1 무선 통신을 해제하고 제2 무선 통신의 연결을 활성화 시켜, 통화도 수행하면서 데이터를 도킹 스테이션(500)을 통해 통해 외부 장치(600)에 전송하는 동작을 수행할 수 있다.
도 21은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하기 위한 프로파일을 설명하기 위해 도시하는 도면이다.
도 21을 참조하면, 다양한 실시 예들에서, 전자 장치(400), 도킹 스테이션(500), 또는 외부 장치(600) 중 적어도 둘 이상의 장치들 간의 연결 방식, 각 장치들의 능력(성능), 전자 장치(400)의 동작 모드(상태), 프로세스의 종류, 전송 영상 데이터의 종류 등과 같은 다양한 상황을 고려하여 하나 또는 그 이상의 프로파일들(예: 프로파일1, 프로파일2, 프로파일3, 프로파일4 등)을 구성할 수 있다. 다양한 실시 예들에 따르면, 전자 장치(400)는 전자 장치(400)가 실행하는 프로세스 및 프로세스 실행 시점의 상황을 고려하여 실시간으로 프로파일을 구성할 수도 있다.
다양한 실시 예들에 따라, 전자 장치(400)는 프로세스 처리 중에 각 상황에 맞는 프로파일을 로드 할 수 있다. 다양한 실시 예들에서, 프로파일을 통해 결정되는 것은, 예를 들면, 통신 수단, 요구 데이터 레이트, 연결된 주변 장치 또는 그 환경, 전송 영상 데이터(video data), 동작 모드, 사용 환경 등에 따라 다양하게 구분될 수 있다.
한 실시 예에 따라, 도 21에서 예시로 도시한 프로파일1에서는 Desktop mode(또는 PC mode)로 사용되는 기본 케이스를 예로 나타낼 수 있다. 한 실시 예에 따라, 프로파일1에 따르면, 커넥티비티(connectivity)의 경우 60GHz 대역을 사용하는 초고속 근접 통신 방식인 제1 무선 통신(예: S60)을 사용하며, 이때 데이터 레이트는 3Gbps까지 보장이 가능하다. 또한 연결되어 있는 외부 장치(600)(예: Monitor)를 통해 출력 가능 해상도 및/또는 주변 장치 등을 통해 Desktop mode로 동작할 것인지, 또는 Display mode로 동작할 것인지를 정의할 수 있다. 한 실시 예에 따라, Desktop mode로 최적화된 QoS를 보상해주기 위해 QHD, 60fps, DSC 압축을 사용하도록 설정될 수 있다. 또한, Core0에서 관련 처리(processing)을 수행하도록 하여 최상의 성능을 보장하도록 할 수 있다.
한 실시 예에 따라, 도 21에서 예시로 도시한 프로파일2에서는 프로파일1에서와 달리 Desktop mode가 아닌 Video mode로 프레임 레이트(frame rate)를 낮추고 무압축된 영상 데이터를 전송하도록 설정된 예시일 수 있다.
한 실시 예에 따라, 도 21에서 예시로 도시한 프로파일3에서는 프로파일1에서 전자 장치(400)와 도킹 스테이션(500) 간에 제1 무선 통신이 해제되는 이벤트(예: 전자 장치(400)와 도킹 스테이션(500) 간의 제1 무선 통신 연결 해제)의 발생과 함께 제2 무선 통신(예: WiFi)을 통해 영상 데이터를 전송하도록 설정된 예시일 수 있다. 프로파일3에 따를 때, 영상 데이터가 제2 무선 통신을 통해 전송되므로, 예를 들면, 대략 800Mbps까지 보장하고, 최소한의 QoS를 위해서 FHD, 60fps, H.264로 전송할 수 있다. 또한 Core1에서 관련 처리를 수행하도록 하여 프로파일1로 재동작할 때를 대비하여, Core0의 부하를 최소화할 수 있다.
도 22는 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 도면이다.
도 22를 참조하면, 도 21은 전자 장치(400)가 외부 장치(600)와 연동하여 전자 장치(400)의 영상 데이터를 외부 장치(600)를 통해 표시하는 중에, 전자 장치(400)에 콜 이벤트가 수신된 경우에서, 전자 장치(400)와 도킹 스테이션(500)의 연결이 해제되는 경우의 시나리오를 나타낼 수 있다. 이때, 도 21에서는 도킹 스테이션이 제2 무선 통신(예: WiFi, WiGig 등)을 지원하지 않는, 예를 들면, 제2 무선 통신을 위한 관련 통신 수단(예: 제4 무선 통신부(520))을 포함하지 않는 경우의 예시를 나타낼 수 있다. 또한 도 21에서는 외부 장치(600)에서 전자 장치(400)와 제2 무선 통신을 지원하는 경우를 나타낼 수 있다. 따라서 외부 장치(600)는 제2 무선 통신을 위한 관련 통신 수단(예: 제5 무선 통신부(미도시))를 포함할 수 있다.
도 22에 도시한 바와 같이, 전자 장치(400)는 도킹 스테이션(500)과 초기 연결 시 제1 무선 통신(예: 초고속 근접 통신)을 이용하여 연결을 수행할 수 있고, 도킹 스테이션(500)과의 연결이 아닌 외부 장치(600)(예: 디스플레이 장치)와의 제2 무선 통신(예: WiFi, WiGig 등)의 연결도 셋업할 수 있다.
이후, 전자 장치(400)는 콜 수신으로 인하여, 도킹 스테이션(500)과 접촉 해제(예: 도킹 스테이션(500)과 제1 무선 통신을 지원하는 거리 이상 멀어지는 경우)가 발생할 경우 도킹 스테이션(500)과의 제1 무선 통신을 해제하고 바로 외부 장치(600)와의 제2 무선 통신(예: WiFi, WiGig 등)의 연결을 활성화 할 수 있다. 이를 통해, 전자 장치(400)는 콜 수신에 따른 통화를 수행하면서, 데이터를 바로 외부 장치(600)로 전송하는 동작을 수행할 수 있다.
예를 들면, 기존 프로세스에 따라, 전자 장치(400)와 도킹 스테이션(500) 간에는 제1 무선 통신(예: 초고속 근접 통신)으로 통신하고, 도킹 스테이션(500)과 외부 장치(600) 간에는 HDMI 등의 유선 연결로 통신하는 상태일 수 있다. 이러한 상태에서, 전자 장치(400)와 도킹 스테이션(500) 간에 제1 무선 통신의 연결이 해제되는 이벤트가 발생하는 경우, 새로운 프로세스에 따라, 전자 장치(400)와 외부 장치(600) 간에는 제2 무선 통신(예: WiFi, WiGig 등)으로 통신하고, 도킹 스테이션(500)과 외부 장치(600) 간에는 기존 연결 방식을 유지할 수 있다.
다양한 실시 예들에 따르면, 도킹 스테이션(500)을 통해 외부 장치(600)(예: 디스플레이 장치)가 복수 개(예: 제1 디스플레이 장치(예: 모니터)와 제2 디스플레이 장치(예: VR 장치))가 연결될 수 있다. 이러한 상황에서 새 프로세스 발생에 대해, 프로파일을 해당 동작 상황 및/또는 통신 수단 등에 맞추어 정의하여 적용이 가능하다. 이러한 예시가 도 23에 도시된다.
도 23은 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 도면이다.
도 23을 참조하면, 전자 장치(400)가 도킹 스테이션(500)과 접촉되고, 도킹 스테이션(500)에 복수의 외부 장치(600)(예: 제1 외부 장치(610), 제2 외부 장치(620))가 연결된 상태에서, 전자 장치(400)의 데이터가 도킹 스테이션(500)을 통해 외부 장치(600) 중 적어도 하나에 전달되어 표시될 수 있다. 이러한 상태에서, 전자 장치(400)에서 콜이 수신되고, 사용자가 직접 전자 장치(400)를 들고 전화를 받을 경우, 전자 장치(400)와 도킹 스테이션(500) 간의 제1 무선 통신(예: 초고속 근접 통신)의 연결은 끊어질 수 있다.
예를 들면, 기존 프로세스에 따라, 전자 장치(400)와 도킹 스테이션(500) 간에는 제1 무선 통신(예: 초고속 근접 통신)으로 통신 또는 USB 등의 유선 연결로 통신하고, 도킹 스테이션(500)과 제1 외부 장치(610)은 HDMI, DP 등의 유선 연결로 통신하는 상태일 수 있다. 이러한 상태에서, 도킹 스테이션(500)에 새로운 제2 외부 장치(620)가 추가 연결되는 경우, 전자 장치(400)와 도킹 스테이션(500) 간에는 기존 연결을 유지할 수 있고, 도킹 스테이션(500)과 제1 외부 장치(610) 간에는 기존 연결을 유지할 수 있고, 도킹 스테이션(500)과 제2 외부 장치(620) 간에는 제2 무선 통신(예: WiFi, WiGig 등) 또는 유선 연결(예: HDMI, DP 등)으로 연결될 수 있다.
한 실시 예에 따라, 다수의 외부 장치(600)(예: 제1 외부 장치(610), 제2 외부 장치(620))가 도킹 스테이션(500)에 유선으로 연결될 경우, 전자 장치(400)가 도킹 스테이션(500)에 데이터를 전달하고, 도킹 스테이션(500)에서 각각의 외부 장치(600)(예: 제1 외부 장치(610), 제2 외부 장치(620))에 필요한 리소스를 재할당 할 수 있다.
한 실시 예에 따라, 다수의 외부 장치(600)(예: 제1 외부 장치(610), 제2 외부 장치(620))가 도킹 스테이션(500)에 각각 유선과 무선으로 연결될 경우, 전자 장치(400)에서 리소스를 할당하여 도킹 스테이션(500)을 통해 유선으로 데이터를 제1 외부 장치(610)에 전달하고, 전자 장치(400)와 제2 외부 장치(620) 간에 제2 무선 통신으로 연결하여 동작을 수행할 수 있다.
한 실시 예에 따라, 다수의 외부 장치(600)(예: 제1 외부 장치(610), 제2 외부 장치(620))가 도킹 스테이션(500)에 모두 무선으로 연결될 경우, 무선 신호의 방향성에 기초하여 연결할 외부 장치를 결정(예: WiGig 빔포밍을 통해) 해당 외부 장치를 통해 프로세스 실행할 수도 있다.
전술한 도 23과 같이 도킹 스테이션(500)에 다수의 외부 장치(600)가 연결되는 경우에 대한 프로파일의 예시가 도 24에 도시된다.
도 24는 본 발명의 다양한 실시 예들에 따른 시스템에서 프로세스를 처리하기 위한 프로파일을 설명하기 위해 도시하는 도면이다.
도 24를 참조하면, 도 24에 도시된 프로파일(예: 프로파일1, 프로파일3)의 예시에서는, 전술한 도 23을 참조한 설명 부분에서 설명한 바와 같이, 도킹 스테이션(500)에 추가 외부 장치(예: 제2 외부 장치(620))가 연결되는 상황에 대한 예시이다. 도 24에 도시한 바와 같이, 제1 외부 장치(610)(예: 디스플레이1)에 대해서는 프로파일1을 로드할 수 있고, 제2 외부 장치(620)(예: 디스플레이2)에 대해서는 프로파일3을 로드할 수 있다.
다양한 실시 예들에 따르면, 전자 장치(400)는 다수의 외부 장치(600)에 대응하여, 각 외부 장치(600), 2개의 PC mode에 대응하는 2개의 프로파일(예: 프로파일1, 프로파일2)에 기초하여 동작할 수 있고, 각 외부 장치(600)에 대응하는 프로파일에 기초하여 각 외부 장치(600)에 대한 리소스를 할당할 수 있다. 이에 따라, 전자 장치(400)는 다수의 외부 장치(600)에 대한 리소스를 최적화할 수 있으며, 각 외부 장치(600)에 영상 데이터를 전송할 수 있고, 최상의 사용성을 사용자에게 제공할 수 있다.
이하에서는, 다양한 실시 예들에 따라 기존 프로세스와 신규 프로세스에 의한 동작 중에, 신규 프로세스의 종료에 따라 다시 이전 상황으로 복귀하는 동작 예시들에 대하여 살펴보기로 한다.
도 25는 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 25를 참조하면, 동작 2501에서, 전자 장치(400)의 프로세서(120)는 제1 프로세스를 실행하는 상태일 수 있다. 예를 들면, 프로세서(120)는 도킹 스테이션(500)과 제1 무선 통신을 이용하여 데이터를 도킹 스테이션(500)에 전달하는 프로세스를 실행 중인 상태일 수 있다.
동작 2503에서, 프로세서(120)는 제1 프로세스를 실행하는 중에 제2 프로세스에 관련된 인터럽트 발생을 감지할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 처리하는 중에 제2 프로세스에 관련된 인터럽트 발생 여부를 판단할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 도킹 스테이션(500)과 제1 프로세스에 따른 데이터 통신 중에 제1 프로세스 외의 새로운 제2 프로세스(예: 콜 이벤트 수신, 외부 장치 추가 연결 등)를 감지할 수 있다.
동작 2505에서, 프로세서(120)는 제2 프로세스에 필요한 리소스를 계산할 수 있다. 예를 들면, 프로세서(120)는 제2 프로세스의 처리에 필요한 리소스를 판단하고, 관련 리소스를 계산할 수 있다.
동작 2507에서, 프로세서(120)는 제1 프로세스에 대한 처리 방식을 변경할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스의 처리에 관련된 제1 리소스에서, 제2 프로세스에 할당하기 위한 일부 리소스만큼 제외된 제2 리소스로 변경할 수 있다.
동작 2509에서, 프로세서(120)는 변경된 제1 프로세스와 제2 프로세스를 동시에 실행하기 위한 리소스를 재할당 및 우선순위를 선택할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 전술한 바와 같이 제1 프로세스에 관련된 리소스를 분배하여 제2 프로세스에 할당(분배)할 수 있다. 한 실시 예에 따라, 프로세서(120)는 프로세스 처리를 위한 리소스 할당 후, 프로세스의 우선 순위를 선택할 수 있고, 선택된 우선 순위에 기초하여 제1 프로세스와 제2 프로세스를 실행할 수 있다.
동작 2511에서, 프로세서(120)는 제2 프로세서의 종료를 감지할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스와 제2 프로세스를 재할당된 리소스에 기초하여 처리하는 중에, 제2 프로세스의 종료를 감지할 수 있다. 한 실시 에에 따르면, 프로세서(120)는 외부 장치(600)에 영상 데이터를 전송하는 제1 프로세스와, 통화를 수행하는 제2 프로세스를 실행하는 중에, 통화 종료에 따라 제2 프로세스의 종료를 감지할 수 있다.
동작 2513에서, 프로세서(120)는 변경된 제1 프로세스를 복원하기 위한 리소스를 확인할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 제1 프로세스를 기존 리소스(예: 제2 리소스로 변경되기 이전의 제1 리소스)에 따라 처리하기 위해 필요한 리소스를 확인할 수 있다.
동작 2515에서, 프로세서(120)는 제1 프로세스를 복원할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 변경되기 이전의 원래의 리소스(예: 제1 리소스)로 할당하여 처리할 수 있다.
이상에서 도 25를 참조하여 살펴본 바와 같이, 다양한 실시 예들에 따르면, 전자 장치(400)와 도킹 스테이션(500)이 근접하여 제1 프로세스를 실행 중인 상태에서, 새로운 제2 프로세스 발생에 따라 제1 프로세스의 리소스를 변경하여, 그 리소스의 일부를 제2 프로세스에 할당하고, 각 프로세스를 처리할 수 있다. 다양한 실시 예들에 따라, 제2 프로세스가 종료되어 제1 프로세스를 재시작 하는 경우에는, 제1 프로세스의 실행을 보다 끊김 없이 처리하고 보다 쉽고 빠르게 실행할 수 있다. 예를 들면, 제2 프로세스의 종료에 응답하여, 제1 프로세스의 리소스로부터 제2 프로세스에 분배된 리소스를 다시 제1 프로세스에 할당하여 제1 프로세스의 동작을 재개할 수 있다.
도 26은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 26을 참조하면, 동작 2601에서, 전자 장치(400)의 프로세서(120)는 제1 프로세스를 실행하는 상태일 수 있다. 예를 들면, 프로세서(120)는 도킹 스테이션(500)과 제1 무선 통신을 이용하여 데이터를 도킹 스테이션(500)에 전달하는 프로세스를 실행 중인 상태일 수 있다.
동작 2603에서, 프로세서(120)는 제1 프로세스를 실행하는 중에 제2 프로세스에 관련된 인터럽트 발생을 감지할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 처리하는 중에 제2 프로세스에 관련된 인터럽트 발생 여부를 판단할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 도킹 스테이션(500)과 제1 프로세스에 따른 데이터 통신 중에 제1 프로세스 외의 새로운 제2 프로세서(예: 콜 이벤트 수신, 외부 장치 추가 연결 등)를 감지할 수 있다.
동작 2605에서, 프로세서(120)는 제1 프로세스에 대한 실행 정보를 저장할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500)이 근접하여 제1 프로세스를 실행 중일 때, 새로운 제2 프로세스 발생에 응답하여 동작 중인 제1 프로세스를 중지할 수 있다. 예를 들면, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500)이 근접하여 제1 무선 통신으로 데이터 전송 중에, 전자 장치(400)와 도킹 스테이션(500)의 연결 해제에 따라 데이터 전송을 중지할 수 있다. 프로세서(120)는 제1 프로세스를 중지할 때 제1 프로세스에 대한 실행 정보(예: 제1 프로세스의 정보(예: 종류, 어플리케이션, 프로세스 중지 시점 정보 등), 도킹 스테이션(500)의 식별자, 제1 프로세스에 할당된 리소스, 또는 프로파일 등)를 저장할 수 있다.
동작 2607에서, 프로세서(120)는 제2 프로세스를 실행할 수 있다. 예를 들면, 프로세서(120)는 인터럽트에 대응하여 제1 프로세스를 중지하고, 제2 프로세스를 실행할 수 있다. 다양한 실시 예들에 따라, 프로세서(120)는 전술한 바와 같이, 제2 프로세스에 관련된 프로파일에 기초하여 제2 프로세스를 실행할 수 있다.
동작 2609에서, 프로세서(120)는 제2 프로세스의 종료 여부를 판단할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 중지한 상태에서 제2 프로세스를 처리하는 중에, 제2 프로세스의 종료 여부를 감지할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 외부 장치(600)에 영상 데이터를 전송하는 제1 프로세스를 중지한 상태에서, 통화를 수행하는 제2 프로세스를 실행하는 중에, 통화 종료에 따라 제2 프로세스의 종료를 감지할 수 있다.
동작 2609에서, 프로세서(120)는 제2 프로세스의 종료가 감지되지 않으면(동작 2609의 아니오), 동작 2607로 진행하여, 동작 2607 이하의 동작 수행을 처리할 수 있다.
동작 2609에서, 프로세서(120)는 제2 프로세스의 종료를 감지하면(동작 2609의 예), 동작 2611에서, 제1 타이머를 시작할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 제1 프로세스의 재시작과 관련된 제1 타이머를 시작할 수 있다. 다양한 실시 예들에서, 제1 타이머는, 실행 중지된 기존의 프로세서(예: 제1 프로세스)의 재개를 위한 대기시간을 카운트 하기 위한 타이머를 포함할 수 있다. 예를 들면, 프로세서(120)는 제1 타이머를 통해 전자 장치(400)와 도킹 스테이션(500)에 근접에 의해 제1 무선 통신으로 데이터 전송의 재개를 위한 시간을 카운트 할 수 있다.
동작 2613에서, 프로세서(120)는 제1 타이머 만료 내에 제1 프로세스의 재실행 요청이 있는지 여부를 판단할 수 있다. 예를 들면, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500)이 제1 무선 통신의 지원 가능한 거리 내에 근접하는 지 또는 사용자에 의해 기존의 제1 프로세스, 예를 들면, 데이터 전송 재개에 대한 요청이 있는지 여부를 판단할 수 있다.
동작 2613에서, 프로세서(120)는 제1 타이머 만료 이전에, 제1 프로세스에 대한 재실행 요청이 감지되면(동작 2613의 예), 동작 2615에서, 도킹 스테이션(500)의 식별자를 확인할 수 있다. 예를 들면, 프로세서(120)는 전자 장치(400)가 근접된 도킹 스테이션(500)의 식별자를 확인하여, 기존에 제1 프로세스에 연결된 도킹 스테이션(500)의 식별자에 대응하는지 여부를 판단할 수 있다. 프로세서(120)는 제1 프로세스를 중지할 때 저장된 실행 정보에 기초하여 도킹 스테이션(500)의 식별자를 확인할 수 있다.
동작 2615에서, 프로세서(120)는 도킹 스테이션(500)의 식별자가 확인되면(동작 2615의 예), 동작 2617에서, 제1 프로세스를 실행할 수 있다. 예를 들면, 프로세서(120)는 저장된 실행 정보에 기초하여, 기존의 제1 프로세스가 실행이 중지된 시점부터 기존의 리소스로 빠른 실행을 처리할 수 있다.
동작 2615에서, 프로세서(120)는 도킹 스테이션(500)의 식별자가 확인되지 않으면(동작 2615의 아니오), 연결을 초기화 할 수 있다. 예를 들면, 프로세서(120)는 기존 도킹 스테이션(500)과의 연결을 취소하고, 새로운 도킹 스테이션(500)과의 연결을 재설정할 수 있다.
동작 2613에서, 프로세서(120)는 제1 타이머 만료 동안, 제1 프로세스에 대한 재실행 요청이 감지되지 않으면(동작 2613의 아니오), 동작 2621에서 제2 타이머를 시작할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 제1 프로세스의 상태(예: 세션)을 유지하는 것에 관련된 제2 타이머를 시작할 수 있다. 다양한 실시 예들에서, 제2 타이머는, 제1 프로세스에 관련된 최소화된(minimized) 프로그램의 실행을 위한 대기시간을 카운트 하기 위한 타이머를 포함할 수 있다. 예를 들면, 프로세서(120)는 제2 타이머를 통해 제1 프로세스의 상태를 유지하기 위한 관련 프로그램(예: 데이터 전송 또는 재생에 관련된 어플리케이션 등)의 실행을 위한 입력(요청)을 위한 시간을 카운트 할 수 있다.
동작 2623에서, 프로세서(120)는 제2 타이머 만료 내에 프로그램의 실행 요청이 있는지 여부를 판단할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스에 관련된 최소화된 프로그램의 실행을 위한 요청이 있는지 여부를 판단할 수 있다.
동작 2623에서, 프로세서(120)는 제2 타이머 만료 동안, 프로그램의 실행이 감지되지 않으면(동작 2623의 아니오), 동작 2625에서, 제1 프로세스를 종료할 수 있다.
동작 2623에서, 프로세서(120)는 제2 타이머 만료 이전에, 프로그램의 실행이 감지되면(동작 2623의 예), 동작 2627에서, 해당 프로그램을 실행할 수 있다.
다양한 실시 예들에 따라, 동작 2621, 동작 2623, 동작 2627은 선택적으로 수행할 수도 있다. 예를 들면, 다양한 실시 예들에서는 동작 2613과 같이 제1 타이머 만료 동안 제1 프로세스의 재실행 요청이 감지되지 않으면, 동작 2621, 동작 2623, 동작 2627의 동작은 수행하지 않고, 동작 2625로 바로 진행하여 제1 프로세스를 종료할 수도 있다.
이상에서 도 26을 참조하여 살펴본 바와 같이, 다양한 실시 예들에 따르면, 전자 장치(400)와 도킹 스테이션(500)이 근접하여 제1 프로세스를 실행 중인 상태에서, 새로운 제2 프로세스 발생에 따라 제1 프로세스를 중지하고, 제2 프로세스를 실행할 수 있다. 다양한 실시 예들에 따라, 제2 프로세스가 종료되는 경우 제1 프로세스를 끊김 없이 빠르게 실행할 수 있다. 예를 들면, 제1 프로세스의 중지 시, 제1 프로세스에 관련된 실행 정보를 저장하고, 제2 프로세스의 종료 시 실행 정보에 기초하여 도킹 스테이션(500)과 빠르게 연결하고, 제1 프로세스가 중지된 시점에서부터의 동작을 빠르게 재개할 수 있다. 또한 다양한 실시 예들에서는 타이머를 통해 설정된 시간 동안 제1 프로세스의 복구를 대기하도록 하여, 불필요한 리소스 사용을 방지하도록 할 수 있다.
도 27은 본 발명의 다양한 실시 예들에 따른 전자 장치에서 프로세스를 처리하는 예시를 설명하기 위해 도시하는 흐름도이다.
도 27를 참조하면, 동작 2701에서, 전자 장치(400)의 프로세서(120)는 제1 프로세스를 실행하는 상태일 수 있다. 예를 들면, 프로세서(120)는 도킹 스테이션(500)과 제1 무선 통신을 이용하여 데이터를 도킹 스테이션(500)에 전달하는 프로세스를 실행 중인 상태일 수 있다.
동작 2703에서, 프로세서(120)는 제1 프로세스를 실행하는 중에 제2 프로세스에 관련된 인터럽트 발생을 감지할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 처리하는 중에 제2 프로세스에 관련된 인터럽트 발생 여부를 판단할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 도킹 스테이션(500)과 제1 프로세스에 따른 데이터 통신 중에 제1 프로세스 외의 새로운 제2 프로세서(예: 콜 이벤트 수신, 외부 장치 추가 연결 등)를 감지할 수 있다.
동작 2705에서, 프로세서(120)는 제1 프로세스에 대한 실행 정보를 저장할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500)이 근접하여 제1 프로세스를 실행 중일 때, 새로운 제2 프로세스 발생에 응답하여 동작 중인 제1 프로세스를 중지할 수 있다. 예를 들면, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500)이 근접하여 제1 무선 통신으로 데이터 전송 중에, 전자 장치(400)와 도킹 스테이션(500)의 연결 해제에 따라 데이터 전송을 중지할 수 있다. 프로세서(120)는 제1 프로세스를 중지할 때 제1 프로세스에 대한 실행 정보(예: 제1 프로세스의 정보(예: 종류, 어플리케이션, 프로세스 중지 시점 정보 등), 도킹 스테이션(500)의 식별자, 제1 프로세스에 할당된 리소스, 또는 프로파일 등)를 저장할 수 있다.
동작 2707에서, 프로세서(120)는 제2 프로세스를 실행할 수 있다. 예를 들면, 프로세서(120)는 인터럽트에 대응하여 제1 프로세스를 중지하고, 제2 프로세스를 실행할 수 있다. 다양한 실시 예들에 따라, 프로세서(120)는 전술한 바와 같이, 제2 프로세스에 관련된 프로파일에 기초하여 제2 프로세스를 실행할 수 있다.
동작 2709에서, 프로세서(120)는 제2 프로세스의 종료 여부를 판단할 수 있다. 예를 들면, 프로세서(120)는 제1 프로세스를 중지한 상태에서 제2 프로세스를 처리하는 중에, 제2 프로세스의 종료 여부를 감지할 수 있다. 한 실시 예에 따르면, 프로세서(120)는 외부 장치(600)에 영상 데이터를 전송하는 제1 프로세스를 중지한 상태에서, 통화를 수행하는 제2 프로세스를 실행하는 중에, 통화 종료에 따라 제2 프로세스의 종료를 감지할 수 있다.
동작 2709에서, 프로세서(120)는 제2 프로세스의 종료가 감지되지 않으면(동작 2709의 아니오), 동작 2707로 진행하여, 동작 2707 이하의 동작 수행을 처리할 수 있다.
동작 2709에서, 프로세서(120)는 제2 프로세스의 종료를 감지하면(동작 2709의 예), 동작 2711에서, 도킹 스케이션(500)과의 거리를 확인할 수 있다. 예를 들면, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500) 간의 제2 무선 통신(예: BLE 통신)을 이용하여, 전자 장치(400)와 도킹 스테이션(500) 간의 거리를 판별할 수 있다.
동작 2713에서, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500) 간의 거리(이하, 판단 거리)가 미리 설정된 기준 거리보다 큰지 여부를 판단할 수 있다. 다양한 실시 예들에서, 기준 거리는 전자 장치(400)와 도킹 스테이션(500) 간의 제1 무선 통신이 설정될 수 있는 통신 거리(예: 10Cm)와 동일하거나 큰 값으로 설정될 수 있다.
동작 2713에서, 프로세서(120)는 판단 거리가 기준 거리보다 큰 것으로 판단하면(동작 2713의 예), 동작 2715에서, 제1 프로세스를 종료할 수 있다. 예를 들면, 프로세서(120)는 판단 거리가 기준 거리보다 큰 경우, 전자 장치(400)와 도킹 스테이션(500) 간의 연결이 해지된 것으로 판단하고, 제1 프로세스(예: 제1 무선 통신에 기반한 영상 데이터 전송 등)의 동작을 종료할 수 있다.
동작 2713에서, 프로세서(120)는 판단 거리가 기준 거리보다 이하인 것으로 판단하면(동작 2713의 아니오), 동작 2717 및 동작 2719에서, 전자 장치(400)와 도킹 스테이션(500) 간의 거리를 추적하여 거리가 감소되는지, 또는 증가되는지 여부를 판단할 수 있다. 예를 들면, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500) 간의 거리가 근접되고 있는(가까워지고 있는) 상태인지, 도는 전자 장치(400)와 도킹 스테이션(500) 간의 거리가 멀어지고 있는 상태인지 여부를 판단할 수 있다. 한 실시 예에 따라, 프로세서(120)는 판단 거리의 변화(예: 감소 또는 증가)에 따라, 전자 장치(400)와 도킹 스테이션(500) 간의 거리의 감소 또는 증가 여부를 판단할 수 있다.
동작 2717에서, 프로세서(120)는 거리 감소가 감지되지 않으면(동작 2717의 아니오), 동작 2719에서, 거리가 증가 여부를 판단할 수 있다. 다양한 실시 예들에 따라, 프로세서(120)는 동작 2719에서 거리 증가를 판단하는 경우(동작 2719의 예), 동작 2713으로 진행하여 동작 2713 이하의 동작 수행을 처리할 수 있고, 동작 2719에서 거리 증가가 증가되지 않는 경우(동작 2719의 아니오)(예: 거리 변화가 없는 상태), 동작 2717로 진행하여 동작 2717 이하의 동작 수행을 처리할 수 있다.
동작 2717에서, 프로세서(120)는 거리 감소를 감지하는 경우(동작 2717의 예), 동작 2721에서, 연결 대기 모드로 동작할 수 있다. 예를 들면, 프로세서(120)는 전자 장치(400)와 도킹 스테이션(500) 간의 제1 무선 통신에 의한 빠른 연결을 위해 대기할 수 있다. 한 실시 예에 따라, 프로세서(120)는 제1 프로세스의 실행 정보에 기초하여 도킹 스테이션(500)을 식별하고, 제1 프로세스의 연속하여 실행하기 위해 제1 프로세스의 이전 진행 상태를 판단할 수도 있다.
동작 2723에서, 프로세서(120)는 도킹 스테이션(500)의 식별자를 확인할 수 있다. 예를 들면, 프로세서(120)는 전자 장치(400)가 근접된 도킹 스테이션(500)의 식별자를 확인하여, 기존에 제1 프로세스에 연결된 도킹 스테이션(500)의 식별자에 대응하는지 여부를 판단할 수 있다. 프로세서(120)는 제1 프로세스를 중지할 때 저장된 실행 정보에 기초하여 도킹 스테이션(500)의 식별자를 확인할 수 있다.
동작 2723에서, 프로세서(120)는 도킹 스테이션(500)의 식별자가 확인되면(동작 2723의 예), 동작 2725에서, 도킹 스테이션(500)과의 연결 및 제1 프로세스를 실행할 수 있다. 예를 들면, 프로세서(120)는 저장된 실행 정보에 기초하여, 도킹 스테이션(500)과 바로 연결을 수행하고, 기존의 제1 프로세스가 실행이 중지된 시점부터 기존의 리소스로 빠른 실행을 처리할 수 있다.
동작 2723에서, 프로세서(120)는 도킹 스테이션(500)의 식별자가 확인되지 않으면(동작 2723의 아니오), 연결을 초기화 할 수 있다. 예를 들면, 프로세서(120)는 기존 도킹 스테이션(500)과의 연결을 취소하고, 새로운 도킹 스테이션(500)과의 연결을 재설정할 수 있다.
이상에서 도 27을 참조하여 살펴본 바와 같이, 다양한 실시 예들에 따르면, 전자 장치(400)와 도킹 스테이션(500)이 근접하여 제1 프로세스를 실행 중인 상태에서, 새로운 제2 프로세스 발생에 따라 제1 프로세스를 중지하고, 제2 프로세스를 실행할 수 있다. 다양한 실시 예들에 따라, 제2 프로세스가 종료되는 경우 제1 프로세스를 끊김 없이 빠르게 실행할 수 있다. 예를 들면, 제1 프로세스의 중지 시, 제1 프로세스에 관련된 실행 정보를 저장하고, 제2 프로세스의 종료 시 실행 정보에 기초하여 도킹 스테이션(500)과 빠르게 연결하고, 제1 프로세스가 중지된 시점에서부터의 동작을 빠르게 재개할 수 있다. 또한 다양한 실시 예들에서는 비컨(beacon) 방식(예: BLE 통신)을 활용하여, 전자 장치(400)와 도킹 스테이션(500) 간의 거리를 판별할 수 있고, 이를 이용하여 중지된 제1 프로세스의 종료 또는 재시작 여부를 빠르게 결정할 수 있다.
또한 다양한 실시 예들에서는, 도 27과 같은 유사한 방식으로, 전자 장치(400)와 도킹 스테이션(500) 간의 다른 수신 신호 세기(예: RSSI) 값을 기준으로 전자 장치(400)와 도킹 스테이션(500) 간의 거리를 판단 및 예측하여 프로세스의 종료 또는 재시작을 판단할 수도 있다. 또한 다양한 실시 예들에서는, 프로세스의 종료 또는 재시작에 관련된 도 25, 도 26 및 도 27을 독립적으로 설명하였으나, 다양한 실시 예들이 이에 한정되지는 않는다. 예를 들면, 도 25, 도 26 또는 도 27의 적어도 하나의 조합에 의하여, 프로세스 종료 또는 재시작에 관련된 동작을 병렬적으로 또는 순차적으로 수행할 수도 있다.
이상에서 살펴본 바와 같이, 다양한 실시 예들에 따른 전자 장치(400)의 동작 방법은, 제1 무선 통신부를 이용하여, 다른 전자 장치와 제1 무선 통신으로 연결하는 동작, 상기 제1 무선 통신에 기초하여 상기 다른 전자 장치와 제1 프로세스를 실행하는 동작, 상기 제1 프로세스를 실행하는 동안 제2 프로세스를 감지하는 동작, 상기 제1 프로세스와 상기 제2 프로세스를 처리하기 위한 리소스를, 대응하는 프로파일에 따라 재할당하는 동작, 및 할당된 리소스에 기초하여 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 처리하는 동작을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 제1 무선 통신은 초고속 근접 통신을 포함하고, 상기 제2 무선 통신은 상기 제1 무선 통신 외의 다른 하나 또는 그 이상의 무선 통신을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 적어도 하나의 프로세스를 처리하는 동작은, 상기 제1 프로세스 실행 중에 상기 제2 프로세스를 감지할 시, 상기 제1 무선 통신의 연결 상태에 따라, 상기 제2 무선 통신에 의해 상기 다른 전자 장치와 연결을 실행하는 것을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 적어도 하나의 프로세스를 처리하는 동작은, 상기 제1 무선 통신에 의한 상기 다른 전자 장치와의 연결 상태에 따라, 상기 제2 무선 통신부를 이용한 상기 제2 무선 통신에 기초하여, 상기 다른 전자 장치와 상기 제1 프로세스를 실행하는 것을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 적어도 하나의 프로세스를 처리하는 동작은, 상기 다른 전자 장치와 연결이 해제될 시, 상기 제1 프로세스를 상기 제2 무선 통신에 대응하도록 변경하는 동작, 상기 변경된 제1 프로세스를 상기 제2 무선 통신부를 이용하여, 상기 다른 전자 장치와 실행하는 동작을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 적어도 하나의 프로세스를 처리하는 동작은, 상기 제1 프로세스를 유지, 중지 또는 변경하고, 상기 제2 프로세스를 실행하는 것을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 재할당하는 동작은, 상기 제2 프로세스가 발생하면, 상기 전자 장치의 리소스를 판단하는 동작, 상기 제1 프로세스와 상기 제2 프로세스의 처리에 필요한 리소스를 재할당하는 동작을 포함하고, 상기 적어도 하나의 프로세스를 처리하는 동작은, 상기 재할당된 리소스에 따라 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 실행하는 것을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 제2 프로세스가 종료되면, 상기 제1 프로세스를 위한 리소스를 복원하여, 상기 제1 프로세스를 실행하는 동작을 더 포함할 수 있다.
다양한 실시 예들에 따라, 상기 제2 프로세스 감지에 응답하여, 상기 제1 프로세스에 대한 실행 정보를 저장하는 동작을 더 포함하고, 상기 제1 프로세스를 실행하는 동작은, 상기 제2 프로세스 종료에 응답하여, 상기 실행 정보에 따라 상기 다른 전자 장치와 상기 제1 프로세스를 연속적으로 실행하는 동작을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 제1 프로세스를 실행하는 동작은, 상기 제2 프로세스 종료에 응답하여, 상기 다른 전자 장치의 식별자를 확인하는 동작, 상기 다른 전자 장치의 식별자에 기초하여 상기 제1 무선 통신에 따른 연결을 초기화 하거나, 상기 다른 전자 장치와 상기 제1 프로세스를 재개하는 동작을 포함할 수 있다.
본 명세서와 도면에 개시된 본 발명의 다양한 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
400: 전자 장치
430: 제1 무선 통신부(초고속 근접 통신을 위한 통신부)
440: 제2 무선 통신부(WiFi, WiGig, 또는 BT 등의 통신을 위한 통신부)
470: 프로세서(제1 프로세서)
500: 도킹 스테이션
600, 610, 620: 외부 장치
430: 제1 무선 통신부(초고속 근접 통신을 위한 통신부)
440: 제2 무선 통신부(WiFi, WiGig, 또는 BT 등의 통신을 위한 통신부)
470: 프로세서(제1 프로세서)
500: 도킹 스테이션
600, 610, 620: 외부 장치
Claims (20)
- 전자 장치에 있어서,
다른 전자 장치와 제1 무선 통신을 수행하도록 구성된 제1 무선 통신부;
상기 다른 전자 장치와 제2 무선 통신을 수행하도록 구성된 제2 무선 통신부; 및
상기 제1 무선 통신부 및 상기 제2 무선 통신부와 기능적으로 연결된 프로세서를 포함하고, 상기 프로세서는,
상기 제1 무선 통신부를 이용하여, 상기 다른 전자 장치와 상기 제1 무선 통신으로 연결하고,
상기 제1 무선 통신에 기초하여 상기 다른 전자 장치와 제1 프로세스를 실행하고,
상기 제1 프로세스를 실행하는 동안 제2 프로세스를 감지하고,
상기 제1 프로세스와 상기 제2 프로세스를 처리하기 위한 리소스를, 대응하는 프로파일에 따라 재할당하고, 및
할당된 리소스에 기초하여 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 처리하도록 설정된 전자 장치.
- 제1항에 있어서,
상기 제1 무선 통신은 초고속 근접 통신을 포함하고,
상기 제2 무선 통신은 상기 제1 무선 통신 외의 다른 하나 또는 그 이상의 무선 통신을 포함하도록 설정된 전자 장치.
- 제2항에 있어서, 상기 프로세서는,
상기 제1 프로세스 실행 중에 상기 제2 프로세스를 감지할 시, 상기 제1 무선 통신의 연결 상태에 따라, 상기 제2 무선 통신에 의해 상기 다른 전자 장치와 연결을 실행하도록 설정된 전자 장치.
- 제3항에 있어서, 상기 프로세서는,
상기 제1 무선 통신에 의한 상기 다른 전자 장치와의 연결 상태에 따라, 상기 제2 무선 통신부를 이용한 상기 제2 무선 통신에 기초하여, 상기 다른 전자 장치와 상기 제1 프로세스를 실행하도록 설정된 전자 장치.
- 제3항에 있어서, 상기 프로세서는,
상기 다른 전자 장치와 연결이 해제될 시, 상기 제1 프로세스를 상기 제2 무선 통신에 대응하도록 변경하고,
변경된 제1 프로세스를 상기 제2 무선 통신부를 이용하여, 상기 다른 전자 장치와 실행하도록 설정된 전자 장치.
- 제3항에 있어서, 상기 프로세서는,
상기 제1 프로세스를 유지, 중지 또는 변경하고, 상기 제2 프로세스를 실행하도록 설정된 전자 장치.
- 제3항에 있어서, 상기 프로세서는,
상기 제2 프로세스가 발생하면, 상기 전자 장치의 리소스를 판단하고,
상기 제1 프로세스와 상기 제2 프로세스의 처리에 필요한 리소스를 재할당하고,
재할당된 리소스에 따라 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 실행하도록 설정된 전자 장치.
- 제3항에 있어서, 상기 프로세서는,
상기 제2 프로세스가 종료되면, 상기 제1 프로세스를 위한 리소스를 복원하여, 상기 제1 프로세스를 실행하도록 설정된 전자 장치.
- 제8항에 있어서, 상기 프로세서는,
상기 제2 프로세스 감지에 응답하여, 상기 제1 프로세스에 대한 실행 정보를 저장하고,
상기 제2 프로세스 종료에 응답하여, 상기 실행 정보에 따라 상기 다른 전자 장치와 상기 제1 프로세스를 연속적으로 실행하도록 설정된 전자 장치.
- 제9항에 있어서, 상기 프로세서는,
상기 제2 프로세스 종료에 응답하여, 상기 다른 전자 장치의 식별자를 확인하고, 상기 다른 전자 장치의 식별자에 기초하여 상기 제1 무선 통신에 따른 연결을 초기화 하거나, 상기 다른 전자 장치와 상기 제1 프로세스를 재개하도록 설정된 전자 장치.
- 전자 장치의 동작 방법에 있어서,
제1 무선 통신부를 이용하여, 다른 전자 장치와 제1 무선 통신으로 연결하는 동작,
상기 제1 무선 통신에 기초하여 상기 다른 전자 장치와 제1 프로세스를 실행하는 동작,
상기 제1 프로세스를 실행하는 동안 제2 프로세스를 감지하는 동작,
상기 제1 프로세스와 상기 제2 프로세스를 처리하기 위한 리소스를, 대응하는 프로파일에 따라 재할당하는 동작, 및
할당된 리소스에 기초하여 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 처리하는 동작을 포함하는 방법.
- 제11에 있어서,
상기 제1 무선 통신은 초고속 근접 통신을 포함하고,
상기 제2 무선 통신은 상기 제1 무선 통신 외의 다른 하나 또는 그 이상의 무선 통신을 포함하는 방법.
- 제12항에 있어서, 상기 적어도 하나의 프로세스를 처리하는 동작은,
상기 제1 프로세스 실행 중에 상기 제2 프로세스를 감지할 시, 상기 제1 무선 통신의 연결 상태에 따라, 상기 제2 무선 통신에 의해 상기 다른 전자 장치와 연결을 실행하는 것을 포함하는 방법.
- 제13항에 있어서, 상기 적어도 하나의 프로세스를 처리하는 동작은,
상기 제1 무선 통신에 의한 상기 다른 전자 장치와의 연결 상태에 따라, 상기 제2 무선 통신부를 이용한 상기 제2 무선 통신에 기초하여, 상기 다른 전자 장치와 상기 제1 프로세스를 실행하는 것을 포함하는 방법.
- 제13항에 있어서, 상기 적어도 하나의 프로세스를 처리하는 동작은,
상기 다른 전자 장치와 연결이 해제될 시, 상기 제1 프로세스를 상기 제2 무선 통신에 대응하도록 변경하는 동작,
상기 변경된 제1 프로세스를 상기 제2 무선 통신부를 이용하여, 상기 다른 전자 장치와 실행하는 동작을 포함하는 방법.
- 제13항에 있어서, 상기 적어도 하나의 프로세스를 처리하는 동작은,
상기 제1 프로세스를 유지, 중지 또는 변경하고, 상기 제2 프로세스를 실행하는 것을 포함하는 방법.
- 제13항에 있어서, 상기 재할당하는 동작은,
상기 제2 프로세스가 발생하면, 상기 전자 장치의 리소스를 판단하는 동작,
상기 제1 프로세스와 상기 제2 프로세스의 처리에 필요한 리소스를 재할당하는 동작을 포함하고,
상기 적어도 하나의 프로세스를 처리하는 동작은,
상기 재할당된 리소스에 따라 상기 제1 프로세스 또는 상기 제2 프로세스 중 적어도 하나의 프로세스를 실행하는 것을 포함하는 방법.
- 제13항에 있어서,
상기 제2 프로세스가 종료되면, 상기 제1 프로세스를 위한 리소스를 복원하여, 상기 제1 프로세스를 실행하는 동작을 더 포함하는 방법.
- 제18항에 있어서,
상기 제2 프로세스 감지에 응답하여, 상기 제1 프로세스에 대한 실행 정보를 저장하는 동작을 더 포함하고,
상기 제1 프로세스를 실행하는 동작은,
상기 제2 프로세스 종료에 응답하여, 상기 실행 정보에 따라 상기 다른 전자 장치와 상기 제1 프로세스를 연속적으로 실행하는 동작을 포함하는 방법.
- 제19항에 있어서, 상기 제1 프로세스를 실행하는 동작은,
상기 제2 프로세스 종료에 응답하여, 상기 다른 전자 장치의 식별자를 확인하는 동작,
상기 다른 전자 장치의 식별자에 기초하여 상기 제1 무선 통신에 따른 연결을 초기화 하거나, 상기 다른 전자 장치와 상기 제1 프로세스를 재개하는 동작을 포함하는 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160090668A KR102580710B1 (ko) | 2016-07-18 | 2016-07-18 | 전자 장치들의 연동 방법 및 장치 |
US15/653,080 US10172175B2 (en) | 2016-07-18 | 2017-07-18 | Method and apparatus for interworking between electronic devices |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160090668A KR102580710B1 (ko) | 2016-07-18 | 2016-07-18 | 전자 장치들의 연동 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180009140A true KR20180009140A (ko) | 2018-01-26 |
KR102580710B1 KR102580710B1 (ko) | 2023-09-20 |
Family
ID=60940799
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160090668A KR102580710B1 (ko) | 2016-07-18 | 2016-07-18 | 전자 장치들의 연동 방법 및 장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10172175B2 (ko) |
KR (1) | KR102580710B1 (ko) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3054349B1 (fr) * | 2016-07-21 | 2019-06-07 | Ingenico Group | Procede de traitement de donnees par un dispositif electronique d'acquisition de donnees, dispositif et programme correspondant |
US10033436B2 (en) * | 2016-08-24 | 2018-07-24 | Cisco Technology, Inc. | Power over wireless energy recharge (POWER) |
US10419545B2 (en) * | 2016-10-18 | 2019-09-17 | Dell Products L.P. | Profiled wireless docking system |
US10911552B1 (en) | 2018-07-31 | 2021-02-02 | Apple Inc. | Shared access to computing resources using wireless communications |
US20210232527A1 (en) * | 2018-10-18 | 2021-07-29 | Hewlett-Packard Development Company, L.P. | Docking stations to wirelessly access edge compute resources |
TWI715181B (zh) * | 2019-09-03 | 2021-01-01 | 瑞昱半導體股份有限公司 | 用於進行記憶裝置之存取控制的方法及控制晶片 |
JP2021135881A (ja) * | 2020-02-28 | 2021-09-13 | セイコーエプソン株式会社 | ロボットの制御方法 |
US20230049989A1 (en) * | 2021-08-10 | 2023-02-16 | Logitech Europe S.A. | Electronic system and method for claiming and reserving work areas |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120029848A (ko) * | 2010-09-17 | 2012-03-27 | 삼성전기주식회사 | 단말기 및 그의 무선 통신 방법 |
JP2014170524A (ja) * | 2013-02-28 | 2014-09-18 | Lg Uplus Corp | 端末間機能共有方法及びその端末 |
KR20150128346A (ko) * | 2014-05-09 | 2015-11-18 | 삼성전자주식회사 | 무선 통신 전자장치에서 자동 링크 변경 방법 및 장치 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060160489A1 (en) | 2005-01-14 | 2006-07-20 | Robert Hardacker | Method and system for multiple 60GHz system antennae |
US8229352B2 (en) | 2007-07-05 | 2012-07-24 | Sibeam, Inc. | Wireless architecture for 60GHZ |
US8965338B2 (en) * | 2008-06-09 | 2015-02-24 | Apple Inc | Network access control methods and apparatus |
US8688037B2 (en) | 2008-09-26 | 2014-04-01 | Hewlett-Packard Development Company, L.P. | Magnetic latching mechanism for use in mating a mobile computing device to an accessory device |
US9603192B2 (en) * | 2013-01-16 | 2017-03-21 | Ncore Communications, Inc. | Methods and apparatus for hybrid access to a core network |
US9088305B2 (en) | 2013-07-08 | 2015-07-21 | Blackberry Limited | Docking station connectivity monitor/controller |
US9450635B2 (en) | 2014-04-03 | 2016-09-20 | Intel Corporation | Cableless connection apparatus and method for communication between chassis |
KR102352172B1 (ko) * | 2015-04-08 | 2022-01-17 | 삼성전자주식회사 | 전자 장치들의 연동 방법 및 장치 |
US10524277B2 (en) * | 2016-08-13 | 2019-12-31 | Qualcomm Incorporated | Method and apparatus for secondary base station mobility |
-
2016
- 2016-07-18 KR KR1020160090668A patent/KR102580710B1/ko active IP Right Grant
-
2017
- 2017-07-18 US US15/653,080 patent/US10172175B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120029848A (ko) * | 2010-09-17 | 2012-03-27 | 삼성전기주식회사 | 단말기 및 그의 무선 통신 방법 |
JP2014170524A (ja) * | 2013-02-28 | 2014-09-18 | Lg Uplus Corp | 端末間機能共有方法及びその端末 |
KR20150128346A (ko) * | 2014-05-09 | 2015-11-18 | 삼성전자주식회사 | 무선 통신 전자장치에서 자동 링크 변경 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR102580710B1 (ko) | 2023-09-20 |
US20180020320A1 (en) | 2018-01-18 |
US10172175B2 (en) | 2019-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220086554A1 (en) | Method of controlling charging level in audio device that is connectable to electronic device | |
US10057673B2 (en) | Electronic device and operating method thereof | |
US20200304917A1 (en) | Method and electronic device for transmitting audio data to multiple external devices | |
KR102580710B1 (ko) | 전자 장치들의 연동 방법 및 장치 | |
CN107852527B (zh) | 控制视频的共享的方法以及适配该方法的电子设备 | |
EP3361815B1 (en) | Wireless communication method and electronic device for providing same | |
KR102208433B1 (ko) | 적어도 하나 이상의 통신 방식을 선택하기 위한 방법 및 장치 | |
US10853026B2 (en) | Method and apparatus for streaming audio by using wireless link | |
KR102582596B1 (ko) | 배터리 충전 방법 및 전자 장치 | |
US10771854B2 (en) | Video streaming apparatus and method in electronic device | |
KR102554037B1 (ko) | 전자 장치와 충전 장치간의 연결을 제어하는 방법 및 이를 제공하는 장치 | |
EP3091719A1 (en) | Method for short-range wireless communication and electronic device using the same | |
KR102657052B1 (ko) | 배터리 충전 방법 및 전자 장치 | |
KR102607647B1 (ko) | 전자 장치 및 전자 장치의 테더링 연결 방법 | |
KR20160051977A (ko) | 통신 서비스 운용 방법 및 이를 지원하는 전자 장치 | |
KR20160027861A (ko) | 통신 채널 운용 방법 및 이를 지원하는 전자 장치 | |
KR102310141B1 (ko) | 연결 인터페이스를 제어하기 위한 전자 장치 및 방법 | |
US20200015140A1 (en) | Method and electronic device for performing wireless communication by using channel list | |
KR20170128019A (ko) | 전자 장치 및 전자 장치에서의 무선 통신 방법 | |
KR20180089722A (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 |