KR20130108926A - 전자 기기 및 그것의 부팅 방법 - Google Patents

전자 기기 및 그것의 부팅 방법 Download PDF

Info

Publication number
KR20130108926A
KR20130108926A KR1020120030774A KR20120030774A KR20130108926A KR 20130108926 A KR20130108926 A KR 20130108926A KR 1020120030774 A KR1020120030774 A KR 1020120030774A KR 20120030774 A KR20120030774 A KR 20120030774A KR 20130108926 A KR20130108926 A KR 20130108926A
Authority
KR
South Korea
Prior art keywords
data
boot
booting
boot image
processor
Prior art date
Application number
KR1020120030774A
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 KR1020120030774A priority Critical patent/KR20130108926A/ko
Publication of KR20130108926A publication Critical patent/KR20130108926A/ko

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 전자 기기의 부팅에 관한 것이다. 본 발명의 전자 기기는 부팅 이미지가 저장되는 제 1 영역과 사용자 업데이트 데이터가 저장되는 제 2 영역을 포함한 메모리, 및 부팅 이미지를 사용하여 부팅 동작하고, 부팅 동작 시 상기 사용자 업데이트 데이터를 적용하는 프로세서를 포함한다.

Description

전자 기기 및 그것의 부팅 방법{A ELECTRONIC APPARATUS AND METHOD FOR BOOTING THEREOF}
본 발명은 전자 기기에 관한 것으로서, 특히 부팅 속도를 향상시킨 전자 기기 및 그것의 부팅 방법에 관한 것이다.
전자 기기들은 외부 전원 또는 배터리 등을 통해 공급된 전원으로 동작한다. 따라서, 전자 기기들은 전원의 온/오프 동작을 통해서 공급되는 전원의 사용 또는 차단을 한다. 또한, 전자 기기들은 사용자의 다양한 요구와 기술 발전에 따라 복잡한 기능이 구현됨에 따라 운영 체제 등을 탑재하고 있다.
이와 같은 운영 체제 등이 탑재된 전자 기기는 전원 온 동작 시 운영 체제의 시스템 파일 및 기타 데이터를 메인 메모리로 로드시킨다. 이때, 전자 기기에서는 전자 기기를 동작시키기 위해서 메인 메모리에 시스템 파일 및 기타 데이터를 로드하고, 실행시키게 된다. 전자 기기에서의 이러한 동작은 부팅 동작이라 한다.
현재, 전자 기기들은 기능이 다양화되고 다양한 부가 기능들의 구현에 따라 운영 체제를 구성하는 데이터 크기는 증가하고 있으며, 하드웨어 부품들이 추가 설치됨으로써 부팅에 소요되는 시간은 점차 증가하고 있다. 하지만, 전자 기기에서의 부팅 속도 증가는 빠른 응답 속도를 원하는 사용자에게 불편을 야기할 수 있다. 그러므로, 전자 기기에서 빠른 응답 속도를 갖는 부팅 기술을 필요로 한다.
본 발명의 목적은 부팅 속도가 향상된 전자 기기 및 그것의 부팅 방법을 제공함에 있다.
본 발명의 전자 기기는 부팅 이미지가 저장되는 제 1 영역과 사용자 업데이트 데이터가 저장되는 제 2 영역을 포함한 메모리, 및 상기 부팅 이미지를 사용하여 부팅 동작하고, 상기 부팅 동작 시 상기 사용자 업데이트 데이터를 적용하는 프로세서를 포함한다.
이 실시예에 있어서, 상기 부팅 동작을 위해 상기 부팅 이미지와 상기 사용자 업데이트 데이터를 상기 메모리로부터 로드하는 액세스 메모리를 더 포함한다.
이 실시예에 있어서, 상기 부팅 이미지는 시스템 상태 데이터, 디바이스 상태 데이터, 커널 데이터, 및 기본 어플리케이션 데이터를 포함한다.
이 실시예에 있어서, 상기 사용자 업데이트 데이터는 사용자 어플리케이션 데이터를 포함한다.
이 실시예에 있어서, 상기 프로세서는 상기 부팅 데이터를 압축시켜 상기 메모리에 저장한다.
이 실시예에 있어서, 상기 프로세서는 상기 부팅 동작 시 상기 압축된 부팅 데이터의 압축을 해제한다.
이 실시예에 있어서, 상기 프로세서는 상기 부팅 이미지에 관련된 헤더 정보를 포함시켜 상기 부팅 이미지를 생성한다.
본 발명의 전자 기기의 부팅 방법은 메모리에 저장된 부팅 이미지를 이용하여 부팅 동작하는 단계, 및 상기 부팅 동작에 상기 메모리의 사용자 업데이트 영역에 저장된 사용자 업데이트 데이터를 적용하는 단계를 포함한다.
이 실시예에 있어서, 상기 부팅 동작하는 단계 이전에, 부팅을 위한 부팅 이미지를 생성하는 단계, 상기 생성된 부팅 이미지를 상기 메모리에 저장하는 단계, 및 상기 사용자 업데이트 데이터를 상기 사용자 업데이트 영역에 저장하는 단계를 포함한다.
이 실시예에 있어서, 상기 부팅 이미지는 시스템 상태 데이터, 디바이스 상태 데이터, 커널 데이터, 및 기본 어플리케이션 데이터를 포함하고, 상기 사용자 업데이트 데이터는 사용자 어플리케이션 데이터를 포함한다.
이 실시예에 있어서, 상기 부팅 이미지를 메모리에 저장하는 단계는 상기 부팅 이미지를 압축하여 저장하는 단계를 포함한다.
이 실시예에 있어서, 상기 부팅 동작하는 단계는 상기 압축된 부팅 이미지의 압축을 해제하여 부팅 동작을 수행하는 단계를 포함한다.
본 발명에 의하면, 본 발명에서 제안된 전자 기기는 부팅 동작에 필요한 상태 데이터가 저장된 부팅 이미지를 이용함으로 부팅 속도가 향상될 수 있다. 또한, 본 발명의 전자 기기는 부팅 동작 시 부팅 이미지와 함께 사용자 업데이트 데이터를 사용함에 따라 추가적인 부팅 이미지의 생성없이 사용자에게 최적화된 부팅을 수행할 수 있다.
도 1은 본 발명의 실시예에 따른 부팅 속도를 향상시킨 전자 기기를 도시한 도면,
도 2는 본 발명의 실시예에 따른 부팅 속도 향상을 위한 부팅 이미지를 생성하는 동작을 도시한 순서도,
도 3은 본 발명의 실시예에 따른 부팅 속도 향상을 위한 부팅 이미지를 생성하는 동작을 도시한 순서도,
도 4는 본 발명의 실시예에 따른 부팅 동작을 도시한 순서도,
도 5는 본 발명의 실시예에 따른 부팅 동작을 도시한 순서도, 및
도 6은 본 발명의 실시예에 따른 부팅 이미지와 사용자 업데이트 데이터를 개략적으로 도시한 도면이다.
이하, 본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 모호하지 않도록 하기 위해 생략될 것이라는 것을 유의하여야 한다.
도 1은 본 발명의 실시예에 따른 부팅 속도를 향상시킨 전자 기기를 도시한 도면이다.
도 1을 참조하면, 전자 기기(100)는 프로세서(110), 액세스 메모리(120), 저장 메모리(130), 디바이스 모듈들(140), 및 전원부(150)를 포함한다.
프로세서(110)는 전자 기기(100)의 전반적인 동작을 제어한다. 프로세서(110)는 중앙 처리 장치(CPU: Central Processing Unit)일 수 있다. 프로세서(110)는 액세스 메모리(120)를 통해 저장 메모리(130)를 액세스 할 수 있다. 프로세서(110)는 디바이스들(140) 및 전원부(150)를 제어할 수 있다.
액세스 메모리(120)는 저장 메모리(130)를 액세스하는 메모리이다. 액세스 메모리(120)는 운영 체제 또는 실행 파일들이 구동되는 메모리이므로, 빠른 처리 속도를 필요로 한다. 따라서, 액세스 메모리(120)는 휘발성 메모리, 일예로 램(RAM: Random Access Memory) 등으로 구성될 수 있다. 액세스 메모리(120)는 전자 기기(100)의 구동을 위한 메인 메모리로 동작한다.
저장 메모리(130)는 데이터가 저장되는 메모리이다. 저장 메모리(130)는 대용량 데이터를 저장을 필요로 하므로 비휘발성 메모리, 일예로 롬(ROM), 낸드 플래쉬(NAND Flash) 메모리, 멀티 미디어 카드(MMC: Multi Media Card)(또는, 개선된 멀티 미디어 카드(eMMC: enhanced MMC)), 하드 디스크 드라이브(HDD: Hard Disk Drive), 및 솔리드 스테이트 드라이브(SSD: Solid State Drive) 등으로 구성될 수 있다.
디바이스들(140)은 전자기기의 종류에 따라 다양한 디바이스들을 포함할 수 있다. 일예로, 모바일폰의 경우 입력부(버튼, 키패드, 또는 터치패드 등), 디스플레이, 스피커, 마이크, 카메라 등의 디바이스들을 포함할 수 있다.
전원부(150)는 프로세서(110)의 제어에 따라 전자기기 내부의 모든 디바이스들에 전원을 공급할 수 있다. 전원부(110)는 프로세서(110), 액세스 메모리(120), 저장 메모리(130), 및 디바이스들(140)로 전원을 공급할 수 있다.
본 발명은 이러한 전자 기기(100)에서 부팅 속도가 향상된 부팅 방법, 일예로 스마트 부팅 방식을 제안한다.
본 발명에서 제안된 프로세서(110)는 부팅 속도를 향상하기 위해 부팅 이미지(booting image)를 생성하고, 부팅 이미지를 저장 메모리(130)에 저장한다. 여기서, 부팅 이미지는 시스템, 디바이스, 운영체제, 기본 어플리케이션에 대한 부팅 정보를 포함한다. 또한, 프로세서(110)는 사용자 업데이트 데이터를 저장 메모리(130)에 저장할 수 있다. 사용자 업데이트 데이터는 사용자에 의해 추가(신규) 또는 변경된 사용자 어플리케이션과 사용자 정의 데이터에 대한 정보를 포함한다.
본 발명의 저장 메모리(130)는 부팅 이미지가 저장되는 부팅 이미지 저장 영역(131)과 사용자 데이터가 저장되는 사용자 업데이트 영역(132)을 포함한다.
프로세서(110)는 부팅 동작 시 저장 메모리(130)에 저장된 부팅 이미지를 액세스 메모리(120)로 로드시키고, 부팅 이미지(131)를 사용하여 부팅 동작을 수행한다. 부팅 이미지를 사용한 부팅 동작을 수행한 이후에, 프로세서(110)는 저장 메모리(130)에 저장된 사용자 업데이트 데이터를 액세스 메모리(120)로 로드시키고, 로드된 사용자 업데이트 데이터를 적용하여 부팅 동작을 완료할 수 있다.
이와 같이, 부팅 동작 시 요구되는 데이터들을 부팅 이미지를 통해 관리함으로서 본 발명의 전자 기기(100)는 부팅 동작을 위한 데이터 구성동작 없이도 부팅을 할 수 있다. 또한, 부팅 이미지에는 디폴트 데이터가 저장됨에 따라서 부팅 이미지를 반복 생성하지 않고, 최초 생성된 부팅 이미지를 사용하여 부팅을 수행할 수 있다.
또한, 본 발명의 전자 기기(100)는 부팅 이미지와 함께 별도의 사용자별 사용자 업데이트 데이터를 사용함에 따라 각 사용자에게 최적화된 부팅 동작을 수행할 수 있다.
하기에서, 도 2 내지 도 5를 참조하여 전자 기기(100)에서 부팅 이미지를 생성하고, 생성된 부팅 이미지를 사용하여 부팅을 수행하는 동작을 상세히 설명하기로 한다.
도 2는 본 발명의 실시예에 따른 부팅 속도 향상을 위한 부팅 이미지를 생성하는 동작을 도시한 순서도이다.
도 2를 참조하면, 전원 온 동작에 따라 전원부(150)는 프로세서(110), 액세스 메모리(120), 저장 메모리(130), 및 디바이스 모듈들(140)로 전원을 공급한다(S101단계).
프로세서(110)를 포함한 기본 디바이스들의 초기화를 통해 디바이스들의 동작에 필요한 기본 설정들을 수행한다(S103단계).
다음으로, 프로세서(110)는 부팅 이미지가 존재하는지 판단한다(S105단계). 여기서, 부팅 이미지는 부팅 속도의 향상을 위해 사용되는 이미지로서 각 전자 기기의 부팅 시 사용되는 디폴트 데이터를 포함한다. 따라서, 부팅 이미지는 전자 기기 제조 단계에서 전자 기기(100)의 제조업자 또는 공급업자에 의해 생성될 수 있다. 예를 들어, 부팅 이미지는 시스템에 대한 시스템 상태 데이터, 디바이스들에 대한 디바이스 상태 데이터, 운영 체제의 커널 데이터, 및 기본 어플리케이션 상태 데이터 등의 디폴트 데이터를 포함한다.
S105단계의 판단결과, 프로세서(110)는 부팅 이미지가 존재하면 종료 단계로 진행하고, 부팅 이미지 생성 동작을 종료한다.
하지만, S105단계의 판단결과, 프로세서(110)는 부팅 이미지가 존재하지 않으면, S107단계로 진행한다. 프로세서(110)는 운영 체제를 초기화한다(S107단계). 예를 들어, 운영 체제는 리눅스(Linux) 또는 안드로이드(Android) 등을 포함한다. 이때, 프로세서(110)는 운영 체제의 내부 변수 및 파라미터들의 초기화를 수행한다.
다음으로, 프로세서(110)는 기본 프로그램의 수행에 필요한 기본 정보, 일예로 각종 변수, 클래스, 및 코드 등을 액세스 메모리(120)에 로드한다(S109단계).
프로세서(110)는 기본 정보를 모두 저장 메모리(130)로부터 액세스 메모리(120)로 로드하였는지 확인한다(S111단계). 기본 정보는 전자 기기에서 사용되는 기본 프로그램의 개수에 따라 변경될 수 있다.
111단계의 확인결과, 프로세서(110)는 액세스 메모리(120)에 기본 정보의 로드가 완료되지 않았으면 S109단계로 진행한다.
하지만, 111단계의 확인결과, 프로세서(110)는 액세스 메모리에 기본 정보의 로드가 모두 완료되면 S113단계로 진행한다. 이때, 프로세서(110)는 부팅 프로세스를 중지한다(S113단계). 여기서, 프로세서(110)는 부팅 이미지 생성을 위해 현재 수행 중인 모든 부팅 프로세스를 중지한다.
프로세서(110)는 액세스 메모리(120)에 로드되어 있는 기본 정보를 모두 저장 메모리(130)에 저장한다(S115단계).
도 3은 본 발명의 실시예에 따른 부팅 속도 향상을 위한 부팅 이미지를 생성하는 동작을 도시한 순서도이다.
도 3을 참조하면, 프로세서(110)는 디바이스들에 대한 상태 정보를 저장 메모리(130)에 저장한다(S117단계).
다음으로, 프로세서(110)는 프로세서(110), 즉 중앙 처리 장치의 상태 정보를 저장 메모리(130)에 저장한다(S119단계).
또한, 프로세서(110)는 위치 정보와, 부팅 이미지를 통해 부팅 시 복원되는 시점에 대한 정보를 저장 메모리(130)에 저장한다(S121단계). 여기서, 저장되는 정보들은 스택 포인터(stack pointer), 프로그램 카운터(program counter) 등이 될 수 있다.
프로세서(110)는 저장 메모리(130)에 저장된 정보들에 근거하여 프리 부팅 이미지(pre booting image)를 생성한다(S123단계). 프리 부팅 이미지는 1차적으로 생성되는 부팅 이미지이다.
다음으로, 프로세서(110)는 프리 부팅 이미지에 근거한 헤더 정보를 생성한다(S125단계). 헤더 정보는 부팅 이미지의 정상 상태 여부 확인을 위한 정보, 부팅 이미지에 대한 정보, 부팅 이미지 생성 날짜 정보 등을 포함할 수 있다. 따라서, 헤더 정보는 상기 부팅 이미지에 대한 정보를 포함한다.
프로세서(110)는 헤더 정보와 프리 부팅 이미지의 결합을 통해 부팅 이미지를 생성한다(S127단계). 부팅 이미지는 프리 부팅 이미지를 사용하여 2차적으로 생성되는 부팅 이미지이다. 여기서, 생성된 부팅 이미지는 부팅 동작 시 부팅 속도를 향상시키기 위해 사용될 수 있다. 여기서, 부팅 이미지는 부팅 동작 시의 시스템, 디바이스, 운영체제 커널, 기본 어플리케이션 등에 대한 정보를 포함하기 때문에 부팅 이미지를 사용하면 부팅에 소요되는 시간을 감소시킬 수 있다.
또한, 프로세서(110)는 생성된 부팅 이미지를 압축한다(S129단계). 프로세서(110)는 부팅 이미지를 저장하기 위해 압축한다. 부팅 이미지의 압축을 통해 프로세서(110)는 비휘발성 메모리인 저장 메모리의 저장 공간을 효율적으로 활용할 수 있다.
프로세서(110)는 압축된 부팅 이미지를 비휘발성 메모리인 저장 메모리(130)에 저장한다(S131단계).
도 4는 본 발명의 실시예에 따른 부팅 동작을 도시한 순서도이다.
도 4를 참조하면, 전원 온 동작에 따라 전원부(150)는 프로세서(110), 액세스 메모리(120), 저장 메모리(130), 및 디바이스 모듈들(140)로 전원을 공급한다(S201단계).
다음으로, 프로세서(110)를 포함한 기본 디바이스들의 초기화를 통해 디바이스들의 동작에 필요한 기본 설정들을 수행한다(S203단계).
또한, 프로세서(110)는 부팅 이미지가 존재하는지 판단한다(S205단계). 여기서, 부팅 이미지는 부팅 속도의 향상을 위해 사용되는 이미지로서 각 전자 기기의 부팅 시 사용되는 디폴트 데이터를 포함한다. 예를 들어, 부팅 이미지는 시스템에 대한 시스템 상태 데이터, 디바이스들에 디바이스 상태 데이터, 운영 체제의 커널 데이터, 및 기본 어플리케이션 상태 데이터와 같은 디폴트 데이터를 포함한다.
S205단계의 판단결과, 프로세서(110)는 부팅 이미지가 존재하지 않으면 종료 단계로 진행하여 부팅 동작을 종료하거나 일반 부팅 동작을 통해 부팅을 수행한다.
하지만, S205단계의 판단결과, 프로세서(110)는 부팅 이미지가 존재하면, S207단계로 진행한다. 프로세서(110)는 부팅 이미지를 통한 부팅을 위해 모든 프로세스를 중지한다(S207단계).
다음으로, 프로세서(110)는 부팅 이미지를 저장 메모리(130)로부터 액세스 메모리(120)로 로드한다(S209단계). 도 3에서 설명된 바와 같이 부팅 이미지는 압축되어 있다.
프로세서(110)는 로드된 부팅 이미지의 압축을 해제한다(S211단계).
또한, 프로세서(110)는 압축 해제된 부팅 이미지를 이용하여 디바이스들의 상태를 복원한다(S213단계). 프로세서(110)는 부팅 이미지 내에 포함된 디바이스 상태 데이터를 사용하여 디바이스들의 상태를 부팅 이미지 생성 시점으로 복원한다.
다음으로, 프로세서(110)는 부팅 이미지를 사용하여 프로세서(110) 즉, 중앙 처리 장치의 상태를 복원한다(S215단계). 프로세서(110)는 시스템 상태 데이터를 사용하여 프로세서(110)를 부팅 이미지 생성 시점으로 복원한다.
다음으로, 프로세서(110)는 부팅 이미지를 사용하여 액세스 메모리(120) 상태를 복원한다(S217단계). 프로세서(110)는 부팅 이미지 내에 포함된 커널 데이터와 디바이스 상태 데이터를 사용하여 액세스 메모리(120)의 상태를 부팅 이미지 생성 시점으로 복원한다.
다음으로, 프로세서(110)는 부팅 이미지를 통한 부팅 동작 이후의 실행 위치 정보를 복원하고 실행한다(S219단계). 프로세서(110)는 실행 위치 정보 복원 및 실행을 위해 내부의 레지스터들의 상태를 재구성한다. 부팅 이미지는 전체 부팅 과정을 포함하지 않은 상태의 데이터를 포함함으로써 부팅 이미지를 이용한 부팅 동작 이후의 동작을 추가로 필요로 한다.
도 5는 본 발명의 실시예에 따른 부팅 동작을 도시한 순서도이다.
도 5를 참조하면, 프로세서(110)는 부팅 동작 시 사용자 업데이트 데이터를 검출하기 위해 모든 프로세스를 중지한다(S221단계). 부팅 이미지 내에 포함되어 기본 어플리케이션 상태 데이터를 사용하여 기본 어플리케이션을 수행한 이후에 모든 프로세스를 중지한다.
프로세서(110)는 기본 어플리케이션 비동기화한다(S223단계). 프로세서(110)는 기본 어플리케이션들을 수행하기 위해서 동기화되어 있는 파일 시스템을 비동기화한다.
프로세서(110)는 저장 메모리(130) 내의 사용자 업데이트 영역을 동기화한다(S225단계). 사용자 업데이트 영역은 사용자에 의한 추가 또는 변경된 신규 어플리케이션과 사용자 정의 데이터가 저장된다.
프로세서(110)는 사용자 업데이트 영역의 동기화를 통해 사용자 업데이트 데이터가 존재하는지 확인한다(S227단계). S227단계의 확인결과, 프로세서(110)는 사용자 업데이트 데이터가 존재하지 않으면 종료 단계로 진행하여 부팅 동작을 완료하고 종료한다. S227단계의 확인결과, 프로세서(110)는 사용자 업데이트 데이터가 존재하면 S229단계로 진행한다.
프로세서(110)는 사용자 업데이트 데이터를 검출한다(S229단계).
프로세서(110)는 검출된 사용자 업데이트 데이터를 사용하여 사용자 정의 데이터와 신규 어플리케이션을 실행한다(S231단계). 부팅 이미지를 사용하여 부팅을 수행할 때, 사용자 업데이트 데이터를 추가로 사용하여 부팅 동작을 수행함으로써 전자기기에서 향상된 부팅 속도를 제공할 수 있다.
일예로, 도 2와 도 3의 동작은 전자 기기(100)를 제작하는 제작 단계에서의 전자 기기 동작일 수 있고, 도 4와 도 5는 전자 기기를 사용하는 사용자 사용 단계에서의 전자 기기 동작일 수 있다.
도 6은 본 발명의 실시예에 따른 부팅 이미지와 사용자 업데이트 데이터를 개략적으로 도시한 도면이다.
도 6을 참조하면, 전자 기기(100)는 부팅 동작에 부팅 이미지(200)와 사용자 업데이트 데이터(300)를 사용한다.
부팅 이미지(200)는 시스템 영역(210), 디바이스 영역(220), 커널 영역(230), 및 기본 어플리케이션 영역(240)으로 구성될 수 있다. 시스템 영역(210)에 전자 기기(100)의 시스템(일예로, 프로세서(110) 등)에 대한 시스템 상태 데이터가 저장된다. 디바이스 영역(220)에 각 디바이스들의 디바이스 상태 데이터가 저장된다. 커널 영역(230)에 운영체제의 커널 데이터가 저장된다. 기본 어플리케이션 영역(240)에 전자 기기(100)에 설정된 기본 어플리케이션 데이터가 저장된다.
한편, 도 1에서와 같이 전자 기기(100)를 모바일폰으로 가정하면, 기본 어플리케이션 데이터는 일예로, 전화 걸기, 전자 계산기, 지도, 카메라, 시계, 문자 메시지 등에 관련된 기본 어플리케이션들에 대한 데이터를 포함할 수 있다.
또한, 사용자 업데이트 데이터(300)는 사용자 어플리케이션 영역(310)으로 구성될 수 있다.
사용자 어플리케이션 영역(310)은 디폴트된 기본 어플리케이션 데이터와 달리 사용자에 의해 추가되거나 변경된 사용자 어플리케이션 데이터가 저장된다. 또한, 사용자 어플리케이션 영역(310)은 사용자에 의해 정의된 데이터들을 추가로 저장될 수 있다.
여기서도, 도 1에서와 같이 전자 기기(100)를 모바일폰으로 가정하면, 사용자 어플리케이션 데이터는 게임, 금융, 교통, 교육, 날씨, 네비게이션, 뉴스, 도서, 스포츠, 여행 등에 관련된 사용자 어플리케이션들에 대한 데이터를 포함할 수 있다.
또한, 사용자 어플리케이션 영역(310)은 사용자에 의해 정의된 사용자 정의 데이터를 추가로 저장할 수도 있다.
본 발명의 전자 기기(100)는 부팅 동작에 필요한 고정 데이터를 사용하여 부팅 이미지를 생성하고, 부팅 동작에 필요한 가변 데이터를 사용하여 사용자 업데이트 데이터를 생성한다. 여기서, 고정 데이터는 사용자 등에 의해 변경되지 않는 디폴트 데이터를 의미하고, 가변 데이터는 사용자 등에 의해 변경되는 데이터이다. 즉, 사용자 입장에서 고정 데이터는 리드(read only) 데이터가 될 수 있고, 가변 데이터는 리드/라이트(read/write) 데이터가 될 수 있다. 따라서, 전자 기기(100)는 최초 부팅 이미지를 생성한 후, 사용자에 의해 가변되는 업데이트 데이터를 부팅 동작 시 활용함에 따라 사용자에게 최적화된 부팅을 할 수 있다. 따라서, 전자 기기(100)는 최초 부팅 이미지를 생성하고, 생성된 부팅 이미지를 사용하여 기본 부팅을 수행한다. 이후, 전자 기기(100)는 사용자에 의해 가변되는 사용자 업데이트 데이터를 부팅 동작에 활용함에 따라 사용자에게 최적화된 부팅을 할 수 있다.
본 발명에서 제안된 부팅 방법은 전자 기기는 일예로, 모바일폰, 태블릿 피씨(PC: Personal Computer), 스마트 티브이(TV: Television), 데스크톱, 노트북, 셋탑 박스, 게임 플레이어, 포터블 미디어 플레이어(PMP), 전자 액자, 디지털 카메라 등에 확장하여 적용될 수 있다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 상술한 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 전자 기기 110: 프로세서
120: 액세스 메모리 130: 저장 메모리
140: 디바이스들 150: 전원부

