KR101582919B1 - 전자장치 및 그 부팅방법 - Google Patents

전자장치 및 그 부팅방법 Download PDF

Info

Publication number
KR101582919B1
KR101582919B1 KR1020090046450A KR20090046450A KR101582919B1 KR 101582919 B1 KR101582919 B1 KR 101582919B1 KR 1020090046450 A KR1020090046450 A KR 1020090046450A KR 20090046450 A KR20090046450 A KR 20090046450A KR 101582919 B1 KR101582919 B1 KR 101582919B1
Authority
KR
South Korea
Prior art keywords
storage unit
executable file
reference information
file
device executable
Prior art date
Application number
KR1020090046450A
Other languages
English (en)
Other versions
KR20100128033A (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 KR1020090046450A priority Critical patent/KR101582919B1/ko
Priority to EP09176732A priority patent/EP2256625A1/en
Priority to US12/623,764 priority patent/US8386760B2/en
Priority to JP2010087365A priority patent/JP5587654B2/ja
Publication of KR20100128033A publication Critical patent/KR20100128033A/ko
Application granted granted Critical
Publication of KR101582919B1 publication Critical patent/KR101582919B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • 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

Landscapes

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

Abstract

본 발명은 전자장치 및 그 부팅방법에 관한 것이다. 본 발명에 따른 장치 초기화 파일과 장치 실행 파일이 저장되어 있는 비휘발성의 제1저장부와, 휘발성의 제2저장부를 포함하는 전자장치의 부팅방법은, 초기 부팅 시, 상기 장치 실행 파일을 상기 제1저장부에서 상기 제 2저장부로 로드하는 단계와; 로드된 장치 실행 파일에 대한 참조정보를 생성하는 단계와; 파워 오프 시, 상기 제2저장부의 전원 공급을 유지하는 단계와; 재 부팅 시, 상기 장치 초기화 파일을 상기 제1저장부로부터 상기 제2저장부로 로드하여 실행하는 단계와; 상기 참조정보를 참조하여 상기 제2저장부에 저장되어 있는 상기 장치 실행 파일을 실행하는 단계를 포함한다. 이에 의해 부팅 속도가 개선되는 전자장치 및 그 부팅방법이 제공된다.
부트로더, 커널, 디램, 페이지 캐시

Description

전자장치 및 그 부팅방법{ELECTRONIC APPARATUS AND BOOTING METHOD OF THE SAME}
본 발명은 전자장치 및 그 부팅방법에 관한 것으로서, 보다 상세하게는 셀프 리프레시(self-refresh)가 가능한 저장매체를 포함하는 전자장치 및 그 부팅방법에 관한 것이다.
텔레비전 또는 컴퓨터와 같은 전자장치는 파워 온 될 때 시스템 초기화를 위한 부팅을 수행한다. 이러한 부팅은 통상적으로 커널(kernel)을 포함하는 운영체계(operating system: OS) 및 장치 실행 파일과 같은 데이터가 램과 같은 메모리에 로드되는 과정을 통하여 이루어진다. 이러한 데이터는 비휘발성 저장매체인 하드 디스크 또는 플래시 메모리에 저장되어 있다가 램으로 로드된다.
데이터가 램으로 로드 될 때 소요되는 시간, 특히 장치 실행 파일이 로드 되는 시간은 전자장치의 전제 부팅 시간을 좌우하며, 이러한 데이터의 로드 속도가 느릴수록 부팅 시간이 길어진다.
본 발명은 부팅의 속도가 개선되는 전자장치 및 그 부팅방법을 제공한다.
또한, 본 발명은 부팅 시간을 단축하기 위하여 필요한 설계 변경이 용이한 전자장치 및 그 부팅방법을 제공한다.
본 발명의 일 실시예에 따른 장치 초기화 파일과 장치 실행 파일이 저장되어 있는 비휘발성의 제1저장부와, 휘발성의 제2저장부를 포함하는 전자장치의 부팅방법은 초기 부팅 시, 상기 장치 실행 파일을 상기 제1저장부에서 상기 2저장부로 로드하는 단계와; 로드된 장치 실행 파일에 대한 참조정보를 생성하는 단계와; 파워 오프 시, 상기 제2저장부의 전원 공급을 유지하는 단계와; 재 부팅 시, 상기 장치 초기화 파일을 상기 제1저장부로부터 상기 제2저장부로 로드하여 실행하는 단계와; 상기 참조정보를 참조하여 상기 제2저장부에 저장되어 있는 상기 장치 실행 파일을 실행하는 단계를 포함한다.
상기 참조정보는 상기 장치 실행 파일의 메모리 맵핑 정보를 포함할 수 있다.
상기 장치 실행 파일을 실행하는 단계 이전에, 상기 참조정보를 이용하여 상기 장치 실행 파일에 해당하는 페이지 리스트(page list)를 생성하는 단계를 더 포함하여 장치 실행 파일의 로드를 방지할 수 있다.
상기 장치 실행 파일을 실행하는 단계는, 상기 페이지 리스트를 페이지 캐시(page cache)에 저장하는 단계와; 저장된 페이지 리스트를 이용하여 상기 장치 실행 파일을 실행하는 단계를 포함할 수 있다.
상기 참조정보가 있는지 여부를 판단하는 단계와, 판단 결과 상기 참조정보가 존재하지 않는 경우, 상기 제2저장부를 초기화하는 메모리 리셋 단계를 수행할 수 있다. 즉, 재 부팅의 경우, 참조정보가 존재하므로 이전에 로드된 장치 실행 파일을 보존하기 위하여, 상기 제2저장부를 초기화하는 메모리 리셋 단계를 생략하는 것이 바람직하다.
부팅 속도를 개선하기 위하여 상기 제2저장부의 처리속도는 상기 제1저장부의 처리속도보다 빠른 것이 바람직하다.
본 발명의 다른 실시예에 따른 전자장치는, 장치 초기화 파일과 장치 실행 파일이 저장되어 있는 비휘발성의 제1저장부와; 파워 오프 시 전원 공급이 유지되는 휘발성의 제2저장부와; 초기 부팅 시, 상기 장치 실행 파일을 상기 제1저장부에서 상기 2저장부로 로드하고 로드된 장치 실행 파일에 대한 참조정보를 생성하고, 재 부팅 시, 상기 장치 초기화 파일을 상기 제1저장부로부터 상기 제2저장부로 로드하여 실행하고 상기 참조정보를 참조하여 상기 제2저장부에 저장되어 있는 상기 장치 실행 파일을 실행하는 제어부를 포함한다.
상기 제2저장부는 디램(dynamic random access memory; DRAM)을 포함할 수 있다.
이상 설명한 바와 같이, 본 발명의 일 실시예에 따르면 부팅의 속도가 개선되는 전자장치 및 그 부팅방법이 제공된다.
또한, 본 발명의 일 실시예에 따르면 부팅 시간을 단축하기 위하여 요구되는 설계 변경이 용이한 전자장치 및 그 부팅방법이 제공된다.
한편, 본 발명의 일 실시예에 따르면 안정성과 신뢰성이 보장되는 전자장치 및 그 부팅방법이 제공된다.
이하, 첨부한 도면을 참고로 하여 본 발명의 실시예들에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예들에 한정되지 않는다. 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조부호를 붙이도록 한다.
도 1은 본 발명의 일 실시예에 따른 전자장치의 제어블럭도이다.
도시된 바와 같이, 전자장치는 제1저장부(10), 제2저장부(20) 및 이들을 제어하는 제어부(30)를 포함한다. 본 발명에 따른 전자장치는 텔레비전, 컴퓨터를 포함하는 영상처리장치와 AV 기기를 포함할 수 있다. 전원이 공급되고, 전자장치를 사용하기 위한 제어신호가 입력되면 전자장치는 시스템의 초기화를 위한 부팅동작을 수행한다. 만약, 전자장치가 영상처리장치라면, 전원 공급 후 영상처리부에 이미지가 표시되기 전까지의 일련의 과정을 통상적으로 부팅 과정으로 볼 수 있다.
제1저장부(10)는 부팅을 위한 장치 초기화 파일 및 장치 실행 파일을 저장하고 있는 비휘발성 메모리로 구현된다. 비휘발성 메모리는 전원이 공급되지 않아도 저장되어 있던 데이터가 손실되지 않는 메모리이다. 본 실시예에 따른 제1저장부(10)는 하드 디스크, 자기 테이프, 플로피 디스크 또는 플래시 메모리 중 적어도 하나를 포함한다. 통상적으로 이러한 하드 디스크나 플래시 메모리는 후술할 제2저장부(20)보다 데이터 처리속도가 느리다. 따라서, 제어부(30)는 제1저장부(10)에 저장되어 있는 데이터를 제2저장부(20)로 로드하여 데이터를 연산, 즉 파일을 실행한다.
본 실시예에 따른 장치 초기화 파일은 부트로드 및 커널을 포함하는 운영체계를 의미하는 것으로, 부팅 과정에서 실행 파일 이전에 로드되는 모든 파일을 가리킨다. 이러한 장치 초기화 파일은 이미 공지되어 있는 일반적인 파일을 포함하므로 본 발명의 권리범위가 본 명세서에 기재되어 있는 파일명이나 파일 종류로 한정되지 않는다. 또한, 장치 실행 파일은 커널의 실행에 의하여 제1저장부(10)에서 제2저장부(20)로 로드되는 어플리케이션 실행 파일이나 이미지 등을 포함한다. 장치 실행 파일은 전자장치에 포함되어 있는 디바이스 의존성(dependence)이 없어 디바이스 초기화에 영향이 없는 파일을 포함한다.
제2저장부(20)는 전원이 공급되지 않으면 저장되어 있던 데이터를 보존하지 못하는 휘발성 메모리로 구현된다. 제2저장부(20)는 전자장치가 구동될 때 제1저장부(10)에 저장되어 있는 데이터가 로드되는 주 기억장치에 해당하며, 제1저장부(10)보다 빠른 데이터 처리속도를 갖는다. 휘발성 메모리의 종류에는 에스램(static random access memory; SRAM)과 디램(dynamic random access memory; DRAM)이 있으며, 본 실시예에 따른 제2저장부(20)는 데이터 보존을 위하여 셀프 리프레시(self-refresh)를 수행하는 디램으로 구현된다. 디램은 데이터 처리속도가 빠르고 값이 싸기 때문에 널리 이용되는 저장매체이다. 디램은 싱글 인라인 패키지(single inline package), 싱글 인라인 메모리 모듈(single inline memory module), 듀얼 인라인 메모리 모듈(dual inline memory module), 램버스 인라인 메 모리 모듈(rambus inline memory module) 등과 같은 다양한 모듈이 존재하며, 클럭신호에 동기하여 데이터를 통신하는 싱글 데이터 레이트 동기 디램(single data rate synchronous dynamic random access memory; SDR-SDRAM)과 더블 데이터 레이트 동기 디램(double data rate synchronous dynamic random access memory; DDR SDRAM) 등이 존재한다.
제어부(30)는 제1저장부(10)와 제2저장부(20) 간의 데이터 로드를 제어하여 부팅을 수행하는 주체에 해당한다. 제어부(30)는 설명의 편의상 하나의 제어블럭으로 도시하였지만, 실질적으로 다양한 기능을 수행하는 제어부들의 집합체에 해당한다. 제어부(30)는 시스템의 전체 기능을 제어하고 데이터 연산을 수행하는 CPU, 저장부(10, 20)들을 직접적으로 제어하며, 데이터의 로드를 조절하는 메모리 컨트롤러, 저장부(10, 20) 및 시스템에 인가되는 전원을 제어하는 전원 컨트롤러를 포함한다. 이러한 복수의 컨트롤러는 실질적으로 하나의 칩으로 병합(merge)되어 구현될 수도 있고, 하드웨어적으로 분리될 수도 있다.
본 실시예에 따른 제어부(30)는 전자장치의 최초 부팅에 해당하는 초기 부팅과, 초기 부팅 이후 이루어지는 재 부팅을 수행하며, 초기 부팅과 재 부팅은 상이한 과정을 통하여 이루어진다. 초기 부팅이란 전자장치에 교류전원 공급되지 않았다가 공급된 후 이루어지는 최초의 부팅을 의미하고, 재 부팅은 사용자에 의하여 파워가 오프된 후, 다시 파워 온 될 때 수행되는 부팅을 의미한다. 즉, 재 부팅은 파워 오프 전에 초기 부팅이 진행되었던 것을 전제로 하며, 재 부팅 이전에는 교류전원이 전자장치에 공급되는 스탠바이 상태 또는 대기 상태가 존재해야 한다. 예컨 대, 전자장치의 콘센트를 뽑았다가 다시 교류전원과 연결한 후의 부팅은 초기 부팅에 해당하고, 리모컨을 이용하여 텔레비전의 온 시킨 후 수행되는 부팅은 재 부팅에 해당한다.
도 2는 도 1의 전자장치에 따른 초기부팅을 설명하기 위한 제어흐름도이고, 도 3은 제2저장부에 저장된 데이터를 도시한 도면이다. 이를 참조하여 초기 부팅을 설명하면 다음과 같다.
우선, 제어부(30)는 전자장치를 사용하기 위한 사용자 제어신호, 즉 파워 온 신호가 수신되면(S10), 전자장치 내 각 디바이스에 공급되는 전원을 체크하는 post(power on self test) 과정을 수행한다.
Post 과정 후, 전자장치를 초기화 하기 위한 장치 초기화 파일(Ⅰ)이 제1저장부(10)에서 제2저장부(20)로 로드 되고, 로드된 장치 초기화 파일이 실행된다(S20). 장치 초기화 파일은 상술한 바와 같이 부트로더와 운영체계를 포함하며, 부트로더가 로드 되어 실행되면, 운영체계의 핵심인 커널에 의한 부팅 과정이 이어진다.
그런 후, 제어부(30)는 제1저장부(10)에 저장되어 있는 장치 실행 파일을 제2저장부(20)로 로드 하고(S30), 재 부팅 시 참조할 참조정보(Ⅱ, Ⅲ)를 생성한다(S40).
제어부(30)는 장치 실행 파일을 제2저장부(20)로 로드하기 위하여 파일을 오픈할 때, 부트 메모리 할당자를 이용하여 제2저장부(20)의 특정 영역에 새로운 데이터 영역을 할당한다. 새로운 데이터 영역에는 초기 부팅이 이루어졌다는 부팅 마 크, 로드된 장치 실행 파일명, 장치 실행 파일에 대응하는 매핑 어드레스가 생성되고, 재 부팅 시 생성될 페이지 리스트(page list)를 위한 저장 공간이 마련된다. 제어부(30)는 빠른 검색이 가능하도록 참조정보(Ⅱ)를 새로운 데이터 영역에 트리(tree) 구조로 생성한다.
또한, 제어부(30)는 장치 실행 파일이 제2저장부(20)에 로드되면, 제2저장부(20)의 데이터 구조에 대한 메모리 맵(Ⅲ)을 생성한다. 메모리 맵(Ⅲ)은 장치 실행 파일의 데이터 블록에 해당하는 페이지(page)의 구조를 의미하는 것으로 메모리 레이아웃에 해당한다. 본 실시예에 따른 참조정보(Ⅱ, Ⅲ)는 새로운 데이터 영역에 생성되는 부팅 마크, 장치 실행 파일명, 매핑 어드레스와 메모리 맵을 포함하며, 이러한 참조정보(Ⅱ, Ⅲ)는 재 부팅 시 장치 실행 파일을 제1저장부(10)에서 제2저장부(20)로 로드 하지 않아도 장치 실행 파일을 호출할 수 있는 참조 자료가 된다.
제어부(30)는 일련의 나머지 부팅 과정을 마무리하고, 사용자에 의하여 전자장치의 사용이 종료되면, 파워를 오프한다(S50).
파워가 오프되더라도 제2저장부(20)에는 데이터의 보존을 위하여 전원 공급 유지되며, 제2저장부(20)는 셀프 리프레시를 수행한다. 제2저장부(20)에 로드된 장치 실행 파일은 파워가 오프 되더라도 삭제되지 않고 남아 있게 된다.
도 4 내지 6은 본 실시예에 따른 전자장치의 재 부팅을 설명하기 위한 도면이다. 도 4는 재 부팅의 과정을 설명하기 위한 제어 흐름도이고, 도 5는 재 부팅 시 생성되는 페이지 리스트를 설명하기 위한 도면이고, 도 6은 재 부팅 시 생성되는 페이지 캐시를 설명하기 위한 도면이다.
초기 부팅이 수행된 후, 다시 파워가 온 되면(S110), 초기 부팅과 같이 장치 초기화 파일이 로드되고 실행된다(S120).
커널이 실행되면, 제어부(30)는 새로운 데이터 영역에 부팅 마크가 존재하는지 여부를 판단하고(S130), 판단 결과에 따라 재 부팅을 수행할지 여부를 결정한다. 부팅 마크가 존재하지 않는 경우, 제어부(30)는 초기 부팅이 이루어지지 않은 것으로 판단하고 메모리 리셋을 수행하고(S141), 도 2의 S20 이후의 초기 부팅을 수행한다. 메모리 리셋은 부팅 과정에서 커널에 의하여 메모리가 초기화 되는 과정을 의미하며, 메모리가 리셋되면 메모리 맵 정보가 초기화되어 제2저장부(20)에 저장되어 있던 모든 데이터가 지워진다.
한편, 부팅 마크가 존재하는 경우, 제어부(30)는 재 부팅을 위하여 통상적으로 수행하는 메모리 리셋 단계를 생략한다(S140). 즉, 메모리 리셋 단계를 생략함으로써 제2저장부(20)에 저장되어 있던 참조정보와 장치 실행 파일에 해당하는 페이지가 보존된다.
메모리 리셋 단계를 생략한 제어부(30)는 참조정보(Ⅱ, Ⅲ)를 이용하여 페이지 리스트를 생성한다(S150). 도 5에 도시된 바와 같이, 메모리 맵(Ⅲ)은 데이터 블록인 페이지(Ⅳ)에 대한 정보를 포함하며, 메모리 맵(Ⅲ)에 의하여 페이지의 내용을 확인할 수 있다. 제어부(30)는 특정 장치 실행 파일의 매핑 어드레스에 대응하는 페이지들을 매모리 맵(Ⅲ)을 이용하여 검색하고, 검색된 페이지들의 리스트를 생성한다. 즉, 초기 부팅 과정에서 참조정보(Ⅱ) 생성시 마련해 두었던 페이지 리스트 저장 공간에 페이지 (#0, #5, #7, #..)를 링크시킴으로써 특정 장치 실행 파 일에 대한 맵핑 정보를 생성한다.
그런 후, 장치 실행 파일의 실행을 위하여 장치 실행 파일을 오픈해야 할 경우, 제어부(30)는 도 6과 같이 장치 실행 파일명이 참조정보(Ⅱ)에 존재하는지 파악하고, 파악된 장치 실행 파일에 대응하는 페이지 리스트를 페이지 캐시(Ⅴ)에 저장한다(S160). 페이지 캐시란 디스크 캐시로 명명되기도 하며, 데이터 리드 속도를 향상시키기 위하여 램에 마련되는 투과성 버퍼(transparent buffer)를 의미한다. 페이지 캐시는 운영체계에 의하여 생성되며 하드 디스크나 플래시 메모리 대신 램 접근성을 이용하여 페이지를 빠르게 리드한다. 본 실시예에 따른 페이지 캐시는 트리 구조를 갖는 페이지 캐시 트리이며, 데이터가 트리 구조를 갖기 때문에 데이터의 검색 속도가 빠른 장점을 갖는다.
제어부(30)는 장치 실행 파일을 실행하기 위하여 제1저장부(10)로부터 데이터를 로드하지 않고, 페이지 캐시 트리(Ⅴ)에 저장되어 있는 페이지 리스트를 이용하여 데이터를 리드한다(S170). 즉, 특정 장치 실행 파일의 로드가 요구될 경우, 제어부(30)는 페이지 캐시 트리(Ⅴ)를 검색하여 페이지 캐시 트리(Ⅴ)에 페이지 리스트가 존재하는지 여부를 판단하고, 페이지 리스트가 존재하는 경우 페이지 리스트에 링크되어 있는 페이지를 리드하면 된다. 제어부(30)는 리드한 페이지를 이용하여 장치 실행 파일을 실행한다.
재 부팅의 경우, 초기 부팅과 비교하여 장치 초기화 파일만을 로드 하고 장치 실행 파일은 제2저장부(20)에 저장되어 있는 것을 이용하기 때문에 장치 실행 파일을 로드 하는데 소요되는 시간을 줄일 수 있고, 결과적으로 부팅 시간이 단축 된다. 제2저장부(20)에서 하드 디스크나 플래시 메모리 같은 제1저장부(10)로 억세스 하는 억세스 카운트를 비교함으로써 재 부팅과 초기 부팅 간의 데이터 로드 정도를 파악할 수 있다.
종래, 최초 부팅이 수행된 이후 이루어지는 부팅에서 부팅 시간을 단축하기 위하여 파워가 오프되기 전의 이미지를 백업해 두는 기술이 사용되었다. 이러한 부팅의 경우, 파워 오프 전의 상태만을 복원하여 시스템 초기화를 수행하기 때문에 최초 부팅 보다 속도가 향상되는 효과는 있지만 디바이스들의 초기화가 이루어지지 않기 때문에 부팅의 안정성(stability) 및 신뢰성은 낮아진다. 예컨대, 파워 오프 순간에 데이터가 손실 또는 변경되거나, 이미지를 복원하는 과정에서 오류 및 데이터 변경이 발생할 수 있으나 이러한 특수 상황에 대비할 수 없다.
한편, 본 실시예에 따를 경우, 부팅의 속도는 개선하면서 부팅 때 마다 장치 초기화 파일에 의한 초기화 과정이 진행되기 때문에 안정적인 부팅이 가능하고, 부팅의 신뢰성이 향상된다.
또한, 기존의 이미지를 백업하는 기술의 경우 시스템이 포함하는 하드웨어 디바이스 별로 어플리케이션의 수정이 수반되어야 하므로 재 부팅을 위한 설계에 번거로움 및 어려움이 따른다. 하지만, 본 발명에 따를 경우 소프트웨어적으로 커널의 간단한 변경만으로 부팅 속도가 개선되는 효과를 얻을 수 있다.
또한, 전자장치의 장치 실행 파일이 리눅스 기반으로 실행된다면 커널 변경을 위한 소스가 개방되어 있기 때문에 설계 변경이 더욱 용이해진다.
비록 본 발명의 몇몇 실시예들이 도시되고 설명되었지만, 본 발명이 속하는 기술분야의 통상의 지식을 가진 당업자라면 본 발명의 원칙이나 정신에서 벗어나지 않으면서 본 실시예를 변형할 수 있음을 알 수 있을 것이다. 발명의 범위는 첨부된 청구항과 그 균등물에 의해 정해질 것이다.
도 1은 본 발명의 일 실시예에 따른 전자장치의 제어블럭도이고,
도 2는 도 1의 전자장치에 따른 초기부팅을 설명하기 위한 제어흐름도이고,
도 3은 도 1의 전자장치에 따른 초기부팅을 설명하기 위한 제2저장부이고,
도 4는 도 1의 전자장치에 따른 재 부팅을 설명하기 위한 제어흐름도이고,
도 5는 도 1의 전자장치에 재 부팅 시, 페이지 리스트 생성을 설명하기 위한 제2저장부이고,
도 6은 도 1의 전자장치에 따른 재 부팅 시, 페이지 캐시 저장을 설명하기 위한 제2저장부이다.
* 도면의 주요 부분에 대한 부호의 설명 *
10 : 제1저장부 20 : 제2저장부
30 : 제어부

Claims (13)

  1. 장치 초기화 파일과 장치 실행 파일이 저장되어 있는 비휘발성의 제1저장부와, 휘발성의 제2저장부를 포함하는 전자장치의 부팅방법에 있어서,
    초기 부팅 시, 상기 장치 실행 파일을 상기 제1저장부에서 상기 제2저장부로 로드하는 단계와;
    로드된 장치 실행 파일에 대한 참조정보를 생성하는 단계와;
    파워 오프 시, 상기 제2저장부의 전원 공급을 유지하는 단계와;
    재 부팅 시, 상기 장치 초기화 파일을 상기 제1저장부로부터 상기 제2저장부로 로드하여 실행하는 단계와;
    상기 참조정보를 이용하여 상기 장치 실행 파일의 페이지 정보에 해당하는 페이지 리스트(page list)를 생성하며, 상기 페이지 리스트를 페이지 캐시(page cache)에 저장하는 단계와;
    상기 참조정보를 참조하고, 상기 제2저장부에 저장되어 있는 상기 장치 실행 파일을 상기 페이지 리스트를 이용하여 실행하는 단계를 포함하는 것을 특징으로 하는 전자장치의 부팅방법.
  2. 제1항에 있어서,
    상기 참조정보는 상기 장치 실행 파일의 메모리 맵핑 정보를 포함하는 것을 특징으로 하는 전자장치의 부팅방법.
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    상기 참조정보가 있는지 여부를 판단하는 단계와,
    판단 결과 상기 참조정보가 존재하지 않는 경우, 상기 제2저장부를 초기화하는 메모리 리셋 단계를 수행하는 것을 특징으로 하는 전자장치의 부팅방법.
  6. 제1항에 있어서,
    상기 제2저장부의 처리속도는 상기 제1저장부의 처리속도보다 빠른 것을 특징으로 하는 전자장치의 부팅방법.
  7. 전자장치에 있어서,
    장치 초기화 파일과 장치 실행 파일이 저장되어 있는 비휘발성의 제1저장부와;
    파워 오프 시 전원 공급이 유지되는 휘발성의 제2저장부와;
    초기 부팅 시, 상기 장치 실행 파일을 상기 제1저장부에서 상기 2저장부로 로드하고 로드된 장치 실행 파일에 대한 참조정보를 생성하고, 재 부팅 시, 상기 장치 초기화 파일을 상기 제1저장부로부터 상기 제2저장부로 로드하여 실행하고 상기 참조정보를 이용하여 상기 장치 실행 파일의 페이지 정보에 해당하는 페이지 리스트(page list)를 생성하며, 상기 페이지 리스트를 페이지 캐시(page cache)에 저장하고, 상기 참조정보를 참조하고, 상기 페이지 리스트를 이용하여 상기 제2저장부에 저장되어 있는 상기 장치 실행 파일을 실행하는 제어부를 포함하는 것을 특징으로 하는 전자장치.
  8. 제7항에 있어서,
    상기 참조정보는 상기 장치 실행 파일의 메모리 맵핑 정보를 포함하는 것을 특징으로 하는 전자장치.
  9. 삭제
  10. 삭제
  11. 제7항에 있어서,
    상기 제어부는 상기 참조정보가 있는지 여부를 판단하고, 판단 결과 상기 참조정보가 존재하지 않는 경우, 상기 제2저장부를 초기화하는 메모리 리셋을 수행하는 것을 특징으로 하는 전자장치.
  12. 제7항에 있어서,
    상기 제2저장부의 처리속도는 상기 제1저장부의 처리속도보다 빠른 것을 특징으로 하는 전자장치.
  13. 제7항에 있어서,
    상기 제2저장부는 디램(dynamic random access memory; DRAM)을 포함하는 것을 특징으로 하는 전자장치.
KR1020090046450A 2009-05-27 2009-05-27 전자장치 및 그 부팅방법 KR101582919B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020090046450A KR101582919B1 (ko) 2009-05-27 2009-05-27 전자장치 및 그 부팅방법
EP09176732A EP2256625A1 (en) 2009-05-27 2009-11-23 Electronic apparatus and booting method of the same
US12/623,764 US8386760B2 (en) 2009-05-27 2009-11-23 Electronic apparatus and booting method of the same
JP2010087365A JP5587654B2 (ja) 2009-05-27 2010-04-05 電子装置及びそのブーティング方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090046450A KR101582919B1 (ko) 2009-05-27 2009-05-27 전자장치 및 그 부팅방법

Publications (2)

Publication Number Publication Date
KR20100128033A KR20100128033A (ko) 2010-12-07
KR101582919B1 true KR101582919B1 (ko) 2016-01-07

Family

ID=41394060

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090046450A KR101582919B1 (ko) 2009-05-27 2009-05-27 전자장치 및 그 부팅방법

Country Status (4)

Country Link
US (1) US8386760B2 (ko)
EP (1) EP2256625A1 (ko)
JP (1) JP5587654B2 (ko)
KR (1) KR101582919B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103197933A (zh) * 2012-01-06 2013-07-10 华硕电脑股份有限公司 计算机及其快速启动方法
KR20140007990A (ko) 2012-07-09 2014-01-21 삼성전자주식회사 불휘발성 램을 포함하는 사용자 장치 및 그것의 데이터 관리 방법
JP2016535328A (ja) * 2013-09-26 2016-11-10 ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. システムの初期化前のデバイスの構成
KR102443069B1 (ko) 2015-08-12 2022-09-14 삼성전자주식회사 어플리케이션을 실행하기 위한 장치 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050223209A1 (en) 2004-03-31 2005-10-06 Giga-Byte Technology Co., Ltd. Apparatus for fast booting computer and method for the same

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5430858A (en) 1993-11-24 1995-07-04 Northrop Grumman Corporation Method for RAM conservation employing a RAM disk area non-sequential addresses on arranged order basis to access executable procedures
JPH09282169A (ja) * 1996-04-15 1997-10-31 Nec Eng Ltd 入出力データ管理方式
KR20010085133A (ko) * 2000-02-29 2001-09-07 서평원 메모리 전원 제어방법
GB2386456B (en) 2001-01-08 2005-03-09 Hyperdrive Computers Ltd Computer system
JP2003131880A (ja) * 2001-10-19 2003-05-09 Casio Comput Co Ltd 情報処理装置、プログラム起動方法及び起動制御プログラム
KR100494499B1 (ko) * 2002-12-12 2005-06-10 주식회사 안철수연구소 실행중인 파일에 대한 실시간 데이터 수정 방법 및 이를이용한 바이러스 치료방법
JP2005011120A (ja) * 2003-06-19 2005-01-13 Sony Corp 情報処理方法及び装置
JP2006126987A (ja) * 2004-10-27 2006-05-18 Ricoh Co Ltd 画像処理装置
US20060136765A1 (en) * 2004-12-03 2006-06-22 Poisner David L Prevention of data loss due to power failure
KR100776112B1 (ko) * 2006-02-15 2007-11-15 삼성전자주식회사 휴대단말기의 부팅 시간 단축방법
WO2008048581A1 (en) 2006-10-16 2008-04-24 Draeger Medical Systems, Inc. A processing device operation initialization system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050223209A1 (en) 2004-03-31 2005-10-06 Giga-Byte Technology Co., Ltd. Apparatus for fast booting computer and method for the same

Also Published As

Publication number Publication date
JP5587654B2 (ja) 2014-09-10
US8386760B2 (en) 2013-02-26
JP2010277578A (ja) 2010-12-09
EP2256625A1 (en) 2010-12-01
KR20100128033A (ko) 2010-12-07
US20100306520A1 (en) 2010-12-02

Similar Documents

Publication Publication Date Title
CN100394391C (zh) 用于在计算机系统上存储数据的系统和方法
US7702894B2 (en) System and method for loading programs from HDD independent of operating system
US8589730B2 (en) Handling errors during device bootup from a non-volatile memory
US7979687B2 (en) Quick start
US20120260027A1 (en) Device bootup from a nand-type non-volatile memory
KR101846612B1 (ko) 부트 데이터 로드
US20140304497A1 (en) Electronic device having function of booting operating system by bootloader, method of performing the same function, and storage medium
JP2010282252A (ja) プログラム、制御方法、並びに制御装置
US20030233533A1 (en) Boot from cache
JP2008276555A (ja) 情報処理装置、およびファームウェア更新方法
TW201248392A (en) System and method for recovering data of a NVRAM
US20120060023A1 (en) Methods for booting an operating system using non-volatile memory
CN109271206B (zh) 一种异常现场的内存压缩和保存方法
JPWO2013088818A1 (ja) 仮想計算機システム、仮想化機構、及びデータ管理方法
KR101582919B1 (ko) 전자장치 및 그 부팅방법
WO2011061948A1 (ja) プログラム、制御方法、並びに制御装置
CN111796882A (zh) 电子设备系统处理方法、装置及电子设备
US10346234B2 (en) Information processing system including physical memory, flag storage unit, recording device and saving device, information processing apparatus, information processing method, and computer-readable non-transitory storage medium
US10936045B2 (en) Update memory management information to boot an electronic device from a reduced power mode
KR20080057688A (ko) 비휘발성 메모리를 이용한 운영체계 부팅 방법
US8745363B2 (en) Bootable volatile memory device, memory module and processing system comprising bootable volatile memory device, and method of booting processing system using bootable volatile memory device
US6971003B1 (en) Method and apparatus for minimizing option ROM BIOS code
US20210055988A1 (en) Operating method of memory controller, memory controller, and storage device
JP4735765B2 (ja) Linuxプログラム起動システム
US20150317181A1 (en) Operating system switching method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
LAPS Lapse due to unpaid annual fee