KR20060092032A - 디스크 관리 장치 및 디스크 관리 프로그램 - Google Patents

디스크 관리 장치 및 디스크 관리 프로그램 Download PDF

Info

Publication number
KR20060092032A
KR20060092032A KR1020050048696A KR20050048696A KR20060092032A KR 20060092032 A KR20060092032 A KR 20060092032A KR 1020050048696 A KR1020050048696 A KR 1020050048696A KR 20050048696 A KR20050048696 A KR 20050048696A KR 20060092032 A KR20060092032 A KR 20060092032A
Authority
KR
South Korea
Prior art keywords
disk
data
writing
application
buffer
Prior art date
Application number
KR1020050048696A
Other languages
English (en)
Other versions
KR100713769B1 (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 KR20060092032A publication Critical patent/KR20060092032A/ko
Application granted granted Critical
Publication of KR100713769B1 publication Critical patent/KR100713769B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

본 발명은 디스크 기입에 관련하는 응답 시간을 보증하는 것이다. 디스크 관리 장치(100)는, 드라이버(150)가 데이터 버퍼(120)에 기록된 데이터를 I/O 버퍼(130, 140)에 복사하고, I/O 버퍼(130, 140)에 기억된 데이터를 디스크(210, 220)에 각각 기입하고, 어느 한쪽의 디스크에 대한 데이터 기입이 정상적으로 행해진 경우, 또는 소정 시간이 경과한 시점에서, 어플리케이션 처리부(110)에 기입 결과를 통지한다.
드라이버, 어플리케이션, 버퍼, 데이터, 응답 시간

Description

디스크 관리 장치 및 디스크 관리 프로그램{DEVICE, METHOD, AND COMPUTER PRODUCT FOR DISK MANAGEMENT}
도 1은 본 실시예에 따른 디스크 관리 장치의 구성을 나타내는 기능 블록도.
도 2는 드라이버의 구성을 나타내는 기능 블록도.
도 3은 본 실시예에 따른 디스크 관리 장치의 처리 순서를 나타내는 플로우차트.
도 4는 디스크 관리 프로그램을 실행하는 컴퓨터를 나타내는 도면.
<도면의 주요 부분에 대한 부호의 설명>
30: 컴퓨터(디스크 관리 장치)
31, 32: I/O: 버퍼 장치
33: RAM
33a: 데이터
34: ROM
34a: 어플리케이션 처리 프로그램
34b: 응답 처리 프로그램
35: CPU
35a: 어플리케이션 처리 프로세스
35b: 응답 처리 프로세스
110: 디스크 관리 장치
110: 어플리케이션 처리부
120: 데이터 버퍼
130, 140: I/0 버퍼
150: 드라이버
150a: 제어부
150b: 인터페이스부
150c: 기입/판독 처리부
150d: 버퍼 관리부
150e: 응답 처리부
200: 디스크 장치
210, 220: 디스크
<특허 문헌 1> 특개평 11-53120호 공보
본 발명은, 디스크에 대한 데이터의 기입 또는 판독을 관리하는 디스크 관리 장치 및 디스크 관리 프로그램에 관한 것으로, 특히, 디스크 기입에 관련하는 응답 시간을 보증할 수 있는 디스크 관리 장치 및 디스크 관리 프로그램에 관한 것이다.
종래, 계산기 상의 어플리케이션은, 데이터를 보존하는 경우에, 복수의 디스크 장치를 이용하여 미러링을 행하여, 데이터의 소실 등을 방지하고 있다.
그러나, 이와 같이 미러링을 행하는 경우, 각 디스크 장치에 대한 데이터의 기입이 모두 완료할 때까지는, 어플리케이션은, 다음 처리로 이행할 수 없다고 하는 문제가 있었다.
구체적으로는, 어느 하나의 디스크 장치가 고장나서, 기입을 할 수 없는 경우, 혹은, 계산기와 디스크 장치 간을 연결하는 회선 상의 장애로 기입이 지연된 경우등에는, 어플리케이션은, 기입의 완료 혹은 기입 에러의 통지를 대기하기 않고서는 다음 처리로 이행할 수 없기 때문에, 처리 시간이 걸린다고 하는 문제가 있었다.
그래서, 처리 지연의 문제를 해결하기 위해, 특허 문헌 1에서는, 디스크 장치에 데이터의 기입을 행하고, 소정 시간 경과한 후라도, 디스크 장치로부터 처리 완료의 보고가 없는 경우에, 에러가 발생했음의 정보를 어플리케이션 등에 통지하는 기술이 공개되어 있다.
그러나, 종래의 기술에서는, 감시 시간 내에 약간이더라도 기입 처리가 진행된 경우에는 에러로서 인식되지 않고, 베스트 에포트(best-effort)형의 지연 감시로서, 일정 시간에 기입이 완료하는 것을 보장하는 매카니즘으로는 되어 있지 않다.
즉, 데이터의 기입 처리에서 슬로우 다운이 발생한 경우라도, 어플리케이션에 대해, 디스크 기입에 대한 응답 시간을 보증하는 것이 매우 중요한 과제로 되어 있다.
본 발명은, 상술한 종래 기술에 의한 문제점을 해소하기 위해 이루어진 것으로, 데이터의 기입 처리에서 슬로우 다운이 발생한 경우라도, 어플리케이션에 대해, 디스크 기입에 대한 응답 시간을 보증할 수 있는 디스크 관리 장치 및 디스크 관리 프로그램을 제공하는 것을 목적으로 한다.
상술한 과제를 해결하여, 목적을 달성하기 위해서, 본 발명의 일 양태에 따른 디스크 장치는, 디스크에 대한 데이터의 기입 또는 판독을 관리하는 디스크 관리 장치로서, 어플리케이션에 의해서 이용되는 버퍼 내의 데이터를 일시적으로 기억하는 기억 수단과, 상기 기억 수단에 기억된 데이터를 디스크에 기입하는 기입 수단과, 상기 기입 수단이 디스크에 데이터를 정상적으로 기입하였는지의 여부를 소정 시간 이내에 상기 어플리케이션에 통지하는 통지 처리 수단을 구비한 것을 특징으로 한다.
본 발명에 따르면, 디스크 관리 장치는, 어플리케이션에 의해서 이용되는 버퍼 내의 데이터를 일시적으로 기억 장치에 기억하고, 그 기억 장치에 기억된 데이터를 디스크에 기입하고, 디스크에 데이터를 정상적으로 기입했는지의 여부를 소정 시간 이내에 어플리케이션에 통지한다.
또한, 본 발명의 다른 양태에 따른 디스크 관리 장치는, 일 양태의 발명에 서, 상기 기억 수단은, 디스크의 수와 동수 존재하고, 각각 대응하고 있는 것을 특징으로 한다.
본 발명에 따르면, 디스크 관리 장치는, 어플리케이션에 의해서 이용되는 버퍼 데이터를 디스크의 수와 동수 존재하는 기억 장치의 각각에 기입하고, 각 기억 장치로부터 각각 대응하는 디스크에 데이터를 기입한다.
또한 본 발명의 또 다른 양태에 따른 디스크 관리 장치는, 전술한 발명에서, 상기 통지 처리 수단은, 복수의 디스크 중 어느 하나에 상기 기억 수단에 기억된 데이터를 정상적으로 기입했다고 판정한 경우에, 상기 어플리케이션에 대한 기입이 정상적으로 종료했음을 통지하는 것을 특징으로 한다.
본 발명에 따르면, 디스크 관리 장치는, 복수의 디스크 중 어느 하나에, 기억 수단에 기억된 데이터를 정상적으로 기입했다고 판정한 경우에, 어플리케이션에 디스크에 대한 기입이 정상적으로 종료했음을 통지한다.
또한 본 발명의 또 다른 양태에 따른 디스크 관리 장치는, 전술한 양태의 발명에서, 상기 통지 처리 수단은, 소정 시간 내에, 상기 디스크에 상기 기억 수단에 기억된 데이터를 기입했다고 판정할 수 없는 경우에, 에러를 상기 어플리케이션에 통지하는 것을 특징으로 한다.
본 발명에 따르면, 디스크 관리 장치는, 소정 시간 내에, 디스크에 데이터를 기입했다고 판정할 수 없는 경우에, 에러를 어플리케이션에 통지한다.
또한, 본 발명의 또 다른 양태에 따른 디스크 관리 프로그램은, 디스크에 대한 데이터의 기입 또는 판독을 관리하는 디스크 관리 프로그램으로서, 어플리케이 션에 의해서 이용되는 버퍼 내의 데이터를 해당 버퍼 이외의 기억 장치에 일시적으로 기억하는 기억 순서와, 상기 기억 장치에 기억된 데이터를 디스크에 기입하는 기입 순서와, 상기 기입 순서가 이 디스크에 데이터를 정상적으로 기입했는지의 여부를 소정 시간 이내에 상기 어플리케이션에 통지하는 통지 처리 순서를 컴퓨터에 실행시키는 것을 특징으로 한다.
본 발명에 따르면, 디스크 관리 프로그램은, 어플리케이션에 의해서 이용되는 버퍼 내의 데이터를 일시적으로 기억 장치에 기억하고, 그 기억 장치에 기억된 데이터를 디스크에 기입하고, 디스크에 데이터를 정상적으로 기입했는지의 여부를 소정 시간 이내에 어플리케이션에 통지한다.
<실시예>
이하에 첨부 도면을 참조하여, 본 발명에 따른 디스크 관리 장치 및 디스크 관리 프로그램의 바람직한 실시예를 상세히 설명한다.
본 실시예에 따른 디스크 관리 장치는, 미러링에 의해 디스크 장치에 데이터를 기입하는 경우에, 버퍼 내의 데이터를, 일단, 장치 내의 다른 기억 장치에 복사하고, 그 기억부에 복사된 데이터를 디스크 장치에 기입하고, 어느 하나의 디스크 장치에 대해 기입이 완료한 후에, 어플리케이션에 기입이 완료했음을 통지한다.
또한, 이 디스크 관리 장치는, 디스크 장치로부터 데이터 기입의 완료 통지 또는 에러 통지를 일정 시간 경과한 후에도 취득할 수 없는 경우에는, 무조건으로 에러가 발생했음을 어플리케이션에 통지한다.
다음으로, 본 실시예에 따른 디스크 관리 장치의 구성에 대해 설명한다. 도 1은, 본 실시예에 따른 디스크 관리 장치의 구성을 나타내는 기능 블록도이다. 도 1에 도시한 바와 같이, 이 디스크 관리 장치(100)는, 어플리케이션 처리부(110)와, 데이터 버퍼(120)와, I/O(lnput/Output) 버퍼(130,140)와, 드라이버(150)를 갖는다.
어플리케이션 처리부(110)는, 소정의 업무를 실행하는 처리부이고, 데이터 버퍼(120)는, 디스크 장치(200)에 기입하는 데이터 또는 디스크 장치(200)로부터 판독한 데이터를 일시적으로 기억하는 기억부이다. 여기에, 디스크 장치(200)는, 디스크 관리 장치(100)로부터 받는 데이터를 기억하는 장치로서, 데이터를 기입하기 위한 디스크(210, 220)를 갖는다.
I/O 버퍼(130, 140)는, 데이터 버퍼(120)에 저장된 데이터를 디스크 장치(200)에 기억시킬 때에, 일단, 데이터 버퍼(120)에 저장된 데이터를 기억하는 기억부이다.
이와 같이, I/O 버퍼(130, 140)를 이용하고, 데이터 버퍼(120)의 데이터를 기억함으로써, 디스크 장치(200)에 대한 데이터 기입에 관한 완료 통지를 대기할 필요가 없게 되어, 신속하게, 데이터 버퍼(120) 내의 데이터를 개방할 수 있다.
드라이버(150)는, 디스크 장치(200)를 제어하는 처리부이다. 도 2는, 드라이버(150)의 구성을 나타내는 기능 블록도이다. 도 2에 도시한 바와 같이, 이 드라이버(150)는, 제어부(150a)와, 인터페이스부(150b)와, 기입/판독 처리부(150c)와, 버퍼 관리부(150d)와, 응답 처리부(150e)를 갖는다.
제어부(150a)는, 드라이버(150) 전체를 제어하는 처리부이고, 인터페이스부 (150b)는, 어플리케이션 처리부(110), 데이터 버퍼(120), I/O 버퍼(130, 140) 및 디스크 장치(200)와 통신을 행하기 위한 처리부이다.
기입/판독 처리부(150c)는, 디스크(210, 220)에 대한 데이터의 기입 또는 판독을 행하는 처리부이다. 구체적으로, 기입/판독 처리부(150c)는, 어플리케이션 처리부(110)로부터 데이터를 기입함의 통지를 수취한 경우에, I/O 버퍼(130)의 데이터를 디스크(210)에 기입하고, I/O 버퍼(140)의 데이터를 디스크(220)에 기입한다.
또한, 기입/판독 처리부(150c)는, 어플리케이션 처리부(110)로부터 디스크 장치(200)의 데이터를 판독함의 통지를 수취한 경우에는, 해당하는 데이터를 디스크(210 또는 220)로부터 판독한다. 또한, 디스크(210)로부터 판독한 데이터는, I/O 버퍼(130)에 기억되고, 디스크(220)로부터 판독한 데이터는 I/0 버퍼(140)에 기억된다.
버퍼 관리부(150d)는, 데이터 버퍼(120) 및 I/O 버퍼(130, 140)를 관리하는 처리부이다. 구체적으로, 버퍼 관리부(150d)는, 어플리케이션 처리부(110)로부터 데이터를 기입함의 통지를 수취한 경우에는, 데이터 버퍼(120)에 기억된 데이터를, I/O 버퍼(130, 140)에 복사한다.
또한, 버퍼 관리부(150d)는, 어플리케이션 처리부(110)로부터 데이터를 판독함의 통지를 수취한 경우에, I/O 버퍼(130, 140) 중 어느 한쪽에 기억된 데이터(정상적으로 판독할 수 있었던 쪽의 데이터)를 데이터 버퍼(120)에 복사한다.
응답 처리부(150e)는, 디스크 장치(200)로부터 데이터를 적절하게 기입했는 지의 여부의 정보(이하, 기입 정보라 표기한다)를 취득한 경우에, 취득한 기입 정보를 어플리케이션 처리부(110)에 전달하는 처리부이다. 또한, 응답 처리부(150e)는, 어플리케이션 처리부(110)로부터 데이터를 기입함의 통지를 수취한 시점부터 카운트를 개시하여, 소정 시간 경과한 경우에라도, 디스크 장치(200)로부터 기입 정보를 취득하지 못한 경우에는, 무조건, 에러를 어플리케이션 처리부(110)에 통지한다.
또한, 응답 처리부(150e)는, 소정 시간 내에 디스크에 정상적으로 데이터를 기입함의 통지를 수취한 후에, 동일한 데이터에 관해, 다른 디스크에 정상적으로 데이터를 기입했음의 통지를 수취한 경우에는, 먼저 수취한 기입 정보에 관해서는, 어플리케이션 처리부(110)에 통지하지 않는다.
구체적으로는, 디스크(210)에 데이터를 정상적으로 기입했음의 통지를 수취한 후에, 디스크(220)에 데이터를 정상적으로 기입했음의 통지를 수취한 경우를 예 로서 이용하면, 처음에 수취하는 기입 정보는, 어플리케이션 처리부(110)에 통지하지 않지만, 후에 수취하는 기입 정보는, 어플리케이션 처리부(110)에 통지한다.
또한, 기입 정보를 수취한 후에, 나중에 동일한 데이터에 관해, 기입 정보를 수취한 경우에, 그 기입 정보가, 디스크에 정상적으로 데이터를 기입할 수 없음의 정보를 포함하고 있는 경우에는, 응답 처리부(150e)는, 정상적으로 기입했음의 통지를 어플리케이션 처리부(110)에 전달한다.
즉, 응답 처리부(150e)는, 디스크(210)에 데이터가 정상적으로 기입되고, 디스크(220)에 대한 데이터 기입이 에러로 된 경우도, 기입이 정상적으로 완료했음을 어플리케이션 처리부(110)에 통지한다.
다음으로, 본 실시예에 따른 디스크 관리 장치(100)의 처리에 대해 설명한다. 도 3은, 본 실시예에 따른 디스크 관리 장치(100)의 처리 순서를 나타내는 플로우 차트이다. 도 3에 도시한 바와 같이, 이 디스크 관리 장치(100)는, 어플리케이션 처리부(110)가, 데이터 버퍼(120)에 데이터를 저장하고(스텝 S101), 드라이버(150)에 제어가 이행한다(스텝 S102).
그리고, 드라이버(150)가, 데이터 버퍼(120) 내의 데이터를 각 I/O 버퍼(130, 140)에 기입하고(스텝 S103), I/O 버퍼(130)의 데이터를 디스크(210)에 기입한다(스텝 S104).
이어서, 드라이버(150)가, 디스크(210)에 대한 기입이 정상적으로 완료했는지의 여부를 판정(디스크(210)로부터 기입 정보를 취득하여, 정상적으로 기입이 완료하였는지의 여부를 판정)하여(스텝 S105), 정상적으로 기입이 완료하지 않은 경우에는(스텝 S1O6, 아니오), 에러를 드라이버(150)의 제어부(150a)에 기억한다(스텝 S107).
한편, 정상적으로 기입이 완료한 경우에는(스텝 S106, 예), 그대로 스텝 S108로 이행한다.
그리고, I/O 버퍼(140)의 데이터를 디스크(220)에 기입하고(스텝 S108), 디스크(220)에 대한 기입이 정상적으로 종료했는지의 여부를 판정(디스크(220)로부터 기입 정보를 취득하여, 정상적으로 기입이 완료했는지의 여부를 판정)하여(스텝 S110), 정상적으로 기입이 완료한 경우에는(스텝 S110, 예), 처리를 종료하고, 정 상적으로 기입이 종료하지 않은 경우에는(스텝 S110, 아니오), 디스크(210)의 기입이 정확하게 종료했는지의 여부를 판정(스텝 S107의 정보를 참조하여 판정)하여(스텝 S111), 디스크(210)의 기입이 정상적으로 종료되지 않은 경우에는(스텝 S112, 예), 처리를 종료하고, 정상적으로 기입이 종료하지 않은 경우에는(스텝 S112, 아니오), 에러를 어플리케이션에 통지한다(스텝 S113).
또한, 드라이버(150)는, 그림 3에 도시한 플로우차트에 상관없이, 디스크에 기입을 개시한 후에, 소정 시간 경과해도 디스크로부터 기입 정보를 취득할 수 없는 경우에는, 해당 기입 처리를 에러로서 드라이버(150)의 제어부(150a)에 기억한다.
또한, 디스크(220)에 대한 기입 처리(스텝 S108)는, 디스크(210)에 대한 기입 처리의 완료를 대기하기(스텝 S105) 이전에 실행할 수도 있다.
상술한 바와 같이, 본 실시예에 따른 디스크 관리 장치(100)는, 드라이버(15 0)가 데이터 버퍼(120)에 기록된 데이터를 I/O 버퍼(130, 140)에 복사하고, I/O 버퍼(130, 140)에 기억된 데이터를 디스크(210, 220)에 각각 기입하여, 어느 한쪽의 디스크에 대한 데이터 기입이 정상적으로 행해진 경우, 어플리케이션 처리부(110)에 기입 결과를 통지하기 때문에, 처리 지연의 문제를 해결할 수 있다.
또한, 드라이버(150)는, 소정 시간 경과한 후라도, 디스크 장치(200)로부터 기입 정보를 취득할 수 없는 경우에는, 에러를 어플리케이션 처리부(110)에 통지하기 때문에, 어플리케이션 처리에 관한 응답 시간을 보증할 수 있다.
그런데, 상기의 실시예에서 설명한 각종 처리는, 미리 준비된 프로그램을 컴 퓨터에서 실행함으로써 실현할 수 있다. 따라서, 이하에서는, 도 4를 이용하여, 상기의 실시예와 마찬가지의 기능을 갖는 디스크 관리 프로그램을 실행하는 컴퓨터의 일례를 설명한다. 도 4는, 디스크 관리 프로그램을 실행하는 컴퓨터를 도시하는 도면이다.
도 4에 도시한 바와 같이, 디스크 관리 장치로서의 컴퓨터(30)는, I/O 버퍼 장치(31, 32), 버퍼 장치(33), ROM(34) 및 CPU(35)를 버스(36)로 접속하여 구성된다. 여기서, I/O 버퍼 장치(31, 32)는 도 1에 도시한 I/O 버퍼(130, 140)에 대응하고, 버퍼 장치(33)는 도 1에 도시한 데이터 버퍼(120)에 대응한다.
그리고, ROM(34)에는, 상기의 실시예와 마찬가지의 기능을 발휘하는 디스크 관리 프로그램, 즉, 도 4에 도시하는 바와 같이, 어플리케이션 처리 프로그램(34a ), 응답 처리 프로그램(34b)이 미리 기억되어 있다.
그리고, CPU(35)가, 이들 프로그램(34a, 34b)을 ROM(34)으로부터 판독하여 실행함으로써, 도 4에 도시한 바와 같이 각 프로그램(34a, 34b)은, 어플리케이션 처리 프로세스(35a), 응답 처리 프로세스(35b)으로서 기능하도록 된다. 어플리케이션 처리 프로세스(35a)는, 도 1에 도시한 어플리케이션 처리부(110)에 대응하고, 응답 처리 프로세스(35b)는, 도 1에 도시한 드라이버(150)에 대응한다. 그리고, CPU(35)는, 버퍼 장치(33)에 저장된 데이터(33a)를 I/O 버퍼 장치(31, 32)에 복사하여, I/O 버퍼 장치(31, 32)에 기억된 데이터가 각각 대응하는 디스크에 기억된다.
그런데, 상기한 프로그램(34a, 34b)에 대해서는, 반드시 처음부터 ROM(34)에 기억시켜 둘 필요는 없고, 예를 들면, 컴퓨터에 투입되는 플렉시블 디스크(FD), CD-ROM, MO 디스크, DVD 디스크, 광 자기 디스크, IC 카드 등의「가반용의 물리 매체」, 또는 컴퓨터(30)의 내외에 구비되는 하드디스크 드라이브(HDD) 등의 「고정용의 물리 매체」, 나아가서는, 공중 회선, 인터넷, LAN, WAN 등을 통해 컴퓨터(30)에 접속된다. 「다른 컴퓨터(또는 서버)」등에 각 프로그램을 기억시켜 두고, 컴퓨터(30)가 이들로부터 각 프로그램을 판독하여 실행하도록 해도 된다.
(부기 1) 디스크에 대한 데이터의 기입 또는 판독을 관리하는 디스크 관리 장치로서,
어플리케이션에 의해서 이용되는 버퍼 내의 데이터를 일시적으로 기억하는 기억 수단과,
상기 기억 수단에 기억된 데이터를 디스크에 기입하는 기입 수단과,
상기 기입 수단이 디스크에 데이터를 정상적으로 기입했는지의 여부를 소정 시간 이내에 상기 어플리케이션에 통지하는 통지 처리 수단,
을 구비한 것을 특징으로 하는 디스크 관리 장치.
(부기 2) 부기 1에 있어서, 상기 기억 수단은, 디스크의 수와 동수 존재하고, 각각 대응하고 있는 것을 특징으로 하는 디스크 관리 장치.
(부기 3) 부기 1 또는 2에 있어서, 상기 통지 처리 수단은, 복수의 디스크 중 어느 하나에 상기 기억 수단에 기억된 데이터를 정상적으로 기입했다고 판정한 경우에, 상기 어플리케이션에 디스크에 대한 기입이 정상적으로 종료했음을 통지하는 것을 특징으로 하는 부기 디스크 관리 장치.
(부기 4) 부기 1, 2 또는 3에 있어서, 상기 통지 처리 수단은, 소정 시간 내에, 상기 디스크에 상기 기억 수단에 기억된 데이터를 기입했다고 판정할 수 없는 경우에, 에러를 상기 어플리케이션에 통지하는 것을 특징으로 하는 디스크 관리 장치.
(부기 5) 디스크에 대한 데이터의 기입 또는 판독을 관리하는 디스크 관리 프로그램으로서,
어플리케이션에 의해서 이용되는 버퍼 내의 데이터를 해당 버퍼 이외의 기억 장치에 일시적으로 기억하는 기억 순서와,
상기 기억 장치에 기억된 데이터를 디스크에 기입하는 기입 순서와,
상기 기입 순서가 디스크에 데이터를 정상적으로 기입했는지의 여부를 소정 시간 이내에 상기 어플리케이션에 통지하는 통지 처리 순서
를 컴퓨터에 실행시키는 것을 특징으로 하는 디스크 관리 프로그램.
(부기 6) 부기 5에 있어서, 상기 통지 처리 순서는, 복수의 디스크 중 어느 하나에 상기 기억 장치에 기억된 데이터를 정상적으로 기입했다고 판정한 경우에, 상기 어플리케이션에 디스크에 대한 기입이 정상적으로 종료했음을 통지하는 것을 특징으로 하는 디스크 관리 프로그램.
(부기 7) 부기 5 또는 6에 있어서, 상기 통지 처리 순서는, 소정 시간 내에, 상기 디스크에 상기 기억 장치에 기억된 데이터를 기입했다고 판정할 수 없는 경우에, 에러를 상기 어플리케이션에 통지하는 것을 특징으로 하는 디스크 관리 프로그램.
(부기 8) 디스크에 대한 데이터의 기입 또는 판독을 관리하는 디스크 관리 방법으로서,
어플리케이션에 의해서 이용되는 버퍼 내의 데이터를 해당 버퍼 이외의 기억 장치에 일시적으로 기억하는 기억 공정과,
상기 기억 장치에 기억된 데이터를 디스크에 기입하는 기입 공정과,
상기 기입 순서가 디스크에 데이터를 정상적으로 기입했는지의 여부를 소정 시간 이내에 상기 어플리케이션에 통지하는 통지 처리 공정
을 포함한 것을 특징으로 하는 디스크 관리 방법.
(부기 9) 부기 8에 있어서, 상기 통지 처리 공정은, 복수의 디스크 중 어느 하나에 상기 기억 장치에 기억된 데이터를 정상적으로 기입했다고 판정한 경우에, 상기 어플리케이션에 디스크에 대한 기입이 정상적으로 종료했음을 통지하는 것을 특징으로 하는 디스크 관리 방법.
(부기 10) 부기 8 또는 9에 있어서, 상기 통지 처리 공정은, 소정 시간 내에, 상기 디스크에 상기 기억 장치에 기억된 데이터를 기입했다고 판정할 수 없는 경우에, 에러를 상기 어플리케이션에 통지하는 것을 특징으로 하는 디스크 관리 방법.
이상과 같이, 본 발명에 따른 디스크 관리 장치 및 디스크 관리 프로그램은, 응답 시간 및 안정된 동작을 보장할 필요가 있는 미러링 시스템 등에 대해 유용하다.
본 발명에 따르면, 디스크 관리 장치는, 어플리케이션에 의해서 이용되는 버퍼 내의 데이터를 일시적으로 기억 장치에 기억하고, 그 기억 장치에 기억된 데이터를 디스크에 기입하고, 디스크에 데이터를 정상적으로 기입했는지의 여부를 소정 시간 이내에 어플리케이션에 통지하기 때문에, 어플리케이션은 신속하게 다음 처리로 이행할 수 있다.
또한, 본 발명에 따르면, 디스크 관리 장치는, 어플리케이션에 의해서 이용되는 버퍼의 데이터를, 디스크의 수와 동수 존재하는 기억 장치의 각각에 기입하고, 각 기억 장치로부터 각각 대응하는 디스크에 데이터를 기입하기 때문에, 효율적으로 디스크에 데이터를 기입할 수 있다.
또한, 본 발명에 따르면, 디스크 관리 장치는, 복수의 디스크 중 어느 하나에, 기억 수단에 기억된 데이터를 정상적으로 기입했다고 판정한 경우에, 어플리케이션에 디스크에 대한 기입이 정상적으로 종료했음을 통지하기 때문에, 어플리케이션은 버퍼를 효율적으로 이용할 수 있어, 신속히 다음 처리로 이행할 수 있다.
또한, 본 발명에 따르면, 디스크 관리 장치는, 소정 시간 내에, 디스크에 데이터를 기입했다고 판정할 수 없는 경우에, 에러를 어플리케이션에 통지하기 때문에, 어플리케이션이 행하는 작업 효율을 향상시킬 수 있다.
또한, 본 발명에 따르면, 디스크 관리 프로그램은, 어플리케이션에 의해서 이용되는 버퍼 내의 데이터를 일시적으로 기억 장치에 기억하고, 상기 기억 장치에 기억된 데이터를 디스크에 기입하고, 디스크에 데이터를 정상적으로 기입했는지의 여부를 소정 시간 이내에 어플리케이션에 통지하기 때문에, 어플리케이션은 신속하 게 처리를 이행할 수 있다.

Claims (5)

  1. 디스크에 대한 데이터의 기입 또는 판독을 관리하는 디스크 관리 장치로서,
    어플리케이션에 의해서 이용되는 버퍼 내의 데이터를 일시적으로 기억하는 기억 수단과,
    상기 기억 수단에 기억된 데이터를 디스크에 기입하는 기입 수단과,
    상기 기입 수단이 디스크에 데이터를 정상적으로 기입했는지의 여부를 소정 시간 이내에 상기 어플리케이션에 통지하는 통지 처리 수단
    을 구비한 것을 특징으로 하는 디스크 관리 장치.
  2. 제1항에 있어서,
    상기 기억 수단은, 디스크의 수와 동수 존재하고, 각각 대응하고 있는 것을 특징으로 하는 디스크 관리 장치.
  3. 제1항에 있어서,
    상기 통지 처리 수단은, 복수의 디스크 중 어느 하나에 상기 기억 수단에 기억된 데이터를 정상적으로 기입했다고 판정한 경우에, 상기 어플리케이션에 디스크에 대한 기입이 정상적으로 종료했음을 통지하는 것을 특징으로 하는 디스크 관리 장치.
  4. 제1항에 있어서,
    상기 통지 처리 수단은, 소정 시간 내에, 상기 디스크에 상기 기억 수단에 기억된 데이터를 기입했다고 판정 불가능한 경우에, 에러를 상기 어플리케이션에 통지하는 것을 특징으로 하는 디스크 관리 장치.
  5. 디스크에 대한 데이터의 기입 또는 판독을 관리하는 디스크 관리 프로그램으로서,
    어플리케이션에 의해서 이용되는 버퍼 내의 데이터를 상기 버퍼 이외의 기억 장치에 일시적으로 기억하는 기억 순서와,
    상기 기억 장치에 기억된 데이터를 디스크에 기입하는 기입 순서와,
    상기 기입 순서가 디스크에 데이터를 정상적으로 기입했는지의 여부를 소정 시간 이내에 상기 어플리케이션에 통지하는 통지 처리 순서
    를 컴퓨터에 실행시키는 것을 특징으로 하는 디스크 관리 프로그램.
KR1020050048696A 2005-02-17 2005-06-08 디스크 관리 장치 및 디스크 관리 프로그램을 기록한 컴퓨터 판독가능한 기록 매체 KR100713769B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005041031A JP2006227923A (ja) 2005-02-17 2005-02-17 ディスク管理装置およびディスク管理プログラム
JPJP-P-2005-00041031 2005-02-17

Publications (2)

Publication Number Publication Date
KR20060092032A true KR20060092032A (ko) 2006-08-22
KR100713769B1 KR100713769B1 (ko) 2007-05-04

Family

ID=36776313

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050048696A KR100713769B1 (ko) 2005-02-17 2005-06-08 디스크 관리 장치 및 디스크 관리 프로그램을 기록한 컴퓨터 판독가능한 기록 매체

Country Status (4)

Country Link
US (1) US20060184729A1 (ko)
JP (1) JP2006227923A (ko)
KR (1) KR100713769B1 (ko)
DE (1) DE102005024673A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007008275B4 (de) 2007-02-20 2019-06-06 Bayerische Motoren Werke Aktiengesellschaft Verfahren und Vorrichtung zur Signalisierung eines duchzuführenden Gangwechselvorgangs an einen Fahrer eines Kraftfahrzeug
US9152515B2 (en) 2007-11-27 2015-10-06 International Business Machines Corporation Apparatus and method for managing storage copy services systems
JP5524279B2 (ja) 2011-09-13 2014-06-18 株式会社東芝 情報処理装置および情報処理方法
CN113377434A (zh) * 2021-06-08 2021-09-10 北京金山云网络技术有限公司 命令响应时长的确定方法、装置和存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6364678A (ja) * 1986-09-05 1988-03-23 Mitsubishi Electric Corp デイスクのライトエラ−リカバリ方式
JPH1153120A (ja) 1997-08-08 1999-02-26 Fujitsu Ltd ディスク制御装置およびディスク制御プログラムを記録した媒体
JP2001043624A (ja) 1999-07-29 2001-02-16 Toshiba Corp ディスク記憶装置及びスプリットデータライト方法
KR20020064357A (ko) * 1999-12-22 2002-08-07 시게이트 테크놀로지 엘엘씨 디스크 드라이브내 버퍼 내부 및 외부 데이터 전송 관리용버퍼 관리 시스템
JP3964629B2 (ja) 2001-04-27 2007-08-22 株式会社東芝 ディスクアレイ装置のパトロールによるデータパス異常検出方法及びディスクアレイ装置を備えたコンピュータシステム
US20030023807A1 (en) * 2001-06-13 2003-01-30 Youichi Yamamoto Disk drive device and control device thereof
US6928518B2 (en) * 2001-11-01 2005-08-09 Sun Microsystems, Inc. Disk drive employing adaptive flushing of a write cache
JP4090400B2 (ja) * 2003-07-24 2008-05-28 株式会社日立製作所 ストレージシステム

Also Published As

Publication number Publication date
JP2006227923A (ja) 2006-08-31
DE102005024673A1 (de) 2006-08-24
KR100713769B1 (ko) 2007-05-04
US20060184729A1 (en) 2006-08-17

Similar Documents

Publication Publication Date Title
US11169870B2 (en) Managing the migration of virtual machines in the presence of uncorrectable memory errors
US20170242744A1 (en) Method and apparatus for performing data scrubbing management in storage system
JP5153884B2 (ja) 情報記憶装置
JP2005322399A (ja) 磁気ディスク記憶装置におけるトラック・データ完全性の維持方法
US8271968B2 (en) System and method for transparent hard disk drive update
KR100713769B1 (ko) 디스크 관리 장치 및 디스크 관리 프로그램을 기록한 컴퓨터 판독가능한 기록 매체
JP5488709B2 (ja) ストレージ制御装置における基準時間設定方法
US7992056B2 (en) Error monitoring and notification for a replaceable unit
US8181063B2 (en) Computer device, continuing operation method for computer device, and program
US7600051B2 (en) Autonomic hardware-level storage device data integrity checking
US20070038593A1 (en) Data Storage Control Apparatus And Method
JP2007048017A (ja) ストレージシステム及び記憶制御方法
US20120011317A1 (en) Disk array apparatus and disk array control method
US9177669B2 (en) Storage-medium diagnosis device, storage-medium diagnosis method
KR20110039416A (ko) 인터럽트된 기록 복구를 위한 데이터 저장 방법, 장치 및 시스템
WO2019054434A1 (ja) 故障予兆検出装置、故障予兆検出方法、及び、故障予兆検出プログラムが格納された記録媒体
CN106484564B (zh) 一种采集数据存储方法
TWI417786B (zh) 幫助一處理環境中之指令執行的方法、系統及程式產品
US20100058141A1 (en) Storage device and control device
JP6205909B2 (ja) 情報処理装置及びプログラム
US20080282245A1 (en) Media Operational Queue Management in Storage Systems
KR100983048B1 (ko) Ncq 제어 방법 및 컴퓨팅 장치
US20140229646A1 (en) Information processing system, method and computer-readable recording medium
JP5832408B2 (ja) 仮想計算機システム及びその制御方法
JP2017151511A (ja) 情報処理装置、動作ログ取得方法および動作ログ取得プログラム

Legal Events

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