Claims (12)

  1. 부팅 이미지가 저장되는 제 1 영역과 사용자 업데이트 데이터가 저장되는 제 2 영역을 포함한 메모리; 및
    상기 부팅 이미지를 사용하여 부팅 동작하고, 상기 부팅 동작 시 상기 사용자 업데이트 데이터를 적용하는 프로세서를 포함하는 전자 기기.
  2. 제 1 항에 있어서,
    상기 부팅 동작을 위해 상기 부팅 이미지와 상기 사용자 업데이트 데이터를 상기 메모리로부터 로드하는 액세스 메모리를 더 포함하는 전자 기기.
  3. 제 1 항에 있어서,
    상기 부팅 이미지는 시스템 상태 데이터, 디바이스 상태 데이터, 커널 데이터, 및 기본 어플리케이션 데이터를 포함하는 전자 기기.
  4. 제 1 항에 있어서,
    상기 사용자 업데이트 데이터는 사용자 어플리케이션 데이터를 포함하는 전자 기기.
  5. 제 1 항에 있어서,
    상기 프로세서는 상기 부팅 데이터를 압축시켜 상기 메모리에 저장하는 전자 기기.
  6. 제 5 항에 있어서,
    상기 프로세서는 상기 부팅 동작 시 상기 압축된 부팅 데이터의 압축을 해제하는 전자 기기.
  7. 제 1 항에 있어서,
    상기 프로세서는 상기 부팅 이미지에 관련된 헤더 정보를 포함시켜 상기 부팅 이미지를 생성하는 전자 기기.
  8. 전자 기기의 부팅 방법에 있어서,
    메모리에 저장된 부팅 이미지를 이용하여 부팅 동작하는 단계; 및
    상기 부팅 동작에 상기 메모리의 사용자 업데이트 영역에 저장된 사용자 업데이트 데이터를 적용하는 단계를 포함하는 부팅 방법.
  9. 제 8 항에 있어서,
    상기 부팅 동작하는 단계 이전에,
    부팅을 위한 부팅 이미지를 생성하는 단계;
    상기 생성된 부팅 이미지를 상기 메모리에 저장하는 단계; 및
    상기 사용자 업데이트 데이터를 상기 사용자 업데이트 영역에 저장하는 단계를 포함하는 부팅 방법.
  10. 제 8 항에 있어서,
    상기 부팅 이미지는 시스템 상태 데이터, 디바이스 상태 데이터, 커널 데이터, 및 기본 어플리케이션 데이터를 포함하고, 상기 사용자 업데이트 데이터는 사용자 어플리케이션 데이터를 포함하는 부팅 방법.
  11. 제 8 항에 있어서,
    상기 부팅 이미지를 메모리에 저장하는 단계는
    상기 부팅 이미지를 압축하여 저장하는 단계를 포함하는 부팅 방법.
  12. 제 11 항에 있어서,
    상기 부팅 동작하는 단계는
    상기 압축된 부팅 이미지의 압축을 해제하여 부팅 동작을 수행하는 단계를 포함하는 부팅 방법.
