KR20010033687A - 하이버네이션 기능 지원 정보 처리 시스템 및 그를제어하는 방법 - Google Patents

하이버네이션 기능 지원 정보 처리 시스템 및 그를제어하는 방법 Download PDF

Info

Publication number
KR20010033687A
KR20010033687A KR1020007007210A KR20007007210A KR20010033687A KR 20010033687 A KR20010033687 A KR 20010033687A KR 1020007007210 A KR1020007007210 A KR 1020007007210A KR 20007007210 A KR20007007210 A KR 20007007210A KR 20010033687 A KR20010033687 A KR 20010033687A
Authority
KR
South Korea
Prior art keywords
hibernation
storage area
information
management information
information storage
Prior art date
Application number
KR1020007007210A
Other languages
English (en)
Other versions
KR100396460B1 (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 포만 제프리 엘
Publication of KR20010033687A publication Critical patent/KR20010033687A/ko
Application granted granted Critical
Publication of KR100396460B1 publication Critical patent/KR100396460B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • 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/4418Suspend and resume; Hibernate and awake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Power Sources (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

외부 저장 장치상의 다른 사용자 데이터를 손상시키지 않고 시스템의 상태가 보존될 수 있게 하는 정보 처리 시스템 및 그의 제어 방법이 제공된다. 사전결정된 이벤트 발생시, 시스템은 하이버네이션 정보를 하드 디스크상의 하이버네이션 정보 저장 영역에 보존한다. 하이버네이션 관리 정보 저장 영역은 하드 디스크의 최외측 실린더에 마련된다. 최외측 실린더에는 이미 부트 섹터가 존재한다. 따라서, 부트 섹터를 하이버네이션 정보 저장 영역에 기록한 후 하이버네이션 관리 정보를 최외측 실린더에 기록한다. 이러한 일련의 프로세스가 완료된 후, 시스템은 하이버네이션 모드로 쉬프트한다. 다른 한편, 시스템으로의 파워 공급이 재개되면, 하이버네이션 정보를 판독하여 시스템이 하이버네이션 모드에 있었는지 등의 여부를 체크한다. 하이버네이션 정보 저장 영역에 보존된 하이버네이션 정보는 원래의 위치로 복구되며, 하이버네이션 정보 저장 영역에 보존되었던 마스터 부트 레코드를 최외측 실린더에 되기록한다.

Description

하이버네이션 기능 지원 정보 처리 시스템 및 그를 제어하는 방법{INFORMATION HANDLING SYSTEM WITH SUSPEND/RESUME OPERATION}
최근의 기술 혁명의 일부로서, 데스크 탑 유형, 타워 유형 및 노트북 유형을 포함하는 다양한 유형의 퍼스널 컴퓨터(personal computers:PC)가 개발되어 판매되어 왔다. 그들 중에서, 데스크 탑 PC는 사이즈가 비교적 크고 중량이 비교적 무거우며 사무실이나 가정의 고정 위치에서 사용하기 위해 설치된다는 점을 특징으로 한다. 노트북 PC는 이동 환경에서의 사용, 즉, 실외 또는 이동된 위치에서의 휴대형 사용을 고려하여 소형 경량으로 설계되고 제조된다. 노트북 PC의 대표적 예로서 일본 IBM사에 의해 판매되는 "IBM ThinkPad 770" 시리즈(인터내셔널 비지네스 머신즈사의 등록 상표임)가 있다.
잘 알려진 바와 같이, 노트북 PC는 내부에 시스템 보드를 인스톨한 시스템 유닛과 이 유닛의 사실상 후방 에지에 회전식으로 부착(도 6 참조)된 리드(lid)를 포함하는 통상 "클램 쉘 구조(clam shell structure)"로 이루어진다. 키보드 유닛은 시스템 유닛의 상부면상에 입력 장치로서 배치되고, 리드의 사실상 내측 중간에 출력 장치로서 액정 디스플레이가 배치된다. 노트북 PC가 사용될 때, 리드를 시스템 유닛으로부터 개방시켜서 디스플레이 및 키보드가 사용가능하게 된다. 다른 한편, 노트북 PC가 사용되지 않거나 운반될 때는 시스템 유닛에 대해 리드를 폐쇄시켜서 외부 충격으로부터 보호하기 위해 디스플레이 및 키보드를 숨긴다. PC는 외부 저장 장치로서 하드 디스크 드라이브(hard disk drive:HDD), 플로피 디스크 드라이브(floppy disk drive:FDD) 및 CD-ROM 드라이브를 구비할 수 있다. 이들 드라이브는 통상 자유자재로 부착, 분리 및 교환이 가능하도록 패키지 형태로 형성된다.
거의 모든 PC는 내부 배터리에 의해 구동될 수 있는 "배터리 구동(battery driven)"형이다. 이것은 연속적인 상용 전기적 파워 공급이 불가능한 이동 환경에서 사용할 수 있게 한다. 노트북 PC 내부에 설치된 배터리는 일반적으로 Li-Ion, NiCd 및 NiMH 셀들과 같은 복수의 2차 배터리 셀을 포함하는 "배터리 팩" 형태이다. 이러한 배터리 팩은 통상 수백 그램의 중량이며, 4 내지 12 볼트의 출력 전압을 갖는다.
배터리 구동형 장치의 대중화 및 성능은 배터리의 효율적인 이용에 의존한다. 예컨대, 노트북 PC의 배터리 팩의 경우, 팩을 충전시키는데 2 내지 3시간이 걸리는데 비해, 충전된 용량은 기껏해야 컴퓨터 처리 시간중 2내지 3시간 이하를 공급하기에 충분할 뿐이다. 이러한 긴 충전 시간은 배터리 구동형 장치를 이용하는데 있어 문제가 되며, 이것은 사용자로 하여금 복수의 예비 배터리 팩을 가지고 다녀야 할 필요성을 느끼게 한다.
이상의 관점에서, 가능한한 배터리의 지속 시간 길이를 연장시키기 위해 파워 소비를 감소시키는 기술이 연구되고 개발되어 왔으며, 이러한 기술은 노트북 PC와 같은 배터리 구동형 장치에서 이용되어 왔다.
또한, 제한된 자원의 사회 생태학적 관점으로부터 파워 소비를 줄이기 위한 요구가 상용 파워 소스로부터 무제한으로 공급될 수 있는 전자 장비에 대해서조차 최근 강조되었다. 예컨대, 미국 환경 보호 기구(Environment Protection Agency:EPA)는 1993년 6월에 "에너지 스타 컴퓨터 프로그램"이라고 불리는 파워 소비 절약의 자기 부과 규칙(self imposed regulation)을 공표하였다. 이 규칙에 의하면, 대기 상태 PC의 파워 소비는 주어진 기준 이하(구동 파워는 30와트 이하 또는 PC 동작시 파워의 30% 이하)이어야 한다. 이러한 이유로, 컴퓨터 제조자들은 데스크 탑 PC에서조차 파워 절약 기술을 구현하는데 경쟁해왔다.
전자 장비들의 파워 소비를 감소시키는 다양한 기술들중에서 PC에 적용되는 기술을 "파워 관리(power management)"라고 부른다.
파워 관리의 주된 메카니즘은 구동될 필요가 없는 하드웨어를 파워 절약 모드로 들어가게 하거나 컴퓨터 시스템의 활동에 따라 파워 공급(서플라이로부터 파워를 인출하는것)을 중지시키는 것이다. (이후, 컴퓨터 시스템은 간단히 "시스템"이라고도 칭한다.) 공지된 파워 관리의 예로서 "LCD 오프", "HDD 오프" 및 "CPU 슬로우 클럭/클럭 다운"이 포함된다.
"LCD 오프"는 사전결정된 시간 길이를 초과하는 시간동안 키보드 또는 마우스로부터의 입력이 없을시에 그의 LCD 또는 백 라이트에 파워 공급을 중지하는 것이다. "HDD 오프"는 최근 디스크 액세스로부터 측정된 시간 길에 따라 HDD 유닛 내부의 회로에 대한 파워 공급을 중지하는 것으로서, 예컨대, 미국 특허 제 4,933,785 호의 명세서에 기술되어 있다. LCD의 백 라이트 및 HDD의 구동 모터는 시스템의 전체 파워 소비중 큰 퍼센트를 차지하기 때문에, "LCD 오프" 및 "HDD 오프"는 파워 절약에 크게 기여한다.
"CPU 슬로우 클럭" 및 "CPU 클럭 다운"은 CPU의 동작 주파수를 저하시키거나 CPU의 대기 시간중(예컨대, 사전결정된 시간 길이를 초과하여 사용자로부터 어떠한 키/마우스 입력도 없을 때)에 클럭을 완전히 정지시킴으로써 CPU의 파워 소비를 감소시킨다. CPU의 처리 용량은 크게 향상되었고, 다른 한편, CPU의 파워 소비 및 열 발생은 최근 CPU의 증가하는 속도로 인해 증가하려는 경향이 있으므로, "CPU 슬로우 클럭/클럭 다운"은 중요한 기술적 이익을 제공한다. 첨언하면, "CPU 슬로우 클럭/클럭 다운"은, 예컨대, 본 발명의 출원인에게 양도된 일본 특허 출원 7-278904(PUPA 9-128106, 출원 도켓 번호 JA995100)의 명세서에 개시되어 있다.
앞서 설명된 "LCD 오프", "HDD 오프" 및 "CPU 슬로우 클럭/클럭 다운" 등은 나머지 하드웨어는 전기적 파워를 계속해서 소비하는 동안에 시스템내 하드웨어의 일부를 중지시킴으로써 파워 소비를 감소시킨다. 그러나, 시스템으로의 파워 공급이 거의 완전히 정지될 수 있다면, 파워 소비 절약의 효과는 더욱 향상될 것임은 말할 필요도 없다. 더욱이, 충전식 배터리의 경우에 배터리의 남아있는 용량이 사전결정된 값 이하인 "로우 배터리(low battery)" 상태에서 배터리가 계속해서 방전되어야 할 경우 배터리의 성능 저하가 초래될 수 있다. 따라서, 배터리가 로우 배터리 상태에 있을 때 시스템 구성요소로의 전기 공급을 완전히 정지시키는 것이 바람직하다.
소위 "하이버네이션(hibernation)"이라고 불리는 파워 관리 기술은 시스템 구성요소들로의 전기 공급을 완전히 정지시킬 수 있다. 시스템은 사전결정된 시간 길이를 초과하여 키/마우스 입력이나 I/O 장치의 활동이 검출되지 않거나 배터리가 로우 배터리 상태에 있을 때 실행중인 태스크를 인터럽트함으로써 하이버네이션 상태로 쉬프트하도록 트리거된다. 하이버네이션 모드로부터 시스템의 복구는 "웨이크 업(wake up)"이라고 칭한다. "웨이크 업"은 시스템을 원래의 상태로 복구하여 태스크를 재개하는데, 시스템의 상태를 리셋시키는 통상의 파워-온(POR:Power On Reset)과 구별된다.
웨이크 업에 의해 태스크를 재개하려면, 즉, 태스크가 인터럽트된 시점으로의 시스템 상태를 복구하려면, 하이버네이션 모드로 들어가기 전에 시스템의 상태를 보존해야할 필요가 있다. 본 명세서에서 의미하는 시스템의 상태는 주 메모리와 같은 휘발성 메모리, 즉, VRAM의 내용 정보는 물론 CPU 및 I/O 장치의 레지스터 값과 타이머의 계수 값과 같은 하드웨어 문맥을 포함한다. 웨이크 업시에 보존된 데이터를 원래의 위치로 복귀시킴으로써, 시스템의 상태가 복구된다. 상태를 복구하기 위해 보존된 정보는 이후 "하이버네이션 정보"라고 칭한다.
시스템내 모든 하드웨어로의 파워 공급이 하이버네이션 모드에서 정지된다는 사실을 고려하면, 하이버네이션 정보가 저장되는 위치는 하드 디스크와 같은 비휘발성 저장 위치인 것이 바람직하다. 따라서, 하드 디스크상에 하이버네이션 정보를 보존하기 위한 전용 영역을 마련해 둘 필요가 있다.
하드 디스크상의 영역을 예약하기 위한 한가지 방법으로서, 하이버네이션 정보 전용의 구역을 하드 디스크상에 보존해 놓을 수 있다. 대안적으로, 하이버네이션 정보를 보존하는 영역이 OS(오퍼레이팅 시스템)의 화일 시스템에 의해 관리되는 "하이버네이션 화일"일 수 있다. 이 "하이버네이션 화일"은 사용자 화일과 동일 레벨의 화일들중 하나로서 하드 디스크상의 사용자 구역에 배치된다.
구역(partition)은 일단 분할되면 고정되며, 구획 사이즈는 다시 분할되지 않는 한 변경될 수 없다. 다른 한편, 후자의 접근법에서, 보존 영역의 예약은 OS의 화일 시스템에 의해 동적으로 변경될 수 있다. 예컨대, 전체 하이버네이션 정보의 사이즈가 주 메모리에 대해 용량을 추가한 결과로서 증가되더라도 후자의 방법에서는 화일 시스템에 의해 하이버네이션 화일을 다시 배치함으로써 예약을 간단히 관리할 수 있다. 특히 최근의 PC에서 시스템보드의 사전결정된 소켓에 SIMM(Single Inline Memory Module) 카드 또는 DIMM(Dual Inline Memory Module) 카드를 삽입함으로써 표준 32MB 메모리(이 메모리 사이즈는 광범위하게 변화될 수 있다)로부터 최고 256MB에 이르는 메모리 용량을 확장할 수 있는 가능성을 고려할 때 후자의 방법이 유리할 것으로 생각된다.
하이버네이션 화일에 시스템의 상태를 보존하는 방법은, 예컨대, 본 발명의 출원인에게 양도된 일본 특허 출원 5-184186(PUPA 7-84848:출원 도켓 번호 JA993020)에 개시되어 있다.
하이버네이션/웨이크-업 처리를 지원하는 컴퓨터 시스템의 경우에, 시스템 파워는 정규 파워 오프 동작(통상 파워 스위치를 동작시킴) 이외에 하이버네이션 모드로 들어감으로써 셧다운(shut down)된다.
하이버네이션 모드는 동작이 동결되고 시스템 상태가 보존되는 상태로서, 파워 오프 상태로부터 명백히 구별된다. 시스템이 파워 온되면, 시스템이 파워 오프 상태인 경우에 정규 POR 처리가 실행된다. 반면에, 시스템이 하이버네이션 모드에 있으면, 보존된 정보의 복구를 수반하는 웨이크 업 처리가 실행되어야 한다. 따라서, 하이버네이션 모드로 들어감에 있어 시스템이 하이버네이션 모드임을 표시하는 정보(즉, 시스템이 파워 오프되고 상태가 보존되었다는 히스토리(history))가 시스템내의 어떤 장소에 남겨진다. 이러한 정보는 이후 "하이버네이션 표시(hibernation signature)"라고 칭한다. 시스템은 파워 온시에 하이버네이션 표시가 세트되어 있는지의 여부에 따라 웨이크 업과 POR중 어느것이 실행되어야 할지를 판정할 수 있다.
하이버네이션 표시가 저장되는 위치는 파워 온시에 시스템이 액세스할 수 있는 임의의 위치일 수 있다. 예컨대, 이 위치는 하드 디스크상의 위치이거나 비휘발성 메모리(NVRAM:예컨대, 예비 배터리에 의해 지원되는 CMOS 메모리)내의 위치일 수 있다. 그러나, 하이버네이션 표시는 또한 "원격 웨이크 업(remote wake up)"이 실행될 때 하이버네이션 정보와 함께 하드 디스크상에도 보존되어야 한다.
본 명세서에서 "원격 웨이크 업"이라 함은 시스템의 상태가 하나의 컴퓨터 시스템상에서 하이버네이션 모드로 들어가기 위해 분리가능 HDD에 보존된 후 HDD가 컴퓨터 시스템으로부터 분리되고 다른 컴퓨터 시스템에 부착되어 시스템을 웨이크 업시키는 것을 의미하는데 사용된다. 이러한 원격 웨이크 업에 의해 웨이크 업하는 컴퓨터 시스템은 하이버네이션 모드로 들어간 컴퓨터 시스템과 동일한 시스템 구성을 가져야 한다. 즉, 시스템이 동일한 메모리 사이즈 및 동일한 종류 및 수의 I/O 장치를 가져야 하고, I/O 장치들은 동일한 시스템 자원을 공유해야 한다. "원격 웨이크 업"의 경우, 하이버네이션 모드로 들어가기 바로 전의 태스크 상태는 HDD 유닛을 분리하고 교환함으로써만 복수의 원격 시스템들간에 복구될 수 있다. 예컨대, 이것은 동일한 구성의 대다수의 시스템을 설치하는 대규모 사용자(통상 기업)에 대한 TCO(Total Cost of Ownership)의 관점으로부터 큰 이익을 제공하게 된다. 그러나, HDD가 부착된 컴퓨터 시스템은 하이버네이션 표시가 하이버네이션 정보가 위치된 동일한 하드 디스크상에 위치되지 않는 한 하이버네이션 모드를 알 수 없다. 즉, 컴퓨터 시스템은 시스템 상태가 교환되없음에도 불구하고 웨이크 업할 수 없다.
하이버네이션 정보가 하이버네이션 표시를 동반하게 함으로써 "원격 웨이크 업"의 장점을 이용할 수 있다. 그러나, 하이버네이션 표시를 하드 디스크상에 저장하는데 있어 기억해야 할 몇가지 사항이 있다. 이들중 하나가 하드 디스크상의 저장 위치이다.
시스템은 파워 온 직후에 시스템에 의해 POR 처리 및 웨이크 업 처리중 어느것이 실행되어야 하는지를 판정해야 한다. 즉, OS가 메모리에 로딩되기 전에 하이버네이션 표시가 필요하다. 따라서, 하이버네이션 표시는, 하드 디스크상에 저장될 때, OS의 화일 시스템을 이용하지 않고 위치확인될 수 있는 위치(실린더)에 저장되어야 한다. 예컨대, 앞서 인용된 특허 출원 5-184186(PUPA 7-84848)에서 하이버네이션 표시는 하드 디스크상의 사전결정된 위치(보다 구체적으로, 최내측 트랙에 규정된 "CE 실린더")에 보존되어야 한다.
다른 사항은 하드 디스크의 사전결정된 실린더에 기록되는 하이버네이션 표시가 동일 실린더상의 기존의 유효 데이터와 충돌하지 않게 하는 것이다.
OS의 화일 시스템이 BIOS(Basic I/O System:다음 문단 참조)를 통해 디스크에 액세스하는 시스템에서, 하이버네이션 표시를 보존하는 실린더는 BIOS에 대해 마스킹됨으로써 예약될 수 있다. 예컨대, 하드 디스크의 최내측 실린더는 최대 어드레스 값을 가진다. 따라서, 디스크 BIOS는 OS의 화일 시스템으로부터의 질의에 대해 보다 작은 디스크 사이즈로 응답함으로써 사용자 액세스로부터 CE 실린더를 숨길 수 있다. OS 화일 시스템은 존재는 하더라도 화일 시스템에 알려지지 않은 CE 실린더에 사용자 데이터를 기록할 수 없으며, 따라서, 사용자 데이터는 하이버네이션 표시를 결코 방해하지 않는다.
(애플리케이션 및 OS는 INT 커맨드를 송출함으로써 BIOS를 호출할 수 있다. 예컨대, IBM PC/AT 호환 기계(PC/AT는 IBM사의 등록 상표임)는 통상 INY 13 커맨드를 이용하여 BIOS의 디스크 I/O 루틴을 호출하도록 설계된다.)
BIOS는 통상 컴퓨터 시스템의 제조자 또는 판매자에 의해 시스템 보드상의 ROM에 영구적으로 기록됨으로써 최종 사용자에게 제공된다. 하이버네이션 표시용 실린더가 BIOS의 함수에 의해 예약될 수 있는 경우, 최종 사용자와 소프트웨어(OS) 벤더가 그를 알지 못하므로 사용자 데이터와 하이버네이션 표시간의 간섭이 회피될 수 있다. 또한, 컴퓨터 시스템의 제조자 및 판매자는 시스템의 하이버네이션 및 웨이크 업에 있어 일련의 동작들을 확실히 보장할 수 있게 된다.
그러나, 최근의 오퍼레이팅 시스템중에는 BIOS를 통하지 않고 하드 디스크를 직접 액세스하는 오퍼레이팅 시스템(즉, OS의 장치 드라이버가 BIOS를 호출하지 않고 디스크에게로 I/O 커맨드를 송출한다)이 있다. 이러한 OS의 한 예가 IBM사에 의해 판매되는 "OS/2"(IBM사의 등록 상표임)이다. 이 경우, 하드 디스크 자체가 즉시 하드웨어 동작인 I/O 커맨드에 정직하게 응답해야 하고 특정 실린더를 예약하기 위한 아키텍쳐가 제공되지 않으므로 BIOS는 이러한 OS의 화일 시스템에 대해 디스크상의 어떤 실린더도 숨길 수 없다.
하드 디스크에 대해 즉시 액세스하는 유형의 OS의 화일 시스템은 BIOS가 마스킹된 실린더를 액세스할 수 있다. 이러한 OS 환경에서, 사용자 데이터는 하이버네이션 표시용 실린더에 기록될 가능성이 있다. 이 경우, 특정의 실린더에 하이버네이션 표시를 기록하는 것은 하이버네이션 모드로 들어갈 때에 원래 거기에 존재하는 사용자 데이터를 파괴하게 된다. 이 경우, 시스템은 기록된 하이버네이션 표시를 가지고 웨이크 업할 수 있다. 그러나, 임의의 손실된 사용자 데이터가 복구될 수 없고, 따라서, 이러한 사용자 데이터 부분을 이용하는 애플리케이션이 개시될 때 시스템은 오동작하게 된다.
하이버네이션/웨이크-업 기술을 제공하는 것은 컴퓨터 시스템 제조자 또는 판매자가 있다. 이러한 제조자 및 판매자는 통상 OS의 벤더와 다르다. 하드 디스크의 사용 형태 및 방책이 OS마다 다르며, 제조자/판매자와 OS 벤더들간에 하이버네이션 표시가 저장되는 위치에 관해 일치시키는 것은 거의 불가능하다.
사용자 데이터의 아주 작은 부분이라도 파괴되면 시스템의 신뢰성은 상실된다. 제조자 및 판매자는 이러한 시스템 동작을 보장하지 못하는데 대한 비난을 면치 못할 것이다.
하이버네이션 화일이 OS의 화일 시스템에 의해 관리되므로 다른 사용자 데이터와 충돌하지 않도록 디스크상에 배치된다는 것은 쉽게 이해될 것이다.
발명의 개요
본 발명은 청구범위에 개시된 바와 같이 개선된 정보 처리 시스템 및 그를 제어하는 방법을 제공한다. 본 시스템 및 방법은 사전결정된 이벤트의 발생시에 실행중인 태스크를 인터럽트하고 시스템을 시스템 동작이 거의 완전히 정지되는 상태로 들어가게 하는(즉, 저 파워 소비 모드로 들어감) 저 파워 소비 기술을 구현한다. 본 발명은 또한 청구범위에 개시된 바와 같은 컴퓨터에 의해 판독가능한 저장 매체를 제공한다.
바람직한 실시예에 따른 본 발명은, 저 파워 소비 모드로 쉬프트하기 전에 시스템의 상태를 하드 디스크와 같은 외부 저장 장치에 보존하고 이후 보존된 상태를 복구함으로써 원래 동작 모드로 복귀하는 개선된 정보 처리 시스템 및 그를 제어하는 방법을 제공한다.
본 발명은 외부 저장 장치상의 다른 사용자 데이터를 파괴하지 않고 시스템 상태를 보존할 수 있는 정보 처리 시스템 및 그를 제어하는 방법을 제공한다.
본 발명의 제 1 측면에 따르면, CPU와, 휘발성 메모리 및 비휘발성 외부 저장 장치를 포함하며, 사전결정된 이벤트 발생시에 실행중인 태스크를 인터럽트하고 상기 외부 저장 장치내의 하이버네이션 정보 저장 영역에 상기 메모리의 내용을 포함하는 하이버네이션 정보를 보존한 후 시스템내 부분들에 전기적 파워 공급을 정지시키고 시스템을 하이버네이션 모드로 쉬프트시키는 하이버네이션 기능을 지원하는 정보 처리 시스템이 제공되는데, 상기 정보 처리 시스템은
(a) 상기 외부 저장 장치내의 하이버네이션 정보 저장 영역에 상기 메모리의 내용을 포함하는 하이버네이션 정보를 보존하는 수단과,
(b) 상기 외부 저장 장치내의 고정된 위치에 제공된 하이버네이션 관리 정보 저장 영역과,
(c) 상기 사전결정된 이벤트 발생에 응답하여 상기 하이버네이션 정보 저장 영역에 상기 하이버네이션 관리 정보 저장 영역에 존재하는 데이터를 보존하는 수단과,
(d) 상기 수단 (c)에 의해 데이터를 보존한 후 상기 하이버네이션 관리 정보 저장 영역에 상기 하이버네이션 관리 정보를 저장하는 수단과,
(e) 상기 수단 (a), (c) 및 (d)가 그들의 기능을 실행한 후 상기 시스템의 구성요소들에 대한 전기적 파워 공급을 정지시키는 수단
을 포함한다.
본 발명의 제 2 측면에 따르면, CPU와, 휘발성 메모리와, 비휘발성 외부 저장 장치를 포함하며, 사전결정된 이벤트 발생시에 실행중인 태스크를 인터럽트하고 상기 외부 저장 장치내의 하이버네이션 정보 저장 영역에 상기 메모리의 내용을 포함하는 하이버네이션 정보를 보존한 후 상기 시스템의 구성요소들로의 전기적 파워 공급을 정지시키고 상기 시스템을 하이버네이션 모드로 쉬프트시키는 하이버네이션 기능을 지원하는 정보 처리 시스템을 제어하는 방법이 제공되는데, 상기 방법은
(a) 상기 외부 저장 장치내의 하이버네이션 정보 저장 영역에 상기 메모리의 내용을 포함하는 하이버네이션 정보를 보존하는 단계와,
(b) 상기 외부 저장 장치내의 고정된 위치에 하이버네이션 관리 정보 저장 영역을 제공하는 단계와,
(c) 상기 사전결정된 이벤트의 발생에 응답하여 상기 하이버네이션 정보 저장 영역에 상기 하이버네이션 관리 정보 저장 영역에 존재하는 데이터를 보존하는 단계와,
(d) 상기 단계 (c)에 의해 상기 데이터를 보존한 후 상기 하이버네이션 관리 정보 저장 영역에 상기 하이버네이션 관리 정보를 저장하는 단계와,
(e) 상기 단계들 (a), (c) 및 (d)를 실행한 후 상기 시스템의 구성요소들로의 전기적 파워 공급을 정지시키는 단계
를 포함한다.
본 발명의 제 3 측면에 따르면, CPU와, 휘발성 메모리와, 비휘발성 외부 저장 장치를 포함하며, 사전결정된 이벤트 발생시에 실행중인 태스크를 인터럽트하고 상기 외부 저장 장치내의 하이버네이션 정보 저장 영역에 상기 메모리의 내용을 포함하는 하이버네이션 정보를 보존하고 상기 시스템내 부분들로의 전기적 파워 공급을 정지시킨 후 상기 시스템을 하이버네이션 모드로 쉬프트시키는 하이버네이션 기능을 지원하는 유형의 컴퓨터 시스템상에서 실행되는 컴퓨터 프로그램을 실질적인 형태로 저장하는 컴퓨터에 의해 판독가능한 저장 매체가 제공되는데, 상기 컴퓨터 프로그램은
(a) 상기 외부 저장 장치내의 하이버네이션 정보 저장 영역에 상기 메모리의 내용을 포함하는 하이버네이션 정보를 보존하는 루틴과,
(b) 상기 외부 저장 장치내의 고정된 위치에 하이버네이션 관리 정보 저장 영역을 제공하는 루틴과,
(c) 상기 사전결정된 이벤트의 발생에 응답하여 상기 하이버네이션 정보 저장 영역에 대해 상기 하이버네이션 관리 정보 저장 영역에 존재하는 데이터를 보존하는 루틴과,
(d) 상기 루틴 (c)에 의해 상기 데이터를 보존한 후 상기 하이버네이션 관리 정보 저장 영역에 상기 하이버네이션 관리 정보를 저장하는 루틴과,
(e) 상기 루틴들 (a), (c) 및 (d)이 실행된 후 상기 시스템내의 부분들에 대해 전기적 파워 공급을 정지시키는 루틴
을 포함한다.
비휘발성 외부 저장 장치는, 예컨대, 하드 디스크 드라이브일 수 있다. 하드 디스크 드라이브는 통상 거의 모든 컴퓨터 시스템에 설치되어 있다.
본 명세서에서 "하이버네이션 관리 정보"라 함은 하이버네이션 기능에 의해 전기적 파워 공급이 정지된 정보 처리 시스템의 히스토리를 나타내는 하이버네이션 표시(hibernation signature)는 물론, 정보 처리 시스템의 시스템 구성 정보 및 하드 디스크상의 하이버네이션 정보 저장 영역의 위치 정보를 포함할 수 있다.
하이버네이션 표시는 파워 공급이 재개되었을 때 시스템이 하이버네이션 모드에 있는지의 여부를 판정하는데 사용된다.
배치 정보는 하이버네이션 정보 저장 영역에 보존된 데이터의 위치를 신속히 검색하는데 사용된다.
시스템 구성 정보는 현재 웨이크 업을 실행중인 정보 처리 시스템의 시스템 구성 정보에 대조된다. 원격 웨이크 업이 실행될 때, 현재 웨이크 업을 실행중인 정보 처리 시스템의 시스템 구성 정보가 하이버네이션 모드로 들어갈 때의 시스템 구성과 상이할 가능성이 있다. 상이한 시스템 환경하에서 태스크가 재개될 경우 시스템이 시스템 행 업(system hang up)과 같은 예기치 못한 손상을 받을 수 있기 때문에 시스템 구성을 체크하는 것이 중요하다.
하이버네이션 관리 정보 저장 영역은 하드 디스크상의 물리적으로 고정된 위치에 존재하는 것이 바람직하다. 예컨대, 하드 디스크의 최내측 또는 최외측 영역에 규정된 실린더에 배치될 경우, 그 영역을 확인 및 검색하는 것이 용이하다.
최외측 실린더는 통상 하드 디스크의 구역 정보(구역의 시작 어드레스 및 사이즈)를 기술하는 정보를 기록하는 섹터(부트 섹터)를 포함한다. 따라서, 최외측 실린더는 사용자가 액세스하지 못하게 대부분 예약되어 있다.
본 발명은 휘발성 메모리 및 비휘발성 외부 저장 장치가 제공된 범용 퍼스널 컴퓨터를 포함하는 정보 처리 시스템에서 구현될 수 있다. 이 시스템은 파워가 스위치 오프되기 전에 시스템의 상태를 보존함으로써 시스템이 파워 온될 때 그의 원래 상태로 시스템을 복구시킬 수 있는 소위 하이버네이션 기능을 지원한다.
본 발명의 특히 고유한 특징은 하이버네이션 관리 정보를 저장하는 메카니즘이다.
하이버네이션 모드로의 쉬프트를 암시하는 사전결정된 이벤트(예컨대, 로우 배터리 상태)가 발생하면, 시스템은 이에 응답해서 하드 디스크상에 마련된 하이버네이션 정보 저장 영역에 하이버네이션 정보를 보존한다. 하이버네이션 정보는, 예컨대, 메모리 및 VRAM의 내용과 같은 휘발성 데이터를 포함한다.
하이버네이션 관리 정보 저장 영역은 하드 디스크상의 고정된 위치에 제공된다. 예컨대, 하드 디스크의 최외측 또는 최내측 영역(또는 실린더내의 특정 섹터)에 규정된 실린더가 하이버네이션 관리 정보 저장 영역으로서 지정된다.
시스템에 대해 매우 중요한 데이터인 부트 섹터는 최외측 실린더에 이미 존재한다. 따라서, 부트 섹터를 하이버네이션 정보 저장 영역에 보존한 후 하이버네이션 관리 정보가 최외측 실린더내로 기록된다. 또한, 사용자 데이터가 최내측 실린더에 기록되었을 가능성이 있으므로, 하이버네이션 관리 정보 저장 영역으로서 최내측 실린더가 사용될 경우 실린더(또는 실린더내의 특정 섹터)에 존재하는 데이터를 하이버네이션 정보 저장 영역에 보존할 필요가 있다.
시스템은 이러한 일련의 데이터 보존 프로세스들을 완료한 후 시스템내의 부분들로의 전기적 파워 공급을 정지시키고 하이버네이션 모드로 쉬프트한다.
다른 한편, 시스템으로의 전기적 파워 공급이 재개될 때 하이버네이션 관리 정보 저장 영역에 저장된 하이버네이션 관리 정보를 판독하여 시스템이 하이버네이션 모드에 있었는지의 여부 또는 시스템을 웨이크 업시킬 수 있는 시스템 구성이 제공되어 있는지의 여부를 체크한다.
그리고 나서, 하이버네이션 정보 저장 영역에 보존된 하이버네이션 정보를 메모리내의 그의 원래의 데이터 위치들로 복구시킨다. 하이버네이션 정보 저장 영역에서 데이터 위치들이 검색될 때 하이버네이션 관리 정보의 일부로서 보존된 배치 정보가 이용될 수 있다.
하이버네이션 정보 저장 영역으로 보존되었던 부트 섹터 또는 사용자 데이터도 또한 원래의 최외측 또는 최내측 실린더(또는 실린더내의 특정 섹터)로 되기록된다. 결과적으로, 하드 디스크가 부팅할 수 있는 상태로 복구된다.
다음으로, 하드 디스크상에 하이버네이션 관리 정보를 보존하기 위한 동작 단계들에 대해 도 5a 내지 도 5d로 구성되는 도 5를 참조하여 설명하며, 각 도면의 직사각형은 하드 디스크의 어드레스 공간을 개략적으로 나타낸다.
하이버네이션 정보 저장 영역은, 예컨대, OS 화일 시스템에 의해 제어되는 "하이버네이션 화일"이다. 하이버네이션 화일은 하드 디스크상의 사용자 구역내의 사용자 화일과 동일 레벨의 화일로서 배치된다. 예컨대, 하이버네이션 화일은 화일 생성 유틸리티 프로그램(통상 EXE 화일 형태로 실행가능한 프로그램)을 사용함으로써 하드 디스크상에 생성된다.
하이버네이션 정보 저장 영역은 설명을 용이하게 하기 위해 도 5에서 연속하는 어드레스들로 구성되는 일단의 블록으로서 도시되어 있다. 그러나, 이 영역은 화일이 "하이버네이션 화일"인 한, 화일 배치 테이블(File Allocation Table:FAT)과 같은 화일 배치 정보에 의해 연결된 이산적 어드레스들의 클러스터들로 분산될 수 있다.
하이버네이션으로 들어가는 이벤트 발생시에, 부트 섹터는 도 5a에 도시된 바와 같이 최외측 실린더에 기록된다. 부트 섹터의 내용을 도 5b에 도시된 바와 같이 하이버네이션 정보 저장 영역에 보존함으로써, 최외측 실린더(또는 실린더내의 특정 섹터)를 하이버네이션 관리 정보 저장 영역으로서 이용가능하게 한다.
그리고 나서, 하이버네이션 관리 정보는 도 5c에 도시된 바와 같이 최외측 실린더(또는 실린더내의 특정 섹터)에 보존될 수 있다. 하이버네이션 모드로부터의 웨이크 업시에, 하드 디스크는 하이버네이션 관리 정보가 사용된 후 최외측 실린더에 보존되었던 부트 섹터의 내용을 되기록(도 5d 참조)함으로써 부트할 수 있는 상태가 된다.
도 5에서 하이버네이션 정보 저장 영역이 하이버네이션 관리 정보 저장 영역과 오버랩하지 않게 도시되었지만, 이들 영역은 하드 디스크의 동일한 물리적 어드레스에 우연히 배치될 수 있다. 이것은, 하이버네이션 관리 정보 저장 영역의 물리적 어드레스가 고정된 반면에, 하이버네이션 정보 저장 영역은 유틸리티 프로그램을 이용하여 물리적 어드레스와 완전히 독립적으로 배치되기 때문이다. 그럼에도 불구하고, 하이버네이션 관리 정보 저장 영역에 원래 존재하는 데이터가 보존되었으므로 이러한 경우에도 동작에 문제는 없다.
본 발명에 따라 하드 디스크상에 하이버네이션 관리 정보를 보존할 때 사용자 데이터는 전혀 파괴되지 않는다.
따라서, 컴퓨터 시스템의 제조자 및 판매자는 하이버네이션 및 웨이크 업시에 일련의 동작들에 대한 성공적인 성능을 더욱 신뢰성있게 보장할 수 있게 된다.
본 발명의 제 5 및 제 6 측면에 따른 컴퓨터에 의해 판독가능한 저장 매체는 컴퓨터 프로그램과 저장 매체간의 구조적 및 기능적 협동 관계를 규정하여 컴퓨터 시스템상에서 컴퓨터 프로그램의 기능을 구현할 수 있다. 즉, 컴퓨터 시스템상에 본 발명에 따른 컴퓨터에 의해 판독가능한 저장 매체를 탑재(컴퓨터 시스템에 컴퓨터 프로그램을 설치)함으로써 본 발명의 제 1 내지 제 4 측면에 따른 동작 및 효과와 유사한 동작 및 효과를 제공할 수 있는 협동적 작용을 실현할 수 있다.
컴퓨터에 의해 판독가능한 저장 매체의 예로서 컴퓨터의 시스템 보드상에 제공된 ROM(판독 전용 메모리)이 있다. ROM이 소거후 재기록가능한 유형(예컨대, EEPROM(전기적으로 소거가능한 프로그램가능 판독 전용 메모리)으로 이루어진 경우, 본 명세서에서 컴퓨터에 의해 판독가능한 저장 매체는 ROM의 내용을 갱신하도록 외부 저장 장치 유닛에 삽입된 교환가능한 저장 매체(예컨대, 플로피 디스크 드라이브 유닛에 로딩된 디스켓)를 포함한다. ROM에 기록될 컴퓨터 프로그램은 인터넷과 같은 광역 통신망을 통해 다운로딩되며, 네트워크상의 서버(웹 서버)의 제어하에 배치된 원격 디스크가 본 명세서에서 이용된 바와 같이 컴퓨터에 판독가능한 저장 매체에 포함된다.
본 발명의 다른 목적, 특징 및 장점들은 본 발명의 실시예 및 첨부 도면을 참조한 상세한 설명으로부터 명백하게 될 것이다.
본 발명은 통상 퍼스널 컴퓨터로 표현되는 정보 처리 시스템 및 그를 제어하는 방법에 관한 것으로, 보다 구체적으로는 시스템을 사전결정된 이벤트의 발생시에 실행중인 태스크가 인터럽트되는 상태로 들어가게 하는 저 파워 소비 기술을 구현하는 유형의 정보처리 시스템 및 방법에 관한 것이다. 시스템의 동작은 이러한 이벤트 후에 거의 완전히 중지된다.
바람직한 구현에서, 본 발명은 하드 디스크와 같은 외부 저장 장치에 시스템 상태를 보존한 후 저 파워 소비 모드로 쉬프트하고 그 보존된 상태를 복원함으로써 원래의 동작 모드를 복구하며, 외부 저장 장치상에 존재하는 사용자 데이터를 파괴하지 않고 시스템 상태를 보존할 수 있는 유형의 정보 처리 시스템 및 그러한 정보 처리 시스템을 제어하는 방법에 관련된다.
본 발명의 실시예들이 다음과 같은 첨부 도면을 참조하여 실시예로서 이하에서 상세히 설명된다.
도 1은 본 발명을 구현하는데 적절한 퍼스널 컴퓨터(PC)(100)의 하드웨어 구성의 개략도,
도 2는 도 1에 도시된 컴퓨터 시스템(100)의 파워 온/오프 동작을 구현하기 위한 파워 공급 서브시스템을 개략적으로 도시한 도면,
도 3은 하이버네이션/웨이크-업을 위한 전반적인 처리 단계들을 도시하는 흐름도,
도 4는 하이버네이션 모드로의 쉬프트시에 보존/복구되는 데이터 구조를 도시하는 도면,
도 5는 하드 디스크상에 하이버네이션 관리 정보를 저장하는 동작 단계들을 도시하는 개략도,
도 6은 노트북 PC의 외부 사시도,
도 7은 하이버네이션 정보 저장 영역(하이버네이션 화일)이 하이버네이션 관리 정보 저장 영역과 오버랩되어 배치되는 방법을 도시하는 도면이다.
바람직한 실시예들의 상세한 설명
A. 컴퓨터 시스템의 하드웨어 구성
도 1에는 본 발명이 적절히 구현된 전형적인 퍼스널 컴퓨터(PC)(100)의 하드웨어 구성이 개략적으로 도시되어 있다. 본 발명을 구현하는 컴퓨터 시스템(100)의 예는 OADG(PC Open Architecture Developer's Group) 사양에 부합되며, 오퍼레이팅 시스템(OS)으로서 IBM사의 "OS/2" 또는 마이크로소프트사의 "Windows95"를 이용하여 로딩된다. 각 부분은 이하에 설명된다.
주 제어기인 CPU(11)는 OS의 제어하에 프로그램들을 실행한다. CPU(11)는 인텔사에 의해 제조된 "펜티엄" 또는 "MMX 기술 펜티엄" CPU 칩일 수 있다.
CPU(11)는 SMM(System Management Mode:시스템 관리 모드) 관리 모드를 지원한다. 이러한 유형의 CPU(11)에는 주 메모리(14)(이후 설명됨)에 SMM 모드에서만 액세스되는 메모리 영역(이후 임시로 "SMM 메모리"라 칭함)이 제공된다. SMI(System Management Interrupt:시스템 관리 인터럽트) 신호 라인(50)을 이용한 SMI 인터럽션이 발생하면, CPU(11)는 SMM 동작 모드로 쉬프트하여 SMM 메모리를 액세스해서 거기에 저장된 프로그램 코드에 따라 사전결정된 SMM 처리를 실행한다.
본 실시예에서, SMM 모드는 하이버네이션 및 웨이크 업 기능을 위해 이용된다. 구체적으로, 메카니즘은 하이버네이션/웨이크-업에 관련되는 일련의 동작 단계들을 기술하는 파워 관리 코드(power management code)(이후 "PMC"라 칭함) 가 SMM 메모리에 로딩되는 것인데, SMI 인터럽션의 발생에 의해 CPU(11)의 프로세스는 PMC로 점프(jump)해서 시스템(100)을 하이버네이션 모드로 들어가게 한다. SMM 동작 모드를 이용하는데 있어서의 장점은 하이버네이션 기능이 기존의 애플리케이션 소프트웨어를 재기록할 필요없이 구현된다는 것이다.
CPU(11)는 그의 외부 핀들에 접속된 프로세서 버스(12)와, 로컬 버스인 PCI(Peripheral Component Interconnect) 버스(16)와, 시스템 버스인 ISA(Industry Standard Architecture) 버스(18)를 포함하는 3층 버스를 통해 이후 설명될 I/O 장치들에 상호접속된다.
프로세서 버스(12)와 PCI 버스(16)는 브릿지 회로(호스트-PCI 브릿지(13)를 통해 상호접속된다. 본 실시예의 브릿지 회로는 주 메모리(14)로의 액세스 동작을 제어하는 메모리 제어기와, 버스(12)와 버스(16)간의 데이터 전송 속도 차이를 흡수하는 데이터 버퍼를 포함한다.
주 메모리(14)는 기록가능한 메모리로서 장치 드라이버, OS 및 애플리케이션 프로그램을 포함하는 CPU(11)의 프로그램 코드를 로딩하는데 사용되고, 임시로 이러한 프로그램 코드의 실행중에 작업 데이터를 저장한다. 본 실시예에서, 주 메모리(14)의 사전결정된 영역이 SMM 동작 모드에서만 액세스가능한 SMM 메모리로서 배치되며, PMC(앞서 설명됨)가 여기에 로딩된다. PMC는 BIOS 등과 함께 ROM(17)(이후 설명됨)에 영구적으로 저장되며, POR(파워 온 리셋)시에 주 메모리(14)에 로딩된다.
주 메모리(14)는 통상 복수의 DRAM(다이나믹 RAM) 칩을 포함하며 시스템(100)에는 표준으로서 32MB와 512MB까지의 확장성이 제공된다.
L2-캐쉬 메모리(15)는 CPU(11)가 주 메모리(14)에 액세스하는 시간을 흡수하는 고속 메모리이다. CPU(11)에 의해 빈번히 액세스되는 제한된 코드와 데이터는 L1 캐쉬 메모리(15)에 임시로 저장된다. L2-캐쉬 메모리(15)는 통상 SRAM(스태틱 RAM) 칩을 포함하며, 예컨대, 512KB의 메모리 용량을 갖는다.
PCI 버스(16)는 비교적 높은 속도의 데이터 전송 및 비디오 제어기(20)와 같은 비교적 고속의 PCI 장치 구동을 허용하는 유형의 버스(32/64비트 버스 폭, 33/66㎒ 최대 동작 주파수 및 132/264MBps 최대 데이터 전송 속도)이며, 카드 버스 제어기(23)가 PCI 버스(16)에 접속된다. PCI 아키텍쳐는 최초에 인텔사에 의해 제안되었으며 소위 PnP(Plug and Play) 기능을 구현한다.
CPU(11)로부터 렌더링 인스트럭션을 실제로 처리하도록 전용된 제어기인 비디오 제어기(20)는 처리된 렌더링 정보를 임시로 스크린 버퍼(VRAM)(21)에 기록하며 VRAM(21)으로부터 렌더링 정보를 판독하여 렌더링 데이터로서 디스플레이(22)로 출력한다. 비디오 제어기(20)는 비트 맵 디스플레이 포맷을 지원하며, 예컨대, XGA(Extended Graphic Array) 또는 SVGA(Super Video Graphic Array)에 대응하는 해상도에 적합하다. 시스템(100)이 휴대형 장비인 경우, 통상 액정 디스플레이(LCD)가 디스플레이(22)로서 사용된다. LCD의 디스플레이 내용은 후측에 배치된 백 라이트(back light)(미도시됨)에 의해 조사된다. LCD는 얇고 경량이며 비교적 낮은 파워를 소비한다는 점에서 CRT(Cathode Ray Tube) 디스플레이에 비해 유리하다.
카드 버스 제어기(23)는 카드 버스에 접속된 PCI 버스의 버스 신호 전용으로서, PCMCIA(Personal Computer Memory Card International Association)/JEIDA(Japan Electronic Industry Development Association)에 의해 인정되지 않는 사양에 따르는 PC 카드(25)(예컨대, PC 카드 표준 95)가 삽입될 수 있는 2개의 PC 카드 슬롯(24A)이 제공된 제어기이다. 네트워크 접속을 위한 LAN 카드, HDD 설치 카드 및, PC 카드(25)와 같은 SCSI(Small Computer System Interface) 장비의 외부 접속을 위한 SCSI 카드가 제공된다. LAN 카드를 삽입함으로써 컴퓨터 시스템(100)은 이서넷(Ethernet) 및 토큰 링(token ring)과 같은 LAN에 접속되며, 또한 WWW(World Wide Web)이 광역 정보 복구 시스템(잘 알려짐)으로서 이용될 수 있도록 라우터(router)(미도시됨)를 통해 인터넷에 게이트웨이 접속된다. 예컨대, 갱신된 ROM 코드가 인터넷상의 웹 서버로부터 다운로딩될 수 있다.
PCI 버스(16) 및 ISA 버스(18)는 브릿지 회로(PCI-ISA 브릿지)(19)에 의해 상호접속된다. 브릿지 회로(19)는 DMA 제어기, 프로그램가능 인터럽션 제어기(programmable interruption controller:PIC), 프로그램가능 간격 타이머(programmable interval timer:PIT), RTC(Real Time Clock)/CMOS 및 트랩 로직(trap logic)을 포함한다.
DMA 제어기는 CPU(11)의 중재없이 I/O 장치와 주 메모리(14)간에 데이터 전송을 실행하도록 전용된 제어기이다.
PIC는 I/O 장치로부터의 인터럽션 요구(IRQ)를 처리하며 IRQ를 CPU(11)에게 통지한다. 인터럽션 통지를 수신하면 CPU(11)는 실행중인 태스크를 인터럽트하고 사전결정된 처리 프로그램(인터럽션 핸들러)을 실행한다.
PIT는 프로그램가능한 사전결정된 주기로 타이머 신호(통상 직사각형 웨이브)를 발생하는 장치이다.
RTC/CMOS의 RTC 부분은 현재 시간을 측정한다. CMOS 부분은 시스템 구성 정보(BIOS의 셋업 값) 및 파워 온 패스워드와 같은 시스템(100)의 안전 및 보안에 필수적인 정보를 보존하는데 사용된다. RTC/CMOS는 CPU(11)가 파워 오프 상태동안 자신의 측정된 내용 및 저장된 내용을 손실하지 않도록 예비 배터리(통상 코인 배터리)에 의해 지원된다. CMOS 메모리에 하이버네이션 관리 정보를 저장하는 것은 기술적으로 실행가능하지만 본 실시예에서는 행해지지 않는다.
트랩 로직은 범용 외부 입력 터미널들중 하나를 통해 파워 소스 제어기(40)(이후 설명됨)로부터의 제어 신호 라인(60)을 수신하며, CPU(11)의 SMI 핀에 접속된 SMI 신호 라인(50)을 출력한다. 트랩 로직은 주로 2개의 기능을 갖는다. 이들중 하나는 SMI 인터럽션을 발생하기 위한 제어 신호 라인(60)의 송출에 응답해서 SMI 신호 라인(50)을 송출하는 것이다. 다른 하나는 버스(16) 및 버스(18)을 연속적으로 모니터해서 SMI 인터럽션 발생에 대한 내부 레지스터에 세트된 어드레스(I/O 어드레스 또는 메모리 어드레스)가 검출되었을 때 SMI 신호 라인(50)을 송출한다. 그러나, 후자의 기능은 본 발명의 구현과는 관계가 없다.
본 발명의 브릿지 회로(19)에는 또한 IDE(Integrated Drive Electronics)에 따르는 외부 저장 장치를 접속하기 위한 IDE 인터페이스가 제공된다. IDE 하드 디스크 드라이브(HDD)(26)는 이 IDE 인터페이스에 접속되며, IDE CD-ROM 드라이브(27)는 IDE 인터페이스에 접속된 ATA(AT Attachment Packet Interface)이다. 이들 IDE 장치들은 분리 또는 교환가능하다. DVD(Digital Video Disc or Digital Versatile Disc) 드라이브와 같은 다른 유형의 IDE 장치가 대안적으로 IDE CD-ROM 드라이브(27)에 접속될 수 있다. HDD(26) 및 CD-ROM(27)과 같은 외부 저장 장치들은 FDD(30)(이후 설명됨)와 함께 "미디어 베이(media bay)" 또는 "디바이스 베이(device bay)"라고 불리는 수용 위치(receptacle place)에 포함된다.
HDD(26)는 저장 매체(잘 알려짐)로서 디스크를 고정 탑재하는 외부 저장 장치로서, 데이터 전송 속도면에서 다른 외부 저장 장치들에 비해 유리하다. HDD(26)의 디스크상에 카피된 소프트웨어 프로그램(예컨대, OS, 장치 드라이버 및 애플리케이션)은 시스템(100)에 의한 사용을 위해 준비(즉, 설치)된다. 예컨대, 하이버네이션 정보를 저장하기 위한 하이버네이션 정보 저장 영역은 시스템(100)의 POR시에 하드 디스크상에서 확인(assure)된다. 이 영역은 "하이버네이션 화일"로서, 즉, OS 화일 시스템에 따르는 화일 포맷으로 확인된다. 하이버네이션 화일은 사용자 화일과 동일 레벨의 단일 화일로서 하드 디스크상의 사용자 구역에 배치된다. 예컨대, 하이버네이션 화일은 화일 생성 유틸리티 프로그램(통상 EXE 화일 포맷의 실행가능한 프로그램)을 이용해서 하드 디스크상에 생성될 수 있다.
CD-ROM 드라이브(27)는 저장 매체로서 컴팩트 디스크(compact disk:CD)를 탑재하는 외부 저장 장치로서, CD에 저장된 소프트웨어 프로그램을 시스템(100)에 설치하고 음악 CD(CD-DA 데이터)를 재생시키는데 사용된다. 이것은 모두 잘 알려져 있다.
본 발명의 브릿지 회로(19)는 범용 버스인 USB(Universal Serial Bus)를 접속시키기 위해 설치된 USB 제어기를 가지며, 적어도 하나의 USB 포트(28)를 구비한다. USB는, USB 장치가 추가 또는 제거되었음을 자동으로 인식하고 시스템 구성 정보의 설정을 변경하기 위한 "플러그 앤 플레이(Plug and Play)" 기능에 부가하여, 파워가 턴온되어 있는 동안 USB 장치가 플러깅 및 언플러깅될 수 있게 하는 "핫 플러깅(Hot Plugging)" 기능을 지원한다. 단일의 USB 포트(28)에 대해 최대 63개의 USB 장치가 데이지 체인 방식(daisy chain fashion)으로 접속될 수 있다. USB 장치들의 예로는 키보드, 마우스, 죠이스틱, 프린터, 모뎀, 디스플레이 및 테블릿(이들 모두 미도시됨)이 있다.
ISA 버스(18)는 PCI 버스(16)보다 느린 데이터 전송 속도를 가지며(버스폭:16비트, 최대 데이터 전송 속도:4Mbps), 따라서, ROM(17)과 같이 비교적 저속으로 구동되는 장치들은 물론, I/O 제어기(29), 모뎀(33), 오디오 제어기(34) 및 파워 소스 제어기(40)와 같은 ISA 장치들을 접속시키는데 사용된다.
I/O 제어기(29)는 플로피 디스크 드라이브(floppy disk drive:FDD)(30)의 동작, 병렬 포트(31)를 통한 병렬 데이터의 I/O 동작(PIO) 및 직렬 포트(32)를 통한 직렬 데이터의 I/O 동작(SIO)를 제어하기 위한 주변장치 제어기이다. 프린터는 병렬 포트(31)에 접속될 수 있고, 죠이스틱은 직렬 포트(32)에 접속될 수 있다.
FDD(30)는 저장 매체로서 플로피 디스크를 교환가능하게 탑재하는 외부 저장 장치이다. 이것은 잘 알려져 있다. FDD(30)는 FD 형태로 공급되는 소프트웨어 프로그램을 시스템(100)에 설치하고 FD에 작업 데이터를 보존하는데 주로 사용된다. 예컨대, 갱신된 ROM 코드는 FD의 중개를 통해 시스템(100)에 공급된다.
모뎀(33)은 아날로그 공중 전화 교환망(public switched telephone network:PSTN)을 통해 디지털 컴퓨터 데이터를 전송하는 장치이다. 컴퓨터 시스템(100)은 모뎀(33)을 통해 원격 컴퓨터 시스템에 접속될 수 있다. 예컨대, 서비스 제공자에 의해 제공되는 액세스 지점에 다이얼 업함으로써 컴퓨터 시스템(100)이 인터넷에 IP 접속되어 잘 알려진 바와 같이 광역 정보 복구 시스템으로서 WWW(world wide web)의 이용을 가능하게 한다. 예컨대, 갱신된 ROM 코드는 인터넷상의 웹 서버로부터 다운로딩될 수 있다.
오디오 제어기(34)는 오디오 신호의 입/출력 전용 제어기로서, 오디오 신호를 기록하고 재생하기 위한 CODEC(COder-DECoder:즉, 믹싱 기능을 갖는 AD/DA 변환기)를 포함한다. 오디오 신호는 오디오 증폭기(35)에 의해 증폭되거나 라인 출력 터미널(37)을 통해 외부 오디오 장치(미도시됨)에 공급된 후 내부 스피커(36)에 의해 출력된다. 오디오 신호는 내부 마이크로폰(38)으로부터의 음성 입력단으로부터 입력되거나 외부 오디오 장치(미도시됨)로부터의 라인 입력단(39)으로부터 입력된다.
파워 소스 제어기(40)는 컴퓨터 시스템(100)내의 파워 공급 서브시스템을 관리 하기 위해 제공된다. 파워 소스 제어기(40)는 바람직하게는 히타치사에 의해 제조된 원칩 제어기 IC "330/H8"이다. 이 IC에는 RAM, ROM, 8개의 아날로그 입력 핀 및 16개의 입/출력 핀은 물론 16비트 프로세서가 제공되며, 그 동작은 프로그램가능하다. 본 실시예의 파워 소스 제어기(40)에는 또한 키보드(41) 및 포인팅 장치(마우스)(42)의 입/출력을 제어하는 기능이 제공되는데, 다음과 같이 동작한다.
(1) 키보드(41)상의 입력 키에 대응하는 스캔 코드를 발생하고 포인팅 장치(42)에 의해 포인팅되는 좌표 값을 발생한다.
(2) 잔여 용량을 검출하고, 터미널 전압, 충전/방전 전류 값 및 배터리(43)의 주위 온도를 모니터링함으로써 주 배터리(43)의 충전/방전 동작을 시작/정지시킨다.
(3) 사전결정된 이벤트의 발생에 응답해서 제어 신호 라인(60)을 송출한다(여기서 사전결정된 이벤트라 함은, 최근 키/마우스 입력후 사전결정된 시간의 경과, 핫 키의 누름 및 저 배터리 조건으로 들어감, 등과 같은 하이버네이션 모드로의 쉬프트를 암시하는 이벤트를 말한다).
(4) CPU(11)로부터의 커맨드에 따라 개개의 장치 또는 전체 시스템(100)의 파워를 오프로 스위치시킨다(파워 오프 동작은 이후 상세히 설명되는 파워 소스 제어 레지스터(70)(도 1에는 도시되지 않고, 도 2에 도시됨)와의 협동 동작에 의해 수행된다).
ROM(17)은 사전결정된 코드 및 데이터를 영구적으로 저장하는 비휘발성 메모리이다. ROM(17)에는, 동작 개시시 메모리에 프로그램을 로딩하기 위한 IPL(Initial Program Loader), 파워 온시에 실행되는 POST(Power On Self Test), 키보드(41) 및 FDD(30)와 같은 I/O 장치의 입/출력을 제어하기 위한 코드(BIOS) 및 하이버네이션/웨이크 업에 관련되는 일련의 프로세스들(이후 설명됨)을 기술하는 파워 관리 코드(power management code:PMC)가 저장된다. ROM(17)내의 BIOS 및 PMC는 시스템(100)의 POR시에 POST에 의해 주 메모리(14)에 로딩된다(앞서 설명된 바와 같이 SMM 메모리 영역에 PMC가 로딩되는 경우).
ROM(17)이 소거후 재기록가능한 유형(EEPROM:예컨대, Electrically Erasable Programmable Read Only Memory)인 경우, BIOS 및 PMC와 같은 ROM 코드는 제품 선적후 재기록에 의해 갱신될 수 있다. ROM 코드의 갱신된 버전은 FD에 저장함으로써 또는 인터넷을 통해 사전결정된 웹 서버(통상, 컴퓨터 시스템(100) 제조자 및 판매자의 홈 페이지)로부터 분배된다.
퍼스널 컴퓨터(100)의 전형적인 사용자는 키보드(41) 또는 마우스(42)를 통해 시스템(100)을 동작시켜서, 사용자가 디스플레이 스크린(즉, 데스크 톱)상에서 자신의 업무를 수행하는 것을 돕기 위한 워드 프로세싱, 스프레드 쉬트, 통신 및 웹 서버와 같은 애플리케이션을 실행시킨다. 현재 시중에 판매되는 퍼스널 컴퓨터는 도 1에 도시된 컴퓨터 시스템(100)과 같은 충분한 성능을 보여주고 있다.
컴퓨터 시스템(100)을 구성하기 위해, 도 1에 도시된 것들 이외에도 다수의 다른 전기적 회로들이 요구된다. 그러나, 이들은 당분야에 잘 알려져 있고 본 발명의 요지를 구성하지 않으므로 본 명세서에서 생략되었다. 도면의 불필요한 복잡성을 피하기 위해 도 1에 도시된 장치들중에 접속장치들의 단지 일부만이 도시되었음을 또한 이해해야 한다.
B. 컴퓨터 시스템내의 파워 공급 서브시스템
도 2에는 도 1에 도시된 컴퓨터 시스템(100)의 파워 온/오프 동작을 구현하기 위한 파워 공급 서브시스템이 개략적으로 도시되어 있다. 이제 도 2를 참조해 설명한다.
본 실시예의 컴퓨터 시스템(100)은 주된 파워 소스로서 상업용 AC 파워 소스 및 주 배터리(43)를 이용해서 구동된다. 상업용 AC 소스 전압은 AC 어댑터(72)에 의해 DC 전압으로 변환된 후 주 배터리(43)의 출력 전압과 함께 동시에 DC/DC 변환기(73)에 입력된다.
DC/DC 변환기는 상기한 주 파워 소스로부터 공급된 전압을 안정된 출력을 제공하도록 시스템(100)내의 장치들을 구동하기에 적절한 레벨로 변환하는 회로이다. DC/DC 변환기(73)에 의해 출력된 소스 전압은 스위치 FET0를 통해 다양한 부분에 분배된다. 주 메모리(14) 및 VRAM은 스위치 FET0를 통해서만 파워 공급된다. CPU(11) 및 I/O 장치들은 2개의 스위치들 FET0 및 FET1을 통해서 파워 공급된다. LCD(22) 및 그의 백 라이트는 2개의 스위치 FET0 및 FET2을 통해 파워 공급된다. 모뎀(33)은 2개의 스위치 FET0 및 FET3를 통해 파워 공급된다.
FET 스위치의 각 게이트 터미널은 파워 소스 제어 레지스터(70)내의 대응하는 비트 셀에 전기적으로 접속된다. 따라서, 파워 소스 제어기(40)는 파워 소스 제어 레지스터(70)에 사전결정된 레지스터 값을 설정함으로써 시스템(100)내의 부분들을 파워 온 및 오프시킬 수 있다. 예컨대, LCD 오프 모드는 FET2만을 오프로 설정함으로써 구현된다. FET1, FET2, FET3을 오프로 설정함으로써, 시스템(100)은 중지 상태(halted state)(일시정지 모드)에 놓이고, 이 경우 메모리(14) 및 메모리(21)만이 파워 공급된다. FET0를 오프로 설정함으로써, 전체 시스템(100)이 파워 오프된다.
파워 스위치(71)(통상 컴퓨터 본체 벽에 배치됨)는 파워 소스 제어 레지스터(70)의 클리어 터미널에 전기적으로 접속된다. 레지스터 값은 사용자가 파워 스위치(71)를 동작시켜 전체 시스템(100)에 파워 공급되도록 파워 온시킬 때 발생되는 신호에 의해 모든 FET 스위치들이 온으로 스위치되도록 파워 소스 제어 레지스터(70)에 리셋된다.
이미 설명된 바와 같이, 파워 소스 제어기(40)는 사전결정된 이벤트의 발생을 검출했을 때 제어 신호 라인(60)을 송출한다. 브릿지 회로(19)내의 트랩 로직은 제어 신호 라인(60)의 송출에 응답해서 SMI 신호(50)를 송출하고 CPU(11)로 SMI 인터럽션을 발생한다. CPU(11)는 실행중인 태스크를 인터럽트하고 SMM 메모리내의 PMC를 시작하기 위한 프로세스를 실행하는 SMM 동작 모드, 즉, 하이버네이션 모드로 들어간다. PMC의 실행이 완료되면, CPU(11)는 파워 소스 제어기(40)로 커맨드를 송신하여 전체 시스템(100)을 파워 오프시킨다.
C. 하이버네이션/웨이크 업을 위한 처리 단계들
이상 본 발명을 구현하는 컴퓨터 시스템(100)의 하드웨어 구성이 설명되었다. 다음으로, 시스템(100)이 하이버네이션 모드로 들어가는 프로세스 및 시스템(100)이 하이버네이션 모드로부터 웨이크 업하는 프로세스가 상세히 설명된다.
하이버네이션/웨이크 업을 위한 일련의 프로세스들은 인터럽션 처리 루틴으로서 구현될 수 있으며, 본 실시예에서 앞서 설명된 SMI 인터럽션을 이용함으로써 구현된다. 즉, CPU(11)가 SMM 메모리내에 로딩된 파워 관리 코드(PMC)를 실행시킴으로써 수행된다. 이들 처리 단계는 ROM(17)내의 PMC를 갱신함으로써 수정될 수 있음을 쉽게 이해할 수 있다.
도 3에는 하이버네이션/웨이크 업을 위한 처리 단계들을 기술하는 흐름도가 도시되어 있다. 이제 이 흐름도를 참조해 설명한다.
하이버네이션 모드로의 쉬프트
사전결정된 이벤트가 시스템에 발생하면, CPU(11)는 SMI 인터럽트된다(S100). 따라서, 시스템(100)의 제어가 OS 및 애플리케이션으로부터 SMM 메모리내의 PMC로 이전된다. 여기서 "이벤트"라 함은 최근의 키/마우스 입력으로부터 사전결정된 시간이 경과되었거나, 핫 키가 눌러졌거나, 시스템이 로우 배터리 조건에 놓이게 된 경우 등을 의미한다.
먼저, PMC는 각 I/O 장치 활동의 존재 여부를 체크한다(S102). 활동이 존재하였으면(예컨대, DMA 전송이 동작중이면), 체크 동작은 사전결정된 시간(예컨대, 10㎳)이 경과될 때마다 활동이 중지할 때까지 반복된다.
I/O 장치의 활동이 더 이상 검출되지 않으면, PMC는 하이버네이션 정보 저장 영역에 하드웨어 문맥 정보 및 작업 데이터를 보존한다(S104). 하이버네이션 정보 저장 영역은, 예컨대, 시스템(100)의 POR시에 하드 디스크상이 미리 제공되며, 화일 포맷(즉, "하이버네이션 화일")일 수 있다. 여기서 "하드웨어 문맥 정보"는 CPU(11), PIC, DMA 제어기 및 비디오 제어기(20)와 같은 제어기 칩의 레지스터 값 및 타이머 계수 값을 포함한다. 하드웨어 환경 정보는 시스템(100)의 현재 상태를 규정하는 중요한 데이터로서 하이버네이션 정보의 일부를 구성한다.
그리고 나서, PMC는 하드 디스크상의 하이버네이션 정보 저장 영역에 VRAM(21)의 원래 데이터를 보존한다(S106). 주 메모리(14)의 원래 데이터는 또한 하드 디스크상의 하이버네이션 정보 저장 영역에 보존된다(S108). 메모리(14) 및 메모리(21)의 내용은 휘발성이고 일단 손실되면 복구될 수 없으므로, 하이버네이션 정보의 일부로서 보존된다. 물론, 이들 VRAM(21) 및 주 메모리(21)의 내용을 보존하는 순서는 역전될 수 있다.
다음으로, 하이버네이션 관리 정보 저장 영역을 저장하는 하이버네이션 관리 정보 저장 영역이 하드 디스크상에서 확인된다(S110).
하이버네이션 관리 정보 저장 영역은 바람직하게는 하드 디스크상의 물리적으로 고정된 위치(특정 실린더 또는 특정 실린더내의 특정 섹터)이다. 이 영역이 하드 디스크의 최외측 또는 최내측 영역에 규정된 실린더(또는 실린더내의 특정 섹터)와 같이 고정된 어드레스에 배치된 경우, 이 영역을 확인하고 웨이크업시에 이 영역을 검색하기가 용이하다. 그러나, 부트 섹터가 최외측 실린더에 기록되고 사용자 데이터가 최내측 실린더에 기록되었을 가능성이 있다. 단계(S110)는 기존의 부트 섹터와 사용자 데이터를 하이버네이션 정보 저장 영역에 보존함으로써 최외측 또는 최내측 실린더(또는 실린더내의 특정 섹터)가 하이버네이션 관리 정보 저장 영역으로서 이용가능하게 한다. 보존될 데이터는 전체 실린더가 아니라 실린더내의 사용된 특정 섹터일 수 있다.
하이버네이션 관리 정보로는, 시스템(100)이 하이버네이션 모드에 있음을 표시하는 하이버네이션 표시, 시스템(100)의 시스템 구성 정보 및 하이버네이션 정보 저장 영역내 데이터의 배치 정보가 포함된다. 하이버네이션 관리 정보는 웨이크 업 처리(이후 설명됨)시에 비교적 초기 단계에서 요구된다. 따라서, 하이버네이션 관리 정보는 액세스 편의를 위해 하드 디스크상의 고정된 어드레스에 보존된다.
그리고 나서, PMC는 하이버네이션 정보 저장 영역내 데이터 배치 정보(데이터의 시작 어드레스)를 하이버네이션 관리 정보 저장 영역에 보존한다(S112).
다음으로, PMC는 브릿지 회로(19)내 CMOS 메모리에 저장된 시스템 구성 정보를 하이버네이션 관리 정보 저장 영역에 보존한다(S114). "시스템 구성 정보"로는 시스템(100)에 접속된 I/O 장치의 수 및 유형, 주 메모리(14)의 사이즈 및 시스템 자원의 배치 상태(IRQ 레벨, I/O 어드레스 및 메모리 어드레스 등)가 포함된다.
그리고 나서, PMC는 하이버네이션 관리 정보 저장 영역에 하이버네이션 표시를 세트한다(S116).
이들 처리가 완료된 후, PMC는 파워 소스 제어기(40)로 커맨드를 송신하여 전체 시스템(100)의 파워를 오프로 스위치시킨다(S118). 결과적으로, 시스템(100)은 하이버네이션 모드로 들어가게 된다.
이 시점에서, 시스템(100)을 웨이크 업하는데 필요한 모든 정보는 하드 디스크상에 보존되어 있게 된다. HDD(26)는 분리가능 또는 교환가능하므로, 태스크는 그 HDD를 분리해서 다른 시스템상에 탑재함으로써 원격 위치에서 재개(즉, "원격 웨이크 업")될 수 있다.
하이버네이션 모드로부터의 웨이크 업
사용자가 파워 스위치(71)를 동작시키면, 파워가 다시 전체 시스템(100)에 공급된다(S200).
파워 온에 응답해서, CPU(11)는 ROM(17)에 저장된 POST를 실행시킨다(S202). POST는 CPU(11)의 테스트, 주 메모리(14)의 테스트, 디스플레이(22)의 셋업 및 테스트, I/O 장치의 테스트를 포함한다. 또한, 메모리가 추가 또는 제거되거나, I/O 장치의 수가 파워 오프된 동안 변경된 경우, POST는 브릿지 회로(19)내 CMOS 메모리에 보존된 시스템 구성 정보를 재기록(또는 사전결정된 셋 업 프로그램을 이용하여 재기록)한다. PMC가 앞서 설명된 바와 같이 SMM 메모리 영역에 로딩된 경우, POST는 또한 ROM(17)으로부터 주 메모리(14)로 BIOS 및 PMC를 로딩한다.
POST 실행의 최종 단계에서, 하드 디스크의 최외측 또는 최내측 실린더(또는 실린더내의 특정 섹터)에 규정된 하이버네이션 관리 정보 저장 영역을 액세스하여 하이버네이션 관리 정보를 획득한다(S204).
그리고 나서, 하이버네이션 관리 정보에 하이버네이션 표시가 세트되어 있는지의 여부를 판정한다(S206). 하이버네이션 표시가 세트되지 않았으면, 시스템은 하이버네이션 모드가 아니라 단순히 파워 오프 상태에 있었던 것을 의미한다. 이 경우, 시스템 제어를 PMC에게로 이전하지 않고 정규 부트 프로세스를 시작한다(S300).
다른 한편, 하이버네이션 표시가 세트되었으면, POR이 아니라 단계 S200)에서의 파워 온이 웨이크 업됨을 의미한다. 이 경우, 시스템(100)의 제어가 PMC에게로 이전된다.
먼저, PMC는 하이버네이션 관리 정보에 포함된 시스템 구성 정보와 브릿지 회로(19)내 CMOS 메모리에 기록된 시스템 구성 정보를 비교한다(S208).
하이버네이션 정보가 보존된 착탈가능형 HDD(26)에 의해 원격 웨이크 업이 시행된 경우, 시스템 구성의 변동 가능성이 존재하는데, 즉, 하이버네이션 모드로 들어갈 때의 시스템 구성이 웨이크 업시의 시스템 환경(제 2 환경)과 다를 수 있다. 예컨대, 주 메모리(14)의 사이즈가 제 2 환경에서 더 작을 수 있다. 또한, 애플리케이션에 따라서는, I/O 장치의 기본 어드레스가 제 1 환경에서의 특정 값임을 요구하지만, 제 2 환경에서의 I/O 장치가 다른 어드레스를 이용할 수도 있다. 또한, 플로피 디스크에 액세스하는 애플리케이션이 제 1 환경에서 실행되었지만, 제 2 환경에는 FDD가 제공되지 않을 수도 있다. 이러한 시스템 구성의 불일치는 웨이크 업 처리의 불능에 부가하여 재개된 태스크에 의해 데이터 파괴라는 부적절한 결과를 초래할 수 있다. 이런 이유로, 단계 S208에서 시스템 구성을 체크하는 것은 기술적으로 중요한 의미를 갖는다.
판정 블록(S208)에서의 비교 결과가 실패하면, 에러 처리가 실행된다(S400). 에러 처리의 내용은 본질적으로 본 발명과 직접 관련이 없다. 예컨대, 에러 처리에 의해 디스플레이(22)상에 에러 메시지를 디스플레이하여 사용자에게 사전결정된 작업을 행하게 할 수 있다. 사전결정된 작업으로는 하이버네이션 표시를 디스에이블시키고, 예컨대, 시스템(100)을 재개하기 위한 원래의 시스템 구성 복구를 포함한다. 시스템 구성을 복구하도록 촉구되면, 원래의 시스템 구성이 디스플레이(22)상에 표시되어 사용자를 인도할 수 있다.
다른 한편, 시스템 구성이 일치하면, 하이버네이션 관리 정보 보존을 위해 하이버네이션 정보 저장 영역으로 보존된 부트 섹터 또는 최내측 실린더의 사용자 데이터가 원래의 실린더/섹터로 복구된다(S210).
다음으로, PMC는 하드 디스크상의 하이버네이션 정보 저장 영역에 보존된 주 메모리(14)의 원래 데이터를 복구한다(S212).
그리고 나서, PMC는 하드 디스크상의 하이버네이션 정보 저장 영역에 보존된 VRAM(21)의 원래 데이터를 복구한다(S214). VRAM(21) 및 주 메모리(14)의 내용을 복구하는 순서는 역전될 수 있다.
다음으로, PMC는 하드 디스크상의 하이버네이션 정보 저장 영역에 보존된 하드웨어 문맥 정보 및 작업 데이터를 원래의 위치로 복구한다(S216).
단계들(S212, S214, S216)에서의 복구 프로세스는 단계(S112)에서 하이버네이션 관리 정보의 일부로서 보존된 배치 정보를 이용하여 수행된다. 결과적으로, PMC는 하이버네이션 정보 저장 영역내 데이터를 즉각 액세스할 수 있다.
이상의 프로세스들이 실행된 후, 시스템(100)의 제어는 OS 또는 애플리케이션에게로 다시 복귀되어 인터럽션 시점으로부터 태스크가 재개된다.
도 4에는 하이버네이션 모드로의 쉬프트시에 디스크에 보존되고 복구되는 데이터 구조가 도시되어 있다. 이제 이를 참조하여 설명한다.
하이버네이션 정보는 하이버네이션 관리 정보 A, 하이버네이션 화일내의 화일 위치 정보(FAT) B, 하드웨어 문맥 정보(작업 데이터를 포함함) C, VRAM(21)의 내용 D, 주 메모리(14)의 내용 E를 포함한다. 이들 중에서, B 내지 E는 하드 디스크상에 마련된 하이버네이션 정보 저장 영역에 보존되며, A는 별도로 하이버네이션 관리 정보 저장 영역에 보존된다.
하이버네이션 정보 저장 영역은, 예컨대, OS 화일 시스템에 의해 관리되는 "하이버네이션 화일"이다. 하이버네이션 화일은 사용자 화일과 동일 레벨의 화일로서 하드 디스크상의 사용자 구역에 배치된다. 하이버네이션 화일은, 예컨대, 화일 생성 유틸리티 프로그램(통상, EXE 화일 형태로 실행가능한 프로그램)을 이용해서 하드 디스크상에 생성될 수 있다.
편의를 목적으로, 도 4에서 하이버네이션 정보 저장 영역은 연속하는 어드레스로 구성되는 일단의 블록인 것처럼 도시되어 있다. 그러나, "하이버네이션 화일"인 한, FAT(File Allocation Table)와 같은 화일 배치 정보에 의해 연쇄된 이산적 어드레스들의 클러스터로 분산될 수 있다.
하이버네이션 관리 정보 저장 영역은 하드 디스크상의 물리적으로 고정된 위치(최외측 또는 최내측 실린더 또는 실린더내의 특정 섹터)에 존재한다. 이것은, 부트 섹터가 최외측 실린더에 존재하고 사용자 데이터는 최내측 실린더에 존재하여 실린더 또는 섹터내의 데이터 A'가 실린더 또는 섹터가 하이버네이션 정보 저장 영역으로서 이용되기 전에 하이버네이션 정보 저장 영역에 보존되어야 하기 때문이다.
도 4에는 하이버네이션 정보 저장 영역(하이버네이션 화일)이 하이버네이션 관리 정보 저장 영역과 오버랩되지 않게 도시되었지만, 이들은 하드 디스크상의 동일한 물리적 어드레스에 배치될 수 있음은 물론이다. 이것은, 하이버네이션 관리 정보 저장 영역의 물리 어드레스가 고정되고 하이버네이션 정보 저장 영역은 유틸리티 프로그램 등을 이용하여 물리 어드레스와 완전 독립적으로 배치되기 때문이다. 그럼에도 불구하고, 하이버네이션 관리 정보 저장 영역에 원래 존재하는 데이터가 보존되었으므로 동작에 문제는 없다(도 7 참조).
이상 본 발명이 특정 실시예를 참조해 상세히 설명되었다. 그러나, 당분야에 통상의 지식을 가진 자라면, 본 발명의 범주로부터 벗어나지 않고 다양한 수정 및 변경 실시를 행할 수 있음은 명백히 알 것이다. 본 발명이 퍼스널 컴퓨터에 적용된 실시예가 본 명세서에서 설명되었지만, 본 발명이 시스템의 상태를 보존 및 복구할 수 있는 유형의 정보 처리 시스템이라면 어디에도 적용될 수 있음을 쉽게 이해할 것이다.
본 실시예가 OADG 사양을 따르는 소위 PC/AT 호환 기계(PC/AT는 IBM사의 등록 상표임)를 기초로 예로서 설명되었지만, 본 발명이 다른 유형의 기계(예컨대, NEC의 PC98 시리즈, 애플사의 매킨토시, 이들 기계에 호환가능한 기계 및 특정 사용을 위한 특수 목적 기계)에 의해서도 동일하게 실시될 수 있음을 이해해야 한다.
이상 상세히 설명된 바와 같이, 본 발명은 사전결정된 이벤트 발생시에 실행중인 태스크를 인터럽트하고 시스템 동작을 거의 완전히 정지시키는 상태(즉, 저 파워 소비 모드)로 들어가는 저 파워 소비 기술을 구현하는 개선된 정보 처리 시스템 및 그의 제어 방법을 제공한다.
본 발명은 또한 하드 디스크와 같은 외부 저장 장치에 시스템 상태를 보존하고 저 파워 소비 모드로 쉬프트하며 보존된 상태를 복구함으로써 원래의 동작 모드로 복귀하는 개선된 정보 처리 시스템 및 그 제어 방법을 제공한다.
본 발명은 또한 외부 저장 장치상의 다른 사용자 데이터를 손상시키지 않고 시스템 상태를 보존할 수 있는 정보 처리 시스템 및 그 제어 방법을 제공한다.

Claims (21)

  1. CPU와, 휘발성 메모리 및 비휘발성 외부 저장 장치를 포함하며, 사전결정된 이벤트 발생에 응답해서 실행중인 태스크를 인터럽트하고 상기 메모리의 내용을 포함하는 하이버네이션 정보를 상기 외부 저장 장치내의 하이버네이션 정보 저장 영역에 보존한 후 시스템을 하이버네이션 모드로 쉬프트시키는 하이버네이션 기능을 지원하는 정보 처리 시스템에 있어서,
    ① 상기 메모리의 내용을 포함하는 하이버네이션 정보를 상기 외부 저장 장치내 하이버네이션 정보 저장 영역에 보존하는 수단과,
    ② 상기 외부 저장 장치내의 고정된 위치에 제공된 하이버네이션 관리 정보 저장 영역과,
    ③ 상기 사전결정된 이벤트의 발생에 응답해서 상기 하이버네이션 관리 정보 저장 영역에 존재하는 데이터를 상기 하이버네이션 정보 저장 영역에 보존하는 수단과,
    ④ 상기 수단③에 의해 데이터가 보존된 후, 상기 하이버네이션 관리 정보를 상기 하이버네이션 관리 정보 저장 영역에 저장하는 수단과,
    ⑤ 상기 수단들 ①, ③, ④이 그들의 기능을 완료한 후, 상기 시스템의 구성요소들로의 전기적 파워 공급을 정지시켜 상기 시스템을 하이버네이션 모드로 쉬프트시키는 수단
    을 포함하는 하이버네이션 기능 지원 정보 처리 시스템.
  2. 제 1 항에 있어서,
    ⑥ 상기 시스템에 대한 전기적 파워 공급의 재개에 응답해서 상기 하이버네이션 관리 정보 저장 영역에 저장된 상기 하이버네이션 관리 정보를 체크하는 수단과,
    ⑦ 상기 수단 ⑥에 의한 체크의 성공적 완료에 응답해서 상기 하이버네이션 정보 저장 영역에 보존된 상기 하이버네이션 정보를 원래의 메모리 위치로 복구하는 수단과,
    ⑧ 상기 수단 ⑥에 의한 체크의 성공적 완료에 응답해서 상기 하이버네이션 정보 저장 영역에 보존된 데이터를 상기 하이버네이션 관리 정보 저장 영역으로 복귀시키는 수단
    을 더 포함하는 하이버네이션 기능 지원 정보 처리 시스템.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 하이버네이션 관리 정보는 하이버네이션 기능에 의해 전기적 파워 공급을 정지시킨 상기 정보 처리 시스템의 이벤트를 포함하는 이벤트 히스토리를 표시하는 하이버네이션 표시를 포함하는 하이버네이션 기능 지원 정보 처리 시스템.
  4. 제 1 항 내지 제 3 항중 어느 한 항에 있어서,
    상기 하이버네이션 관리 정보는 상기 외부 저장 장치내 상기 하이버네이션 정보 저장 영역의 위치 정보를 포함하는 하이버네이션 기능 지원 정보 처리 시스템.
  5. 제 1 항 내지 제 4 항중 어느 한 항에 있어서,
    상기 하이버네이션 관리 정보는 상기 정보 처리 시스템의 시스템 구성 정보를 포함하는 하이버네이션 기능 지원 정보 처리 시스템.
  6. 제 2 항에 있어서,
    상기 수단 ⑥은 상기 하이버네이션 관리 정보가 상기 정보 처리 시스템이 하이버네이션 모드에 있음을 표시하는지의 여부를 체크하는 하이버네이션 기능 지원 정보 처리 시스템.
  7. 제 2 항에 있어서,
    상기 수단 ⑥은 상기 하이버네이션 관리 정보에 포함된 시스템 구성 정보가 상기 정보 처리 시스템의 구성 정보와 일치하는지의 여부를 체크하는 하이버네이션 기능 지원 정보 처리 시스템.
  8. 제 2 항에 있어서,
    상기 수단 ⑦은 상기 하이버네이션 관리 정보에 포함된 배치 정보에 따라 복구 프로세스를 실행하는 하이버네이션 기능 지원 정보 처리 시스템.
  9. 제 1 항 내지 제 8 항중 어느 한 항에 있어서,
    상기 하이버네이션 관리 정보 저장 영역은 상기 외부 저장 장치의 최외측 또는 최내측 영역에 규정된 실린더에 위치되는 하이버네이션 기능 지원 정보 처리 시스템.
  10. 제 1 항 내지 제 9 항중 어느 한 항에 있어서,
    상기 수단 ③에 의해 상기 하이버네이션 정보 저장 영역에 보존된 데이터는 상기 외부 저장 장치의 구역 정보(각 구역의 시작 어드레스 및 사이즈)를 기술하는 부트 섹터인 하이버네이션 기능 지원 정보 처리 시스템.
  11. CPU와, 휘발성 메모리 및 비휘발성 외부 저장 장치를 포함하며, 사전결정된 이벤트 발생에 응답해서 실행중인 태스크를 인터럽트하고 상기 메모리의 내용을 포함하는 하이버네이션 정보를 상기 외부 저장 장치내 하이버네이션 정보 저장 영역에 보존한 후 시스템을 하이버네이션 모드로 쉬프트시키는 하이버네이션 기능을 지원하는 정보 처리 시스템의 제어 방법에 있어서,
    ① 상기 메모리의 내용을 포함하는 하이버네이션 정보를 상기 외부 저장 장치내 하이버네이션 정보 저장 영역에 보존하는 단계와,
    ② 상기 외부 저장 장치내의 고정된 위치에 하이버네이션 관리 정보 저장 영역을 마련하는 단계와,
    ③ 상기 사전결정된 이벤트 발생에 응답해서 상기 하이버네이션 관리 정보 저장 영역에 존재하는 데이터를 상기 하이버네이션 정보 저장 영역에 보존하는 단계와,
    ④ 상기 단계 ③에 의해 데이터가 보존된 후 상기 하이버네이션 관리 정보를 상기 하이버네이션 관리 정보 저장 영역에 저장하는 단계와,
    ⑤ 상기 단계들 ①, ③, ④가 실행된 후 상기 시스템내 부분들로의 전기적 파워 공급을 정지시키고 상기 시스템을 하이버네이션 모드로 쉬프트시키는 단계
    를 포함하는 하이버네이션 기능 지원 정보 처리 시스템 제어 방법.
  12. 제 11 항에 있어서,
    ⑥ 상기 시스템으로의 전기적 파워 공급 재개에 응답해서 상기 하이버네이션 관리 정보 저장 영역에 저장된 상기 하이버네이션 관리 정보를 체크하는 단계와,
    ⑦ 상기 단계 ⑥에 의한 체크의 성공적 완료에 응답해서 상기 하이버네이션 정보 저장 영역에 보존된 상기 하이버네이션 정보를 원래의 메모리 위치로 복구하는 단계와,
    ⑧ 상기 단계 ⑥에 의한 체크의 성공적 완료에 응답해서 상기 하이버네이션 정보 저장 영역에 보존된 데이터를 상기 하이버네이션 관리 정보 저장 영역으로 복귀시키는 단계
    를 더 포함하는 하이버네이션 기능 지원 정보 처리 시스템 제어 방법.
  13. 제 11 항 또는 제 12 항에 있어서,
    상기 하이버네이션 관리 정보는 하이버네이션 기능에 의해 전기적 파워 공급을 정지시킨 상기 정보 처리 시스템의 이벤트를 포함하는 이벤트 히스토리를 표시하는 하이버네이션 표시를 포함하는 하이버네이션 기능 지원 정보 처리 시스템 제어 방법.
  14. 제 11 항 내지 제 13 항중 어느 한 항에 있어서,
    상기 하이버네이션 관리 정보는 상기 외부 저장 장치내 상기 하이버네이션 정보 저장 영역의 위치 정보를 포함하는 하이버네이션 기능 지원 정보 처리 시스템 제어 방법.
  15. 제 11 항 내지 제 14 항중 어느 한 항에 있어서,
    상기 하이버네이션 관리 정보는 상기 정보 처리 시스템의 시스템 구성 정보를 포함하는 하이버네이션 기능 지원 정보 처리 시스템 제어 방법.
  16. 제 12 항에 있어서,
    상기 단계 ⑥은 상기 하이버네이션 관리 정보가 상기 정보 처리 시스템이 하이버네이션 모드에 있음을 표시하는지의 여부를 체크하는 하이버네이션 기능 지원 정보 처리 시스템 제어 방법.
  17. 제 12 항에 있어서,
    상기 단계 ⑥은 상기 하이버네이션 관리 정보에 포함된 시스템 구성 정보가 상기 정보 처리 시스템의 구성 정보와 일치하는지의 여부를 체크하는 하이버네이션 기능 지원 정보 처리 시스템 제어 방법.
  18. 제 12 항에 있어서,
    상기 단계 ⑦은 상기 하이버네이션 관리 정보에 포함된 배치 정보에 따라 복구 프로세스를 실행하는 하이버네이션 기능 지원 정보 처리 시스템 제어 방법.
  19. 제 11 항 내지 제 18 항중 어느 한 항에 있어서,
    상기 하이버네이션 관리 정보 저장 영역은 상기 외부 저장 장치의 최외측 또는 최내측 영역에 규정된 실린더에 위치되는 하이버네이션 기능 지원 정보 처리 시스템 제어 방법.
  20. 제 11 항 내지 제 19 항중 어느 한 항에 있어서,
    상기 단계 ③에 의해 상기 하이버네이션 정보 저장 영역에 보존된 데이터는 상기 외부 저장 장치의 구역 정보(각 구역의 시작 어드레스 및 사이즈)를 기술하는 부트 섹터인 하이버네이션 기능 지원 정보 처리 시스템 제어 방법.
  21. CPU와, 휘발성 메모리 및 비휘발성 외부 저장 장치를 포함하며, 사전결정된 이벤트 발생에 응답해서 실행중인 태스크를 인터럽트하고 상기 메모리의 내용을 포함하는 하이버네이션 정보를 상기 외부 저장 장치내 하이버네이션 정보 저장 영역에 보존한 후 시스템을 하이버네이션 모드로 쉬프트시키는 하이버네이션 기능을 지원하는 유형의 컴퓨터 시스템상에서 실행되는 컴퓨터 프로그램을 컴퓨터에 의해 판독가능한 형태로 저장하는 컴퓨터에 판독가능한 저장 매체에 있어서,
    ① 상기 메모리의 내용을 포함하는 하이버네이션 정보를 상기 외부 저장 장치내 하이버네이션 정보 저장 영역에 보존하는 루틴과,
    ② 상기 외부 저장 장치내의 고정된 위치에 하이버네이션 관리 정보 저장 영역을 마련하는 루틴과,
    ③ 상기 사전결정된 이벤트 발생에 응답해서 상기 하이버네이션 관리 정보 저장 영역에 존재하는 데이터를 상기 하이버네이션 정보 저장 영역에 보존하는 루틴과,
    ④ 상기 단계 ③에 의해 데이터가 보존된 후 상기 하이버네이션 관리 정보를 상기 하이버네이션 관리 정보 저장 영역에 저장하는 루틴과,
    ⑤ 상기 단계들 ①, ③, ④가 실행된 후 상기 시스템내 부분들로의 전기적 파워 공급을 정지시키는 루틴
    을 포함하는 컴퓨터 프로그램을 저장한 컴퓨터에 의해 판독가능한 저장 매체.
KR10-2000-7007210A 1998-01-07 1999-01-07 하이버네이션 기능 지원 정보 처리 시스템, 그 제어 방법 및 기록 매체 KR100396460B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP98-1253 1998-01-07
JP00125398A JP3266560B2 (ja) 1998-01-07 1998-01-07 情報処理システム及びその制御方法

Publications (2)

Publication Number Publication Date
KR20010033687A true KR20010033687A (ko) 2001-04-25
KR100396460B1 KR100396460B1 (ko) 2003-09-13

Family

ID=11496300

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-7007210A KR100396460B1 (ko) 1998-01-07 1999-01-07 하이버네이션 기능 지원 정보 처리 시스템, 그 제어 방법 및 기록 매체

Country Status (7)

Country Link
US (1) US6523125B1 (ko)
JP (1) JP3266560B2 (ko)
KR (1) KR100396460B1 (ko)
HU (1) HUP0004181A3 (ko)
IL (1) IL133295A (ko)
PL (1) PL193918B1 (ko)
WO (1) WO1999035576A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100785581B1 (ko) * 2003-05-20 2007-12-13 봇슈 가부시키가이샤 차량 제어 시스템의 복귀 제어 방법
WO2010129159A3 (en) * 2009-05-05 2011-02-17 Microsoft Corporation Capturing and loading operating system states
KR101236981B1 (ko) * 2012-09-14 2013-02-26 (주)나래소프트 히든 영역을 이용한 하이버네이션 부팅 시스템

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3925586B2 (ja) * 1998-07-17 2007-06-06 ソニー株式会社 データ受信装置および方法ならびにデータ送受信システムおよび方法
JP3204251B2 (ja) * 1999-06-30 2001-09-04 インターナショナル・ビジネス・マシーンズ・コーポレーション ハイバネーション装置及び方法、それを格納した記録媒体並びにそれを適用したコンピュータ
US6996819B1 (en) * 1999-09-10 2006-02-07 Unisys Corporation Method for efficiently downloading SCSI and SERVO firmware to SCSI target controllers
JP2002011929A (ja) * 2000-04-28 2002-01-15 Canon Inc プリンタ装置、その制御方法、その制御プログラム及びその制御プログラムを格納したコンピュータにより読み取り可能な記憶媒体
US6799279B1 (en) * 2000-06-21 2004-09-28 Matsushita Electric Industrial Co., Ltd. Method and apparatus for stopping supply of power to a specific function for playing contents stored on media in response to a low battery level
US6749723B2 (en) * 2000-06-28 2004-06-15 Metso Paper Karlstad Ab Measuring arrangements in a shortened dry end of a tissue machine
US6725386B1 (en) * 2000-09-20 2004-04-20 Intel Corporation Method for hibernation of host channel adaptors in a cluster
KR100471056B1 (ko) * 2000-11-18 2005-03-07 삼성전자주식회사 컴퓨터시스템 및 컴퓨터시스템의 대기모드제어방법
US6968410B2 (en) * 2001-02-28 2005-11-22 Intel Corporation Multi-threaded processing of system management interrupts
US7000102B2 (en) * 2001-06-29 2006-02-14 Intel Corporation Platform and method for supporting hibernate operations
US6862681B2 (en) * 2001-07-16 2005-03-01 International Business Machines Corporation Method and system for master boot record recovery
US7055035B2 (en) * 2001-07-31 2006-05-30 Hewlett-Packard Development Company, L.P. Method for generating a read only memory image
US7197578B1 (en) * 2002-06-28 2007-03-27 Cypress Semiconductor Corp. Power management system for bridge circuit
US20040025045A1 (en) * 2002-07-30 2004-02-05 Sentry Technologies Pte, Ltd. Method for switching rapidly between computing modes
US7952569B2 (en) * 2002-08-08 2011-05-31 Hewlett-Packard Development Company, L.P. System and method of switching between multiple viewing modes in a multi-head computer system
US7209124B2 (en) * 2002-08-08 2007-04-24 Hewlett-Packard Development Company, L.P. Multiple-position docking station for a tablet personal computer
US7882162B2 (en) * 2002-08-08 2011-02-01 Hewlett-Packard Development Company, L.P. Rapid access to data on a powered down personal computer
JP4713812B2 (ja) * 2002-09-30 2011-06-29 富士通株式会社 情報処理装置、プログラム及び情報処理システム
GB2404305B (en) 2003-07-22 2005-07-06 Research In Motion Ltd Security for mobile communications device
US8250406B2 (en) * 2003-08-19 2012-08-21 Intel Corporation Operational state preservation in the absence of AC power
CN1327344C (zh) * 2003-08-19 2007-07-18 英特尔公司 无交流电源时保存和恢复工作状态的基本输入/输出***
US7254744B2 (en) * 2003-08-19 2007-08-07 Intel Corporation BIOS for saving and restoring operational state in the absence of AC power
US7752471B1 (en) 2003-09-17 2010-07-06 Cypress Semiconductor Corporation Adaptive USB mass storage devices that reduce power consumption
TWI234110B (en) * 2004-02-05 2005-06-11 Mediatek Inc Method for managing a circuit system during mode-switching procedures
US20050235167A1 (en) * 2004-04-16 2005-10-20 Harry Tiotantra Data streaming system with environment sensor
US7191352B2 (en) * 2004-07-29 2007-03-13 Seiko Epson Corporation Circuit and method for controlling a power cut-off protection circuit
US8095809B2 (en) * 2005-03-30 2012-01-10 Freescale Semiconductor, Inc. System and method for reducing power consumption of a transistor-based circuit having multiple operational modes characterized by different power consumption level
US20060242458A1 (en) * 2005-03-31 2006-10-26 Daniel Feldman Computer volatile memory power backup system
US7484109B2 (en) * 2005-03-31 2009-01-27 Microsemi Corp. - Analog Mixed Signal Group Ltd. Computer volatile memory power backup system
KR100799565B1 (ko) 2005-12-08 2008-01-30 한국전자통신연구원 웹 서비스 프로세스를 하이버네이션시키고 복원하는 방법및 그 장치
US7636737B2 (en) * 2005-12-20 2009-12-22 Microsoft Corporation Web site multi-stage recycling
JP2007249660A (ja) * 2006-03-16 2007-09-27 Toshiba Corp 情報処理装置およびシステムステート制御方法
US7669071B2 (en) * 2006-05-05 2010-02-23 Dell Products L.P. Power allocation management in an information handling system
GB0614515D0 (en) * 2006-07-21 2006-08-30 Ibm An apparatus for managing power-consumption
US8375440B2 (en) * 2007-10-15 2013-02-12 Microsoft Corporation Secure bait and switch resume
JP2009146061A (ja) * 2007-12-12 2009-07-02 Canon Inc 情報処理装置及び前記装置の起動方法
JP4881425B2 (ja) * 2009-11-30 2012-02-22 株式会社東芝 電子機器
JP4929346B2 (ja) 2009-12-28 2012-05-09 株式会社東芝 電子機器
JP4881447B2 (ja) * 2010-01-29 2012-02-22 株式会社東芝 電子機器、及び音声信号増幅方法
JP2012173814A (ja) * 2011-02-17 2012-09-10 Canon Inc 情報処理装置及び情報処理装置を制御する制御方法
JP5653315B2 (ja) * 2011-07-28 2015-01-14 株式会社東芝 情報処理装置
KR101780052B1 (ko) 2011-08-24 2017-09-19 한국전자통신연구원 정보처리 시스템에서 운영체제 전환방법
US20130212317A1 (en) * 2012-02-13 2013-08-15 Shai Traister Storage and Host Devices for Overlapping Storage Areas for a Hibernation File and Cached Data
JP5708671B2 (ja) * 2013-01-21 2015-04-30 コニカミノルタ株式会社 電源制御装置および電源制御システム
JP6164938B2 (ja) * 2013-05-28 2017-07-19 キヤノン株式会社 画像形成装置及びその制御方法、並びにプログラム
US9355674B2 (en) * 2013-07-19 2016-05-31 Seagate Technology Llc Data storage device and system having adaptive brownout detection
JP6291983B2 (ja) * 2014-04-08 2018-03-14 株式会社リコー リカバリデバイス、及びリカバリ方法
JP2016038725A (ja) * 2014-08-07 2016-03-22 セイコーエプソン株式会社 電子システムおよび電子システムの制御方法
TWI531134B (zh) * 2014-12-29 2016-04-21 廣達電腦股份有限公司 電池電源裝置
CN112306604B (zh) * 2020-08-21 2022-09-23 海信视像科技股份有限公司 一种传输文件的进度显示方法及显示设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3106401B2 (ja) * 1993-07-26 2000-11-06 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 情報処理システム
JP3102455B2 (ja) * 1993-07-26 2000-10-23 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 情報処理システム
JPH07200112A (ja) 1993-12-15 1995-08-04 Internatl Business Mach Corp <Ibm> 情報処理システム
US5680540A (en) 1995-01-31 1997-10-21 Bell Usa, L.P. Suspend-to-disk system for removable hard drive
JP2988866B2 (ja) 1996-02-29 1999-12-13 株式会社東芝 コンピュータシステム
JP3253881B2 (ja) * 1997-01-06 2002-02-04 株式会社東芝 コンピュータシステムおよびそのシステムにおけるハイバネーション制御方法
JPH113151A (ja) * 1997-06-12 1999-01-06 Toshiba Corp 情報処理装置のハイバーネーション制御方法及びバッテリ駆動可能な電子機器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100785581B1 (ko) * 2003-05-20 2007-12-13 봇슈 가부시키가이샤 차량 제어 시스템의 복귀 제어 방법
WO2010129159A3 (en) * 2009-05-05 2011-02-17 Microsoft Corporation Capturing and loading operating system states
US8209501B2 (en) 2009-05-05 2012-06-26 Microsoft Corporation Capturing and loading operating system states
KR101236981B1 (ko) * 2012-09-14 2013-02-26 (주)나래소프트 히든 영역을 이용한 하이버네이션 부팅 시스템

Also Published As

Publication number Publication date
HUP0004181A2 (en) 2001-03-28
KR100396460B1 (ko) 2003-09-13
US6523125B1 (en) 2003-02-18
WO1999035576A1 (en) 1999-07-15
JPH11202965A (ja) 1999-07-30
HUP0004181A3 (en) 2002-10-28
PL341480A1 (en) 2001-04-23
JP3266560B2 (ja) 2002-03-18
PL193918B1 (pl) 2007-03-30
IL133295A0 (en) 2001-04-30
IL133295A (en) 2005-03-20

Similar Documents

Publication Publication Date Title
KR100396460B1 (ko) 하이버네이션 기능 지원 정보 처리 시스템, 그 제어 방법 및 기록 매체
JP3045948B2 (ja) 情報処理装置及びその制御方法
US6243831B1 (en) Computer system with power loss protection mechanism
KR100368079B1 (ko) 컴퓨터 및 컴퓨터의 전원 제어 방법
EP2380081B1 (en) Method and system for hibernation or suspend using a non-volatile-memory device
KR100352045B1 (ko) 컴퓨터시스템에서전력소모를감소시키기위한방법및장치
US5784628A (en) Method and system for controlling power consumption in a computer system
JP3301064B2 (ja) 低電力モード・コンピュータ
TWI407300B (zh) 電源管理控制器與方法
US6826703B2 (en) System for notifying operating system of additional event for restoring suspend mode after a hardware device event switches computer to normal mode
EP0636981A1 (en) Information processing system
US20010016905A1 (en) Method, computer, recording medium, and transmission medium for controlling expansion unit
KR100204615B1 (ko) 정보 처리 시스템
US6681336B1 (en) System and method for implementing a user specified processing speed in a computer system and for overriding the user specified processing speed during a startup and shutdown process
JPH07200112A (ja) 情報処理システム
JP4155545B2 (ja) コンピュータシステムおよびデータ転送制御方法
CA2117391C (en) Information processing system
EP0636983A1 (en) Information processing system
EP1037133A1 (en) Method and apparatus for alternation between instances of operating systems in computer systems
JPH0944418A (ja) 情報処理システム及びその制御方法
US20040103345A1 (en) Method, apparatus and system for ensuring reliable power down of a personal computer
US7093142B2 (en) Method, apparatus and program for user-determined operational state of a portable computer prior to detachment
JP3961669B2 (ja) コンピュータシステムおよびデータ転送制御方法
JP3769541B2 (ja) コンピュータ装置、miniPCIカード、自動電源オン回路、および自動立ち上げ方法
JPH0944417A (ja) 情報処理システム及びその制御方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee