KR20120093104A - 동적 저장 영역들 - Google Patents

동적 저장 영역들 Download PDF

Info

Publication number
KR20120093104A
KR20120093104A KR1020120014990A KR20120014990A KR20120093104A KR 20120093104 A KR20120093104 A KR 20120093104A KR 1020120014990 A KR1020120014990 A KR 1020120014990A KR 20120014990 A KR20120014990 A KR 20120014990A KR 20120093104 A KR20120093104 A KR 20120093104A
Authority
KR
South Korea
Prior art keywords
data
storage
area
host device
isolation
Prior art date
Application number
KR1020120014990A
Other languages
English (en)
Other versions
KR102134694B1 (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 KR20120093104A publication Critical patent/KR20120093104A/ko
Application granted granted Critical
Publication of KR102134694B1 publication Critical patent/KR102134694B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B20/1258Formatting, e.g. arrangement of data block or words on the record carriers on discs where blocks are arranged within multiple radial zones, e.g. Zone Bit Recording or Constant Density Recording discs, MCAV discs, MCLV discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1265Control data, system data or management information, i.e. data used to access or process user data
    • G11B2020/1277Control data, system data or management information, i.e. data used to access or process user data for managing gaps between two recordings, e.g. control data in linking areas, run-in or run-out fields, guard or buffer zones
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • G11B2220/2516Hard disks

Abstract

호스트 디바이스에 의해 특정되는 데이터 영역 사이징에 기초하여 격리 영역(isolation region)의 저장 로케이션을 결정하기 위한 방법 또는 시스템이 제공된다. 일 구현예에서, 격리 영역은 저장 디바이스의 더 많은 데이터 영역의 격리를 위해 요구되는 저장 로케이션들의 세트를 포함한다.

Description

동적 저장 영역들 {DYNAMIC STORAGE REGIONS}
설명된 내용은 호스트 디바이스에 의하여 지정되는 데이터 영역 크기설정(sizing)에 기반하여 격리 영역(isolation region)의 저장 로케이션(storage location)을 결정하기 위한 방법 또는 시스템과 관련된다. 일 구현에서, 격리 영역은 저장 디바이스의 더 많은 데이터 영역의 격리를 위해 요구되는 저장 로케이션들의 세트를 포함한다.
본 명세서에 설명되는 다양한 구현들의 추가적 이해가 도면들을 참조하여 실현될 수 있으며, 도면들은 명세서의 나머지 부분에서 설명된다. 도면들에서, 유사한 참조 번호들은 다수의 도면들에 걸쳐 유사한 컴포넌트들을 지칭하기 위하여 사용된다. 몇몇 예시들에서, 참조 번호는 다수의 유사한 컴포넌트들 중 하나를 나타내기 위하여 소문자로 구성되는 연관된 서브-라벨을 가질 수 있다. 서브-라벨의 지정 없이 참조 번호에 대한 참조가 이루어질 때, 참조는 모든 그러한 다수의 유사한 컴포넌트들을 지칭하도록 의도된다.
도 1은 호스트 디바이스와 통신하는 저장 디바이스의 예시적인 블록도를 예시한다.
도 2는 데이터 영역 및 동적 격리 영역들을 갖는 저장 영역을 구비한 자기 디스크의 예시적 섹션을 예시한다.
도 3은 데이터 영역 및 동적 격리 영역들을 갖는 저장 영역을 구비한 자기 디스크의 대안적인 예시적 섹션을 예시한다.
도 4는 격리 영역의 논리 블록 어드레스를 결정하기 위한 예시적 동작들을 예시한다.
도 5는 격리 영역의 논리 블록 어드레스를 결정하기 위한 대안적인 예시적 동작들을 예시한다.
다음의 설명에서, 설명을 위해, 본 명세서에서 설명되는 다양한 구현들의 포괄적인 이해를 제공하도록, 다수의 특정 세부사항들이 제시된다. 다양한 특징들이 특정한 구현들에 속하는 한편, 일 구현에 대하여 설명된 특징들이 다른 구현들과도 또한 통합될 수 있다는 것이 인식되어야 한다. 그러나, 마찬가지로, 임의의 설명된 구현의 단일 특징 또는 특징들이 본질적인 것으로 고려되지 않아야 하며, 이는, 다른 구현들이 그러한 특징들을 생략할 수 있기 때문이다.
자기 매체 저장 드라이브들은, 각각의 저장 드라이브 내의 하나 이상의 자화된 매체 상의 극성 셀(polarized cell)들에서 데이터를 저장한다. 자기 디스크 드라이브는 자기 매체 저장 드라이브의 일 구현이며, 자기 매체 저장 드라이브에서, 자기 매체는 디스크이고, 동심으로, 일반적으로 원형 트랙들로 디스크 상에 극성 셀들이 배열된다. 동작 시에, 디스크들 중 하나 이상이 저장 드라이브 내에서 일정한 높은 속도로 회전하면서, 액추에이터 어셈블리를 사용하여, 디스크(들) 상의 트랙들로 정보가 기록되고, 디스크(들) 상의 트랙들로부터 정보가 판독된다. 디스크들에 인접하게 위치된 베어링 샤프트 어셈블리에 관한 시크(seek) 동작 동안에, 액추에이터 어셈블리가 회전한다.
액추에이터 어셈블리는, 디스크들을 향해 연장하는 하나 이상의 복수의 액추에이터 암(arm)들을 포함한다. 판독 폴(pole) 및 기록 폴을 갖는 헤드가 액추에이터 암들의 각각의 말단부에 탑재된다. 기록 폴은 대응하는 디스크 상의 셀들의 자기 극성을 변화시키도록 적응된 자기 필드를 생성하며(즉, 기록 폴은 디스크에 데이터를 기록한다), 판독 폴은 대응하는 디스크 상의 셀들의 자기 극성을 검출한다(즉, 판독 폴은 디스크로부터 데이터를 판독한다).
비-싱글드(non-shingled) 자기 매체에서, 자화된 매체 상의 셀들의 각각은, 기록 폴로 하여금 임의의 주위의 셀들에서 데이터를 오버라이트(overwrite)하지 않으면서 셀들에 데이터를 기록하게 허용하도록, 기록 폴의 크기에 비하여 충분히 큰 크기로 이루어진다. 따라서, 데이터는 자기 매체 상의 임의의 곳의 이용 가능한 셀들에 랜덤으로 기록될 수 있다. 그러나, 자기 매체에 대하여 데이터 저장 밀도에 대한 요건들이 증가함에 따라, 셀 사이즈가 감소한다. 자화된 매체 상의 셀들의 극성을 시프트(shift)시키기 위해, 더 큰 기록 폴에 의해 제공되는 강한 기록 필드 변화도(gradient)가 종종 요구되기 때문에, 기록 폴의 크기의 상응하는(commensurate) 감소는 어렵다. 따라서, 비교적 더 큰 기록 폴을 사용하여, 자화된 매체 상의 더 작은 셀들에 데이터를 기록하는 것은 인접한 셀들의 극성에 영향을 미칠 수 있다(즉, 인접한 셀들을 오버라이트할 수 있다). 기록 동작 동안에, 인접한 셀들이 오버라이트되는 것을 방지하면서, 더 작은 셀들을 이용하도록 자기 매체를 적응시키기 위한 하나의 기술이 싱글드 자기 레코딩(shingled magnetic recording; SMR)이다.
싱글드 자기 레코딩은 기록 폴에 의해 생성된 크고 강한 기록 필드를 이용한다. 싱글드 자기 레코딩의 하나의 제약은, 자기 매체에 데이터가 기록되는 경우에, 데이터가 순차적으로 증가하거나 또는 감소하는 방사상의 트랙들에서 기록된다는 것이다. 강한 기록 필드는, 현재 기록되는 트랙을 이전에 기록된 트랙과 오버랩시켜서, 이전의 기록 트랙의 비교적 작은 스트립이 영향을 받지 않게 하고, 또한, 현재 기록되는 트랙을 하나 이상의 아직 미기록된(not-yet written) 트랙들과 오버랩시킨다. 이전에 기록된 트랙 상의 기록된 데이터의 나머지 스트립은, 단지 실현 가능한 기록 크기의 일부일 뿐인, 판독 폴을 사용하여 판독되기에 충분히 큰 전술한 셀들을 포함한다. 따라서, 싱글드 자기 레코딩이 전통적인 랜덤 액세스 판독 동작들을 여전히 허용하지만, 단일-트랙 기록이 하나 이상의 아직 미기록된(또는 아직 기록되지 않은) 트랙들을 변형/오버라이트하기 때문에, 기록들이 더 이상 랜덤하게 행해질 수 없다. 따라서, 싱글드 데이터 내의 임의의 데이터 셀을 변화시키기 위해, 선택된 순차적인 기록 순서로 전제 싱글드 데이터가 재기록된다.
자기 디스크 구현에서 랜덤 기록 기능의 결여를 보상하면서 싱글드(shingled) 자기 레코딩에 의해 가능하게 된 증가된 셀 밀도를 달성하기 위해, 하나 이상의 격리 영역들이 싱글드 데이터를 갖는 디스크 상에 위치될 수 있다. 가드 트랙들, 가드 대역들 등으로도 지칭되는 격리 영역들은 다수의 데이터 트랙들을 포함하는 싱글드 데이터의 개별 대역들을 정의하는, 레코딩을 위해 이용가능하지 않은 싱글드 데이터 내의 영역들이다. 전형적으로, 각각의 격리 영역은 격리 영역들에 걸친 임의의 오버라이팅을 방지할 정도로 충분히 넓다. 그 결과, 싱글된 데이터의 하나의 대역은 대역 내의 하나 이상의 셀들이 변경될 때 재기록된다. 더욱 빽빽하게 이격된 격리 영역들은 가드 트랙들 사이에 더 작은 대역을 생성해서, 대역을 재기록하기 위한 시간을 감소시킨다. 그러나 더 많은 격리 영역들이 사용됨에 따라, 유효 디스크 데이터 저장 밀도가 감소하는데 그 이유는 자기 매체 상에 다르게 사용가능한 공간이 격리 영역들에 의해 점유되기 때문이다. 현재 개시된 기술은 호스트 디바이스에 의해 특정된 데이터 영역 공간에 기초하여 저장 디바이스에 대한 격리 영역들의 결정을 가능하게 한다. SMR 기술은 저장 디바이스의 다른 타입들, 예를 들어, 메모리 카드, 범용 서비스 버스(USB) 플래시 디바이스, 솔리드 스테이트 디바이스 등에서 또한 사용된다.
전형적으로, SMR 시스템들에서, 저장 영역, 예를 들어, 디스크 표면은 데이터 영역들 및 격리 영역들로서 구성된다. SMR의 일 구현에서, 저장 디바이스는 영역 경계들을 선택하고 하나 이상의 규칙들은 데이터 영역들과 관련된다. 이러한 하나의 규칙은 예를 들어, 데이터 영역 내의 모든 기록들이 순차적으로 증가하는 어드레스들에 제한된다는 것이다. 대안적인 규칙은, 데이터 영역이 재기록되기 전에, 데이터 영역에 속하는 모든 어드레스들에 대해 발행될 트림(Trim) 명령을 요구하는 것이다. 이러한 구현들에서, 저장 디바이스와 통신하는 호스트는 데이터 규칙 준수 및 데이터 무결성을 책임진다. 데이터 무결성을 만족시키기 위해, 호스트는 규칙들이 무엇이고 데이터 영역 경계들이 어디에 위치하는지를 알 필요가 있다. 일 구현에서, 저장 디바이스는 영역 경계들 및 저장 디바이스와 통신하는 호스트에 대한 데이터 영역들에 관련된 다른 규칙들을 특정한다. 그러나 데이터 영역 경계들의 이러한 특정은 호스트 디바이스에 대해 적절한 해결책이 아닐 수 있다. 예를 들어, 호스트는 저장 용량의 1 GB을 갖는 저장 디바이스의 각각의 데이터 영역을 선호할 수 있다. 이러한 호스트가 0.9 GB의 데이터 영역을 갖는 저장 디바이스에 연결되면, 이러한 경우, 호스트는 1 GB 요건을 충족시키기 위해 두 개의 0.9 GB 데이터 영역들을 필요로 해서 1 GB의 정보를 위해 1.8 GB의 저장 공간을 사용하기 때문에 저장 디바이스를 충분히 활용하지 못할 수 있다. 본 명세서에 설명된 구현들은, 저장 디바이스들에 의해 규정된 대로 호스트가 데이터 영역 공간 및 그와 관련된 규칙들에 의해 제한되지 않도록 저장 디바이스의 데이터 영역들을 특정하기 위해 호스트 디바이스를 제공한다.
도1은 호스트 디바이스와 통신하는 저장 디바이스의 예시적인 블록도(100)를 도시한다. 일 구현에서, 저장 디바이스(105)는 디스크 드라이브, 메모리 카드, 범용 서비스 버스(SUB) 플래시 디바이스 및 솔리드 스테이트 디바이스 중 하나이다. 호스트 디바이스(110)는 컴퓨터, 서버, 네트워크 스위치 등 중 하나이다. 호스트 디바이스는 휘발성 메모리, 비휘발성 메모리, 유형의 메모리, 프로세서, 하나 이상의 입력 및 출력 단말들, 하나 이상의 통신 단말들 등을 포함할 수 있다. 일 구현에서, 저장 디바이스(105)에는, 휘발성 메모리, 비휘발성 메모리, 유형의 메모리, 프로세서, 하나 이상의 입력 및 출력 단말들, 하나 이상의 통신 단말들 등이 제공된다. 일 구현에서, 다수의 동작들을 포함하는 하나 이상의 컴퓨터 프로세스가, 프로세서를 이용하여 동작들이 프로세싱되도록 저장 제어기 및 호스트(110)의 휘발성 또는 비휘발성 메모리에 저장될 수 있다.
도 1에 개시된 구현에서, 저장 디바이스(105)는 데이터를 저장하기 위해 싱글드(shingled) 자기 기록(SMR) 기술을 이용하도록 적응된다. 호스트(110)는, 데이터가 저장 디바이스(105)에 빈번하게 기록되고 상기 저장 디바이스(105)로부터 데이터가 빈번하게 판독되는 단기간 데이터 저장을 위해 저장 디바이스(110)를 이용할 수 있다. 대안적으로, 호스트(110)는 데이터의 아카이벌(archival)을 위해서와 같이, 장기간 데이터 저장을 위해 저장 디바이스(105)를 이용할 수 있다. 호스트(110)의 데이터 저장 필요성들의 유형에 따라, 호스트(110)는 상이한 데이터 영역 간격 및 데이터 영역 경계 정의를 택할 것이다.
도면번호 115에 의해 나타낸 바와 같이, 호스트(110)는 저장 공간에 대한 요청을 전송함으로써 저장 디바이스(105)를 이용하여 저장 세션을 초기화할 수 있다. 구체적으로, 호스트(110)는 저장 디바이스(105)가 갖는, 저장을 위해 현재 이용가능한 공간의 양에 관하여 저장 디바이스(105)에 요청할 수 있다. 일 구현에서, 호스트(110)는, 저장 디바이스(105) 상에서 이용가능한 연속적인 저장 공간의 양을 식별하도록 저장 디바이스에 요청할 수 있다.
호스트(110)로부터의 요청(115)에 응답하여, 저장 디바이스(105)는, 도면번호 120에 의해 나타낸 바와 같이, 저장을 위해 이용가능한 공간의 양을 통신함으로써 응답한다. 일 구현에서, 저장 디바이스(105)는 저장 디바이스(105) 상에서 이용가능한 하나 이상의 연속적인 저장 공간들에 관한 정보를 통신한다. 예를 들면, 저장 디바이스(105)가 디스크들의 데크(deck)를 포함하고, 디스크들의 데크의 하나 이상에서 연속적인 공간의 양이 상이한 경우, 저장 디바이스(105)는 연속적인 공간들의 각각의 블록에 관한 정보를 호스트(110)에 통신할 수 있다. 대안적으로, 저장 디바이스(105)는 이용가능한 공간의 연속적인 블록의 최대 크기에 관하여 호스트(110)에 알릴 수 있다. 또다른 대안적인 구현에서, 저장 디바이스(105)는 또한, 이용가능한 저장 공간에 관련된 하나 이상의 규칙들에 관한 정보를 전송할 수 있다. 따라서, 예를 들면, 일 구현에서, 저장 디바이스는 데이터 영역들의 2개의 개별 블록들 사이의 격리를 위해 얼마나 많은 간격이 요구되는지에 관한 정보를 통신한다. 대안적으로, 저장 디바이스(105)는 또한, 데이터 영역을 재기록하기 이전의 트림 명령 발행을 위한 요구조건 등과 같은, 하나 이상의 규칙들에 관한 정보를 호스트(110)에 통신할 수 있다.
일 예에서, 저장 디바이스(105)는 이용가능한 데이터 영역의 최대 블록이 10 GB임을 통신할 수 있다. 대안적으로, 일 구현에서, 저장 디바이스(105)는 50 GB의 전체 저장 용량을 갖는 이용되지 않은 디스크 드라이브 시스템일 수 있고, 이 경우 50 GB의 전체 이용가능 용량에 관한 정보는 호스트(110)에 통신된다. 이러한 경우, 저장 디바이스(105)는 또한, 50 GB의 전체 저장 용량이 하나 이상의 데이터 영역들로 분할되는 경우에, 각각의 데이터 영역은 적어도 0.1 GB 등의 격리 영역에 의해 다음 데이터 영역으로부터 분리된다는 것을 호스트(110)에 통신한다. 일 구현에서, 격리 영역에 관한 정보는 다양한 데이터 영역들 각각에 대해 상이하다. 따라서, 예를 들면, 연속적 데이터 영역이 디스크 드라이브의 외부 다이어미터(diameter)를 향하여 위치되는 경우, 이러한 연속적 데이터 영역으로부터 생성될 2개 이상의 데이터 영역들 사이에 요구되는 격리 영역은 보다 클 수 있다. 대안적으로, 연속적 공간 영역이 디스크 드라이브의 내부 다이어미터를 향하여 위치되는 경우, 이러한 연속적 데이터 영역으로부터 생성될 2개 이상의 데이터 영역들 사이에 요구되는 격리 영역은 보다 작을 수 있다.
후속하여, 도면번호 125에 의해 나타낸 바와 같이, 호스트(110)는 특정 기록 동작을 위해, 자신이 요구하는 데이터 영역들에 관한 정보를 통신한다. 따라서, 예를 들면, 호스트(110)는 5 GB의 연속적인 공간이 필요하다는 것을 저장 디바이스(105)에 통신할 수 있다. 일 구현에서, 호스트(110)는 자신의 현재 요구조건들에 기초하여 데이터 영역들 및 격리 영역들의 크기를 결정할 수 있다. 예를 들면, 호스트(110)는 데이터가 기록되는 경우 아카이벌 목적들을 위해 저장 공간을 필요로 할 수 있고, 이는 긴 시간 기간 동안 데이터를 재기록 또는 업데이트할 필요가 없고, 현재 이용가능한 전체 연속적인 데이터 영역에 기록을 위해 이용가능한 충분한 데이터를 갖는다. 이러한 경우, 호스트(110)는 전체 연속적인 데이터 공간이 하나의 데이터 영역으로서 식별될 것임을 저장 디바이스(105)에 통지한다. 이러한 경우, 호스트(110)는 또한, 모든 이용가능한 저장 공간이 하나의 블록으로서 기록되고 재기록될 것이기 때문에 임의의 격리 영역을 제공할 필요가 없다는 것을 저장 디바이스(105)에 통지한다.
대안적인 구현으로, 호스트(110)는 5개의 5-GB 데이터 영역들을 필요로 할 수 있다. 이러한 경우, 호스트(110)는 5GB 크기의 데이터 영역들을 만들고 이러한 각각의 데이터 영역들의 끝에 격리 영역들을 제공하도록 저장 디바이스(105)에 통보한다. 대안적인 구현으로, 호스트(110)는 또한 데이터 영역이 시작할 논리 블록 어드레스(LBA: logical block address)들 및 데이터 영역이 끝날 LBA를 저장 디바이스(105)에 통보할 수도 있다. 대안으로, LBA에 관한 정보가 저장 디바이스(105)에 의해 결정되어 호스트(110)에 전달된다. 대안으로, 호스트(110)가 데이터 영역이 시작할 LBA 및 데이터 영역이 끝날 LBA를 결정하고 그 정보를 사용하여 액세스 룰들에 따를 수 있다. 이 경우, 호스트는 자신의 데이터 영역 경계 선택을 저장 디바이스(105)에 통보하지 않는다.
데이터 영역 요청(125)에 응답하여, 저장 디바이스(105)는 식별번호(130)로 나타낸 바와 같이, 확인을 호스트(110)에 전송한다. 저장 디바이스(105)는 요청된 데이터 영역들이 이용 가능하다는 확인을 호스트(110)에 전송할 수 있다. 호스트(110)가 데이터 영역들의 LBA들을 특정하지 않고 데이터 영역들을 요청하는 하나의 구현에서, 저장 디바이스(105)로부터 호스트(110)로 전송되는 확인은 데이터 영역들의 LBA들에 관한 정보도 포함한다. 저장 디바이스(105)가 호스트(110)에 의해 요청된 데이터 영역들 및 격리 영역들을 제공할 수 없는 어떤 상황들에서, 확인은 데이터 영역들이 이용 가능하지 않은 이유들과 함께 이러한 정보를 포함할 수 있다. 이러한 경우, 호스트(110)는 데이터 영역들에 대한 대안 요청 및 격리 요청들로 다시 저장 디바이스(105)에 전달할 수 있다.
도 2는 호스트 디바이스에 의해 특정된 영역 크기를 기초로 결정된 데이터 영역들을 갖는 디스크 드라이브(200)의 예시적인 선택을 나타낸다. 구체적으로, 도 2는 호스트(110)와 같은 호스트 디바이스에 의해 사용될 수 있는 디스크 드라이브(200) 상의 저장 공간(205)의 도면을 나타낸다. 하나의 구현에서, 저장 공간(205)은 디스크 드라이브(200) 상에서 현재 이용 가능한 저장 공간을 나타낸다. 단순화 목적으로, 디스크 드라이브(200) 상의 트랙들 중 1/4만 도 2에 도시된다는 점에 유의한다. 더욱이, 저장 공간(205)은 디스크 드라이브(200)의 내경 쪽으로 계속된다. 대안적인 구현으로, 저장 공간(205)은 디스크 드라이브(200)에 포함된 디스크들의 데크의 다음 디스크로 계속할 수 있다.
호스트 디바이스로부터의 요청에 응답하여, 디스크 드라이브(200)는 현재 이용 가능한 가장 큰 연속 블록이 1000GB의 총 저장 용량에서, 저장 공간(205)에 의해 표시된 것임을 호스트 디바이스에 통보한다. 디스크 드라이브(200)는 또한 이용 가능한 저장 공간의 시작 LBA가 210임을 호스트 디바이스에 통보한다. 하나의 구현에서, 호스트 디바이스는 각각 10GB의 데이터 영역들을 요청한다. 이러한 경우, 호스트 디바이스는 저장 공간(205)이 각각 10GB 크기의 다수의 데이터 영역들로 분할되어야 함을 디스크 드라이브(200)에 통보한다. 하나의 구현에서, 데이터 영역은 순차적 기록의 영역으로서 정의된다. 다른 구현에서, 데이터 영역은 해당 영역의 임의의 부분에 대해 다시 쓰기가 요청되는 경우에, 그 영역의 시작에서 다시 쓰기 동작이 시작되어야 할 영역으로서 정의될 수 있다. 데이터 영역들의 대안적인 정의들 또한 사용될 수 있다.
호스트 디바이스로부터의 요청에 응답하여, 디스크 드라이브(200)는 저장 공간(205)을 10 GB의 동일한 데이터 영역들 각각으로 분배할 수 있다. 또한, 각각의 데이터 영역은 분리 지역에 의해 분리된다. 따라서, 도 2에 예시되는 구현에서, 저장 위치(210)에서 시작하는 제 1 데이터 영역(215)이 생성된다. 제 1 데이터 영역(215)은 격리 영역(220)에 의한 제 2 데이터 영역(225)에 의해 분리된다. 도 2에 예시되는 구현에서, 호스트 디바이스는 디스크 드라이브(200)에 데이터 영역들의 크기에 대하여 통보하고, 디스크 드라이브(200)는 데이터 영역들(215, 225)이 어디에서 시작하고 종료할 것인지를 결정한다. 그러나, 대안적인 구현에서, 호스트 디바이스는 LBA의 디스크 드라이브에 데이터 영역들이 어디서 시작하고 종료할 것인지를 통보할 수 있다. 이 경우, 저장 디바이스는 충분한 격리 영역을 공급하기에 충분한 데이터 영역들 간의 저장 공간을 예비한다. 대안적으로, 호스트 디바이스는 디스크 드라이브(200)에 의해 한쪽으로 세팅될 다양한 격리 영역들의 LBA들의 시작 및 종료에 대하여 저장 디바이스에 명령할 수 있다. 이 경우, 디스크 드라이브(200)는 영역들에 대한 액세스 규칙들을 시행할 수 있다. 대안적으로, 호스트 디바이스는 영역들의 경계들을 선택하고, 데이터 영역들에 대한 규칙들을 따르며, 격리 영역들에 액세스하지 않을 것이다. 이 경우, 호스트는 디스크 드라이브(200)에 자신의 영역 경계 선택들을 통보하지 않는다.
일 구현에서, 호스트는 그것이 다양한 데이터 영역들을 필요로 한다고 결정할 수 있는데, 2개 이상의 이러한 영역들은 상이한 크기이다. 이러한 경우, 호스트 디바이스는 단지 다양한 데이터 영역들의 LBA 시작 및 종료를 디스크 드라이브에 전달(communicate)할 수 있다. 도 3은 디스크 드라이브가 LBA(310)에서 시작하는 305에 의해 표현되는 이용가능한 저장 공간을 갖는 이러한 구현을 예시한다. 이러한 구현에서, 호스트 디바이스는 제 1 데이터 영역(315)이 LBA(310)에서 시작할 것이며 LBA(320)에서 종료할 것을 디스크 드라이브(300)에 명령할 수 있다. 제 1 격리 영역(325)은 저장 위치(320)에서 시작하고 저장 위치(330)에서 종료하도록 세팅된다. 제 1 데이터 영역(315)과 상이한 크기를 갖는 제 2 데이터 영역(335)은 LBA(330)에서 시작한다. 도 3에 예시되는 구현에서 격리 영역(325)이 저장 위치(320)에서 시작하고 저장 위치(330)에서 종료하도록 세팅되지만 ― LBA(320) 및 LBA(330) 모두는 디스크 드라이브(300) 상의 동일한 주변 위치에 있는 것으로 예시됨 ― , 대안적인 구현에서는, LBA들(320) 및 LBA(330)가 디스크 드라이브(300) 상의 임의의 다른 주변 위치에 위치될 수 있다.
상기 설명되는 구현들에서, 격리 영역들은 LBA를 소비하는 것으로 가정되는 반면, 대안적인 구현에서는, 격리 영역들이 LBA들을 소비하지 않는다. 따라서, 이러한 대안적인 구현에서, 데이터 영역들의 LBA는 하나의 데이터 영역으로부터 다음의 데이터 영역으로 순차적으로 지속된다. 예를 들어, 제 1 데이터 영역의 LBA의 종료가 X인 경우, 제 1 데이터 영역 및 제 2 데이터 영역을 분리하는 격리 영역 이후 시작하는 제 2 데이터 영역의 LBA의 시작은 X+1일 것이다.
도 3에 도시되는 데이터 영역 규격은 호스트 디바이스 유연성을 제공하여 다양한 데이터 영역들을 특정하고, 그 결과 디스크 드라이브(300)에 이용가능한 총 저장 공간이 호스트 디바이스의 이점에 대하여 이용된다. 이러한 유연한 데이터 영역들을 달성하기 위해서, 디스크 드라이브(300)는 호스트 디바이스에 2개의 연속적인 데이터 영역들 사이에 요구되는 격리 영역들의 크기 및 총 이용가능한 저장 공간의 시작 어드레스를 통보할 필요가 있다. 이 정보에 기초하여, 호스트 디바이스는 데이터 영역들 사이의 경계들의 LBA를 결정한다. 이러한 구현에서, 디스크 드라이브(300)는 격리 영역 사이즈의 요건을 인지하는 호스트 디바이스가 인접한 저장 영역 공간들 간의 충분한 간격이 존재한다고 보장할 기록 커맨드들을 자동으로 제공하기 때문에 저장 영역 경계들이 어디에 있는지에 대하여 통보받을 필요가 있지 않을 수도 있다. 다시 말하면, 이러한 구현에서, 호스트 디바이스는 각각의 영역 경계에서 얼마나 많은 어드레스가능한 공간이 손실되는지를 인지한다. 이러한 경우, 디스크 드라이브(300)의 관점으로부터, 어드레스가능한 공간의 양은 변하지 않는다.
이제, 도 4를 참조하면, 저장 디바이스에 대한 데이터 영역들 및/또는 격리 영역들의 위치를 결정하기 위한 예시적인 동작들을 예시한다. 구체적으로, 도 4는 호스트 디바이스에 의해 특정되는 데이터 영역 경계들에 기초하여 저장 디바이스에 대한 데이터 영역들을 결정하는 방법을 예시한다. 요청 동작(402)은 저장 디바이스 상의 이용 가능한 저장 공간에 관한 요청을 호스트 디바이스로부터 저장 디바이스로 송신한다. 일 구현에서, 요청 동작은 또한 격리 영역들이 요구되는지, 그리고 만약 요구되는 경우, 격리 영역들의 최소 크기가 어떻게 되는지를 식별하도록 저장 디바이스에 요청한다. 또 다른 구현에서, 호스트 디바이스는 저장 공간 정보에 대한 요청을 저장 디바이스에 송신하도록 요구되지 않을 수 있다. 이러한 구현에서, 저장 디바이스는 시스템 초기화 동안 저장 디바이스에 접속된 임의의 호스트 디바이스에 이러한 정보를 자동으로 제공할 수 있다.
요청 동작(402)에 응답하여, 송신 동작(404)은 저장 디바이스 상에서 이용 가능한 저장 공간에 관한 정보를 호스트 디바이스에 송신한다. 또한, 다른 구현에서, 송신 동작(404)은 또한 격리 영역의 요구되는 최소 크기, 저장 공간에 관련된 다른 규칙들 등에 관한 정보를 호스트 디바이스에 송신한다. 예를 들어, 저장 디바이스는 얼마나 많은 전체 공간이 이용 가능한지, 이용 가능한 저장 공간의 시작 LBA가 어디인지에 관한 정보를 통신한다. 일 구현에서, 저장 디바이스는 또한 데이터 무결성을 유지하기 위해 저장 공간의 인접한 데이터 영역들 사이에서 요구되는 분리의 크기에 관한 정보를 통신한다.
송신 동작(404)으로부터 수신된 정보에 기초하여, 결정 동작(406)은 저장 디바이스 상에서 이용 가능한 저장 공간이 호스트 디바이스의 요구들에 매칭한다는 프로파일이 존재하는지를 결정한다. 예를 들어, 결정 동작은 이용 가능한 전체 저장 공간이 호스트 디바이스의 저장 요구들에 대해 충분한지 여부를 결정할 수 있다. 다른 구현에서, 결정 동작은 격리 영역들 대 전체 저장 공간의 비율이, 호스트 디바이스가 저장 공간을 이용하는데 효율적인지를 결정한다. 예를 들어, 2개의 데이터 영역들 사이에서 저장 디바이스에 의해 요구되는 격리 영역의 크기가 너무 큰 경우 및 호스트 디바이스가 상당히 다수의 데이터 영역들(각 영역은 비교적 작은 크기를 가짐)을 원하는 경우, 결정 동작은 그 특정 저장 디바이스로부터의 저장 공간을 이용하도록 결정하지 않을 수 있다. 이러한 경우에, 고려되는 동작은 호스트 디바이스의 저장 요구들에 대한 대안적인 옵션들을 평가한다.
결정 동작(406)이 저장 디바이스가 충분하고 적절한 공간을 제공한다고 결정하면, 전송 동작(410)은 데이터 영역들의 LBA에 대한 요청을 전송한다. 일 구현에서, 전송 동작은 데이터 영역들을 생성하기 위해 데이터 영역의 LBA에 대한 요청을 저장 디바이스에 전송한다. 일 구현에서, 전송 동작(410)은 호스트로부터 저장 디바이스로 데이터 영역들의 LBA들을 전송한다. 대안적인 구현에서, 전송 동작(410)은 격리 영역들의 LBA들을 저장 디바이스에 전송한다.
그에 따라, 수신 동작(412)은 데이터 영역들에 관한 정보 및/또는 격리 영역들에 관한 정보를 수신한다. 일 구현에서, 수신 동작은 요청된 데이터 영역들에 관한 정보 및/또는 요청된 격리 영역들에 관한 정보를 호스트 디바이스로부터 수신한다. 일 구현에서, 저장 디바이스가 데이터 영역들의 LBA들 또는 격리 영역들의 LBA들에 관한 정보를 수신할 필요가 없음을 유의한다. 그러한 구현에서, 호스트 디바이스는 고려중인 격리 영역에 대한 요건들을 이용하여 하나 이상의 기입 동작들을 계획할 수도 있다. 일 구현에서, 확인 동작(414)은 요청된 데이터 영역들 및 요청된 격리 영역들이 사용할 준비가 되었다는 확인을 전송한다. 확인 동작(414)은 데이터 영역들 및/또는 격리 영역들을 요청하는 호스트 디바이스에 그러한 확인을 전송할 수도 있다. 그러나, 확인 동작이 네거티브하게 확인을 전송하면, 호스트 디바이스는 대안적인 요청을 전송할 수도 있거나, 대안적인 저장 옵션들을 고려할 수도 있다.
도 5는 저장 디바이스에 대한 격리 영역들의 논리 블록 어드레스를 결정하기 위한 대안적인 예시적 동작들을 도시한다. 도 5에 도시된 하나 이상의 동작들이 도 4에 도시된 다양한 동작들과 유사함을 유의한다. 상세하게, 요청 동작(502), 전송 동작(504), 결정 동작(506), 및 고려 동작(508)의 각각은 요청 동작(402), 전송 동작(404), 결정 동작(406), 및 고려 동작(408)과 유사한 방식으로 각각 동작한다.
전송 동작(510)은 다양한 격리 영역들을 시작 및 종료할지 여부에 대한 요청을 전송한다. 특히, 전송 동작은 하나 이상의 격리 영역들의 시작 위치들의 LBA 및 하나 이상의 격리 영역들의 종료 위치들의 LBA들을 전송할 수 있다. 일구현에 있어서, 전송 동작(510)은 격리 영역들의 LBA들에 대한 정보를 호스트 디바이스로부터 저장 디바이스로 전송할 수 있다. 후속해서, 수신 동작(512)은 하나 이상의 격리 영역들의 시작 위치들의 LBA들 및 하나 이상의 격리 영역들의 종료 위치들의 LBA들을 수신할 수 있다. 만약 저장 디바이스가 격리 영역들의 시작 및 종료 위치들에 대한 특정된 LBA들이 적합하다고 결정한다면, 확인 동작(514)이 확인을 전송한다. 일구현에 있어서, 이러한 확인은 저장 디바이스로부터, 격리 영역들을 요청하는 호스트 디바이스로 전송된다.
여기서 설명된 구현들은 하나 이상의 컴퓨터 시스템들에서 논리 단계들로 구현될 수 있다. 여기서 설명된 다양한 구현들의 논리 동작들은 (1) 하나 이상의 컴퓨터 시스템들에서 실행하는 프로세서-구현 단계들의 시퀀스로서 구현되고, (2) 하나 이상의 컴퓨터 시스템들 내의 상호접속된 기계 또는 회로 모듈들로서 구현된다. 그 구현은 컴퓨터 시스템의 성능 요건들에 따른 선택 사항이다. 따라서, 여기서 설명된 구현들의 실시예들을 구성하는 논리 동작들은 동작들, 단계들, 오브젝트들, 또는 모듈들로서 다양하게 지칭된다. 게다가, 논리 동작들은, 명확하게 달리 청구되지 않거나 특정 순서가 청구항의 언어에 의해 본래부터 요구되지 않는 한, 임의의 순서에 따라 수행될 수 있다는 것을 알아야 한다.
명확성을 위해서, 여기서 설명된 구현들의 루틴 기능들 모두가 도시되고 설명되지는 않았다. 임의의 이러한 실질적인 구현의 개발에 있어서는 애플리케이션(및 비즈니스)-관련 제약들을 따르는 것과 같은 개발자들의 특정 목적들을 달성하기 위해 수많은 구현-특정 결정들이 이루어지고, 이러한 특정 목적들은 구현마다 그리고 개발자마다 다를 것이라는 점을 알 것이다.
위의 상세한 설명, 예들, 및 데이터는 예시적인 구현들의 구조 및 사용에 대한 완전한 설명을 제공한다. 본 발명의 사상 및 범위로부터 벗어나지 않고 많은 대안적인 구현들이 이루어질 수 있기 때문에, 본 발명은 첨부된 이후의 청구항들에 존재한다. 게다가, 상이한 구현들의 구조적인 특징들은 열거된 청구항들로부터 벗어나지 않고 또 다른 구현에서 결합될 수 있다.

Claims (20)

  1. 방법으로서,
    호스트 디바이스에 의해 특정되는 데이터 영역 사이징(sizing)에 기초하여 격리 영역의 저장 로케이션(storage location)을 결정하는 단계
    를 포함하는,
    방법.
  2. 제 1 항에 있어서,
    상기 격리 영역은 상기 저장 디바이스의 하나 이상의 데이터 영역들의 격리를 위해 요구되는 저장 로케이션들의 세트를 포함하는,
    방법.
  3. 제 1 항에 있어서,
    상기 호스트 디바이스에 의해 요구되는 순차적 기록 구역(sequential write area)으로서 상기 데이터 영역 사이징을 결정하는 단계를 더 포함하는,
    방법.
  4. 제 1 항에 있어서,
    격리될 때, 다른 데이터 영역들과 상호작용하지 않는 어드레스들의 스팬(span)으로서 상기 데이터 영역 사이징을 결정하는 단계를 더 포함하는,
    방법.
  5. 제 1 항에 있어서,
    상기 격리 영역은, 상기 격리 영역에 인접한 데이터 영역의 다른 영역에 있는 데이터에 악영향을 미치지 않으면서, 상기 격리 영역에 인접한 데이터 영역들 중 하나의 영역에 대해서는 기록을 허용하는,
    방법.
  6. 제 1 항에 있어서,
    상기 호스트 디바이스에 의해 특정된 상기 데이터 영역의 엔드(end)에 기초하여 상기 격리 영역의 논리 블록 어드레스를 결정하는 단계를 더 포함하는,
    방법.
  7. 제 1 항에 있어서,
    상기 저장 디바이스로부터의 최소 격리 영역 크기를 상기 호스트 디바이스로 통신하는 단계를 더 포함하며, 상기 최소 격리 영역 크기는 상기 저장 디바이스상에서 격리될 2개의 데이터 영역들에 대해 요구되는 최소 공간을 표현하는,
    방법.
  8. 제 7 항에 있어서,
    상기 최소 격리 영역 크기는, 기록 동작에 의해 영향을 받는 상기 저장 디바이스 상의 이웃하는 트랙들의 수 및 상기 이웃하는 트랙들의 수의 최소 크기를 표현하는,
    방법.
  9. 제 7 항에 있어서,
    상기 최소 격리 영역 크기는 (1) 디스크 드라이브; (2) 상기 디스크 드라이브의 특정 영역; 및 (3) 상기 디스크 드라이브의 특정 로케이션 중 적어도 하나에 대한 최소 격리 영역 크기를 표현하는,
    방법.
  10. 제 1 항에 있어서,
    상기 저장 디바이스는 데이터를 레코딩하기 위해 싱글드(shingled) 자기 레코딩을 이용하는,
    방법.
  11. 제 1 항에 있어서,
    상기 저장 디바이스는 디스크 드라이브인,
    방법.
  12. 제 1 항에 있어서,
    상기 호스트 디바이스는 상기 데이터 영역의 시작 LBA 및 종료 LBA를 특정함으로써 상기 데이터 영역 사이징을 특정하는,
    방법.
  13. 컴퓨터 시스템상에서, 컴퓨터 프로세스를 실행하기 위한 컴퓨터-실행가능 명령들을 인코딩하는 하나 이상의 컴퓨터-판독가능 저장 매체로서,
    상기 컴퓨터 프로세스는 호스트 디바이스에 의해 특정되는 데이터 영역 사이징에 기초하여 격리 영역의 저장 로케이션을 결정하는 것을 포함하는,
    하나 이상의 컴퓨터-판독가능 저장 매체.
  14. 제 13 항에 있어서,
    격리 영역의 저장 로케이션을 결정하는 것은, 상기 호스트 디바이스에 의해 요구되는 순차적 기록 구역으로서 상기 데이터 영역 사이징을 결정하는 것을 포함하는,
    하나 이상의 컴퓨터-판독가능 저장 매체.
  15. 제 13 항에 있어서,
    상기 저장 디바이스로부터의 최소 격리 영역 크기를 상기 호스트 디바이스로 통신하는 것을 더 포함하며, 상기 최소 격리 영역 크기는 상기 저장 디바이스상에서 격리될 2개의 데이터 영역들에 대해 요구되는 최소 공간을 표현하는,
    하나 이상의 컴퓨터-판독가능 저장 매체.
  16. 제 15 항에 있어서,
    상기 최소 격리 영역 크기는 기록 동작에 의해 영향을 받는 상기 저장 디바이스의 이웃하는 트랙들의 수 및 상기 이웃하는 트랙들의 수의 최소 크기를 표현하는,
    하나 이상의 컴퓨터-판독가능 저장 매체.
  17. 제 15 항에 있어서,
    상기 저장 디바이스는 데이터를 레코딩하기 위해 싱글드 자기 레코딩을 이용하는,
    하나 이상의 컴퓨터-판독가능 저장 매체.
  18. 저장 매체 상의 저장 공간 영역들을 관리하기 위한 시스템으로서,
    저장 제어기 모듈을 포함하며,
    상기 제어기 모듈은,
    저장 매체 상에서 이용가능한 저장 공간에 대한 정보를 호스트 디바이스로 통신하는 것,
    상기 저장 매체에 대해 요구되는 하나 이상의 격리 영역들의 크기에 관한 정보를 상기 호스트 디바이스로 통신하는 것, 및
    상기 호스트 디바이스로부터 상기 저장 로케이션 및 격리 영역에 관한 명령들을 수신하는 것
    을 위해 적응되는,
    저장 매체 상의 저장 공간 영역들을 관리하기 위한 시스템.
  19. 제 17 항에 있어서,
    상기 저장 제어기는 상기 저장 디바이스로부터의 최소 격리 영역 크기를 상기 호스트 디바이스로 통신하도록 추가로 적응되며, 상기 최소 격리 영역 크기는 상기 저장 디바이스 상에서 격리될 2개의 데이터 영역들에 대해 요구되는 최소 공간을 표현하는,
    저장 매체 상의 저장 공간 영역들을 관리하기 위한 시스템.
  20. 제 17 항에 있어서,
    상기 저장 매체는 데이터를 레코딩하기 위해 싱글드 자기 레코딩을 이용하는,
    저장 매체 상의 저장 공간 영역들을 관리하기 위한 시스템
KR1020120014990A 2011-02-14 2012-02-14 저장 디바이스 상의 저장 영역들을 관리하기 위한 방법, 컴퓨터-판독가능 저장 매체 및 저장 제어기 모듈 KR102134694B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/026,535 2011-02-14
US13/026,535 US8977834B2 (en) 2011-02-14 2011-02-14 Dynamic storage regions

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020190014530A Division KR20190018656A (ko) 2011-02-14 2019-02-07 저장 디바이스 상의 저장 영역들을 관리하기 위한 방법, 컴퓨터-판독가능 저장 매체 및 저장 제어기 모듈

Publications (2)

Publication Number Publication Date
KR20120093104A true KR20120093104A (ko) 2012-08-22
KR102134694B1 KR102134694B1 (ko) 2020-07-16

Family

ID=46637804

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020120014990A KR102134694B1 (ko) 2011-02-14 2012-02-14 저장 디바이스 상의 저장 영역들을 관리하기 위한 방법, 컴퓨터-판독가능 저장 매체 및 저장 제어기 모듈
KR1020190014530A KR20190018656A (ko) 2011-02-14 2019-02-07 저장 디바이스 상의 저장 영역들을 관리하기 위한 방법, 컴퓨터-판독가능 저장 매체 및 저장 제어기 모듈

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020190014530A KR20190018656A (ko) 2011-02-14 2019-02-07 저장 디바이스 상의 저장 영역들을 관리하기 위한 방법, 컴퓨터-판독가능 저장 매체 및 저장 제어기 모듈

Country Status (4)

Country Link
US (1) US8977834B2 (ko)
JP (1) JP5992178B2 (ko)
KR (2) KR102134694B1 (ko)
CN (1) CN102789367B (ko)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8832409B2 (en) * 2011-03-09 2014-09-09 Seagate Technology Llc Dynamic guarding of a storage media
US9767098B2 (en) 2012-08-08 2017-09-19 Amazon Technologies, Inc. Archival data storage system
US9251097B1 (en) 2011-03-22 2016-02-02 Amazon Technologies, Inc. Redundant key management
US9213709B2 (en) 2012-08-08 2015-12-15 Amazon Technologies, Inc. Archival data identification
US9563681B1 (en) 2012-08-08 2017-02-07 Amazon Technologies, Inc. Archival data flow management
US9225675B2 (en) 2012-08-08 2015-12-29 Amazon Technologies, Inc. Data storage application programming interface
US9652487B1 (en) 2012-08-08 2017-05-16 Amazon Technologies, Inc. Programmable checksum calculations on data storage devices
US8805793B2 (en) 2012-08-08 2014-08-12 Amazon Technologies, Inc. Data storage integrity validation
US9904788B2 (en) 2012-08-08 2018-02-27 Amazon Technologies, Inc. Redundant key management
US9830111B1 (en) 2012-08-08 2017-11-28 Amazon Technologies, Inc. Data storage space management
US10120579B1 (en) 2012-08-08 2018-11-06 Amazon Technologies, Inc. Data storage management for sequentially written media
US9354683B2 (en) 2012-08-08 2016-05-31 Amazon Technologies, Inc. Data storage power management
US9779035B1 (en) 2012-08-08 2017-10-03 Amazon Technologies, Inc. Log-based data storage on sequentially written media
US9092441B1 (en) 2012-08-08 2015-07-28 Amazon Technologies, Inc. Archival data organization and management
US9250811B1 (en) * 2012-08-08 2016-02-02 Amazon Technologies, Inc. Data write caching for sequentially written media
US8959067B1 (en) 2012-08-08 2015-02-17 Amazon Technologies, Inc. Data storage inventory indexing
US9720627B2 (en) * 2013-01-17 2017-08-01 Western Digital Technologies, Inc. Data management for a data storage device
US10558581B1 (en) 2013-02-19 2020-02-11 Amazon Technologies, Inc. Systems and techniques for data recovery in a keymapless data storage system
US8922925B1 (en) 2013-12-09 2014-12-30 HGST Netherlands B.V. Actively written guard bands in a cold storage or mixed mode drive
US8867153B1 (en) 2013-12-09 2014-10-21 HGST Netherlands B.V. Method and apparatus for dynamic track squeeze in a hard drive
US8941943B1 (en) 2013-12-09 2015-01-27 HGST Netherlands B.V. Dynamic variable capacity hard disk drive
US9489145B2 (en) 2013-12-09 2016-11-08 HGST Netherlands B.V. Disk drive including I-regions having configurable final logical block addresses
US20150301930A1 (en) * 2014-04-18 2015-10-22 HGST Netherlands B.V. File storage via physical block addresses
US11531495B2 (en) * 2014-04-21 2022-12-20 David Lane Smith Distributed storage system for long term data storage
US8941936B1 (en) * 2014-06-27 2015-01-27 International Business Machines Corporation Hybrid surface format hard disk drive
CN104899157A (zh) * 2015-05-28 2015-09-09 北京北信源软件股份有限公司 一种内存溢出检测方法和系统
US11386060B1 (en) 2015-09-23 2022-07-12 Amazon Technologies, Inc. Techniques for verifiably processing data in distributed computing systems
CN105824579B (zh) * 2016-03-17 2019-01-11 中国科学院计算技术研究所 一种捎带读写减小瓦记录写放大开销的方法
CN107729751A (zh) * 2016-08-12 2018-02-23 阿里巴巴集团控股有限公司 数据检测方法及装置
US11422726B1 (en) * 2018-05-01 2022-08-23 Amazon Technologies, Inc. Efficient storage device data move operation based on priority of garbage collection command
CN114237489B (zh) * 2020-09-09 2024-04-05 浙江宇视科技有限公司 将逻辑资源写入smr盘的方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5477525A (en) * 1992-09-03 1995-12-19 Sony Corporation Data destruction preventing method, recording apparatus provided with data destruction preventing capability, and disc recorded with guard band
US20020071198A1 (en) * 2000-09-27 2002-06-13 Xiong Liu Method to achieve higher track density by allowing only one-sided track encroachment
JP2002216426A (ja) * 2001-01-15 2002-08-02 Nec Corp 情報記録システム
JP2009140552A (ja) * 2007-12-05 2009-06-25 Sony Corp 光ディスク装置及び光情報記録方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04249227A (ja) * 1991-02-05 1992-09-04 Canon Inc 光学装置
JPH05159201A (ja) * 1991-12-04 1993-06-25 Tdk Corp 磁気ディスク記録再生装置並びにその磁気ヘッド装置及び磁気ディスク
JP2002237142A (ja) * 2001-02-09 2002-08-23 Matsushita Electric Ind Co Ltd 磁気記憶媒体、そのトラックピッチ制御方法、その媒体のための磁気記録装置
US7729092B1 (en) 2002-11-07 2010-06-01 Seagate Technology Llc Shielded pole writer under reader
JP2006031847A (ja) * 2004-07-16 2006-02-02 Toshiba Corp 磁気ディスク媒体及び磁気ディスク装置
CN1910692B (zh) * 2004-09-17 2010-12-08 日本先锋公司 信息记录装置和方法以及信息重放装置和方法
JP2006155728A (ja) * 2004-11-29 2006-06-15 Hitachi Global Storage Technologies Netherlands Bv 磁気ディスクにデータセクタをフォーマットする方法および磁気ディスク装置
US7133241B2 (en) * 2005-04-11 2006-11-07 Hitachi Global Storage Technologies Netherlands B.V. Method and apparatus for optimizing record quality with varying track and linear density by allowing overlapping data tracks
US7688544B1 (en) 2005-05-23 2010-03-30 Seagate Technology Llc Magnetic heads disk drives and methods with floating pole tip or shunted pole tip for reduced pole tip erasure
JP2007048335A (ja) 2005-08-05 2007-02-22 Hitachi Global Storage Technologies Netherlands Bv ディスク装置
JP2007073138A (ja) * 2005-09-07 2007-03-22 Hitachi Global Storage Technologies Netherlands Bv ディスク装置
US8756399B2 (en) * 2006-01-25 2014-06-17 Seagate Technology Llc Mutable association of a set of logical block addresses to a band of physical storage blocks
CN101382919A (zh) * 2007-09-05 2009-03-11 北京明朝万达科技有限公司 一种基于身份的存储数据隔离方法
KR101654774B1 (ko) * 2010-02-08 2016-09-06 시게이트 테크놀로지 엘엘씨 데이터 저장 장치와 저장 매체 액세스 방법 및 그에 대한 저장 매체
US8352685B2 (en) * 2010-08-20 2013-01-08 Apple Inc. Combining write buffer with dynamically adjustable flush metrics
US8854751B2 (en) * 2011-01-06 2014-10-07 Seagate Technology Llc Reducing errors resulting from width variability of storage media write tracks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5477525A (en) * 1992-09-03 1995-12-19 Sony Corporation Data destruction preventing method, recording apparatus provided with data destruction preventing capability, and disc recorded with guard band
US20020071198A1 (en) * 2000-09-27 2002-06-13 Xiong Liu Method to achieve higher track density by allowing only one-sided track encroachment
JP2002216426A (ja) * 2001-01-15 2002-08-02 Nec Corp 情報記録システム
JP2009140552A (ja) * 2007-12-05 2009-06-25 Sony Corp 光ディスク装置及び光情報記録方法

Also Published As

Publication number Publication date
KR102134694B1 (ko) 2020-07-16
US8977834B2 (en) 2015-03-10
US20120210092A1 (en) 2012-08-16
CN102789367B (zh) 2017-06-09
KR20190018656A (ko) 2019-02-25
CN102789367A (zh) 2012-11-21
JP2012212498A (ja) 2012-11-01
JP5992178B2 (ja) 2016-09-14

Similar Documents

Publication Publication Date Title
KR102134694B1 (ko) 저장 디바이스 상의 저장 영역들을 관리하기 위한 방법, 컴퓨터-판독가능 저장 매체 및 저장 제어기 모듈
US10346078B2 (en) Method of writing a file to a plurality of media and a storage system thereof
CN107526689B (zh) 读高速缓存管理
US8782163B2 (en) Utilizing removable virtual volumes for sharing data on storage area network
TW201028843A (en) Method and system for dynamic storage tiering using allocate-on-write snapshots
JP6391061B2 (ja) テープ上へのファイル書き込み方法
JP6005010B2 (ja) 複数のテープメディアに1つのファイルをスパニングする方法、ストレージ・システム、およびプログラム
US20160378357A1 (en) Hybrid storage device and method for operating the same
US20150331613A1 (en) Media write operation
US9153290B1 (en) Intra-zone wear leveling for heat-assisted magnetic recording—shingled magnetic recording (HAMR-SMR) type storage devices
JP2012234609A (ja) データ格納方法及びハイブリッドデータストレージ機器
US7676140B2 (en) Recording apparatus
US20160011792A1 (en) Media control device and control method
US20120226882A1 (en) Storage system, storage control apparatus, and storage control method
US9658964B2 (en) Tiered data storage system
US9588898B1 (en) Fullness control for media-based cache operating in a steady state
JP2008146760A (ja) データ書込みパフォーマンスが改善されたテープ記録装置、及びそのデータ書込み制御方法
US8705193B2 (en) Magnetic disk control device, magnetic disk apparatus, magnetic disk control method and computer program
JP2014215668A (ja) テープドライブへのデータ書き込み方法、プログラム
WO2020233175A1 (zh) 硬盘格式转换方法、装置及存储设备
TW201905697A (zh) 行車記錄器之儲存裝置的控制方法與儲存裝置控制系統
KR101214784B1 (ko) 녹화 및 재생 속도 개선을 위한 다채널 녹화 및 재생 장치
EP2657833A2 (en) File processing apparatus and file processing method
WO2020168516A1 (en) Method and system for facilitating fast atomic write operations in shingled magnetic recording hard disk drives
JP2010055702A (ja) ハードディスク装置

Legal Events

Date Code Title Description
AMND Amendment
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2019101000423; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20190207

Effective date: 20191230

S901 Examination by remand of revocation
E902 Notification of reason for refusal
S601 Decision to reject again after remand of revocation
AMND Amendment
GRNO Decision to grant (after opposition)
X701 Decision to grant (after re-examination)