KR1020120030774A 2012-03-26 2012-03-26 전자 기기 및 그것의 부팅 방법 KR20130108926A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120030774A KR20130108926A (ko) 2012-03-26 2012-03-26 전자 기기 및 그것의 부팅 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120030774A KR20130108926A (ko) 2012-03-26 2012-03-26 전자 기기 및 그것의 부팅 방법

Publications (1)

Publication Number Publication Date
KR20130108926A true KR20130108926A (ko) 2013-10-07

Family

ID=49631465

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120030774A KR20130108926A (ko) 2012-03-26 2012-03-26 전자 기기 및 그것의 부팅 방법

Country Status (1)

Country Link
KR (1) KR20130108926A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9606811B2 (en) 2014-08-20 2017-03-28 SK Hynix Inc. Operating method of data storage device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9606811B2 (en) 2014-08-20 2017-03-28 SK Hynix Inc. Operating method of data storage device

Similar Documents

Publication Publication Date Title
US11372472B2 (en) System on chip for reducing wake-up time, method of operating same, and computer system including same
US8769256B2 (en) Fast switching between multiple operating systems using standby state
US8732446B2 (en) Selectively compressing blocks of a bootable snapshot image during booting
KR101668312B1 (ko) 모바일 디바이스에서 하이버네이션 기능 지원 방법 및 장치
US10860303B2 (en) Selective operating system patching/updating
US11003438B2 (en) Method and device for incremental upgrade
US20130179670A1 (en) Booting method of multimedia device and multimedia device
US20110213954A1 (en) Method and apparatus for generating minimum boot image
CN109905770B (zh) 终端开机启动方法、装置及终端
TW201525869A (zh) 用於雙作業系統記憶體切換的系統及方法
US10204011B1 (en) Techniques for partially restarting a computing device in response to a configuration change
CN105335178B (zh) 一种启动控制方法,及装置
Joe et al. Bootup time improvement for embedded linux using snapshot images created on boot time
CN103984565A (zh) 文件系统预提取的方法与电子装置以及启动方法
WO2015074526A1 (en) Method and apparatus for injecting java by tecode into target process
JP2016506583A (ja) オペレーティングシステムリカバリー方法、装置、及び端末デバイス
US20150324209A1 (en) Operating System Switching Method and Dual-Operating System Electronic Device Using the Same
CN103927196A (zh) 用于引导的装置和方法
CN102135923A (zh) 将操作系统集成到bios芯片的方法及启动该操作系统的方法
US20110125993A1 (en) Display apparatus and control method thereof
US11340882B2 (en) Systems and methods for enforcing update policies while applying updates from bootable image file
KR20130108926A (ko) 전자 기기 및 그것의 부팅 방법
US11023217B2 (en) Systems and methods for support of selective processor microcode updates
US11086538B2 (en) Method and electronic device for initializing storage
US20150317181A1 (en) Operating system switching method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application