KR0174711B1 - 하드디스크 캐시의 제어방법 - Google Patents

하드디스크 캐시의 제어방법 Download PDF

Info

Publication number
KR0174711B1
KR0174711B1 KR1019960012742A KR19960012742A KR0174711B1 KR 0174711 B1 KR0174711 B1 KR 0174711B1 KR 1019960012742 A KR1019960012742 A KR 1019960012742A KR 19960012742 A KR19960012742 A KR 19960012742A KR 0174711 B1 KR0174711 B1 KR 0174711B1
Authority
KR
South Korea
Prior art keywords
hard disk
cache
interrupt
disk cache
data
Prior art date
Application number
KR1019960012742A
Other languages
English (en)
Other versions
KR970071684A (ko
Inventor
이길무
김헌길
신인철
Original Assignee
김광호
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 김광호, 삼성전자주식회사 filed Critical 김광호
Priority to KR1019960012742A priority Critical patent/KR0174711B1/ko
Priority to US08/842,398 priority patent/US5937433A/en
Priority to JP9107206A priority patent/JPH1091519A/ja
Publication of KR970071684A publication Critical patent/KR970071684A/ko
Application granted granted Critical
Publication of KR0174711B1 publication Critical patent/KR0174711B1/ko

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/20Driving; Starting; Stopping; Control thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/311In host system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

본 발명은 하드디스크 드라이브의 액세스를 가능한 제한하여 하드디스크 드라이브에 구비된 스핀들 모터의 구동에 따른 전력소비를 감소시키는 기능을 갖는 하드디스크 캐시의 제어방법에 관한 것으로서, 하드디스크 캐시를 '캐시의 재기록' 알고리즘을 사용하여 제어하게 된다. 또한 컴퓨터 시스템의 파워오프시나 리셋시에 발생되는 SMI인터럽트와 프로그램 종료시에 발생되는 프로그램 종료 인터럽트를 이용하여 하드디스크 캐시에는 변경되었으나 하드디스크 드라이브에는 미기록된 데이터를 모두 하드디스크 드라이브에 기입하게 된다. 이에 따라 하드디스크 드라이브의 액세스가 제한되어 스핀들 모터의 구동이 감소되어 전력소비가 감소되며, 컴퓨터 시스템의 동작속도 또한 증가된다. 그리고 컴퓨터 시스템의 파워 오프시나 리셋시에 발생되던 데이터 손실도 방지할 수 있는 효과가 있다.

Description

하드디스크 캐시의 제어방법
제1도는 종래의 하드디스크 드라이브의 일 예를 보이는 사시도.
제2도는 하드디스크 캐시를 설명하기 위한 도면.
제3도는 스핀들 모터의 구동 시에 소비되는 전류의 변화를 보이는 도면.
제4도는 SMI 발생부를 구비한 컴퓨터 시스템의 일 예를 보이는 블록도.
제5도는 본 발명의 실시예에 따른 하드디스크 캐시의 제어방법에 있어서, 그 초기화 과정을 설명하기 위한 순서도.
제6도는 제5도의 초기화 과정이 진행된 후의 메인 메모리의 메모리-맵.
제7도는 본 발명의 실시예에 따른 하드디스크 캐시의 제어방법을 설명하기 위한 순서도.
제8도는 본 발명의 하드디스크 캐시의 제어동작을 메모리-맵에서 보여주는 도면.
제9도는 제7도의 독출 동작을 설명하기 위한 상세 순서도.
제10도는 제7도의 기입 동작을 설명하기 위한 상세 순서도.
제11도는 제7도의 플러시 동작을 설명하기 위한 상세 순서도.
* 도면의 주요부분에 대한 부호의 설명
10, 68 : 하드디스크 드라이브 12 : 미디어
14 : 헤드 16 : 케이스 외장부
30, 64, 90 : 메인 메모리
[산업상의 응용분야]
발명은 하드디스크 캐시의 제어방법에 관한 것으로서, 구체적으로는 하드디스크 드라이브의 액세스(access)를 가능한 제한하여 하드디스크 드라이브에 구비된 스핀들 모터의 구종에 따른 전력 소비를 감소시키는 기능을 갖는 하드디스크 캐시의 제어방법에 관한 것이다.
[종래의 기술 및 그의 문제점]
현재 휴대용 컴퓨터 시스템의 경우 그 기능을 향상시키기 위한 노력이 계속되고 있다. 그러나 휴대용 제품의 특성상 일 회 충전으로 사용 가능한 시간은 제한적이다. 따라서, 가능한 많은 시간을 재 충전 없이 사용가능한 휴대용 컴퓨터 시스템에 대한 요구가 증가되고 있다. 그리하여 전원용 배터리의 일회 충전으로 많은 시간동안 재 충전 없이 사용가능한 배터리의 개발에 대한 노력과 함께, 반대로 컴퓨터 시스템의 전력 소비를 줄이기 위한 연구도 계속 되고 있다.
그런데 전원용 배터리를 이용해 사용 시간을 증가시키는 것은 어느 정도 제한이 있으므로 가능한 휴대용 컴퓨터 시스템 자체의 전력 소비를 줄이기 위해 노력하고 있다. 이러한 노력은, 휴대용 컴퓨터 시스템의 구성요소 중에서 현재 작동중이 아닌 주변 기기들에 대하여 전원 공급을 차단하거나 감소시키는 방법으로 나타나고 있다. 또한 최대성능이 필요하지 않은 경우에는 휴대용 컴퓨터 시스템의 속도를 늦추는 방법 등을 사용하여 전력 소비를 줄이고 있다.
이러한 전력 소비를 감소시키기 위한 방법을 일반적으로 APM(Advanced Power Management)라 한다. APM의 기능에 대하여 구체적으로 살펴보면 다음과 같은 것들이 있다.
먼저, 휴대용 컴퓨터 시스템에 마지막 액세스(access)가 있은 후 일정한 시간이 경과되면 자동적으로 동작주파수를 감소시켜 전력 소비를 줄이는 기능이 있다. 그리고 마지막으로 화면상의 변화가 있은 후 일정시간이 경과되거나 또는 키보드로부터 입력이 일정시간 동안 없는 경우 자동적으로 LCD 등의 화면 출력을 위한 전원의 공급을 차단하는 기능이 있다. 또한 하드디스크 드라이브의 경우는 마지막 액세스가 있은 후 설정된 소정의 시간이 경과되면 자동으로 하드디스크 드라이브 내부에 구비된 모터의 회전을 멈추도록하여 그의 전력 소비를 감소시키고 있다.
한편, 휴대용 컴퓨터 시스템의 전력 소비는 상당부분 하드디스크 드라이브에서 이루어지고 있으므로, 하드디스크 드라이브의 전력 소비를 감소시키기 위한 노력이 여러 방향으로 계속되고 있다.
상술한 바와 같이 하드디스크 드라이브의 전력 소비를 줄이기 위해, 일반적으로 하드디스크 드라이브를 제어하기 위한 명령어(command)들을 이용하여 하드디스크 드라이브의 내부에 구비된 스핀들 모터(spindle motor)나 서보모터(suvor motor)의 회전을 정지시켜 전력 소비를 감소시킨다.
제1도는 종래의 하드디스크 드라이브의 일 예를 보이는 사시도이다.
제1도에 도시된 바와 같이 하드디스크 드라이브(10)는 크게 데이터 저장용의 미디어(12)와, 상기 미디어(12)를 회전시키기 위한 스핀들 모터(도시되지 않음)의, 상기 스핀들 모터의 회전에 따라 상기 미디어(12)가 회전될 때 이로부터 데이터를 기입/독출(read/write)하기 위한 헤드(14)와, 이들을 보호하고 있는 케이스 외장부(16)와, 일반적으로 상기 하드디스크 드라이브(10)의 밑면에 장착되는 하드디스크 제어회로부(도시되지 않음)로 구성된다.
상기 미디어(12)는 일반적으로 알루미늄 합금의 딱딱한 재질이 사용된다. 이것을 플래터(platter)라고 하는데, 이 표면에 마그네틱 필름이 덮여(coating)있고 그 위에 다시 탄소 성분을 입혀 마그네틱 필름을 보호하는 역할을 한다. 보통 이러한 플래터를 여러장 사용하여 미디어(12)를 구성한다.
이상과 같은 구성을 갖는 하드디스크 드라이브(10)는 상기 스핀들 모터에 의해 상기 미디어(12)가 회전하고, 상기 헤드(14)에 의해 데이터의 기입/독출이 수행된다.
그런데, 하드디스크 드라이브(10)로부터 데이터의 기입/독출 동작이 수행되는 속도는 상대적으로 메인 메모리(반도체 메모리로 구성)로부터 데이터를 기입/독출하는 속도보다 느리다. 왜냐하면, 하드디스크 드라이브(10)로부터 데이터가 기입/독출 될 때는 그 특성상 기계적인 동작이 수반되기 때문이다. 이러한 속도의 차이를 보상하기 위해 하드디스크 캐시가 도입되어 사용되고 있다.
하드디스크 캐시란, 하드디스크 드라이버로부터 빠르게 데이터를 기입/독출하기 위해 구비된 메모리를 말한다. 이러한 메모리는 일반적으로 메인 메모리의 특정부분을 설정하여 사용하기도 하지만, 하드디스크 드라이버의 내부에 하드웨어적으로 소정의 메모리를 장착하여 사용하기도 한다.
제2도는 종래의 하드디스크 캐시의 일 예를 보이는 도면이다.
제2도를 참조하여, 하드디스크 드라이브(10)와 메인 메모리(30)사이에 하드디스크 캐시(20)가 존재하여 이를 통하여 데이터의 기입/독출이 일어나게 된다. 그리고 하드디스크 드라이버(10)로부터 데이터의 독출이 일어나면 일반적으로 이 데이터와 그 주변의 데이터(보통 블록단위의 데이터)가 하드디스크 캐시(20)에 저장된다. 이렇게 되면 다음에 반복하여 같은 데이터를 하드디스크 드라이버(10)로부터 읽을 필요 없이 하드디스크 캐시(20)로부터 읽으면 되므로 빠른 수행 속도를 얻을 수 있게 된다.
한편, 캐시의 쓰기 알고리즘(algorithm)에는 크게 두 가지로 구분되는데, 이는 캐시를 통한 기록(write through cache)과 캐시에 재기록(write back cache)이다.
먼저, '캐시를 통한 기록'이란 캐시를 사용하다가 캐시의 데이터의 내용이 변경되면 그 데이터를 하드디스크 드라이브에도 동일하게 기록하게 된다. 이는 캐시의 데이터와 하드디스크 드라이브의 데이터와의 상호 내용이 항상 일치해야 한다는 캐시 일관성(cache coherency)을 적용한 알고리즘이기 때문이다.
그리고, '캐시에 재기록'이란 보다 더욱 컴퓨터 시스템의 속도를 높이기 위해 사용되는 방법이다. 캐시의 데이터가 변경되어도 일단 캐시에만 변경된 데이터를 기록하고 하드디스크 드라이브에는 변경된 데이터를 기록하지 않는다. 그러다 캐시에 원하는 데이터가 없는 경우인 적중실패(miss hit)가 발생되는 캐시에서 변경된 데이터를 하드디스크 드라이브에 모두 기록하도록 한다. 이러한 알고리즘의 경우는 캐시의 데이터가 변경될 때마다 하드디스크 드라이브를 액세스(access)하지 않아도 됨으로 그만큼의 속도가 증가되는 효과가 있다.
그러나, '캐시에 재기록'의 경우는 원하지 않는 경우가 발생하여 컴퓨터 시스템이 파워 오프(power off)되거나 리셋(reset)되는 경우에 문제가 발생하게 된다. 즉, 캐시에 변경된 데이터가 존재하고 그 변경된 데이터가 아직 하드디스크 드라이브에 기입되지 않은 경우에 위와 같은 경우가 발생되면 변경된 데이터를 모두 잃어버리게 된다. 이러한 문제점 때문에 현재 '캐시를 통한 기록'이 컴퓨터 시스템에 적용되어 사용되고 있다.
하지만, 이러한 '캐시를 통한 기록'의 경우에도 문제점이 발생되고 있다. 컴퓨터 시스템의 전력 소비를 감소시키기 위해 하드디스크 드라이브에 구비된 스핀들 모터를 정지시킨 경우, 캐시의 데이터가 변경되면 캐시 일관성으로 인해 하드디스크 드라이브에도 변경된 데이터를 동일하게 기록하여야 함으로 스핀들 모터가 구동되어야 한다.
제3도에 도시된 바와 같이, 스핀들 모터가 정지되어 다시 회전을 시작하는 경우, 스핀들 모터가 정상적인 속도로 회전되기까지는 일정 시간(ts)동안 과도구간(40)이 발생된다. 그런데 이러한 과도구간(40)에서 상기 스핀들모터는 비교적 많은 량의 전류(45)를 소비하게 된다. 그리고 과도구간(40)이 지난 후에 상기 스핀들 모터가 정상속도로 회전하는 정상구간(50)이 되면 일정량의 전류(Is)만을 소비하게 된다.
결과적으로 컴퓨터 시스템의 전력 소비를 감소시키기 위해 스핀들 모터의 회전을 정지시킨 것이 또 다른 전력 소비의 원인이 되는 문제점이 있다.
[발명의 목적]
따라서 본 발명의 목적은 상술한 여러 문제점을 해결하기 위해 제안된 것으로서, 하드디스크 드라이브의 구동을 최소화하여 전력 소비를 감소시킬 수 있는 하드디스크 캐시의 제어방법을 제공하는데 있다.
본 발명의 다른 목적은, 컴퓨터 시스템의 파워 오프시나 리셋시에 하드디스크 캐시에 저장된 데이터를 안전하게 하드디스크 드라이브에 기입하는 하드디스크 캐시의 제어방법을 제공하는 데 있다.
[발명의 구성]
상기 목적을 달성하기 위한 본 발명의 특징에 의하면 보조 기억 장치인 하드디스크 드라이브와, 상기 하드디스크 드라이브로부터 독출/기입되는 데이터를 임시저장하기 위한 하드디스크 캐시를 구비한 컴퓨터 시스템의 하드디스크 캐시의 제어방법에 있어서; 상기 컴퓨터 시스템의 구동시 하드디스크 캐시를 제어하기 위한 초기화 단계와; 상기 하드디스크 드라이브에 기입/독출을 위해 발생되는 소정의 인터럽트와, 파워 오프시나 리셋시에 발생되는 SMI인터럽트 그리고 프로그램 종료시에 발생되는 인터럽트 중 어느 하나가 발생되면, 그 인터럽트를 접수하는 단계와; 상기 발생된 인터럽트의 종류를 판단하여 그에 대응되는 제어를 수행하기 위한 단계로 진행시키는 단계와; 상기 인터럽트가 독출에 따른 인터럽트일 때, 독출하고자 하는 데이터가 상기 하드디스크 캐시에 있으면 이를 독출하고, 없으면 현재 상기 하드디스크 캐시에 기입 작업이 이루어진 모든 캐시원소들을 상기 하드디스크 드라이브에 기입하고, 상기 하드디스크 드라이브로부터 상기 독출하려는 데이터를 독출하는 단계와; 상기 인터럽트가 기입에 따른 인터럽트일때, 상기 하드디스크 캐시의 상태에 따라 현재 하드디스크 캐시에 기입작업이 이루어진 모든 캐시원소들을 상기 하드디스크 드라이브에 기입하여 플러시하고, 상기 기입하려는 데이터를 상기 하드디스크 캐시에 기입하는 단계와; 상기 인터럽트가 파워 오프시나 리셋시에 발생되는 SMI인터럽트나 프로그램 종료시에 발생되는 인터럽트일 때 상기 하드디스크 캐시의 원소들 중 기입 작업이 있는 캐시원소가 있는 경우 이들을 모두 상기 하드디스크 드라이브에 기입하는 하드디스크 캐시의 플러시 단계와; 소정의 제어가 종료되면 인터럽트 복귀가 이루어지는 단계를 포함하는 것을 특징으로 한다.
이 실시예에 있어서, 상기 초기화 단계는 상기 컴퓨터 시스템에 구비된 BIOS의 인터럽트 중에, 상기 하드디스크 드라이브에 데이터의 기입/독출을 위해 발생되는 소정의 인터럽트와, 파워 오프시나 리셋시에 발생되는 SMI인터럽트 그리고 프로그램 종료시에 발생되는 인터럽트의 발생에 응답하여 상기 하드디스크 캐시의 제어가 이루어지도록 하는 소정의 인터럽트 초기화 단계와, 상기 하드디스크 캐시의 각각의 캐시원소들에 대한 제어정보를 가지고 있는 하드디스크 캐시의 제어정보 영역을 초기화하는 단계를 포함하는 것을 특징으로 한다.
이 실시예에 있어서, 상기 독출 동작을 수행하기 위한 제어단계는; 상기 독출하려는 데이터가 상기 하드디스크 캐시에 존재하는가 판단하는 단계와; 상기 하드디스크 캐시에 상기 독출하려는 데이터가 없는 경우, 현재 상기 하드디스크 캐시에 기입 작업이 이루어진 캐시원소가 존재하는지 판단하는 단계와, 기입 작업이 이루어진 캐시원소를 상기 하드디스크 드라이브에 모두 기입하는 플러시 단계와; 상기 하드디스크 드라이브로부터 상기 독출하려는 데이터를 독출하여 상기 하드디스크 캐시에 삽입하는 단계와; 상기 독출하려는 데이터가 상기 하드디스크 캐시에 존재하는 경우나 상기 하드디스크 드라이브로부터 독출하려는 데이터가 독출되어 상기 하드디스크 캐시에 삽입된 후, 상기 하드디스크 캐시로부터 데이터를 독출하는 단계와; 상기 하드디스크 캐시의 각각의 캐시원소들에 대한 제어정보를 가지고 있는 하드디스크 캐시의 제어정보 영역을 재조정하는 단계를 포함하는 것을 특징으로 한다.
이 실시예에 있어서, 상기 기입동작을 수행하기 위한 제어단계는; 상기 하드디스크 캐시에 새로운 캐시원소를 삽입할 수 있는가 판단하는 단계와; 상기 하드디스크 캐시에 새로운 캐시원소를 삽입할 수 없는 경우, 상기 하드디스크 캐시에 기입 작업이 이루어진 캐시원소가 존재하는가 판단하는 단계와; 상기 하드디스크 캐시에 기입 작업이 이루어진 캐시원소가 존재하는 경우 이들을 모두 상기 하드디스크 드라이브에 기입하는 플러시 단계와; 상기 기입하려는 데이터를 상기 하드디스크 캐시에 새로운 캐시원소로 삽입하는 단계와; 상기 하드디스크 각각의 캐시원소들에 대한 제어정보를 가지고 있는 하드디스크 캐시의 제어정보 영역을 재조정하는 단계를 포함하는 것을 특징으로 한다.
이 실시예에 있어서, 상기 하드디스크 캐시를 플러시 하는 제어단계는: 상기 인터럽트가 파워 오프시나 리셋시에 발생되는 SMI인터럽트나 프로그램 종료시에 발생되는 인터럽트일 때, 상기 하드디스크 캐시의 원소들 중 기입작업이 있는 캐시원소가 있는가 판단하는 단계와; 기입 작업이 있는 캐시원소가 있는 경우 이들을 모두 상기 하드디스크 드라이브에 기입하는 플러시 단계와; 상기 하드디스크 캐시의 각각의 캐시원소들에 대한 제어정보를 가지고 있는 하드디스크 캐시의 제어정보 영역을 초기화하는 단계를 포함하는 것을 특징으로 한다.
[작용]
상술한 본 발명의 하드디스크 캐시의 제어방법에 의하면, 하드디스크 캐시를 '캐시에 재기록' 알고리즘을 사용하여 제어하므로 하드디스크 드라이브의 액세스가 최소화되어 전력 소비가 감소되며, 컴퓨터 시스템의 파워 오프시나 리셋시 그리고 프로그램 종료시에 하드디스크 캐시에 존재하는 미기록 데이터 즉, 하드디스크 드라이브에 미기록된 데이터를 모두 하드디스크 드라이브에 기록하게 된다.
[실시예]
제5도 내지 제11도를 참조하면, 본 발명의 신규한 하드디스크 캐시의 제어방법은, 하드디스크 캐시(66)를 '캐시의 재기록' 알고리즘을 사용하여 제어하게 된다. 또한 컴퓨터 시스템의 파워 오프시나 리셋시에 발생되는 SMI인터럽트와 프로그램 종료시에 발생되는 프로그램 종료 인터럽트를 이용하여 상기 하드디스크 캐시(66)에만 변경되고 하드디스크 드라이브(68)에는 미기록된 데이터를 모두 하드디스크 드라이브(66)에 기입하게 된다.
이하 본 발명의 실시예를 첨부 도면 제4도 내지 제11도에 의거하여 상세히 설명한다.
제4도는 SMI 발생부를 구비한 컴퓨터 시스템의 일 예를 보이는 블록도이다. SMI발생부(60)로부터 SMI신호가 발생되면 이는 중앙처리부(CPU,62)로 인가되게 된다. 이에 따라 상기 중앙처리부(62)는 입력된 상기 SMI신호에 응답하여 소정의 응답신호(SMIACK)를 출력하게 된다. 그러면 해당되는 SMI처리 루틴이 수행하게 된다. 한편, 하드디스크 드라이브(68)와 메인 메모리(64)사이에 하드디스크 캐시(66)가 위치하게 되고, 상기 하드디스크 드라이브(68)로부터 기입/독출되는 데이터는 상기 하드디스크 캐시(66)에 임시 저장되어 사용하게 된다.
SMI(system management interrupt)란 컴퓨터 시스템의 파워 오프나 리셋시 발생되는 인터럽트이며, SMI인터럽트가 발생되는 경우는 이외에도 여러 가지가 있으며 이러한 SMI인터럽트는 컴퓨터 시스템을 관리하기 위해 주로 이용된다. 상술한 APM 기능도 상기 SMI를 이용하여 작동될 수 있게 되어 있다.
한편, 본 발명의 하드디스크 캐시의 제어방법은 '캐시에 재기록' 알고리즘이 적용되게 된다. 그런데 이 알고리즘이 적용될 경우 하드디스크 캐시(66)에는 변경된 데이터가 존재하지만 이 데이터가 아직 하드디스크 드라이브(68)에는 기록되지 않은 경우가 존재할 수 있게 된다. 이러한 경우 컴퓨터 시스템이 파워 오프 되거나 리셋되면 데이터가 손실될 수 있으므로 이를 방지하기 위해 상술한 SMI인터럽트를 이용하게 된다. 따라서 파워 오프시나 리셋시에 SMI인터럽트가 발생되면, 현재 변경되어 있는 하드디스크 캐시(66)의 데이터를 하드디스크 드라이브(68)에 모두 기록한 후 발생된 SMI인터럽트에 대응된 동작을 수행하게 된다.
또한 실행중인 프로그램이 종료될 때도 이상과 같은 제어동작을 수행하게 된다. 실행중인 프로그램이 종료될 때는 그에 따른 프로그램 종료 인터럽트가 발생하며 이를 이용하게 된다. 그리고 하드디스크 드라이브(68)에 데이터의 기입/독출을 위해 발생되는 인터럽트를 이용하여 하드디스크 캐시를 제어하게 된다.
다음은 이상과 같은 하드디스크 캐시의 제어방법을 좀더 구체적으로 설명한다.
제5도는 본 발명의 실시예에 따른 하드디스크 캐시의 제어방법에 있어서 그 초기화 과정을 설명하기 위한 순서도이다.
제5도에 도시된 바와 같이, 컴퓨터 시스템의 파워 온시에 수행되는 일련의 과정은 다음과 같다.
먼저 단계 S100에서, 컴퓨터 시스템이 파워 온 되면 컴퓨터 시스템은 파워 온 리셋(power on reset) 과정에 의해 컴퓨터 시스템이 안정적인 상태로 된다.
이어 단계 S110으로 진행하며, 이 단계에서는 통상적으로 컴퓨터 시스템에 구비된 BIOS(Basic Input Output System)에 의한 하드웨어 부팅과정이 수행된다. 이러한 BIOS에 의한 하드웨어 부팅과정은 제조회사에 따라 조금씩 상이한 점을 보이고 있으나 일반적으로 POST(Power On Self Test)과정을 포함하고 있다. 그리고 소정의 초기값에 따라 컴퓨터 시스템에 구성된 각 장치들이 초기화되게 된다.
이상의 BIOS에 의한 하드웨어 부팅과정이 진행된 후 단계S120에서는, OS에 의한 부팅과정이 진행되게 되는데, 일반적으로 DOS의 경우를 예를 들어 설명하면 다음과 같다.
상기 BIOS에 의한 하드웨어 부팅과정의 마지막 단계에서, 바이오스-롬(BIOS ROM)에 부트스트랩 루틴(bootstrap routine)이 실행된다. 이 루틴은 하드디스크 드라이브(또는 플로피 디스크 드라이브에 삽입된 플로피 디스크)의 부트 섹터(boot sector)의 내용을 메인 메모리에 복사한다. 부트 섹터는 그 섹터가 든 드라이브에서 소프트웨어 부팅에 필요한 파일들(files)에 대한 정보들과 상기 부트스트랩 프로그램과는 다른 또 다른 부트스트랩 프로그램을 담고 있다. 또 다른 부트스트랩 프로그램은 특정한 파일들(MS-DOS의 경우 IO.SYS와 MSDOS.SYS)을 찾아 메모리에 로드하게 되고 IO.SYS에 의해 OS부팅과정이 계속된다. 이때, 단계 S130에서 하드디스크 캐시의 제어프로그램이 메인 메모리에 로드되고, 이어 단계 S140에서 상기 하드디스크 캐시의 제어 프로그램에 의해 소정의 초기화 과정이 수행된다.
상기 초기화 단계 S140을 좀 더 구체적으로 설명하면, 컴퓨터 시스템에 구비된 BIOS의 인터럽트 중에, 상기 하드디스크 드라이브(68)에 데이터의 기입/독출을 위해 발생되는 소정의 인터럽트(BIOS 인터럽트 13h)와, 파워 오프시나 리셋시에 발생되는 SMI인터럽트 그리고 프로그램 종료시에 발생되는 인터럽트(DOS 인터럽트 4ch)의 발생에 응답하여 상기 하드디스크 캐시(66)의 제어가 이루어지도록 한다. 다시 말하면, 이상과 같은 인터럽트가 발생되면 상기 하드디스크 캐시의 제어프로그램이 실행되도록 된다. 그리고 상시 하드디스크 캐시(66)의 각각의 캐시원소들에 대한 제어정보를 가지고 있는 하드디스크 캐시의 제어정보 영역(93)을 초기화한다.
이어 단계 S150에서 나머지 몇몇단계의 부팅과정이 더 진행되게 되면 OS에 의한 부팅과정이 종료되고 단계 S160으로 진행하여 사용자의 입력을 기다리는 입력대기 상태로 된다.
이상과 같은 OS에 의한 소프트웨어 부팅과정이 종료된 후 메인 메모리의 메모리-맵(memory map)이 첨부도면 제6도에 도시되어 있다. 제6도는 제5도의 초기화 과정이 진행된 후의 메인메모리의 메모리-맵이다.
제6도에 도시된 바와 같이, 메인 메모리(90)의 소정의 부분에 인터럽트 백터 테이블(interrupt vector table, 98)과 인터럽트 처리루틴이 있는 BIOS(97)부분이 각각 위치한다. 그리고 하드디스크 캐시(66)의 영역과 하드디스크 캐시 제어 드라이버(92)와, 하드디스크 캐시의 제어정보 영역(93)이 소정의 부분에 각각 위치하게 된다.
상기 하드디스크 캐시의 제어정보 영역(93)은 구체적으로 다음과 같은 구성을 갖고 있게 될 수 있다. 상기 하드디스크 캐시(66)의 각각의 구성원소들이 저장되어 있는 메인 메모리의 어드레스(94)와, 상기 구성원소가 저장되어 있는 하드디스크에서의 어드레스(95) 그리고 상기 하드디스크 캐시(66)를 제어하기 위한 제어 플래그(96)로 구성될 수 있다.
상기 하드디스크에서의 어드레스(95)는 통상적으로 실린더(95a)와 헤더(95b)와 시작섹터(95c)와 종료섹터(95d)로 표시가능하도록 되어 있다. 그리고 상기 제어 플래그(96)는 상기 하드디스크 캐시(66)에 구성된 각각의 캐시원소들의 상태 즉, 이 캐시원소가 기록이 요구되었는가 또는 중복된 하드디스크 상우의 어드레스(95)를 갖는 캐시원소가 있는가 등을 표시하기 위한 플래그이다.
한편, 이상과 같은 하드디스크 캐시의 초기화 과정이 진행된 컴퓨터 시스템에서 일반적으로 실행 프로그램이 실행되는 과정 중에 상기 하드디스크 캐시(66)가 제어되는 것을 상세히 설명하면 다음과 같다.
제7도는 본 발명의 실시예에 따른 하드디스크 캐시의 제어방법을 설명하기 위한 순서도이다.
제7도에 도시된 바와 같이, 상술한 하드디스크 캐시의 제어프로그램 즉, 하드디스크 캐시 드라이버(92)에 의한 제어는 다음과 같다.
먼저, 단계 S200에서는 컴퓨터 시스템이 구동되어 부팅되면서 상기 하드디스크 캐시 드라이버(92)가 상기 메인 메모리(90)에 로드되면 이에 의해 하드디스크 캐시를 제어하기 위한 초기화가 진행된다. 이는 앞서 설명한 제5도의 단계 S140에 해당되는 것이다. 이러한 초기화 과정 OS에 의한 소프트웨어 부팅시에만 진행된다.
단계 S210에서는 통상적으로 실행 프로그램이 실행중에 상기 하드디스크 드라이브(68)에 기입/독출을 위해 발생되는 소정의 인터럽트와, 파워 오프시나 리셋시에 발생되는 SMI인터럽트 그리고 프로그램 종료시에 발생되는 인터럽트 중 어느 하나가 발생되면, 그 인터럽트를 접수한다. 이어 단계 S220에서는 상기 발생된 인터럽트의 종류를 판단하여 그에 대응되는 제어를 수행하기 위한 단계로 진행한다.
상기 인터럽트가 독출에 따른 인터럽트이면, 단계 S300으로 진행하여 독출하고자 하는 데이터가 상기 하드디스크 캐시(66)에 있는가 판단하고, 있는 경우는 이를 독출하고 없으면 현재 상기 하드디스크 캐시(66)에 기입작업이 이루어진 모든 캐시원소들을 상기 하드디스크 드라이브(68)에 기입하고, 상기 하드디스크 드라이브(68)로부터 상기 독출하려는 데이터를 독출하여 상기 하드디스크 캐시(66)에 삽입하고 이를 독출한다.
그리고 상기 인터럽트가 기입에 따른 인터럽트이면, 단계 S400으로 진행하여 상기 하드디스크 캐시(66)의 상태에 따라 현재 하드디스크 캐시(66)에 기입작업이 이루어진 모든 캐시원소들을 상기 하드디스크 드라이브(68)에 기입하여 플러시(flush)하고, 상기 기입하려는 데이터를 상기 하드디스크 캐시(66)에 새로운 캐시원소로 삽입한다.
한편, 상기 인터럽트가 파워 오프시나 리셋시에 발생되는 SMI인터럽트나 프로그램 종료시에 발생되는 인터럽트이면, 단계 S500으로 진행하여 상기 하드디스크 캐시(66)의 원소들 기입작업이 있는 캐시원소가 있는 경우 이들을 모두 상기 하드디스크 드라이브(68)에 기입한다.
그리고 이상과 같은 소정의 제어가 종료되면 제어는 단계 S600으로 진행하여 인터럽트 복귀(interrupt return)가 이루어진다.
상술한 바와 같은 하드디스크 캐시의 제어과정을 첨부도면 제8도를 참조하여 전체적으로 다시 설명하면 다음과 같다.
제8도를 참조하여, 일반적인 실행 프로그램(99)이 실행되다가 하드디스크 드라이브에 어떠한 데이터를 기입하거나 독출하려는 상황이 발생되면, 소정의 인터럽트(BIOS 인터럽트 13h)가 발생하게 된다. 그러면 단계 S10이 진행되어 실행중인 프로그램은 잠시 대기하고 상기 인터럽트 벡터 테이블에서 지지하는 소정의 부분에 있는 실행코드가 중앙처리장치에 의해 실행된다. 즉, 해당되는 인터럽트를 처리하기 위한 실행 코드가 있는 어드레스로 점프(jump)하도록 되어 있다.
그런데 단계 S20'과 같이 일반적으로 인터럽트 처리를 위해 BIOS영역(97)의 해당 처리루틴으로 점프하도록 되어 있으나, 상기 초기화 단계 S200에 의해 인터럽트 벡터 테이블(98)이 초기화 되었으므로 상기 하드디스크 제어 드라이버(92)의 인터럽트 접수단계 S210으로 점프하게 된다. 그리고 해당되는 하드디스크 캐시의 제어가 실행되고 단계 S30에서는 인터럽트 복귀가 이루어진다.
다음은 제9도 내지 제11도를 참조하여 상술한 하드디스크 캐시의 제어방법을 보다 더 상세히 설명한다.
제9도는 제7도의 독출동작을 설명하기 위한 상세순서도이고, 제10도는 제7도의 기입동작을 설명하기 위한 상세순서도이고, 제11도는 제7도의 플러시 동작을 설명하기 위한 상세순서도이다.
제9도에 도시된 바와 같이, 상기 독출동작을 수행하기 위한 제어단계 S300은, 단계 S310에서 상기 독출하려는 데이터가 상기 하드디스크 캐시(66)에 존재하는가 판단한다. 그리고 상기 하드디스크 캐시(66)에 상기 독출하려는 데이터가 없는 경우, 단계 S320으로 진행하여 현재 상기 하드디스크 캐시(66)에 기입작업이 이루어진 캐시원소가 존재하는지 판단한다. 이러한 판단은 상기 제어 플래그(95d)의 해당 플래그 비트에 따라 판단한다. 기입작업이 이루어진 캐시원소가 존재하는 경우 단계 S330으로 진행하여 이를 상기 하드디스크 드라이브(68)에 모두 기입하여 하드디스크 캐시를 플러시한다.
그리고 기입작업이 이루어진 캐시원소가 없는 경우나, 하드디스크 캐시를 플러시한 후 제어는 단계 S340으로 진행하여 상기 하드디스크 드라이브(68)로부터 상기 독출하려는 데이터를 독출하여 상기 하드디스크 캐시(66)에 삽입한다.
한편 단계 S350에서는, 상기 독출하려는 데이터가 상기 하드디스크 캐시(66)에 존재하는 경우나, 상기 하드디스크 드라이브(68)로부터 독출하려는 데이터가 독출되어 상기 하드디스크 캐시(66)에 삽입된 후 상기 하드디스크 캐시(66)로부터 데이터를 독츨한다. 그리고 단계 S360으로 진행하여 상기 하드디스크 캐시(66)의 각각의 캐시원소들에 대한 제어정보를 가지고 있는 하드디스크 캐시의 제어정보 영역(93)을 재조정한다.
제10도에 도시된 바와 같이, 상기 기입동작을 수행하기 위한 제어단계 S400는, 단계 S410에서 상기 하드디스크 캐시(66)에 새로운 캐시원소를 삽입할 수 있는가 판단한다. 상기 하드디스크 캐시(66)에 새로운 캐시원소를 삽입할 수 없는 경우, 단계 S420으로 진행하여 상기 하드디스크 캐시(66)에 기입작업이 이루어진 캐시원소가 존재하는가 판단한다.
상기 하드디스크 캐시(66)에 기입작업이 이루어진 캐시원소가 존재하는 경우 단계 S430으로 진행하여 이들을 모두 상기 하드디스크 드라이브(68)에 기입하여 상기 하드디스크 캐시(66)를 플러시한다.
한편, 단계 S440에서는, 하드디스크 캐시에 새로운 캐시원소를 삽입할 수 있는 경우는 새로운 캐시원소를 삽입하고, 상기 단계 S420의 판단에 따라 기입작업이 이루어진 캐시원소가 없는 경우는 가장 오래된 캐시원소를 소거하고 새로운 캐시원소를 삽입할 수 있다. 그리고 단계 S450에서 상기 하드디스크 캐시의 제어정보 영역(93)을 재조정한다.
제11도에 도시된 바와 같이, 상기 하드디스크 캐시(66)를 플러시하는 제어단계 S500은, 단계 S510에서 상기 인터럽트가 파워 오프시나 리셋시에 발생되는 SMI인터럽트나 프로그램 종료시에 발생되는 인터럽트일 때, 상기 하드디스크 캐시(66)의 원소들 중 기입작업이 있는 캐시원소가 있는가 판단한다. 기입작업이 있는 캐시원소가 있는 경우 단계 S520으로 진행하여 이들을 모두 상기 하드디스크 드라이브(68)에 기입하여 상기 하드디스크 캐시를 플러시한다. 그리고 단계 S530에서는 상기 하드디스크 캐시의 제어정보 영역(93)을 초기화한다.
[발명의 효과]
상술한 하드디스크 캐시의 제어방법에 의하면, 하드디스크 드라이브의 액세스가 제한되고 스핀들 모터의 구동이 감소되어 전력소비가 감소된다. 이에 따라 컴퓨터 시스템의 동작속도 또한 증가된다. 그리고 컴퓨터 시스템의 파워 오프시나 리셋시에 발생되던 데이터 손실도 방지할 수 있는 효과가 있다.

Claims (5)

  1. 보조 기억 장치인 하드디스크 드라이브(68)와, 상기 하드디스크 드라이브(68)로부터 독출/기입되는 데이터를 임시저장하기 위한 하드디스크 캐시(66)를 구비한 컴퓨터 시스템의 하드디스크 캐시의 제어방법에 있어서; 상기 컴퓨터 시스템의 구동시 하드디스크 캐시를 제어하기 위한 초기화 단계(S200)와; 상기 하드디스크 드라이브(68)에 기입/독출을 위해 발생되는 소정의 인터럽트와, 파워 오프시나 리셋시에 발생되는 SMI인터럽트 그리고 프로그램 종료시에 발생되는 인터럽트 중 어느 하나가 발생되면, 그 인터럽트를 접수하는 단계(S210)와; 상기 발생된 인터럽트의 종류를 판단하여 그에 대응되는 제어를 수행하기 위한 단계로 진행시키는 단계(S220)와; 상기 인터럽트가 독출에 따른 인터럽트일 때, 독출하고자 하는 데이터가 상기 하드디스크 캐시(66)에 있으면 이를 독출하고, 없으면 현재 상기 하드디스크 캐시(66)에 기입 작업이 이루어진 모든 캐시원소들을 상기 하드디스크 드라이브(68)에 기입되고, 상기 하드디스크 드라이브(68)로부터 상기 독출하려는 데이터를 독출하는 단계(S300)와; 상기 인터럽트가 기입에 따른 인터럽트일 때, 상기 하드디스크 캐시(66)의 상태에 따라 현재 하드디스크 캐시(66)에 기입 작업이 이루어진 모든 캐시원소들을 상기 하드디스크 드라이브(68)에 기입하여 플러시하고, 상기 기입하려는 데이터를 상기 하드디스크 캐시(66)에 기입하는 단계(S400)와; 상기 인터럽트가 파워 오프시나 리셋시에 발생되는 SMI인터럽트나 프로그램 종료시에 발생되는 인터럽트일 때, 상기 하드디스크 캐시(66)의 원소들 중 기입 작업이 있는 캐시원소가 있는 경우 이들을 모두 상기 하드디스크 드라이브(68)에 기입하는 하드디스크 캐시의 플러시 단계(S500)와; 소정의 제어가 종료되면 인터럽트 복귀가 이루어지는 단계(S600)를 포함하는 것을 특징으로 하는 하드디스크 캐시의 제어방법.
  2. 제1항에 있어서, 상기 초기화 단계(S200)는, 상기 컴퓨터 시스템에 구비된 BIOS의 인터럽트 중에, 상기 하드디스크 드라이브(68)에 데이터의 기입/독출을 위해 발생되는 소정의 인터럽트와, 파워 오프시나 리셋시에 발생되는 SMI 인터럽트 그리고 프로그램 종료시에 발생되는 인터럽트의 발생에 응답하여 상기 하드디스크 캐시의 제어가 이루어지도록 하는 소정의 인터럽트 초기화 단계와, 상기 하드디스크 캐시(66)의 각각의 캐시원소들에 대한 제어정보를 가지고 있는 하드디스크 캐시의 제어정보 영역(93)을 초기화하는 단계를 포함하는 것을 특징으로 하는 하드디스크 캐시의 제어방법.
  3. 제1항에 있어서, 상기 독출 동작을 수행하기 위한 제어단계(S300)는, 상기 독출하려는 데이터가 상기 하드디스크 캐시(66)에 존재하는가 판단하는 단계(S310)와; 상기 하드디스크 캐시(66)에 상기 독출하려는 데이터가 없는 경우, 현재 상기 하드디스크 캐시(66)에 기입 작업이 이루어진 캐시원소가 존재하는지 판단하는 단계(S320)와; 기입 작업이 이루어진 캐시원소를 상기 하드디스크 드라이브(68)에 모두 기입하는 플러시 단계(S330)와; 상기 하드디스크 드라이브(68)로서 상기 독출하려는 데이터를 독출하여 상기 하드디스크 캐시(66)에 삽입하는 단계(S340)와; 상기 독출하려는 데이터가 상기 하드디스크 캐시(66)에 존재하는 경우나 상기 하드디스크 드라이브로(68)부터 독출하려는 데이터가 독출되어 상기 하드디스크 캐시(66)에 삽입된 후, 상기 하드디스크 캐시(66)로부터 데이터를 독출하는 단계(S350)와; 상기 하드디스크 캐시(66)의 각각의 캐시원소들에 대한 제어정보를 가지고 있는 하드디스크 캐시의 제어정보 영역(93)을 재조정하는 단계(S360)를 포함하는 것을 특징으로 하는 하드디스크 캐시의 제어방법.
  4. 제1항에 있어서, 상기 기입동작을 수행하기 위한 제어단계(S400)는, 상기 하드디스크 캐시(66)에 새로운 캐시원소를 삽입할 수 있는가 판단하는 단계(S410)와; 상기 하드디스크 캐시(66)에 새로운 캐시원소를 삽입할 수 없는 경우, 상기 하드디스크 캐시(66)에 기입 작업이 이루어진 캐시원소가 존재하는가 판단하는 단계(S420)와; 상기 하드디스크 캐시(66)에 기입작업이 이루어진 캐시원소가 존재하는 경우 이들을 모두 상기 하드디스크 드라이브(68)에 기입하는 플러시 단계(S430)와; 상기 기입하려는 데이터를 상기 하드디스크 캐시(66)에 새로운 캐시원소로 삽입하는 단계(S440)와; 상기 하드디스크 캐시(66)의 각각의 캐시원소들에 대한 제어정보를 가지고 있는 하드디스크 캐시의 제어정보 영역(93)을 재조정하는 단계(S450)를 포함하는 것을 특징으로 하는 하드디스크 캐시의 제어방법.
  5. 제1항에 있어서, 상기 하드디스크 캐시(66)를 플러시 하는 제어단계(S500)는, 상기 인터럽트가 파워 오프시나 리셋시에 발생되는 SMI인터럽트나 프로그램 종료시에 발생되는 인터럽트일 때, 상기 하드디스크 캐시(66)의 원소들 중 기입작업이 있는 캐시원소가 있는가 판단하는 단계(S510)와; 기입 작업이 있는 캐시원소가 있는 경우 이들을 모두 상기 하드디스크 드라이브(68)에 기입하는 플러시 단계(S520)와; 상기 하드디스크 캐시(66)의 각각의 캐시원소들에 대한 제어정보를 가지고 있는 하드디스크 캐시의 제어정보 영역(93)을 초기화하는 단계(S530)를 포함하는 것을 특징으로 하는 하드디스크 캐시의 제어방법.
KR1019960012742A 1996-04-24 1996-04-24 하드디스크 캐시의 제어방법 KR0174711B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1019960012742A KR0174711B1 (ko) 1996-04-24 1996-04-24 하드디스크 캐시의 제어방법
US08/842,398 US5937433A (en) 1996-04-24 1997-04-24 Method of controlling hard disk cache to reduce power consumption of hard disk drive used in battery powered computer
JP9107206A JPH1091519A (ja) 1996-04-24 1997-04-24 ハードディスクキャッシュの制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960012742A KR0174711B1 (ko) 1996-04-24 1996-04-24 하드디스크 캐시의 제어방법

Publications (2)

Publication Number Publication Date
KR970071684A KR970071684A (ko) 1997-11-07
KR0174711B1 true KR0174711B1 (ko) 1999-04-15

Family

ID=19456612

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960012742A KR0174711B1 (ko) 1996-04-24 1996-04-24 하드디스크 캐시의 제어방법

Country Status (3)

Country Link
US (1) US5937433A (ko)
JP (1) JPH1091519A (ko)
KR (1) KR0174711B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7073054B2 (en) 2002-01-03 2006-07-04 Samsung Electronics Co., Ltd. Computer system and method for booting up the same

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2785693B1 (fr) * 1998-11-06 2000-12-15 Bull Sa Dispositif et procede de cache disque securise en ecriture pour disques durs de sous-systeme a memoire de masse
JP4325817B2 (ja) * 1999-04-05 2009-09-02 株式会社日立製作所 ディスクアレイ装置
JP2001022529A (ja) * 1999-06-30 2001-01-26 Internatl Business Mach Corp <Ibm> ディスクドライブ装置及びその制御方法
US6647499B1 (en) 2000-01-26 2003-11-11 International Business Machines Corporation System for powering down a disk storage device to an idle state upon trnsfer to an intermediate storage location accessible by system processor
JP4078010B2 (ja) * 2000-03-03 2008-04-23 株式会社日立グローバルストレージテクノロジーズ 磁気ディスク装置及び情報記録方法
JP4219633B2 (ja) * 2002-07-25 2009-02-04 株式会社日立製作所 記憶装置システムのデステージ方法、ディスク制御装置、記憶装置システム、及びプログラム
US7178047B2 (en) * 2003-01-31 2007-02-13 Microsoft Corporation Method to reduce or eliminate audio interference from computer components
US7299379B2 (en) * 2003-06-27 2007-11-20 Intel Corporation Maintaining cache integrity by recording write addresses in a log
US8392655B2 (en) * 2003-09-30 2013-03-05 Lenovo (Singapore) Pte Ltd. Apparatus for reducing accesses to levels of a storage hierarchy in a computing system
US20050097208A1 (en) * 2003-10-31 2005-05-05 International Business Machines Corporation Node removal using remote back-up system memory
JP4486348B2 (ja) * 2003-11-26 2010-06-23 株式会社日立製作所 ドライブの稼働時間を抑止するディスクアレイ
US20050144510A1 (en) * 2003-12-24 2005-06-30 Fernando Zayas Cache search accelerator
US7174471B2 (en) * 2003-12-24 2007-02-06 Intel Corporation System and method for adjusting I/O processor frequency in response to determining that a power set point for a storage device has not been reached
JP4518541B2 (ja) 2004-01-16 2010-08-04 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の制御方法
JP4634049B2 (ja) 2004-02-04 2011-02-16 株式会社日立製作所 ディスクアレイ装置における異常通知制御
EP1711896B1 (en) * 2004-02-05 2015-11-18 BlackBerry Limited Memory controller interface
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
JP4373887B2 (ja) * 2004-09-30 2009-11-25 Okiセミコンダクタ株式会社 パケット処理方法
US7490197B2 (en) 2004-10-21 2009-02-10 Microsoft Corporation Using external memory devices to improve system performance
US20060136664A1 (en) * 2004-12-16 2006-06-22 Trika Sanjeev N Method, apparatus and system for disk caching in a dual boot environment
US7441081B2 (en) * 2004-12-29 2008-10-21 Lsi Corporation Write-back caching for disk drives
JP5036158B2 (ja) * 2005-10-05 2012-09-26 株式会社日立製作所 情報処理システム及び情報処理システムの制御方法
US20070124542A1 (en) * 2005-11-30 2007-05-31 Red Hat, Inc. Method and system to control write caches to reduce risk of data loss
US8914557B2 (en) 2005-12-16 2014-12-16 Microsoft Corporation Optimizing write and wear performance for a memory
KR100781520B1 (ko) * 2006-02-24 2007-12-03 삼성전자주식회사 비휘발성 메모리가 캐쉬로 사용되는 저장 장치 및 이를위한 맵핑 정보 복구 방법
JP2007293987A (ja) * 2006-04-24 2007-11-08 Toshiba Corp 情報記録装置及びその制御方法
US7890780B2 (en) * 2008-02-15 2011-02-15 Dell Products L.P. Systems and methods for managing power for data storage devices
US7948211B2 (en) * 2008-04-18 2011-05-24 International Business Machines Corporation System and methods to extend the service life of portable devices
US9032151B2 (en) 2008-09-15 2015-05-12 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US7953774B2 (en) * 2008-09-19 2011-05-31 Microsoft Corporation Aggregation of write traffic to a data store
US10360143B2 (en) * 2010-07-01 2019-07-23 Qualcomm Incorporated Parallel use of integrated non-volatile memory and main volatile memory within a mobile device
US20140059291A1 (en) * 2012-08-27 2014-02-27 Kashif Memon Method for protecting storage device data integrity in an external operating environment
US20150242155A1 (en) * 2012-08-27 2015-08-27 Samsung Electronics Co., Ltd. Method for protecting storage device data integrity in an external operating environment
JP6101170B2 (ja) 2013-07-26 2017-03-22 株式会社日立製作所 計算機システム、キャッシュ管理方法、及び計算機
US10146293B2 (en) 2014-09-22 2018-12-04 Western Digital Technologies, Inc. Performance-aware power capping control of data storage devices
US9541988B2 (en) 2014-09-22 2017-01-10 Western Digital Technologies, Inc. Data storage devices with performance-aware power capping
US9965206B2 (en) 2015-10-23 2018-05-08 Western Digital Technologies, Inc. Enhanced queue management for power control of data storage device
CN113392408A (zh) * 2021-08-13 2021-09-14 北京信达环宇安全网络技术有限公司 Windows配置数据库防篡改方法、装置、电子设备及存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3502147A1 (de) * 1984-01-23 1985-08-08 Hitachi Microcomputer Engineering Ltd., Kodaira, Tokio/Tokyo Datenverarbeitungssystem mit verbesserter pufferspeichersteuerung
US4835678A (en) * 1985-02-01 1989-05-30 Nec Corporation Cache memory circuit for processing a read request during transfer of a data block
JP2637788B2 (ja) * 1988-09-02 1997-08-06 株式会社日立製作所 ディスクキャッシュ制御方式および情報処理システム
US5257370A (en) * 1989-08-29 1993-10-26 Microsoft Corporation Method and system for optimizing data caching in a disk-based computer system
US5347642A (en) * 1989-11-30 1994-09-13 Nec Electronics Inc. Cache memory management unit
US5371872A (en) * 1991-10-28 1994-12-06 International Business Machines Corporation Method and apparatus for controlling operation of a cache memory during an interrupt
GB2273798A (en) * 1992-12-22 1994-06-29 Ibm Cache system for disk array.
US5551006A (en) * 1993-09-30 1996-08-27 Intel Corporation Low cost writethrough cache coherency apparatus and method for computer systems without a cache supporting bus
US5535358A (en) * 1993-12-27 1996-07-09 Matsushita Electric Industrial Co., Ltd. Cache memory control circuit and method for controlling reading and writing requests
US5696897A (en) * 1994-01-31 1997-12-09 Sun Microsystems, Inc. Method and apparatus for a multi-layer system quiescent suspend and resume operation
US5630142A (en) * 1994-09-07 1997-05-13 International Business Machines Corporation Multifunction power switch and feedback led for suspend systems
KR0139985B1 (ko) * 1995-01-06 1998-07-01 김광호 옵션 카드의 하이버네이션 시스템
US5559957A (en) * 1995-05-31 1996-09-24 Lucent Technologies Inc. File system for a data storage device having a power fail recovery mechanism for write/replace operations
US5822600A (en) * 1996-07-19 1998-10-13 Compaq Computer Corporation Dynamic hibernation time in a computer system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7073054B2 (en) 2002-01-03 2006-07-04 Samsung Electronics Co., Ltd. Computer system and method for booting up the same
US7721081B2 (en) 2002-01-03 2010-05-18 Samsung Electronics Co., Ltd. Computer system and method for booting up the same

Also Published As

Publication number Publication date
JPH1091519A (ja) 1998-04-10
US5937433A (en) 1999-08-10
KR970071684A (ko) 1997-11-07

Similar Documents

Publication Publication Date Title
KR0174711B1 (ko) 하드디스크 캐시의 제어방법
US6324651B2 (en) Method and apparatus for saving device state while a computer system is in sleep mode
KR100319292B1 (ko) 빠른 부팅 속도를 갖는 컴퓨터 시스템 및 그 방법
US5659762A (en) Method and device for rapidly restarting a computer system expansion device from a power save mode
US20060242398A1 (en) Booting from non-volatile memory
US8661194B2 (en) Cache control method for hybrid HDD, related program, and hybrid disk drive using same
US5964878A (en) Method for controlling operation of optical disk drive in power saving mode
US5680540A (en) Suspend-to-disk system for removable hard drive
JPH09237128A (ja) コンピュータシステム及びそのレジューム処理方法
JPH0744437A (ja) 情報処理システム
JPH06208467A (ja) コンピュータ・システムおよびバックアップ記憶方法
US20050125602A1 (en) HDD with storage of critical data in FLASH
JP2688164B2 (ja) 情報処理システム
JP2737562B2 (ja) 高密度磁気ディスク装置のパトロールシーク方式
EP1037133A1 (en) Method and apparatus for alternation between instances of operating systems in computer systems
US5761519A (en) Portable computer having a removable medium drive and a resume setting function
US20050125601A1 (en) HDD with rapid availability of critical data after critical event
EP1293904A1 (en) Method of initiating a backup procedure
KR20030009037A (ko) 디스크 장치의 회전 속도 변경방법 및 디스크 장치
JP3427010B2 (ja) コンピュータシステム
US20050125651A1 (en) Method for providing critical data in an HDD after critical event
JPH09265399A (ja) Bios書き込み方法
KR100746004B1 (ko) 자가 절전 기능을 제공하는 장치 및 방법
JP2002236559A (ja) 多機能周辺記憶装置バッファシステムおよび該システム内にバッファメモリを提供する方法
US20050122610A1 (en) Rapid availability of critical data through reallocation

Legal Events

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

Payment date: 20131030

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20141030

Year of fee payment: 17

FPAY Annual fee payment

Payment date: 20150930

Year of fee payment: 18

EXPY Expiration of term