KR102226522B1 - 네트워크 상태를 판단하는 장치 및 방법 - Google Patents

네트워크 상태를 판단하는 장치 및 방법 Download PDF

Info

Publication number
KR102226522B1
KR102226522B1 KR1020140152402A KR20140152402A KR102226522B1 KR 102226522 B1 KR102226522 B1 KR 102226522B1 KR 1020140152402 A KR1020140152402 A KR 1020140152402A KR 20140152402 A KR20140152402 A KR 20140152402A KR 102226522 B1 KR102226522 B1 KR 102226522B1
Authority
KR
South Korea
Prior art keywords
processor
electronic device
network
state
message
Prior art date
Application number
KR1020140152402A
Other languages
English (en)
Other versions
KR20160052281A (ko
Inventor
이선기
신승혁
강명수
손성호
신흥식
윤수하
차순현
황선민
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020140152402A priority Critical patent/KR102226522B1/ko
Priority to US14/931,139 priority patent/US9717007B2/en
Publication of KR20160052281A publication Critical patent/KR20160052281A/ko
Application granted granted Critical
Publication of KR102226522B1 publication Critical patent/KR102226522B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/04Arrangements for maintaining operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Abstract

다양한 실시예에 따르면, 네트워크 상태를 판단하는 방법은, 전자 장치의 제 1 프로세서에 의해 지정된 주기를 상기 전자 장치의 제 2 프로세서를 이용하여 획득하는 동작; 상기 제 2 프로세서를 이용하여, 상기 전자 장치로부터 네트워크의 다른 장치(another device)로 지정된 메시지를 상기 지정된 주기에 따라 전송하는 동작; 상기 제 2 프로세서를 이용하여, 상기 지정된 메시지에 대한 응답의 수신 여부 또는 상기 응답에 포함된 정보에 기반하여 상기 네트워크의 상태를 판단하는 동작; 및 상기 네트워크의 상태가 비정상으로 판단된 경우, 상기 제 2 프로세서를 이용하여 상기 제 1 프로세서를 활성화하는 동작을 포함할 수 있다. 다른 실시예도 가능하다.

Description

네트워크 상태를 판단하는 장치 및 방법 {APPARATUS AND METHOD FOR DETERMINING NETWORK STATUS}
다양한 실시예들은 적어도 하나의 프로세서와 적어도 하나의 통신 모듈을 제어하는 전자 장치 및 방법에 관한 것이다.
정보 통신 산업의 발달에 따라, 전자 장치는 사용자에게 다양한 정보를 전달하기 위한 중요한 수단으로 기능한다. 전자 장치는 통신 모듈을 통해 네트워크 상의 다른 전자 장치와 통신을 수행할 수 있다. 아울러, 전자 장치는, 사용자의 편의를 위해, 디스플레이를 이용하여 그래픽 사용자 인터페이스(graphic user interface, GUI)를 제공할 수 있다. 전자 장치는, 예를 들면, 상기 그래픽 사용자 인터페이스를 제어하기 위한 프로세서와 상기 통신 모듈을 제어하기 위한 프로세서를 포함하는 멀티 프로세서 구조로 동작할 수 있다.
전자 장치가 통신을 하기 위해서는, 전자 장치와 기능적으로 연결된 통신 모듈을 통하여 연결된 다른 전자 장치에 데이터를 전송하여 데이터를 전송할 수 있다. 상기 다른 전자 장치는 데이터를 수신 받으면 최종 목적지로 전송하기 위해 네트워크에 상기 데이터를 송신할 수 있다. 상기 다른 전자 장치에 문제가 발생하여 데이터를 송신하지 못하고 상기 다른 전자 장치에서 상기 전자 장치로 해당 상황을 알리는 기능을 포함하고 있지 않은 경우, 상기 전자 장치는 네트워크 상태에 대한 판단을 내리지 못할 수 없다.
다양한 실시예들은, 예를 들면, 상기 전자 장치에서 상기 다른 전자 장치의 네트워크 상태를 판단하여 상기 전자 장치 내에서 다른 동작을 수행할 수 있다.
전술한 과제 또는 다른 과제를 해결하기 위한, 한 실시예에 따른 전자 장치의 제 1 프로세서에 의해 지정된 주기를 상기 전자 장치의 제 2 프로세서를 이용하여 획득하는 동작; 상기 제 2 프로세서를 이용하여, 상기 전자 장치로부터 네트워크의 다른 장치(another device)로 지정된 메시지를 상기 지정된 주기에 따라 전송하는 동작; 상기 제 2 프로세서를 이용하여, 상기 지정된 메시지에 대한 응답의 수신 여부 또는 상기 응답에 포함된 정보에 기반하여 상기 네트워크의 상태를 판단하는 동작; 및 상기 네트워크의 상태가 비정상으로 판단된 경우, 상기 제 2 프로세서를 이용하여 상기 제 1 프로세서를 활성화하는 동작을 포함할 수 있다. 한 실시예에 따른 전자 장치는, 상기 전자 장치와 네트워크의 다른 장치 간의 통신을 위해, 지정된 주기를 결정하도록 설정된 제 1 프로세서; 및 상기 제 1 프로세서로부터 상기 지정된 주기를 획득하고, 상기 전자 장치로부터 상기 다른 장치로 지정된 메시지를 상기 지정된 주기에 따라 전송하고, 상기 지정된 메시지에 대한 응답의 수신 여부 또는 상기 응답에 포함된 정보에 기반하여 상기 네트워크의 상태를 판단하고, 상기 네트워크의 상태가 비정상으로 판단된 경우 상기 제 1 프로세서를 활성화하도록 설정된 제 2 프로세서를 포함할 수 있다.
다양한 실시예들에 따른 전자 장치 및 방법은, 통신 모듈에 관련된 프로세서에서 주기적으로 네트워크 상태를 확인하여, 어플리케이션 프로세서에 알릴 수 있다. 상기 어플리케이션 프로세서는 상기 네트워크 상태를 사용자에게 알림으로써, 네트워크를 통한 통신 기능과 관련한, 사용자의 편의를 향상시킬 수 있다.
도 1은 다양한 실시예에 따른 전자 장치에 대한 블록도를 도시한다.
도 2는 다양한 실시예에 따른, 전자 장치에서 복수의 프로세서들을 운용하는 방법에 대한 흐름도를 도시한다.
도 3는 다양한 실시예에 따른, 전자 장치에서 네트워크 상태를 표시하는 방법에 대한 흐름도를 도시한다.
도 4는 다양한 실시예에 따른, 전자 장치에서 다른 통신 모듈을 활성화하는 방법에 대한 흐름도를 도시한다.
도 5는 다양한 실시예에 따른, 전자 장치에서 네트워크 상태를 판단하기 위한 시스템의 블록도를 도시한다.
도 6은 다양한 실시예에 따른, 전자 장치에서 네트워크 상태를 디스플레이에 표시한 예를 도시한다.
도 7은 다양한 실시예에 따른 전자장치의 하드웨어 구조도를 도시한다.
도 8은 다양한 실시예에 따른 전자장치의 소프트웨어 구조도를 도시한다.
이하, 첨부된 도면을 참조하여 본 개시(present disclosure)를 설명한다. 본 개시는 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있다. 그러나, 이는 본 개시를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 사상 및 기술 범위에 포함되는 모든 변경 및/또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용되었다.
본 개시 가운데 사용될 수 있는“포함한다” 또는 “포함할 수 있다” 등의 표현은 개시된 해당 기능, 동작 또는 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작 또는 구성요소 등을 제한하지 않는다. 또한, 본 개시에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시에서 “또는” 등의 표현은 함께 나열된 단어들의 어떠한, 그리고 모든 조합을 포함한다. 예를 들어, “A 또는 B”는, A를 포함할 수도, B를 포함할 수도, 또는 A 와 B 모두를 포함할 수도 있다.
본 개시 가운데 “제 1,”“제2,”“첫째,”또는“둘째,”등의 표현들이 본 개시의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 상기 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분 짓기 위해 사용될 수 있다. 예를 들어, 제1 사용자 기기와 제 2 사용자 기기는 모두 사용자 기기이며, 서로 다른 사용자 기기를 나타낸다. 예를 들어, 본 개시의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해될 수 있어야 할 것이다.
본 개시에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 개시를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 개시에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
본 개시에 따른 전자 장치는, 통신 기능이 포함된 장치일 수 있다. 예를 들면, 전자 장치는 스마트 폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 화상전화기, 전자북 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device)(예: 전자 안경과 같은 head-mounted-device(HMD), 전자 의복, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 전자 문신, 또는 스마트 와치(smartwatch))중 적어도 하나를 포함할 수 있다.
어떤 실시예들에 따르면, 전자 장치는 통신 기능을 갖춘 스마트 가전 제품(smart home appliance)일 수 있다. 스마트 가전 제품은, 예를 들자면, 전자 장치는 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), TV 박스(예를 들면, 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(game consoles), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
어떤 실시예들에 따르면, 전자 장치는 각종 의료기기(예: MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 초음파기 등), 네비게이션(navigation) 장치, GPS 수신기(global positioning system receiver), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치 및 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛, 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine) 또는 상점의 POS(point of sales) 중 적어도 하나를 포함할 수 있다.
어떤 실시예들에 따르면, 전자 장치는 통신 기능을 포함한 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 입력장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 본 개시에 따른 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 또한, 본 개세에 따른 전자 장치는 플렉서블 장치일 수 있다. 또한, 본 개시에 따른 전자 장치는 전술한 기기들에 한정되지 않음은 당업자에게 자명하다.
이하, 첨부된 도면을 참조하여 다양한 실시예에 따른 전자 장치에 대해서 살펴본다. 다양한 실시예에서 이용되는 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다. 도 1은 다양한 실시예에 따른, 전자 장치 101을 포함하는 네트워크 환경 100를 도시한다. 도 1을 참조하면, 상기 전자 장치 101는 버스 110, 제 1 프로세서 120, 제 2 프로세서 125, 메모리 130, 입출력 인터페이스 140, 디스플레이 150, 통신 인터페이스 160을 포함할 수 있다.
상기 버스 110는 전술한 구성요소들을 서로 연결하고, 전술한 구성요소들 간의 통신(예: 제어 메시지)을 전달하는 회로일 수 있다. 더하여, 상기 버스 110은 상기 제 1 프로세서와 상기 제 2 프로세서 간에 데이터를 공유할 수 있는 공유 메모리일 수 있다.
상기 제 1 프로세서 120는, 예를 들면, 상기 버스 110를 통해 전술한 다른 구성요소들(예: 상기 메모리 130, 상기 입출력 인터페이스 140, 상기 디스플레이 150, 상기 통신 인터페이스 160, 또는 상기 제 2 프로세서 125 등)로부터 명령을 수신하여, 수신된 명령을 해독하고, 해독된 명령에 따른 연산이나 데이터 처리를 실행할 수 있다. 상기 제 2 프로세서 125는, 상기 제 1 프로세서 120과 동일한 동작을 수행할 수 있다.
상기 제 1 프로세서 120은 어플리케이션을 실행할 수 있는 어플리케이션을 제어하는 프로세서일 수 있다. 상기 제 2 프로세서 125는, 상기 제 1 프로세서 120과 동일한 동작을 수행할 수 있다. 또한 상기 제 2 프로세서 125는 상기 전자 장치의 상기 통신 인터페이스 160을 제어하는 프로세서일 수 있다. 상기 제 1 프로세서 120는 활성화 상태와 저전력 상태로 상태 천이할 수 있다. 상기 저전력 상태는 상기 활성화 상태보다 전력 소모가 상대적으로 적은 상태일 수 있다. 상기 활성화 상태인 상기 제 1 프로세서 120은 상기 활성화 상태인 상기 제 2 프로세서 125보다 전력 소모가 클 수 있다. 상기 제 2 프로세서는 상기 제 2 프로세서와 연관된 통신 모듈의 전력 소모에 관련하여 활성화 상태와 저전력 상태로 천이하도록 동작할 수 있다.
상기 메모리 130는, 상기 제 1 프로세서 120 또는 다른 구성요소들(예: 상기 입출력 인터페이스 140, 상기 디스플레이 150, 상기 통신 인터페이스 160, 또는 상기 제 2 프로세서 125 등)로부터 수신되거나 상기 제 1 프로세서 120 또는 다른 구성요소들에 의해 생성된 명령 또는 데이터를 저장할 수 있다. 상기 메모리 130는, 예를 들면, 커널 131, 미들웨어 132, 어플리케이션 프로그래밍 인터페이스(API: application programming interface) 133 또는 어플리케이션 134 등의 프로그래밍 모듈들을 포함할 수 있다. 전술한 각각의 프로그래밍 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다.
상기 커널 131은 나머지 다른 프로그래밍 모듈들, 예를 들면, 상기 미들웨어 132, 상기 API 133 또는 상기 어플리케이션 134에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 상기 버스 110, 상기 제 1 프로세서 120, 상기 제 2 프로세서 125 또는 상기 메모리 130 등)을 제어 또는 관리할 수 있다. 또한, 상기 커널 131은 상기 미들웨어 132, 상기 API 133 또는 상기 어플리케이션 134에서 상기 전자 장치 101의 개별 구성요소에 접근하여 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
상기 미들웨어 132는 상기 API 133 또는 상기 어플리케이션 134이 상기 커널 131과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 상기 미들웨어 132는 상기 어플리케이션 134로부터 수신된 작업 요청들과 관련하여, 예를 들면, 상기 어플리케이션 134 중 적어도 하나의 어플리케이션에 상기 전자 장치 101의 시스템 리소스(예: 상기 버스 110, 상기 제 1 프로세서 120, 상기 제 2 프로세서 125 또는 상기 메모리 130 등)를 사용할 수 있는 우선 순위를 배정하는 등의 방법을 이용하여 작업 요청에 대한 제어(예: 스케쥴링 또는 로드 밸런싱)을 수행할 수 있다.
상기 API 133는 상기 어플리케이션 134이 상기 커널 131 또는 상기 미들웨어 132에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 창 제어, 화상 처리 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(예: 명령어)를 포함할 수 있다.
다양한 실시예에 따르면, 상기 어플리케이션 134는 SMS/MMS 어플리케이션, 이메일 어플리케이션, 달력 어플리케이션, 알람 어플리케이션, 건강 관리(health care) 어플리케이션(예: 운동량 또는 혈당 등을 측정하는 어플리케이션) 또는 환경 정보 어플리케이션(예: 기압, 습도 또는 온도 정보 등을 제공하는 어플리케이션) 등을 포함할 수 있다. 추가적으로 또는 대체적으로, 상기 어플리케이션 134은 상기 전자 장치 101와 외부 전자 장치(예: 전자 장치 104) 사이의 정보 교환과 관련된 어플리케이션일 수 있다. 상기 정보 교환과 관련된 어플리케이션은, 예를 들어, 상기 외부 전자 장치에 특정 정보를 전달하기 위한 알림 전달(notification relay) 어플리케이션, 또는 상기 외부 전자 장치를 관리하기 위한 장치 관리(device management) 어플리케이션을 포함할 수 있다.
예를 들면, 상기 알림 전달 어플리케이션은 상기 전자 장치 101 의 다른 어플리케이션(예: SMS/MMS 어플리케이션, 이메일 어플리케이션, 건강 관리 어플리케이션 또는 환경 정보 어플리케이션 등)에서 발생한 알림 정보를 외부 전자 장치(예: 전자 장치 104)로 전달하는 기능을 포함할 수 있다. 추가적으로 또는 대체적으로, 상기 알림 전달 어플리케이션은, 예를 들면, 외부 전자 장치(예: 전자 장치 104)로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. 상기 장치 관리 어플리케이션은, 예를 들면, 상기 전자 장치 101와 통신하는 외부 전자 장치(예: 전자 장치 104)의 적어도 일부에 대한 기능(예: 외부 전자 장치 자체(또는, 일부 구성 부품)의 턴온/턴오프 또는 디스플레이의 밝기(또는, 해상도) 조절), 상기 외부 전자 장치에서 동작하는 어플리케이션 또는 상기 외부 전자 장치에서 제공되는 서비스(예: 통화 서비스 또는 메시지 서비스)를 관리(예: 설치, 삭제 또는 업데이트)할 수 있다.
다양한 실시예에 따르면, 상기 어플리케이션 134은 상기 외부 전자 장치(예: 전자 장치 104)의 속성(예: 전자 장치의 종류)에 따라 지정된 어플리케이션을 포함할 수 있다. 예를 들어, 외부 전자 장치가 MP3 플레이어인 경우, 상기 어플리케이션 134은 음악 재생과 관련된 어플리케이션을 포함할 수 있다. 유사하게, 외부 전자 장치가 모바일 의료기기인 경우, 상기 어플리케이션 134은 건강 관리와 관련된 어플리케이션을 포함할 수 있다. 한 실시예에 따르면, 상기 어플리케이션 134은 전자 장치 101에 지정된 어플리케이션 또는 외부 전자 장치(예: 서버 106 또는 전자 장치 104)로부터 수신된 어플리케이션 중 적어도 하나를 포함할 수 있다.
상기 입출력 인터페이스 140은, 입출력 장치(예: 센서, 키보드 또는 터치 스크린)를 통하여 사용자로부터 입력된 명령 또는 데이터를, 예를 들면, 상기 버스 110를 통해 상기 제 1 프로세서 120, 상기 메모리 130, 상기 통신 인터페이스 160, 또는 상기 제 2 프로세서 125에 전달할 수 있다. 예를 들면, 상기 입출력 인터페이스 140은 터치 스크린을 통하여 입력된 사용자의 터치에 대한 데이터를 상기 제 1 프로세서 120로 제공할 수 있다. 또한, 상기 입출력 인터페이스 140은, 예를 들면, 상기 버스 110을 통해 상기 제 1 프로세서 120, 상기 메모리 130, 상기 통신 인터페이스 160, 또는 상기 제 2 프로세서 125로부터 수신된 명령 또는 데이터를 상기 입출력 장치(예: 스피커 또는 디스플레이)를 통하여 출력할 수 있다. 예를 들면, 상기 입출력 인터페이스 140은 상기 제 1 프로세서 120를 통하여 처리된 음성 데이터를 스피커를 통하여 사용자에게 출력할 수 있다.
상기 디스플레이 150은 사용자에게 각종 정보(예: 멀티미디어 데이터 또는 텍스트 데이터 등)을 표시할 수 있다.
상기 통신 인터페이스 160은 상기 전자 장치 101와 외부 장치(예: 전자 장치 104 또는 서버 106) 간의 통신을 연결할 수 있다. 예를 들면, 상기 통신 인터페이스 160은 무선 통신 또는 유선 통신을 통해서 네트워크 162에 연결되어 상기 외부 장치와 통신할 수 있다. 상기 무선 통신은, 예를 들어, Wifi(wireless fidelity), BT(Bluetooth), NFC(near field communication), GPS(global positioning system) 또는 cellular 통신(예: 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) 등) 중 적어도 하나를 포함할 수 있다. 상기 유선 통신은, 예를 들어, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232) 또는 POTS(plain old telephone service) 중 적어도 하나를 포함할 수 있다.
한 실시예에 따르면, 상기 네트워크 162는 통신 네트워크(telecommunications network)일 수 있다. 상기 통신 네트워크 는 컴퓨터 네트워크(computer network), 인터넷(internet), 사물 인터넷(internet of things) 또는 전화망(telephone network) 중 적어도 하나를 포함할 수 있다. 한 실시예에 따르면, 상기 전자 장치 101와 외부 장치 간의 통신을 위한 프로토콜(예: transport layer protocol, data link layer protocol 또는 physical layer protocol))은 어플리케이션 134, 어플리케이션 프로그래밍 인터페이스 133, 상기 미들웨어 132, 커널 131 또는 통신 인터페이스 160 중 적어도 하나에서 지원될 수 있다.
상기 제 2 프로세서 125는 상기 통신 인터페이스 160을 제어될 수 있다. 예를 들면, 상기 전자 장치 101와 상기 외부 장치(예: 전자 장치 104 또는 서버 106) 간의 통신을 연결하거나 통신을 종료할 수 있도록 설정할 수 있다. 또한 상기 제 2 프로세서 125는 상기 통신 인터페이스 160을 통해 상기 전자 장치 101와 상기 외부 장치 간의 데이터를 송신하거나, 수신하도록 설정할 수 있다. 더하여, 상기 제 2 프로세서는 상기 버스 110를 이용하여 상기 제 1 프로세서 120에 데이터를 전달하거나 획득할 수 있다.
도 2는 다양한 실시예에 따른, 전자 장치(예: 전자 장치 101)에서 복수의 프로세서들을 운용하는 방법에 대한 흐름도 200을 도시한다. 전자 장치는, 복수의 프로세서들, 예를 들면, 제 1 프로세서(예: 제 1 프로세서 120) 및 제 2 프로세서 125(예: 제 2 프로세서 125)를 포함할 수 있다. 도 2를 참조하면, 동작 202에서, 제 1 프로세서는 지정된 주기가 포함된 메시지 전송에 관한 정보를 제 2 프로세서를 이용하여 획득할 수 있다.
상기 지정된 주기는 제 1 프로세서가 네트워크의 상태를 확인하기 위해 메시지를 네트워크의 다른 장치에 전송하는 주기일 수 있다. 상기 지정된 주기는 제 1 프로세서가 제어하는 통신 모듈과 상기 네트워크에 연결된 다른 장치(예를 들어, AP(access point), BS(base station), eNodeB 등)와 주기적으로 통신하는 시간에 기반하여 결정될 수 있다. 예를 들어, 상기 통신하는 시간은 WiFi의 beacon 수신 시간, LTE의 paging 수신 시간 등이 될 수 있다. 상기 통신하는 주기는 제 1 프로세서에 연관된 통신 모듈이 저전력 상태에서 활성화 상태로 전환하는 동작을 동반하여 수행할 수 있다.
상기 통신하는 주기에 대한 정보를 제 2 프로세서가 획득하여, 상기 통신하는 주기를 기본 단위로 상기 지정된 주기를 상기 기본 단위의 조합에 의하여 결정할 수 있다. 예를 들어, 상기 지정된 주기는 상기 통신하는 주기의 1번, 2번 등등 정수 배로 결정될 수 있고, 상기 통신 하는 주기의 1번, 1.5번, 2.5번 등으로 결정될 수 있다. 제 2 프로세서가 결정하지 않는 경우, 제 1 프로세서에 의해서 결정될 수 있다.
상기 주기는 처음 설정된 값과 다르게 변경될 수 있다. 상기 주기는 상기 네트워크가 정상적이라고 판단되면 늘어날 수 있다. 또한 상기 주기는 상기 네트워크가 비정상이라고 판단되는 경우 줄어들 수 있다. 상기 주기의 늘어나거나 줄어드는 정도는 선형적, 지수적 등이 될 수 있다. 더하여, 상기 네트워크의 상태에 기반하여, 적응적으로 늘리거나 줄이는 동작을 반복하여 상기 주기를 결정할 수 있다. 상기 메시지 전송에 관련한 정보는 상기 주기 정보, 상기 메시지의 프로토콜(또는 메시지 포맷), 상기 메시지의 수신 장치에 대한 주소 정보(예를 들어, IP 주소, MAC 주소 등), 상기 메시지의 응답에 대한 대기 시간, 상기 메시지의 수신 장치에 대한 주소 정보, 상기 수신 장치에서 필요한 별도의 정보(예를 들어, 인증 정보, 메시지의 크기 등) 중 적어도 하나를 포함할 수 있다.
동작 204에서, 상기 제 2 프로세서를 이용하여 네트워크의 다른 장치로 지정된 주기에 따라 지정된 메시지를 전송할 수 있다.
상기 지정된 메시지는 상기 제 1 프로세서로부터 획득한 정보에 기반하여 생성할 수 있다. 또는 상기 제 2 프로세서와 기능적으로 연결된 메모리로부터 획득한 정보를 기반하여 생성할 수 있다. 상기 제 2 프로세서는 상기 획득한 정보의 메시지에 대한 프로토콜에 기반하여 메시지를 생성할 수 있다. 상기 프로토콜은 Transmission Control Protocol (TCP), Datagram Congestion Control Protocol (DCCP), Stream Control Transmission Protocol (SCTP), Internet Protocol (IP), Internet Control Message Protocol (ICMP), Internet Group Management Protocol (IGMP), Internet Protocol Security (IPsec) 등 다양한 프로토콜을 포함할 수 있다.
상기 생성한 메시지는 제 2 프로세서에서 동작 202의 상기 지정된 주기를 기반하여 전송될 수 있다.
동작 206에서, 상기 제 2 프로세서를 이용하여 상기 지정된 메시지에 대한 응답의 수신 여부 또는 상기 응답에 포함된 정보에 기반하여 상기 네트워크의 상태를 판단할 수 있다.
상기 지정된 메시지는 상기 지정된 메시지를 수신하는 장치가 상기 전자 장치로 응답하도록 설정될 수 있다. 상기 설정은, 상기 지정된 메시지의 프로토콜에 기반하여 수행될 수 있다. 예를 들어, 상기 지정된 메시지가 TCP 또는 ICMP 프로토콜로 생성된 메시지인 경우, 상기 메시지를 수신한 장치가 상기 지정된 메시지에 포함된 프로토콜 정보를 확인하고 응답할 수 있다.
상기 응답은 상기 지정된 메시지와 같은 프로토콜일 수 있다. 예를 들어, 상기 지정된 메시지를 수신한 장치가 상기 지정된 메시지가 TCP 또는 ICMP 프로토콜인 메시지임을 확인하는 경우, 상기 프로토콜을 이용하여 응답하는 메시지를 생성할 수 있다.
상기 응답은 적어도 지정된 메시지에 대응하는 응답 메시지를 수신 또는 상기 응답 메시지를 지정된 시간에 수신하는 경우를 포함할 수 있다. 상기 응답은 상기 지정된 메시지에 대해 지정된 시간 내에 상기 응답 메시지를 수신하지 않는 경우, 상기 응답 메시지를 지정된 시간에 수신하는 경우를 포함할 수 있다. 상기 응답 메시지는 상기 지정된 메시지를 수신하는 장치에서 응답한 메시지임을 포함하는 정보(예를 들어, IP 주소 정보, MAC 주소 정보 등)을 포함할 수 있다. 상기 응답 메시지는 네트워크 상태가 비정상적임을 나타내는 정보를 포함할 수 있다. 예를 들어, FEC(forward error correction) 정보를 기반하여 네트워크 상태가 비정상적임을 나타내는 정보를 포함할 수 있다. 상기 전자 장치는 상기 응답 메시지가 수신되지 않거나, 상기 응답 메시지 내에 네트워크 상태가 비정상적임을 나타내는 정보를 포함하는 것에 기반하여 상기 네트워크가 비정상적임을 판단할 수 있다. 상기 지정된 메시지를 수신하는 장치의 정보를 포함하는 경우 또는 상기 네트워크가 정상적임을 나타내는 정보가 상기 지정된 메시지에 포함되는 경우 중 적어도 하나에 기반하여 상기 전자 장치는 상기 네트워크가 정상적임을 확인할 수 있다.
동작 208에서, 상기 네트워크의 상태가 비정상으로 판단된 경우 상기 제 2 프로세서를 이용하여 상기 제 1 프로세서를 활성화할 수 있다. 상기 네트워크의 상태가 비정상적으로 판단되는 경우, 상기 제 2프로세서는 상기 제 1 프로세서에 알릴 수 있다. 상기 알리는 동작은 상기 프로세서 간에 지정된 신호를 통해 수행될 수 있다. 예를 들어, 상기 신호는 인터럽트 신호일 수 있다. 상기 신호를 수신한 상기 제 1 프로세서는 저전력 상태이거나 활성화 상태일 수 있다. 상기 저전력 상태는 상기 제 1 프로세서의 전력 소모가 상기 활성화 상태보다 작은 상태 또는 전력 소모가 없는 상태 중 적어도 하나일 수 있다. 상기 활성화 상태는 적어도 하나의 프로세스를 실행할 수 있는 전력을 유지하는 상태일 수 있다. 예를 들어, 상기 제 1 프로세서에서 활성화 상태는 어플리케이션, 운영 체제 등을 수행할 수 있는 전력을 유지하는 상태일 수 있다.
도 3는 다양한 실시예에 따른, 전자 장치(예: 전자 장치 101)에서 네트워크 상태를 표시하는 방법에 대한 흐름도 300을 도시한다. 전자 장치는, 예를 들면, 제 1 프로세서(예: 제 1 프로세서 120) 및 제 2 프로세서 125(예: 제 2 프로세서 125)를 포함할 수 있다. 도 3를 참조하면, 동작 302에서, 네트워크 상태가 비정상으로 판단되는 경우, 제 1 프로세서(예: 제 1 프로세서 120)는 제 2 프로세서(예: 제 2 프로세서 125)를 이용하여 활성화될 수 있다. 동작 302는, 예를 들면, 상기 도 2의 동작 208과 동일한 동작일 수 있다.
동작 304에서, 상기 제 2 프로세서에서 상기 제 1 프로세서에 상기 네트워크 상태를 알릴 수 있다. 상기 네트워크 상태는 동작 302에서 확인한 네트워크의 비정상 상태일 수 있다. 상기 제 1 프로세서는 상기 네트워크의 상태를 제 2 프로세서에 상기 도 2의 동작 208에서 설명한 인터럽트 신호로 알릴 수 있다. 더하여, 네트워크의 추가적인 상태에 대해서도 알릴 수도 있다. 상기 도 2의 동작 206에서 응답이 오지 않은 상황, 응답이 왔지만, 네트워크의 상태가 좋지 않음을 패킷의 에러 상태가 발생하는 상태, 상기 네트워크의 다른 장치의 신호 세기(예를 들어, 기지국 또는 무선 접속 장치의 신호 강도) 등을 알릴 수 있다.
동작 306에서, 상기 제 1 프로세서는 상기 전자 장치에 기능적으로 연결된 디스플레이, 스피커 또는 진동 모터 중 적어도 하나의 장치를 통해, 상기 네트워크의 상태를 표현할 수 있다. 동작은 디스플레이에 연결이 비정상임을 표시할 수 있다. 상기 표시는 화면 상의 문구(예: 팝업 메시지), 지정된 그림(예를 들어, 인디케이터의 그림) 등이 될 수 있다. 더하여, 상기 스피커로 지정된 소리 또는 지정된 패턴의 소리를 통해 알릴 수 있다. 상기 진동 모터의 지정된 강도 또는 패턴 중 적어도 하나를 이용하여 알릴 수 있다.
더하여, 상기 전자 장치는 상기 네트워크에 관련된 상기 전자 장치와 기능적으로 연결된 통신 모듈을 비활성화할 수 있다. 상기 통신 모듈은 상기 제 2 프로세서에 의해 동작되는 장치일 수 있다. 상기 통신 모듈을 비활성화하는 것은 상기 통신 모듈의 전원을 차단하는 것일 수 있다. 더하여, 상기 통신 모듈에 관련된 프로그램(예를 들어, 상기 통신 모듈에 관련된 드라이버 또는 어플리케이션 프로그램) 등을 메모리에서 제거하는 동작일 수 있다. 상기 통신 모듈의 비활성화 상태를 상기 디스플레이, 스피커 또는 진동 모터 중 적어도 하나의 장치를 통해 표현할 수 있다.
도 4는 다양한 실시예에 따른, 전자 장치(예: 전자 장치 101)에서 다른 통신 모듈을 활성화하는 방법에 대한 흐름도 400을 도시한다. 전자 장치는, 예를 들면, 제 1 프로세서(예: 제 1 프로세서 120) 및 제 2 프로세서(예: 제 2 프로세서 125)를 포함할 수 있다. 도 4를 참조하면, 동작 402에서, 네트워크 상태가 비정상으로 판단되는 경우, 제 1 프로세서(예: 제 1 프로세서 120)는 제 2 프로세서(예: 제 2 프로세서 125)를 이용하여 활성화될 수 있다. 동작 402는, 예를 들면, 상기 도 2의 동작 208과 동일한 동작일 수 있다.
동작 404에서, 상기 전자 장치는 상기 네트워크와 다른 네트워크와 통신하는 다른 통신 모듈이 상기 전자 장치에 있고, 상기 다른 통신 모듈이 비활성화되어 있는 경우 활성화할 수 있다. 상기 활성화하는 동작은 상기 다른 통신 모듈의 전원을 인가하는 동작일 수 있다. 더하여, 상기 통신 모듈과 관련된 프로그램(예를 들어, 상기 다른 통신 모듈과 관련된 드라이버 또는 어플리케이션 프로그램 등)을 메모리에 적재하는 동작일 수 있다. 상기 다른 통신 모듈과 관련된 동작은 설정에 의해서 자동으로 이루어질 수도 있고, 사용자에게 알림을 통해서 동작하도록 유도할 수 있다. 상기 알림은 상기 디스플레이 또는 스피커 등을 통하여 알릴 수 있다. 상기 설정에 기반하여 동작은 수행되지 않도록 할 수도 있다. 상기 설정 (정보)은, 예를 들면, 상기 전자 장치(의 메모리)에 미리 저장될 수 있으며, 또는, 사용자 입력 등에 의해 변경될 수 있다. 다른 실시예도 가능하다.
더하여, 상기 다른 통신 모듈은 상기 다른 네트워크와 연결을 위한 동작을 수행할 수 있다. 예를 들어, 셀룰러 망에 연결 또는 WiFi 망에 연결 등을 수행할 수 있다. 상기 네트워크와의 연결은 물리적인 연결(예를 들어, PHY/MAC 연결), 보안과 관련된 연결(예를 들어, 인증 동작), 인터넷 프로토콜에 관련된 연결(예를 들어, TCP/IP 연결) 또는 상기 네트워크에서 지원하는 별도의 프로토콜의 연결(예를 들어, 블루투스), 상기 다른 네트워크를 사용하는 어플리케이션 프로토콜(예를 들어, http 프로토콜) 등이 될 수 있다.
동작 406에서, 상기 전자 장치는 상기 다른 통신 모듈을 통해 네트워크 상태를 확인할 수 있다. 상기 전자 장치는 제 1 프로세서 또는 제 2 프로세서를 이용하여 상기 다른 통신 모듈을 통해 다른 네트워크의 상태를 확인할 수 있다. 상기 다른 네트워크의 상태를 확인하는 동작은 상기 도 2의 응답을 통해서 확인하는 동작과 같을 수 있다. 동작 404 또는 동작 406은 상기 전자 장치의 제 1 프로세서 또는 제 2 프로세서에 의해서 수행될 수 있다.
상기 제 2 프로세서에서 두 개의 통신 모듈을 제어할 수 있는 경우 상기의 동작 404 또는 동작 406이 수행될 수 있다. 예를 들어, WiFi와 블루투스가 같은 프로세서에서 동작하는 경우 수행될 수 있다.
동작 402에서 상기 네트워크의 상태가 비정상으로 판단된 경우에 더하여, 상기 전자 장치는 상기 네트워크와 관련된 통신 모듈을 이용하여 다른 네트워크를 찾는 동작(미도시)을 수행할 수 있다. 예를 들어, 상기 네트워크가 WiFi를 이용하여 무선 접속 장치와 연결된 네트워크인 경우, 다른 무선 접속 장치를 찾는 동작(예를 들어, WiFi의 탐색)을 수행할 수 있다. 더하여, 상기 전자 장치는 다른 무선 접속 장치에 연결하는 동작을 수행할 수 있다. 연결 동작을 수행한 전자 장치는 상기 다른 네트워크의 상태를 확인하는 동작을 수행할 수 있다. 상기한 추가 동작들, 예를 들면, 다른 네트워크를 찾는 동작, 다른 무선 접속 장치에 연결하는 동작 및/또는 다른 네트워크의 상태를 확인하는 동작 중 적어도 일부는, 예를 들면, 상기 전자 장치의 제 1 프로세서 또는 제 2 프로세서에 의해서 수행될 수 있다.
도 2 내지 도 4 에 도시된 과정 내지 방법에 기재된 동작(예: 202 내지 208, 302 내지 306, 또는 402 내지 406)들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)한 방법으로 실행될 수 있다. 또한, 다른 순서로 실행되거나, 일부 동작이 생략되거나, 다른 동작이 추가될 수 있다.
도 5는 다양한 실시예에 따른, 전자 장치 101에서 네트워크 상태를 판단하기 위한 시스템의 블록도 500을 도시한다. 도 5를 참조하면, 전자 장치 101은, 예를 들면, 제 1 프로세서 120 및 제 2 프로세서 125를 포함할 수 있다. 제 1 프로세서 120은, 예를 들면, 네트워크 상태를 판단하기 위한 지정된 메시지에 대한 정보를 제 2 프로세서 125에 전달할 수 있다.
상기 제 1 프로세서 120은 어플리케이션을 제어하는 어플리케이션 프로세서일 수 있다. 상기 제 2 프로세서 125는 통신 모듈을 제어하는 프로세서일 수 있다. 상기 제 2 프로세서 125는 상기 통신 모듈의 전력 상태에 대한 저전력 및 활성화의 상태 천이 동작을 할 수 있다.
상기 제 1 프로세서 120는 전력 소모에 관련된 저전력 및 활성화 상태 천이 동작 502를 수행할 수 있다.
상기 제 1 프로세서 120는 상기 제 2 프로세서 125로부터 통신 모듈에 관련된 정보를 획득할 수 있다. 예를 들어, 상기 제 1 프로세서 120은 상기 제 2 프로세서 125로부터 상기 통신 모듈이 다른 장치 104와 통신하는 주기 정보를 획득할 수 있다. 상기 주기 정보는 상기 통신 모듈의 전력의 상태 천이에 관련된 정보일 수 있다. 상기 상태 천이는 저전력 상태 506과 상기 다른 장치와 통신하는 활성화 상태 508로 변경에 관련된 정보일 수 있다.
상기 통신하는 정보에 기반하여 상기 제 1 프로세서 120는 지정된 메시지 510을 전송하는 전송 주기, 상기 지정된 메시지의 프로토콜, 지정된 메시지의 수신 장치, 제 2 프로세서 125에서 상기 지정된 메시지에 대한 응답을 대기하는 시간 등을 결정할 수 있다.
제 1 프로세서 120 또는 제 2 프로세서 125를 이용하여 상기 지정된 메시지를 전송하는 전송 주기는 변경될 수 있다. 상기 주기는 선형적 또는 지수적으로 증가 또는 감소할 수 있다. 더하여 상기 전자 장치 101에 의해 지정된 규칙에 기반하여 변경될 수 있다. 예를 들어, 상기 전자 장치 101의 상기 통신 모듈에서 수신한 신호의 감도가 낮은 경우 주기를 상대적으로 줄여서 전송하고, 신호의 감도가 높은 경우 늘려서 전송할 수 있다. 상기 주기를 늘리고 줄이는 것은 상기 지정된 메시지의 상기 응답에 기반할 수 있다. 예를 들어, 상기 응답이 오지 않는 경우, 상기 주기를 줄이고, 상기 응답이 있는 경우, 주기를 늘릴 수 있다. 더하여, 상기 지정된 메시지에 대한 응답으로 응답 메시지를 수신한 경우, 응답 메시지의 네트워크 상태가 비정상적임을 나타내는 정보(예: FEC 정보)를 확인하여 상기 주기를 변경할 수 있다. 예를 들어, 응답 메시지의 FEC 정보를 확인하여 데이터 무결성에 문제가 있다고 판단된 경우, 상기 주기를 줄일 수 있다. 상기 응답 메시지를 수신하고, 상기 FEC 정보를 통해서 데이터 무결성에 문제가 없다고 판단된 경우, 주기를 늘릴 수 있다.
제 1 프로세서 120는 상기 지정된 메시지에 관련된 정보를 제 2 프로세서 125에 전달하는 동작 504를 수행할 수 있다. 예를 들어, 제 1 프로세서 120는 상기 지정된 메시지를 전송하는 전송 주기, 상기 지정된 메시지의 프로토콜, 지정된 메시지의 수신 장치, 제 2 프로세서 125에서 상기 지정된 메시지에 대한 응답을 대기하는 시간 등을 제 2 프로세서 125에게 전달할 수 있다. 상기 제 2 프로세서 125는 상기 지정된 메시지에 관련된 상기 프로토콜에 기반하여, 지정된 메시지를 생성하고, 상기 지정된 주기에 메시지를 상기 지정된 메시지의 수신 장치에게 전송하는 동작을 수행할 수 있다. 더하여, 상기 전자 장치 101은 제 2 프로세서 125에서 상기 지정된 메시지에 대한 응답을 대기하는 시간에 기반하여 응답을 대기하는 동작 518을 수행할 수 있다.
상기 제 1 프로세서 120가 저전력 상태인 경우에 상기 제 2 프로세서 125에서 지정된 메시지를 전송하도록 할 수 있다. 상기 제 1 프로세서 120가 저전력 상태이고, 제 2 프로세서 125와 연관된 통신 모듈이 활성화 된 상태인 경우 상기 제 2 프로세서 125는 상기 통신 모듈을 통하여 상기 지정된 메시지를 전송하도록 할 수 있다.
상기 제 2 프로세서 125는 상기 제 2 프로세서 125와 연관된 통신 모듈이 다른 장치 104와 통신하는 주기 정보(예: WiFi beacon 주기, Cellular paging 주기 등)를 상기 통신 모듈을 통하여 획득할 수 있다. 상기 정보는 상기 다른 장치 104가 전송하는 정보(예: beacon, paging 정보 등) 또는 상기 전자 장치 101와 상기 다른 장치 104가 연결될 경우 전달되는 정보에 기반하여 획득할 수 있다. 상기 획득한 주기 정보에 기반하여, 상기 제 2 프로세서 125에 연관된 통신 모듈은 활성화될 수 있다. 상기 제 2 프로세서 125는 상기 통신 모듈을 이용하여 상기 주기에 상기 지정된 메시지를 전송할 수 있다.
상기 제 2 프로세서 125는 상기 지정된 메시지 510을 송신하고 대기하는 동작 518을 수행할 수 있다. 상기 제 2 프로세서 125는 상기 응답 메시지 516을 수신할 수 있다. 상기 제 2 프로세서 125는 상기 응답 메시지 516이 수신되지 않거나, 상기 응답 메시지의 네트워크 상태가 비정상적임을 나타내는 정보(예: FEC 정보)를 확인하는 경우, 네트워크가 비정상임을 나타내는 알림 520을 통해 제 2 프로세서 125에 알릴 수 있다. 상기 제 1 프로세서 120가 저전력 상태인 경우 상기 알림 520을 통해서 활성화 상태로 천이할 수 있다. 상기 응답 메시지가 수신되지 않는 경우는 상기 전자 장치 101와 연결된 다른 장치에서 네트워크 162와의 연결이 끊기거나, 상기 네트워크 162를 사용할 수 있는 권한이 없거나, 상기 서버 106에 이상이 있는 경우일 수 있다.
상기 응답 메시지 516은 상기 전자 장치 101와 통신적으로 연결된 상기 다른 장치 104를 통해서 전송될 수 있다. 상기 다른 장치 104는 응답 메시지 514를 수신될 수 있다. 상기 응답 메시지 516은 상기 응답 메시지 514를 기반하여 전송될 수 있다. 상기 응답 메시지 516 또는 상기 응답 메시지 514는 상기 지정된 메시지지 510에 대한 서버 106의 응답일 수 있다. 상기 응답 메시지 514는 상기 네트워크 162를 통하여 상기 다른 장치 104에 전달될 수 있다. 상기 응답 메시지 516은 상기 전자 장치 101에 수신될 수 있다. 상기 응답 메시지 516을 확인한 제 2 프로세서 125는 상기 네트워크가 정상적임을 확인하고 상기 제 1 프로세서 120에 알림 520을 전달하는 동작을 수행하지 않을 수 있다. 상기 네트워크가 정상인 경우 상기 제 1 프로세서 120는 저전력 상태를 유지할 수 있다.
상기 전자 장치 101는 상기 지정된 메시지 510에 상기 지정된 메시지의 수신 장치(예를 들어 서버 106)에 대한 주소 정보를 포함할 수 있다. 상기 전자 장치 101는 상기 지정된 메시지 510에 상기 수신 장치에 도달하지 않더라도, 네트워크 162 내의 네트워크 장치 512에서 응답하도록 설정할 수 있다. 상기 설정은 상기 지정된 메시지의 프로토콜에 의해서 응답될 수 있다. 예를 들어, 상기 지정된 메시지는 ICMP 패킷일 수 있다. 상기 지정된 메시지의 (TTL(time to live) 값을 설정할 수 있다. 상기 TTL값을 변경하면서 상기 지정된 메시지를 여러 번 전송할 수 있다. 상기 TTL값은 장치를 지나는 경우 TTL값을 1씩 감소할 수 있다. 상기 TTL값이 0이 되는 0이되는 장치에서 상기 지정된 메시지의 응답 메시지를 상기 전자 장치로 전송할 수 있다. 상기 네트워크 장치 512는 상기 전자장치에서 상기 수신 장치(예를 들어 서버 106)까지의 라우팅 경로에 있는 장치일 수 있다.
상기 다른 장치 104는 WiFi의 Access Point(AP)이거나 cellular의 Base Station 또는 eNodeB일 수 있다. 상기 다른 장치 104는 상기 전자 장치 101와 연결되어 있는 경우, 상기 응답 메시지 516을 상기 전자 장치에 전송할 수 있다. 상기 응답 메시지의 전송에 실패한 경우, 상기 다른 장치 104는 상기 응답 메시지를 저장할 수 있다. 상기 다른 장치 104는 상기 전자 장치 101와 상기 응답 메시지의 전송을 할 수 있는 기회를 획득한 경우 상기 저장된 응답 메시지를 전송할 수 있다.
상기 응답을 대기하는 동작 518이 지정된 시간 동안 상기 응답 메시지 516을 수신하지 못하는 경우, 상기 제 2 프로세서 125는 상기 전자 장치 101과 통신적으로 연결된 네트워크의 상태가 비정상임을 다른 전자 장치 526에 알릴 수 있다. 예를 들어, 상기 제 2 프로세서 125는 WiFi 통신 모듈을 제어하는 프로세서일 수 있다. 상기 제 2 프로세서 125와 연관된 WiFi 통신 모듈은 상기 다른 장치 104와 연결될 수 있다. 상기 제 2 프로세서 125가 상기 다른 장치 104를 통해서 연결된 네트워크가 비정상적이라고 판단한 경우, 상기 다른 전자 장치 526을 통해 비정상임을 알리는 메시지를 전송할 수 있다. 상기 다른 전자 장치 526과의 연결과 상기 다른 장치 104는 시간 분할 방식을 통해서 동시에 연결할 수도 있고, 상기 다른 장치 104의 연결을 종료하고 다른 전자 장치 526을 통해서 연결할 수도 있다. 상기 제 2 프로세서 125에 연관된 통신 모듈이 WiFi가 아닌 경우에는 주파수 분할, 코드 분할 등을 이용하여 동시에 연결할 수도 있다. 더하여, 상기 제 2 프로세서 125는 상기 전자 장치 101과 기능적으로 연결된 다른 통신 모듈을 통하여 상기 전자 장치 526에 통신적으로 연결을 수행하고, 상기 다른 장치 104를 통한 상기 네트워크의 상태의 비정상임을 알릴 수 있다. 예를 들어, 상기 통신 모듈이 WiFi인 경우 상기 다른 통신 모듈은 bluetooth일 수 있다. 상기 전자 장치 101은 네트워크가 비정상임을 판단되는 경우, 상기 다른 전자 장치 526에 통신 연결을 수행할 수도 있다. 상기 판단 이전에 상기 다른 전자 장치 526와 미리 연결된 경우는 이 과정을 수행하지 않을 수도 있다.
상기 제 1 프로세서 120은 상기 알림 520을 수신한 경우, 상기 네트워크가 비정상임을 상기 전자 장치와 기능적으로 연결된 모듈에 알림 522를 전달할 수 있다. 상기 알림 522는 하드웨어적으로 표현될 수 있다. 예를 들어, 상기 제 1 프로세서는 연결된 디스플레이, 스피커, 인디케이터(예를 들어 LED), 또는 진동 모터 중 적어도 하나의 장치를 통해 상기 네트워크 상태의 비정상을 알릴 수 있다. 더하여, 상기 제 1 프로세서는 상기 알림 522를 소프트웨어적으로 알릴 수 있다. 예를 들어, 기능적으로 연결된 디스플레이에 상기 네트워크 상태의 비정상을 문자나 그림의 형태로 사용자에게 나타낼 수 있다.
상기 제 1 프로세서 120은 상기 알림 520을 수신한 경우, WiFi를 비활성화하거나 활성화하는 등의 WiFi 관리 액션(WiFi managing action)(524)을 수행할 수 있다.
도 6은 다양한 실시예에 따른, 전자 장치에서 네트워크 상태를 디스플레이에 표시한 예를 도시한다. 전자 장치는, 예를 들면, 제 1 프로세서(예: 제 1 프로세서 120) 및 제 2 프로세서 125(예: 제 2 프로세서 125)를 포함할 수 있다. 도 6을 참조하면, 전자 장치(예: 전자 장치 101)은 상기 전자 장치와 기능적으로 연결된 디스플레이 600(예: 디스플레이 150)에 네트워크 상태에 관련된 정보를 표시할 수 있다.
도 6의 (a)를 참조하면, 제 1 프로세서는 상기 디스플레이 600에 상기 네트워크 상태에 대한 표시 602(예: 네트워크가 정상이 아님을 나타내는 표시)를 이미지로 표현할 수 있다. 예를 들어, 노티피케이션 바에 네트워크 상태를 표시할 수 있다. 더하여 상기 제 1 프로세서는 상기 네트워크 상태를 나타내는 텍스트 604를 상기 디스플레이 600에 표시할 수 있다. 예를 들어 상기 604는 팝업의 형태로 상기 디스플레이 600에 표시할 수 있다. 상기 제 1 프로세서는 상기 네트워크가 비정상임을 나타내고 다른 동작을 수행하지 않을 수 있다.
상기 제 1 프로세서는 상기 네트워크가 비정상임을 확인하는 경우, 다른 네트워크로 연결을 시도할 수 있고, 연결 시도하는 상태를 표시할 수 있다.
도 6의 (b)를 참조하면, 상기 제 1 프로세서는 상기 네트워크가 비정상임을 알리도록 이미지 602를 표시하고, 상기 다른 네트워크로 연결하는 이미지 606를 표시할 수 있다. 더하여, 상기 제 1 프로세서는 상기 다른 네트워크로 연결하고 있는 상태를 텍스트 608로 표시할 수 있다. 예를 들어, WiFi 네트워크의 연결이 비정상인 경우, 3G/LTE의 연결을 시도할 수 있고, 그 상태를 노티피케이션 바에 아이콘으로 표시하고, 팝업을 통하여 텍스트로 알려줄 수 있다.
상기 제 1 프로세서는 상기 네트워크가 비정상임을 확인하는 경우, 다른 네트워크로 연결을 시도할 수 있고, 상기 네트워크를 비활성화 할 수 있다. 상기 제 1 프로세서는 상기 네트워크가 비정상임을 알리고, 상기 다른 네트워크에 연결중임을 알리며, 상기 네트워크를 비활성화하고 있음을 알릴 수 있다.
도 6의 (c)를 참조하면, 상기 네트워크와 상기 다른 네트워크의 상태에 대해 이미지 606과 텍스트 610을 통하여 알릴 수 있다. 예를 들어, WiFi가 비정상인 경우 WiFi를 비활성화 하여, 노티피케이션 바에서 이미지를 사라지게 하고, 3G/LTE로 연결하는 경우, 노티피케이션 바에 이미지 606를 표시할 수 있다. 더하여, WiFi가 비정상이고, 3G/LTE로 연결중이며, WiFi를 비활성화한다는 것을 팝업을 통하여 텍스트 610로 표시할 수 있다.
다양한 실시예들에 따르면, 네트워크 상태를 판단하는 방법은, 전자 장치의 제 1 프로세서에 의해 지정된 주기를 상기 전자 장치의 제 2 프로세서를 이용하여 획득하는 동작; 상기 제 2 프로세서를 이용하여, 상기 전자 장치로부터 네트워크의 다른 장치(another device)로 지정된 메시지를 상기 지정된 주기에 따라 전송하는 동작; 상기 제 2 프로세서를 이용하여, 상기 지정된 메시지에 대한 응답의 수신 여부 또는 상기 응답에 포함된 정보에 기반하여 상기 네트워크의 상태를 판단하는 동작; 및 상기 네트워크의 상태가 비정상으로 판단된 경우, 상기 제 2 프로세서를 이용하여 상기 제 1 프로세서를 활성화하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 제 1 프로세서는 상기 전자 장치의 어플리케이션을 실행할 어플리케이션 프로세서이고, 상기 제 2 프로세서는 상기 전자 장치의 통신 모듈에 대한 프로세서일 수 있다.
다양한 실시예들에 따르면, 상기 제 1 프로세서는, 상기 제 1 프로세서가 활성화된 경우에, 상기 제 2 프로세서의 소모 전력보다 높은 소모 전력으로 구동될 수 있다.
다양한 실시예들에 따르면, 상기 획득하는 동작은, 상기 전자 장치와 다른 장치 간의 상기 전자 장치를 상기 네트워크에 연결하기 위한 통신 주기에 기반하여 상기 지정된 주기를 결정하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 결정하는 동작은, 상기 제 2 프로세서에 관련된 통신 모듈이 상기 통신 주기 동안에 저전력 모드로부터 활성화되어 상기 다른 장치와의 통신을 실행하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 획득하는 동작은, 상기 제 2 프로세서를 이용하여, 상기 지정된 주기를, 선형적 또는 지수적으로 증가 또는 감소시키는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 획득하는 동작은, 상기 제 2 프로세서를 이용하여 전송한 이전의 메시지에 대한 응답과 관련된 정보에 기반하여, 상기 지정된 주기를 조정하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 획득하는 동작은, 상기 네트워크와 관련된 주소, 프로토콜, 또는 응답 대기 시간 중 적어도 하나를 포함하는 네트워크 정보를 상기 제 1 프로세서로부터 획득하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 전송하는 동작은 상기 네트워크와 관련된 주소, 프로토콜, 또는 응답 대기 시간 중 적어도 하나를 포함하는 네트워크 정보에 기반하여, 상기 지정된 메시지를 생성하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 전송하는 동작은, 상기 제 1 프로세서가 저전력 모드에 있는 경우에, 상기 지정된 메시지를 전송하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 전송하는 동작은, 상기 전자 장치와 상기 다른 장치 간의 초기 연결에 관한 설정에 기반하여 상기 제 2 프로세서에 연관된 통신 모듈이 활성화되고 상기 지정된 메시지를 전송하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 판단하는 동작은, 상기 응답이 지정된 시간 안에 수신되지 않는 경우에, 상기 네트워크의 상태를 비정상으로 판단하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 판단하는 동작은, 상기 응답이 오지 않거나, 상기 응답에 포함된 정보가 정상적인 응답에 포함된 정보와는 다른 경우, 상기 네트워크의 상태를 비정상으로 결정하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 네트워크의 상태가 정상으로 판단된 경우, 상기 활성화하는 동작을 수행하지 않는 동작(refraining)을 더 포함할 수 있다.
도 7는 다양한 실시예에 따른 전자 장치 701의 블록도 700이다. 상기 전자 장치 701는, 예를 들면, 도 1에 도시된 전자 장치 101의 전체 또는 일부를 포함할 수 있다. 상기 전자 장치 701는 하나 이상의 어플리케이션 프로세서 (AP: application processor) 710, 통신 모듈 720, SIM (subscriber identification module) 카드 724, 메모리 730, 센서 모듈 740, 입력 장치 750, 디스플레이 760, 인터페이스 770, 오디오 모듈 780, 카메라 모듈 791, 전력 관리 모듈 795, 배터리 796, 인디케이터 797, 및 모터 798 를 포함할 수 있다.
상기 AP 710는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 상기 AP 710에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 상기 AP 710는, 예를 들면, SoC (system on chip) 로 구현될 수 있다. 한 실시예에 따르면, 상기 AP 710는 GPU (graphic processing unit) 및/또는 이미지 신호 프로세서 (image signal processor)를 더 포함할 수 있다. 상기 AP 710는 도 7에 도시된 구성요소들 중 적어도 일부 (예: 셀룰러 모듈 721)를 포함할 수도 있다. 상기 AP 710 는 다른 구성요소들 (예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드 (load)하여 처리하고, 다양한 데이터를 비휘발성 메모리에 저장 (store)할 수 있다.
상기 통신 모듈 720은, 도 1의 상기 통신 인터페이스 160와 동일 또는 유사한 구성을 가질 수 있다. 상기 통신 모듈 720은, 예를 들면, 셀룰러 모듈 721, WIFI 모듈 723, BT 모듈 725, GPS 모듈 727, NFC 모듈 728 및 RF (radio frequency) 모듈 729를 포함할 수 있다.
상기 셀룰러 모듈 721은, 예를 들면, 통신망을 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 한 실시예에 따르면, 상기 셀룰러 모듈 721은 가입자 식별 모듈 (예: SIM 카드 724)을 이용하여 통신 네트워크 내에서 전자 장치 701의 구별 및 인증을 수행할 수 있다. 한 실시예에 따르면, 상기 셀룰러 모듈 721은 상기 AP 710가 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 한 실시예에 따르면, 상기 셀룰러 모듈 721은 커뮤니케이션 프로세서 (CP: communication processor)를 포함할 수 있다.
상기 WIFI 모듈 723, 상기 BT 모듈 725, 상기 GPS 모듈 727 또는 상기 NFC 모듈 728 각각은, 예를 들면, 해당하는 모듈을 통해서 송수신되는 데이터를 처리하기 위한 프로세서를 포함할 수 있다. 어떤 실시예에 따르면, 셀룰러 모듈 721, WIFI 모듈 723, BT 모듈 725, GPS 모듈 727 또는 NFC 모듈 728 중 적어도 일부 (예: 두 개 이상)는 하나의 integrated chip (IC) 또는 IC 패키지 내에 포함될 수 있다.
상기 RF 모듈 729는, 예를 들면, 통신 신호 (예: RF 신호)를 송수신할 수 있다. 상기 RF 모듈 729는, 예를 들면, 트랜시버 (transceiver), PAM (power amp module), 주파수 필터 (frequency filter), LNA (low noise amplifier), 또는 안테나 등을 포함할 수 있다. 다른 실시예에 따르면, 셀룰러 모듈 721, WIFI 모듈 723, BT 모듈 725, GPS 모듈 727 또는 NFC 모듈 728 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다.
상기 SIM 카드 724는, 예를 들면, 가입자 식별 모듈을 포함하는 카드 및/또는 내장 SIM (embedded SIM)을 포함할 수 있으며, 고유한 식별 정보 (예: ICCID (integrated circuit card identifier)) 또는 가입자 정보 (예: IMSI (international mobile subscriber identity))를 포함할 수 있다.
상기 메모리 730 (예: 메모리 730)는, 예를 들면, 내장 메모리 732 또는 외장 메모리 734를 포함할 수 있다. 상기 내장 메모리 732는, 예를 들면, 휘발성 메모리 (예: DRAM (dynamic RAM), SRAM (static RAM), 또는 SDRAM (synchronous dynamic RAM) 등), 비휘발성 메모리 (non-volatile Memory) (예: OTPROM (one time programmable ROM), PROM (programmable ROM), EPROM (erasable and programmable ROM), EEPROM (electrically erasable and programmable ROM), mask ROM, flash ROM, 플래시 메모리(예: NAND flash 또는 NOR flash 등), 하드 드라이브, 또는 솔리드 스테이트 드라이브 (solid state drive (SSD)) 중 적어도 하나를 포함할 수 있다.
상기 외장 메모리 734는 flash drive, 예를 들면, CF (compact flash), SD (secure digital), Micro-SD (micro secure digital), Mini-SD (mini secure digital), xD (extreme digital), 또는 메모리 스틱 (memory stick) 등을 더 포함할 수 있다. 상기 외장 메모리 734는 다양한 인터페이스를 통하여 상기 전자 장치 701과 기능적으로 및/또는 물리적으로 연결될 수 있다.
상기 센서 모듈 740은, 예를 들면, 물리량을 계측하거나 전자 장치 701의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 상기 센서 모듈 740은, 예를 들면, 제스처 센서 740A, 자이로 센서 740B, 기압 센서 740C, 마그네틱 센서 740D, 가속도 센서 740E, 그립 센서 740F, 근접 센서 740G, color 센서 740H (예: RGB (red, green, blue) 센서), 생체 센서 740I, 온/습도 센서 740J, 조도 센서 740K, 또는 UV (ultra violet) 센서 740M 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대체적으로, 상기 센서 모듈 740은, 예를 들면, 후각 센서 (E-nose sensor), EMG 센서 (electromyography sensor), EEG 센서 (electroencephalogram sensor), ECG 센서 (electrocardiogram sensor), IR (infrared) 센서, 홍채 센서 및/또는 지문 센서를 포함할 수 있다. 상기 센서 모듈 740은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시예에서는, 전자 장치 701는 AP 710의 일부로서 또는 별도로, 센서 모듈 740을 제어하도록 구성된 프로세서를 더 포함하여, 상기 AP 710가 슬립 (sleep) 상태에 있는 동안, 센서 모듈 740을 제어할 수 있다.
상기 입력 장치 750은, 예를 들면, 터치 패널 (touch panel) 752, (디지털) 펜 센서 (pen sensor) 754, 키 (key) 756, 또는 초음파 (ultrasonic) 입력 장치 758를 포함할 수 있다. 상기 터치 패널 752은, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 상기 터치 패널 752은 제어 회로를 더 포함할 수도 있다. 상기 터치 패널 752은 택타일 레이어 (tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다.
상기 (디지털) 펜 센서 754는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 쉬트 (sheet)를 포함할 수 있다. 상기 키 756는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 상기 초음파 입력 장치 758는 초음파 신호를 발생하는 입력 도구를 통해, 전자 장치 701에서 마이크 (예: 마이크 788)로 음파를 감지하여 데이터를 확인할 수 있다.
상기 디스플레이 760 (예: 디스플레이 150)은 패널 762, 홀로그램 장치 764, 또는 프로젝터 766을 포함할 수 있다. 상기 패널 762은, 도 1의 디스플레이 150과 동일 또는 유사한 구성을 포함할 수 있다. 상기 패널 762은, 예를 들면, 유연하게 (flexible), 투명하게 (transparent), 또는 착용할 수 있게 (wearable) 구현될 수 있다. 상기 패널 762은 상기 터치 패널 752과 하나의 모듈로 구성될 수도 있다. 상기 홀로그램 장치 764은 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 상기 프로젝터 766는 스크린에 빛을 투사하여 영상을 표시할 수 있다. 상기 스크린은, 예를 들면, 상기 전자 장치 701의 내부 또는 외부에 위치할 수 있다. 한 실시예에 따르면, 상기 디스플레이 760은 상기 패널 762, 상기 홀로그램 장치 764, 또는 프로젝터 766를 제어하기 위한 제어 회로를 더 포함할 수 있다.
상기 인터페이스 770는, 예를 들면, HDMI (high-definition multimedia interface) 772, USB (universal serial bus) 774, 광 인터페이스 (optical interface) 776, 또는 D-sub (D-subminiature) 778를 포함할 수 있다. 상기 인터페이스 770는, 예를 들면, 도 1에 도시된 통신 인터페이스 160에 포함될 수 있다. 추가적으로 또는 대체적으로, 상기 인터페이스 770는, 예를 들면, MHL (mobile high-definition link) 인터페이스, SD (secure digital) 카드/MMC (multi-media card) 인터페이스, 또는 IrDA (infrared data association) 규격 인터페이스를 포함할 수 있다.
상기 오디오 모듈 780은, 예를 들면, 소리 (sound)와 전기 신호를 쌍방향으로 변환시킬 수 있다. 상기 오디오 모듈 780의 적어도 일부 구성요소는, 예를 들면, 도 1 에 도시된 입출력 인터페이스 140에 포함될 수 있다. 상기 오디오 모듈 780은, 예를 들면, 스피커 782, 리시버 784, 이어폰 786, 또는 마이크 788 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다.
상기 카메라 모듈 791은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시예에 따르면, 하나 이상의 이미지 센서 (예: 전면 센서 또는 후면 센서), 렌즈, ISP (image signal processor), 또는 플래쉬 (flash)(예: LED 또는 xenon lamp)를 포함할 수 있다.
상기 전력 관리 모듈 795은, 예를 들면, 상기 전자 장치 701의 전력을 관리할 수 있다. 한 실시예에 따르면, 상기 전력 관리 모듈 795은 PMIC (power management integrated circuit), 충전 IC (charger integrated circuit), 또는 배터리 또는 연료 게이지 (battery or fuel gauge)를 포함할 수 있다. 상기 PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 상기 배터리 게이지는, 예를 들면, 상기 배터리 796의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 상기 배터리 796는, 예를 들면, 충전식 전지 (rechargeable battery) 및/또는 태양 전지 (solar battery)를 포함할 수 있다.
상기 인디케이터 797는 상기 전자 장치 201 혹은 그 일부 (예: AP 710)의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 상기 모터 798는 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동 (vibration), 또는 햅틱 (haptic) 효과 등을 발생시킬 수 있다. 도시되지는 않았으나, 상기 전자 장치 701는 모바일 TV 지원을 위한 처리 장치 (예: GPU)를 포함할 수 있다. 상기 모바일 TV 지원을 위한 처리 장치는, 예를 들면, DMB (digital multimedia broadcasting), DVB (digital video broadcasting), 또는 미디어 플로우 (media flow) 등의 규격에 따른 미디어 데이터를 처리할 수 있다.
상기 전자 장치의 전술한 구성요소들 각각은 하나 또는 그 이상의 부품 (component)으로 구성될 수 있으며, 해당 구성 요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시예에서, 전자 장치는 전술한 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 다양한 실시예에 따른 전자 장치의 구성 요소들 중 일부가 결합되어 하나의 개체 (entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.
다양한 실시예들에 따르면, 전자 장치는 상기 전자 장치와 네트워크의 다른 장치 간의 통신을 위해, 지정된 주기를 결정하도록 설정된 제 1 프로세서; 및 상기 제 1 프로세서로부터 상기 지정된 주기를 획득하고, 상기 전자 장치로부터 상기 다른 장치로 지정된 메시지를 상기 지정된 주기에 따라 전송하고, 상기 지정된 메시지에 대한 응답의 수신 여부 또는 상기 응답에 포함된 정보에 기반하여 상기 네트워크의 상태를 판단하고, 상기 네트워크의 상태가 비정상으로 판단된 경우 상기 제 1 프로세서를 활성화하도록 설정된 제 2 프로세서를 포함할 수 있다.
다양한 실시예들에 따르면, 상기 제 2 프로세서를 이용하여, 상기 전자 장치를 상기 네트워크에 연결하기 위한 제 1 통신 모듈 또는 상기 전자 장치를 다른 네트워크에 연결하기 위한 제 2 통신 모듈 중 적어도 하나를 더 포함할 수 있다.
다양한 실시예들에 따르면, 상기 제 2 프로세서는, 상기 네트워크의 상태가 비정상으로 판단되는 경우에, 상기 다른 전자 장치에 알리기 위해, 상기 제 2 통신 모듈 중 적어도 하나를 상기 다른 네트워크에 연결하도록 설정될 수 있다.
다양한 실시예들에 따르면, 상기 전자 장치와 기능적으로 연결된 디스플레이를 더 포함하고, 상기 제 1 프로세서 또는 상기 제 2 프로세서 중 적어도 하나는, 상기 네트워크의 상태 또는 상기 다른 네트워크와 관련된 정보 중 적어도 하나를 상기 디스플레이를 통해 표현하도록 설정될 수 있다.
다양한 실시예들에 따르면, 상기 제 2 프로세서는, 상기 제 1 프로세서에서 전달하는 주소 정보에 기반하여, 상기 네트워크 상의 복수의 장치들 중 하나의 장치에 상기 다른 장치를 통하여 상기 지정된 메시지를 전송하도록 설정될 수 있다.
다양한 실시예들에 따르면, 상기 응답은, 상기 다른 장치 또는 상기 메시지의 라우팅 경로에 있는 외부의 장치 중 적어도 하나로부터 수신될 수 있다.
다양한 실시예들에 따르면, 상기 다른 장치는, 상기 응답의 전송에 실패한 경우에, 상기 지정된 메시지와 연관된 데이터를 저장할 수 있다.
다양한 실시예들에 따르면, 상기 제 1 프로세서 또는 상기 제 2 프로세서 중 적어도 하나는, 상기 네트워크의 상태가 비정상으로 판단된 경우에, 상기 전자 장치에 기능적으로 연결된 디스플레이, 스피커, 인디케이터, 또는 진동 모터 중 적어도 하나의 장치를 통해, 상기 네트워크의 상태를 표현하도록 설정될 수 있다.
도 8은 다양한 실시예에 따른 프로그램 모듈 810의 블록도 800이다. 한 실시예에 따르면, 상기 프로그램 모듈 810은 전자 장치 (예: 전자 장치 101)에 관련된 자원을 제어하는 운영 체제 (operation system (OS)) 및/또는 운영 체제 상에서 구동되는 다양한 어플리케이션 (예: 어플리케이션 프로그램 134)을 포함할 수 있다. 상기 운영 체제는, 예를 들면, 안드로이드 (android), iOS, 윈도우즈 (windows), 심비안 (symbian), 타이젠 (tizen), 또는 바다 (bada) 등이 될 수 있다.
프로그램 모듈 810은 커널 820, 미들웨어 830, API (application programming interface) 860, 및/또는 어플리케이션 870을 포함할 수 있다. 상기 프로그램 모듈 810의 적어도 일부는 전자 장치 상에 프리로드 (preload) 되거나, 서버 (예: 서버 106)로부터 다운로드 (download) 가능하다.
상기 커널 820 (예: 도 1의 커널 131)은, 예를 들면, 시스템 리소스 매니저 821 또는 디바이스 드라이버 823를 포함할 수 있다. 상기 시스템 리소스 매니저 821는 시스템 리소스의 제어, 할당, 또는 회수 등을 수행할 수 있다. 한 실시예에 따르면, 상기 시스템 리소스 매니저 821는 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부 등을 포함할 수 있다. 상기 디바이스 드라이버 823는, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, WIFI 드라이버, 오디오 드라이버, 또는 IPC (inter-process communication) 드라이버를 포함할 수 있다.
상기 미들웨어 830는, 예를 들면, 상기 어플리케이션 870이 공통적으로 필요로 하는 기능을 제공하거나, 상기 어플리케이션 870이 전자 장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 상기 API 860를 통해 다양한 기능들을 상기 어플리케이션 870으로 제공할 수 있다. 한 실시예에 따르면, 상기 미들웨어 830 (예: 미들웨어 132)는 런타임 라이브러리 835, 어플리케이션 매니저 (application manager) 841, 윈도우 매니저 (window manager) 842, 멀티미디어 매니저 (multimedia manager) 843, 리소스 매니저 (resource manager) 844, 파워 매니저 (power manager) 845, 데이터베이스 매니저 (database manager) 846, 패키지 매니저 (package manager) 847, 연결 매니저 (connectivity manager) 848, 통지 매니저 (notification manager) 849, 위치 매니저 (location manager) 850, 그래픽 매니저 (graphic manager) 851, 또는 보안 매니저 (security manager) 852 중 적어도 하나를 포함할 수 있다.
상기 런타임 라이브러리 835는, 예를 들면, 상기 어플리케이션 870이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 상기 런타임 라이브러리 835는 입출력 관리, 메모리 관리, 또는 산술 함수에 대한 기능 등을 수행할 수 있다.
상기 어플리케이션 매니저 841는, 예를 들면, 상기 어플리케이션 870 중 적어도 하나의 어플리케이션의 생명 주기 (life cycle)를 관리할 수 있다. 상기 윈도우 매니저 842는 화면에서 사용하는 GUI 자원을 관리할 수 있다. 상기 멀티미디어 매니저 843는 다양한 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱 (codec)을 이용하여 미디어 파일의 인코딩 (encoding) 또는 디코딩 (decoding)을 수행할 수 있다. 상기 리소스 매니저 844는 상기 어플리케이션 870 중 적어도 어느 하나의 어플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다.
상기 파워 매니저 845는, 예를 들면, 바이오스 (BIOS: basic input/output system) 등과 함께 동작하여 배터리 (battery) 또는 전원을 관리하고, 전자 장치의 동작에 필요한 전력 정보 등을 제공할 수 있다. 상기 데이터베이스 매니저 846는 상기 어플리케이션 870 중 적어도 하나의 어플리케이션에서 사용할 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 상기 패키지 매니저 847는 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 업데이트를 관리할 수 있다.
상기 연결 매니저 848는, 예를 들면, WIFI 또는 블루투스 등의 무선 연결을 관리할 수 있다. 상기 통지 매니저 849는 도착 메시지, 약속, 근접성 알림 등의 사건 (event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 상기 위치 매니저 850는 전자 장치의 위치 정보를 관리할 수 있다. 상기 그래픽 매니저 851는 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 상기 보안 매니저 852는 시스템 보안 또는 사용자 인증 등에 필요한 제반 보안 기능을 제공할 수 있다. 한 실시예에 따르면, 전자 장치 (예: 전자 장치 101)가 전화 기능을 포함한 경우, 상기 미들웨어 830는 상기 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저 (telephony manager)를 더 포함할 수 있다.
상기 미들웨어 830는 전술한 구성요소들의 다양한 기능의 조합을 형성하는 미들웨어 모듈을 포함할 수 있다. 상기 미들웨어 830는 차별화된 기능을 제공하기 위해 운영 체제의 종류 별로 특화된 모듈을 제공할 수 있다. 또한, 상기 미들웨어 830는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다.
상기 API 860 (예: API 133)는, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠 (tizen)의 경우, 플랫폼 별로 두 개 이상의 API 셋을 제공할 수 있다.
상기 어플리케이션 870 (예: 어플리케이션 프로그램 134)은, 예를 들면, 홈 871, 다이얼러 872, SMS/MMS 873, IM (instant message) 874, 브라우저 875, 카메라 876, 알람 877, 컨택트 878, 음성 다이얼 879, 이메일 880, 달력 881, 미디어 플레이어 882, 앨범 883, 또는 시계 884, 건강 관리 (health care)(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보 제공 (예: 기압, 습도, 또는 온도 정보 등을 제공) 등의 기능을 제공할 수 있는 하나 이상의 어플리케이션을 포함할 수 있다.
한 실시예에 따르면, 상기 어플리케이션 870은 상기 전자 장치 (예: 전자 장치 101)와 외부 전자 장치 (예: 전자 장치 102, 104) 사이의 정보 교환을 지원하는 어플리케이션 (이하, 설명의 편의 상, "정보 교환 어플리케이션")을 포함할 수 있다. 상기 정보 교환 어플리케이션은, 예를 들면, 상기 외부 전자 장치에 특정 정보를 전달하기 위한 알림 전달 (notification relay) 어플리케이션, 또는 상기 외부 전자 장치를 관리하기 위한 장치 관리 (device management) 어플리케이션을 포함할 수 있다.
예를 들면, 상기 알림 전달 어플리케이션은 상기 전자 장치의 다른 어플리케이션 (예: SMS/MMS 어플리케이션, 이메일 어플리케이션, 건강 관리 어플리케이션, 또는 환경 정보 어플리케이션 등)에서 발생된 알림 정보를 외부 전자 장치 (예: 전자 장치 102, 104)로 전달하는 기능을 포함할 수 있다. 또한, 상기 알림 전달 어플리케이션은, 예를 들면, 외부 전자 장치로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. 상기 장치 관리 어플리케이션은, 예를 들면, 상기 전자 장치와 통신하는 외부 전자 장치 (예: 전자 장치 104)의 적어도 하나의 기능 (예: 외부 전자 장치 자체 (또는, 일부 구성 부품)의 턴-온/턴-오프 또는 디스플레이의 밝기 (또는, 해상도) 조절), 상기 외부 전자 장치에서 동작하는 어플리케이션 또는 상기 외부 전자 장치에서 제공되는 서비스 (예: 통화 서비스 또는 메시지 서비스)를 관리 (예: 설치, 삭제, 또는 업데이트)할 수 있다.
한 실시예에 따르면, 상기 어플리케이션 870은 상기 외부 전자 장치 (예: 전자 장치 102, 104)의 속성 (예: 전자 장치의 속성으로서, 전자 장치의 종류가 모바일 의료 기기)에 따라 지정된 어플리케이션 (예: 건강 관리 어플리케이션)을 포함할 수 있다. 한 실시예에 따르면, 상기 어플리케이션 870은 외부 전자 장치 (예: 서버 106 또는 전자 장치 102, 104)로부터 수신된 어플리케이션을 포함할 수 있다. 한 실시예에 따르면, 상기 어플리케이션 870은 프리로드 어플리케이션 (preloaded application) 또는 서버로부터 다운로드 가능한 제3자 어플리케이션 (third party application)을 포함할 수 있다. 도시된 실시예에 따른 프로그램 모듈 810의 구성요소들의 명칭은 운영 체제의 종류에 따라서 달라질 수 있다.
다양한 실시예에 따르면, 상기 프로그램 모듈 810의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어, 또는 이들 중 적어도 둘 이상의 조합으로 구현될 수 있다. 상기 프로그램 모듈 810의 적어도 일부는, 예를 들면, 프로세서 (예: AP 710)에 의해 구현 (implement)(예: 실행)될 수 있다. 상기 프로그램 모듈 810의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트 (sets of instructions) 또는 프로세스 등을 포함할 수 있다.
본 문서에서 사용된 용어 “모듈”은, 예를 들면, 하드웨어, 소프트웨어 또는 펌웨어 (firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위 (unit)를 의미할 수 있다. “모듈”은, 예를 들면, 유닛 (unit), 로직 (logic), 논리 블록 (logical block), 부품 (component), 또는 회로 (circuit) 등의 용어와 바꾸어 사용 (interchangeably use)될 수 있다. “모듈”은, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. “모듈”은 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. “모듈”은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면,“모듈”은, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC (application-specific integrated circuit) 칩, FPGAs (field-programmable gate arrays) 또는 프로그램 가능 논리 장치 (programmable-logic device) 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따른 장치 (예: 모듈들 또는 그 기능들) 또는 방법 (예: 동작들)의 적어도 일부는, 예컨대, 프로그램 모듈의 형태로 컴퓨터로 읽을 수 있는 저장매체 (computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 상기 명령어는, 프로세서 (예: 프로세서 120)에 의해 실행될 경우, 상기 하나 이상의 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 상기 메모리 130가 될 수 있다.
상기 컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체 (magnetic media)(예: 자기테이프), 광기록 매체 (optical media)(예: CD-ROM (compact disc read only memory), DVD (digital versatile disc), 자기-광 매체 (magneto-optical media)(예: 플롭티컬 디스크 (floptical disk)), 하드웨어 장치 (예: ROM (read only memory), RAM (random access memory), 또는 플래시 메모리 등) 등을 포함할 수 있다. 또한, 프로그램 명령에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 다양한 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지다.
다양한 실시예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 다양한 실시예에 따른 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱 (heuristic)한 방법으로 실행될 수 있다. 또한, 일부 동작은 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
그리고 본 문서에 개시된 실시예는 개시된, 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 개시의 범위를 한정하는 것은 아니다. 따라서, 본 개시의 범위는, 본 개시의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시예를 포함하는 것으로 해석되어야 한다.
전자 장치 101, 다른 전자 장치 104, 서버 106, 네트워크 162, 제 1 프로세서 120, 제 2 프로세서 125, 네트워크 장치 512, 다른 전자 장치 526

Claims (22)

  1. 전자 장치의 제 1 프로세서에 의해 지정된 주기를 상기 전자 장치의 제 2 프로세서를 이용하여 획득하는 동작;
    상기 제 1 프로세서가 저전력 상태에 있는 경우에, 상기 제 2 프로세서를 이용하여, 상기 전자 장치로부터 네트워크의 다른 장치(another device)로 지정된 메시지를 상기 지정된 주기에 따라 전송하는 동작;
    상기 제 2 프로세서를 이용하여, 상기 지정된 메시지에 대한 응답의 수신 여부 또는 상기 응답에 포함된 정보에 기반하여 상기 네트워크의 상태를 판단하는 동작; 및
    상기 네트워크의 상태가 비정상으로 판단된 경우, 상기 제 2 프로세서를 이용하여 상기 제 1 프로세서를 상기 저전력 상태로부터 활성화 상태로 전환하는 동작을 포함하는 방법.
  2. 제 1 항에 있어서, 상기 제 1 프로세서는 상기 전자 장치의 어플리케이션을 실행할 어플리케이션 프로세서이고, 상기 제 2 프로세서는 상기 전자 장치의 통신 모듈에 대한 프로세서인 방법.
  3. 제 1 항에 있어서, 상기 제 1 프로세서는, 상기 제 1 프로세서가 활성화된 경우에, 상기 제 2 프로세서의 소모 전력보다 높은 소모 전력으로 구동되는 방법.
  4. 제 1 항에 있어서, 상기 획득하는 동작은,
    상기 전자 장치와 다른 장치 간의 상기 전자 장치를 상기 네트워크에 연결하기 위한 통신 주기에 기반하여 상기 지정된 주기를 결정하는 동작을 포함하는 방법.
  5. 제 4항에 있어서, 상기 결정하는 동작은,
    상기 제 2 프로세서에 관련된 통신 모듈이 상기 통신 주기 동안에 저전력 모드로부터 활성화되어 상기 다른 장치와의 통신을 실행하는 동작을 포함하는 방법.
  6. 제 1 항에 있어서, 상기 획득하는 동작은,
    상기 제 2 프로세서를 이용하여, 상기 지정된 주기를, 선형적 또는 지수적으로 증가 또는 감소시키는 동작을 포함하는 방법.
  7. 제 1 항에 있어서, 상기 획득하는 동작은,
    상기 제 2 프로세서를 이용하여 전송한 이전의 메시지에 대한 응답과 관련된 정보에 기반하여, 상기 지정된 주기를 조정하는 동작을 포함하는 방법.
  8. 제 1 항에 있어서, 상기 획득하는 동작은,
    상기 네트워크와 관련된 주소, 프로토콜, 또는 응답 대기 시간 중 적어도 하나를 포함하는 네트워크 정보를 상기 제 1 프로세서로부터 획득하는 동작을 포함하는 방법.
  9. 제 1 항에 있어서, 상기 전송하는 동작은
    상기 네트워크와 관련된 주소, 프로토콜, 또는 응답 대기 시간 중 적어도 하나를 포함하는 네트워크 정보에 기반하여, 상기 지정된 메시지를 생성하는 동작을 포함하는 방법.
  10. 삭제
  11. 제 1 항에 있어서, 상기 전송하는 동작은,
    상기 전자 장치와 상기 다른 장치 간의 연결에 관한 설정에 기반하여 상기 제 2 프로세서에 연관된 통신 모듈을 활성화하는 동작, 및
    상기 지정된 메시지를 전송하는 동작을 포함하는 방법.
  12. 제 1 항에 있어서, 상기 판단하는 동작은,
    상기 응답이 지정된 시간 안에 수신되지 않는 경우에, 상기 네트워크의 상태를 비정상으로 판단하는 동작을 포함하는 방법.
  13. 제 1 항에 있어서, 상기 판단하는 동작은,
    상기 응답이 오지 않거나, 상기 응답에 포함된 정보가 정상적인 응답에 포함된 정보와는 다른 경우, 상기 네트워크의 상태를 비정상으로 결정하는 동작을 포함하는 방법.
  14. 제 1 항에 있어서,
    상기 네트워크의 상태가 정상으로 판단된 경우, 상기 활성화하는 동작을 수행하지 않는 동작(refraining)을 더 포함하는 방법.
  15. 전자 장치에 있어서,
    상기 전자 장치와 네트워크의 다른 장치 간의 통신을 위해, 지정된 주기를 결정하도록 설정된 제 1 프로세서; 및
    상기 제 1 프로세서로부터 상기 지정된 주기를 획득하고, 상기 제 1 프로세서가 저전력 상태에 있는 경우에 상기 전자 장치로부터 상기 다른 장치로 지정된 메시지를 상기 지정된 주기에 따라 전송하고, 상기 지정된 메시지에 대한 응답의 수신 여부 또는 상기 응답에 포함된 정보에 기반하여 상기 네트워크의 상태를 판단하고, 상기 네트워크의 상태가 비정상으로 판단된 경우 상기 제 1 프로세서를 상기 저전력 상태로부터 활성화 상태로 전환하도록 설정된 제 2 프로세서를 포함하는 전자장치.
  16. 제 15 항에 있어서,
    상기 제 2 프로세서를 이용하여, 상기 전자 장치를 상기 네트워크에 연결하기 위한 제 1 통신 모듈 또는 상기 전자 장치를 다른 네트워크에 연결하기 위한 제 2 통신 모듈 중 적어도 하나를 더 포함하는 전자 장치.
  17. 제 16 항에 있어서, 상기 제 2 프로세서는,
    상기 네트워크의 상태가 비정상으로 판단되는 경우에, 다른 전자 장치에 알리기 위해, 상기 제 2 통신 모듈 중 적어도 하나를 상기 다른 네트워크에 연결하는 전자 장치.
  18. 제 16 항에 있어서, 상기 전자 장치와 기능적으로 연결된 디스플레이를 더 포함하고,
    상기 제 1 프로세서 또는 상기 제 2 프로세서 중 적어도 하나는, 상기 네트워크의 상태 또는 상기 다른 네트워크와 관련된 정보 중 적어도 하나를 상기 디스플레이를 통해 표현하도록 설정된 전자 장치.
  19. 제 15 항에 있어서, 상기 제 2 프로세서는,
    상기 제 1 프로세서에서 전달하는 주소 정보에 기반하여, 상기 네트워크 상의 복수의 장치들 중 하나의 장치에 상기 다른 장치를 통하여 상기 지정된 메시지를 전송하도록 설정된 전자장치.
  20. 제 15 항에 있어서, 상기 응답은,
    상기 다른 장치 또는 상기 메시지의 라우팅 경로에 있는 외부의 장치 중 적어도 하나로부터 수신되는 전자장치.
  21. 제 15 항에 있어서, 상기 다른 장치는,
    상기 응답의 전송에 실패한 경우에, 상기 지정된 메시지와 연관된 데이터를 저장하도록 설정된 전자 장치.
  22. 제 15 항에 있어서,
    상기 제 1 프로세서 또는 상기 제 2 프로세서 중 적어도 하나는,
    상기 네트워크의 상태가 비정상으로 판단된 경우에, 상기 전자 장치에 기능적으로 연결된 디스플레이, 스피커, 인디케이터, 또는 진동 모터 중 적어도 하나의 장치를 통해, 상기 네트워크의 상태를 표현하도록 설정된 전자 장치.
KR1020140152402A 2014-11-04 2014-11-04 네트워크 상태를 판단하는 장치 및 방법 KR102226522B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140152402A KR102226522B1 (ko) 2014-11-04 2014-11-04 네트워크 상태를 판단하는 장치 및 방법
US14/931,139 US9717007B2 (en) 2014-11-04 2015-11-03 Apparatus and method for determining network status

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140152402A KR102226522B1 (ko) 2014-11-04 2014-11-04 네트워크 상태를 판단하는 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20160052281A KR20160052281A (ko) 2016-05-12
KR102226522B1 true KR102226522B1 (ko) 2021-03-11

Family

ID=55854260

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140152402A KR102226522B1 (ko) 2014-11-04 2014-11-04 네트워크 상태를 판단하는 장치 및 방법

Country Status (2)

Country Link
US (1) US9717007B2 (ko)
KR (1) KR102226522B1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102306359B1 (ko) 2015-01-28 2021-09-30 삼성전자주식회사 복수의 프로세서들을 이용한 데이터 운용 방법 및 장치
US11190965B2 (en) * 2016-10-31 2021-11-30 Veniam, Inc. Systems and methods for predictive connection selection in a network of moving things, for example including autonomous vehicles
JP2018157288A (ja) * 2017-03-16 2018-10-04 本田技研工業株式会社 通信システム
JP7247627B2 (ja) * 2019-02-12 2023-03-29 富士電機株式会社 異常要因特定方法、異常要因特定装置、電力変換装置及び電力変換システム
US11523178B2 (en) * 2020-11-20 2022-12-06 The Nielsen Company (Us), Llc Detecting an operational state of a media device
CN113064568A (zh) * 2021-03-31 2021-07-02 联想(北京)有限公司 输出方法和输出设备
CN113411806B (zh) * 2021-06-21 2022-12-30 上海闻泰信息技术有限公司 移动热点授权检验方法、装置、存储介质和电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014001294A1 (en) * 2012-06-29 2014-01-03 Thomson Licensing Low power consumption mode for wlan access point

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE349833T1 (de) 2004-01-07 2007-01-15 Research In Motion Ltd System und verfahren zur auswahl eines zellularen netzes in einem drahtlosen lokalen netz (wlan)
JP2008199138A (ja) * 2007-02-09 2008-08-28 Hitachi Industrial Equipment Systems Co Ltd 情報処理装置及び情報処理システム
US8780857B2 (en) 2007-10-09 2014-07-15 Qualcomm Incorporated Methods and apparatus for mobility support between network domains
US8402111B2 (en) * 2009-01-28 2013-03-19 Headwater Partners I, Llc Device assisted services install
US8547933B2 (en) * 2009-11-11 2013-10-01 Lg Electronics Inc. Method and apparatus for performing handover in multi-mode terminal
JP5351339B2 (ja) * 2010-06-07 2013-11-27 株式会社日立製作所 データ転送装置及びデータ転送方法
JP5351340B2 (ja) * 2010-06-24 2013-11-27 株式会社日立製作所 データ転送システム及びデータ転送方法
US8479263B1 (en) 2011-03-07 2013-07-02 Symantec Corporation Method and system for detecting captive portals
KR101339794B1 (ko) * 2011-11-23 2013-12-10 국방과학연구소 애드 혹 네트워크의 비컨 주기 제어 시스템 및 이를 이용한 주기 제어 방법
WO2013089294A1 (ko) * 2011-12-15 2013-06-20 엘지전자 주식회사 햅틱 전송 방법 및 그 이동 단말기
KR101337192B1 (ko) * 2012-02-24 2013-12-05 주식회사 팬택 무선랜 단말의 ap 검색 장치 및 방법
WO2013141909A1 (en) * 2012-03-21 2013-09-26 Thomson Licensing Apparatus and method for providing operational status for multiple communication networks
US9628362B2 (en) * 2013-02-05 2017-04-18 Cisco Technology, Inc. Learning machine based detection of abnormal network performance
EP3063968A1 (en) * 2013-11-01 2016-09-07 Sony Corporation Distribution of network status and information in wlan networks for self-optimization/organization

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014001294A1 (en) * 2012-06-29 2014-01-03 Thomson Licensing Low power consumption mode for wlan access point

Also Published As

Publication number Publication date
US20160127924A1 (en) 2016-05-05
US9717007B2 (en) 2017-07-25
KR20160052281A (ko) 2016-05-12

Similar Documents

Publication Publication Date Title
CN108241422B (zh) 电子设备和基于电子设备中的电池温度的热控制方法
US10386927B2 (en) Method for providing notification and electronic device thereof
EP3182245B1 (en) Method and apparatus for providing user interface of electronic device
KR102293660B1 (ko) 전자 장치의 근거리 무선 통신 방법 및 이를 사용하는 전자 장치
KR102226522B1 (ko) 네트워크 상태를 판단하는 장치 및 방법
KR102341543B1 (ko) 주파수 간의 간섭을 회피하는 방법 및 이를 지원하는 전자 장치
US20170185134A1 (en) Electronic device for managing power and method for controlling thereof
KR102469570B1 (ko) 전자 장치 및 그의 동작 방법
US10656279B2 (en) Electronic device and method for measuring position information of electronic device
KR102151135B1 (ko) 전력 관리 방법 및 그 방법을 처리하는 전자 장치
US10140851B2 (en) Method and electronic device for performing connection between electronic devices
US20160044103A1 (en) Method and apparatus for synchronizing application of electronic device
US10756847B2 (en) Electronic device and method for detecting error thereof
US20160119538A1 (en) Electronic device for sensing lens and operating method thereof
KR20160100153A (ko) 장치 검색 방법 및 이를 지원하는 전자 장치
CN108702806B (zh) 电子设备及用于其的操作方法
CN106105279B (zh) 设备之间呼叫转移的方法
US20160139685A1 (en) Method for controlling display and electronic device thereof
KR102256683B1 (ko) 재난 관리 방법 및 그 전자 장치
KR102483836B1 (ko) 전자 장치 및 그의 동작 방법
US20180249409A1 (en) Electronic device and method for controlling communication thereof
KR102255361B1 (ko) 인텐트 처리 방법 및 그 전자 장치
EP3084560B1 (en) Electronic device and operating method thereof
US11017794B2 (en) Electronic device, and method for reducing noise of voice signal by utilizing same
KR20170004735A (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