KR920008445B1 - 퍼스널 컴퓨터 시스템에서 bios용 메모리를 감축시키기 위한 장치 및 방법 - Google Patents

퍼스널 컴퓨터 시스템에서 bios용 메모리를 감축시키기 위한 장치 및 방법 Download PDF

Info

Publication number
KR920008445B1
KR920008445B1 KR1019900012417A KR900012417A KR920008445B1 KR 920008445 B1 KR920008445 B1 KR 920008445B1 KR 1019900012417 A KR1019900012417 A KR 1019900012417A KR 900012417 A KR900012417 A KR 900012417A KR 920008445 B1 KR920008445 B1 KR 920008445B1
Authority
KR
South Korea
Prior art keywords
bios
boot record
master boot
access memory
loading
Prior art date
Application number
KR1019900012417A
Other languages
English (en)
Other versions
KR910005169A (ko
Inventor
비일코브스키 리챠드
윌리 블랙릿지 2세 죤
스탠필 크롱크 도일
앨런 다이언 리챠드
제라드 킨니어 스코트
디.코바크 죠지
스티븐 팔카 2세 매튜
삭센마이어 로버트
마샬 자이보로스키 케빈
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 인터내셔날 비지네스 머신즈 코포레이션
Publication of KR910005169A publication Critical patent/KR910005169A/ko
Application granted granted Critical
Publication of KR920008445B1 publication Critical patent/KR920008445B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices

Abstract

내용 없음.

Description

퍼스널 컴퓨터 시스템에서 BIOS용 메모리를 감축시키기 위한 장치 및 방법
제1도는 다수의 직접 접근 기억장치와 연결된 플래너 보드를 도시하는 퍼스널 컴퓨터 시스템의 절단면도.
제2도는 제1도의 퍼스널 컴퓨터 시스템을 위한 시스템 블록선도.
제3도는 플래너 보드상에 포함된 ROM BIOS에 관한 메모리 맵.
제4도는 직접 접근 기억장치로부터 BIOS 이미지를 적재하기 위한 전 과정을 설명하는 흐름도.
제5도는 마스터 부트 레코드에 대한 레코드 포맷을 도시한 도면.
제6a도는 IBL 루틴의 동작을 설명하는 흐름도.
제6b도는 고정 디스크로부터 BIOS 이미지를 적재하기 위한 단계를 설명하는 흐름도.
제6c도는 디스켓으로부터 BIOS 이미지를 적재하기 위한 단계를 설명하는 흐름도.
제6d도는 마스터 부트 레코드와 플래너/프로세서간의 호환성 검사를 상세히 설명하는 흐름도.
제7도는 마스터 부트 레코드의 실행 가능한 코드 시그먼트의 동작을 설명하는 상세한 흐름도.
* 도면의 주요부분에 대한 부호의 설명
10 : 퍼스널 컴퓨터 12 : 내지
16 : 직접 접근 기억장치 18 : I/O 슬롯
22 : 전력 공급원 24 : 플래너 보드
26 : 시스템 프로세서 28 : 로컬 버스
본 발명은 퍼스널 컴퓨터 시스템에 관한 것이며, 특히 퍼스널 컴퓨터 시스템에 BIOS를 설치하기 위한 방법 및 장치에 관한 것이다.
일반적으로 퍼스널 컴퓨터 시스템은, 특히 IBM 퍼스널 컴퓨터는 현대 사회의 여러 분야에 컴퓨터 파워를 제공하기 위해 폭넓게 사용하고 있다. 퍼스널 컴퓨터 시스템은 탁상용, 바닥 설치형, 또는 휴대용 마이크로 컴퓨터로 통상 구분될 수 있으며, 싱글 시스템 프로세서, 디스플레이 모니터, 키보드. 하나 또는 그 이상의 디스켓 드라이브, 고정 디스크 기억장치, 선택 사양인 프린터 등을 갖춘 시스템 유닛으로 구성된다. 이러한 시스템의 한가지 특이한 특징은 이들 성분을 전기적으로 연결시키기 위해 마더보드 (motherboard) 또는 시스템 플래너(system planar)를 사용한다는 것이다. 이들 시스템은 기본적으로 개개의 사용자에게 독립적인 계산 능력을 제공하도록 설계되었으며 개인 또는 소규모 사엽체에서 구입하기에 비싸지 않은 가격으로 되어 있다. 이러한 퍼스널 컴퓨터 시스템의 예로는 IBM의 퍼스널 컴퓨터 AT 및 IBM의 퍼스널 시스템/2모델 25, 30, 50, 60, 70, 80등이 있다.
이들 시스템은 두가지 일반 패밀리로 분류될 수 있다. 제1패밀리는 통상적으로 패밀리 I모델로 인용되는 것으로서, IBM 퍼스널 컴퓨터 AT 및 다른 "IBM 호환"기종에 예시된 버스 아키텍쳐를 사용한다. 제2 패밀리는 패밀리 Ⅱ모델로 인용되며, IBM의 퍼스널 시스템/2모델 50 내지 80에 예시된 IBM의 마이크로채널 버스 아키텍쳐를 사용한다.
IBM 퍼스널 컴퓨터와 같은 패밀리 Ⅰ모델의 초기 퍼스널 컴퓨터 시스템에서는 소프트웨어 호환성이 가장 중요한 것으로 인식되었었다. 이런 목적을 달성하기 위해, "마이크로 코드"라고도 알려진 시스템 상주 코드의 격리층이 하드웨어와 소프트웨어 사이에 설치된다. 이 코드는 사용자의 응용 프로그램/오퍼레이팅 시스템과 디바이스간의 작동 인터페이스를 제공하여 하드웨어 디바이스의 특성에 대한 사용자의 염려를 경감시킨다. 결국, 상기 코드는 기본 입출력 시스템(BIOS)으로 발전하여 새로운 디바이스가 시스템에 부가 되는 것을 가능케하는 한편, 하드웨어의 특수성으로부터 응용 프로그램을 격리시킨다. BIOS는 특정 디바이스 하드웨어 특성에의 종속성으로부터 디바이스 드라이버를 자유롭게하는 한편 디바이스 드라이버에 디바이스로의 중간 인터페이스를 제공하기 때문에 그 중요성은 명백한 것이다. BIOS는 시스템의 필수부분이며 시스템 프로세서의 데이터 입출력의 이동을 제어하기 때문에, 시스템 플래너에 상주하며 리드 온리 메모리(ROM)에서 사용자에게 보내진다. 예를 들어, 오리지널 IBM 퍼스널 컴퓨터에서 BIOS는 플래너 보드상에 상주하는 8K의 ROM을 차지한다.
새로운 모델의 퍼스널 컴퓨터 패밀 리가 소개됨에 따라, BIOS는 새로운 하드웨어 및 I/O 디바이스를 포함하도록 갱신되고 확장되어야 한다. 예측되는 바와 같이 BIOS는 메모리 크기를 증가시키려 한다. 예컨대, IBM 퍼스널 컴퓨터 AT의 도입에 따라, BIOS는 32K 바이트의 ROM을 필요로 하게 된다.
오늘날, 새로운 기술의 발전과 함께, 패밀리Ⅱ모델의 퍼스널 컴퓨터 시스템은 더욱 정교해지고 고객에게는 더욱 친숙하게 이용될 수 있게끔 되어가고 있다. 기술은 빠르며 변화하며 새로운 I/O 디바이스들이 퍼스널 컴퓨터 시스템에 첨가됨에 따라, BIOS의 수정은 퍼스널 컴퓨터 시스템의 개발 사이클에 있어 중요한 문제로 되고 있다.
예컨대, 마이크로채널 아키텍쳐를 가진 IBM 퍼스널 시스템/2의 도입과 함께, 진보된 BIOS, 또는 ABIOS로 알려진 새로운 BIOS가 개발되었다. 그런데 소프트웨어 호환성을 유지하기 위해서는, 패밀리 Ⅰ모델에서의 BIOS가 패밀리 Ⅱ모델에 포함되어야 한다. 패밀리 ⅠBIOS는 호환성 BIOS 또는 CBIOS로 알려지고 있다. 그러나, IBM 퍼스널 컴퓨터 AT에 관해 전술한 바와 같이, 단지 32K 바이트의 ROM만이 플래너 보드에 상주되어 있다. 다행히도, 시스템은 96K 바이트의 ROM으로 확장될 수 있다. 불행히도, 시스템의 제한요건 때문에, 이것이 BIOS에 대한 가능한 최대 능력인 것으로 보인다. 다행한 것은 ABIOS가 첨가되더라도, ABIOS와 CBIOS는 96K의 ROM에 넣어질 수 있다. 그렇지만, 96K ROM 영역중 약간의 퍼센트만이 확장용으로 이용가능하다. 또다른 I/O 디바이스가 첨가되면, CBIOS와 ABIOS는 결국 ROM 공간을 고갈시키게 된다. 그러므로, 새로운 I/O기술은 CBIOS와 ABIOS내에서 손쉽게 집적화될 수 없을 것이다.
이러한 문제점에 따라, 기능의 레벨을 증가 내지 적어도 그대로 유지하면서 BIOS의 오퍼레이팅 사이즈는 감축시킬 필요가 생기는 것이다. 퍼스널 컴퓨터의 시장성 및 소비자 취향에 의하면 호환성을 유지할 수 있는 능력이 요청되므로, BIOS의 동등한 레벨의 기능을 유지하는 것은 본 발명에 따른 성공에 달성함에 있어 중요한 요소이다. 그러므로, 패밀리 Ⅱ기종에서 BIOS에 대해 요구되는 코드공간을 감축시키는 방법 및 장치를 개발해야할 필요성이 존재한다.
본 발명은 전술한 문제점들을 경감시키기 위한 목적으로 개발되었다. 따라서, 본 발명은 직접 접근 기억 장치에 BIOS의 일부분을 기억시킴으로서 BIOS의 오퍼레이팅 사이즈를 감축시키면서도 전술한 BIOS 타입 오퍼레이팅 시스템과의 호환성은 유지하는 장치 및 방법을 제공하려는 목적을 갖는다.
본 발명의 다른 목적은 BIOS의 한 부분이 처리된 다음 시스템으로 액세스 가능하지 않게 하는 장치 및 방법으로 제공하려는 것이다.
본 발명의 또다른 목적은 단지 한번만 실행되는 BIOS 루틴은 ROM에 기억시키고 한번 이상 실행되는 BIOS 루틴은 직접 접근 기억장치에 기억시키기 위해 기능에 따라 BIOS를 분절화하는 BIOS 레코드 포맷을 제공하려는 것이다.
넓게 생각한다면, 본 발명에 따른 퍼스널 컴퓨터 시스템은, 시스템 프로세서, 랜덤 액세스 메모리, 리드온리 메모리, 적어도 하나의 직접 접근 기억장치를 구비한다. 리드 온리 메모리는 BIOS의 제1부분을 포함하며 나머지 부분은 직접 접근 기억장치에 기억된다. 제1BIOS 부분은 초기화 및 세트 업에 사용되는 루틴들을 포함하는 반면, BIOS의 나머지 부분은 오퍼레이팅 시스템에 의해 재사용 가능한 루틴들을 포함한다. 작동시, BIOS의 제1부분은 시스템 프로세서 및 직접 접근 기억장치를 초기화하여 직접 접근 기억장치로부터 랜덤 액세스 메모리로 마스터 부트 레코드를 읽어들인다.
마스터 부트 레코드는 데이터 시그먼트와 실행가능한 코드 시그먼트를 포함한다. 데이터 시그먼트는 데이터 표현 시스템 하드웨어와, 마스터 부트 레코드에 의해 지지되는 시스템 구성을 포함한다. 제1BIOS 부분은 시스템 프로세서, 시스템 플래너, 플래너 I/O 구성을 나타내는 제1BIOS 부분내에 포함된 데이터와 일치하는 마스터 부트 레코드의 데이터 시그먼트로 부터의 데이터를 검증함으로서 마스터 부트 레코드가 시스템 하드웨어와 호환성이 있음을 증명한다.
마스터 부트 레코드가 시스템 하드웨어와 호환성이 있으면, 제1BIOS 부분은 마스터 부트 레코드의 실행 가능한 코드 시그먼트를 실행하도록 시스템 프로세서를 유도한다. 제1BIOS 부분은 이제 시스템에서 버려지게 된다. 실행가능한 코드 시그먼트는 시스템 구성이 변경되지 않았음을 확인하고 나머지 BIOS 부분에서 직접 접근 기억장치로부터 랜덤 액세스 메모리에 적재된다. 실행가능한 코드 시그먼트는 다음에 나머지 BIOS 부분의 신빙성을 검증하고, 시스템 프로세서로 하여금 지금은 랜덤 액세스 메모리에 있는 BIOS를 실행하게 된다. BIOS의 나머지 부분은 시스템을 통상적으로 작동하는데 필요한 루틴만을 포함한다. 나머지 BIOS 부분으로 대체되며 더 이상 어드레스 가능하지 않게 되는 제1BIOS 부분은 버려진다.
본 발명의 전술한 양태 및 그 밖의 특성들은 첨부도면과 연결하여 하기의 상세할 설명부분에 설명되어 있다.
하기의 상세한 설명은 본 발명을 실행하기 위한 가장 양호한 방식으로 되어 있는 것이다. 본 설명은 제한적인 것이 아니라 본 발명의 일반적 원리를 설명하기 위한 목적으로 되어 있는 것으로서, 본 발명의 범위는 첨부된 청구범위에 잘 규정되어 있다.
이제 도면을 참고로 하면, 제1도에는 다수의 I/O 슬롯(18)을 통해 시스템 또는 플래너 보드(24)와 연결된 다수의 DASD(Direct Access Storage Device(직접 접근 기억장치) (12 내지 16)를 가진 퍼스널 컴퓨터 시스템(10)의 절단면도가 도시되어 있다. 전력공급원(22)은 공지된 방법으로 시스템(10)에 전기전력을 제공한다. 플래너 보드(24)는 정보를 입력, 처리 및 출력시키라는 컴퓨터 명령의 제어하에서 동작하는 시스템 프로세서를 포함한다.
통상, 퍼스널 컴퓨터 시스템(10)은 작은 그룹의 사용자 또는 개개의 사용자에게 독립적인 계산능력을 제공하도록 기본적으로 설계되며, 개인 또는 작은 기업체에서 구입하기에 비싸지 않은 가격으로 되어 있다. 작동시, 시스템 프로세서는 IBM의 OS/2오퍼레이팅 시스템 또는 PC-DOS와 같은 오퍼레이팅 시스템하에서 작동한다. 이러한 종류의 오퍼레이팅 시스템은 DASD(12 내지 16)와 오퍼레이팅 시스템 사이에 BIOS 인터페이스를 포함한다. 기능에 의해 모듈로 나누어진 BIOS의 한부분은 플래너(24)상의 ROM에 기억되며 이하에서는 ROM-BIOS로 인용되겠다. BIOS는 프로그래머 또는 사용자로 하여금 특정 디바이스에 관한 충분한 작동 지식이 없어도 그들의 기계에 프로그램할 수 있도록 하드웨어와 오퍼레이팅 시스템 소프트웨어 사이에 인터페이스를 제공한다. 예를 들면, BIOS 디스켓 모듈은 프로그래머가 디스켓 드라이브 하드웨어에 관한 충분한 지식 없이도 디스켓 드라이브를 프로그램할 수 있게 한다. 그러므로, 여러 회사에서 설계 제작된 다수의 디스켓 드라이브가 시스템에서 사용될 수 있다. 이는 시스템(10)의 가격을 낮출뿐만 아니라, 사용자가 다수의 디스켓 드라이브중에서 선택할 수 있게 해준다.
상기한 구조에 관하여 본 발명에 설명하기 이전에, 퍼스널 컴퓨터 시스템(10)의 일반적인 동작을 요약해서 알아보는 것이 유익하겠다. 제2도에는 퍼스널 컴퓨터 시스템 (10)의 블록 선도가 도시되어 있다. 제2도는 플래너(24)의 성분과 플래너(24) I/O 슬롯(18)과의 연결부와, 그밖의 퍼스널 컴퓨터 시스템의 하드웨어를 도시한다. 플래너 24)상에는 시스템 프로세서(26)가 위치하여 로컬 버스(28)에 의해 메모리 제어기 30)에 연결된 마이크로 프로세서를 구비하며, 제어기(30)는 랜덤 액세스 메모리 RMA) (32)에 연결된다. 임의의 적절한 마이크로 프로세서가 사용될 수 있지만, 적합한 마이크로 프로세서중 한가지는 인텔에서 판매되는 80386이다.
본 발명은 이하에서 제2도의 시스템 블록선도를 특히 참조하여 설명되었지만, 설명의 시작에서부터 본 발명에 따른 장치 및 방법에는 다른 하드웨어 구성의 플래너 보드로 이용될 수 있다는 점을 알아야겠다. 예를 들어, 시스템 프로세서에는 인텔 80286 또는 80486 마이크로프로세서로 될 수도 있다.
프로세서에 의해 접근 가능한 것이 플래너 식별번호(플래너 ID이다: 플래너 ID는 플래너마다 특유한 것으로서 사용되는 플래너의 타입을 식별한다. 예를 들어, 플래너 ID는 시스템 프로세서(26)의 I/O 단자를 통하여 또는 스위치를 사용하여 판독하는 하드웨어일 수 있다. 덧붙여, 시스템 프로세서(26)의 다른 I/O 단자가 플래너 논리회로를 이용하여 디스크 제어기에 리세트 신호를 발생시키는데 이용될 수 있다. 예를 들어, 리세트 신호는 리세트 신호를 발생시키기 위해 I/O 단자를 어드레스하고 플래너 논리회로를 능동화시키는 소프트웨어에 의해 초기화될 수 있다.
로컬버스(28)는 또한 버스 제어기(34)를 통해 플래너(24)상의 리드 온리 메모리(ROM) (36)에 연결된다. 버스 제어기(34)에 연결된 직렬/병렬 단자 인터페이스 (40)를 통하여 부수적인 비휘발성 메모리 (NVRAM)(58)가 마이크로 프로세서(26)에 연결된다. 비휘발성 메모리는 시스템에서 전력이 끊어졌을 때 정보를 유지하기 위해 배터리가 지원되고 있는 CMOS로 될 수 있다. ROM은 통상 플래너상에 상주하기 때문에, RMO에 기억된 모델 및 서브 모델값은 각각 시스템 프로세서 및 시스템 플래너 I/O 구성을 식별하는데 이용된다. 그러므로, 이들 값은 프로세서 및 플래너 I/O 구성을 물리적으로 식별할 것이다. NVRAM은 시스템 구성 데이터를 기억하는데 이용된다. 말하자면, NVRAM은 시스템의 현재 구성을 나타내는 값을 포함한다. 예를 들어, NVRAM은 고정 디스크 또는 디스켓의 용량, 디스플레이의 종류, 메모리의 양, 시간, 날자등등을 표시하는 정보를 포함한다. 덧붙여서, ROM에 기억된 모델 및 서브 모델값들은 SET 구성과 같은 특정 구성 프로그램이 실행될때에는 NVRAM에 복사된다. SET 구성 프로그램은 시스템의 구성을 특징화 하는 값을 NVRAM에 기억하려는 것을 목적으로 한다. 그러므로, 적절히 구성된 시스템에 대해서, NVRAM내의 모델 및 서브 모델값은 ROM내의 모델 및 서브 모델값과 각각 동일한 것이다. 이들 값이 동일하지 않다면, 시스템의 구성이 변경되었다는 것을 나타낸다. 제6d도를 참고하면, 이러한 특성은 BIOS의 적재와 함께 상세히 설명되어 있다.
계속해서, 제2도를 참고로 설명하면, 버스 제어기(34)는 I/O 플래너 버스(43)에 의해 I/O 슬롯(18), 직렬/병렬 인터페이스(40), 주변제어기(43)와 결합된다. 주변제어기(42)는 또한 키보드(44), 마우스(46), 진단패널(47), 디스켓 제어기(64)에 연결된다. 직렬/병렬 인터페이스(40)는 NVRAM(58)과 연결된 외에도, 프린터, 하드 카피 디바이스 등등에 정보를 입/출력하기 위해 직렬단자(48) 및 병렬단자(50)에 연결되어 있다. 본 기술분야에 공지된 바와 같이, 로컬 버스(28)는 또한 캐시 제어기(52), 캐시 메모리(68), 코-프로세서(54), DMA 제어기(56)에 연결될 수 있다.
시스템 프로세서(26)는 그 내부 동작뿐 아니라 퍼스널 컴퓨터 시스템(10)의 다른 성분들과의 인터페이싱도 제어한다. 예를 들면, 시스템 프로세서(26)는 고정 디스크 드라이브(62)와 같은 DASA에 연결되어 있는 소형 컴퓨터 시스템 인터페이스(SCSI) I/O 카드(60)에 연결된 것으로 도시되어 있다. 본 발명에 따르면 SCSI 디스크 드라이브 이외의 것도 고정 디스크로서 이용될 수 있는 것으로 이해된다. 고정 디스크(62)외에 시스템 프로세서(26)는 디스켓 드라이브(66)를 제어하는 디스켓 제어기(64)와 인터페이스될 수 있다. 전문용어에 관하여, 용어 "하드화일"은 고정 디스크 드라이브(62)를 나타내고 용어 "플로피"는 디스켓 드라이브(66)를 나타내는 말로서 이해한다.
본 발명에 앞서, ROM(36)은 오퍼레이팅 시스템을 하드웨어 주변장치와 인터페이스시킨 모두 BIOS 코드를 포함한다. 그런데, 본 발명의 한 양태에 따르면, ROM(36) BIOS의 단지 일부분만을 기억하게 된다. 이 부분은 시스템 프로세서(26)에 의해 실행될 때 고정 디스크(62) 또는 디스켓(66)으로부터 제2 또는 나머지 부분의 BIOS(이하, BIOS 이미지라고도 인용된다)를 입력시킨다. BIOS 이미지는 제1BIOS 부분을 대신하여 시스템의 필수 부분이 되며 RAM(32)과 같은 주메모리에 상주한다. ROM(36)에 기억된 BIOS의 제1부분(ROM-BIOS)은 제3도 내지 4도와 관련하여 일반적으로 설명되고 제6a도 내지 6d도와 관련하여 상세히 설명되겠다. BIOS의 제2부분(BIOS 이미지)은 제5도를 참고로 하여, BIOS 이미지의 적재는 제7도에 관련하여 설명하겠다. DASD로부터 BIOS 이미지를 적재하는 또다른 이점은 시스템 프로세서의 RAM(32)으로 BIOS를 직접 적재할 수 있다는 점이다. RAM으로의 액세서가 ROM으로의 액세스보다 훨씬 빠르므로, 컴퓨터 시스템의 처리속도에 있어 상당한 진전이 이루어진다.
이제 ROM(36)내의 BIOS의 동작 및 고정 디스크 또는 디스켓으로 부터의 BIOS 이미지를 적재하는 동작에 대해 설명하겠다. 일반적으로, ROM-BIOS와 같은 첫번째 프로그램은 시스템을 사전 검사하고 BIOS 마스터 부트 레코드를 RAM에 적재한다. 마스터 부트 레코드는 유효 정보를 가진 데이터 시그먼트를 포함하며, 적재수단으로서, 실행가능한 코드를 가진 코드 시그먼트를 포함한다. 실행가능한 코드는 하드웨어 호환성 및 시스템 구성을 확인하기 위해 데이터 정보를 이용한다. 하드웨어 호환성 및 적절한 시스템 구성에 관해 테스트한 후, 실행가능한 코드는 BIOS 이미지를 RAM에 적재하여 주메모리 상주 프로그램을 만든다. BIOS 이미지는 ROM-BIOS를 대신하여 오퍼레이팅 시스템에 적재하여 기계의 작동을 개시한다. 명료히 하기 위해, 마스터 부트 레코드의 실행가능한 코드 시그먼트는 MBR 코드로 인용되고 데이터 시그먼트는 MBR 데이터로 인용되겠다.
제3도를 보면, ROM-BIOS를 구비하는 여러 가지 코드 모듈을 도시하는 메모리 맵이 있다. 이들 코드 모듈은 시스템을 초기화하고, BIOS 이미지를 적재하는데 필요한 하드웨어를 테스트하고, 사용자와의 통신을 제공하는데 필요한 루틴만을 포함하도록 선택된다. ROM-BIOS는 파원 온 셀프 테스트(POST 스테이지 1모듈(70), 초기 BIOS 적재(IBL) 루틴 모듈(72), 디스켓 모듈(74), 하드 파일 모듈(76), 비디오 모듈(78), 진단 패널 모듈(80), 하드웨어 호환성 데이터(82)를 포함한다. 간략히 말하면, POST 스테이지 I(70)는 시스템 사전-초기화를 실행하고 테스트한다. IBL 루틴(72)은 BIOS 이미지가 디스크 또는 디스켓으로부터 적재될 것인지 판별하고, 호환성을 검사하며 마스터 부트 레코드를 적재한다. 디스켓 모듈(74)은 디스켓 드라이브에 입/출력기능을 제공한다. 하드 파일 모듈(76)은 고정 디스크등에 I/O를 제어한다. 비디오 모듈(78)은 비디오 디스플레이에 연결된 비디오 I/O 제어기에 출력 기능을 제어한다. 진단 패널 모듈(80)은 시스템에 대한 진단 표시장치에 콘트롤을 제공한다. 하드웨어 호환성 데이터(82)는 제5도에 관해 후술되는 시스템 모델 및 서브 모델 값과 같은 값을 포함한다. ROM-BIOS 루틴은 시스템을 통상적으로 작동시키는데 필요한 것은 아니다. ROM-BIOS 루틴은 초기화, 테스트, 적재하는데에만 사용된다. 그 다음 ROM-BIOS는 버려지고 BIOS 이미지에 의해 대체된다. 이러한 BIOS 기능의 분리는 정상 동작 조건 하에서 BIOS에 대한 메모리 요건을 효과적으로 감소시킨다.
이제 제4도를 보면, 고정 디스크 또는 디스켓으로부터 시스템 BIOS 이미지를 적재하기 위한 객관적인 과정이 도시되어 있다. 시스템에 전력이 공급될 때, 시스템 프로세서는 POST 스테이지 Ⅰ의 엔트리 포인트를 유도된다(단계(100)). POST 스테이지 Ⅰ은 시스템을 초기화하고, 선택된 DASD로부터 BIOS 이미지를 적재하는데 필요한 시스템 기능만을 테스트한다(단계(102)). 특히, POST 스테이지 Ⅰ는 프로세서 플래너 기능, 진단패널, 메모리 서브시스템, 인터럽트 제어기, 타이머, DMA 서브시스템, 고정 디스크 BIOS 루틴(하드화일 모듈(76), 디스켓 BIOS 루틴(디스켓 모듈(74))을 필요에 따라 초기화한다.
POST 스테이지Ⅰ가 시스템을 사전-초기화한 후, POST 스테이지 Ⅰ는 시스템 프로세서를 초기 BIOS 적재 모듈(72)에 포함된 초기 BIOS 적재(IBL) 루틴으로 보낸다. IBL 루틴은 먼저, BIOS 이미지가 고정 디스크상에 기억되어 있는지 또는 디스켓으로부터 적재될 수 있는지 판별하고, 다음에, 선택된 매체(디스크 또는 디스켓)로부터 마스터 부트 레코드를 RAM에 적재한다(단계 (104)). 마스터 부트 레코드는 MBR 데이터와 MBR 코드를 포함한다. MBR 데이터는 검증용로 사용하고, MBR 코드는 BIOS 이미지 적재 하도록 실행된다. IBL 루틴의 동작에 대한 상세한 설명은 제6a도 내지 6D도에 관하여 이루어져 있다.
제4도를 계속 참고하면, IBL 루틴이 마스터 부트 레코드를 RAM에 적재한 후, 시스템 프로세서는 MBR 코드의 개시 어드레스로가서 실행을 개시한다(단계 (106)). MBR 코드는 BIOS 이미지의 신빙성을 판별하고 시스템의 구성을 검증하기 위한 일련의 유효 테스트를 실시한다. MBR 코드의 동작을 더 잘 이해하기 위해, MBR 코드가 상세히 설명된 도면 제7도를 주목해 본다.
상기 유효 테스트에 기초하여, MBR 코드는 BIOS 이미지를 RAM에 적재하고, 주메모리에 새로이 적재된 BIOS 이미지에 콘트롤을 전달한다(단계(108)). 특히, BIOS 이미지는 전해 ROM-BIOS가 점유하던 어드레스 공간으로 적재된다. 말하자면, ROM-BIOS가 EOOOOH 내지 FFFFFH로부터 어드레스 되었다면, BIOS 이미지는 상기 RAM 어드레스 공간으로 적재되어 ROM-BIOS를 대신한다. 콘트롤은 이제 새로 적재된 BIOS 이미지에 포함된 POST 스테이지 Ⅱ로 전달되고 ROM-BIOS는 내버려 둔다. 이제 RAM 안에 있는 POST 스테이지 Ⅱ는 오퍼레이팅 시스템 부트를 적재하기 위해 나머지 시스템을 초기화 하고 테스트한다(단계 (110 내지 114)).
단계(110)를 참조하면, POST 스테이지 Ⅱ로의 엔트리는 리세트 기능을 통하여 실행될 수 있다(단계(107)). 리세트 기능을 "웜 스타트"(warm start)가 요청되면 사용자에 의해 통상적으로 작동될 수 있다(단계(108)). 예를 들어, 리세트 기능은 키보드상에서 ctrl-alt-del키를 동시에 눌러서 작동될 수 있다. 웜 스타트의 효과는 사전-초기화, 테스트, 초기 BIOS 적재를 우회 통과하는 것이다. 웜 스타트는 BIOS를 재 부트하지 않지만, 오퍼레이팅 시스템은 POST 스테이지 Ⅱ에 의해 재 부트되는 것에 주목한다. 그러므로, RAM내의 BIOS가 영향을 받지 않으면, 시스템은 재 부트한 후 통상적인 방법으로 작동될 것이다.
명료히 하기 위해, 지금은 마스터 부트 레코드의 포맷에 관한 설명을 하는 것이 적절하겠다. 제5도를 보면, 마스터 부트 레코드가 도시되어 있다. 부트 레코드는 실행가능한 코드 시그먼트(120)와 데이터 시그먼트(122 내지 138)를 포함한다. MBR 코드 (120)는 ROM-BIOS의 신원을 검증하고, IBL 부트 레코드가 시스템과 호환성이 있는지 검사하며, 시스템 구성을 검증하며, 선택된 DASD(디스크 또는 디스켓)으로부터 BIOS 이미지를 적재하기 위한 DASD 종속 코드를 포함한다. 데이터 시그먼트(122 내지 138)는 매체를 규정하고, 마스터 부트 레코드를 식별, 검증하며, BIOS 이미지의 위치를 선정하고, BIOS 이미지를 적재하는데 사용되는 정보를 포함한다.
마스터 부트 레코드는 부트 레코드 기호(122)에 의해 식별된다. 부트 레코드 기호(122)는 레코드의 처음 3바이트에서 문자열 "ABC"와 같은 특정한 비트 패턴으로 될 수 있다. 마스터 부트 레코드의 보전성은 검사 합계값(132)에 의해 테스트되며 이 값은 부트 레코드가 적재될 때 계산된 검사 합계값과 비교된다. 데이터 시그먼트 또한 적어도 하나의 호환성 플래너 ID값(134)과, 호환성 모델 및 서브 모델값(136)을 포함한다. 마스터 부트 레코드의 플래너 ID값은 마스터 부트 레코드가 유효한 플래너를 규정한다. 유사하게, 마스터 부트 레코드의 모델 및 서브 모델값은 마스터 부트 레코드가 유효한 프로세서 및 플래너 I/O 구성을 각각 규정한다. 부트 레코드의 기호 및 검사 합계는 유효 마스터 부트 레코드를 식별하는 반면, 부트 레코드의 플래너 ID, 부트 레코드의 모델 및 비교는 서브 모델 시스템과 호환성이 있는 부트 레코드를 식별하고 시스템 구성이 유효한지 판별하는데 이용된다. 또다른 값 부트 레코드 패턴(124)은 ROM-BIOS의 유효성을 판별하는데 사용된다. 부트 레코드 패턴(124)은 ROM에 기억된 대응 패턴값과 비교된다. 값이 일치한다면 유효 ROM-BIOS는 선택된 매체로부터 BIOS이미지의 적재를 개시하는 것을 의미한다.
다음의 설명은 마스터 부트 레코드내의 각각의 값과 그들의 기능을 상세히 설명한 것이다.
MBR 식별자(122) : IBL 부트 레코드의 처음 3바이트는 "ABC"와 같은 문자로 구성될 수 있다. 이 기호는 부트 레코드를 식별하는데 이용된다.
MBR 코드 시그먼트(120) : 이 코드는 대응 플래너 id 및 모델/서브 모델값을 비교하여 플래너 및 프로세서와 부트 레코드의 호환성을 검증한다. 이들 값이 일치되면, 선택된 매체로부터 BIOS 이미지를 시스템 RAM에 적재한다. 시스템 이미지(메모리로 적재된 BIOS 이미지) 검사 합계가 유효하고 매체 적재 에러가 발생되지 않으면, MBR코드는 콘트롤을 시스템 이미지의 POST 스테이지 Ⅱ루틴으로 전달된다.
MBR 패턴(124) : IBL 부트 레코드 데이터 시그먼트의 첫 번째 필드는 문자열 "ROM-BIOS 1989" 와 같은 패턴을 포함한다. 이 문자열은 부트 패턴값을 ROM 에 기억된 대응값(ROM-패턴)과 비교하여 ROM-BIOS를 확인하는데 사용된다.
MBR 버전 날자(126) : 마스터 부트 레코드는 갱신 유틸리티의 사용을 위한 버전 날자를 포함한다.
시스템 분할 포인터(128) : 데이터 시그먼트는 스테이지 ⅡPOST가 사용하기 위한 매체 시스템 분할 영역이 시작되는 곳에 매체 포인터를 갖고 있다. IBL 디스켓에서, 포인터는 트랙-헤드-섹터 포맷에 있으며, 디스크에서는 상대 블록 어드레스(RBA) 포맷에 있다.
시스템 분할 타임(130) : 시스템 분할 타입은 매체 시스템 분할의 구조를 가리킨다. 세가지 타입의 분할구조, 즉 최대, 최소, 비존재 분할 구조가 있다. 최대 시스템 분할은 BIOS 이미지 및 마스터 부트 레코드에 더하여 셋업 유틸리티 및 진단 프로그램을 포함한다. 최소 시스템 분할은 BIOS 이미지와 마스터 부트 레코드만을 포함한다. IBL 이미지를 가진 하드 파일에 시스템에 접근하지 못하는 경우가 일어날 수 있는데, 이러한 경우 시스템 분할 타입은 존재치 않는 것을 가리킨다. 이때 IBL은 디스켓으로부터 발생할 것이다. 이들 세가지 시스템 분할 타입은 매체에서 얼마나 많은 공간을 시스템 분할이 차지할 것인지에 대한 유연성을 제공한다.
검사 합계값(132) : 데이터 시그먼트의 검사 합계값은 마스터 부트 레코드 코드의 레코드 길이값(1.5K 바이트)에 대한 유효 검사 합계를 발생하도록 초기화한다.
MBR 플래너 ID값(134) : 데이터 시그먼트는 호환성 플래너 ID 규정하는 워드의 문자열과 같은 값을 포함한다. 각각의 워드는 16비트 플래너 ID로 구성되며 문자열은 0의 워드값에 의해 종결된다. 시스템의 플래너 ID가 문자열에서 워드중 하나와 같은 마스터 부트 레코드내의 플래너 ID값과 일치한다면, IBL 매체 이미지는 시스템 플래너와 호환성이 있다. 시스템의 플래너 ID가 문자열내의 어떤 워드와도 일치하지 않으면, IBL 매체 이미지는 시스템 플래너와 호환성이 없다.
MBR 모델 및 서브 모델 값(136) : 데이터 시그먼트는 호환성 프로세서를 규정하는 워드의 문자열과 같은 값을 포함한다. 각각의 워드는 모델 및 서브 모델 값으로 이루어지며 문자열은 0의 워드값에 의해 종결된다. 시스템의 모델 및 서브 모델 값(ROM에 기억된)이 문자열의 워드중 하나와 일치하면, IBL 매체 이미지는 시스템 프로세서와 호환성이 있다. ROM 모델 및 ROM 서브 모델 값이 문자열의 어떤 워드와도 일치하지 않으면, IBL 매체 이미지는 시스템 프로세서와 호환성이 없다.
MBR 맵 길이(138) : IBL 맵 길이는 매체 이미지 블록의 수에 초기화한다. 다시말해, BIOS 이미지가 4블럭으로 나누어지면, 맵 길이는 4개 블록 포인트/길이 필드를 나타내는 4가 된다. 통상적으로 매체 이미지는 하나의 연속적인 128K 블록으로 되어 있기 때문에, 맵 길이는 1로 세트된다.
MBR 매체 섹터 사이즈(138) : 이 워드 값은 섹터당 바이트로서의 매체 섹터 사이즈로 초기화 된다. 매체 이미지 블록 포인트(138) : 매체 이미지 블록 포인터는 시스템 이미지 블록을 매체상에 위치시킨다. 통상적으로, 매체 이미지는 하나의 연속적인 블록으로서 기억되기 때문에, 단지 1개의 포인터가 있다. IBL 디스켓에서 포인터는 트랙-헤드-섹터 포맷에 있으며, 디스크에서 포인터는 상대 블록 어드레스 포맷에 있다.
매체 이미지 블록 길이(138) : 매체 이미지 블록 길이는 대응하는 이미지 블록 포인터에 위치한 블록의 크기를(섹터로) 나타낸다. BASIC을 위한 공간을 포함하는 128K 연속적인 매체 이미지의 경우에, 필드는 256 으로 세트되며 이는 BIOS 이미지 블록이 매체 이미지 블록 포인트 위치에서 시작되는 256섹터(512바이트/섹터)를 차지한다는 것을 의미한다.
이에 제6a도 내지 6d도를 보면, IBL 루틴 동작의 상세한 흐름도가 도시되어 있다. 정상 상태하에서, IBL 루틴은 시스템 고정 디스크 루터 마스터 부트 레코드를 특정 어드레스의 RAM에 적재한 다음 시스템 프로세서로 하여금 마스터 부트 레코드의 코드 시그먼트 실행을 시작하게 한다. IBL 루틴은 또한 마스터 부트 레코드가 디스켓으로부터 적재될 수 있는 디스켓 디폴트 모드에 대한 준비를 포함한다. 그런데, IBL 루틴은 시스템이 시스템 고정 디스크상에 IBL 매체를 포함하고 유효 패스워드가 NVRAM에 존재하면 디스켓 디폴트 모드가 실시되는 것을 허용치 않는다. 사용자는 NVRAM에 패스워드를 세팅하는 선택권을 갖는다. 디스켓 디폴트 모드가 실시되는 것을 방지하는 목적은 디스켓으로부터 승인되지 않은 BIOS 이미지를 적재하는 것을 방지하려는 것이다. 다시 말해, 디스켓 디폴트 모드는 시스템 고정 디스크가 작동하지 않고 사용자가(패스워드를 세팅함으로서) 디스켓으로부터 적재될 수 있도록 원하는 것을 나타낼때에만 사용된다. IBL 루틴이 어떤 매체로부터 마스터 부트 레코드를 적재할 수 없다면, 에러 메시지가 발생되고 시스템은 정지된다.
이제 제6a도를 보면, 정상 상태에서 시스템은 IBL 루틴이 초기화하는 시스템 고정 디스크를 포함한다(단계(150)). 설명하기 위한 목적으로 고정 디스크는 퍼스널 컴퓨터 시스템의 드라이브 C용으로 구성되었다고 가정한다. 유사하게, 드라이브 A는 디스켓 드라이브로서 표시되어 있다. IBL 루틴 IBL 매체를 포함하는지 판별하기 위해 드라이브 C를 시험한다(단계(152)). 이 공정을 상세하게 설명한 제6B를 주목해 본다. IBL 루틴은 최종 세 개 섹터에서 고정 디스크로부터 판독을 시작하고 매체 포인터를 낮추면서 99섹터에 대해 판족을 계속하거나 유효 마스터 부트 레코드가 발견될때까지 판독을 계속한다. 마스터 부트 레코드가 발견되면 시스템 플래너 및 프로세서 호환성에 대해 검사된다(단계(156)). 플래너 또는 프로세서 호환성이 없으면 에러가 보고된다(단계 (158)). 단계(152)로 다시 가서, 마스터 부트 레코드가 고정 디스크(기본 하드화일)의 최종 99섹터에서 발견되지 않으면, 에러가 보고된다(단계(154)).
단계(156)로 돌아가서, 마스터 부트 레코드가 발견되면, 마스터 부트 레코드가 컴퓨터 시스템과 호환성이 있는지 판별하기 위한 일련의 유효성 검사가 실시된다. 부수적으로, 시스템의 구성이 검사된다. 이 과정을 더욱 상세히 설명한 제6d도를 주목해 본다. 레코드 부트가 플래너 ID, 모델 및 서브 모델과 호환성이 있고, 또한 시스템 구성이 변경되지 않았다면, 마스터 부트 레코드는 적재되고 마스터 부트 레코드의 코드 시그먼트가 실행된다(단계(160)).
단계(154 및 158)로 돌아가서, 고정 디스크로부터 마스터 부트 레코드 적재시 에러가 발생하거나, 고정 디스크가 사용가능하지 않으면, IBL 루틴은 유효 패스워드가 NVRAM내에 포함되어 있는지 판별한다(단계(162)). 이 패스워드는 BIOS 이미지가 디스켓으로부터 적재될 수 있는지 판별한다. 패스워드는 세트특성 유틸리티를 동작시키는 사용자에 의해 설치될때에만 존재한다. 패스워드가 NVRAM에 설치되었다면, BIOS 이미지는 디스켓으로부터 적재되는 것이 방지된다(단계(164)). 이는 사용자로 하여금 시스템에 고정 디스크상의 BIOS 이미지만 적재되게 함으로서 시스템 작동의 보전성을 보장케 한다. 패스워드는 NVRAM에 기억된 문자열의 형태가 될 수도 있다.
단계(162)로 가서, NVRAM내에 유효 패스워드가 존재치 않으면, 따라서 BIOS 이미지가 디스켓으로부터 적재되게 하면, IBL 루틴은 디스켓 서브 시스템을 초기화한다(단계(166)). IBL 루틴은 이제 드라이브 A가 디스켓상에 IBL 매체를 포함하는지 판별한다(단계(168)). 드라이브 A가 IBL 매체를 포함하지 않으면, 무효 디스켓이 드라이브에 삽입되었음을 사용자에게 알리기 위해 에러가 발생된다(단계(170)). 시스템은 이제 정지된다(단계(172)). 단계(168)의 더욱 상세한 설명을 제6도를 주목해 본다.
단계(168)로 가보면, 드라이브 A가 IBL 매체에 대해 검사된 후, 마스터 부트 레코드가 RAM에 적재되고 마스터 부트 레코드에 포함된 시그먼트가 실행된다(단계 (160)). 디스켓에 대해서는 IBL 루틴이 고정 디스크 시스템에서 사용되었던 유효성 검사를 포함하지 않는다는 것에 주목할 필요가 있다. 유효성 검사가 없는 이유는 디스켓으로부터 비-호환성 IBL 이미지를 적재하기 위한 것이다. 예를 들어, 새로운 프로세서가 시스템에 부가되었다면 새로운 BIOS 이미지가 디스켓에 포함될 것이다. 새로운 프로세서는 고정 디스크로부터 적재될 때 유효성 에러를 발생할 것이기 때문에, IBL 루틴은 디스켓으로부터 BIOS 이미지를 적재함으로서 이러한 테스트를 피하는 능력을 제공한다.
되풀이하여 말해, 마스터 부트 레코드는 시스템 플래너 ID 및 프로세서 모델/서브 모델 값을 부트 레코드 값과 매칭시키는 것을 통하여 시스템과의 호환성을 검사한다. 디스크에 대하여, 이러한 검사는 IBL 루틴(72)에서 먼저 행한 다음, IBL 부트 레코드에서 다시 행해진다.(IBL 루틴에서의)첫번째 검사는 부트 레코드가 시스템과의 호환성이 있음을 보장하기 위해 행해지며, (부트 레코드에서의)두번째 검사는 콘트롤이 부트 레코드로 전달된 호환성 ROM을 보장하도록 행해진다. IBL 루틴은 호환성이 이미 검사되었기 때문에 디스크 부트 레코드에서 행해진 검사는 호환성 ROM에 대해서는 실패하지 않을 것이다. 대조적으로, 첫 번째 호환성 검사는 디스켓에 대해서는 하지 않는다. 플래너/프로세서 호환성은 디스켓 부트 레코드가 실행되는 동안에만 검사된다. 이 방법은 기준 디스켓으로부터 새로운 BIOS 이미지를 적재함에 있어 또 다른 수정이 가능하게 한다.
제6a도의 IBL 루틴의 설명에 있어, 전술한 유효성 테스트의 완전한 이해에 도달하도록 설명이 되겠다.
제6b도를 보면, 유효 마스터 부트 레코드가 드라이브 C에 있는지 판별하기 위한 제6a도의 단계(152)의 상세한 흐름도가 도시되어 있다. 이 과정은 IBL 루틴이 드라이브 C로 액세스할 수 있도록 드라이브 피라미터를 획득하는 것으로 시작한다(단계 (200)). IBL 적재 위치는 디스크로부터 최종 3개 섹터(최종 3개 섹터는 마스터 부트 레코드를 통상 포함한다)로 세트된다(단계(202)). 디스크로부터 마스터 부트 레코드를 판독하는 시도의 회수를 나타내는 적재 카운트는 1로 세트된다(단계(204)). 세 개의 섹터는 IBL 적재 위치에서 디스크로부터 판독된다(단계(206)). 디스크 드라이브 에러가 검출되고 디스크 드라이브 판독 에러가 발생하면 이것이 보고된다(단계(208 내지 210). 과정은 이제 에러 표시로 간다(단계(212 내지 214).
단계(208)로 돌아가서, 드라이브 에러가 발생치 않으면, 디스크 레코드는 마스터 부트 레코드 신호에 대해 스캔된다. 문자 "ABC"와 같은 부트 레코드 기호는 디스크 레코드의 처음 3개 바이트와 비교된다. 디스크 레코드가 유효 부트 레코드 기호 (문자"ABC")를 갖고, 메모리에 적재된 디스크 레코드로부터 계산된 검사 합계가 부트 레코드 검사 합계와 같다면, 디스크 레코드는 에러를 갖지 않은 유효 부트 레코드로서 표시된다(단계(218)). 과정은 이제 단계(214)로 되돌아간다.
다시 단계(216)로가서, 부트 레코드가 기호 또는 검사 합계가 무효이면, 적재 카운트는 1씩 감소된다(단계(220)). 적재 카운트는 99와 같은 선정된 상수와 비교된다(단계(222)). 부트 레코드를 판독하려는 99번의 시도가 실패로 돌아가면, 에러가 표시되고 과정은 되돌아간다(단계(224),)212),(214)). 부트 레코드를 판독하려는 시도가 99번 이하로 발생되었다면, IBL 적재 위치는 1씩 감소되고 3개의 새로운 섹터가 새로운 적재 위치로부터 판독된다(단계(226 및 206)). 그러므로, 유효 IBL 부트 레코드가 최종 99섹터(33카피와 등가임)로부터 적재될 수 없다면, 에러 조건이 설정되고 콘크롤은 IBL 루틴으로 되돌아간다.
이제 제6c도를 참고하면, 드라이브 A 상의 디스켓으로부터 마스터 부트 레코드를 적재하기 위한 상세한 흐름도가 도시되어 있다. 먼저, 드라이브 A로 액세스하기 위한 디스켓 드라이브 파라미터가 검색된다(단계(230)). IBL적재 위치는 디스켓상의 최종 3개 섹터(실리터, 헤드 및 섹터 포맷)에 설정된다(단계(232)). 최종 3개 섹터는 단계(234)에서 판독된다. 디스켓 드라이브 에러가 검출되면, 에러가 표시된다(단계 (236 내지 238)). 에러 조건이 세트되고 콘트롤은 IBL 루틴으로 되돌려진다(단계 (240 내지 242)).
단계(236)로 가서, 드라이브 에러가 검출되지 않으면, 디스켓 레코드는 부트 레코드 신호에 대해 검사되고, 검사 합계가 계산된다(단계(244)). 부트 레코드 신호가 빠져 있거나 검사 합계가 무효이면, 에러가 표시되고 콘트롤은 IBL 루틴으로 되돌려진다(단계(244, 246, 240, 242)). 유효 부트 레코드 기호 및 유료 검사 합계가 검출되면 표시가 세트되고 콘트롤은 IBL 루틴으로 되돌려진다(단계(248 및 242)). 디스켓 적재에 있어, IBL 루틴은 고정 디스크 적재에서처럼 매체를 통하여 탐색하지 않는다는 것에 유의한다. 그러므로, 디스켓 적재에 있어 IBL 매체는 디스켓의 특정 위치에 기억되어야 한다.
마지막으로, 제6d도는 시스템 플래너 및 프로세서 호환성에 관해 또한 적당한 시스템 구성에 관해 IBL 루틴이 어떻게 테스트하는지를 도시한다. 마스터 부트 레코드는 부트 레코드 플레너 ID 값을 시스템 프로세서에 의해 판독되는 시스템 플래너 ID와 비교함으로서 시스템 플래너와의 호환성에 대해 검사된다(단계(260)). 만약, 시스템 플래너 ID가 부트 레코드 플래너 ID 값과 일치하지 않으면, 이는 그 마스터 부트 레코드가 당해 플래너와 호환성이 없다는 것을 의미한다. 에러가 표시되고 콘트롤은 IBL 루틴으로 되돌아간다(단계(262, 264, 266)).
마스터 부트 레코드가 플래너와 호환성이 있으면, 마스터 부트 레코드는 프로세서와의 호환성에 대해 검사된다(단계(268)). 부트 레코드 모델값 및 서브 모델값은 ROM에 각각 기억된 모델값 및 서브 모델값과 비교된다. 일치되지 않는 것은 새로운 프로세서가 삽입되었음을 나타내며 이 부트 레코드는 새로운 프로세서와 호환성이 없음을 나타낸다. 에러가 표시되고 콘트롤은 IBL 루틴으로 되돌아간다(단계(270, 264, 266)). 마스터 부트 레코드가 플래너 및 프로세서와 호환성이 있으면, NYRAM이 신뢰성이 있는지를 판별하는 검사를 한다(단계(272)). NVRAM이 신뢰성이 없다면 에러가 표시되고 콘트롤은 IBL 루틴으로 돌려진다(단계(274, 266)). NVRAM이 신뢰성이 있다면, 시스템 구성이 검사된다(단계(276)). NVRAM에 기억된 모델 및 서브 모델값이 ROM에 기억된 모델 및 서브 모델값과 일치하지 않는 것은 시스템 구성에서의 변경을 나타내는 것이다. 상기 최종 비교는 구성 에러만을 가리킬뿐 이라는 점에 유의한다. 구성 에러가 표시되면, 에러가 사용자를 위해 발생된다. 이 에러는 사용자에게 지난번 SET 구성이 수행되었으므로 시스템의 구성이 변경되었음을 알려준다. 사용자에게는 변경된 구성이 알려지고 콘트롤은 IBL 루틴으로 되돌려진다(단계(278, 264, 266)). 이 에러는 치명적인 것은 아니며, 사용자에게 SET구성(구성 프로그램)이 실행되어야 함을 알려준다. 단계(276)로 되돌아가서, 시스템 모델/서브 모델값이 일치하면, 호환성 표시가 세트되고 루틴은 되돌아간다(단계(276,274,266)). 그러므로, 마스터 부트 레코드와 시스템과의 호환성은 시스템 구성이 변경되었는지의 판별과 함께 테스트한다.
IBL 루틴이 마스터 부트 레코드를 RAM에 적재한 후, 콘트롤은 MBR 코드 개시 어드레스로 전달된다.
제7도를 보면, 마스터부터 레코드의 실행 가능한 코드 시그먼트는 ROM 패턴에 대한 부트 레코드 패턴을 먼저 검증한다(단계(300)). 마스터 부트 레코드에서의 패턴이 ROM에서의 패턴과 일치하지 않으면, 에러가 발생하고 시스템은 정지한다 (단계(302 및 305)). ROM과 부트 레코드 패턴 사이의 동등성에 대한 검사는 디스크 또는 디스켓으로부터 적재된 마스터 부트 레코드가 플래너 보드상의 ROM과 호환성임을 보장한다. 이 과정은 제6d도에서 상세히 설명되겠다. 만약 값이 일치하지 않으면, 마스터 부트 레코드가 시스템 플래너 또는 프로세서와 호환성이 없거나, 시스템 구성이 변경된 것으로, 에러가 발생된다(단계(306)). IBL 레코드가 플래너, 모델 또는 서브 모델값과 호환성이 없을 때 시스템은 정지한다(단계(305)).
단계(304)로 되돌아가서, 시스템 플래너 ID값, 모델 및 서브 모델값이 대응 마스터 부트 레코드 값과 일치하면, MBR 코드는 선택된 매체로부터 BIOS 이미지를 시스템 RAM에 적재한다(단계(308)). 데이터 판독시 매체 적재 에러가 발생하면(단계 (310)), 에러가 발생되고 시스템은 정지한다(단계(312 및 305)). 단계(310)로 되돌아가서, 매체 적재 에러가 발생하지 않으면, 메모리내의 BIOS 이미지에 대한 검사 합계가 계산된다(단계(314)). 검사 합계가 무효이면, 에러가 발생되고 시스템은 정지한다(단계(318 및 305)). 단계(316)로 가서, 검사 합계가 유효하면, 시스템 분할 포인터가 세이브되고(단계(320)). 시스템 프로세서는 시스템 적재를 시작하도록 POST 스테이지 Ⅱ로 간다(단계(322)).
이렇게 하여, BIOS의 오퍼레이팅 사이즈를 감축시키기 위한 방법 및 장치가 설명되었다. BIOS의 제1부분은 ROM에 기억되며, 시스템 초기화를 포함하고 있고, DASD에서 RAM에 기억되어 있는 BIOS의 나머지 부분을 부트업 하는데 필요한 테스트를 포함한다. BIOS의 제1 및 나머지 부분은 파워 업에 따라 실행되며 나머지 부분은 시스템 리세팅시 실행될 필요가 있다.
비록 본 발명이 양호한 실시예와 연관되어 설명되었지만, 본 기술분야에 통상의 지식을 가진 사람에게는 여러 가지 변경이 가능할 것이며, 본 발명의 범위는 첨부된 청구의 범위 및 동등물에 의해서만 규정된다고 이해해야 겠다.

Claims (20)

  1. 퍼스널 컴퓨터 시스템용 BIOS 오퍼레이팅 사이즈 감축 장치로서, 퍼스널 컴퓨터 시스템은 리드 온리 메모리, 랜덤 액세스 메모리 및 직접 접근 기억 장치와 전기적으로 결합된 시스템 프로세서를 가진 BIOS 오퍼레이팅 사이즈 감축 장치에 있어서, 리드 온리 메모리에 상주하는 BIOS의 제1부분을 구비하고, 상기 BIOS의 제1부분은 시스템 및 직접 기억 장치를 초기화 하는 수단을 가지며, 직접 접근 기억 장치에 포함된 마스터 부트 레코드를 구비하고, 상기 마스터 부트 레코드는 실행 가능한 코드 시그먼트를 포함하며, 직접 접근 기억 장치에 포함된 BIOS의 나머지 부분을 구비하고, 상기 BIOS의 나머지 부분은 퍼스널 컴퓨터 시스템을 작동시키는 부분을 포함하며, BIOS의 제1부분은 마스터 부트 레코드를 적재 하도록 시스템 및 직접 접근 기억 장치를 초기화 하고, 상기 BIOS의 제1부분은 시스템 작동을 개시하도록 랜덤 액세스 메모리로 BIOS의 나머지 부분의 적재를 실행하기 위하여 마스터 부트 레코드의 실행 가능한 코드 시그먼트로 콘트롤을 전달하는 BIOS 오퍼레이팅 사이즈 감축 장치.
  2. 제1항에 있어서, 상기 BIOS의 제1부분의 상기 초기화 수단은 파워 온 자체 테스트 루틴을 포함하며, 상기 파워 온 자체 테스트 루틴은 BIOS의 나머지 부분을 적재하는데 필요한 시스템 기능만을 초기화 하고 테스트하는 BIOS 오퍼레이팅 사이즈 감축 장치.
  3. 제2항에 있어서, 상기 파워 온 자체 테스트는 시스템 프로세서 기능, 메모리 서브 시스템, 직접접근 기억 장치 서브 시스템을 초기화하는 BIOS 오퍼레이팅 사이즈 감축 장치.
  4. 제1항에 있어서, 상기 BIOS의 제 1부분의 상기 초기화 수단은 상기 마스터 부트 레코드를 랜덤 액세스 메모리에 적재하고 상기 마스터 부트 레코드로 콘트롤을 전달하는 적재 루틴을 포함하는 BIOS 오퍼레이팅 사이즈 감축 장치.
  5. 제1항에 있어서, 마스터 부트 레코드는 데이터 시그먼트를 더 포함하고, 데이터 시그먼트는 상기 마스터 부트 레코드와 호환성이 있는 퍼스널 컴퓨터 시스템의 하드웨어 구성을 나타내며, 리드 온리 메모리는 시스템 프로세서의 하드웨어 구성을 나타내는 데이터를 포함하며, 상기 BIOS의 나머지 부분이 랜덤 액세스 메모리로 적재되기 이전에 상기 실행 가능한 코드 시그먼트는 마스터 부트 레코드로부터의 하드웨어 구성 데이터를 리드 온리 메모리로부터의 하드웨어 구성 데이터와 비교하여 마스터 부트 레코드가 시스템 프로세서와 호환성이 있는지 검증하는 BIOS 오퍼레이팅 사이즈 감축 장치.
  6. 제5항에 있어서, 마스터 부트 레코드의 데이타 시그먼트는 마스터 부트 레코드와 호환성이 있는 시스템 플래너를 나타내는 값을 포함하며, 시스템 플래너는 마스터 부트 래코드가 시스템 플래너와 호환성이 있음을 검증하기 위해 시스템 플래너를 특유하게 식별하는 수단을 더 포함는 BIOS 오퍼레이팅 사이즈 감축 장치.
  7. 제5항에 있어서, 마스터 부트 레코드상의 하드웨어 구성 데이터는 모델값 및 서브 모델값을 포함하며, 모델값은 상기 마스터 부트 레코드와 호환성이 있는 시스템 프로세서를 식별하고 서브 모델값은 마스터 부트 레코드와의 호환성이 있는 시스템 플래너의 I/O 구성을 나타내며, 상기 리드 온리 메모리는 시스템 프로세서를 식별하는 대응 모델값 및 시스템 플래너의 I/O 구성을 나타내는 서브 모델값을 포함하며, 마스터 부트 레코드가 시스템 프로세서 및 시스템 플래너의 I/O 구성과 호환성이 있는지 검증하기 위해 상기 마스터 부트 레코드의 모델값 및 서브 모델값은 리드 온리 메모리에 대응 모델 및 서브 모델값과 각각 비교되는 BIOS 오퍼레이팅 사이즈 감축 장치.
  8. 시스템 프로세서, 리드 온리 메모리, 랜덤 액세스 메모리, 적어도 하나의 직접 접근 기억 장치를 갖춘 퍼스널 컴퓨터 시스템으로 BIOS를 적재하기 위한 장치에 있어서, 상기 장치는 리드 온리 메모리에 포함된 BIOS의 제1부분을 구비하고, 상기 BIOS의 제1부분은, 시스템 프로세서 및 적어도 하나의 직접 접근 기억장치를 초기화 하는 수단과, 적어도 하나의 직접 기억 장치로부터 데이터 레코드를 랜덤 액세스 메모리로 적재하기 위한 적재수단과, 퍼스널 컴퓨터 시스템이 BIOS와 호환성이 있는지 확인하기 위한 확인 수단을 포함하며, 적어도 하나의 직접 접근 기억 장치에 포함된 BIOS의 나머지 부분을 구비하고, 상기 BIOS의 나머지 부분은 퍼스널 컴퓨터 시스템의 작동을 돕기 위한 재사용 가능 수단을 포함하며, 상기 BIOS의 제1부분은 상기 BIOS의 나머지 부분이 시스템과 호환성이 있음을 확인한 후 상기 상기 나머지 BIOS 부분의 랜덤 액세스 메모리로의 적재를 실행하기 위해 시스템 및 적어도 하나의 직접 접근 기억 장치를 초기화시키는 BIOS 적재 장치.
  9. 제8항에 있어서, 상기 BIOS의 제1부분의 상기 초기화 수단은 파워 온 자체 테스트 루틴을 포함하고, 상기 파워 온 자체 테스트 루틴은 BIOS의 나머지 부분을 적재하는데 필요한 시스템 기능만을 초기화 하고 테스트하는 BIOS 적재 장치.
  10. 제9항에 있어서, 상기 파워 온 자체 테스트는 시스템 프로세서 기능, 메모리 서브 시스템, 직접 접근 기억 장치 서브 시스템을 초기화하는 BIOS 적재 장치.
  11. 제8항에 있어서, 상기 확인 수단은 시스템 프로세서의 타입 및 시스템 프로세서에 결합된 시스템 플래너의 구성을 나타내는 데이터를 포함하는 BIOS 적재 장치.
  12. 제11항에 있어서, 상기 확인 수단은 상기 BIOS의 나머지 부분의 적재시 에러를 표시하기 위한 수단을 포함하는 BIOS 적재 장치.
  13. 제12항에 있어서, 상기 에러 표시 수단은 진단 패널을 구비하는 BIOS 적재 장치.
  14. 제12항에 있어서, 상기 에러 표시 수단은 비디오 I/O 제어기를 구비하는 BIOS 적재 장치.
  15. 제8항에 있어서, 적어도 하나의 직접 접근 기억 장치는 고정 디스크 드라이브를 구비하며 상기 적재 수단은 상기 고정 디스크 드라이브로부터 데이터 레코드를 랜덤 액세스 메모리에 적재시키는 BIOS 적재 장치.
  16. 제8항에 있어서, 적어도 하나의 직접 접근 기억 장치는 디스켓 드라이브를 구비하며, 상기 적재 수단은 상기 디스켓 드라이브로부터 데이터 레코드를 랜덤 액세스 메모리에 적재시키는 BIOS 적재 장치.
  17. 리드 온리 메모리, 랜덤 액세스 메모리 및 직접 접근 기억 장치와 전기적으로 결합된 시스템 프로세서를 포함하는 퍼스널 시스템에서 BIOS 적재를 위한 방법에 있어서, (a) 시스템 및 직접 접근 기억 장치를 초기화하기 위한 수단을 포함하는 BIOS의 제1부분을 리드 온리 메모리에 기억시키는 단계와, (b) 정상적인 방법으로 퍼스널 컴퓨터 시스템을 작동시키기 위한 수단을 포함하는 BIOS의 나머지 부분을 직접 접근 기억 장치에 기억시키는 단계와, (c) 시스템 및 직접 접근 기억 장치를 BIOS의 제1부분으로 초기화 하는 단계와, (d) 실행 가능한 코드 시그먼트를 포함하는 마스터 부트 레코드를 랜덤 액세스 메모리에 적재하는 단계와, (e) BIOS의 나머지 부분을 랜덤 액세스 메모리에 적재하기 위해 콘트롤을 실행 가능한 코드 시그먼트를 전달하는 단계를 구비하는 BIOS 적재 방법.
  18. 제17항에 있어서, (f) 제1BIOS부분에 기억된 데이터를 마스터 부트 레코드에 기억된 대응 데이터와 비교하여 마스터 부트 레코드가 시스템과 호환성이 있는지 검증하는 단계를 더 포함하는 BIOS 적재방법.
  19. 제17항에 있어서, (g) 리드 온리 메모리내의 데이터를 마스터 부트 레코드에 포함된 대응 데이터와 비교하여 마스터 부트 레코드가 시스템 프로세서와 호환성이 있는지 검증하는 단계를 더 포함하는 BIOS 적재 방법.
  20. 제18항에 있어서, (h) 마스터 부트 레코드가 호환성이 없다는 표시를 발생시키는 단계를 포함하는 BIOS 적재 방법.
KR1019900012417A 1989-08-25 1990-08-11 퍼스널 컴퓨터 시스템에서 bios용 메모리를 감축시키기 위한 장치 및 방법 KR920008445B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/398,860 US5136713A (en) 1989-08-25 1989-08-25 Apparatus and method for decreasing the memory requirements for bios in a personal computer system
US398,860 1989-08-25

Publications (2)

Publication Number Publication Date
KR910005169A KR910005169A (ko) 1991-03-30
KR920008445B1 true KR920008445B1 (ko) 1992-09-29

Family

ID=23577082

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019900012417A KR920008445B1 (ko) 1989-08-25 1990-08-11 퍼스널 컴퓨터 시스템에서 bios용 메모리를 감축시키기 위한 장치 및 방법

Country Status (15)

Country Link
US (1) US5136713A (ko)
EP (1) EP0417888B1 (ko)
JP (1) JPH0756631B2 (ko)
KR (1) KR920008445B1 (ko)
CN (1) CN1017839B (ko)
AT (1) ATE138747T1 (ko)
AU (1) AU635550B2 (ko)
CA (1) CA2020521C (ko)
DE (1) DE69027164T2 (ko)
GB (1) GB9012946D0 (ko)
HK (1) HK203296A (ko)
IL (1) IL95228A0 (ko)
MY (1) MY106707A (ko)
NZ (1) NZ234711A (ko)
SG (1) SG44435A1 (ko)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5355489A (en) * 1989-08-25 1994-10-11 International Business Machines Corp. Bios load for a personal computer system having a removable processor card
US5872967A (en) * 1989-12-29 1999-02-16 Packard Bell Nec Method for warm boot from reset
US5497492A (en) * 1990-09-04 1996-03-05 Microsoft Corporation System and method for loading an operating system through use of a fire system
IT1254937B (it) * 1991-05-06 1995-10-11 Aggiornamento dinamico di memoria non volatile in un sistema informatico
DE4215063C2 (de) * 1991-05-10 1999-11-25 Intel Corp Einrichtung und Verfahren zum Seitenwechsel bei einem nicht-flüchtigen Speicher
US5388267A (en) * 1991-05-29 1995-02-07 Dell Usa, L.P. Method and apparatus for updating and restoring system BIOS functions while maintaining BIOS integrity
US5276863A (en) * 1991-06-28 1994-01-04 Digital Equipment Corporation Computer system console
US5471674A (en) * 1992-02-07 1995-11-28 Dell Usa, L.P. Computer system with plug-in override of system ROM
US5432939A (en) * 1992-05-27 1995-07-11 International Business Machines Corp. Trusted personal computer system with management control over initial program loading
US5481709A (en) * 1992-06-22 1996-01-02 International Business Machines Corporation Method and apparatus for providing a modular ABIOS device support layer in a computer system
US5446898A (en) * 1992-06-22 1995-08-29 International Business Machines Corporation Method and apparatus for configuring and installing a loadable ABIOS device support layer in a computer system
US5465357A (en) * 1992-06-22 1995-11-07 International Business Machines Corporation Method and apparatus for an automated dynamic load of an ABIOS device support layer in a computer system
US5495611A (en) * 1992-06-22 1996-02-27 International Business Machines Corporation Method and apparatus for dynamic load of an ABIOS device support layer in a computer system
US6438683B1 (en) * 1992-07-28 2002-08-20 Eastman Kodak Company Technique using FIFO memory for booting a programmable microprocessor from a host computer
US5870520A (en) * 1992-12-23 1999-02-09 Packard Bell Nec Flash disaster recovery ROM and utility to reprogram multiple ROMS
US6357000B1 (en) 1993-01-29 2002-03-12 Microsoft Corporation Method and system for specified loading of an operating system
US5519843A (en) * 1993-03-15 1996-05-21 M-Systems Flash memory system providing both BIOS and user storage capability
US5581766A (en) * 1993-05-17 1996-12-03 Compaq Computer Corporation Selectable video driver system
US6453363B1 (en) 1993-10-21 2002-09-17 Microsoft Corporation Method and computer system for integrating a compression system with an operating system
US5651139A (en) * 1993-12-23 1997-07-22 International Business Machines Corporation Protected system partition read/write access on a SCSI controlled DASD
US5768568A (en) * 1994-04-29 1998-06-16 International Business Machines Corp. System and method for initializing an information processing system
US5673385A (en) * 1994-06-15 1997-09-30 Hewlett-Packard Company Method for downloading special code from a computer to a hard copy apparatus
US5864698A (en) * 1994-08-24 1999-01-26 Packard Bell Nec Disk based bios
US6421776B1 (en) * 1994-10-14 2002-07-16 International Business Machines Corporation Data processor having BIOS packing compression/decompression architecture
US5642506A (en) * 1994-12-14 1997-06-24 International Business Machines Corporation Method and apparatus for initializing a multiprocessor system
US5701477A (en) * 1995-03-30 1997-12-23 Cirrus Logic, Inc. Method and apparatus for master boot record shadowing
GB2300497B (en) * 1995-05-03 1999-12-15 Brasil International Computer control device for use with a TV game machine
US5822581A (en) * 1995-09-29 1998-10-13 Intel Corporation Method for CMOS configuration information storage and retrieval in flash
US5835760A (en) * 1995-10-13 1998-11-10 Texas Instruments Incorporated Method and arrangement for providing BIOS to a host computer
US5860139A (en) * 1996-06-11 1999-01-12 Data General Corporation BIOS memory address decoder for providing an extended BIOS memory address space by reclaiming a portion of non-BIOS address space
US5930504A (en) * 1996-07-22 1999-07-27 Intel Corporation Dynamic nonvolatile memory update in a computer system
KR100191269B1 (ko) * 1996-08-23 1999-06-15 윤종용 하드 디스크를 이용한 컴퓨터 시스템의 검사 방법
US5875349A (en) * 1996-12-04 1999-02-23 Intersect Technologies, Inc. Method and arrangement for allowing a computer to communicate with a data storage device
KR100298420B1 (ko) * 1997-03-10 2001-10-24 윤종용 롬바이오스의업데이트방법
US6938254B1 (en) * 1997-05-06 2005-08-30 Microsoft Corporation Controlling memory usage in systems having limited physical memory
US6523112B1 (en) * 1997-06-30 2003-02-18 Emc Corporation Operating system software boot program execution method
KR100299119B1 (ko) * 1997-09-30 2001-09-03 윤종용 플래쉬롬제어장치를구비한개인용컴퓨터시스템및그제어방법
US6854000B2 (en) * 1997-12-27 2005-02-08 Canon Kabushiki Kaisha Image forming apparatus and control method for the same
US5968174A (en) * 1998-03-19 1999-10-19 Bay Networkds, Inc. Method and apparatus for implementing a 32-bit operating system which supports 16-bit code
US6546489B1 (en) 1999-03-04 2003-04-08 Western Digital Ventures, Inc. Disk drive which provides a secure boot of a host computer system from a protected area of a disk
US6401198B1 (en) * 1999-03-09 2002-06-04 Texas Instruments Incorporated Storing system-level mass storage configuration data in non-volatile memory on each mass storage device to allow for reboot/power-on reconfiguration of all installed mass storage devices to the same configuration as last use
AU1958701A (en) 1999-12-08 2001-06-18 Insyde Software, Inc. A system and method for the delivery, retrieval and display of content prior to operating system loading
US20050160213A1 (en) * 2004-01-21 2005-07-21 Chen Ben W. Method and system for providing a modular server on USB flash storage
CN1110748C (zh) * 2000-04-26 2003-06-04 刘海全 作为计算机扩展BIOS软件的载体的Boot ROM的增容方法及其载体
US6584561B1 (en) * 2000-09-19 2003-06-24 Dell Products L.P. System and method to modify CD boot
US6725178B2 (en) 2002-01-15 2004-04-20 International Business Machines Corporation Use of hidden partitions in a storage device for storing BIOS extension files
US6971003B1 (en) * 2002-04-02 2005-11-29 Adaptec, Inc. Method and apparatus for minimizing option ROM BIOS code
US20040123093A1 (en) * 2002-12-20 2004-06-24 Rothman Michael A. Method and apparatus for loading BIOS and option ROM's from alternate locations
US7134006B2 (en) * 2003-06-03 2006-11-07 Gateway Inc. Method and system for changing software access level within or outside a host protected area
US7487345B2 (en) * 2003-10-10 2009-02-03 Dell Products L.P. Method of comparing build capability flags of replacement BIOS with boot capability flags of current BIOS to determine compatibility between BIOS revisions and installed hardware during flash update
EP1656866A1 (fr) 2004-11-12 2006-05-17 Nestec S.A. Appareil et méthode pour la préparation de mousse à partir d'un liquide alimentaire à base de lait
TWI287743B (en) 2005-10-17 2007-10-01 Asustek Comp Inc Method for initiating a display chip
CN1916853B (zh) * 2006-09-18 2010-05-19 华为技术有限公司 用于mips系统的代码段保护方法和装置
JP4735845B2 (ja) * 2006-09-25 2011-07-27 マツダ株式会社 車両用インスツルメントパネルの照明制御装置
CN101686766B (zh) 2007-05-23 2013-04-24 雀巢产品技术援助有限公司 用于调匀乳基液体的器具
CN101807152B (zh) * 2009-02-13 2013-10-23 环旭电子股份有限公司 自我验证选择只读存储器的基本输出入系统及其验证方法
US20180032351A1 (en) * 2016-07-29 2018-02-01 Lenovo (Beijing) Co., Ltd. Information processing method and storage device
CN113608827A (zh) * 2021-06-30 2021-11-05 济南浪潮数据技术有限公司 虚拟化集群节点检查方法、装置及电子设备和存储介质

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3931504A (en) * 1972-02-07 1976-01-06 Basic Computing Arts, Inc. Electronic data processing security system and method
US3996449A (en) * 1975-08-25 1976-12-07 International Business Machines Corporation Operating system authenticator
US4446519A (en) * 1981-05-26 1984-05-01 Corban International, Ltd. Method and apparatus for providing security for computer software
US4593353A (en) * 1981-10-26 1986-06-03 Telecommunications Associates, Inc. Software protection method and apparatus
JPS5897724A (ja) * 1981-12-04 1983-06-10 Mitsubishi Electric Corp 初期プログラムロ−ド方法
US4525599A (en) * 1982-05-21 1985-06-25 General Computer Corporation Software protection methods and apparatus
US4785361A (en) * 1982-11-08 1988-11-15 Vault Corporation Method and apparatus for frustrating the unauthorized copying of recorded data
US4562306A (en) * 1983-09-14 1985-12-31 Chou Wayne W Method and apparatus for protecting computer software utilizing an active coded hardware device
JPS60116054A (ja) * 1983-11-29 1985-06-22 Usac Electronics Ind Co Ltd 初期プログラム・ロ−ドの制御方式
US4577289A (en) * 1983-12-30 1986-03-18 International Business Machines Corporation Hardware key-on-disk system for copy-protecting magnetic storage media
US4748561A (en) * 1984-05-14 1988-05-31 Mark Brown Method of protecting computer software
US4747139A (en) * 1984-08-27 1988-05-24 Taaffe James L Software security method and systems
CA1238427A (en) * 1984-12-18 1988-06-21 Jonathan Oseas Code protection using cryptography
JPS61201357A (ja) * 1985-03-02 1986-09-06 Nec Corp 情報処理装置
US4688169A (en) * 1985-05-30 1987-08-18 Joshi Bhagirath S Computer software security system
US4685056A (en) * 1985-06-11 1987-08-04 Pueblo Technologies, Inc. Computer security device
US4685055A (en) * 1985-07-01 1987-08-04 Thomas Richard B Method and system for controlling use of protected software
US4817140A (en) * 1986-11-05 1989-03-28 International Business Machines Corp. Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor
US4796220A (en) * 1986-12-15 1989-01-03 Pride Software Development Corp. Method of controlling the copying of software
JPH01140230A (ja) * 1987-11-26 1989-06-01 Nec Corp プログラムロード制御方式
JPH01154226A (ja) * 1987-12-10 1989-06-16 Nec Corp Bios内蔵ハードディスク装置システム
JPH0223427A (ja) * 1988-07-13 1990-01-25 Toshiba Corp パーソナルコンピュータ
US5022077A (en) * 1989-08-25 1991-06-04 International Business Machines Corp. Apparatus and method for preventing unauthorized access to BIOS in a personal computer system

Also Published As

Publication number Publication date
CN1049731A (zh) 1991-03-06
AU5999290A (en) 1991-02-28
JPH0391839A (ja) 1991-04-17
NZ234711A (en) 1993-04-28
EP0417888A2 (en) 1991-03-20
EP0417888A3 (en) 1992-01-29
GB9012946D0 (en) 1990-08-01
CA2020521A1 (en) 1991-02-26
ATE138747T1 (de) 1996-06-15
EP0417888B1 (en) 1996-05-29
CA2020521C (en) 1993-11-09
MY106707A (en) 1995-07-31
DE69027164T2 (de) 1996-12-12
CN1017839B (zh) 1992-08-12
IL95228A0 (en) 1991-06-10
SG44435A1 (en) 1997-12-19
DE69027164D1 (de) 1996-07-04
HK203296A (en) 1996-11-15
AU635550B2 (en) 1993-03-25
US5136713A (en) 1992-08-04
KR910005169A (ko) 1991-03-30
JPH0756631B2 (ja) 1995-06-14

Similar Documents

Publication Publication Date Title
KR920008445B1 (ko) 퍼스널 컴퓨터 시스템에서 bios용 메모리를 감축시키기 위한 장치 및 방법
KR930007679B1 (ko) 개인용 컴퓨터 시스템과, 이 시스템에 bios를 적재하기 위한장치 및 방법
KR930007680B1 (ko) 개인용 컴퓨터 시스템에 bios를 적재하기 위한 장치 및 방법
KR950002945B1 (ko) 퍼스널 컴퓨터 시스템내의 시스템 유틸리티 보호 장치
KR930004902B1 (ko) 퍼스널 컴퓨터 시스템에서 bios로의 비승인 액세스를 방지하기 위한 장치 및 방법
US5214695A (en) Apparatus and method for loading a system reference diskette image from a system partition in a personal computer system
US5768568A (en) System and method for initializing an information processing system
US6944867B2 (en) Method for providing a single preloaded software image with an ability to support multiple hardware configurations and multiple types of computer systems
KR100678974B1 (ko) 보안성과 사용자의 편의성을 고려한 컴퓨터 시스템의재부팅 방법 및 장치
JP2521020B2 (ja) 情報処理システム

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050905

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee