KR100746032B1 - 마스터 부트 레코드를 관리하는 저장 매체 및 상기 저장매체를 이용한 컴퓨터 시스템의 부팅 방법 - Google Patents

마스터 부트 레코드를 관리하는 저장 매체 및 상기 저장매체를 이용한 컴퓨터 시스템의 부팅 방법 Download PDF

Info

Publication number
KR100746032B1
KR100746032B1 KR1020060001019A KR20060001019A KR100746032B1 KR 100746032 B1 KR100746032 B1 KR 100746032B1 KR 1020060001019 A KR1020060001019 A KR 1020060001019A KR 20060001019 A KR20060001019 A KR 20060001019A KR 100746032 B1 KR100746032 B1 KR 100746032B1
Authority
KR
South Korea
Prior art keywords
boot record
master boot
stored
data
storage area
Prior art date
Application number
KR1020060001019A
Other languages
English (en)
Other versions
KR20070073290A (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 KR1020060001019A priority Critical patent/KR100746032B1/ko
Priority to US11/590,817 priority patent/US8219793B2/en
Priority to CNB2006101642839A priority patent/CN100476731C/zh
Publication of KR20070073290A publication Critical patent/KR20070073290A/ko
Application granted granted Critical
Publication of KR100746032B1 publication Critical patent/KR100746032B1/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
    • G06F9/4406Loading of operating system
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47GHOUSEHOLD OR TABLE EQUIPMENT
    • A47G23/00Other table equipment
    • A47G23/02Glass or bottle holders
    • A47G23/0208Glass or bottle holders for drinking-glasses, plastic cups, or the like
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65DCONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
    • B65D71/00Bundles of articles held together by packaging elements for convenience of storage or transport, e.g. portable segregating carrier for plural receptacles such as beer cans or pop bottles; Bales of material
    • B65D71/40Bundles of articles held together by packaging elements for convenience of storage or transport, e.g. portable segregating carrier for plural receptacles such as beer cans or pop bottles; Bales of material comprising a plurality of articles held together only partially by packaging elements formed by folding a blank or several blanks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65DCONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
    • B65D71/00Bundles of articles held together by packaging elements for convenience of storage or transport, e.g. portable segregating carrier for plural receptacles such as beer cans or pop bottles; Bales of material
    • B65D71/70Trays provided with projections or recesses in order to assemble multiple articles, e.g. intermediate elements for stacking

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)
  • Mechanical Engineering (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 마스터 부트 레코드를 관리하는 저장 매체 및 상기 저장 매체를 이용한 컴퓨터 시스템의 부팅 방법에 관한 것으로서, 본 발명의 실시에 따른 저장 매체는 현재 수행되는 부팅과 관련된 마스터 부트 레코드가 저장된 마스터 부트 레코드 섹터 영역과, 이전의 변경된 마스터 부트 레코드가 저장된 데이터 저장 영역 및 호스트 장치와 통신을 수행하고 상기 마스터 부트 레코드 섹터 영역 및 상기 데이터 저장 영역을 관리하는 펌웨어를 포함하는데, 상기 마스터 부트 레코드 섹터 영역에 저장된 마스터 부트 레코드에 에러가 발생된 경우, 상기 펌웨어가 상기 데이터 저장 영역으로부터 특정한 마스터 부트 레코드를 선택하여 상기 마스터 부트 레코드 섹터 영역에 저장한다.
마스터 부트 레코드(Master Boot Record), 부팅(booting)

Description

마스터 부트 레코드를 관리하는 저장 매체 및 상기 저장 매체를 이용한 컴퓨터 시스템의 부팅 방법{Storage medium for managing master boot record and method for booting of computer system using the storage medium}
도 1은 종래 컴퓨터 시스템의 구성을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 컴퓨터 시스템을 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따라 마스터 부트 레코드를 관리하기 위한 모듈의 구성을 나타내는 예시도이다.
도 4는 본 발명의 일 실시예에 따른 마스터 부트 레코드를 저장하는 과정을 나타내는 플로우 차트이다.
도 5는 본 발명의 일 실시예에 따른 컴퓨터 시스템의 부팅 과정을 나타내는 플로투 차트이다.
< 도면의 주요 부분에 대한 설명 >
210: 호스트 장치
220: 저장 매체
230: 펌웨어
240: MBR 섹터 영역
250: 제2 데이터 저장 영역
260: 제1데이터 저장 영역
본 발명은 마스터 부트 레코드를 이용한 컴퓨터 시스템의 부팅에 관한 발명으로서, 보다 상세하게는 변경되는 마스터 부트 레코드의 데이터들을 저장함으로써 언제라도 원하는 시기의 마스터 부트 레코드를 복구하여 부팅 과정을 수행할 수 있는 저장 매체에 관한 것이다.
일반적으로 컴퓨터 시스템의 하드디스크 드라이브(HDD)는 제로 어드레스로부터 최대 어드레스까지의 기억 어드레스로 특징화되는 것으로, 하드디스크 드라이브는 하나 이상의 실린더 및 마스터 부트 레코드(Mater Boot Record; MBR)를 포함하고 있다. 이 때, 마스터 부트 레코드는 하드디스크 드라이브를 구성하는 하나의 섹터(sector)에 할당되며, 부팅하는 방법 및 모든 파일이 어느 섹터에 배정되어 있는지를 컴퓨터 시스템에 알리는 역할을 한다. 또한, 마스터 부트 레코드는 모든 파일, 데이터에 대한 위치 및 하드디스크 드라이브의 위치에 대한 정보를 갖는 파일 할당표(FAT)를 포함하고 있다.
한편, 컴퓨터 시스템은 위와 같은 마스터 부트 레코드를 이용하여 부팅 과정을 수행할 수 있는데, 도 1에서는 상기 부팅 과정을 수행하기 위한 종래 컴퓨터 시스템의 구성을 나타내고 있다.
도 1을 참조하면, 종래의 컴퓨터 시스템은 컴퓨터 시스템의 기본 동작에 관 련된 바이오스 데이터를 저장하고 있는 플래쉬 메모리(140)와, 플래쉬 메모리(140)로부터 바이오스 데이터를 읽어와 시스템을 부팅시키는 중앙 처리 장치(110)와, 중앙 처리 장치(110)에 의하여 동작하며 플래쉬 메모리(140)에 읽기/쓰기 작업을 수행하는 컨트롤러(120)와 데이터를 저장하며 부팅을 위한 부트 레코드가 기록된 하드 디스크 드라이브(190)와, 중앙 처리 장치(110)에서 명령을 받아 하드디스크 드라이브(190)를 구동하기 위한 제어 신호를 출력하는 하드디스크 컨트롤러(180)를 포함한다.
상기와 같은 구성에 의한 종래 컴퓨터 시스템의 부팅 과정을 설명하면 다음과 같다.
컴퓨터 시스템에 전원이 공급되면 중앙 처리 장치(110)는 어드레스 신호를 출력하여 컨트롤러(120)를 인에이블시킨다. 중앙 처리 장치(110)에 의해 인에이블된 컨트롤러(120)는 플래쉬 메모리(140)의 어드레스 신호와 데이터를 읽기 위한 롬 선택신호를 액티브시킨다. 이에 따라 플래쉬 메모리(140) 내의 롬 바이오스가 POST(Power On Self Test) 루틴을 실행시켜 컴퓨터 시스템의 하드웨어를 점검하고 하드디스크 드라이브(190)의 상태를 파악한다. 롬 바이오스가 하드디스크 드라이브(190)의 마스터 부트 레코드를 하드디스크 컨트롤러(180)를 통해 읽어 들이게 되는데, 만일 이 부분을 읽어 들이지 못하면 'Drive Failure' 혹은 이와 비슷한 메시지를 출력하여 부팅 오류를 표시한다. 플래쉬 메모리(140) 내의 롬 바이오스가 하드디스크 드라이브(190)의 마스터 부트 레코드를 읽어 들여 이상이 없는 경우 컨트롤러(120)는 시스템 버스(150)를 통하여 읽어 들인 바이오스 데이터를 중앙 처리 장 치(110)에 전달하여 지정된 부팅 순서에 따라 자동 부팅된다.
그런데, 이러한 종래 컴퓨터 시스템에서의 부팅 과정에서 하드디스크 드라이브(190)의 마스터 부트 레코드가 바이러스 등에 의해 삭제 또는 손상되어 더 이상 부팅이 진행되지 않는 경우가 발생할 수 있는데, 이러한 경우 사용자는 별도의 복구 툴(tool)을 이용하거나 전문 업체에 고가의 비용을 지불하여 복구를 의뢰해야 하는 불편함이 있다.
본 발명은 하드디스크 드라이브의 저장 공간을 이용하여 변경되는 마스터 부트 레코드의 데이터들을 저장함으로써 언제라도 원하는 시기의 마스터 부트 레코드를 복구하여 부팅 과정을 수행하도록 하는 것을 목적으로 한다.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 저장 매체는 현재 수행되는 부팅과 관련된 마스터 부트 레코드가 저장된 마스터 부트 레코드 섹터 영역과, 이전의 변경된 마스터 부트 레코드가 저장된 데이터 저장 영역 및 호스트 장치와 통신을 수행하고 상기 마스터 부트 레코드 섹터 영역 및 상기 데이터 저장 영역을 관리하는 펌웨어를 포함하는데, 상기 마스터 부트 레코드 섹터 영역에 저장된 마스터 부트 레코드에 에러가 발생된 경우, 상기 펌웨어가 상기 데이터 저장 영역 으로부터 특정한 마스터 부트 레코드를 선택하여 상기 마스터 부트 레코드 섹터 영역에 저장한다.
또한, 상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 컴퓨터 시스템의 부팅 방법은 호스트 장치에 의해 현재 수행되는 부팅과 관련된 마스터 부트 레코드가 저장된 마스터 부트 레코드 섹터 영역으로부터 마스터 부트 레코드 데이터를 추출하는 (a) 단계와, 상기 추출한 마스터 부트 레코드 데이터에 에러가 발생된 경우 이전의 변경된 마스터 부트 레코드가 저장된 데이터 저장 영역으로부터 특정한 마스터 부트 레코드 데이터를 선택하는 (b) 단계 및 상기 (b) 단계에서 추출한 마스터 부트 레코드 데이터를 이용하여 부팅을 수행하는 (c) 단계를 포함한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
이하, 본 발명의 실시예들에 의한 마스터 부트 레코드를 관리하는 저장 매체 및 상기 저장 매체를 이용한 컴퓨터 시스템의 부팅 방법을 설명하기 위한 블록도 또는 처리 흐름도에 대한 도면들을 참고하여 본 발명에 대해 설명하도록 한다. 이 때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑제되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행예들에서는 블록들에서 언급된 기능들이 순서를 벗어나 서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
도 2는 본 발명의 일 실시예에 따른 컴퓨터 시스템을 나타내는 블록도이다.
도 2를 참조하면, 본 발명에 따른 컴퓨터 시스템(200)은 호스트 장치(210)와 저장 매체(220)를 포함하고, 저장 매체(220)는 펌웨어(230)와, 현재 수행되는 부팅과 관련된 마스터 부트 레코드(master boot record, 이하 'MBR' 이라고 칭함)가 저장된 MBR 섹터 영역(240)과, 일반적인 데이터들이 저장된 제1 데이터 저장 영역(260) 및 이전의 변경된 MBR 데이터가 저장된 제2 데이터 저장 영역(250)을 포함한다.
호스트 장치(210)는 중앙 처리 장치, 플래쉬 메모리와 같은 비휘발성 메모리, 저장 매체(220)를 제어하는 컨트롤러를 포함하는데, 상기 비휘발성 메모리에는 컴퓨터 시스템(200)의 기본 동작에 관련된 바이오스 데이터가 저장되어 있다. 이 때, 저장 매체(220)에 저장된 데이터들을 이용하여 디지털 정보를 처리할 수 있는 기능을 갖는 장치라면 본 발명에서의 호스트 장치(210)로 해석될 수 있다.
펌웨어(230)는 호스트 장치(210)와의 통신에 의해 저장 매체(220)를 구성하는 각 영역을 관리하는데, 여기에서의 '관리'라 함은 호스트 장치(210)의 요청에 의해 제1 데이터 저장 영역(260)으로부터 데이터를 추출하거나 또는 제1 데이터 저장 영역(260)에 데이터를 저장하는 것을 의미한다. 또한 여기에서의 '관리'라 함은 컴퓨터 시스템(200)의 부팅 시에 MBR 섹터 영역(240) 또는 제2 데이터 저장 영역 (250)으로부터 MBR 데이터를 추출하여 호스트 장치(210)로 제공하는 것을 포함한다.
만일 사용자가 컴퓨터 시스템(200)의 호스트 장치(210)를 기동시키면, 호스트 장치(210)의 중앙 처리 장치에 의해 비휘발성 메모리 내의 롬 바이오스가 POST(Power On Self Test) 루틴을 실행시켜 컴퓨터 시스템(200)의 하드웨어를 점검하고 저장 매체(220)의 상태를 파악한다. 이 때, 호스트 장치(210)는 펌웨어(230)와 통신을 수행하게 된다.
상기 롬 바이오스가 저장 매체(220)를 제어하는 컨트롤러를 통하여 저장 매체(220)의 MBR 섹터 영역(240)에 저장된 마스터 부트 레코드를 읽어 들이게 된다. 이 때, 만일 MBR 섹터 영역(240)에 저장된 MBR 데이터가 바이러스에 감염이 되어 있었다면 부팅 오류가 발생할 수 있게 된다.
따라서, 이러한 경우에는 호스트 장치(210)로부터의 명령 혹은 펌웨어(230)의 제어에 의해 제2 데이터 저장 영역(250)에 저장되어 있는 이전의 MBR 데이터가 추출되어 호스트 장치(210)로 제공됨으로써 컴퓨터 시스템(200)의 부팅 동작이 계속될 수 있게 되는 것이다.
이 때, 제2 데이터 저장 영역(250)은 바람직하게는 펌웨어(230)에 의해서만 억세스가 가능하며, 이전에 변경되어 제2 데이터 저장 영역(250)에 저장된 MBR의 개수에 대한 정보가 저장될 수 있다. 또한, 제2 데이터 저장 영역(250)에 저장된 MBR 들은 시간적 순서에 따라 링크 관계를 형성하는 데이터 구조를 형성할 수도 있다.
또한, MBR 섹터 영역(240)에 저장된 MBR이 바이러스에 감염된 경우 호스트 장치(210)는 디스플레이 화면(미도시됨)을 통하여 사용자에게 부팅과정에서 오류가 발생하였음을 알리게 된다. 이 경우 호스트 장치(210)는 저장 매체(220)의 제2 데이터 저장 영역(250)에 저장된 이전의 MBR 목록을 상기 디스플레이 화면에 디스플레이하여 사용자로 하여금 가장 최근 또는 특정한 시기에서의 MBR을 선택하게 할 수 있다. 사용자가 특정한 MBR을 선택하면 해당 MBR이 MBR 섹터 영역(240)에 저장되고, 호스트 장치(210)가 MBR 섹터 영역(240)을 억세스함으로써 컴퓨터 시스템(200)의 부팅이 진행될 수 있다.
도 3은 본 발명의 일 실시예에 따라 마스터 부트 레코드를 관리하기 위한 모듈의 구성을 나타내는 예시도이다.
도 3을 참조하면, 본 발명에 따라 MBR을 관리하기 위한 모듈은 시스템 바이오스 모듈(310), 하드디스크 컨트롤 모듈(320) 그리고 하드디스크 펌웨어 모듈(330)을 포함한다.
이 때, 본 실시예에서 사용되는 '모듈'이라는 용어는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소를 의미하며, 모듈은 어떤 역할들을 수행한다. 그렇지만 모듈은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. 모듈은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 모듈은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴 들, 프로그램 코드의 세그먼트들, 드라버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 모듈들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 모듈들로 결합되거나 추가적인 구성요소들과 모듈들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 모듈들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
시스템 바이오스 모듈(310)은 호스트 장치(210)의 비휘발성 메모리에 탑재될 수 있으며 하드디스크 컨트롤 모듈(320)에게 요청하여 하드디스크(340)에 저장된 MBR을 읽어오도록 한다. 또한, 시스템 바이오스 모듈(310)은 하드디스크 컨트롤 모듈(320)에게 요청하여 하드디스크(340)에 저장된 MBR의 개수에 대한 정보를 요청할 수도 있다.
하드디스크 컨트롤 모듈(320)은 호스트 장치(210)의 중앙 처리 장치로부터 명령을 받아 하드디스크(340)를 구동하기 위한 제어 신호를 출력하고, 시스템 바이오스 모듈(310)의 요청에 따라 하드디스크 펌웨어 모듈(330)로 하여금 하드디스크(340)에 저장된 MBR을 읽어오도록 한다.
하드디스크 펌웨어 모듈(330)은 하드디스크(340)를 관리하며 도 2에 도시된 펌웨어(230)에 대응한다.
하드디스크(340)는 데이터를 저장하며 특히 도 2에서 도시된 MBR 섹터 영역(240), 제1 데이터 저장 영역(260) 그리고 제2 데이터 저장 영역(250)을 포함한다.
도 3에서, 시스템 바이오스 모듈(310)과 하드디스크 컨트롤 모듈(320)은 호 스트 장치(210)에 탑재될 수 있고, 하드디스크 펌웨어 모듈(330)과 하드디스크(340)는 도 2에서 도시한 저장 매체(220)를 구성할 수 있다.
만일 하드디스크(340)의 MBR 섹터 영역(240)에 저장되어 있는 MBR이 바이러스에 감염된 경우에, 시스템 바이오스 모듈(310)은 사용자에 의해 임의로 선택되거나 또는 이미 정해진 방법에 따라 하드디스크 펌웨어 모듈(330)로 하여금 특정 시기에 저장된 MBR을 제2 데이터 저장 영역(250)으로부터 추출하여 MBR 섹터 영역(240)에 복구시키도록 할 수 있다.
또한, 하드디스크 펌웨어 모듈(330)은 MBR 섹터 영역(240)에 저장된 MBR의 내용이 변경될 때마다 제2 데이터 저장 영역(250)에 변경된 MBR을 순차적으로 저장할 수 있으며, 호스트 장치(210)로부터의 요청에 따라 제2 데이터 저장 영역(250)에 저장된 MBR의 개수에 대한 정보를 호스트 장치(210)로 제공할 수 있다.
도 4는 본 발명의 일 실시예에 따른 마스터 부트 레코드를 저장하는 과정을 나타내는 플로우 차트이다.
우선, 하드디스크 펌웨어 모듈(330)은 컴퓨터 시스템(200)의 초기화 또는 리셋(reset) 동작이 수행될 때마다 제2 데이터 저장 영역(250)으로부터 가장 최근에 저장된 MBR 데이터(MBR_1)를 읽고(S410), MBR 섹터 영역(240)으로부터 MBR 데이터(MBR_2)를 읽는다(S420).
하드디스크 펌웨어 모듈(330)이 MBR_1과 MBR_2를 비교하여(S430), 양 정보가 서로 동일하다고 판단한 경우에는 MBR 섹터 영역(240)에 있는 MBR 데이터는 제2 데이터 저장 영역(250)에 저장되지 않는다.
그러나, S430 단계에서 양 정보가 서로 동일하지 않다고 판단한 경우에는 MBR 섹터 영역(240)에 있는 MBR_2가 제2 데이터 저장 영역(250)에 저장된다. 이 때, 제2 데이터 저장 영역(250)에 저장된 MBR의 개수를 나타내는 정보는 1만큼 증가한다. 이러한 정보도 제2 데이터 저장 영역(250)에 포함될 수 있다.
또한, 제2 데이터 저장 영역(250)에 새로 저장되는 MBR_2는 기존에 저장되어 있던 다른 MBR들과 시간적 순서에 따라 링크를 형성하며 저장될 수 있다.
한편, 도 4에서 도시된 과정은 컴퓨터 시스템(200)이 실시간으로 동작하고 있는 경우에도 수행될 수 있다.
도 5는 본 발명의 일 실시예에 따른 컴퓨터 시스템의 부팅 과정을 나타내는 플로투 차트이다.
도 5를 참조하면, 우선 하드디스크 펌웨어 모듈(330)이 MBR 섹터 영역(240)에 있는 MBR 데이터를 읽어 호스트 장치(210)에게 제공한다(S510).
이 때, 호스트 장치(210)에서 하드디스크 펌웨어 모듈(330)로부터 제공된 MBR 데이터가 바이러스에 감염되었는지 여부를 판단하여(S520), 만일 감염되지 않은 경우에는 부팅을 수행한다(S550).
그러나, MBR 데이터가 바이러스에 감염되었다고 판단한 경우에는 호스트 장치(210)는 하드디스크 펌웨어 모듈(330)에게 요청하여 제2 데이터 저장 영역(250)으로부터 특정한 MBR 데이터를 추출하도록 한다(S530). 이 때 추출되는 MBR 데이터는 가장 최근에 저장된 MBR 데이터이거나 사용자에 의해 선택된 특정한 시기에서의 MBR 데이터일 수도 있다.
하드디스크 펌웨어 모듈(330)은 S530 단계에서 추출된 MBR 데이터를 MBR 섹터 영역(240)에 저장하고, 저장된 MBR 데이터를 호스트 장치(210)에 제공함으로써 컴퓨터 시스템(200)의 부팅(booting)이 수행된다(S550).
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
본 발명을 따르게 되면, 마스터 부트 레코드가 바이러스에 감염되더라도 이전에 저장된 마스터 부트 레코드의 데이터를 이용하여 컴퓨터 시스템의 부팅을 수행할 수 있는 효과가 있다.

Claims (18)

  1. 현재 수행되는 부팅과 관련된 마스터 부트 레코드가 저장된 마스터 부트 레코드 섹터 영역;
    이전의 변경된 마스터 부트 레코드가 저장된 데이터 저장 영역; 및
    호스트 장치와 통신을 수행하고 상기 마스터 부트 레코드 섹터 영역 및 상기 데이터 저장 영역을 관리하는 펌웨어를 포함하는데,
    상기 마스터 부트 레코드 섹터 영역에 저장된 마스터 부트 레코드에 에러가 발생된 경우, 상기 펌웨어가 상기 데이터 저장 영역으로부터 특정한 마스터 부트 레코드를 선택하여 상기 마스터 부트 레코드 섹터 영역에 저장하는, 마스터 부트 레코드를 관리하는 저장 매체.
  2. 제1항에 있어서,
    상기 데이터 저장 영역으로부터 선택된 마스터 부트 레코드는 가장 최근에 저장된 마스터 부트 레코드인, 마스터 부트 레코드를 관리하는 저장 매체.
  3. 제1항에 있어서,
    상기 데이터 저장 영역으로부터 선택된 마스터 부트 레코드는 사용자에 의해 선택된 마스터 부트 레코드인, 마스터 부트 레코드를 관리하는 저장 매체.
  4. 제1항에 있어서,
    상기 데이터 저장 영역으로부터 선택된 마스터 부트 레코드는 특정한 시기에 저장된 마스터 부트 레코드인, 마스터 부트 레코드를 관리하는 저장 매체.
  5. 제1항에 있어서,
    상기 펌웨어는 소정 시기에 상기 마스터 부트 레코드 섹터 영역에 저장된 마스터 부트 레코드와 상기 데이터 저장 영역에 저장된 마스터 부트 레코드를 비교하여 양 마스터 부트 레코드가 다른 경우에, 상기 마스터 부트 레코드 섹터 영역에 저장된 마스터 부트 레코드를 상기 데이터 저장 영역에 소정 방식에 따라 저장하는, 마스터 부트 레코드를 관리하는 저장 매체.
  6. 제5항에 있어서,
    상기 시기는 상기 호스트 장치에 의한 초기화가 수행되는 시기를 포함하는, 마스터 부트 레코드를 관리하는 저장 매체.
  7. 제5항에 있어서,
    상기 시기는 상기 호스트 장치에 의한 리셋이 수행되는 시기를 포함하는, 마스터 부트 레코드를 관리하는 저장 매체.
  8. 제5항에 있어서,
    상기 시기는 상기 호스트 장치에 의하여 실시간으로 동작하는 시기를 포함하는, 마스터 부트 레코드를 관리하는 저장 매체.
  9. 제5항에 있어서,
    상기 방식은 상기 데이터 저장 영역에 이미 저장되어 있는 다른 마스터 부트 레코드와 시간적 순서에 따른 링크를 형성하는 방식인, 마스터 부트 레코드를 관리하는 저장 매체.
  10. 호스트 장치에 의해 현재 수행되는 부팅과 관련된 마스터 부트 레코드가 저장된 마스터 부트 레코드 섹터 영역으로부터 마스터 부트 레코드 데이터를 추출하는 (a) 단계;
    상기 추출한 마스터 부트 레코드 데이터에 에러가 발생된 경우 이전의 변경된 마스터 부트 레코드가 저장된 데이터 저장 영역으로부터 특정한 마스터 부트 레코드 데이터를 선택하는 (b) 단계; 및
    상기 (b) 단계에서 추출한 마스터 부트 레코드 데이터를 이용하여 부팅을 수행하는 (c) 단계를 포함하는 컴퓨터 시스템의 부팅 방법.
  11. 제10항에 있어서,
    상기 (b) 단계에서 선택된 마스터 부트 레코드 데이터는 가장 최근에 저장된 마스터 부트 레코드 데이터인, 컴퓨터 시스템의 부팅 방법.
  12. 제10항에 있어서,
    상기 (b) 단계에서 선택된 마스터 부트 레코드 데이터는 사용자에 의해 선택된 마스터 부트 레코드 데이터인, 컴퓨터 시스템의 부팅 방법.
  13. 제10항에 있어서,
    상기 (b) 단계에서 선택된 마스터 부트 레코드 데이터는 특정한 시기에 저장된 마스터 부트 레코드 데이터인, 컴퓨터 시스템의 부팅 방법.
  14. 제10항에 있어서,
    소정 시기에 상기 마스터 부트 레코드 섹터 영역에 저장된 마스터 부트 레코드와 상기 데이터 저장 영역에 저장된 마스터 부트 레코드를 비교하여 양 마스터 부트 레코드가 다른 경우에, 상기 마스터 부트 레코드 섹터 영역에 저장된 마스터 부트 레코드를 상기 데이터 저장 영역에 소정 방식에 따라 저장하는 단계를 더 포함하는, 컴퓨터 시스템의 부팅 방법.
  15. 제14항에 있어서,
    상기 시기는 상기 호스트 장치에 의한 초기화가 수행되는 시기를 포함하는, 컴퓨터 시스템의 부팅 방법.
  16. 제14항에 있어서,
    상기 시기는 상기 호스트 장치에 의한 리셋이 수행되는 시기를 포함하는, 컴퓨터 시스템의 부팅 방법.
  17. 제14항에 있어서,
    상기 시기는 상기 호스트 장치에 의하여 실시간으로 동작하는 시기를 포함하는, 컴퓨터 시스템의 부팅 방법.
  18. 제14항에 있어서,
    상기 방식은 상기 데이터 저장 영역에 이미 저장되어 있는 다른 마스터 부트 레코드와 시간적 순서에 따른 링크를 형성하는 방식인, 컴퓨터 시스템의 부팅 방법.
KR1020060001019A 2006-01-04 2006-01-04 마스터 부트 레코드를 관리하는 저장 매체 및 상기 저장매체를 이용한 컴퓨터 시스템의 부팅 방법 KR100746032B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020060001019A KR100746032B1 (ko) 2006-01-04 2006-01-04 마스터 부트 레코드를 관리하는 저장 매체 및 상기 저장매체를 이용한 컴퓨터 시스템의 부팅 방법
US11/590,817 US8219793B2 (en) 2006-01-04 2006-11-01 Storage medium to manage a master boot record and a method of booting a computer system using a storage medium
CNB2006101642839A CN100476731C (zh) 2006-01-04 2006-12-08 管理主引导记录的存储介质及用其引导计算机系统的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060001019A KR100746032B1 (ko) 2006-01-04 2006-01-04 마스터 부트 레코드를 관리하는 저장 매체 및 상기 저장매체를 이용한 컴퓨터 시스템의 부팅 방법

Publications (2)

Publication Number Publication Date
KR20070073290A KR20070073290A (ko) 2007-07-10
KR100746032B1 true KR100746032B1 (ko) 2007-08-06

Family

ID=38226050

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060001019A KR100746032B1 (ko) 2006-01-04 2006-01-04 마스터 부트 레코드를 관리하는 저장 매체 및 상기 저장매체를 이용한 컴퓨터 시스템의 부팅 방법

Country Status (3)

Country Link
US (1) US8219793B2 (ko)
KR (1) KR100746032B1 (ko)
CN (1) CN100476731C (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9098448B2 (en) * 2007-05-29 2015-08-04 Dell Products L.P. Intelligent boot services
TWI342519B (en) * 2007-07-02 2011-05-21 Asustek Comp Inc Computer apparatus and starting method and module thereof
KR101404721B1 (ko) * 2008-04-28 2014-06-10 시게이트 테크놀로지 엘엘씨 하드디스크 드라이브의 공정방법
US8230209B1 (en) * 2008-09-09 2012-07-24 Cms Products, Inc. Method and apparatus for automatically providing a user the opportunity to boot from an alternate storage device where a valid operating system resides
DE102009023997A1 (de) * 2008-09-19 2010-04-08 Dallmeier Electronic Gmbh & Co. Kg Bild- und/oder Tondaten-Verarbeitungs- und Speicherungssystem und Überwachungssystem
JP5304154B2 (ja) * 2008-10-01 2013-10-02 富士通セミコンダクター株式会社 ドライブ装置、マウントプログラムおよびマウント方法
US8510542B2 (en) * 2008-10-01 2013-08-13 Oracle International Corporation Flash memory device having memory partitions and including an embedded general purpose operating system for booting a computing device
KR101078289B1 (ko) * 2009-08-25 2011-10-31 한국전자통신연구원 파티션 복구 방법 및 장치
TWI507985B (zh) * 2009-11-02 2015-11-11 Wistron Corp 可自動化連續安裝作業系統的電子裝置及其相關方法與系統
KR20130027026A (ko) * 2010-05-11 2013-03-14 야스다, 히로시 외부 부팅 장치, 외부 부팅 방법 및 네트워크 통신 시스템
JP5077726B1 (ja) * 2011-05-23 2012-11-21 Necインフロンティア株式会社 コンピュータ、その制御方法及びプログラム
CN102831032A (zh) * 2011-06-17 2012-12-19 鸿富锦精密工业(深圳)有限公司 硬盘主引导记录的修复系统及方法
KR101994811B1 (ko) * 2012-03-04 2019-07-01 삼성전자주식회사 전자 장치, mbr 복원 방법 및 컴퓨터 판독가능 기록매체
CN103677875A (zh) * 2012-09-11 2014-03-26 联想(北京)有限公司 一种电子设备启动的方法、权限控制方法和电子设备
US9575633B2 (en) * 2012-12-04 2017-02-21 Ca, Inc. User interface utility across service providers
US9336131B1 (en) * 2013-04-16 2016-05-10 Veritas Technologies, LLC Systems and methods for enabling virtual environments to mount non-native storage disks
US9329931B2 (en) * 2013-07-24 2016-05-03 Seagate Technology Llc Solid state drive emergency pre-boot application providing expanded data recovery function
CN104516791B (zh) * 2013-09-30 2018-09-28 北京猎豹移动科技有限公司 数据处理方法、装置及电子设备
CN104751082B (zh) * 2013-12-30 2019-02-05 研祥智能科技股份有限公司 操作系统及数据安全控制方法及装置
KR102147970B1 (ko) 2014-08-05 2020-08-25 삼성전자주식회사 비휘발성 메모리 기반의 스토리지 디바이스의 복구 방법 및 상기 스토리지 디바이스를 포함하는 전자 시스템의 동작 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10240541A (ja) * 1997-02-10 1998-09-11 Internatl Business Mach Corp <Ibm> コンピュータ・システムにおけるブート・データの提供方法及び装置
KR20050015972A (ko) * 2003-08-08 2005-02-21 엘지전자 주식회사 컴퓨터 시스템의 부팅 제어 장치 및 방법
KR20050021736A (ko) * 2003-08-25 2005-03-07 남승리 컴퓨터 시스템의 백업 및 복원 방법 그리고 그 프로그램을기록한 기록매체
KR20050032902A (ko) * 2003-10-02 2005-04-08 주식회사 삼보컴퓨터 데이타 저장 및 복구 방법

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0644158A (ja) 1991-06-27 1994-02-18 Intaakomu:Kk リモートインストール方法
US6170055B1 (en) * 1997-11-03 2001-01-02 Iomega Corporation System for computer recovery using removable high capacity media
KR19990060338A (ko) * 1997-12-31 1999-07-26 윤종용 하드 디스크 드라이브의 바이러스에 의한 손상 데이터복구방법
US6792556B1 (en) * 2000-05-31 2004-09-14 Dell Products L.P. Boot record recovery
US20040044886A1 (en) * 2000-07-12 2004-03-04 Ng Weiloon Partition recovery method
US6963951B2 (en) * 2000-07-12 2005-11-08 Seagate Technology Llc Partition recovery method
JP3964108B2 (ja) 2000-07-26 2007-08-22 光寶科技股▲ふん▼有限公司 ワイヤレス・キーボード及びpcリモート・コントローラのための赤外線送信方法
KR200253716Y1 (ko) 2001-06-02 2001-11-17 주식회사 이지테크 자동인식 리모트컨트롤 시스템
US6862681B2 (en) * 2001-07-16 2005-03-01 International Business Machines Corporation Method and system for master boot record recovery
CN1241120C (zh) * 2001-08-31 2006-02-08 联想(北京)有限公司 计算机硬盘数据备份及恢复方法
JP2003092784A (ja) 2001-09-18 2003-03-28 Toshiba Corp 電子機器及び無線通信システム
US7111202B2 (en) * 2002-06-28 2006-09-19 Hewlett-Packard Development Company, L.P. Autonomous boot failure detection and recovery
US7194659B2 (en) * 2002-12-10 2007-03-20 International Business Machines Corporation Method and system for detection and correction of entrance into an improper MBR state in a computer system
CN1277211C (zh) * 2003-05-06 2006-09-27 联想(北京)有限公司 一种计算机操作系统的修复方法
US20040255106A1 (en) * 2003-06-10 2004-12-16 Rothman Michael A. Recovery of operating system configuration data by firmware of computer system
US7219257B1 (en) * 2003-06-27 2007-05-15 Adaptec, Inc. Method for boot recovery
US20060041738A1 (en) * 2004-08-17 2006-02-23 Yu-Chen Lai Recovery method for master boot record of hard disk drive
US7523350B2 (en) * 2005-04-01 2009-04-21 Dot Hill Systems Corporation Timer-based apparatus and method for fault-tolerant booting of a storage controller
US20080077784A1 (en) * 2006-09-21 2008-03-27 Gerri's Marketing & Advertising Concepts, Llc Electronic marketing on a computing device during select time windows

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10240541A (ja) * 1997-02-10 1998-09-11 Internatl Business Mach Corp <Ibm> コンピュータ・システムにおけるブート・データの提供方法及び装置
KR20050015972A (ko) * 2003-08-08 2005-02-21 엘지전자 주식회사 컴퓨터 시스템의 부팅 제어 장치 및 방법
KR20050021736A (ko) * 2003-08-25 2005-03-07 남승리 컴퓨터 시스템의 백업 및 복원 방법 그리고 그 프로그램을기록한 기록매체
KR20050032902A (ko) * 2003-10-02 2005-04-08 주식회사 삼보컴퓨터 데이타 저장 및 복구 방법

Also Published As

Publication number Publication date
US8219793B2 (en) 2012-07-10
KR20070073290A (ko) 2007-07-10
CN1996246A (zh) 2007-07-11
US20070157013A1 (en) 2007-07-05
CN100476731C (zh) 2009-04-08

Similar Documents

Publication Publication Date Title
KR100746032B1 (ko) 마스터 부트 레코드를 관리하는 저장 매체 및 상기 저장매체를 이용한 컴퓨터 시스템의 부팅 방법
US7366887B2 (en) System and method for loading programs from HDD independent of operating system
US6430663B1 (en) Methods for selecting a boot partition and hiding a non-selected partition
EP2840495B1 (en) Container-based processing method and apparatus
KR101115486B1 (ko) 컴퓨터 시스템의 부팅 제어 장치 및 방법
JP5715566B2 (ja) キャッシュデータおよびメタデータの管理
KR101994811B1 (ko) 전자 장치, mbr 복원 방법 및 컴퓨터 판독가능 기록매체
US20120191960A1 (en) Booting computing devices
JP6850331B2 (ja) マルチノードストレージシステムにおけるファームウェアアップグレード方法
CN102439565B (zh) 启动恢复的方法和装置
US20060224874A1 (en) Method for updating system management basic input output system (SMBIOS) data
JP4948406B2 (ja) ホスト上での機能ユニットドライバの自動インストールの方法およびシステム
US20100049961A1 (en) Update method for basic input/output system and update system thereof
US20120166784A1 (en) System and method for recovering data of complementary metal-oxide semiconductor
KR20070111263A (ko) 재부팅 없이 영역 분할을 수행하는 장치 및 그 방법
JP6600815B2 (ja) 記録装置、および情報処理装置
JP4963167B2 (ja) システム起動方法、及びプログラム
JP4289028B2 (ja) ハードディスクバックアップリカバリーシステム、および情報処理装置
JP5949540B2 (ja) 情報処理装置、及び記憶情報解析方法
US20190138407A1 (en) Systems and methods of deploying an operating system from a resilient virtual drive
JP2004062376A (ja) Raidディスクリードエラー処理方式、方法及びプログラム
KR20050032902A (ko) 데이타 저장 및 복구 방법
JP5950290B1 (ja) 不揮発性記憶デバイス及び不揮発性記憶デバイスの処理方法
JP2005055963A (ja) ボリューム制御方法、この方法を実行するプログラム、及びストレージ装置
JP2015082279A (ja) 情報処理装置、情報収集方法および情報収集プログラム

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
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]
FPAY Annual fee payment

Payment date: 20130627

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140627

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee