KR20000034891A - 컴퓨터 시스템 및 컴퓨터 판독가능 매체에 액세스하는 방법 - Google Patents

컴퓨터 시스템 및 컴퓨터 판독가능 매체에 액세스하는 방법 Download PDF

Info

Publication number
KR20000034891A
KR20000034891A KR1019990030291A KR19990030291A KR20000034891A KR 20000034891 A KR20000034891 A KR 20000034891A KR 1019990030291 A KR1019990030291 A KR 1019990030291A KR 19990030291 A KR19990030291 A KR 19990030291A KR 20000034891 A KR20000034891 A KR 20000034891A
Authority
KR
South Korea
Prior art keywords
partition
computer
information
readable medium
operating system
Prior art date
Application number
KR1019990030291A
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 헨리 엔 가라나
Publication of KR20000034891A publication Critical patent/KR20000034891A/ko

Links

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/46Multiprogramming arrangements
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)

Abstract

본 발명은 컴퓨터 시스템 및 컴퓨터 판독가능 매체에 액세스하는 방법에 관한 것이다.
본 발명에 따르면, 컴퓨터시스템에 의해 운영체제 소프트웨어의 실행이 개시된다. 운영체제 소프트웨어의 최초 실행 후에, 파티션이 컴퓨터 판독가능 매체 내에 형성된다. 피티션에 따라서, 운영체제가 재개시되느냐의 여부에 관계없이, 파티션에 관련된 로칼드라이브를 식별하는 정보가 형성된다.

Description

컴퓨터 시스템 및 컴퓨터 판독가능 매체에 액세스하는 방법 {Computer system and method for accessing a computer-readable medium}
본 발명은 일반적으로 정보처리 시스템에 관한 것이고 상세하게는 컴퓨터시스템 및 컴퓨터-판독 가능 매체에 액세스하는 방법에 관한 것이다.
본 출원은 발명자가 Alan E.Beelitz이고 명칭이 "SYSTEM AND METHOD FOR UPDATING PARTITION MAPPINGS TO LOGICAL DRIVES IN A COMPUTER MEMORY DEVICES(컴퓨터 메모리 장치 내 논리적 드라이브에 파티션 매핑을 갱신하기 위한 시스템 및 방법)"이고 1997년 10월 15일 출원된 동시 계속 중인 미국 특허출원 제950,545호에 관계된다. 상기 동시 계속 중인 미국 출원은 참고로 그 전체가 본 출원에 통합되어 있고 그 출원은 본 출원의 출원인에 양도되었다.
본 출원은 발명자가 Alan E.Beelitz이고 명칭이 "SYSTEM AND METHOD FOR PREPARING A COMPUTER MEMORY(컴퓨터 메모리를 제조하기 위한 시스템 및 방법)"이고 1998년 1월 23일 출원된 동시 계속 중인 미국 특허출원 제012,196호에 관한 것이다. 상기 동시 계류 중인 미국출원은 참고로 그 전체가 본 출원에 통합되어 있고 그 출원은 본 출원의 출원인에 양도되었다.
본 출원은 발명자가 Alan E. Beelitz이고 명칭이 "COMPUTER SYSTEM AND METHOD FOR PREPARING A COMPUTER-READABLE MEDIUM(컴퓨터 판독가능 매체를 제조하기 위한 컴퓨터시스템 및 방법)"이고 동시에 출원되고 동시 계속 중인 미국 특허출원 제----호에 관한 것이다. 상기 동시 계속 중인 미국 출원은 참고로 그 전체가 본 출원에 통합되어 있고 그 출원은 본 출원의 출원인에 양도되었다.
컴퓨터는 하드디스크와 같은 컴퓨터 판독가능 매체를 포함할 수 있다. 컴퓨터 프로그램은 컴퓨터 판독가능 매체에 액세스(예컨대, 정보기입 또는 정보판독)하도록 만들어져 왔다. 그러나 종래의 그런 프로그램 기술은 비효율적이었다.
파티션은 컴퓨터 판독가능 매체 내 논리적 조직의 단위이다. 한 예에서는 컴퓨터는 하드디스크 상에 파티션을 형성하고 있다. 종래 기술에 의하면, 컴퓨터가 새로 형성된 파티션과 관련된 각 논리적 드라이브를 식별하기 전에, 따라서 컴퓨터가 각 논리적 드라이브에 번지지정된 명령에 응답하여 새로 형성된 파티션에 액세스하기 전에, 컴퓨터는 재부팅된다.
따라서, 여러 종래기술의 결점이 극복될 수 있는 컴퓨터 판독가능 매체에 액세스하는 컴퓨터시스템 및 방법에 대한 요구가 생겨났다. 보다 상세하게는, 종래 기술에 비해 효율이 향상된, 컴퓨터 판독가능 매체에 액세스하는 컴퓨터시스템 및 방법에 대한 요구가 생겨났다.
도 1은 예시적 실시예에 의한 컴퓨터 시스템의 블록도이고,
도 2는 컴퓨터 시스템의 하드 디스크에 저장된 정보의 개념적 예시도이고,
도 3은 도 2의 파일 할당표 안에 저장된 정보의 개념적 예시도이고,
도 4는 도 1의 컴퓨터 시스템의 메모리 장치의 개념적 예시도이고,
도 5a-b는 도 1의 컴퓨터 시스템의 조작의 흐름도이고,
도 6은 도 1의 컴퓨터 시스템의 하드디스크에 저장된 대안적 버전의 정보의 개념적 예시도이고,
도 7은 도 6의 파일 할당표 안에 저장된 정보의 개념적 예시도이고,
도 8은 도 1의 컴퓨터 시스템의 하드디스크에 저장된 다른 대안적 버전의 정보의 개념적 예시도이고,
도 9는 도 1의 컴퓨터 시스템의 조작의 다른 흐름도이다.
따라서 본 발명의 한 실시예에 있어서는 컴퓨터시스템에 의해 운영체제 소프트웨어의 실행이 개시된다. 운영체제 소프트웨어의 실행을 개시한 후에는, 파티션이 컴퓨터 판독가능 매체 내에 형성된다. 파티션에 따라, 운영체계 소프트웨어의 실행이 재개시되는지 하는 것과는 상관없이, 파티션에 관계된 논리적 드라이브를 식별하는 정보가 형성된다.
이 실시예의 중요한 이점은 종전 기술의 여러 결점이 극복되고 종전 기술에 비해 효율이 향상된다는 것이다.
도 1은 예시적 실시예에 의한 전체적으로 100으로 표시된 컴퓨터시스템의 블록도이다. 시스템(100)은 이하에 설명될 것처럼 인가되는 명령에 응답하여 처리를 수행하고 조작을 실행할(예컨대 통신 정보) 입력장치(104), 디스플레이장치(106), 프린트장치(108) 및 컴퓨터(102)를 포함하고 있다. 예시된 실시예에서는, 컴퓨터(102)는 마이크로소프트 윈도즈 95 운영체제 소프트웨어를 실행하는 IBM-호환성 퍼스널 컴퓨터("PC")이다. 본 명세서에 표시된 모든 마이크로소프트 제품은 미국 워싱톤 주 98052-6399, 레드몬드, 원 마이크로소프트 웨이, 마이크로소프트 코퍼레이션, 전화:(425)882-8080으로부터 구득할 수 있다.
컴퓨터(102)는 입력장치(104), 디스플레이장치(106) 및 프린트장치(108)에 연결되어 있다. 디스플레이장치(106)는 예컨대 통상적인 전자 음극선관이다. 프린트장치(108)는 예컨대 통상적 전자 프린터 또는 플로터이다. 또한 컴퓨터(102)는 음성신호를 출력하기 위한 내부 스피커를 포함하고 있다. 대안적 실시예에서는, 스피커는 컴퓨터(102)에 대해 외부적인 것이다. 더욱이, 시스템(100)은 플로피 컴퓨터 디스켓 및/또는 컴퓨터 하드디스크와 같은 컴퓨터 판독가능 매체(또는 장치)(110)를 포함한다.
인간 사용자(112)와 컴퓨터(102)는 서로 협동하여 작동한다. 예컨대 컴퓨터(102)로부터의 신호에 따라 디스플레이장치(106)는 시각적 영상을 표시하고 사용자(112)는 그런 시각적 영상을 본다. 또한 컴퓨터(102)로부터의 신호에 응답하여 프린트 장치(108)는 종이 위에 시각적 영상을 인쇄하고 사용자(112)는 그런 시각적 영상을 본다. 또한 사용자(112)는 정보를 컴퓨터(102)에 출력시키기 위해 입력장치(104)를 작동하고, 컴퓨터(102)는 입력장치(104)로부터 그런 정보를 수신한다.
입력장치(104)는 예컨대 통상적인 전자 "마우스", 롤러볼 또는 라이트펜과 같은 통상적 전자 키보드 및 포인팅장치를 포함한다. 사용자(112)는 영숫자 텍스트 정보를 컴퓨터(102)에 출력하기 위해 키보드를 조작하고 컴퓨터(102)는 키보드로부터 그런 영숫자 텍스트 정보를 수취한다. 사용자(112)는 커서 제어정보를 컴퓨터에 출력하기 위해 포인팅장치를 조작하고 컴퓨터(102)는 그런 커서 제어정보를 포인팅장치로부터 수취한다.
컴퓨터 판독가능 매체(110) 및 컴퓨터(102)는 이하 상술하는 것처럼 구조적 및 기능적으로 상호 연결되어 있다. 컴퓨터 판독가능 매체(110)는 기능 서술적 자료(예컨대 컴퓨터 프로그램(이것은 소프트웨어 또는 어플리케이션이라고도 지칭됨) 및 정보조직을 비한정적으로 포함함)를 저장한다(예컨대 코드화, 기록 또는 구현한다). 그런 기능 서술적 자료는 컴퓨터 판독가능 매체(110)에 코드화 될 때 기능을 낸다. 또한 그런 기능 서술적 자료는 컴퓨터 판독가능 매체(110)에 구조적 및 기능적으로 상호 관련되어 있다.
그런 기능 서술적 자료 내에서, 정보조직은 그런 정보조직과 컴퓨터 판독 가능 매체(110)(및 시스템(100)의 다른 측면) 사이의 구조적 및 기능적 상호 관계를 한정한다. 그런 상호 관계는 정보조직의 기능이 실현되게 한다. 또한, 그런 기능 서술적 자료 내에서, 컴퓨터 프로그램은 그런 컴퓨터 프로그램과 컴퓨터 판독가능 매체(110)(및 시스템(100)의 다른 측면) 사이의 구조적 및 기능적 상호 관계를 한정한다. 그런 상호 관계는 컴퓨터 프로그램의 기능이 실현될 수 있게 한다.
예컨대, 컴퓨터(102)는 그런 기능 서술적 자료를 컴퓨터(102)의 컴퓨터 메모리 장치(예컨대 랜덤억세스메모리("RAM")) 내에 읽어 넣고(예컨대 적재, 액세스 또는 복사하고), 컴퓨터(102)는 그런 메모리 장치 내에 기억된 그런 자료에 따라서 조작(이 명세서의 다른 곳에 설명되어 있음)을 실시한다. 보다 상세하게는, 컴퓨터(102)는, 부가 조작(명세서의 다른 곳에 설명됨)을 실시하기 위해 컴퓨터 어플리케이션(즉 컴퓨터 판독가능 매체에 기억된, 부호화된, 기록된 또는 구현된)을 처리하는(예컨대 수행하는) 조작을 행한다. 따라서, 그런 기능 서술적 자료는, 컴퓨터(102)가 그 처리를 수행하고 그 조작을 행하는 방식과의 기능적 상호 관계를 나타낸다.
또한 컴퓨터 판독가능 매체(110)는 컴퓨터 어플리케이션이 컴퓨터(102)에 의해 액세스할 수 있는 장치이고, 컴퓨터 어플리케이션은 컴퓨터(102)가 그런 부가 조작을 수행하도록 컴퓨터(102)에 의해 처리될 수 있다. 컴퓨터 판독가능 매체(110)로부터 그런 기능 서술적 자료를 판독하는 것 외에, 컴퓨터(102)는 다른 유형의 컴퓨터 판독가능 매체(또는 장치)인 컴퓨터 네트워크(114)로부터(네트워크를 통해서) 그런 기능 서술적 자료를 판독할 수 있다. 더욱이, 컴퓨터 메모리 장치는 그 자체 컴퓨터 판독가능 매체(또는 장치)이다.
도 2는 컴퓨터 판독가능 매체(110)의 하드디스크에 의해 저장(기억)되어 있는 전체적으로 200으로 표시된 정보의 개념적 예시도이다. 컴퓨터(102)의 드라이브 콘트롤러는 신호를 컴퓨터 판독가능 매체(110)의 하드디스크에 출력하고 하드디스크는 그런 신호에 응답하여 그런 정보를 저장한다. 그런 정보는 도 2에 표시된 것과 같이 마스터 부트 레코드(MBR)를 포함한다.
IBM-호환성 퍼스널 컴퓨터("PC") 구조에 의하면, MBR은 컴퓨터 판독가능 매체(110)의 하드디스크 상에서 제 1 섹터(실린더 0, 헤드 0, 섹터 1)이다. IBM-호환성 퍼스널 컴퓨터("PC") 구조하에서는, 하드디스크는 512 바이트의 섹터 크기를 갖고 있다. 따라서 예시된 실시예에 있어서는, 컴퓨터(102)가 하드디스크 상에 파티션을 형성(예컨대 작성 또는 수정)하는 만큼, 컴퓨터(102)는 실린더 경계를 따라 파티션을 한정한다. 실린더는 하드디스크 상의 조직의 단위로 판독/기록 헤드의 수 곱하기 트랙 당 섹터의 수 곱하기 섹터 당 바이트의 수와 같다.
MBR은 디스크 저장을 위해 부트스트랩 명령(BI) 및 마스터 파티션 표(MPT)를 포함하고 있다. IBM-호환성 퍼스널 컴퓨터("PC") 조직에 의하면, MPT는 4개의 파티션 표 항목, 즉 PTE1, PTE2, PTE3 및 PTE4를 포함한다. 파티션 표 항목(PTEx(여기서 x=1,2,3 또는 4))은 PTEx와 연관된 파티션(Px)의 크기, 위치 및 유형(확장, 신 기술 파일시스템("NTFS"), 16 비트 또는 32 비트 파일 할당표("FAT"), 기본 또는 유틸리티)을 표시하는 정보를 포함한다.
각 파티션 표 항목(PTEx)은 각 "액티브" 플래그를 포함한다. 컴퓨터(102)의 드라이브 콘트롤러는, 네개의 파티션 표 항목(PTEx) 중 단지 하나의 최대가 어떤 특정 순간에 "액티브"로 표지되도록(즉, 4 "액티브" 플래그 중 하나의 최대만이 어떤 특정 순간에 논리 1 진실에 설정되도록), 신호를 컴퓨터 판독가능 매체(110)의 하드디스크에 출력한다. BI은 파티션 표 항목(PTEx) 중의 하나가(또한 어느 하나가) "액티브"로 표지될 것인지를 결정할 명령을 포함한다.
도 2의 예에서는 컴퓨터 판독가능 매체(110)의 하드디스크는 파티션(P1 및 P2)을 포함한다. 파티션(P1)은 파티션 부트 레코드(PBR1), 파일 할당표(FAT1), 루트 디렉토리(RD1), 및 파일 구역(FR1)을 포함한다. 파티션(P2)은 파티션 부트 레코드(PBR2), 파일 할당표(FAT2), 루트 디렉토리(RD2), 및 파일 구역(FR2)을 포함한다.
운영체제 소프트웨어에 의해, 컴퓨터(102)는 파티션과 관련된 각 논리적 드라이브를 식별하는 관련 논리적 드라이브 문자(예컨대 C: 또는 A:)에 의해 파티션을 지정한다(예컨대 맵핑 또는 참조한다). 그런 지정에 의해, 파티션은 각 논리적 드라이브와 연관된다. 그러나 그런 지정이 없으면 파티션이 어떤 논리적 드라이브와도 연관되지 않을 수 있다.
컴퓨터(102)와 같은 컴퓨터는, 이것이 이벤트("부트 이벤트")에 응답하여 운영체제 소프트웨어(예컨대 마이크로소프트 윈도즈)의 수행을 개시할 때 "부트"(또는 "리부트")된다. 그런 부트 이벤트는 예컨대 사용자(112)가 컴퓨터(102)를 "스위칭 온"하는 것이다(예컨대 사용자(112)가 컴퓨터(102)의 온/오프 버튼을 스위칭함에 의해 컴퓨터(102)에 전원을 인가하는 것이다). 또는 그런 부트 이벤트는 컴퓨터(102)가 운영체제 소프트웨어를 실행 개시하라는 명령을 받는 것일 수도 있다. 예컨대 컴퓨터(102)는 사용자(112)(예컨대 입력장치(104)를 통해), 또는 컴퓨터(102)에 의해 수행된 컴퓨터 어플리케이션 또는 다른 컴퓨터(예컨대 네트워크(114)를 통해)로부터 그런 명령을 받을 것이다.
특기할 것은, 컴퓨터(102)를 부팅(또는 리부팅)함에 따라:
(a) 컴퓨터(102)는, (ⅰ) BI로부터; 및 (ⅱ) 파티션 표 항목(PTEx)이 "액티브"이면 PBRx로부터 명령을 컴퓨터(102)의 메모리 장치에 읽어 넣고, 또한
(b) 컴퓨터(102)의 판독전용 메모리("ROM") 기본입출력시스템("BIOS")에 응답하여 그런 명령을 수행한다.
PBRx는 Px의 파티션 부트 레코드로 PTEx와 연관된 파티션이다. 도시된 실시예에서는 PBRx는 단일 섹터의 정보이다. BI 및 각 PBRx는 운영체제 소프트웨어의 유형, 버전 및 언어에 따른 명령을 포함한다.
컴퓨터(102)로부터 신호를 받는데 따라, FRx는 정보 파일을 기억한다. 각 FRx은 수(C)의 정보 클러스터로 분할된다. 특정 클러스터는 클러스터(b)로 표시되는데 이 b는 0과 C-1 사이의 정수이다.
예시된 실시예에서는, 특정 FRx 내의 클러스터들은 같은 크기로 되어 있어 각 클러스터는 크기=2y를 갖고 여기서 y는 정수이고 C*2y는 특정 FRx의 크기보다 작거나 또는 같다. 따라서 FBRx는 특정 FRx에 대한 y 및 C를 특정하는 BIOS 파라메타 블록을 포함한다. 각 FRx는 각각 자체의 크기를 갖고 각 파티션은 각각 자체의 y 및 C의 값을 갖는다.
예시된 실시예에 있어, 각 루트 디렉토리(RDx)는 RDx 당 512 항목까지 저장할 수 있는 공간을 포함하고 있다. 그런 항목은 정보 파일과 관련되어 있고 파일의 파일명(예컨대 PROGRAM.EXE, DATA.DAT, COMMANDS.BAT), 날짜, 시간, 크기, 속성(예컨대 은폐된), 및 개시 클러스터를 포함하고 있다. 개시 클러스터는 FRx내 C 클러스터 중의 하나이다.
도 3은 파일 할당표(FATx) 내 하드디스크에 저장된, 전체로서 300으로 표시된 정보의 개념적 예시도이다. 보다 상세하게는, 도 3의 예에서는 정보(300)가 FAT1 내에 저장되어 있다. 각 파일 할당표(FATx)는 C 개의 항목을 갖고, 그 각각은 FRx 내의 각 클러스터와 관련되어 있다. 도 3의 예에서는 C=10이며 따라서 FATx는 b=0에서 9까지 번호 매겨진 10개의 항목을 포함하고 있다. 각 항목은 각각의 상태를 갖는다.
예시된 실시예에서는, 만약 항목(b)의 상태가 FFF0, FFF1, FFF2, FFF3, FFF4, FFF5 또는 FFF6이면, 항목 b는 예약됨이다. 비교예로서, 항목(b)의 상태가 0이면, 항목 b는 이용가능이다. 항목(b)의 상태가 0, FFF0, FFF1, FFF2, FFF3, FFF4, FFF5 또는 FFF6 이외의 것이면, 항목(b)은 할당됨이다. 항목(b)이 할당됨이고 -1의 상태를 가지면, 항목(b)은 최종 항목이고 다음 항목을 식별하지 않는다. 항목(b)이 할당됨이고 -1 이외의 상태를 가지면, 항목(b)의 상태는 다음 항목(q)을 식별하는데, q는 0과 C-1 사이의 정수이다.
파티션(Px)에 액세스(예컨대 정보를 기입 또는 정보를 판독)하기 위해서는, 컴퓨터(102)의 프로세서는 명령을 컴퓨터(102)의 드라이브 콘트롤러에 출력하고 드라이브 콘트롤러는 그 명령을 받는다. 그런 명령은, 파티션(Px)을 지정하는(또한 따라서 파티션(Px)과 관련된 각 논리적 드라이브를 식별하는) 관련 논리적 드라이브 문자(예컨대 C: 또는 A:)를 특정함에 의해 파티션(Px)에(그리고 따라서 파티션(Px)과 관련된 각 논리적 드라이브에) 번지지정된다. 그런 명령은 따라서 그 파일명에 의해 특정 정보 파일을 특정한다.
그런 명령에 따라: (a) 드라이브 콘트롤러는 하드디스크로부터 번지 지정된 파티션(Px)의 RDx을 판독하고, (b) RDx 내의 항목이 파일명을 포함하고 있으면, 드라이브 콘트롤러는 RDx 내에서 그 항목에 의해 식별된 파일의 개시 클러스터(f)를 식별하는데 여기서 f는 0 내지 C-1의 정수이며; (c) RDx 내 항목이 파일명을 포함하고 있지 않으면, 드라이브 콘트롤러(ⅰ)는 할당된 개시 클러스터(f)가 FATx 내 이용가능 항목(f)과 관련되도록 그 파일을 위해 개시 클러스터(f)를 할당하며; (ⅱ)는 RDx 내 이용가능 항목에 파일의 파일명, 그 현재의 날짜, 그 현재의 시간, 파일의 크기, 파일의 속성 및 파일의 개시 클러스터의 식별자를 기입한다.
상기한 상황 (a) 또는 (b) 중의 어느 것에 있어, 드라이브 콘트롤러는: 만약에 전체 파일을 저장하기에 적당하다면(또한 적당한 정도로) 하나 또는 그 이상의 다른 클러스터를 할당 또는 할당 해제하며; 파일의 판독 및 기입과 관련하여 그런 클러스터에 액세스하는 순서를 정확하게 표시하기 위해 FATx 내의 항목들을 적절히 수정한다. FATx 내의 그런 항목들은, "다음 항목" 및 최종 항목에 대한 설명과 관련하여 이하에서 상세히 언급되는 바와 같은 순서를 정확히 표시한다. 클러스터를 할당하기 전, 드라이브 콘트롤러는 할당된 클러스터가 FATx 내의 이용가능 항목과 관련되어 있다는 것을 확인한다. 클러스터를 할당 해제한 뒤, 드라이브 콘트롤러는 FATx 내 클러스터의 관련 항목을 이용가능으로 변경한다.
파일의 개시 클러스터(f)를 식별한 후, 드라이브 콘트롤러는 b=f인 상황에 대한 다음 문단에서 설명될 조작을 수행한다.
드라이브 콘트롤러는 FRx의 클러스터(b)와 관련된 FATx 내의 항목(b)을 판독한다. 항목(b)이 예약됨이면, 드라이브 콘트롤러는 클러스터(b)에의 (또한 파일명에 의해 규정된 특정 정보 파일에의) 액세스 거절을 표시하기 위해 신호를 컴퓨터(102)의 프로세서에 출력한다. 항목(b)이 할당됨이면, 드라이브 콘트롤러는 컴퓨터(102)의 프로세서로부터의 명령에 의해 규정된 방식으로 클러스터(b)에 액세스한다.(예컨대 "판독" 명령에 따라, 드라이브 콘트롤러는 클러스터(b)에 저장된 정보를 판독하고 그런 정보를 컴퓨터(102)의 프로세서에 출력하고 컴퓨터(102)의 프로세서는 그런 정보를 받으며; "기입" 명령에 따라서는, 드라이브 콘트롤러는 컴퓨터(102)의 프로세서로부터 정보를 받아 그런 정보를 클러스터(b) 내에 기입한다). 클러스터(b)에 액세스한 뒤: (a) 항목(b)이 최종 항목이면, 특정 정보 파일에의 액세스가 종료되고 드라이브 콘트롤러는 컴퓨터(102)의 프로세서로부터의 다음 명령을 대기하며; (b) 항목(b)이 최종 항목이 아니면, 드라이브 콘트롤러는 b=q 인 상황에 관한 이 문단에서 설명된 조작을 반복한다 (상기와 같이 다음 항목(b)은 항목(b)의 상태에 의해 식별된다). 따라서 도 3의 예에서는, 파일의 개시 클러스터(f)가 f=2이면, 드라이브 콘트롤러는 FRx의 클러스터 2,5 및 7의 순서로 클러스터에 액세스한다.
예시된 실시예에서, FATx 내 항목(b)의 상태는 FRx 내의 다음 항목(q)을 식별하는 16 비트 항목이고, 컴퓨터(102)에 의해 관리되는 최대 논리적 드라이브( 및 최대 파티션)는 (a) 마이크로소프트 DOS 운영체제 소프트웨어를 위한 2기가 바이트, (b) 마이크로소프트 윈도즈 95 운영체제 소프트웨어를 위한 2기가 바이트, 및 (c) 마이크로소프트 윈도즈 NT 운영체제 소프트웨어를 위한 4기가 바이트이다. 대안적 실시예에서는, FATx 내 항목(b)의 상태는 FRx 내의 다음 항목(q)을 식별하는 32 비트 항목이고, 컴퓨터(102)에 의해 관리되는 최대 논리적 드라이브( 및 최대 파티션)는 마이크로소프트 윈도즈 NT 운영체제 소프트웨어의 버전 5.0 및 마이크로소프트 윈도즈 95 OSR2 운영체제 소프트웨어를 위한 2 테라 바이트이다. 예시된 실시예에 있어, 1 테라바이트는 10244바이트이고 1 기가 바이트는 10243바이트이고 1 메가 바이트는 10242이다.
도 4는 컴퓨터(102)의, 전체적으로 400으로 표시된 메모리 장치의 개념적 예시도이다. 도 5는 시스템(100)의 운영의 흐름도이다. 다음 설명은 동시에 도 4 및 5에 관한 것이다.
도 4에 표시된 것처럼, 메모리 장치(400)는 통상적인 메모리 구역(CM) 및 확장 메모리 구역(EM)을 포함한다. 확장 메모리 구역(EM)은, 확장 메모리 구역(EM) 내에 있어 최저 번지지정 가능한 (즉 최저 수 번지에 의해 번지지정되는) 64 킬로바이트 공간인 상위메모리영역(HMA)을 포함한다. 통상적 메모리 구역(CM)은 메모리 장치(400) 내 최저 번지지정 가능한 640 킬로바이트 공간이고 도 4에 표시된 것과 같이 구역(402,404,406,408 및 410)을 포함한다.
단계(500)에서는, 컴퓨터(102)는 부트 이벤트에 응해서 OS의 수행을 개시할 것인가를 결정한다. 컴퓨터(102)를 부팅(또는 재부팅)함에 따라, 컴퓨터(102)는 컴퓨터 판독가능 매체(110)로부터 마이크로소프트 DOS 운영체제 소프트웨어("OS")의 일부를 구역(402) 내에 복사해 넣고 컴퓨터(102)는 단계(502)에서 그런 부분들을 실행한다. 구역(402)은 CM 내의 최저 번지지정 가능 구역이다. 컴퓨터(102)는 OS를 구역(402) 내에 저장하는데, 그 이유는 OS는 컴퓨터(102)가 부팅(또는 재부팅)에 응해 실행하는 최초의 소프트웨어 중에 포함되기 때문이다.
OS를 실행할 때에는, 컴퓨터(102)는 단계(504)에서 구역(404)을 할당하여 정보조직(IS)을 저장한다. 정보조직(IS)은 논리적 드라이브를 식별하기 위한 정보를 포함한다. 예컨대 정보조직(IS)은 (컴퓨터 판독가능 매체(110)의 하드디스크의) 파티션과 관련된 각 논리적 드라이브를 식별하는 정보를 포함한다. 보다 상세하게는, 예시된 실시예에서는, 정보조직(IS)은, 각 논리적 드라이브를 식별하는 관련된 논리적 드라이브 문자(예컨대 C: 또는 A:)에 의해 파티션을 지정하는 정보를 포함한다.
또한, OS를 실행할 때에는, 컴퓨터(102)는 어플리케이션 소프트웨어("SW")의 일부를 컴퓨터 판독가능 매체(110)로부터 구역(406) 내에 복사해 넣고 컴퓨터(102)는 단계(506)에서 그런 부분들을 판독 및 실행한다.
유의할 것으로는, 새 하드디스크는 정상적으로는 공백이고 파티션 정보를 포함하고 있지 않다. 첫째 경우로, 새 하드디스크가 공백으로 시스템(100)에 설치되고, 컴퓨터(102)가 부트되면(또는 재부트되면), 컴퓨터(102)는 (OS를 실행할 때) 디스크 상에서 파티션의 부족을 인식한다. 이 첫째 경우, 컴퓨터(102)는 (OS를 실행할 때) 논리적 드라이브를 식별하기 위해 구역(404)에 정보조직(IS)을 저장하지는 않는다. 둘째 경우, 컴퓨터(102)는 (OS를 실행할 때) 디스크 상에서 파티션을 인식하고 논리적 드라이브를 식별하기 위해 정보조직(SI)을 구역(404)에 저장하지만, 컴퓨터(102)는 (어플리케이션 소프트웨어(SW)를 실행할 때) 디스크 상에서 파티션을 부가하거나, 수정하거나 또는 삭제할 필요를 인식한다.
첫째 경우 또는 둘째 경우에 어플리케이션 소프트웨어(SW)를 실행할 때에는, 컴퓨터(102)는 단계(508)에서 디스크를 포매팅하고 디스크 상에서 하나 또는 그 이상의 파티션을 부가하거나, 수정하거나 또는 삭제함에 의해 그 디스크를 초기화(예컨대 작성)한다. 예시된 실시예에서, 그런 초기화는 프로그램 및 정보조직을 디스크 상에 설치하여 시스템(100)의 여러 장치를 지원하기 위해 컴퓨터(102)가 실행하는 과정의 일부이다. 컴퓨터(102)가 디스크 상에서 하나 또는 그 이상의 파티션을 부가, 수정 또는 삭제한 후에는, (논리적 드라이브를 식별하는) 정보조직(IS)은, 컴퓨터(102)가 단계(510)에서 부가, 수정 및/또는 삭제된 파티션에 응하여 정보조직(IS)을 형성(예컨대 메모리 장치(400) 내에 저장)하지 않으면 또한 그렇게 형성할 때까지는, 부정확해 질 수 있다.
종전 기술에 따라서는, 그렇게 디스크를 초기화한 후에는, 컴퓨터(102)가 (OS를 실행하면서) 부가, 수정 및/또는 삭제된 파티션에 응하여 정보조직(IS)을 형성(예컨대 메모리 장치(400) 내에 저장)하기 전에, 컴퓨터(102)는 재부트 될 것이다. 그러나 그렇게 컴퓨터(102)를 재부팅하면 몇 분의 시간이 소모된다. 대량의 컴퓨터 조립 또는 제조 과정의 일부로서, 많은 컴퓨터에서는 공백 하드디스크를 설치한다. 그런 과정에서, 컴퓨터 마다 추가로 수분씩의 재부팅 시간을 사용하는 것은 비효율적이다.
상기와 같이, 정보조직(IS)은 (컴퓨터 판독가능 매체(110)의 하드디스크의) 파티션과 관련된 각 논리적 드라이브를 식별하는 정보를 포함하고 있다. 예시된 실시예의 중요한 측면에 있어서, 컴퓨터(102)가 재부트되었는지와 상관없이(예컨대 재부팅 전에 또는 재부팅 없이), 컴퓨터(102)는 유리하게도, 부가, 수정 및/또는 삭제된 파티션에 따라 정보조직(IS)을 형성하고(예컨대 메모리 장치(400)에 기억시킨다), 파티션과 관련된 각 논리적 드라이브에 번지지정된 명령에 응하여 그러한 파티션에 액세스한다. 유의할 것으로는, 컴퓨터(102)가 디스크에 파티션을 부가하면(또는 어떤 경우에는 수정하면), 구역(404)은 보통은 모든 정보조직(IS)을 저장하기에는 크기가 불충분하다.
예로서는, 각각의 논리적 C: 드라이브와 관련된 문자(C:)에 의해 파티션을 지정함에 있어서, 컴퓨터(102)는: (a) 드라이브 기술어 표("DDT") 및 드라이브 파라메타블록("DPB")의 형태로 정보조직(IS)을 작성하며: (b) 컴퓨터(102)가 현재 디렉토리 구조(CDS)를 위해 부가 메모리 공간을 할당하지 않도록, 링크된 리스트보다는 선형 어레이로 실시되는 논리적 C: 드라이브와 관련된 현재 디렉토리구조(CDS)를 수정하며; (c) 논리적 C: 드라이브의 표시를 포함시키기 위해 컴퓨터(102)의 시스템 변수("SysVars")를 수정한다.
종전 기술에 의해서는, 컴퓨터(102)가 부가, 수정 및/또는 삭제된 파티션에 따라 정보조직(IS)을 형성한 후, 컴퓨터(102)는 구역(404)의 크기가 불충분한 것에 맞추어 정보조직(IS)을 구역(408)에 저장할 것이다. 그러나 컴퓨터(102)가 어플리케이션 소프트웨어(SW)의 실행을 종료한 후에는, 구역(406)은 컴퓨터(102)에 의해 다른 정보(예컨대 부가 정보조직 또는 상이한 어플리케이션 소프트웨어의 일부)를 저장할 수 있도록 재할당될 수 있게 된다. 종전 기술의 결점은, 구역(408)은 재할당가능 구역(406) 및 구역(410) 사이에 끼워지고(통상적 메모리 구역(CM) 내의 공간을 번지지정하는 번지들의 범위 내에서), 그럼으로써 구역(406 및 410)에 저장된 일련의 정보(예컨대 단일 소프트웨어의 부분)를 단편화한다는 점이다.
그런 단편화는 컴퓨터(102)의 조작에 복잡성을 더하는데, 그 이유는 컴퓨터(102)는 구역(406 및 410)에 저장된 일련의 정보를 번지지정할 때에 구역(408)을 스킵할 것인지, 언제 스킵할 것인지 또한 어떻게 스킵할 것인지를 검출하기 위한 부가 조작을 수행할 것이기 때문이다. 컴퓨터(102)의 복잡성은 구역(406 및 410) 대신에 구역(406 및 408)에 일련의 정보를 저장함에 의해 증가될 것이다. 이것은, (구역(406 및 410)과는 달리) 구역(406 및 408)은 연속적 비중단 주소 범위에 의해 번지지정될 수 있기 때문이다.
예시된 실시예의 중요한 측면에 있어서, 컴퓨터(102)가 단계(510)에서 부가, 수정 및/또는 삭제된 파티션에 응해 정보조직(IS)을 형성한 후에는, 컴퓨터(102)는: (a) 단계(512)에서는 정보조직(IS)을 저장하기 위한 적절한 량의 메모리 공간을 결정하고; (b) 단계(514)에서는 구역(404)이 이미 이전 버전의 정보조직(IS)을 기억하고 있는지를 결정하고; (c) 단계(516)에서는 구역(404)이 모든 새 버전의 정보조직(IS)을 저장하기에 충분히 큰 지를 결정한다. 구역(404)이 모든 새 버전의 정보조직(IS)을 저장하기에 충분히 크면, 컴퓨터(102)는 단계(518)에서 모든 정보조직(IS)을 구역(404)에 저장한다.
정보조직(IS)의 크기는 OS 버전과 파티션 유형의 함수이다. 구역(404)이 이미 이전 버전의 정보조직(IS)을 기억하고 있는지를 결정하기 위해, 컴퓨터(102)는 OS의 시스템 변수 표("SysVars")로부터 "물리적 드라이브의 수" 필드(이것은 DPBs의 수와 같다)를 판독한다. "물리적 드라이브의 수" 필드가 2이면, 구역(404)은 이미 이전 버전의 정보조직(IS)을 기억하고 있는 것은 아니다.
중요한 것으로는, 단계(512)에서 정보조직(IS)을 기억하기 위해 적당한 양의 메모리 공간을 결정한 후에는, 컴퓨터(102)는, 구역(404)이 불충분하게 큰 만큼, 구역(408) 대신에, (단계(520)에서) 상위기억영역(HMA)에 (통상적인 메모리 구역(CM)을 침범함이 없이) 정보조직(IS)을 기억시킨다. 그런 방식으로, 구역(408)은 컴퓨터(102)에 의해 구역(406) 및/또는 구역(410)과 함께 일련의 정보의 기억을 위해 할당가능한 상태로 남으며, 그래서 단편화가 방지되고 일련의 정보를 기억시키기 위한 큰 연속 블록의 통상적 메모리 구역(CM)이 달성된다. 따라서, 종전 기술에 비해, 예시된 실시예의 컴퓨터(102)는 덜 복잡해진다.
더욱이, 정보조직(IS)을 상위 메모리 영역(HMA)에 기억시킴에 의해, 컴퓨터(102)는 유리하게도 16 비트 주소로 정보조직(IS)에 액세스하고, 컴퓨터(102)는 유리하게도 특별한 규약(예컨대 32 비트 주소지정 및 모드 보호)을 호출할 필요 없이 정보조직(IS)에 액세스한다. 이런 방식에 의해, 정보조직(IS)은, 16 비트 운영체제인 마이크로소프트 DOS 운영체제 소프트웨어와 호환적인 방식으로 보다 용이하게 액세스될 수 있다. 그와는 반대로, 컴퓨터(102)는 컴퓨터(102)의 조작에 복잡성을 더할 특별 규약을 호출함에 의해서는 확장된 메모리 구역(EM) 내 다른 구역(HMA 이외)에 액세스할 수도 있다.
정보조직(IS)을 HMA에 저장하기 위해서, 컴퓨터(102)는 OS의 Int 2Fh 기능 4Ah을 실행함에 의해 HMA의 충분한 부분을 할당하고자 시도한다. 컴퓨터(102)가 확장된 메모리 규격("XMS") 드라이버 소프트웨어 프로그램(예컨대 OS와 함께 공급된 HIMEN.SYS 드라이버 소프트웨어 프로그램에 의해 실행되는)을 실행하고 OS를 HMA 내에 복사한다면("DOS=HIGH"명령을 실행함에 의해), 상기 시도는 유효하다. 유효하면, 컴퓨터(102)는 정보조직(IS)을 저장하기 위해 충분한 부분의 HMA를 식별 및 재할당 하기 위해 XMS드라이버 소프트웨어 프로그램을 실행한다.
유효하지 않으면, 컴퓨터(102)는 A20 어드레스 라인을 인에이블함에 의해 정보조직(IS)을 저장하기 위해 전체 HMA를 할당하고자 시도한다. 컴퓨터(102)는 OS의 Int 15h 기능 24h의 실행을 포함하여 적당한 BIOS 조작을 수행함에 의해 A20 어드레스 라인을 인에이블시킨다. 그러나 BIOS가 그런 조작을 지원하지 않으면, 컴퓨터(102)는 적당한 명령을 직접 컴퓨터(102)의 키보드 콘트롤러에 출력함에 의해 A20 어드레스 라인을 인에이블시킨다.
다르게는, 컴퓨터(102)는, 구역(404)의 크기가 불충분한 만큼, HMA 대신에 통상적 메모리 구역(CM)의 최대 번지지정가능 공간 내에 정보조직(IS)을 저장한다. 컴퓨터(102)는, 컴퓨터(102)가 정보조직(IS)을 저장하기 위한 HMA의 할당 시도에 실패하면, 상기와 같이 저장한다. 또한 컴퓨터(102)는, 컴퓨터가 정보조직(IS)을 소거하지 않고 HMA를 시험할 필요가 있으면, 상기와 같이 저장한다.
정보조직(IS)을 저장할 때에는, 컴퓨터(102)는, 이전의 버전이 유효한 채 남아 있는 정도로, 정보조직(IS)을 메모리 장치(400)에 이미 저장된 정보조직(IS)의 이전 버전(있다면)과 (예컨대 구역(404)에 저장된 이전 버전) 연결시킨다. 컴퓨터(102)는, 컴퓨터(102)가 정보조직(IS)을 HMA에 또는 통상적 메모리 구역(CM) 내의 최대 번지지정 가능 공간에 저장하는가에는 관계없이, 그런 연결을 수행한다. 유리하게도, 컴퓨터(102)는, 그렇지 않은 경우 컴퓨터(102)의 재부팅에 소요될 수 분에 비해 훨씬 짧은 약 1 초 이내에 정보조직(IS)의 그런 작성, 저장 및 연결을 수행한다. 단계(518) 또는 단계(520)의 수행 후에는, 도 5에서 시스템(100)의 조작은 단계(500)로 되돌아간다.
도 6은 컴퓨터 판독가능 매체(110)의 하드디스크에 의해 저장된, 전체로서 600으로 표시된 정보의 개념 예시도이다. 정보(600)는 도 2의 정보(200)의 대안적 버전이다.
도 6의 예에서는, 도 2의 예에서와 같이, 컴퓨터 판독가능 매체(110)의 하드디스크가 파티션(P1 및 P2)을 포함한다. 도 2에서와 같이, 파티션(P1)은 파티션 부트 레코드(FBR1), 파일 할당표(FAT1), 루트 디렉토리(RD1) 및 파일 구역(FR1)을 포함한다. 마찬가지로, 파티션(P2)은 파티션 부트 레코드(FBR2), 파일 할당표(FAT2), 루트 디렉토리(RD2) 및 파일 구역(FR2)을 포함한다.
예시된 실시예의 중요한 측면에 있어, 도 6의 예에서는 파티션(P1)은 "기본(프라이머리)" 파티션이고 파티션(P2)은 FR1 내에 위치하는 "유틸리티" 파티션이다. 보다 상세하게는 파티션(P2)은 FR1의 클러스터(8 및 9) 내에 위치한다. 예시된 실시예에서, 시스템(100)이 기본 파티션 내에 유틸리티 파티션을 형성하면, 시스템(100)은 기본 파티션의 최대 번지지정 가능한 클러스터 내에 유틸리티 파티션을 형성한다. 그런 방식으로, 시스템(100)은 기본 파티션에 번지지정된 명령에 따라 클러스터에 액세스하는데 심하게 많은 시간이 걸리는 것을 피할 수 있다. 시스템(100)은, FDISK와 같은 OS 유틸리티 프로그램과의 호환성을 유지하기 위해 가장 가까운 실린더 경계(치)에 근사화 된, 유틸리티 파티션을 위한 충분히 큰 정수의 그런 클러스터를 예약됨이 되게 한다.
이 예에서는, 정보(600)의 파티션(P2)은 구조, 크기, 위치 및 조작에 있어 정보(200)의 파티션(P2)과 동일하다. 그러나 정보(600)의 FR1은 정보(200)의 FR1 보다 더 크다. 그럼으로써 정보(600)의 FR1은 FR1의 클러스터(8 및 9) 내에 파티션(P2)을 수용할 수 있을 만큼 충분히 크다.
유틸리티 파티션은, 예를 들면, 시스템(100)의 제조, 조립 및 시험 중 유용한 프로그램 및 정보를 저장할 것이다. 그러나 적어도 한 경우에는 그런 프로그램 및 정보는 덜 유용하고 후속하는 시스템(100)의 사용 및 조작 중에는 오히려 불필요하기까지 하다. 그런 경우에는, 시스템(100)의 제조, 조립 및 시험 후: (a) 유틸리티 파티션 자체는 덜 유용하고 아마 불필요하기까지 하고; (b) 유틸리티 파티션에 비해, 기본 파티션은 시스템(100)의 후속 사용 및 조작시 보다 더 유용하고; (c) 유리하게도 예시된 실시예의 시스템(100)은 유틸리티 파티션으로부터 기본 파티션까지 섹터를 재할당할 수 있도록 유틸리티 섹터를 삭제할 수 있다. 이런 방법으로, 하드디스크의 기본 파티션은 유리하게도 시스템(100)의 보다 다양한 후속 사용 및 조작을 달성할 수 있을 만큼 확대된다.
도 7은 정보(600)의 파일 할당표(FAT1) 내 하드디스크에 의해 저장된, 전체로서 700으로 표시된 정보를 개념적으로 예시한다. 도 7에 표시된 것처럼, 항목(8 및 9)은 그런 항목들이 '이용가능'인 도 3의 정보(300)와는 달리 '예약됨'이다. 항목(8 및 9)을 제외하고는, 정보(700)는 도 3의 정보(300)와 같다.
이 예에서는, OS로, 컴퓨터(102)는 문자(C:)에 의해 기본 파티션(P1)을 표시하고 문자(A:)에 의해 유틸리티 파티션(P2)을 표시한다. 이 방법으로, 컴퓨터(102)는 기본 파티션(P1)을 논리(C:) 드라이브에 대응(매핑)시키고 유틸리티 파티션(P2)을 가상(A:) 드라이브에 대응시킨다. 이러한 A: 드라이브는 "가상"인데, 그 이유는 그의 실제 기억 공간이 컴퓨터 판독가능 매체(110)의 플로피 디스켓 대신에 컴퓨터 판독가능 매체(110)의 하드 디스켓에 위치하기 때문이다. 시스템(100)의 제조, 조립 및 시험시, 컴퓨터(102)는, 컴퓨터(102)가 부트 이벤트에 응해서 PBR2로부터 명령을 실행하도록, (MPT 내에서) 유틸리티 파티션(P2)을 액티브로 표지한다.
도 3과 관련하여 전술한 바와 같이, 파티션(P1)에 액세스하기 위해, 컴퓨터(102)의 프로세서는 컴퓨터(102)의 드라이브 콘트롤러에 명령을 출력하고 드라이브 콘트롤러는 그런 명령을 받는다. 예컨대, 그런 명령은 파티션(P1)을 지정하는 문자(C:)를 특정함에 의해 파티션(P1)에 번지지정된다. 파티션(P1)에 번지지정된 그런 명령에 따라 파일을 저장하기 위해 클러스터를 할당하기 전에, 드라이브 콘트롤러는 할당된 클러스터가 FAT1 내의 이용가능 항목과 관련되어 있음을 확인한다. 따라서 항목(8 및 9)이 FAT1 내에서 이용가능 대신에 예약됨인 한, 드라이브 콘트롤러는 클러스터(8 또는 9)의 어느 것도 할당하지 못한다.
그런 방법으로, 정보(600)의 FAT1 내의 항목(8 및 9)을 예약됨으로 되게 함으로써, 시스템(100)은 파티션(P2)을 FR1의 클러스터(8 및 9) 내에 신뢰성 있게 위치시킬 수 있다. 이것은, 클러스터(8 및 9)는 컴퓨터(102)가 (드라이브 콘트롤러에) 파티션(P1)에 번지지정되는 명령을 출력하는 것에 의해서는 (예컨대 파티션(P1)을 지정하는 문자(C:)를 특정함에 의해) 액세스가 불가능하기 때문이다. 그 대신에, 클러스터(8 및 9)는 컴퓨터(102)의 프로세서가 (드라이브 콘트롤러에) 파티션(P2)에 번지지정되는 명령을 출력하는 것에 의해서는 (예컨대 파티션(P2)을 표시하는 문자(A:)를 특정함에 의해) 액세스가능하다.
마찬가지로, 시스템(100)은, 하나 또는 그 이상의 항목이 정보(600)의 FAT2 내에 적당히 예약되게 함으로써 FR2(이것 자체는 FR1 내에 위치됨) 내에 하나 또는 그 이상의 부가 파티션(예컨대 파티션(P3))을 신뢰성 있게 위치시킬 수 있다. 그런 예에서는, 그런 예약된 항목들과 관련된 클러스터들은, 컴퓨터(102)의 프로세서가 (드라이브 콘트롤러에) 파티션(P1) 또는 파티션(P2)에 번지지정된 명령을 출력함에 의해서 액세스할 수 있는 것은 아니다. 그 대신에, 그런 클러스터는 컴퓨터(102)의 프로세서가 (드라이브 콘트롤러에), 예컨대 부가 파티션을 표시하는 관련 논리적 드라이브 문자를 특정하는 명령의 경우에서처럼, 부가 파티션(예컨대 파티션(P3))에 번지지정된 명령을 출력함에 의해서 액세스할 수 있다.
도 6의 예에서는, 컴퓨터(102)가 기본 파티션(P1) 및 유틸리티 파티션(P2)에 대해 (MBR의) 주 파티션 표(MTP)를 특정 상태로 초기화한다. 예시된 실시예에서는, 유틸리티 파티션(P2)은 비교적 작다(예컨대 대략 10 메가바이트). 초기에는, PTE1은 기본 파티션(P1)과 관련되고 PTE2는 유틸리티 파티션(P2)과 관련된다.
도 8은 컴퓨터 판독가능 매체(110)의 하드디스크에 의해 저장된, 전체적으로 800으로 표시된 정보의 개념적 예시도이다. 정보(800)는 도 6의 정보(600)의 대안적 버전이다. 도 9는 시스템(100)의 조작의 흐름도이다. 다음 설명은 도 8 및 9에 동시에 관계된 것이다.
단계(900)에서는, 시스템(100)은 "파티션 삭제"의 명령이 발생되었는지를 판정한다. 적절한 "파티션 삭제" 명령(예컨대 시스템(100)의 제조, 조립 및 시험 후 시스템(100)이 받은 명령)에 응답하여, 시스템(100)은: (a) 단계(902)에서 파티션(P2)이 더 이상 컴퓨터(102)에 의해 인식되지 않도록 유틸리티 파티션(P2)과 관련된 파티션 표 항목(PTEx)(예컨대 이 예에서는 PTE2)을 적절히 수정함에 의해; (b) 단계(904)에서는 도 7의 정보(700)에 있는 모든 예약된 항목(정보(600)의 FAT1 내에 하드디스크에 의해 저장된)이 이용가능이 되게 변경함에 의해(예컨대 정보(700)를 도 3의 정보(300)와 완전히 같도록 변경함); 또한 (c) 단계(906)에서 컴퓨터(102)가 부트 이벤트에 응해서 PBR1로부터의 명령을 실행하도록 기본 파티션(P1)을 (MPT 내에서) 액티브로 표지함에 의해, 유틸리티 파티션(P2)을 삭제한다. 단계(906) 후, 도 9에서 시스템(100)의 작동은 단계(900)로 복귀한다.
그런 유틸리티 파티션(P2)의 삭제는 도 8에 예시되어 있다. 이 방법은, 시스템(100)이 유틸리티 파티션으로부터의 섹터를 기본 파티션에 재할당하기 위해 기본 파티션을 재작성하고 광범하게 수정하는 종전 기법에 비해 유리하다. 이에 반대로, 시스템(100)은 바로 전의 문단에서 설명한 것처럼 단지 유틸리티 파티션(P2)을 삭제함에 의해 그런 재할당을 성취하고, 이것은 종전 방법 보다 훨씬 더 빠르다.
예를 들면, 예시된 실시예에서는, 시스템(100)이 그런 유틸리티 파티션(P2)의 삭제를 자동적으로 수행하면, 그런 행동은 수 초 이내에 수행된다. 이와 반대로, 인간 사용자가 수동적으로(종전의 컴퓨터 프로그램으로부터 약간의 도움을 받아) 기본 파티션의 재작성 또는 광범한 수정을 수행한다면, 그런 행동은 여러 시간이 소요된다. 그런 행동을 수동으로 수행하면, 인간 사용자는 기본 파티션의 크기, 위치, 유형 및 y 및 C 치 그리고 파티션의 파일 구역(FRx)의 크기를 평가하고 특정하지 않을 수 없고; 더욱이, 인간 사용자는 컴퓨터 판독가능 매체(110)의 하드디스크의 구역들 사이에 있을 수 있는 대량의 정보를 재할당하지 않을 수 없다.
그런 "파티션 삭제" 명령의 한 예는 사용자(112)로부터의 "개봉하라(break the seal)" 명령이다. 예컨대, 시스템(100)(및/또는 시스템(100)의 사용을 규정하는 라이센스 계약)에 대한 사용자(112)의 수락을 나타내는 방식으로 사용자(112)가 입력장치(104)를 조작한다. 그런 "개봉하라" 명령은 (a) 시스템(100)의 제조, 조립 및 시험의 완료 및 (b) 시스템(100)의 이후의 사용 및 조작의 개시를 표시하는 한 기법이다.
또는, 특정 상황에 적합하다면, 시스템(100)의 제조, 조립 및 시험 후에, 시스템(100)은 시스템(100)의 이후의 오작동을 진단하는데 유용한 프로그램 및 정보를 저장하기 위해 유틸리티 파티션(예컨대 도 6의 파티션(P2))을 보유할 수 있다. 예컨대 시스템(100)이 NET PC(플로피 컴퓨터 디스켓을 갖고 있지 않아 다른 시스템으로부터 정보를 받고 출력하기 위해서는 네트워크(114)에의 연결에 의존하는 퍼스널 컴퓨터)를 포함하고 있으면, 그런 보유는 NET PC의 오작동을 진단하는데 도움이 된다. 이것은, NET PC가 네트워크(도 1)를 통해 다른 시스템으로부터 진단을 받을 능력이 오작동으로 부정적인 영향을 받는 경우에는, 특히 그러하다.
적당한 유형의 "파티션 삭제" 명령에 따라, 시스템(100)은, (a) 유틸리티 파티션(P2)과 관련된 파티션 표 항목(PTEx)(예컨대 이 예에서는 PTE2)을 적당히 수정함에 의해; (b) 항목들이 계속하여 이용가능이 아니도록, 도 7의 정보(700)(정보(600)에 있는 FAT1 내의 하드디스크에 의해 저장된)에 있는 모든 예약된 항목들을 보유함에 의해; (c) 컴퓨터(102)가 부트 이벤트에 따라서 PBR1로부터의 명령을 실행하도록 (MPT에서) 기본 파티션(P1)을 액티브로 함에 의해, 그런 유틸리티 파티션(P2)의 보유를 성취한다. 나중에 유틸리티 파티션(P2)에 저장된 프로그램 및 정보에 액세스하기 위해 적당한 "파티션 복구" 명령에 응해서, 시스템(100)은: (a) 파티션(P2)이 컴퓨터(102)에 의해 인식되도록 유틸리티 파티션(P2)과 관련된 파티션 표 항목(PTEx)(예컨대 이 예에서는 PTE2)을 적절히 수정하고; (b) 적당하다면, 컴퓨터(102)가 재부트 이벤트에 응하여 PBR2로부터의 명령을 실행하도록 유틸리티 파티션(P2)을 (MPT에서) 표지한다.
"파티션 삭제" 명령의 실행에 필요하면, 시스템(100)은: (a) FAT1을 적절히 판독하고 평가함에 의해 도 7의 정보(700)에 있는 예약된 항목들(정보(600)의 FAT1 내의 하드디스크에 의해 저장된)을 식별할 수 있고; (b) 예약된 항목들을 식별한 후에는, 파티션 표 항목(PTEx)(예컨대 이 예에서는 PTE2)에 저장하기에 적절한 정보를 결정하기 위해 그런 예약된 항목과 관련된 클러스터를 판독하고 평가할 수 있다.
유의할 것으로는, 적절한 "교체(swap)" 명령에 따라, 컴퓨터(102)는 기본 파티션(P1)과 유틸리티 파티션(P2) 사이에 논리적 C: 드라이브 지정을 교체하는 프로그램을 실행할 수 있다. 예컨대, (그런 명령을 받기 직전에) 컴퓨터(102)가 문자(C:)에 의해 기본 파티션(P1)을 지정하고 문자(A:)에 의해 유틸리티 파티션(P2)을 지정하면, (그런 명령에 따라) 컴퓨터(102)는, 컴퓨터(102)가 대신에 기본 파티션(P1)을 가상(A:) 드라이브에 매핑하고 유틸리티 파티션(P2)을 논리적 (C:) 드라이브에 매핑하도록 파티션(P1 및 P2)의 매핑을 수정한다. 컴퓨터(102)는 필요한 대로 기본 파티션(P1) 또는 유틸리티 파티션(P2)에 대해 파라메타를 포함시키기 위해 (예컨대 논리적 (C:) 드라이브에 대한) DPB 및 DDT 내의 정보를 수정함에 의해 그런 교체를 수행한다.
위에서 도 2와 관련하여 언급한 바와 같이, 컴퓨터(102)를 부팅(또는 재부팅)하는데 따라:
(a) 컴퓨터(102)는 (ⅰ) BI로부터; 또한 (ⅱ) 파티션 표 항목(PTEx)이 "액티브"로 표시되어 있으면, 유틸리티 파티션(P2)과 관련된 파티션 표 항목(PTEx)(예컨대 이 예에서는 PTE2)으로부터 명령을 컴퓨터(102)의 기억장치 내에 읽어 넣고,
(b) 컴퓨터(102)의 판독전용 메모리("ROM") 기본입출력시스템("BIOS")에 응해서 그런 명령을 실행한다.
한 실시예에서는, 유틸리티 파티션(P2)과 관련된 파티션 표 항목(PTEx)(예컨대 이 예에서는 PTE2)으로부터의 명령에 관해서는, 그런 명령은 그런 PTEx를 수정할 명령을 포함한다. 보다 상세하게는, 그런 명령은 파티션(P2)의 유형을 유틸리티 형으로부터 16비트 또는 32비트 FAT 형으로 변화시킨다. 그런 방식에 의해 PTEx는 자기수정된다. 그런 자기수정방법은, (a) 파티션의 유틸리티 형이 OS 및/또는 컴퓨터(102)에 의해 인식되지 않고; 또한 (b) 그와는 반대로 파티션의 16비트 또는 32비트 FAT 형이 인식되면, 유리하다.
예시적 실시예들이 도시되고 설명되었지만, 상기 공개 내용에 있어 광범위한 수정, 변경 및 치환이 고려될 수 있고 어떤 경우에는 실시예의 일부 특징들이 대응하는 다른 특징의 이용 없이 사용될 수 있을 것이다. 따라서 첨부 청구 범위는 광의적으로 또한 상기한 실시예들과 일치하는 방식으로 고려되는 것이 적당할 것이다.
본 발명에 따르면, 종래 기술에 비해 효율이 향상된, 컴퓨터 판독가능 매체에 액세스하는 컴퓨터시스템 및 방법이 제공된다.

Claims (25)

  1. 운영체제 소프트웨어;
    컴퓨터 판독가능 매체;
    운영체제 소프트웨어의 실행을 개시하고,
    운영체제 소프트웨어의 실행을 개시한 후, 컴퓨터 판독가능 매체 내에 파티션을 형성하고; 또한
    파티션에 따라, 운영체제 소프트웨어의 실행이재 개시되는가 하는 것과는 관계없이, 파티션과 관련된 논리적 드라이브를 식별하는 정보를 형성하기 위한
    수단을 포함하고 있는 컴퓨터시스템.
  2. 제 1 항에 있어서, 상기 수단은:
    정보에 따라서, 운영체제 소프트웨어의 실행이 재개시되는가 하는 것과는 관계없이, 논리적 드라이브에 번지지정된 명령에 따라 파티션에 액세스하기 위한 것임을 특징으로 하는 컴퓨터시스템.
  3. 제 1 항에 있어서, 상기 수단은:
    파티션에 따라서, 파티션과 관련된 논리적 드라이브를 식별하는 새 정보를 작성함에 의해 정보를 형성하기 위한 것임을 특징으로 하는 컴퓨터시스템.
  4. 제 1 항에 있어서, 상기 수단은:
    파티션에 따라서, 파티션과 관련된 논리적 드라이브를 식별하는 기존 정보를 확대함에 의해 정보를 형성하는 수단인 것을 특징으로 하는 컴퓨터시스템.
  5. 제 1 항에 있어서, 상기 수단은:
    파티션에 따라서, 메모리장치의 확장된 메모리 구역 내에 정보를 형성하는 수단인 것을 특징으로 하는 컴퓨터시스템.
  6. 제 1 항에 있어서, 상기 수단은:
    파티션에 따라서, 메모리장치의 상위 기억 영역 내에 정보를 형성하는 수단인 것을 특징으로 하는 컴퓨터시스템.
  7. 제 1 항에 있어서, 상기 수단은:
    파티션에 따라서, 메모리장치의 통상적 기억 영역의 최대 번지지정가능 공간 내에 정보를 형성하는 수단인 것을 특징으로 하는 컴퓨터시스템.
  8. 제 1 항에 있어서, 컴퓨터 판독가능 매체가 하드디스크인 것을 특징으로 하는 컴퓨터시스템.
  9. 컴퓨터시스템에 의해 운영체제 소프트웨어를 실행개시하는 단계;
    운영체제 소프트웨어의 실행을 개시한 후, 컴퓨터 판독가능 매체 내에 파티션을 형성하는 단계; 및
    파티션에 따라, 운영체제 소프트웨어의 실행이 재개시되는가 하는 것과는 관계없이, 파티션과 관련된 논리적 드라이브를 식별하는 정보를 형성하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 판독가능 매체에의 액세스방법.
  10. 제 9 항에 있어서,
    정보에 따라서, 운영체제 소프트웨어의 실행이 재개시되는가 하는 것과는 관계없이, 논리적 드라이브에 번지지정된 명령에 따라 파티션에 액세스하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 판독가능 매체에의 액세스방법.
  11. 제 9 항에 있어서,
    파티션에 따라서, 파티션과 관련된 논리적 드라이브를 식별하는 새 정보를 생성함에 의해 정보를 형성하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 판독가능 매체에의 액세스방법.
  12. 제 9 항에 있어서,
    파티션에 따라서, 파티션과 관련된 논리적 드라이브를 식별하는 기존 정보를 확대함에 의해 정보를 형성하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 판독가능 매체에의 액세스방법.
  13. 제 9 항에 있어서,
    파티션에 따라서, 메모리장치의 확장된 메모리 구역 내에 정보를 형성하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 판독가능 매체에의 액세스방법.
  14. 제 9 항에 있어서,
    파티션에 따라서, 메모리장치의 상위기억영역 내에 정보를 형성하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 판독가능 매체에의 액세스방법.
  15. 제 9 항에 있어서,
    파티션에 따라서, 메모리장치의 통상적 기억 영역의 최대 번지지정가능 공간 내에 정보를 형성하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 판독가능 매체에의 액세스방법.
  16. 제 9 항에 있어서, 운영체제 소프트웨어의 실행을 개시한 후, 컴퓨터 판독가능 매체 내에 파티션을 형성하고, 상기 컴퓨터 판독가능 매체가 하드디스크인 것을 특징으로 하는 방법
  17. 컴퓨터시스템이
    운영체제 소프트웨어의 실행을 개시하고,
    운영체제 소프트웨어의 실행을 개시한 후, 컴퓨터 판독가능 매체 내에 파티션을 형성하고; 또한
    파티션에 따라, 운영체제 소프트웨어의 실행이재 개시되는가 하는 것과는 관계없이, 파티션과 관련된 논리적 드라이브를 식별하는 정보를 형성하도록 컴퓨터시스템에 의해 처리될 수 있는 컴퓨터프로그램과,
    컴퓨터시스템에 의해 컴퓨터프로그램에 액세스할 수 있는 수단을 포함하는 것을 특징으로 하는 컴퓨터프로그램 제품.
  18. 제 17 항에 있어서, 상기 컴퓨터프로그램은 컴퓨터시스템에 의해 처리되어;
    정보에 따라서, 운영체제 소프트웨어의 실행이 재개시되는가 하는 것과는 관계없이, 논리적 드라이브에 번지지정된 명령에 따라 파티션에 액세스하도록 하는 것을 특징으로 하는 컴퓨터프로그램 제품.
  19. 제 17 항에 있어서, 상기 컴퓨터프로그램은 컴퓨터시스템에 의해 처리되어;
    파티션에 따라서 파티션과 관련된 논리적 드라이브를 식별하는 새 정보를 작성함에 의해 정보를 형성하도록 하는 것을 특징으로 하는 컴퓨터프로그램 제품.
  20. 제 17 항에 있어서, 상기 컴퓨터프로그램은 컴퓨터시스템에 의해 처리되어;
    파티션에 따라서 파티션과 관련된 논리적 드라이브를 식별하는 기존 정보를 확대함에 의해 정보를 형성하도록 하는 것을 특징으로 하는 컴퓨터프로그램 제품.
  21. 제 17 항에 있어서, 상기 컴퓨터프로그램은 컴퓨터시스템에 의해 처리되어;
    파티션에 따라서 메모리장치의 확장된 메모리 구역 내에 정보를 형성하도록 하는 것을 특징으로 하는 컴퓨터프로그램 제품.
  22. 제 17 항에 있어서, 상기 컴퓨터프로그램은 컴퓨터시스템에 의해 처리되어;
    파티션에 따라서 메모리장치의 상위기억영역 내에 정보를 형성하도록 하는 것을 특징으로 하는 컴퓨터프로그램 제품.
  23. 제 17 항에 있어서, 상기 컴퓨터프로그램은 컴퓨터시스템에 의해 처리되어;
    파티션에 따라서 메모리장치의 통상적 기억 영역의 최대 번지지정가능 공간 내에 정보를 형성하도록 하는 것을 특징으로 하는 컴퓨터프로그램제품.
  24. 제 17 항에 있어서, 컴퓨터 판독가능 매체가 하드디스크인 것을 특징으로 하는 컴퓨터프로그램 제품.
  25. 상기 컴퓨터 판독가능 매체는 장치와 일체로 구성된 것을 특징으로 하는 컴퓨터프로그램 제품.
KR1019990030291A 1998-11-24 1999-07-26 컴퓨터 시스템 및 컴퓨터 판독가능 매체에 액세스하는 방법 KR20000034891A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US9/198,701 1998-11-24
US09/198,701 US6470434B1 (en) 1998-11-24 1998-11-24 Computer system and method for accessing a computer-readable medium

Publications (1)

Publication Number Publication Date
KR20000034891A true KR20000034891A (ko) 2000-06-26

Family

ID=22734435

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990030291A KR20000034891A (ko) 1998-11-24 1999-07-26 컴퓨터 시스템 및 컴퓨터 판독가능 매체에 액세스하는 방법

Country Status (12)

Country Link
US (1) US6470434B1 (ko)
JP (1) JP2000163255A (ko)
KR (1) KR20000034891A (ko)
CN (1) CN1254884A (ko)
AU (1) AU5958899A (ko)
BR (1) BR9901667A (ko)
DE (1) DE19956523A1 (ko)
FR (1) FR2786897A1 (ko)
GB (1) GB2346991A (ko)
IE (1) IE990518A1 (ko)
IT (1) IT1308871B1 (ko)
TW (1) TW460841B (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6785787B2 (en) * 2001-01-26 2004-08-31 Dell Products L.P. Computing system and method for preparing a computer-readable medium
TW515959B (en) * 2001-05-10 2003-01-01 Via Tech Inc Method for memory data access by system management interrupt and computer system thereof
US20030014466A1 (en) * 2001-06-29 2003-01-16 Joubert Berger System and method for management of compartments in a trusted operating system
US7234075B2 (en) * 2003-12-30 2007-06-19 Dell Products L.P. Distributed failover aware storage area network backup of application data in an active-N high availability cluster
US7765394B2 (en) * 2006-10-31 2010-07-27 Dell Products, Lp System and method for restoring a master boot record in association with accessing a hidden partition
US7721078B2 (en) * 2006-10-31 2010-05-18 Dell Products, Lp Method and system to dynamically boot to a non-visible partition
US8090937B2 (en) * 2007-11-02 2012-01-03 Dell Products L.P. System and method for managing booting of an information handling system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4843541A (en) * 1987-07-29 1989-06-27 International Business Machines Corporation Logical resource partitioning of a data processing system
US5546557A (en) * 1993-06-14 1996-08-13 International Business Machines Corporation System for storing and managing plural logical volumes in each of several physical volumes including automatically creating logical volumes in peripheral data storage subsystem
US5604887A (en) * 1994-01-21 1997-02-18 Microsoft Corporation Method and system using dedicated location to share information between real and protected mode device drivers
US5706472A (en) * 1995-02-23 1998-01-06 Powerquest Corporation Method for manipulating disk partitions
US5721858A (en) * 1995-12-12 1998-02-24 International Business Machines Corporation Virtual memory mapping method and system for memory management of pools of logical partitions for bat and TLB entries in a data processing system
US5787491A (en) 1996-01-26 1998-07-28 Dell Usa Lp Fast method and apparatus for creating a partition on a hard disk drive of a computer system and installing software into the new partition
US5974517A (en) * 1996-09-17 1999-10-26 Compaq Computer Corporation Method and system for mounting a system partition as a logical drive while an operating system is operational by modifying a partition table
US5896546A (en) * 1996-11-01 1999-04-20 International Business Machines Corporation "Sticky" logical drive letter assignments
US6055539A (en) * 1997-06-27 2000-04-25 International Business Machines Corporation Method to reduce I/O for hierarchical data partitioning methods
US6032239A (en) 1997-10-15 2000-02-29 Dell Usa, L.P. System and method for updating partition mappings to logical drives in a computer memory device
US6032223A (en) * 1997-10-15 2000-02-29 Dell Usa, L.P. System and method for determining a RAM disk logical drive designation
US6233105B1 (en) * 1999-03-29 2001-05-15 Inventec Corporation Method of disk formatting

Also Published As

Publication number Publication date
US6470434B1 (en) 2002-10-22
IE990518A1 (en) 2000-07-12
AU5958899A (en) 2000-05-25
TW460841B (en) 2001-10-21
BR9901667A (pt) 2000-05-30
IT1308871B1 (it) 2002-01-11
ITTO990960A1 (it) 2001-05-09
DE19956523A1 (de) 2000-05-31
CN1254884A (zh) 2000-05-31
GB2346991A (en) 2000-08-23
GB9925072D0 (en) 1999-12-22
FR2786897A1 (fr) 2000-06-09
JP2000163255A (ja) 2000-06-16
ITTO990960A0 (it) 1999-11-09

Similar Documents

Publication Publication Date Title
US6449716B1 (en) Dual use master boot record
US7519806B2 (en) Virtual partition for recording and restoring computer data files
US6347371B1 (en) System and method for initiating operation of a computer system
US5933846A (en) Rewritable ROM file device having read/write buffer access control via copy of rewritable area
US6718373B1 (en) Method and system for installing files in a computing system
US20040111250A1 (en) Emulated read-write disk drive using a protected medium
US6272611B1 (en) Computer data storage medium having a virtual disk drive and memory management method therefor
KR20000052313A (ko) 읽기/쓰기 하드 드라이브의 파티션을 사용할 수 없는 경우의그래픽 유저 인터페이스를 부팅 및 구동하는 컴퓨터시스템 및오퍼레이팅 방법
JP3917612B2 (ja) 圧縮システムをオペレーティング・システムと統合する方法およびコンピュータ・システム
KR100637983B1 (ko) 컴퓨터시스템 및 컴퓨터판독가능매체의 제조방법
US6785787B2 (en) Computing system and method for preparing a computer-readable medium
KR20000034891A (ko) 컴퓨터 시스템 및 컴퓨터 판독가능 매체에 액세스하는 방법
EP1237085B1 (en) Memory management method for configuring a computer data storage medium to include a virtual disk drive
JPH0664521B2 (ja) 書込可能型光デイスク管理方法およびシステム

Legal Events

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