KR20140102070A - 사용자 디바이스의 패스트 부팅 방법 및 장치 - Google Patents

사용자 디바이스의 패스트 부팅 방법 및 장치 Download PDF

Info

Publication number
KR20140102070A
KR20140102070A KR1020130015500A KR20130015500A KR20140102070A KR 20140102070 A KR20140102070 A KR 20140102070A KR 1020130015500 A KR1020130015500 A KR 1020130015500A KR 20130015500 A KR20130015500 A KR 20130015500A KR 20140102070 A KR20140102070 A KR 20140102070A
Authority
KR
South Korea
Prior art keywords
user device
state
sleep mode
power
boot
Prior art date
Application number
KR1020130015500A
Other languages
English (en)
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 KR1020130015500A priority Critical patent/KR20140102070A/ko
Priority to EP14154837.0A priority patent/EP2767902A3/en
Priority to US14/178,778 priority patent/US20140229727A1/en
Priority to PCT/KR2014/001170 priority patent/WO2014126391A1/en
Publication of KR20140102070A publication Critical patent/KR20140102070A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/263Arrangements for using multiple switchable power supplies, e.g. battery and AC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23316Standby, inactive, sleep or active, operation mode

Abstract

본 발명은 하이브리드 방식으로 사용자 디바이스의 패스트 부팅을 수행할 수 있는 패스트 부팅 방법 및 이를 지원하는 사용자 디바이스에 관한 것으로, 이러한 본 발명은 사용자 디바이스의 패스트 부팅 방법에 있어서, 파워 오프 상태에서 사용자 디바이스의 움직임을 검출하는 과정; 상기 사용자 디바이스의 움직임에 대응하는 에너지를 생성하는 과정; 상기 에너지에 의해 상기 파워 오프 상태에서 슬립모드 상태로 천이하는 과정; 상기 슬립모드 상태로 천이 시 부팅 동작을 일부 진행하여 패스트 부팅을 대기하는 과정; 및 상기 사용자 디바이스의 턴-온 이벤트에 응답하여 패스트 부팅을 수행하는 과정을 포함한다.

Description

사용자 디바이스의 패스트 부팅 방법 및 장치{METHOD AND APPARATUS FOR FAST BOOTING OF USER DEVICE}
본 발명은 사용자 디바이스의 패스트 부팅(fast booting) 방법 및 장치에 관한 것으로, 특히 하이브리드(hybrid) 방식의 부팅 방식으로 사용자 디바이스의 부팅에 소요되는 부팅 시간을 단축시킬 수 있는 사용자 디바이스의 패스트 부팅 방법 및 장치에 관한 것이다.
최근 디지털 기술의 발달과 함께 이동통신 단말기, 디지털 카메라, PDA(Personal Digital Assistant), 전자수첩, 스마트 폰, 태블릿 PC(Personal Computer) 등과 같이 이동하면서 통신 및 개인정보 처리가 가능한 사용자 디바이스가 다양하게 출시되고 있다. 이러한 사용자 디바이스는 사용자가 사용자 디바이스를 사용하고자 파워(power) 버튼을 누르게 되면, 사용자 디바이스의 전체를 초기화 하는 부팅(booting) 과정이 필요하다. 그런데 이러한 부팅 과정은 사용자 디바이스의 기능이 증가하고 사용자 인터페이스(UI, User Interface)가 점점 화려해지면서 점차 느려지고 있다. 즉, 사용자 디바이스에 채용되는 기능 및 사용자 디바이스에 따라 운영체제(OS, Operating System), 미들웨어(middleware), 그리고 어플리케이션(application) 등의 소프트웨어(software) 구성 요소가 업데이트되고 있으며, 이에 따라 사용하는 리소스(resource)(예컨대, CPU(Central Processing Unit), 메모리(memory) 등) 및 주변장치가 증가하면서 부팅 시간이 길어지고 있다.
이러한 부팅 속도의 개선을 위하여 최근에는 스냅샷 부팅(Snapshot booting), 웜 부팅(Warm booting) 등과 같은 부팅 방식이 사용자 디바이스에 적용되어 사용되고 있다.
상기 스냅샷 부팅은 사용자 디바이스의 종료(또는 파워 오프(power off)) 시, 종료 시점에서 사용자 디바이스의 상태 정보(예컨대, CPU 상태, RAM(Random Access Memory) 상태, 사용 데이터 등)를 비휘발성 메모리(예컨대, HDD, 플래시 메모리(flash memory)에 저장(복사)한 후 종료한다. 그리고 사용자 디바이스는 다음 부팅에서 상기 비휘발성 메모리에 저장된 사용자 디바이스의 상태 정보를 휘발성 메모리(예컨대, RAM(Read Only Memory))에 로딩(loading)하여 복구(복원)함으로써, 부팅 시 전체 시스템의 초기화 과정을 생략하는 것에 의해 패스트 부팅을 지원하고 있다. 이때, 비휘발성 메모리에 저장되는 사용자 디바이스의 상태 정보를 스냅샷 이미지(snapshot image)라고 한다.
또한 상기 웜 부팅은 사용자 디바이스가 파워 오프된 상태에서도 휘발성 메모리(예컨대, RAM)로 사용되는 영역에만 약간의 파워를 공급하여 휘발성 메모리에 있는 데이터를 그대로 메모리 상에서 보존할 수 있도록 하는 부팅 방식을 나타낸다. 상기 웜 부팅은 스냅샷 부팅과 같이 비휘발성 메모리에 복사(copy)를 할 필요가 없으므로, 다시 부팅 시에 이전에 사용하던 상태 그대로 하드웨어(hardware)만을 초기화 하는 방식으로 패스트 부팅을 지원하고 있다.
하지만, 스냅샷 부팅의 경우 기존의 일반적인 부팅 방식 보다는 빠른 부팅 속도를 제공하지만, 원 부팅 방식에 비해서는 부팅 속도가 느린 단점이 있다. 또한 원 부팅의 경우 휘발성 메모리의 데이터를 계속 유지하기 위한 전력을 필요로 하기 때문에 배터리가 계속 사용되는 문제가 있다.
본 발명의 목적은 사용자 디바이스에서 보다 효과적인 하이브리드 방식의 패스트 부팅을 지원할 수 있는 사용자 디바이스의 패스트 부팅 방법 및 장치를 제공함에 있다.
본 발명의 다른 목적은 사용자 디바이스가 파워 오프 상태에서 부팅 시까지 소요되는 부팅 시간을 사용자 디바이스의 동작 검출에 의해 단축시킬 수 있는 사용자 디바이스의 패스트 부팅 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 목적은 사용자 디바이스가 파워 오프 상태에서 무전력에 의해 사용자 디바이스의 움직임을 검출하고, 검출된 움직임을 에너지화 하여 사용자 디바이스의 패스트 부팅을 지원할 수 있는 사용자 디바이스의 패스트 부팅 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 목적은 사용자 디바이스가 턴-오프 진행되거나, 또는 파워 오프 상태에서 움직임이 검출될 시 다음 부팅에 필요한 일정 부분을 사전 진행하는 슬립모드를 제공하고, 상기 슬립모드에 의해 다음 부팅 시 초기화 과정을 생략하도록 함으로써 보다 빠른 부팅을 지원할 수 있는 사용자 디바이스의 패스트 부팅 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 목적은 사용자 디바이스에서 패스트 부팅을 지원하기 위한 최적의 환경을 구현하여 사용자의 편의성 및 사용자 디바이스의 사용성을 향상시킬 수 있는 사용자 디바이스의 패스트 부팅 방법 및 장치를 제공함에 있다.
상기와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 방법은, 사용자 디바이스의 패스트 부팅 방법에 있어서, 파워 오프 상태에서 사용자 디바이스의 움직임을 검출하는 과정; 상기 사용자 디바이스의 움직임에 대응하는 에너지를 생성하는 과정; 상기 에너지에 의해 상기 파워 오프 상태에서 슬립모드 상태로 천이하는 과정; 상기 슬립모드 상태로 천이 시 부팅 동작을 일부 진행하여 패스트 부팅을 대기하는 과정; 및 상기 사용자 디바이스의 턴-온 이벤트에 응답하여 패스트 부팅을 수행하는 과정을 포함한다.
상기와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 방법은, 사용자 디바이스의 패스트 부팅 방법에 있어서, 사용자 디바이스의 파워 오프 상태에서 검출되는 상기 사용자 디바이스의 움직임에 응답하여 부팅용 데이터를 휘발성 메모리에 미리 로딩하는 슬립모드 상태로 천이하는 과정; 상기 슬립모드 상태에서 턴-온 이벤트가 검출되면 상기 휘발성 메모리에 미리 로딩된 상기 부팅용 데이터를 이용하여 패스트 부팅을 수행하는 과정; 및 상기 슬립모드 상태에서 타임아웃 이벤트가 검출되면 상기 슬립모드 상태를 상기 파워 오프 상태로 천이하는 과정을 포함한다.
상기와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 방법은, 사용자 디바이스의 패스트 부팅 방법에 있어서, 파워 오프 상태에서 사용자 디바이스의 움직임에 대응하는 에너지를 생성하는 과정; 상기 생성된 에너지를 이용하여 상기 사용자 디바이스의 동작 여부를 결정하는 과정; 및 상기 사용자 디바이스의 동작 결정 시 상기 파워 오프 상태를 해제하는 과정을 포함한다.
상기와 같은 과제를 해결하기 위하여 본 발명의 실시 예에서는, 상기 방법을 프로세서에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 포함한다.
상기와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 장치는, 사용자 디바이스에 있어서, 비휘발성 메모리와 휘발성 메모리를 포함하는 메모리; 사용자 디바이스의 파워 오프 상태에서 상기 사용자 디바이스의 움직임 검출 및 상기 움직임에 따른 에너지를 생성하는 파워 트리거링부; 및 상기 파워 오프 상태에서 상기 파워 트리거링부에 의한 움직임 검출에 응답하여 상기 휘발성 메모리에 부팅용 데이터를 로딩하는 슬립모드 상태로 천이하고, 상기 슬립모드 상태에서 턴-온 이벤트가 검출되면 상기 휘발성 메모리에 미리 로딩된 상기 부팅용 데이터를 이용하여 패스트 부팅을 수행하는 제어부를 포함한다.
상기와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 기록 매체는, 사용자 디바이스의 파워 오프 상태에서 검출되는 상기 사용자 디바이스의 움직임에 응답하여 휘발성 메모리에 부팅용 데이터를 미리 로딩하는 슬립모드 상태로 천이하고, 상기 슬립모드 상태에서 턴-온 이벤트가 검출되면 상기 휘발성 메모리에 미리 로딩된 상기 부팅용 데이터를 이용하여 패스트 부팅을 수행하고, 상기 슬립모드 상태에서 타임아웃 이벤트가 검출되면 상기 슬립모드 상태를 상기 파워 오프 상태로 천이하도록 처리하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 포함한다.
전술한 바와 같은 내용들은 당해 분야 통상의 지식을 가진 자가 후술되는 본 발명의 구체적인 설명으로부터 보다 잘 이해할 수 있도록 하기 위하여 본 발명의 특징들 및 기술적인 장점들을 다소 넓게 약술한 것이다. 이러한 특징들 및 장점들 이외에도 본 발명의 청구범위의 주제를 형성하는 본 발명의 추가적인 특징들 및 장점들이 후술되는 본 발명의 구체적인 설명으로부터 잘 이해될 것이다.
상술한 바와 같이 본 발명에서 제안하는 사용자 디바이스의 패스트 부팅 방법 및 장치에 따르면, 사용자 디바이스가 디바이스 온 상태에서 턴-오프 요청되거나, 또는 사용자 디바이스가 파워 오프 상태에서 턴-온 요청될 시 슬립모드에 의해 다음 부팅을 사전 대기하도록 함으로써, 사용자 디바이스의 턴-온 요청에 대해 빠르게 응답할 수 있는 패스트 부팅을 제공할 수 있는 효과가 있다. 즉, 본 발명에 따르면 사용자가 사용자 디바이스를 턴-오프 요청한 후 다시 턴-온을 시도하거나, 또는 사용자 디바이스가 파워 오프인 상태에서 턴-온을 시도할 시 보다 빠른 시간 안에 사용자 디바이스의 사용이 가능하도록 할 수 있다.
본 발명에 따르면, 슬립모드와 디바이스 온 간의 상태 변경 시에는 웜 부팅 방식의 특징으로 패스트 부팅을 지원하고, 슬립모드와 파워 오프 간의 상태 변경 시에는 스냅샷 부팅 방식의 특징으로 패스트 부팅을 지원하는 것과 같이 하이브리드 방식의 부팅을 제공할 수 있다. 특히, 본 발명에 따르면, 사용자 디바이스가 파워 오프된 상태에서도 무전력에 의해 사용자 디바이스의 움직임을 검출하고, 이에 의해 패스트 부팅을 위한 슬립모드로 자동 천이하여 대기하도록 함으로써, 사용자 디바이스의 빠른 부팅을 원하는 사용자 니즈(needs)를 충족시킬 수 있다. 또한 본 발명에 따르면 파워 오프된 상태에서 무전력에 의해 사용자 디바이스의 움직임 검출이 가능함에 따라 지속적인 배터리 소모를 최소화할 수 있어 오랜 기간 사용자 디바이스를 보관하는 경우에도 배터리의 완전 방전까지 기간을 늘일 수 있는 효과가 있다. 또한 본 발명에 따르면 사용자 디바이스의 슬립모드에서 부팅용 데이터를 유지하면서 미리 정의된 타임아웃이 될 때 완전 종료되도록 함으로써, 패스트 부팅을 고려하면서도 불필요한 전력 소비를 최소화 할 수 있는 효과가 있다.
본 발명에 따르면, 장기 보관한 후에 사용되는 사용자 디바이스에 대해, 사용자가 사용자 디바이스를 들거나 움직일 때 이를 검출하여 미리 부팅 동작(예컨대, 스냅샷 부팅 등)을 소정 진행하여 부팅용 데이터에 의한 다음 부팅을 대기할 수 있다. 그리고 다음 부팅이 요청(예컨대, 사용자 디바이스의 턴-온 요청)될 시 상기 부팅용 데이터를 기반으로 패스트 부팅(예컨대, 웜 부팅)을 진행하여 사용자 디바이스를 빠르게 턴-온할 수 있다. 또한 본 발명에 따르면,
따라서 본 발명에 따르면, 사용자 디바이스에서 패스트 부팅을 지원하기 위한 최적의 환경을 구현함으로써, 사용자의 편의성을 향상시키고, 사용자 디바이스의 사용성, 편의성 및 경쟁력을 향상시키는데 기여할 수 있다. 이러한 본 발명은 모든 형태의 사용자 디바이스 및 그에 대응하는 다양한 디바이스들에 간편하게 구현될 수 있다.
도 1은 본 발명의 실시 예에 따른 사용자 디바이스의 구성을 개략적으로 도시한 도면이다.
도 2는 본 발명의 실시 예에 따른 사용자 디바이스의 패스트 부팅을 설명하기 위한 상태 다이어그램을 도시한 도면이다.
도 3은 본 발명의 실시 예에 따른 사용자 디바이스에서 패스트 부팅 시의 구성들 간 신호 흐름을 도시한 도면이다.
도 4는 본 발명의 실시 예에 따른 사용자 디바이스의 파워 오프 동작을 도시한 흐름도이다.
도 5는 본 발명의 실시 예에 따른 사용자 디바이스의 패스트 부팅 동작을 도시한 흐름도이다.
이하, 첨부된 도면들을 참조하여 본 발명의 바람직한 실시 예들을 상세히 설명한다. 이때, 첨부된 도면들에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음에 유의해야 한다. 또한 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 즉, 하기의 설명에서는 본 발명의 실시 예에 따른 동작을 이해하는데 필요한 부분만이 설명되며, 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다.
제안하는 본 발명은 하이브리드(hybrid) 방식에 의한 사용자 디바이스의 패스트 부팅(fast booting)을 지원할 수 있는 패스트 부팅 방법 및 이를 지원하는 사용자 디바이스에 관한 것이다. 본 발명의 실시 예에 따르면, 파워 오프 상태의 사용자 디바이스가 사용자에 의해 움직임이 발생하면 사용자 디바이스의 움직임에 대응하는 에너지를 생성하고, 생성된 에너지를 이용하여 사용자 디바이스의 움직임을 검출하며, 이를 통해 사용자 디바이스가 상기 파워 오프 상태에서 벗어날 수 있다. 즉, 사용자 디바이스는 파워 오프 상태에서 움직임에 대응하는 에너지를 생성하고, 생성된 에너지를 이용하여 사용자 디바이스의 동작 여부를 결정하며, 사용자 디바이스의 동작 결정 시 파워 오프 상태를 해제할 수 있다.
본 발명의 실시 예에 따르면, 사용자 디바이스가 파워 오프(power off) 상태에서도 무전력(무전원)에 의해 사용자 디바이스의 움직임을 검출하고, 이에 의해 사용자 디바이스를 파워 오프 상태에서 실제 부팅 과정에 필요한 일정 부분을 진행하는 슬립모드(sleep mode) 상태로 자동 천이할 수 있다. 특히, 본 발명의 실시 예에서는 사용자 디바이스의 전원이 꺼져있는 파워 오프 상태에서 사용자 디바이스의 움직임을 검출할 때, 사용자 디바이스의 움직임 자체를 전력(예컨대, 운동에너지(kinetic energy) -> 전기에너지(electric energy))으로 변환할 수 있다.
그리고 본 발명의 실시 예에서는 사용자 디바이스의 안정적인 움직임 검출을 위하여, 미리 설정되는 용량(일정 시간 혹은 일정 크기)에 대응하여 사용자 디바이스의 움직임을 구별할 수 있도록 한다. 이를 위하여, 본 발명의 실시 예에서는 무전력으로 사용자 디바이스의 움직임을 검출하고, 검출된 움직임을 에너지화 하여 전기신호로 생성할 수 있는 장치 및 이를 이용한 패스트 부팅 방법을 제공한다. 또한 본 발명의 실시 예에서는 사용자 디바이스의 효율적인 패스트 부팅을 지원하기 위하여, 파워 오프 상태, 슬립모드 상태, 그리고 디바이스 온(Device On) 상태를 구분하여 제공한다. 그리고 상기 파워 오프 상태에서 사용자 디바이스의 움직임이 검출될 시 슬립모드 상태로 천이하여 패스트 부팅을 수행하고, 디바이스 온 상태에서 턴-오프 요청이 감지될 시 사용자 디바이스를 바로 턴-오프하지 않고 슬립모드 상태로 천이하여 일정시간 대기하도록 함으로써 패스트 부팅을 수행할 수 있도록 한다.
본 발명의 실시 예에서는 상기 슬립모드 상태와 디바이스 온 상태 간에 상태를 변경하는 경우에는 상기 슬립모드 상태에서 제1 부팅 방식(예컨대, 웜 부팅(Warm booting) 방식의 특징에 대응하는 방식)에 의한 패스트 부팅을 지원한다. 그리고 상기 슬립모드 상태와 파워 오프 상태 간에 상태를 변경하는 경우에는 상기 슬립모드 상태에서 제2 부팅 방식(예컨대, 스냅샷 부팅(Snapshot booting)(또는 콜드 부팅(Cold booting)) 방식의 특징에 대응하는 방식)에 의해 부팅 진행을 대기하고, 상기 슬립모드 상태에서 실제 부팅 진행 시 제1 부팅 방식(예컨대, 웜 부팅 방식의 특징에 대응하는 방식)에 의한 패스트 부팅을 지원한다. 또한 본 발명의 실시 예에 따르면, 상기 슬립모드 상태에서는 미리 정의된 타임아웃에 따라 상기 파워 오프 상태로의 천이를 수행할 수 있다.
한편, 본 발명의 실시 예에서는 스냅샷 부팅(또는 콜드 부팅) 및 웜 부팅이라는 용어를 사용하지만, 이는 설명의 편의를 위해 채택한 것으로서, 본 발명의 패스트 부팅이 반드시 스냅샷 부팅과 웜 부팅에 국한되어 동작되는 것은 아니며, 다양한 부팅 방식들의 특징적이 요소들을 채택하여 복합적으로 동작될 수 있다.
이하에서, 본 발명의 실시 예에 따른 사용자 디바이스의 구성과 그의 운용 제어 방법에 대하여 하기 도면들을 참조하여 살펴보기로 한다. 본 발명의 실시 예에 따른 사용자 디바이스의 구성과 그의 운용 제어 방법이 하기에서 기술하는 내용에 제한되거나 한정되는 것은 아니므로 하기의 실시 예들에 의거하여 다양한 실시 예들에 적용할 수 있음에 유의하여야 한다.
도 1은 본 발명의 실시 예에 따른 사용자 디바이스의 구성을 개략적으로 도시한 도면이다.
상기 도 1을 참조하면, 본 발명의 사용자 디바이스는 사용자 입력부(110), 주변장치(120), 메모리(130), 타이머(140), 파워 트리거링부(150), 제어부(180), 그리고 전원 공급부(190)를 포함하여 구성된다. 본 발명의 사용자 디바이스는 도 1에 도시된 구성 요소들에 한정되는 것은 아니어서, 그보다 많은 구성 요소들을 가지거나, 또는 그보다 적은 구성 요소들을 가지는 것으로 구현될 수 있다.
상기 사용자 입력부(110)는 사용자 입력에 대응하여 사용자 디바이스의 동작 제어를 위한 입력 데이터를 발생시킨다. 사용자 입력부(110)는 키패드(key pad), 돔 스위치(dome switch), 터치패드(정압/정전), 조그 휠(jog wheel), 조그 스위치(jog switch) 등으로 구성될 수 있다. 사용자 입력부(110)는 사용자 디바이스의 외부에 버튼 형태로 구현될 수 있으며, 일부 버튼들은 터치 패널(touch panel)로 구현될 수도 있다. 특히, 본 발명에서 사용자 입력부(110)는 사용자 디바이스의 파워 온/오프(Power On/Off) 제어를 위한 파워 버튼(power button)을 포함하고, 파워 버튼에 대한 사용자 입력에 따라 파워 온 또는 파워 오프 신호를 발생시킬 수 있다.
상기 주변장치(120)는 표시부(또는 터치스크린), 인터페이스부, 무선 통신부, 오디오 처리부, 위치 산출 모듈, 방송 수신 모듈, 그리고 상태 감지 센서 등과 같이 사용자 디바이스에서 구현될 수 있는 다양한 장치를 포함한다. 상기 인터페이스부는 유/무선 헤드셋 포트(port), 외부 충전기 포트, 유/무선 데이터 포트, 메모리 카드(memory card) 포트, 오디오 입/출력(Input/Output) 포트, 비디오 입/출력 포트, 이어폰 포트 등이 포함될 수 있다. 상기 무선 통신부는 이동통신 모듈, 무선 랜(WLAN, Wireless Local Area Network) 모듈, 근거리 통신 모듈(예컨대, 블루투스, 블루투스 저에너지(BLE, Bluetooth Low Energy), RFID(Radio Frequency Identification), 적외선 통신(IrDA, Infrared Data Association), UWB(Ultra Wideband), NFC(Near Field Communication) 등을 위한 적어도 하나의 모듈), 위치 산출 모듈, 그리고 방송 수신 모듈 등이 포함될 수 있다. 또한 상기 오디오 처리부는 스피커(speaker) 및 마이크(microphone) 등이 포함될 수 있고, 상기 상태 감지 센서는 근접 센서, 조도 센서, 가속도 센서, 지자기 센서 등이 포함될 수 있다.
상기 메모리(130)는 제어부(180)의 처리 및 제어를 위한 프로그램(program)이 저장될 수도 있고, 입/출력되는 데이터들의 임시 저장을 위한 기능을 수행할 수도 있다. 상기 메모리(130)는 사용자 디바이스의 운영체제, 사용자 디바이스의 다양한 기능 제어와 관련된 프로그램과 데이터, 사용자 디바이스에서 실행되고 처리되는 다양한 어플리케이션과 데이터 및 외부로부터 수신되는 데이터 등을 지속적으로 또는 일시적으로 저장할 수 있다. 상기 메모리(130)는 하나 이상의 비휘발성 메모리(131)와 하나 이상의 휘발성 메모리(133)로 구성될 수 있다. 예를 들어, 상기 메모리(130)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 마이크로 타입(micro type), 및 카드 타입(예컨대, SD 카드(Secure Digital Card) 및 XD 카드(eXtream Digital Card) 등의 메모리와, 램(RAM, Random Access Memory), SRAM(Static RAM), 롬(ROM, Read-Only Memory), PROM(Programmable ROM), EEPROM(Electrically Erasable PROM), 자기 메모리(MRAM, Magnetic RAM), 자기 디스크(magnetic disk), 및 광디스크(optical disk) 타입의 메모리 등과 같이 다양한 타입의 저장 매체(storage medium)로 구현될 수 있다. 또한 사용자 디바이스는 인터넷 상에서 상기 메모리(130)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작할 수도 있다.
특히, 상기 메모리(130)는 사용자 디바이스가 슬립모드 상태로 천이할 때 부팅을 위해 참조되는 부팅용 데이터를 저장한다. 상기 부팅용 데이터는 부팅 시 참조될 수 있는 다양한 데이터를 총칭하는 것으로, 본 발명에서는 스냅샷 이미지 또는 웜 이미지로 나타내지만, 특정 형식에 한정되는 것은 아니다. 그리고 상기 메모리(130)는 본 발명에서 앞서 설명한 바와 같이 패스트 부팅을 위한 상기 부팅용 데이터가 저장되는 비휘발성 메모리(131)(예컨대, 플래시 메모리, HDD 등)와, 패스트 부팅을 위한 상기 부팅용 데이터가 로딩(loading)되는 휘발성 메모리(133)(예컨대, RAM 등)로 구분될 수 있다. 특히, 휘발성 메모리(133)는 비휘발성 메모리(131)와 달리 사용자 디바이스가 파워 오프되면 휘발성 메모리(133)에 대한 전원이 차단되며, 이에 따라 휘발성 메모리(133)는 초기화되어 기 로딩된 데이터가 유지되지 않는 것이 일반적이다. 하지만, 본 발명에서 휘발성 메모리(133)는 사용자 디바이스에 대한 파워 오프 진입이 요청될 때 슬립모드로 천이하여 미리 설정된 일정기간 동안 기 로딩된 데이터를 유지 가능한 정도의 전원을 인가 받음으로써 상기 기 로딩된 데이터를 유지하도록 한다.
상기 타이머(140)는 사용자 디바이스가 파워 오프 상태(Power off state) 또는 디바이스 온 상태(Device on state)에서 슬립모드(sleep mode)로 천이될 시 동작하여 미리 설정된 시간을 카운트(count)하여 그에 따른 카운트 데이터를 발생시킨다.
상기 파워 트리거링부(150)는 사용자 디바이스가 파워 오프 상태에 있을 때 무전력(무전원)으로 동작하여 사용자 디바이스의 움직임을 검출하고, 검출된 움직임을 에너지화 하여 전기신호를 발생시킨다. 특히, 상기 파워 트리거링부(150)는 사용자 디바이스의 움직임에 따른 에너지(운동에너지)가 미리 정해진 용량에 도달하면(즉, 미리 정해진 용량 이상) 사용자 디바이스의 슬립모드의 상태 천이를 지원한다. 이러한 파워 트리거링부(150)는 에너지 생성부(160)와 동작 검출부(170)를 포함하여 구성될 수 있다.
상기 에너지 생성부(160)는 사용자 디바이스의 움직임으로부터 에너지를 생성하고, 생성된 에너지를 동작 검출부(170)에게 전달한다. 특히, 에너지 생성부(160)는 사용자 디바이스의 움직임에 따른 운동에너지를 이용하여 전기에너지를 생성하고, 생성된 전기에너지를 상기 동작 검출부(170)에게 전달한다. 즉, 상기 에너지 생성부(160)는 사용자 디바이스의 움직임을 에너지화 하여 전기신호를 생성할 수 있다. 상기 에너지 생성부(160)는 전기적 도전성 재료(electro-conductive material)(미도시) 및 가동부(moving element)(미도시)를 포함하여 구성될 수 있다. 예를 들어, 상기 전기적 도전성 재료는 유도 코일(coil) 형태로 제공될 수 있으며, 전기자, 인덕터, 와이어 코일, 또는 임의의 다른 루프형의 도전성 재료에 의해 구현될 수도 있다. 상기 가동부는 왕복 방식으로 이동 가능하며, 자계에 영향을 미칠 수 있는 질량체(영구 자석, 전자석, 인덕터 및 투자율을 갖는 재료(예컨대, 금속, 금속 합금, 세라믹스 및 이들의 혼합물 등))로 구현될 수 있다.
이러한 구성을 가지는 에너지 생성부(160)는 상기 가동부가 사용자 디바이스의 움직임에 따라 왕복 운동에 의한 운동에너지를 발생하고, 상기 운동에너지가 상기 전기적 도전성 재료에 대해 자계를 이동시킴으로써, 상기 가동부의 운동에너지를 전자기 유도의 작용에 의해 전기에너지로 변환할 수 있다. 이러한 에너지 생성부(160)는 자계에 영향을 미치는 하나 이상의 가동부(1축 또는 2축 이상의 가동부)를 포함할 수 있으며, 2축 이상으로 구현될 수 방향성(예컨대, X축, Y축, Z축)까지도 고려될 수 있다.
상기 동작 검출부(170)는 상기 에너지 생성부(160)로부터 전달되는 전기에너지에 의해 구동되고, 상기 전기에너지로부터 사용자 디바이스의 동작을 검출한다. 상기 동작 검출부(170)는 상기 에너지 생성부(160)로부터 전달되는 전기에너지를 축적하고, 상기 전기에너지가 미리 정해진 용량(예컨대, 일정크기, 일정시간 등) 이상 검출되면 사용자 디바이스의 동작을 결정하고, 제어부(180)를 웨이크-업(Wake-Up) 상태로 천이하기 위한 웨이크-업 신호를 상기 제어부(180)에게 전달한다.
상기 제어부(180)는 사용자 디바이스의 전반적인 동작을 제어한다. 예를 들어, 피사체의 촬영 등에 관련된 제어를 수행하거나, 음성 통화, 데이터 통신, 화상 통화 등에 관련된 제어를 수행할 수 있다. 특히, 제어부(180)는 사용자 디바이스의 패스트 부팅 기능과 관련된 동작을 제어하며, 이를 위한 제어 프로세서(미도시)를 구비할 수도 있다. 본 발명에서 제어 프로세서(미도시)는 제어부(180) 내에 구현될 수도 있고, 제어부(180)와 별도로 구현될 수도 있다.
상기 제어부(180)는 본 발명의 실시 예에서 사용자 디바이스가 천이되는 상태에 따라 적어도 두 가지의 상이한 부팅 프로세스를 수행할 수 있다. 예를 들어, 제어부(180)는 디바이스 온 상태에서 슬립모드 상태로 천이 시 제1 부팅 방식(예컨대, 웜 부팅 방식의 특징에 대응하는 방식)에 의해 휘발성 메모리(133)의 사용 데이터(부팅용 데이터)를 유지하면서 타임아웃 기간 동안 대기한다. 그리고 제어부(180)는 상기 슬립모드 상태에서 턴-온 이벤트에 따라 다시 디바이스 온 상태로 천이 시 제1 부팅 방식(예컨대, 웜 부팅 방식의 특징에 대응하는 방식)에 의해 부팅 프로세스를 진행하고, 상기 슬립모드 상태에서 타임아웃 이벤트에 따라 상기 슬립모드 상태에서 파워 오프 상태로 천이한다.
또한 제어부(180)는 파워 오프 상태에서 사용자 디바이스의 움직임 검출 이벤트에 따라 슬립모드 상태로 천이 시 패스트 부팅을 위한 일부 부팅 프로세스를 진행(즉, 제2 부팅 방식에 의해 비휘발성 메모리(131)의 부팅용 데이터를 휘발성 메모리(133)에 로딩)하여 타임아웃 기간 동안 대기한다. 그리고 제어부(180)는 상기 슬립모드 상태에서 턴-온 이벤트에 따라 디바이스 온 상태로 천이 시 제1 부팅 방식(예컨대, 웜 부팅 방식)에 의해 부팅 프로세스를 진행하고, 상기 슬립모드 상태에서 타임아웃 이벤트에 따라 상기 슬립모드 상태에서 파워 오프 상태로 천이한다.
제어부(180)는 사용자 디바이스 전원의 턴-오프 이벤트가 발생하면 사용자 디바이스를 바로 턴-오프 하지 않고, 사용자 디바이스의 상태를 디바이스 온 상태에서 슬립모드 상태로 천이한다. 그리고 제어부(180)는 슬립모드 상태로 천이 시 주변장치(120)만을 턴-오프하고 메모리(130)의 비휘발성 메모리(131)에 저장된 부팅용 데이터를 휘발성 메모리(133)에 로딩한다. 제어부(180)는 상기 슬립모드 상태에서 사용자 디바이스 전원의 턴-온 이벤트가 발생하면 주변장치(120)만을 초기화 하고 상기 휘발성 메모리(133)의 부팅용 데이터를 이용하여 패스트 부팅을 제어한다. 이때, 제어부(180)는 상기 슬립모드 상태로 천이 시 상기 타이머(140)를 통해 타임아웃을 체크하고, 타임아웃 이벤트 발생 시 사용자 디바이스의 상태를 슬립모드 상태에서 파워 오프 상태로 천이하여 사용자 디바이스에 대한 실제 턴-오프를 제어한다.
또한 제어부(180)는 사용자 디바이스가 턴-오프된 파워 오프 상태에서 상기 파워 트리거링부(150)에 의해 사용자 디바이스의 움직임 검출 이벤트가 발생하면 사용자 디바이스의 상태를 파워 오프 상태에서 슬립모드 상태로 천이한다. 그리고 제어부(180)는 슬립모드 상태로 천이 시 주변장치(120)에 대한 턴-온 없이 비휘발성 메모리(131)에 저장된 부팅용 데이터만을 휘발성 메모리(133)에 로딩한다. 제어부(180)는 상기 슬립모드 상태에서 사용자 디바이스 전원의 턴-온 이벤트가 발생하면 비휘발성 메모리(131)로부터 휘발성 메모리(133)에 부팅용 데이터를 로딩하는 과정은 생략하고 상기 휘발성 메모리(133)에 미리 로딩되어 있는 부팅용 데이터를 이용(참조)하여 패스트 부팅을 제어한다. 이때, 제어부(180)는 상기 슬립모드 상태로 천이 시 상기 타이머(140)를 통해 타임아웃을 체크하고, 타임아웃 이벤트 발생 시 사용자 디바이스의 상태를 슬립모드 상태에서 파워 오프 상태로 천이하여 사용자 디바이스를 다시 턴-오프 제어한다.
이러한 제어부(180)는 상기 파워 트리거링부(150)와 상기 타이머(140)로부터의 신호를 수신하기 위한 GPIO(General Purpose Input/Output) 핀(pin)(미도시)을 포함하여 구현될 수 있다. 예를 들어, 제어부(180)는 상기 GPIO 핀을 통해 파워 트리거링부(150)로부터 신호가 수신될 시 웨이크-업 할 수 있고, 상기 GPIO 핀을 통해 타이머(140)로부터 신호가 수신될 시 슬립모드 상태에서 파워 오프 상태로 천이를 결정하는 타임아웃을 인지할 수 있다. 이러한 GPIO 핀은 상기 파워 트리거링부(150) 및 상기 타이머(140)에 대응하여 각각 구성될 수 있다.
그리고 상기 제어부(180)는 상기의 기능 외에 사용자 디바이스의 통상적인 기능과 관련된 각종 동작을 제어할 수 있다. 예를 들어, 제어부(180)는 특정 어플리케이션 실행 시 그의 운용 및 화면 표시를 제어할 수 있다. 또한 제어부(180)는 터치 기반의 입력 인터페이스에서 지원하는 다양한 터치 이벤트 입력에 대응하는 입력신호를 수신하고 그에 따른 기능 운용을 제어할 수 있다. 또한 제어부(180)는 유선통신 기반 또는 무선통신 기반으로 각종 데이터의 송수신을 제어할 수도 있다.
전원 공급부(190)는 제어부(180)의 제어에 의해 외부의 전원, 내부의 전원을 인가받아 각 구성 요소들의 동작에 필요한 전원을 공급한다.
이상에서 살펴본 바와 같은, 본 발명의 실시 예에 따른 사용자 디바이스는 본 발명의 기능을 지원하는 모든 정보통신기기, 멀티미디어기기 및 그에 대한 응용기기와 같이 AP(Application Processor), GPU(Graphic Processing Unit), CPU(Central Processing Unit)를 사용하는 모든 디바이스를 포함할 수 있다. 예를 들어, 상기 사용자 디바이스는 다양한 통신 시스템에 대응되는 각 통신 프로토콜들(communication protocols)에 의거하여 동작하는 이동통신 단말기를 비롯하여, 디지털 카메라(digital camera), 태블릿(tablet) PC(Personal Computer), 스마트 폰(Smart Phone), PMP(Portable Multimedia Player), 미디어 플레이어(Media Player)(예컨대, MP3 플레이어), 휴대게임단말, 및 PDA(Personal Digital Assistant) 등의 디바이스를 포함할 수 있다.
그리고 본 발명에서 설명되는 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합된 것을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 하드웨어적인 구현에 의하면, 본 발명에서 설명되는 실시 예들은 ASICs(Application Specific Integrated Circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다. 일부의 경우에 본 명세서에서 설명되는 실시 예들이 제어부(180) 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 상기 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다.
여기서, 상기 기록 매체는 사용자 디바이스의 파워 오프 상태에서 검출되는 상기 사용자 디바이스의 움직임에 응답하여 휘발성 메모리에 부팅용 데이터를 미리 로딩하는 슬립모드 상태로 천이하고, 상기 슬립모드 상태에서 턴-온 이벤트가 검출되면 상기 휘발성 메모리에 미리 로딩된 상기 부팅용 데이터를 이용하여 패스트 부팅을 수행하고, 상기 슬립모드 상태에서 상기 타임아웃 이벤트가 검출되면 상기 슬립모드 상태를 상기 파워 오프 상태로 천이하도록 처리하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 포함할 수 있다.
도 2는 본 발명의 실시 예에 따른 사용자 디바이스의 패스트 부팅을 설명하기 위한 상태 다이어그램을 도시한 도면이다.
상기 도 2를 참조하면, 본 발명의 사용자 디바이스는 앞서 살펴본 바와 같이 파워 오프(210), 슬립모드(220), 그리고 디바이스 온(230)과 같은 상태별 동작을 수행할 수 있다. 그리고 본 발명에서는 사용자 디바이스의 슬립모드(220)에서 웜 부팅 및 스냅샷 부팅 등과 같은 패스트 부팅을 위한 다양한 부팅 방식을 지원하는 것을 특징으로 한다.
상기 디바이스 온(230) 상태는 사용자 디바이스가 턴-온되어 동작하고 있는 상태를 나타내며, 사용자는 디바이스 온(230) 상태에서 사용자 디바이스의 모든 기능을 사용할 수 있다.
상기 슬립모드(220) 상태는 사용자 디바이스의 패스트 부팅을 지원하기 위해 휘발성 메모리(133)의 데이터는 그대로 유지한 상태에서 사용자 디바이스 내의 주변장치(120)에 공급되는 전원이 차단된 상태를 나타낸다. 본 발명에서 상기 슬립모드(220) 상태는 사용자가 사용자 디바이스의 디바이스 온(230) 상태에서 턴-오프를 요청하거나, 또는 사용자 디바이스의 파워 오프(210) 상태에서 움직임이 검출될 시 천이될 수 있다.
예를 들어, 사용자가 디바이스 온(230) 상태에서 사용자 디바이스를 턴-오프하기 위해 파워 온/오프 버튼을 입력한 경우, 사용자는 사용자 디바이스가 파워 오프된 것으로 생각할 수 있지만, 실제 사용자 디바이스의 내부에서는 다음의 패스트 부팅(예컨대, 웜 부팅)을 위해서 휘발성 메모리(133)의 부팅용 데이터를 그대로 남겨 두고 주변장치(120)만을 오프시키는 슬립모드로 진입할 수 있다. 이러한 과정을 타겟 서스펜드(Target Suspend)라고 하며, 사용자 디바이스 내부의 대부분의 장치(예컨대, 주변장치(120))의 전원을 차단하여 배터리 소모량을 최소화할 수 있다. 그리고 상기 슬립모드(220) 상태에서 사용자가 다시 사용자 디바이스를 턴-온(파워 온/오프 버튼 입력)하게 되면, 사용자 디바이스가 슬립모드(220)로 천이되기 전의 상태가 휘발성 메모리(133)에 그대로 남아 있기 때문에, 주변장치(120)와 같은 하드웨어(hardware)만을 초기화 하여 다시 사용자 디바이스를 빠르게 리쥼(resume)시킬 수 있어 빠른 시간 안에 사용자 디바이스를 사용 가능한 상태로 복원할 수 있다. 이러한 과정을 타겟 리쥼(Target Resume)이라고 하며, 소프트웨어(software)적으로 초기화 하는 많은 부분을 회피할 수 있다.
상기 파워 오프(210) 상태는 사용자 디바이스가 완전히 턴-오프되어 동작되지 않는 상태를 나타내며, 주변장치(120) 뿐만 아니라, 휘발성 메모리(133)에 공급하는 전원까지 차단되는 실제 파워 오프 상태를 나타낸다. 본 발명에서 상기 파워 오프(210) 상태는 사용자의 사용자 디바이스 턴-오프 요청에 응답하여 천이된 상기 슬립모드(220) 상태에서 미리 설정된 일정 시간이 경과(즉, 타임아웃(timeout))하게 되면 천이될 수 있다. 그리고 본 발명에서는 상기 파워 오프(210) 상태에서 사용자에 의해 사용자 디바이스의 움직임이 발생하면, 사용자 디바이스는 전원이 차단된 상태 즉, 파워 오프(210) 상태에서도 앞서 살펴본 바와 같은 파워 트리거링부(150)에 의해 파워 트리거링 이벤트(즉, 사용자 디바이스가 움직이는 동작)를 검출할 수 있다. 그리고 사용자 디바이스는 파워 트리거링 이벤트가 검출되고, 상기 파워 트리거링 이벤트가 미리 설정된 일정 조건을 만족하면 상기 슬립모드(220) 상태로 천이하여, 부팅의 중간 상태가 되도록 휘발성 메모리(133)에 부팅용 데이터를 로딩하여 패스트 부팅(예컨대, 스냅샷 부팅)이 가능한 상태로 대기할 수 있다. 여기서, 본 발명에서는 파워 턴-오프 또는 파워 턴-온 요청에 응답하여 천이되는 슬립모드(220) 상태에서 패스트 부팅을 위한 방식으로 웜 부팅 및 스냅샷 부팅을 명시하였으나, 본 발명이 이에 한정되는 것은 아니며, 다양한 패스트 부팅 방식이 이용될 수 있다.
그러면, 이하에서는 상기한 각 상태를 참조하여 본 발명의 디바이스 온(230) 상태에서 슬립모드(220) 상태로 천이하는 동작과, 파워 오프(210) 상태에서 슬립모드(220) 상태로 천이하는 동작에 대하여 살펴보기로 한다.
먼저, 상기 디바이스 온(230) 상태에서 상기 슬립모드(220) 상태로 천이하는 동작을 살펴보면 다음과 같다.
사용자 디바이스는 디바이스 온(230) 상태에서 사용자의 파워 온/오프 버튼 입력에 응답하여, 디바이스 턴-오프 동작을 수행할 수 있다. 즉, 사용자가 사용자 디바이스를 턴-오프하기 위하여 파워 온/오프 버튼을 입력하면, 사용자 디바이스는 주변장치(120) 등에 전원 공급을 차단하고, 휘발성 메모리(133)에 전원을 공급하여 데이터(부팅용 데이터)를 유지하는 슬립모드(220) 상태로 천이한다. 사용자 디바이스는 상기 슬립모드(220) 상태로 천이 시 타이머(140)를 통해 타임아웃을 체크할 수 있다. 그리고 사용자 디바이스는 상기 슬립모드(220) 상태에서 타임아웃이 확인되면 턴-오프하여 파워 오프(210) 상태로 천이한다. 반면, 사용자 디바이스는 상기 슬립모드(220) 상태에서 타임아웃이 확인되기 전 파워 온/오프 버튼이 입력되면, 상기 파워 온/오프 버튼 입력에 응답하여 턴-온하여 디바이스 온(230) 상태로 천이한다. 이때, 사용자 디바이스는 턴-온 수행 시 휘발성 메모리(133)에 부팅용 데이터가 존재함에 따라 주변장치(120)만을 초기화하고 상기 부팅용 데이터를 이용한 패스트 부팅(예컨대, 웜 부팅 방식)을 지원한다.
다음으로, 상기 파워 오프(210) 상태에서 상기 슬립모드(220) 상태로 천이하는 동작을 살펴보면 다음과 같다.
사용자 디바이스는 파워 오프(210) 상태에서 상기 파워 트리거링부(150)를 통해 사용자 디바이스의 움직임이 검출되면, 사용자 디바이스의 패스트 부팅(예컨대, 스냅샷 부팅)을 지원하기 위하여 슬립모드(220) 상태로 천이한다. 이때, 사용자 디바이스는 슬립모드(220) 상태로 천이 시 패스트 부팅을 위해 부팅용 데이터를 휘발성 메모리(133)에 로딩한 후 디바이스 턴-온 요청을 대기할 수 있다. 그리고 사용자 디바이스는 상기 슬립모드(220) 상태로 천이 시 타이머(140)를 통해 타임아웃을 체크할 수 있다. 사용자 디바이스는 상기 슬립모드(220) 상태에서 타임아웃이 확인되면 턴-오프하여 다시 파워 오프(210) 상태로 천이한다. 반면, 사용자 디바이스는 상기 슬립모드(220) 상태에서 타임아웃이 확인되기 전 파워 온/오프 버튼이 입력되면, 상기 파워 온/오프 버튼 입력에 응답하여 디바이스 턴-온 동작을 수행할 수 있다. 즉, 사용자가 사용자 디바이스를 턴-온하기 위하여 파워 온/오프 버튼을 입력하면, 사용자 디바이스는 주변장치(120)만을 초기화하고 상기 슬립모드(220) 상태에서 휘발성 메모리(133)에 사전 로딩된 부팅용 데이터를 이용한 패스트 부팅(예컨대, 스냅샷 부팅 방식)을 지원한다.
이와 같이, 본 발명의 실시 예에서는 사용자 디바이스가 완전히 턴-오프된 파워 오프(210) 상태에서도 별도의 전원 공급을 필요로 하지 않는 파워 트리거링부(150)를 통해 사용자 디바이스의 움직임을 검출할 수 있다. 그리고 상기 파워 트리거링부(150)를 통해 사용자 디바이스의 움직임이 미리 설정된 일정시간 또는 일정크기 이상 검출되면, 실제 사용자에게는 보이지 않게 사전 부팅 동작을 진행할 수 있다. 이때, 본 발명의 실시 예에서는 상기 파워 트리거링부(150)를 통해서 사용자 디바이스의 움직임에 따른 에너지(예컨대, 운동에너지)를 생성하고, 생성하는 에너지가 미리 정해진 용량 이상이 되면 슬립모드(220) 상태로 천이하여 패스트 부팅을 위한 부팅용 데이터 로딩을 수행할 수 있다. 그런 다음, 사용자에 의해 파워 온/오프 버튼이 입력되면 상기 부팅용 데이터를 이용하여 디바이스 온(230) 상태로 빠르게 진입할 수 있다.
도 3은 본 발명의 실시 예에 따른 사용자 디바이스에서 패스트 부팅 시의 구성들 간 신호 흐름을 도시한 도면이다.
상기 도 3을 참조하면, 상기 에너지 생성부(160)는 사용자 디바이스의 움직임(301단계)으로부터 에너지를 생성하고(303단계), 생성된 에너지를 동작 검출부(170)에게 전달할 수 있다(305단계). 예를 들어, 에너지 생성부(160)는 사용자 디바이스의 움직임에 따른 운동에너지를 이용하여 전기에너지를 생성할 수 있다. 그리고 생성된 전기에너지를 동작 검출부(170)에게 전달할 수 있다.
상기 동작 검출부(170)는 상기 에너지 생성부(160)로부터 공급되는 전기에너지에 의해 구동되고, 상기 전기에너지로부터 사용자 디바이스의 동작을 검출할 수 있다(307단계). 이때, 상기 동작 검출부(170)는 상기 에너지 생성부(160)로부터 공급되는 전기에너지를 축적하고, 상기 전기에너지가 미리 정해진 용량(예컨대, 일정크기, 일정시간) 이상 검출되지는 체크할 수 있다. 동작 검출부(170)는 상기 전기에너지가 미리 정해진 용량 이상 검출되면 사용자 디바이스가 동작 중인 것으로 결정할 수 있다. 그리고 동작 검출부(170)는 사용자 디바이스의 동작 결정 시 제어부(180)를 웨이크-업 상태로 천이하기 위한 웨이크-업 신호를 상기 제어부(180)에게 전달한다(309단계).
상기 제어부(180)는 상기 동작 검출부(170)로부터 전달되는 웨이크-업 신호에 의해 구동(즉, 웨이크-업)되고, 사용자 디바이스를 파워 오프(210) 상태에서 슬립모드(220) 상태로 천이한다(311단계). 상기 제어부(180)는 슬립모드(220) 상태로 천이 시, 주변장치(120)들에 대한 전원 공급 없이, 메모리(130)(특히, 휘발성 메모리(133))에 데이터만을 유지할 수 있는 최소한의 전원 공급을 제어한다. 그리고 상기 제어부(180)는 상기 휘발성 메모리(133)에 부팅용 데이터를 로딩(예컨대, 스냅샷 부팅 방식의 특징에 의한 로딩)하여 패스트 부팅(예컨대, 웜 부팅)을 대기할 수 있다. 아울러, 상기 제어부(180)는 상기 슬립모드(220) 상태로 천이 시 타이머(140)에 의한 타임아웃을 관리할 수 있다. 또한, 상기 제어부(180)는 상기 슬립모드(220) 상태로 천이할 시 상기 동작 검출부(170)를 제어하여 사용자 디바이스의 동작 검출 동작을 중지시키거나, 또는 동작 검출부(170)가 전송하는 웨이크-업 신호에 대해 무시(ignore)할 수 있다.
상기 제어부(180)는 패스트 부팅을 대기하는 상태에서 상기 타이머(140)에 의한 타임아웃 또는 사용자에 의한 파워 온/오프 버튼 입력에 따라 파워 오프(210) 상태로의 천이 또는 패스트 부팅을 제어할 수 있다(313단계). 예를 들어, 상기 제어부(180)는 상기 슬립모드(220) 상태에서 상기 타이머(140)에 의해 타임아웃을 검출하면, 사용자 디바이스를 파워 오프(210) 상태로 천이한다. 상기 제어부(180)는 파워 오프(210) 상태로 진입 시 다음 웨이크-업 신호 수신 시까지 상기한 제어 동작을 종료된다. 또한 상기 제어부(180)는 상기 슬립모드(220) 상태에서 상기 파워 온/오프 버튼의 입력을 검출하면, 상기 휘발성 메모리(133)에 로딩된 부팅용 데이터를 이용하여 패스트 부팅(예컨대, 웜 부팅 방식의 특징에 의한 부팅 가능)을 수행하고 사용자 디바이스를 디바이스 온(230) 상태로 천이한다.
도 4는 본 발명의 실시 예에 따른 사용자 디바이스의 파워 오프 동작을 도시한 흐름도이다.
상기 도 4에 도시된 바와 같이, 상기 도 4는 사용자 디바이스가 디바이스 온(230) 상태에서 사용자가 파워 온/오프 버튼을 명시적으로 입력하여 사용자 디바이스의 턴-오프가 요청되는 경우의 동작 예시를 나타낸 것이다.
상기 도 4를 참조하면, 제어부(180)는 사용자 디바이스의 디바이스 온(230) 상태에서 동작 중에 파워 온/오프 버튼에 의한 턴-오프 입력이 수신되면(401단계), 사용자 디바이스의 상태를 상기 디바이스 온(230) 상태에서 슬립모드(220) 상태로 천이한다. 예를 들어, 사용자는 사용자 디바이스를 사용하는 중에 파워 온/오프 버튼을 이용하여 턴-오프를 입력할 수 있다. 그러면, 제어부(180)는 상기 턴-오프 입력에 응답하여 사용자 디바이스를 파워 오프(210) 상태로 바로 천이하지 않고, 슬립모드(220) 상태로 천이한 후 일정시간 대기할 수 있다. 즉, 제어부(180)는 다음의 패스트 부팅(예컨대, 웜 부팅 방식의 특징에 의한 부팅)을 위해 사용 중이던 휘발성 메모리(133)는 그대로 유지하고, 주변장치(120)에 대한 전원 공급을 차단할 수 있다.
제어부(180)는 슬립모드(220) 상태에서 타이머(140)를 통해 미리 설정된 일정시간이 경과(즉, 타임아웃)되는지 판별한다(405단계).
제어부(180)는 타임아웃이 검출되면(405단계의 YES) 사용자 디바이스의 턴-오프를 제어한다(407단계). 즉, 제어부(180)는 사용자 디바이스를 상기 슬립모드(220) 상태에서 파워 오프(210) 상태로 천이한다.
제어부(180)는 타임아웃이 검출되지 않으면(405단계의 NO) 사용자 디바이스의 턴-온을 위한 입력이 있는지 판별한다(409단계). 즉, 제어부(180)는 상기 슬립모드(220) 상태에서 타임아웃 발생 전까지 사용자의 파워 온/오프 버튼에 대한 입력을 체크할 수 있다.
제어부(180)는 사용자 디바이스의 턴-온을 위한 입력이 수신되지 않으면(409단계의 NO) 전술한 403단계로 진행하여 슬립모드(220) 상태를 유지하면서 이하의 동작 수행을 제어할 수 있다.
제어부(180)는 사용자 디바이스의 턴-온을 위한 입력이 수신되면(409단계의 YES) 사용자 디바이스의 턴-온을 제어한다(411단계). 즉, 제어부(180)는 사용자 디바이스를 상기 슬립모드(220) 상태에서 디바이스 온(230) 상태로 천이한다. 이때, 제어부(180)는 슬립모드(220) 상태에 따라 휘발성 메모리(133)에 유지되고 있는 부팅용 데이터를 이용하여 패스트 부팅(예컨대, 웜 부팅 방식의 특징에 의한 부팅)을 수행한다. 즉, 제어부(180)는 휘발성 메모리(133)에 부팅용 데이터가 존재함에 따라 주변장치(120)와 같은 하드웨어만을 초기화 하는 것에 의해 빠른 시간 안에 사용자 디바이스를 사용 가능한 상태로 복원할 수 있다.
한편, 상기 도 4에서는 설명의 편의를 위하여 405단계를 선 진행하고 409단계를 후 진행하는 것으로 설명하였으나, 이러한 전후 관계는 반드시 한정되는 것은 아니며, 409단계를 선 진행하고 407단계를 후 진행할 수도 있다. 즉, 407단계 및 409단계는 슬립모드(220) 상태에서 타임아웃 전까지 파워 온/오프 버튼에 의한 인터럽트의 발생 여부를 체크하고, 타임아웃 전에 파워 온/오프 버튼에 의한 인터럽트 발생 시 사용자 디바이스를 디바이스 온(230) 상태로 천이하고, 파워 온/오프 버튼에 의한 인터럽트가 타임아웃 시까지 발생되지 않을 시 사용자 디바이스를 파워 오프(210) 상태로 천이하는 동작을 나타낸 것이다.
도 5는 본 발명의 실시 예에 따른 사용자 디바이스의 패스트 부팅 동작을 도시한 흐름도이다.
상기 도 5에 도시된 바와 같이, 상기 도 5는 사용자 디바이스가 파워 오프(210) 상태에서 사용자 디바이스의 움직임 검출에 따라 슬립모드(220) 상태로 천이하고, 타임아웃에 따라 턴-오프 하거나, 또는 사용자의 파워 온/오프 버튼 입력에 따라 턴-온 하는 경우의 동작 예시를 나타낸 것이다.
상기 도 5를 참조하면, 제어부(180)는 사용자 디바이스의 파워 오프(210) 상태에서(501단계) 파워 트리거링부(150)로부터 웨이크-업 신호를 입력받을 수 있다(503단계). 그러면, 제어부(180)는 상기 웨이크-업 신호에 따라 웨이크-업 한다(505단계). 예를 들어, 사용자 디바이스가 파워 오프(210) 상태에서 사용자가 사용자 디바이스를 움직일 경우 상기 파워 트리거링부(150)는 에너지 생성부(160)를 통해 사용자 디바이스의 움직임에 따른 운동에너지로부터 전기에너지를 생성할 수 있다. 또한 파워 트리거링부(150)는 동작 검출부(170)를 통해 상기 전기에너지를 참조하여 사용자 디바이스의 동작 여부를 결정할 수 있다. 그리고 파워 트리거링부(150)는 동작 검출부(170)를 통해 사용자 디바이스의 동작 결정 시 제어부(180)를 웨이크-업 시키기 위한 인터럽트인 웨이크-업 신호를 생성하여 제어부(180)에게 입력할 수 있다. 그러면, 제어부(180)는 상기 웨이크-업 신호에 응답하여 웨이크-업 한다.
제어부(180)는 파워 트리거링부(150)에 의해 웨이크-업될 시 사용자 디바이스를 파워 오프(210) 상태에서 슬립모드(220) 상태로 천이한다. 제어부(180)는 슬립모드(220) 상태로 천이 시 휘발성 메모리(133)에 부팅용 데이터를 로딩(예컨대, 스냅샷 부팅 방식의 특징에 의한 로딩)하여 패스트 부팅(예컨대, 웜 부팅의 특징에 의한 부팅)을 대기할 수 있다. 그리고 제어부(180)는 슬립모드(220) 상태로 천이 시 타이머(140)에 의한 타임아웃을 관리할 수 있다.
제어부(180)는 상기 슬립모드(220) 상태에서 사용자 디바이스의 턴-온을 위한 입력이 있는지 판별한다(509단계). 즉, 제어부(180)는 상기 슬립모드(220) 상태에서 파워 온/오프 버튼에 의한 입력이 있는지 감지할 수 있다.
제어부(180)는 슬립모드(220) 상태에서 파워 온/오프 버튼에 의한 입력이 검출되면(509단계의 YES) 사용자 디바이스의 턴-온을 제어한다(511단계). 즉, 제어부(180)는 사용자 디바이스를 상기 슬립모드(220) 상태에서 디바이스 온(230) 상태로 천이한다. 이때, 제어부(180)는 슬립모드(220) 상태에 따라 휘발성 메모리(133)에 유지되고 있는 부팅용 데이터를 이용하여 패스트 부팅(예컨대, 웜 부팅 방식의 특징에 의한 부팅)을 수행한다. 즉, 제어부(180)는 휘발성 메모리(133)에 부팅용 데이터가 존재함에 따라 주변장치(!20)와 같은 하드웨어만을 초기화 하는 것만으로 패스트 부팅을 처리할 수 있다.
제어부(180)는 슬립모드(220) 상태에서 파워 온/오프 버튼에 의한 입력이 검출되지 않으면(509단계의 NO) 타이머(140)를 통해 미리 설정된 일정시간이 경과(즉, 타임아웃)되는지 판별한다(513단계).
제어부(180)는 타임아웃이 검출되지 않으면(513단계의 NO) 전술한 507단계로 진행하여 슬립모드(220) 상태를 유지하면서 이하의 동작 수행을 제어할 수 있다.
제어부(180)는 타임아웃이 검출되면(513단계의 YES) 사용자 디바이스의 턴-오프를 제어한다(515단계). 즉, 제어부(180)는 사용자 디바이스를 상기 슬립모드(220) 상태에서 파워 오프(210) 상태로 천이한다.
한편, 상기 도 5에서는 설명의 편의를 위하여 509단계를 선 진행하고 513단계를 후 진행하는 것으로 설명하였으나, 이러한 전후 관계는 반드시 한정되는 것은 아니며, 513단계를 선 진행하고 509단계를 후 진행할 수도 있다. 즉, 509단계 및 513단계는 슬립모드(220) 상태에서 타임아웃 전까지 파워 온/오프 버튼에 의한 인터럽트의 발생 여부를 체크하고, 타임아웃 전에 파워 온/오프 버튼에 의한 인터럽트 발생 시 사용자 디바이스를 디바이스 온(230) 상태로 천이하고, 파워 온/오프 버튼에 의한 인터럽트가 타임아웃 시까지 발생되지 않을 시 사용자 디바이스를 파워 오프(210) 상태로 천이하는 동작을 나타낸 것이다.
한편, 상술한 바와 같은 본 발명의 실시 예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터로 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터로 판독 가능한 기록 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 기록 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
상기 컴퓨터로 판독 가능한 기록 매체에는 하드디스크, 플로피디스크 및 자기 테이프와 같은 마그네틱 매체(Magnetic Media)와, CD-ROM(Compact Disc Read Only Memory), DVD(Digital Versatile Disc)와 같은 광기록 매체(Optical Media)와, 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media)와, 그리고 ROM(Read Only Memory), RAM(Random Access Memory), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 프로그램 명령에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지다.
그리고 본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
110: 사용자 입력부 120: 주변장치
130: 메모리 131: 비휘발성 메모리
133: 휘발성 메모리 140: 타이머
150: 파워 트리거링부 160: 에너지 생성부
170: 동작 검출부 180: 제어부
190: 전원 공급부

Claims (32)

  1. 사용자 디바이스의 패스트 부팅 방법에 있어서,
    파워 오프 상태에서 사용자 디바이스의 움직임을 검출하는 과정;
    상기 사용자 디바이스의 움직임에 대응하는 에너지를 생성하는 과정;
    상기 에너지에 의해 상기 파워 오프 상태에서 슬립모드 상태로 천이하는 과정;
    상기 슬립모드 상태로 천이 시 부팅 동작을 일부 진행하여 패스트 부팅을 대기하는 과정; 및
    상기 사용자 디바이스의 턴-온 이벤트에 응답하여 패스트 부팅을 수행하는 과정을 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  2. 제1항에 있어서, 상기 움직임을 검출하는 과정은
    무전력으로 상기 사용자 디바이스의 움직임을 검출하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  3. 제2항에 있어서, 상기 에너지를 생성하는 과정은
    상기 사용자 디바이스의 움직임에 따른 운동에너지로부터 전기에너지를 생성하는 과정을 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  4. 제3항에 있어서,
    상기 생성된 에너지를 참조하여 상기 사용자 디바이스의 동작 여부를 결정하고, 상기 사용자 디바이스의 동작 결정 시 상기 슬립모드 상태로 천이하는 과정을 더 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  5. 제4항에 있어서, 상기 동작 여부 결정은
    상기 전기에너지가 미리 정해진 용량 이상인 경우 상기 사용자 디바이스가 동작하는 것으로 결정하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  6. 제2항에 있어서,
    상기 파워 오프 상태에서 웨이크-업 신호를 수신하는 과정;
    상기 웨이크-업 신호에 응답하여 웨이크-업 하는 과정; 및
    상기 슬립모드 상태로의 천이를 수행하는 과정을 더 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  7. 제2항에 있어서, 상기 패스트 부팅을 대기하는 과정은
    휘발성 메모리에 부팅용 데이터를 로딩하는 과정; 및
    미리 정해진 타임아웃을 관리하는 과정을 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  8. 제7항에 있어서, 상기 패스트 부팅을 수행하는 과정은
    상기 슬립모드 상태에서 상기 턴-온 이벤트가 검출하면 상기 휘발성 메모리에 부팅용 데이터를 로딩하는 과정은 생략하고, 상기 휘발성 메모리에 미리 로딩된 상기 부팅용 데이터를 이용하여 상기 패스트 부팅을 수행하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  9. 제7항에 있어서,
    상기 슬립모드 상태에서 타임아웃을 검출하면 상기 슬립모드 상태에서 상기 파워 오프 상태로 천이하여 턴-오프 하는 과정을 더 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  10. 제1항에 있어서,
    상기 파워 오프 상태에서 상기 슬립모드 상태로 천이 시 스냅샷 부팅 방식에 의해 휘발성 메모리에 부팅용 데이터를 로딩하고, 상기 슬립모드 상태에서 턴-온 이벤트에 따라 상기 부팅용 데이터를 이용하여 웜 부팅 방식에 의한 패스트 부팅을 수행하여 디바이스 온 상태로 천이하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  11. 제1항에 있어서,
    상기 사용자 디바이스의 디바이스 온 상태에서 사용자 디바이스의 턴-오프 이벤트에 응답하여 상기 슬립모드 상태로 천이하는 과정; 및
    상기 슬립모드 상태에서 타임아웃 검출 시 상기 파워 오프 상태로 천이하는 과정을 더 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  12. 제11항에 있어서,
    상기 슬립모드 상태로 천이 시 휘발성 메모리의 부팅용 데이터를 유지하는 과정; 및
    상기 슬립모드 상태에서 상기 타임아웃 전에 턴-온 이벤트가 검출되면 상기 부팅용 데이터를 이용하여 웜 부팅 방식에 의한 패스트 부팅을 수행하여 상기 디바이스 온 상태로 천이하는 과정을 더 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  13. 사용자 디바이스의 패스트 부팅 방법에 있어서,
    사용자 디바이스의 파워 오프 상태에서 검출되는 상기 사용자 디바이스의 움직임에 응답하여 부팅용 데이터를 휘발성 메모리에 미리 로딩하는 슬립모드 상태로 천이하는 과정;
    상기 슬립모드 상태에서 턴-온 이벤트가 검출되면 상기 휘발성 메모리에 미리 로딩된 상기 부팅용 데이터를 이용하여 패스트 부팅을 수행하는 과정; 및
    상기 슬립모드 상태에서 타임아웃 이벤트가 검출되면 상기 슬립모드 상태를 상기 파워 오프 상태로 천이하는 과정을 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  14. 제13항에 있어서, 상기 슬립모드 상태로 천이하는 과정은
    스냅샷 부팅 방식에 대응하여 상기 사용자 디바이스의 비휘발성 메모리에 저장된 부팅용 데이터를 상기 휘발성 메모리에 로딩한 후 상기 턴-온 이벤트 또는 상기 타임아웃 이벤트를 대기하는 과정을 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  15. 제13항에 있어서, 상기 패스트 부팅을 수행하는 과정은
    웜 부팅 방식에 대응하여 상기 휘발성 메모리의 상기 부팅용 데이터로 상기 패스트 부팅을 수행하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  16. 제13항에 있어서,
    상기 사용자 디바이스의 디바이스 온 상태에서 턴-오프 이벤트에 응답하여 휘발성 메모리의 부팅용 데이터를 유지하는 슬립모드 상태로 천이하는 과정;
    상기 슬립모드 상태에서 턴-온 이벤트가 검출되면 웜 부팅 방식에 대응하여 상기 휘발성 메모리의 상기 부팅용 데이터로 패스트 부팅을 수행하여 상기 디바이스 온 상태로 천이는 과정; 및
    상기 슬립모드 상태에서 타임아웃 이벤트가 검출되면 상기 슬립모드 상태를 상기 파워 오프 상태로 천이하는 과정을 더 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  17. 사용자 디바이스의 패스트 부팅 방법에 있어서,
    파워 오프 상태에서 사용자 디바이스의 움직임에 대응하는 에너지를 생성하는 과정;
    상기 생성된 에너지를 이용하여 상기 사용자 디바이스의 동작 여부를 결정하는 과정; 및
    상기 사용자 디바이스의 동작 결정 시 상기 파워 오프 상태를 해제하는 과정을 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  18. 제17항에 있어서, 상기 에너지를 생성하는 과정은
    상기 사용자 디바이스가 사용자 디바이스에 의해 움직임이 발생할 시 상기 사용자 디바이스의 움직임에 대응하는 운동에너지를 생성하는 과정;
    상기 운동에너지를 전기에너지를 생성하는 과정을 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  19. 제18항에 있어서, 상기 동작 여부 결정은
    상기 생성된 전기에너지가 미리 설정된 용량에 도달할 시 상기 사용자 디바이스의 동작을 결정하는 것을 특징으로 사용자 디바이스의 패스트 부팅 방법.
  20. 제17항에 있어서, 상기 해제하는 과정은
    상기 사용자 디바이스의 패스트 부팅에 필요한 부팅 과정을 일정 부분 진행하는 과정을 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  21. 제20항에 있어서, 상기 해제하는 과정은
    상기 패스트 부팅을 위한 부팅용 이미지를 미리 로딩하는 과정을 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  22. 제21항에 있어서, 상기 해제하는 과정은
    상기 로딩된 부팅용 이미지를 이용하여 패스트 부팅을 수행하는 과정을 포함하는 것을 특징으로 하는 사용자 디바이스의 패스트 부팅 방법.
  23. 사용자 디바이스에 있어서,
    비휘발성 메모리와 휘발성 메모리를 포함하는 메모리;
    사용자 디바이스의 파워 오프 상태에서 상기 사용자 디바이스의 움직임 검출 및 상기 움직임에 따른 에너지를 생성하는 파워 트리거링부; 및
    상기 파워 오프 상태에서 상기 파워 트리거링부에 의한 움직임 검출에 응답하여 상기 휘발성 메모리에 부팅용 데이터를 로딩하는 슬립모드 상태로 천이하고, 상기 슬립모드 상태에서 턴-온 이벤트가 검출되면 상기 휘발성 메모리에 미리 로딩된 상기 부팅용 데이터를 이용하여 패스트 부팅을 수행하는 제어부를 포함하는 것을 특징으로 하는 사용자 디바이스.
  24. 제23항에 있어서, 상기 파워 트리거링부는
    상기 사용자 디바이스의 파워 오프 상태에서 무전력으로 동작하는 것을 특징으로 하는 사용자 디바이스.
  25. 제24항에 있어서, 상기 파워 트리거링부는
    상기 사용자 디바이스의 움직임에 대응하는 운동에너지로부터 전기에너지를 생성하는 에너지 생성부; 및
    상기 전기에너지가 미리 정해진 용량 이상인 경우 상기 사용자 디바이스의 동작을 결정하는 동작 검출부를 포함하는 것을 특징으로 하는 사용자 디바이스.
  26. 제25항에 있어서, 상기 제어부는
    상기 파워 오프 상태에서 상기 동작 검출부로부터 웨이크-업 신호 수신에 따라 웨이크-업하고, 상기 사용자 디바이스의 상태를 상기 파워 오프 상태에서 상기 슬립모드 상태로 천이하는 것을 특징으로 하는 사용자 디바이스.
  27. 제24항에 있어서, 상기 제어부는
    상기 파워 오프 상태에서 상기 슬립모드 상태로 천이 시 스냅샷 부팅 방식에 의해 상기 휘발성 메모리에 부팅용 데이터를 로딩하고, 상기 슬립모드 상태에서 턴-온 이벤트에 따라 상기 부팅용 데이터를 이용하여 웜 부팅 방식에 의한 패스트 부팅을 수행하는 것을 특징으로 하는 사용자 디바이스.
  28. 제24항에 있어서, 상기 사용자 디바이스는
    상기 사용자 디바이스의 슬립모드 상태에서 타임아웃 이벤트를 발생하는 타이머를 포함하는 것을 특징으로 하는 사용자 디바이스.
  29. 제28항에 있어서, 상기 제어부는
    상기 슬립모드 상태에서 상기 타임아웃 이벤트가 검출되면 상기 슬립모드 상태를 상기 파워 오프 상태로 천이하는 것을 특징으로 하는 사용자 디바이스.
  30. 제24항에 있어서, 상기 제어부는
    상기 사용자 디바이스의 디바이스 온 상태에서 사용자 디바이스의 턴-오프 이벤트에 응답하여 상기 슬립모드 상태로 천이하고, 상기 슬립모드 상태에서 타임아웃 검출 시 상기 파워 오프 상태로 천이하는 것을 특징으로 하는 사용자 디바이스.
  31. 제30항에 있어서, 상기 제어부는
    상기 슬립모드 상태로 천이 시 상기 휘발성 메모리의 부팅용 데이터를 유지하고, 상기 슬립모드 상태에서 상기 타임아웃 전에 턴-온 이벤트가 검출되면 상기 부팅용 데이터를 이용하여 웜 부팅 방식에 의한 패스트 부팅을 수행하여 상기 디바이스 온 상태로 천이하는 것을 특징으로 하는 사용자 디바이스.
  32. 사용자 디바이스의 파워 오프 상태에서 검출되는 상기 사용자 디바이스의 움직임에 응답하여 휘발성 메모리에 부팅용 데이터를 미리 로딩하는 슬립모드 상태로 천이하고, 상기 슬립모드 상태에서 턴-온 이벤트가 검출되면 상기 휘발성 메모리에 미리 로딩된 상기 부팅용 데이터를 이용하여 패스트 부팅을 수행하고, 상기 슬립모드 상태에서 타임아웃 이벤트가 검출되면 상기 슬립모드 상태를 상기 파워 오프 상태로 천이하도록 처리하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020130015500A 2013-02-13 2013-02-13 사용자 디바이스의 패스트 부팅 방법 및 장치 KR20140102070A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020130015500A KR20140102070A (ko) 2013-02-13 2013-02-13 사용자 디바이스의 패스트 부팅 방법 및 장치
EP14154837.0A EP2767902A3 (en) 2013-02-13 2014-02-12 Method and apparatus for fast booting of user device
US14/178,778 US20140229727A1 (en) 2013-02-13 2014-02-12 Method and apparatus for fast booting of user device
PCT/KR2014/001170 WO2014126391A1 (en) 2013-02-13 2014-02-13 Method and apparatus for fast booting of user device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130015500A KR20140102070A (ko) 2013-02-13 2013-02-13 사용자 디바이스의 패스트 부팅 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20140102070A true KR20140102070A (ko) 2014-08-21

Family

ID=50112740

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130015500A KR20140102070A (ko) 2013-02-13 2013-02-13 사용자 디바이스의 패스트 부팅 방법 및 장치

Country Status (4)

Country Link
US (1) US20140229727A1 (ko)
EP (1) EP2767902A3 (ko)
KR (1) KR20140102070A (ko)
WO (1) WO2014126391A1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9813984B2 (en) 2015-09-04 2017-11-07 Fci Inc Method of saving power of station in wireless network
US9961640B2 (en) 2015-09-04 2018-05-01 Fci Inc Communication system and IoT system
US10681638B2 (en) 2015-09-04 2020-06-09 Dialog Semiconductor Korea Inc. Communication system and IoT system
US10817034B2 (en) 2016-06-03 2020-10-27 Samsung Electronics Co, Ltd. Wearable electronic device and operating method therefor
WO2021206520A1 (ko) * 2020-04-10 2021-10-14 한국전기연구원 에너지 하베스팅 기반의 스마트 센서 및 그 동작방법

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102225313B1 (ko) * 2014-08-20 2021-03-10 에스케이하이닉스 주식회사 데이터 저장 장치의 동작 방법
JP6104311B2 (ja) * 2015-05-13 2017-03-29 三菱電機株式会社 車両情報表示装置
CN105430547B (zh) * 2015-10-23 2019-03-29 小米科技有限责任公司 蓝牙耳机的休眠方法及装置
KR102278811B1 (ko) * 2015-12-02 2021-07-19 삼성전자주식회사 모바일 장치를 이용한 호스트 장치의 부팅 방법
WO2018084576A1 (en) 2016-11-03 2018-05-11 Samsung Electronics Co., Ltd. Electronic device and controlling method thereof
JP6953211B2 (ja) * 2017-07-18 2021-10-27 キヤノン株式会社 情報処理装置及び情報処理装置の制御方法
EP3438769B1 (en) * 2017-08-01 2019-11-20 Kverneland Group Mechatronics BV Method for operating a user terminal of an agricultural machine and agricultural machine
US20210224372A1 (en) * 2018-07-18 2021-07-22 Samsung Electronics Co., Ltd. Method and apparatus for managing unlocking of an electronic device
KR20200013162A (ko) 2018-07-19 2020-02-06 삼성전자주식회사 전자 장치 및 그의 제어 방법
US10419838B1 (en) * 2018-09-07 2019-09-17 Plantronics, Inc. Headset with proximity user interface
US11393323B2 (en) 2018-09-18 2022-07-19 PB, Inc XCB tracking devices, methods and systems
CN113950128A (zh) * 2020-07-16 2022-01-18 珠海市杰理科技股份有限公司 Ble设备控制方法、装置、ble设备、芯片及存储介质
JP2023026946A (ja) * 2021-08-16 2023-03-01 富士フイルムビジネスイノベーション株式会社 情報処理装置およびプログラム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04340118A (ja) * 1990-06-05 1992-11-26 Seiko Epson Corp コンピュータ
US6393573B1 (en) * 1999-07-14 2002-05-21 Visteon Global Technologies, Inc. Power management for automotive multimedia system
KR100319292B1 (ko) * 1999-12-02 2002-01-05 윤종용 빠른 부팅 속도를 갖는 컴퓨터 시스템 및 그 방법
US7411631B1 (en) * 2000-05-31 2008-08-12 Intel Corporation Power management for processor-based appliances
US7199783B2 (en) * 2003-02-07 2007-04-03 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Wake-up detection method and apparatus embodying the same
KR100737044B1 (ko) * 2003-04-17 2007-07-09 마츠시타 덴끼 산교 가부시키가이샤 기동 시간 단축 장치 및 전자 기기
KR20060015329A (ko) * 2003-06-03 2006-02-16 코닌클리케 필립스 일렉트로닉스 엔.브이. 비휘발성 메모리로부터의 부팅
US7590839B2 (en) * 2005-03-22 2009-09-15 Qnx Software Systems Gmbh & Co. Kg System employing fast booting of application programs
US20080162918A1 (en) * 2007-01-02 2008-07-03 Nokia Corporation Hide boot
KR101261176B1 (ko) * 2007-03-23 2013-05-09 퀄컴 인코포레이티드 멀티-센서 데이터 수집 및/또는 프로세싱
TW201005503A (en) * 2008-07-16 2010-02-01 Htc Corp Portable electronic device and the mode switching method thereof
US20100045241A1 (en) * 2008-08-20 2010-02-25 Nokia Corporation Piezoelectric Kinetic Energy Harvester
CN101728864A (zh) * 2008-10-17 2010-06-09 深圳富泰宏精密工业有限公司 充电装置
US20110156406A1 (en) * 2009-12-31 2011-06-30 Qing Ma Platform energy harvesting
CN101916201B (zh) * 2010-08-06 2015-05-27 中兴通讯股份有限公司 一种基于Android移动终端冷启动的方法和装置
KR20120024134A (ko) * 2010-09-06 2012-03-14 삼성전자주식회사 컴퓨터 시스템을 부팅하기 위한 방법과 장치
TWI436278B (zh) * 2011-03-14 2014-05-01 Shuttle Inc 電腦快速開機系統及其方法
US20130054945A1 (en) * 2011-08-24 2013-02-28 Microsoft Corporation Adaptive sensing for early booting of devices
JP5045840B1 (ja) * 2011-09-06 2012-10-10 富士ゼロックス株式会社 電力供給制御装置、画像処理装置、電力供給制御プログラム
US9507399B2 (en) * 2012-04-24 2016-11-29 Analog Devices, Inc. Accelerometer-controlled master power switch for electronic devices
TWI456487B (zh) * 2012-04-26 2014-10-11 Acer Inc 行動裝置以及手勢判斷方法
US9152204B2 (en) * 2012-07-17 2015-10-06 Google Inc. System wakeup based on changes in physical environment
US9335954B2 (en) * 2012-09-10 2016-05-10 Texas Instruments Incorporated Customizable backup and restore from nonvolatile logic array
US20150092520A1 (en) * 2013-09-27 2015-04-02 Google Inc. Adaptive Trigger Point For Smartwatch Gesture-to-Wake

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9813984B2 (en) 2015-09-04 2017-11-07 Fci Inc Method of saving power of station in wireless network
US9961640B2 (en) 2015-09-04 2018-05-01 Fci Inc Communication system and IoT system
US10045295B2 (en) 2015-09-04 2018-08-07 Fci Inc Method of saving power of station in wireless network
US10681638B2 (en) 2015-09-04 2020-06-09 Dialog Semiconductor Korea Inc. Communication system and IoT system
US10817034B2 (en) 2016-06-03 2020-10-27 Samsung Electronics Co, Ltd. Wearable electronic device and operating method therefor
WO2021206520A1 (ko) * 2020-04-10 2021-10-14 한국전기연구원 에너지 하베스팅 기반의 스마트 센서 및 그 동작방법

Also Published As

Publication number Publication date
EP2767902A3 (en) 2015-02-25
WO2014126391A1 (en) 2014-08-21
US20140229727A1 (en) 2014-08-14
EP2767902A2 (en) 2014-08-20

Similar Documents

Publication Publication Date Title
KR20140102070A (ko) 사용자 디바이스의 패스트 부팅 방법 및 장치
US20210271306A1 (en) Apparatus and method for waking up a processor
JP6964687B2 (ja) 電子デバイスおよび装置の電力消費を削減する方法
US20150058651A1 (en) Method and apparatus for saving battery of portable terminal
CN105824393B (zh) 片上系统、管理其功率的方法和电子装置
KR20120032888A (ko) 모바일 디바이스의 전력소모 감소 방법 및 장치
JP6285664B2 (ja) 情報表示のための低電力感知装置及び方法
CN105474129A (zh) 用于在电子装置中执行省电模式的方法及其电子装置
KR101932086B1 (ko) 카메라 제어 방법 및 휴대 장치
WO2016045027A1 (zh) 屏幕灵敏度调整方法和移动终端
JP2007323313A (ja) 情報処理装置および制御方法
KR20150033505A (ko) 전자 장치에서 절전 모드를 수행하는 방법 및 이를 위한 전자 장치
US11704072B2 (en) Electronic device and method of utilizing storage space thereof
US20190155368A1 (en) Selecting a Low Power State in an Electronic Device
JP2015511045A (ja) コンピューティングデバイスにおける電源オフ状態の実施
US20220210264A1 (en) Method and apparatus for executing application
CN113703799A (zh) 计算设备及其bios更新方法和介质
US9292071B2 (en) Electronic device and method for setting time of timer
KR102125507B1 (ko) 배터리 충전을 위한 방법 및 그 전자 장치
CN107766218B (zh) 系统优化方法、装置、存储介质及终端设备
US20070239863A1 (en) Information processing apparatus and control method
US20150169039A1 (en) Electronic Apparatus, Method and Storage Medium
JP2007109078A (ja) 情報処理装置および動作制御方法
GB2514158A (en) Remotely awakening an electronic device
KR101811215B1 (ko) 전력 소모 감소를 위한 방법 및 모바일 디바이스

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid