KR100333019B1 - 기록디스크엑세스제어방법및장치 - Google Patents
기록디스크엑세스제어방법및장치 Download PDFInfo
- Publication number
- KR100333019B1 KR100333019B1 KR1019970704121A KR19970704121A KR100333019B1 KR 100333019 B1 KR100333019 B1 KR 100333019B1 KR 1019970704121 A KR1019970704121 A KR 1019970704121A KR 19970704121 A KR19970704121 A KR 19970704121A KR 100333019 B1 KR100333019 B1 KR 100333019B1
- Authority
- KR
- South Korea
- Prior art keywords
- head
- skew
- recording disc
- data block
- disk
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0677—Optical disk device, e.g. CD-ROM, DVD
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B11/00—Recording on or reproducing from the same record carrier wherein for these two operations the methods are covered by different main groups of groups G11B3/00 - G11B7/00 or by different subgroups of group G11B9/00; Record carriers therefor
- G11B11/10—Recording on or reproducing from the same record carrier wherein for these two operations the methods are covered by different main groups of groups G11B3/00 - G11B7/00 or by different subgroups of group G11B9/00; Record carriers therefor using recording by magnetic means or other means for magnetisation or demagnetisation of a record carrier, e.g. light induced spin magnetisation; Demagnetisation by thermal or stress means in the presence or not of an orienting magnetic field
- G11B11/105—Recording on or reproducing from the same record carrier wherein for these two operations the methods are covered by different main groups of groups G11B3/00 - G11B7/00 or by different subgroups of group G11B9/00; Record carriers therefor using recording by magnetic means or other means for magnetisation or demagnetisation of a record carrier, e.g. light induced spin magnetisation; Demagnetisation by thermal or stress means in the presence or not of an orienting magnetic field using a beam of light or a magnetic field for recording by change of magnetisation and a beam of light for reproducing, i.e. magneto-optical, e.g. light-induced thermomagnetic recording, spin magnetisation recording, Kerr or Faraday effect reproducing
- G11B11/10595—Control of operating function
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B21/00—Head arrangements not specific to the method of recording or reproducing
- G11B21/02—Driving or moving of heads
- G11B21/08—Track changing or selecting during transducing operation
- G11B21/081—Access to indexed tracks or parts of continuous track
- G11B21/083—Access to indexed tracks or parts of continuous track on discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/102—Programmed access in sequence to addressed parts of tracks of operating record carriers
- G11B27/105—Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/48—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
- G11B5/54—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head into or out of its operative position or across tracks
- G11B5/55—Track change, selection or acquisition by displacement of the head
- G11B5/5521—Track change, selection or acquisition by displacement of the head across disk tracks
- G11B5/5526—Control therefor; circuits, track configurations or relative disposition of servo-information transducers and servo-information tracks for control thereof
- G11B5/553—Details
- G11B5/5547—"Seek" control and circuits therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/25—Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
- G11B2220/2508—Magnetic discs
- G11B2220/2516—Hard disks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
- Moving Of Head For Track Selection And Changing (AREA)
- Optical Recording Or Reproduction (AREA)
Abstract
기록 디스크를 헤드가 엑세스할 때 평균 이동 거리에서 회전 지연 시간이 최소화 되도록 스큐를 결정하는 기록 디스크에 대한 엑세스를 제어하기 위한 방법 및 장치가 개시된다. 상기 방법 및 장치에 의하면, 결정된 스큐에 기초하여 기록 디스크상의 데이터 블록의 위치를 결정하고, 헤드의 이동량이 헤드에 의해서 기록 디스크에 대한 엑세스 시간이 작아지게 그리고 헤드가 스케쥴링의 결과에 기초하여 기록 디스크에 엑세스하도록 복수의 입력 디스크 엑세스 요청 순서를 스케쥴한다.
Description
컴퓨터의 속도가 증가함에 따라 고속의 랜덤 엑세스를 가능케 하는 디스크 저장 장치의 중요성이 크게 증대되었다. 근년에, 특히 멀티미디어를 위한 기술에 있어서, 서로 별도의 디스크상의 위치들로부터 그리고 고속으로 디지털 데이터로서 디스크에 저장된 동화상 및 음성을 엑세스하는 것은 필수적이다. 즉, 동화상 및 음성과 같은 멀티미디어 데이터를 저장하기 위해서는 고속 전송과 실시간 특성이 필요하다. 고속 전송은 대량의 동화상 및 음성을 처리할 때 당연히 필요하게 된다.
또한, 실시간 특성은 처리 시간의 상한을 초과하지 말아야 한다. 예를 들면, 동화상에 있어서 움직임은 일정 간격으로 초당 30 프레임이 연속해서 디스플레이 되지 않으면 어색하게 된다.
또한, 디스크의 용량에 맞지 않고 불충분한 오디오 데이터가 있다면, 사운드는 끊어지고 불쾌한 노이즈가 발생케 된다. 이런 식으로, 멀티미디어의 데이터에 대해 준비되어 있지 못하고 각기 규정된 회수로 이용되는 경우, 정보의 가치는 급격히 떨어진다. 따라서, 멀티미디어를 위한 저장에 있어서는, 상한이 보장되는 것이 중요하다. 즉, 최악의 경우에도 그 시간내에 처리가 실행될 수 있는 것이 중요하다. 그렇지 않으면, 평균적인 성능으로 사양을 만족할지라도, 데이터는 소정 기간의 시간만큼 너무 지연될 가능성이 있다. 최대치의 처리 시간의 보장은 실시간 특성으로서 지칭되고 멀티미디어 분야에서는 필수 불가결한 기능이다.
컴퓨터를 위한 정보의 저장 장치에 있어서, 평균 성능을 개선하는 것이 주목표가 되어 왔다. 최악의 값은 항상 낮은 상태로 유지되지는 않았다. 즉, 저장처리 시간의 커다란 변동이 존재했다. 이점은 멀티미디어에 대한 저장 요건에 있어 극명하게 대조되는 점이다.
또한, 멀티미디어의 응용의 주 분야에 있어서, 물리적으로 분할된 위치에 있는 데이터에 대한 연속적인 엑세스(랜덤 엑세스)는 고속으로 실행될 수 있어야 한다. 예를 들면, 비디오 온 디맨드(video-on-demand)(VOD)는 대다수의 뷰어(viewer)들이 그들이 선호하는 시간대에 선호하는 프로그램들을 불러와 볼 수 있게 한 시스템이다. 이를 실현하기 위해서는, 다수의 뷰어들로부터의 요청(request)들을 병렬로 처리하고 뷰어들이 현재 시청하고 있는 부분의 데이터를 신속하게 준비하는 것이 필요하다. 이 때문에, 고속으로 디스크의 여러 위치들에 저장된 영화등의 소스들을 추적(trace)하는 것이 필요하게 된다.
또한, 근년에 비디오와 영화들은 테이프나 필름이 아니라 디스크를 이용하여 편집하게 되었다. 테이프로 편집하는 경우, 오버라이팅을 피하기 위하여 예컨대 1시간의 프로그램 시작부 근방 위치로 몇 초의 장면을 삽입할 때 삽입 위치 다음의모든 비디오를 후방으로 쉬프트시켜 프로그램을 재기록해야 한다. 아날로그 오디오 카세트 테이프의 고속 재생과는 달리, 비디오 프로그램의 재기록은 대략 한 프로그램의 시간 가치를 필요로 하므로 그 효율성은 좋지 못하다. 그러나, 디스크를 사용한 경우, 랜덤 엑세스가 가능하므로, 디스크상의 또다른 위치에 삽입 부분을 위치시키고, 그 위치로 한 번 점프하여 재생 시 삽입 비디오를 엑세스한 다음, 원래의 위치로 복귀시켜 비디오의 재생을 계속할 수 있다. 이러한 방법론을 고려하여 추가 단계를 고려하면, 프로그램의 각각의 장면(커트)이 디스크상의 상이한 위치에 놓여지고 마치 하나의 테이프가 재생되는 것처럼 나타나게 하기 위해 재생시에 고속으로 그 상이한 위치들을 트랙킹하는 기술이 알려져 있다. 이렇게 함으로써, 장면 전환이 가능하고 디스크상의 데이터의 트래킹 순서를 변화시킴으로써 단지 길이를 변화시키는 것이 가능하므로, 편집 효율성이 극대로 된다. 이를 비선형 편집이라고 칭한다. 이 경우, 고속으로 디스크상의 물리적으로 분리된 위치들을 트래킹하는 것이 필요하다.
이러한 예들에서 알 수 있는 바와 같이, 멀티미디어의 응용 분야에서, 디스크상의 불연속 위치를 추적하는 동안에 고속으로 데이터를 엑세스(이를 랜덤 엑세스라고 함)하는 것이 매우 중요하나, 탐색 시간으로써 언급되는 헤드가 원하는 실린더로 이동하는 시간과, 회전 지연 시간이라고 언급되는 데이터의 시작이 실린더에 나타날 때까지 디스크가 회전하기를 대기하는 시간이 불연속 위치로의 이동을 위해 필요하다. 이러한 시간들을 엑세스의 오버헤드라고 한다. 이러한 시간이 데이터를 실제적으로 엑세스하는 시간에 비해 길면 길수록, 디스크에서 데이터의 전송에 걸리는 시간이 길어지며 성능은 저하된다.
디스크의 탐색 시간은 Ts이고, 회전 지연 시간은 Tr 이라고 가정하면, 디스크 엑세스의 오버헤드는 Ts + Tr이 된다. 디스크의 헤드가 데이터에 존재하고 데이터를 실제로 엑세스하는 시간이 Tt이면, 개개의 위치로 헤드가 점프하지 않는 경우와 비교하여 효율성은 다음과 같은 수학식에서 나타나는 바와 같이 낮게 된다.
[수학식 1]
Tt/(Tr + Ts + Tr)
즉, 디스크상의 데이터가 시작부터 끝까지 순차적으로 엑세스되는 경우와 비교하여, 개개의 위치에서 데이터를 트래킹하면서 랜덤 엑세스가 실행되는 경우, 그러한 양만큼 성능이 저하한다는 것을 인식할 필요가 있다. 따라서, 멀티미디어 디스크를 가지고 작업하는 것은 실시간 특성을 유지하면서 랜덤 엑세스 시에 성능의 저하를 막는 것이다(처리 시간의 상한을 결정하여 이 상한과 같거나 짧은 동작 시간을 항상 보장하는 것이다.)
근년에, 디스크의 엑세스에 있어서 실시간 특성을 보장하는 방법에 관한 연구가 행해지고 있다. 예를 들면, D. Anderson, Y. Osawa, R. Govindan 에 의한, "연속 매체를 위한 파일 시스템", ACM Transactions on Computer Systems, Vol. 10, No. 4, 311∼337쪽, 1992년(이하 "Anderson 92"라고 칭함)에서는, 디스크로부터 판독된 데이터를 일시 저장하기 위한 버퍼 메모리의 양과 한 번의 엑세스에서 판독된 데이터의 양과의 관계를 최적화함으로써 시스템의 성능을 향상시키기 위한 연구가 행해졌다.
그러나, 디스크의 엑세스가 오버헤드되었을 때, 해석을 용이하게 하기 위해,탐색 시간과 회전 지연 시간에 대해 인식 가능한 최악의 값이 모든 랜덤 엑세스 시 발생한다고 가정한다. 즉, 최내주에서 최외주로 탐색하는 시간이 탐색 시간으로서 채용되고, 정확히 일회전의 대기 시간이 회전 지연 시간으로서 채용된다. 물론 이러한 가정이 이루어진다면, 처리 시간의 최악의 값의 추정은 극히 안전하나 실제로는 이러한 연산은 매번 정확히 행해지지 않으며, 따라서 최악의 값의 추정은 실제로 디스크에서 도출될 수 있는 성능과 비교하여 매우 낮으며 이러한 추정은 설계데이터로서 거의 쓸모가 없다.
또한, V. Rangan과 H. Vin의 "디지탈 연속 멀티미디어를 위한 효율적인 저장기술"(지식 및 데이터 엔지니어링에 관한 IEEE 트랜잭션스, 1993년, 제5권 제4호 564-573쪽)(이하 "Rangan 93"이라고 칭함)에서는, 복수의 세그먼트로 비디오 파일을 자르고 서로 다른 세그먼트들을 서로 다른 위치에 저장할 때, 실시간 특성을 유지하기 위해 세그먼트들 간 간격과 세그먼트들의 길이를 결정하기 위한 방법이 연구되었다.
그러나, 세그먼트들 간의 점핑 시에(랜덤 엑세스 시에), 최악의 오버헤드는 "Anderson 92"에서 기술된 바와 같이 동일한 방법으로 매번 초래되고, 따라서 유사한 문제점이 존재한다.
이러한 연구들과 비교하여 보다 낮은 최악의 값을 유지하기 위한 연구들이 있었다. 이들 연구들은 훨씬 고성능으로 실시간 랜덤 엑세스의 보장을 가능케 하고 있다. N. Reddy와 J. Wyllie의 "멀티미디어 I/O 시스템에서의 디스크스케쥴링"(ACM 멀티미디어 93, 225쪽 내지 233쪽, 1993년)(이하 "Reddy 93"이라 칭함), J. Gemmel, J. Han 등의 "디스크상의 지연 감지 멀티미디어"(IEEE 멀티미디어 1994, 56쪽 내지 67쪽, 1994년)(이하 "Gemmel 94"라고 칭함), 및 M. Chen, D. Kandlur, P. Yu 등의 "이종의 멀티미디어 스트림을 갖는 그룹화된 스위핑 스케쥴링(GCS)의 최적화"(ACM 멀티미디어 93, 235쪽 내지 242쪽, 1993년)(이하 "Chen 93"이라고 칭함) 등의 연구는 "스캔(SCAN)" 이라고 언급되는 헤드 스케쥴링 알고리즘을 이용하여 오버헤드를 억압하고자 시도한 연구들이다.
"헤드 스케줄링" 이란 엑세스 순서로 다루어 탐색 시간을 줄이기 위한 방법이며, 이 경우 디스크상의 복수의 위치를 엑세스하는 것이 필요하다. 도 1에 도시한 스캔 알고리즘은 소정의 복수의 I/O 요청들(#1, #2,.....)이 디스크의 반경 방향으로 저장되고 순차적으로 처리되는 알고리즘이다. I/O 요청(#1, #2,.....)의 도달 순서로 처리가 실행되면, 발생하는 헤드의 역동작은 방지 가능하고, 그에 따라 개개의 탐색 시간이 줄여질 수 있다. 헤드 스케쥴링의 알고리즘으로서 많은 알고리즘들이 알려져 있다. 이들 알고리즘은 예컨대, H. Deitel의 "운영 체제"(Addison Wesley사 발간 360 내지 372쪽, 1990년)에 상세히 언급되어 있다.
"Reddy 93", "Gemmel 94", "Chen 93"은 모두들 스캔 알고리즘을 이용한다는 가정에 입각하고 있고 따라서 탐색 시간을 억압하는 것이 가능하다. 따라서, 오버 헤드의 최악의 값을 더 낮추고, "Anderson 92" 및 "Rangan 93"과 비교하여 보다 더 고성능을 보증할 수 있다.
그러나, 스캔 알고리즘이 억압될 수 있는 것은 탐색 시간뿐이다. 지금까지회전 지연 시간의 감소에 대해서는 제안된 바 없다.
"Reddy 93"은 제로 대기 시간(latency) 엑세스 메카니즘으로 지칭되는 특정기능이 디스크에 존재하고 있음을 가정한다. 제로 대기 시간 엑세스 메카니즘은 데이터가 원하는 트랙에 헤드가 이르렀을 때의 시점에서 데이터의 중앙과, 디스크가 일회전하고 그 부분으로 복귀할 때 다시 재시간에 판독되지 않는 선두 부분으로부터 연속해서 데이터가 판독되는 방법이다. 따라서, 디스크가 한 번 회전할 때, 원하는 데이터는 신뢰성 있게 판독될 수 있고 그에 따라 총 회전 지연과 데이터의 엑세스는 최대로 일회전하는 양의 시간으로 된다.
그러나, 실제로 몇 개의 디스크만이 이러한 메카니즘을 이용하기 때문에, "Reddy 93"의 가정은 현실적이지 못하다.
한편, "Gemmel 94"는 회전 지연이 제어 및 예측이 불가능한 양임을 고려한 결과로서 항상 최대치를 가산함으로써 오버헤드를 계산하는 방법을 채용하고 있다. 이는 안전한 방법이나 어떤 문제의 소지가 있는 많은 낭비 요소가 있다. 또한, "Chen 93"은 무시할 수 있는 수정 기간으로서 회전 지연을 다루나 이는 신뢰적이지 못하다. 예를 들면, 최근의 고속 디스크에서, 회전 주기는 8.3 ms이고, 스캔 알고리즘이 사용된다면, 탐색 시간의 최대치는 약 6ms 이하로 억압 가능하다. 그러므로 회전 지연이 지배적이다. 또한, 모터의 공기 저항 및 소모 전력과 그로 인해 발생된 열의 관점으로부터, 앞으로 이점에서 회전 속도를 개선하기 위한 어떤 연구를 기대하기란 어렵다. 회전 지연을 저감하는 것이 해결되어야할 가장 큰 문제이다.
또한, 컴퓨터의 통상의 파일 시스템에서, 회전 지연의 저감이 중요함을 지적하였다. S. Ng의 "대기 시간 저감을 통한 디스크 성능의 개선"(컴퓨터에 관한 IEEE 트랜잭션스, 제40권 제1호, 1991년 1월, 22쪽 내지 30쪽)(이하 "Ng 91"이라고 지칭)에서는, 회전 방향 등에 있어서 위상 천이된 데이터의 복제를 준비하는 방법에 의해 판독 동작 시에 평균 회전 지연 시간을 저감하기 위한 방법을 언급하고 있다. 그러나, 이 방법은 큰 데이터 량을 가지는 멀티미디어 응용에 적용하는데 곤란하다.
본 발명은 고속 전송을 요하는 기록 디스크에 대한 엑세스 및 디스크 상의 불연속 위치에 대한 엑세스(랜덤 엑세스)를 제어하는 방법 및 이를 위한 장치에 관한 것이다.
이후 본 발명의 목적 및 특징들이 첨부된 도면을 참조한 양호한 설명을 통해서 보다 명확해 질 것이다.
도 1은 관련 기술을 설명하기 위한 도면이다.
도 2는 본 발명의 제 1 실시예에 따른 기록 디스크에 대한 엑세스를 제어하는 장치의 구성의 블록도이다.
도 3은 도 2에 도시한 스케쥴러의 처리를 설명하기 위한 플로우 챠트이다.
도 4는 도 2에 도시한 블록 할당기의 처리를 설명하기 위한 플로우 챠트이다.
도 5는 드라이브의 탐색 시간과 탐색 거리와의 관계를 도시하는 그래프이다.
도 6은 블록 할당기예 의해 디스크 상에 블록을 배열하는 방법을 설명하기 위한 도면이다.
도 7은 블록 맵의 내용을 설명하기 위한 도면이다.
도 8은 도 3에 도시한 단계 S3에서의 처리 내용을 설명하기 위한 도면이다.
도 9는 도 3에 도시한 단계 S3에서의 처리 내용을 설명하기 위한 그래프이다.
도 10은 탐색 및 회전 지연이 고려되는 경우의 오버헤드를 설명하기 위한 그래프이다.
도 11A, 11B, 11C는 디스크상의 엑세스의 분포의 일례를 설명하기 위한 도면이다.
도 12는 종래의 스캔 알고리즘으로 오버헤드를 설명하기 위한 그래프이다.
도 13은 톱니 함수를 엔벨로프하는 역삼각 함수를 이용하는 경우의 지연과 탐색 거리 L간의 관계를 설명하기 위한 그래프이다.
도 14는 본 발명의 제 2 실시예에 따른 기록 디스크에 대한 엑세스를 제어하기 위한 장치의 블록 할당기에서의 처리를 설명하기 위한 도면이다.
도 15는 도 14에 도시한 기록 디스크에 대한 엑세스를 제어하기 위한 장치에서 블록 할당기의 처리를 설명하기 위한 플로우 챠트이다.
도 16은 도 13에 도시한 기록 디스크에 대한 엑세스를 제어하기 위한 장치에서 블록 맵의 내용을 설명하기 위한 플로우 챠트이다.
이후, 본 발명의 실시예에 따른 기록 디스크에 대한 엑세스를 제어하기 위한 방법과 장치에 대해서 설명하기로 한다.
[실시예]
제 1 실시예
도 2 는 본 발명에 따른 기록 디스크에 대한 엑세스를 제어하기 위한 장치의 구성의 블록도이다.
본 실시예에 따른 기록 디스크에 대한 엑세스를 제어하기 위한 장치는 예를들어 컴퓨터의 소프트웨어 연산에 의해 실현된다. 도 2에 도시한 각각의 블록은 메인 프로그램 모듈이나 메인 데이터 구조를 나타낸다.
블록 할당기(배열 수단)(1)는 소정의 포맷 파라미터(10)에 기초하여 데이터가 디스크(5) 위에 어떻게 배열되는지를 결정한다. 디스크(5)는 예를 들어 자기 디스크나, 광자기(MO) 디스크나, 하드 디스크(HDD)가 사용 가능하다.
포맷 파라미터(10)는 제 1 데이터 블록의 크기, 스캔 스케줄링을 행할 때 평균 헤드 이동 거리 La, 사용될 드라이브의 탐색 시간 함수 Ts(L), 디스크(5)의 물리적 포맷을 포함한다.
평균 헤드 이동 거리 La는 디스크의 실린더의 총 수와 스캔에 의해서 처리된 엑세스의 수 N에서 다음의 수학식 (8)으로 주어진다.
[수학식 8]
La=Lt/(N-1)
드라이브의 탐색 시간 Ts(L)은 탐색 거리 L(실린더의 수)의 함수이다. 그 값은 사용된 디스크 드라이브의 기구적 특성에 의해서 정해진다. 이 예가 도 5에 도시된다. 한 번의 스캔에 의해서 얼마나 많은 엑세스 요청이 처리되는지는 이 디스크를 이용한 응용의 특성, 즉 필요로 하는 성능에 의해서 결정된다. 함께 스캔될 엑세스 요청의 수 N이 커지면 디스크의 랜덤 엑세스 성능이 보다 향상되나, 소요 버퍼 메모리 량이 증대함에 따라 응답 시간이 증가된다는 부작용이 있다.
이러한 포맷 파라미터(10)는 시스템 전체를 관리하는 제어 프로그램을 가진 중앙 처리 장치(CPU)에 의해서 결정되며, 이러한 포맷 파라미터(10)는 블록 할당기(1)에 제공된다. 본 실시예가 비선형 편집을 위해서 이용되는 경우, N=10, La=300이 블록 할당기(1)에 주어진다. 또한, 제 1 데이터 블록의 크기는 1시트(sheet)의 영상 데이터에 대응하며 방송국 등에서 사용되는 CCIR-601 포맷의 경우 약 700KB이다. 물론, 이러한 수치는 목적 및 각종의 요구되는 사양에 따라서 자유롭게 설정 가능하다.
블록 할당기(1)는 디스크(5)상의 어느 위치에 각각의 블록이 소정의 포맷 파라미터(10)에 기초하여 위치하는지를 결정한다. 이 실시예에 있어서, 하나의 블록은 하나의 영상의 하나의 프레임과 같다. 물론 기본적인 개념은 MPEG 또는 다른 압축 영상을 적절한 길이로 분할하여 얻어진 데이터나 오디오 데이터의 경우에도 유사하다.
디스크(5)는 통상적으로 소위 "섹터" 영역에 대해서도 엑세스 가능하다. 하나의 섹터는 통상 약 512 Byte 내지 4KB의 크기를 갖는다. 이러한 섹터들이 원으로 배열된 도우넛 형태의 영역을 "트랙"이라고 한다. 또한, 중첩된 복수의 자기매체의 동일 트랙의 그룹을 이루는 실린더 영역을 "실린더"라고 한다.
비디오 및 오디오 데이터의 하나의 블록은 통상 하나의 섹터보다 크며, 따라서 블록 할당기(1)는 각각의 블록에 대해서 복수의 섹터를 할당한다. 도 5는 하나의 자기 매체가 있는 경우의 예를 도시한다. 도 6에서 해칭으로 표시된 부분, 즉 트랙 "1"의 원주 전체와 트랙 "2"의 섹터 "0" 내지 "6"이 하나의 블록에 해당한다. 이 실시예에서 오직 하나의 매체만이 있으므로, "트랙"과 "실린더"는 동일 의미를 가지나, 복수개의 자기 매체가 있는 디스크 드라이브의 경우, 동일 실린더의 모든 부분이 완전하게 이용되면, 인접 실린더를 이용하기 위해 블록이 할당된다.
섹터에의 할당은 모든 블록에 대해서 실행된다. 그 결과는 블록 맵(3)위에 기록되며 이때 블록 할당기(1)의 역할은 끝나게 된다. 블록 할당기(1)는 실린더 수, 매체 수(매체의 시트), 섹터 수의 세트에 의해서 섹터의 위치를 지정한다. 그러나, 최근에 대중화된 SCSI(ANSI 소형 컴퓨터 시스템 인터페이스)의 드라이브에서 시리얼 번호(SCSl에서 "논리적 블록 어드레스"라고 불리워지나 여기서는 비디오와 오디오 데이터 블록과의 혼돈을 피하기 위해 논리적 섹터 수로 지칭됨)는 드라이브의 모든 섹터에 주어지고 이는 데이터를 엑세스하기 위해 사용된다. 이 때문에, 드라이브에 의해서 결정되는 논리적 섹터 수와 물리적 어드레스, 즉 실린더 수, 매체 수, 섹터 수에 의해서 결정된 논리 섹터 수 간의 일치성은 물리적 어드레스테이블(7)에 예비적으로 저장된다. 블록 할당기(1)는 원하는 물리적 어드레스를, 물리적 어드레스 테이블(7)을 참조하여 SCSl에 의해서 결정된 논리적 섹터 수로 변환하고 이를 블록 맵(3)상에 입력한다.
도 7은 블록 맵의 일례를 도시한다. 블록 "0"에 대응하는 정보는 도 6의 해칭 부분에 대응한다.
한편, 스케쥴러(2)는 다음과 같이 동작한다. 우선, 시스템 전체를 관리하는 CPU는 스케쥴 파라미터(20)를 결정하여 그 스케쥴 파라미터(20)를 스케쥴러(2)에 제공한다. 스케쥴 파라미터(20)는 얼마나 많은 엑세스 요청이 한 번의 스캔에 의해서 함께 처리되는지를 나타내는 상수 N을 포함한다.
조작자가 디스크(5)상에 기록된 동화상의 재생을 시작할 것을 지령할 때, 적절한 제어 프로그램을 가진 도시하지 않은 CPU는 동화상을 구성하는 영상이 모든 영상에 대해서 저장되는 블록을 엑세스하라는 요청을 출력한다. 이러한 엑세스 요청(40)은 엑세스 요청 버퍼(4)에 저장된다. 스케쥴러(2)는 초기에 도착된 엑세스 요청으로부터 엑세스 요청 버퍼(4)에 저장된 엑세스 요청(40)의 수 N을 취출해내고, 블록 맵(3)을 참조하여 디스크(5)상의 요청에 대응하는 데이터의 위치를 찾고, 헤드의 이동량이 최소가 되도록 엑세스 요청의 순서를 변화시키며, 디스크(5)를 엑세스하라는 지령을 발생시킨다. 엑세스에 대한 지령은 디스크 드라이브의 외부 인터페이스와 부합하도록 내려지며, 그에 따라 SCSI 디바이스 드라이버(6)에 의해서 SCSI 프로토콜로 변환되고 그 다음에 디스크(5)로 전달된다. 디스크(5)로부터 판독된 데이터는 데이터 버퍼(8)에 일시적으로 저장되고 또한 장치의 비디오 인터페이스에 전달된다.
조작자가 동화상 영상을 나타내는 데이터의 기록을 지시하면, 적절한 제어프로그램을 가진 도시하지 않은 CPU는 동화상 영상을 구성하는 영상이 모든 영상에 대해서 저장되는 블록에 대한 엑세스 요청을 출력한다. 이러한 엑세스 요청(40)은 엑세스 요청 버퍼(4)에 저장된다. 동시에, 동화상을 구성하는 영상 데이터(80)는 비디오 인터페이스(도시 안됨)에서 데이터 버퍼(8)로 전달되며, 그러한 영상 데이터(80)는 데이터 버퍼(8)에 일시적으로 저장된다. 스케쥴러(2)는 보다 일찍 도착한 엑세스 요청에서 엑세스 요청 버퍼(4)에 저장된 엑세스 요청(40)의 수 N을 순차적으로 취출해낸다. 다음에 스케쥴러(2)는 디스크(5)에서 블록 맵(3)을 참조하여 이 요청에 대응하는 데이터의 위치를 찾아낸다. 또한, 스케쥴러(2)는 헤드의 이동량이 최소가 되도록 엑세스 요청의 순서를 변화시키고, 디스크(5)의 엑세스에 대한 지령을 발생한다. 엑세스에 대한 지령은 디스크 드라이브의 외부 인터페이스와 부합하도록 내려지며, SCSI 디바이스 드라이버(6)에 의해서 SCSI 프로토콜로 변환되고 그 다음 디스크(5)로 전달된다.
이제, 블록 할당기(1)의 동작에 대해서 상세히 설명하기로 한다.
도 2의 포맷 파라미터(10)로서, 하나의 블록의 크기, 스캔(SCAN) 스케쥴을 실행할 때 헤드의 평균 이동 거리 La, 사용될 드라이브의 탐색 시간 함수 Ts(L), 디스크(5)의 물리적 포맷(실린더 수, 하나의 트랙에 있는 섹터 수, 실린더를 구성하는 매체 수)이 주어지면, 블록 할당기(1)는 도 3에 도시한 단계 Sl 내지 S5의 절차에 의해서 디스크(5)상에서의 각각의 블록의 위치를 결정한다.
단계 S1 에서, 영상의 블록이 하나의 실린더(Bc)에 얼마나 많이 존재하는지를 계산한다. 하나의 실린더에 있는 섹터의 총 수는 트랙에 있는 섹터의 수에다 매체의 수를 곱해서 구한다. 이것이 하나의 블록을 저장하는데 필요한 섹터의 수로 나뉘어질 때, Bc가 구해진다.
갭 θg는 단계 S2에서 구해진다. 갭은 블록의 선두 섹터와 최종 섹터 사이의 각도 차이다. 일례로서 도 6에서 해칭으로 표시한 블록의 경우, 시작은 트랙 "1"의 섹터이고, 끝은 트랙 "2"의 섹터 "6"이다. 그러므로 갭 θg는 원주의 5/12, 즉 5π/6 라디안이다.
스큐 θs 는 상기 데이터에 기초하여 단계 S3에서 구하여진다. 여기서 스큐 θs는 인접 블록들의 헤드간 원주 방향으로의 각도 차를 의미한다. 먼저, 어떤 블록의 판독이 시작점으로서 끝났을 때의 헤드의 위치를 이용함으로써, 수학식으로 표현될 때, L 실린더의 양 만큼 헤드가 시작점에서 이동하는 위치에서의 원주 방향과 동일한 각에 데이터의 헤드가 이를 때까지의 시간 Td(L)는 다음의 수학식 (9)에서 구해진다.
[수학식 9]
여기서, L은 실린더 수 단위의 탐색 거리,
Bc는 하나의 실린더에 존재하는 데이터 블록 수,
θs는 라디안 단위의 스큐,
θg는 라디안 단위의 갭,
ω는 디스크의 회전 속도(라디안/초),
m 은 Td(L)이 포지티브가 되는 경우의 어느 정수이다.
도 8은 디스크 상에서 수학식 (9)의 의미를 설명하는 도면이다.
도 8에서, 블록 "0"의 엑세스가 방금 종료되었다고 가정한다. 헤드는 중심에서 보았을 때 각도 70의 방향으로 위치하고 있다고 가정한다. 이제 다시 동일한 블록 "0"를 엑세스하기를 바란다면, 갭 θg의 크기만큼 정확히 회전할 때까지 기다릴 필요가 있으며, 따라서 θg/ω의 지연 시간은 초래된다.
또한, 블록 "n"의 헤드의 경우, 디스크가 블록 "0"의 갭 θg와 스큐의 블록 값의 수 n 의 합(nθs)의 각도까지 정확히 회전할 때까지 기다릴 필요가 있다. 이는 nθs/ω의 시간 값이 소요된다. 디스크가 회전하고 있으므로, 데이터의 시작은 복수의 회전 사이클에 이런 식으로 구한 시간을 가산하여 구한 시간에서 헤드가 위치하고 있는 위치에 이른다. 헤드가 블록 수 n 만큼 이동할 때, 이는 실린더의 수를 고려한 n/Bc 실린더의 이동에 대응하며 횡좌표상에 실린더의 수를 그리고 종좌표상에 시작이 다다를 때까지의 지연 시간을 그리면서 그래프를 그리면, 도 9가 얻어진다. 스큐가 커지면 커질수록, 라인군의 경사는 더 커진다. 상기 이론에서, 중심에서 본 원주 방향의 헤드의 위치(각도)가 중심으로부터의 거리와는 무관하게 일정하다고 가정한다. 실제로 헤드의 기구에 따라서 그 위치가 정확히 일정치 않은 경우가 존재하나, 그의 영향은 미미하며, 따라서 보통 이를 무시할 수 있다.
도 9에 도시한 바와 같이, 블록의 시작이 각각의 실린더에서 헤드 아래에 도달할 때까지의 시간은 수학식 (9)로 구해진다. 그러나, 헤드가 이 시간 내에 원하는 실린더로 이동해야만 하기 때문에, 지연 시간은 탐색 동작 후 블록의 시작이 처음 나타날 때까지의 시간이 된다. 이것이 탐색과 회전 지연을 모두 고려한 오버헤드 Td(L)이다. 도 10은 이 실시예를 도시하며 수학식 (1)은 그의 정의를 보여주고 있다. 실제의 오버헤드(지연 시간)는 도 10에서 굵은 선으로 표시되어 있다.
탐색 시간의 함수는 점선으로 표시되고 있다. 도면에서 Trot는 1회전 주기이다.
단계 S3-1에서, 수학식 3에서 m=0의 직선의 방정식과 도 9, 즉 다음의 수학식 (10)으로 표현되는 방정식이 구해진다.
[수학식 10]
이어지는 단계 S3-2, S3-3, S3-4는 직선이 항상 탐색 시간의 함수 Ts(L)보다 크고 계속해서 탐색 시간의 함수와 접촉하도록 스큐 θs를 선택하기 위한 단계들이다. 도 10의 m=0의 직선은 이런 식으로 선택된 θs 를 이용함으로써 구해진다.
단계 S4, S5에서는 상기 방법으로 구한 갭과 스큐를 이용하여 디스크의 전체 영역 위에 있는 디스크상의 블록의 위치를 결정한다.
단계 S4에서, 물리적 어드레스의 포인터가 처음에 (0/0/0)으로 초기화된다.
다음 단계 S5는 모든 블록에 대해서 반복된 루프이다. 이 루프에서, 먼저, 논리적 섹터 수는 물리적 어드레스 테이블을 참조하여 물리적 어드레스에서 구해진다. 단계 S5-2에서, 이와 같은 정보와 물리적 어드레스는 블록 맵(3)에 기록된다. 블록 맵(3)의 내용은 도 7에 도시되고 있다.
지금까지의 처리가 종료되면, 물리적 어드레스의 포인터는 다음 블록의 처리준비를 위해 앞으로 이동된다. 물리적 어드레스의 포인터 Ppa는 단계 S5-3에서 갱신된다. 단계 S5-4에서, 단계 S5-1 내지 단계 S5-3의 처리가 실행되었는지가 모든 블록에 대해서 결정된다. 이러한 단계가 실행되지 않았으면, 단계 S5-1 내지 S5-3의 처리는 그 처리가 실행되지 않은 블록에 대해서 실행된다.
여기서, 디스크상의 N 번째 블록의 배열은 다음과 같다.
(1) 할당된 블록으로부터 후진, 및
(2) Nθs에 가장 가까운 0번째 블록의 시작과의 각도 차를 가지는 섹터가 시작으로서 정의되는 영역에서.
다음에, 본 발명에 따른 기록 디스크에 대한 엑세스를 제어하기 위한 방법에서 최악의 오버헤드에 관한 설명이 행해진다.
일반적으로 엑세스 요청(40)은 디스크(5)상의 모든 위치에 대해서 발생된다. 한 번의 스캔에 의해서 처리된 위치는 도 11A, 11B에 도시된 바와 같이 불균일한 분포를 가지며, 역으로는 도 11C에 도시된 바와 같이 균일한 분포를 가진다. 이 실시예에서, 헤드는 6개의 엑세스 요청(40) 중에서 이동하며, 그에 따라 5개의 랜덤 엑세스와 이에 따른 오버헤드가 발생된다. 이 5개의 랜덤 엑세스에 대한 오버 헤드의 총수는 오버헤드의 함수가 역삼각 형태(제 11C)를 보일 때 모든 엑세스가 균일하게 분포되는데 경우에 최악이 된다. 분균일한 분포가 있으면, 오버헤드의 총합은 이 보다 작게된다. 즉, 헤드의 평균 거리 La에서 오버헤드가 반복해서 발생되면, 오버헤드의 총합은 최악으로(크게) 된다.
도 10의 Td(L)는 톱니 함수이다. Td(L)는 상부에서 엔벨로프하는 역삼각형태를 가진 함수로 대체되면, 상기 이론이 기본적으로 유지된다. 도 12에 그러한 함수의 일례가 도시된다. 즉, 한 번의 엑세스당 최악의 오버헤드는 거리가 도 10의 그래프에서 La(도면에서 Tmax)인 위치에서 Ts(L) 값을 판독하여 구한 값으로 된다. 전술한 바와 같이 이는 근사치이나, 도 10의 예에서와 같이 Td(L)의 함수와 위로부터 이를 엔벨로프하는 함수는 대개 La 근방에서 서로 일치한다. 그러므로, 실제로 에러가 없다고 고려된다. 또한, 근사화는 안전한 쪽에 있고(오버헤드가 현재보다 크게 계산된 쪽), 본래의 값보다 작은 최악의 값을 계산할 위험성은 없다.
도 3에 도시한 단계 S3에서, 스큐는 수학식 (9)으로 주어진 회전 지연의 직선 그룹중 하나가 탐색 시간의 함수 Ts(L) 보다 높은 위치에 위치해 있거나 가능한한 이 근방에 있도록 선택된다. 이에 의해서 Td(L)는 거리 La 근방에서 작게 만들어질 수 있고, 따라서 최악의 오버헤드 Tmax가 보다 작게 만들어질 수 있다.
도 12는 스캔 알고리즘에서의 오버헤드를 도시한다. 종래의 스캔 알고리즘에서, 오버헤드의 총합은 엑세스가 균일하게 분포될 때 최악으로 된다. 그러나, 본 실시예와는 달리, 회전 지연에 대해서 주어진 고려 사항은 없고, 따라서 헤드의 탐색 동작이 종료한 후에도, 최악의 경우에 일회전의 회전 지연이 발생되었는지를 고려하여야만 한다. 이 때문에, La에서 탐색 시간 Ts(La)에 일회전의 사이클 Trot을 부가시켜 구한 값이 최악의 오버헤드가 된다. 도 12와 도 10을 비교해 보면 명백한 바와 같이, 이는 본 실시예에 따른 것보다 비교적 큰 값이 된다. 실험을 통해, 최악의 오버헤드가 종래의 스캔 알고리즘에 의한 것과 비교하여 본 실시예에서는 거의 반으로 된다는 것을 확인하였다.
상술한 바와 같이, 본 실시예에 따른 기록 디스크에 대한 엑세스를 제어하기위한 장치는 스큐 및 갭을 적절히 선택함으로써, 평균 헤드 이동 거리 La에서 오버헤드 Td(L)을 최저 레벨로 억압하는 것이 가능하며, 회전 지연 시간은 이것에 의해작게 만들어진다. 도 3에 도시한 플로우 챠트에서, 블록의 크기는 소정의 고정된 값을 가지나, 목적에 따르면, 블록의 크기는 어떤 범위 내에서 선택 가능하다. 이 경우, 갭 θg와 스큐 θs 둘 다 변화될 수 있고, 따라서 직선 위치는 La 근방의 탐색 시간에 접근하도록 정교하게 제어 가능하다.
상기 방법에 의해서, 블록들 간의 이동에 수반하는 오버헤드는 크게 향상된다. 블록이 커져서 복수의 트랙이나 복수의 실린더 상에서 연장되는 경우, 인접하는 실린더로의 이동 시간 및 트랙의 변화에 수반하는 시간이 고려될 수 있다. 트랙의 변화 시간 및 인접 실린더로 이동하는데 필요한 시간 역시 일정하며, 그에 따라 데이터가 이러한 시간 경과 후 헤드 바로 아래에 도달하도록 트랙이나 실린더중에서 스큐를 부여함으로써, 실린더들 간의 이동과 트랙의 변화에 따라서 블록에서 긴 회전 지연이 일어나지 않게 하는 것이 가능하다. 이를 위해, 블록 할당기(1)는 이미 설명된 블록들간 이동에 대한 스큐와 갭 이외에 최고속의 블록에 대한 엑세스를 위한 스큐 및 갭을 가진다. 도 3에서 단계 S4와 단계 S5에서, 디스크상의 블록을 배열할 때 후자의 스큐 및 갭을 이용하여 블록들을 배열하는 것이 충분하다. 항상 후자의 갭을 제로로 하여 트랙의 변화와 실린더들 간 이동 시간의 변화를 흡수하기 위해 스큐를 이용한다.
다음에, 스케쥴러(2)의 동작에 대해서 설명하기로 한다.
도 4는 스케쥴러(2)의 동작의 플로우 챠트를 도시한다. 단계 S11에서, 디스크의 헤드는 처음에 실린더 "#0"으로 이동한다. 다음에, 처리 루틴은 실제 스케쥴링이 실행되는 단계 S12로 진행한다.
단계 S12에서, 엑세스 요청의 수 N이 판독되고, 단계 S12-1에서 제시간에 이전 요청으로부터 순서대로 엑세스 요청 버퍼에서 페치된다. 하나의 엑세스 요청에서, 엑세스될 블록들의 수와 데이터 전송에 사용되는 데이터 버퍼의 선두 어드레스가 기술된다. 또한, 수 N은 또다른 제어 프로그램(도시 안됨)으로부터 예비적으로 주어진 상수이다.
단계 S12-2에서, 블록 맵(3)은 각각의 엑세스 요청 수 N에 대해서 참조되고, 엑세스될 블록의 물리적 어드레스(실린더 수, 매체 수, 섹터 수)가 확인된다. 계속해서, 단계 S12-3에서, 엑세스 요청 수 N이 최소 실린더 수로부터 순서대로 재배열된다. 이 동작에 의해서, 스캔 알고리즘의 스케줄링이 실현된다. 단계 S12-4에서, 이러한 재배열된 엑세스 요청은 최소의 실린더 수에서 순서적으로 디바이스 드라이버를 통해 디스크로 전달되며 실제의 엑세스 및 데이터 전송이 이루어진다. 엑세스 지령들중 하나의 블록 어치가 출력되면, 전송의 끝이 단계 S12-5에서 대기되고, 다음에 다음의 엑세스 지령이 내려진다. 회수 N(S12-6)을 반복한 다음에, 엑세스 요청 수 N의 처리가 종료된다. 단계 S12-7에서, 제어 프로그램은 엑세스 요청 수 N의 처리가 종료됨을 통지받고, 엑세스 요청의 수 N에 관한 일련의 처리가 종료된다.
최종적으로, 단계 S12-8에서, 엑세스 요청 수 N이 엑세스 요청 버퍼(4)에 저장되는지의 여부가 결정된다. 저장되지 않았으면, 스케쥴러(2)는 단계 S12-1로 되돌아가서, 다음의 엑세스 요청 수 N을 취출해내고, 처리를 계속한다. 엑세스 요청버퍼에서 요청 수 N이 없다면, 이 단계에서 처리는 멈춘다.
예를 들어, 블록 할당기(1)가 블록을 배열하고 블록의 크기를 변화시키므로 디스크(5)의 외부에서 내부로 전체 영역에 걸쳐 갭이 일정하게 되어, 엑세스의 실시간 특성이 한층더 향상될 수 있다.
제 2 실시예
상기한 제 1 실시예의 스케쥴러(2)가 다음 스캔의 시작시 최외주 엑세스 위치까지 이동했다. 즉, 최종 엑세스가 도 4의 단계 S12-4와 단계 S12-5에서 실행될 때, 헤드는 엑세스의 수 N 가운데 최내주 엑세스를 수행했다. 엑세스의 다음 수 N을 처리하기 위한 루프의 최초 엑세스에 의해서, 최소 실린더 수를 가지는 외부 실린더로의 이동이 야기된다. 이러한 이동과 관련하여, 최내주에서 최외주에 이르는 최대 길이의 탐색 동작과 일회전의 회전 지연이 최악의 경우에 발생된다. 이들이 모든 엑세스 수 N에 대해서 발생하고, 이 때, 데이터의 엑세스가 실행되지 않으므로, 이는 스캔 전체의 오버 헤드의 총합에 부가되어야 한다. 물론, 성능도 그 양만큼 저하된다.
물론, 내주쪽에서 외주쪽으로의 이동 간에도 디스크에 대한 엑세스가 가능하나, 헤드의 이동 방향은 역방향이 되므로, 수학식 (15)에서 첫째 항, 즉 스큐 항의 부호는 반전된다. 이 때문에 외주에서 내주쪽으로의 이동의 경우 최적의 스큐 및 갭은 역방향으로의 이동에 대해서 항상 적절한 파라미터가 되지 못한다. 이는 헤드가 역방향으로 이동할 때 성능의 저하의 이유가 된다.
이후, 본 발명의 제 2 실시예에 따른 기록 디스크에 대한 엑세스를 제어하기위한 장치에 대해서 설명하며, 헤드가 내주에서 외주로 복귀할 때도 고속의 데이터전송을 실행하는 방법에 대해서 설명하기로 한다. 첫째, 블록 할당기(1)는 도 14에 도시한 바와 같이 실린더를 외부에서 내부로의 스캔을 행할 때 사용된 해칭으로 표시한 실린더(50)와, 내부에서 외부로의 스캔을 행할 때 사용된 실린더(51)로 분할한다. 도 14에서, 외부에서 내부로의 스캔이 행해질 때 문자 F로 표시한 실린더(50)가 사용되고, 내부에서 외부로의 스캔이 행해질 때 문자 B로 표시한 실린더(50)가 사용된다. 도 14에서 실린더는 2개의 실린더 그룹으로 분할되나, 그룹에서 실린더의 수는 이에 한정되는 것은 아니다. 실린더는 적절한 단위의 그룹으로 분할 가능하다.
전술한 제 1 실시예에 따른 기록 디스크에 대한 엑세스를 제어하기 위한 장치에서와 같이 동일한 방법으로 도 3의 단계 S1에 따른 스큐와 갭을 구한 다음에 도 3에 도시한 단계 S4와 단계 S5의 처리는 도 15에서 도시된 바와 같이 변경된다.
도 15의 단계 S31에서 제 1 실시예와 동일 방법으로 할당된 물리적 어드레스의 포인터가 초기화된다.
계속해서, 개개의 블록들은 단계 S32에서 디스크에 할당된다. 단계 S32는 모든 블록들에 대한 반복 루프이다. 단계 S32-1에서, 전체 블록이 처리 동안 블록의 물리적 어드레스에 기초하여 B의 영역 또는 영역 F에 속하는지가 판단된다.
단계 S32-2는 이러한 판단의 결과에 기초한 분기이다. 하나의 블록 전체가 F의 영역에 속하면, 단계 S32-3 내지 단계 S32-7이 실행된다. 이들 가운데 단계 S32-3은 도 3의 단계 S5-1과 동일하고, 물리적 어드레스 테이블을 이용하여 대응논리적 섹터 수를 조사하는 단계이며, 단계 S32-4는 도 3의 단계 S5-2와 동일하게 블록 맵(3)에의 기록 동작을 수행한다.
도 7에 도시한 제 1 실시예의 블록 맵(3)과 비교하여, 본 실시예의 블록 맵(3)에서, 블록이 F의 영역 또는 B 영역에 존재하는지를 나타내는 플래그가 부가된다. 이러한 상황이 도 16에 도시되고 있다. 단계 S32-5는 이 부분에 F를 기록하기 위한 단계이다.
단계 S32-2의 분기에서 F의 영역에 블록이 완전히 속하지 않는 경우, 물리적어드레스로의 할당이 실행되지 않고, 완전히 F의 영역 내에 있는 물리적 어드레스가 탐색된다. 단계 S32-6에서, 다음 물리적 어드레스가 스큐 및 갭으로부터 구해지고, 또한 그것이 어느 영역에 속하는지가 조사된다. 단계 S32-7에서는 내주가 판독되는지가 판단된다. 내주가 판독되지 않으면 S32-1로 점프하고, 단계 S32-2에서 다시 판단이 행해진다. 이런 식으로 전체 블록이 F의 영역에 속하는 물리적 어드레스가 얻어지는 동안 재시도가 반복된다. 이것이 블록에 할당된다.
예를 들면, 도 16에서, 제 1 실시예의 배열의 시스템의 경우, 다음 블록 번호 5는 물리적 어드레스(1/5/8)에 놓여지나, 나중 블록의 절반은 이런 식으로 실린더 번호 2상에서 연장한다. 실린더 번호 2는 B의 영역이므로 이 영역은 할당되지 않으며 다음에 할당되는 어드레스가 순차적으로 구해진다. 물리적 어드레스 포인터는 연속해서 앞으로 나아가고 물리적 어드레스(4/2/0)는 블록 번호 5에 대해 할당된다. 제 1 실시예에서와 같이, 중간을 스킵하지 않고 블록을 할당하는 방법과 본 실시예에서와 같이 중간을 스킵하면서 블록을 할당하는 방법에 있어서, 반경 방향의 거리(실린더 수)와 스큐 양 사이의 관계는 일정하게 유지되어야만 한다. 그러므로, 상기한 바와 같은 할당 방법이 이용된다. 이것이 실린더 번호 4의 선두(4/0/0)부터 시작하지 않는 이유이다. 상기 처리는 물리적 어드레스가 최내주에 이를 때까지 반복된다.
단계 S33 내지 S36에서는 B의 영역에 대해서 유사한 처리가 실행된다. B의 영역의 시작은 도 14에 도시한 바와 같이 실린더 번호 2이므로, 물리적 어드레스의 포인터는 단계 S33에서 이 어드레스로 초기화된다.
계속해서, 스큐의 부호는 단계 S34에서 반전된다. 영역 B는 내주쪽에서 외주쪽으로 엑세스되며, 따라서 실린더의 이동량은 네가티브로 된다. 그러므로, 스큐의 부호가 이에 대응하여 반전될 때, 내부에서 외부로의 헤드의 이동에 대한 최적 스큐가 구해진다.
단계 S35에서는 실제로 블록 맵상에 데이터를 기록하기 위한 단계이다. 이부분은 단계 S32-1 내지 단계 S32-6과 유사하다. 그러나 이는 다음의 방법에 있어서 단계 S32-1 내지 단계 S32-7과는 다르다.
(1) 블록 전체가 영역 B에 있을 때만 데이터는 블록 맵에 기록된다. 그렇지 않으면, 새로운 물리적 어드레스에 의해서 다른 시도가 행해진다.
(2) B는 블록 맵에 기록된다.
최종적으로, 단계 S36에서, 처리될 모든 블록이 처리되었는지가 결정된다.처리되지 않은 블록이 있다면, 처리 루틴은 단계 S31로 복귀한다. 모든 블록이 처리되었으면, 처리 루틴은 이 단계에서 멈추어진다.
도 16은 5012 블록이 영역 B에 전부 할당되는 경우의 예를 도시한다. 이때, 영역 B의 블록 수는 5013에서 시작되고, 블록의 할당은 다시 최내주에 이를 때까지 반복된다.
블록 할당기(1)가 상술한 바와 같은 구성으로 주어지기 때문에, 스케쥴러(2)는 헤드가 외주에서 내주로 이동할 때 스케줄링하는 어드레스 요청 버퍼로부터 영역 B를 엑세스하기 위한 요청만을 취출해내고 이것이 완료되어 내주에서 외주로 헤드가 이동할 때 스케쥴링하는 어드레스 요청 버퍼로부터 영역 B를 엑세스하기 위한 요청만을 취출한다. 이에 의해서 헤드의 이동 방향에 관계없이, 회전 지연은 최소레벨로 억압된다. 그러므로, 제 1 실시예에서는 항상 외주로 복귀하기 위해 헤드가 내주에 이르게 하기 위해 지연 시간이 초래되지만, 제 2 실시예에서는 이러한 지연 시간은 없다. 따라서 디스크의 성능이 향상된다.
제 1 실시예에서, 하나의 블록이 커서 복수의 트랙과 섹터상에서 연장할 때, 이러한 시간을 고려하는 또다른 스큐가 주어지면 효율성이 양호해진다. 제 2 실시예에서, 유사한 기술의 사용이 가능하다. 제 2 실시예에서, 내주에서 외주로 헤드가 이동할 때, 헤드는 순차적으로 내부 실린더에서 외부 실린더로 하나의 블록내의 엑세스시에 순차적으로 이동하며, 따라서 실린더 이동에 필요한 시간을 얻기 위한스큐가 외주에서 내주쪽으로 이동하는 방향과는 역방향으로 주어질 수도 있다.
도 14에 도시한 바와 같이, 실린더(50, 51)가 디스크상의 최내주에서 최외주로 분산되도록 실린더(50)와 실린더(51)를 제공함으로써, 디스크 엑세스 성능은 한층더 향상될 수 있다.
본 발명의 목적은 탐색 시간과 회전 지연 시간 모두를 억압함으로써 실시간 특성을 유지하면서 고속 랜덤 엑세스를 실현할 수 있는 기록 디스크에 대한 엑세스를 제어하는 방법 및 장치에 관한 것이다. 기록 디스크에 대한 엑세스를 제어하는 방법 및 그를 위한 장치는 멀티미디어 데이터의 저장 장치로서 보다 바람직하며 이러한 요구는 보다 증대하고 있다.
본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법은, 기록 디스크로의 헤드 엑세스 시에 평균 이동 거리의 회전 지연 시간이 단축되도록 스큐를 결정하고, 적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하고, 상기 헤드가 상기 기록 디스크에 엑세스할 때 상기 헤드의 이동량을 최소화하기 위해 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하고, 상기 스케쥴링 결과에 기초하여 상기 헤드에 의해 상기 기록 디스크에 엑세스하며, 상기 기록 디스크상에서의 상기 데이터 블록의 상기 위치 결정은, 상기 결정된 스큐에 부가하여, 동일 데이터 블록의 시작과 끝 사이의 각도 차를 나타내는 갭에 기초한다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법은 제어 스큐와 갭의 복수의 조합 데이터를 제공하며, 기록 디스크상의 위치에 따라서 선택적으로 사용되는 조합 데이터를 갖는다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법은 갭이 기록디스크의 외측 내지 내측에 이르는 전체 영역에 걸쳐 일정하도록 데이터 블록의 크기를 변화한다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법은 기록 트랙의 반경 차로 인해 발생된 데이터 블록의 갭의 변화에 따라서 스큐를 결정한다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법은 기록 헤드가 현재의 위치에서 기록 디스크의 내주 또는 외주 쪽으로 이동될 때 가장 가까운 엑세스 순서로 배열되도록 디스크 엑세스의 복수의 요청의 스케쥴링 순서를 변화시키고 다음의 수학식 (2)로 주어지는 지연 시간 Td(L)과 다음의 수학식 (3)으로 주어지는 평균 탐색 거리 부근의 탐색 시간 Ts(L)의 차이가 회전 사이클과 비교할 때 충분히 작도록 스큐와 갭을 결정한다.
[수학식 2]
[수학식 3]
La = Lt/(N-1)
여기서, L은 실린더 수의 단위로 탐색 거리,
Bc는 하나의 실린더에 존재하는 데이터 블록 수,
θs는 라디안 단위의 스큐,
θg는 라디안 단위의 갭,
ω는 디스크의 회전 속도(라디안/초),
Lt는 실린더 수의 단위로 엑세스 요청을 순서대로 배열할 때 두끝의 엑세스 위치들 사이의 거리의 최대치,
N 은 동시에 처리될 엑세스의 수,
m 은 Td(L)가 탐색 거리 L에서 탐색 시간 Ts(L)를 초과하는 경우의 범위 내에서 최소가 되도록 선택된다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법은 헤드가 현재의 위치에서 기록 디스크의 내주 또는 외주 쪽으로 이동할 때 출현 순서로 배열되도록 디스크 엑세스의 복수의 요청의 순서의 스케쥴링이 변화하고, 다음의 수학식(4)로 주어지는 지연 시간 Td(L)가 항상 탐색 시간 Ts(L) 보다 길고 지연 시간 Td(L)와 탐색 시간 간의 차이가 회전 사이클과 비교하여 충분히 작게 되도록 스큐와 갭을 결정한다.
[수학식 4]
Td(L) =(L·Bc·θs+θg)/ω
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법은 내주에서 외주로 헤드가 이동할 때 이용된 제 1 영역과 외주에서 내주로 헤드가 이동할 때 이용된 제 2 영역으로 분할된 메모리 디스크를 가지며, 헤드의 이동 방향에 기초하여각각의 영역에서 최적의 스큐 및 갭을 결정하도록 기록 디스크에서 데이터 블록의 위치를 결정하고 헤드의 이동 방향에 따라서 제 1 및 제 2 영역으로의 선택적인 스케쥴링 엑세스를 갖는다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법은 디스크 상의 최내주에서 최외주로 분산되도록 할당된 제 1 및 제 2 영역을 갖고, 제 1 영역 및 제 2 영역은 반경 방향을 따라 복수의 적어도 두 부분들로 디스크를 분할한다.
본 발명의 기록 디스크에 대한 엑세스를 제어하기 위한 장치는 헤드가 기록 디스크에 엑세스할 때 평균 이동 거리의 회전 지연 시간이 단축되도록 스큐를 결정하는 스큐 결정 수단과, 적어도 결정된 스큐에 기초하여 기록 디스크에 대한 데이터 블록의 위치를 결정하기 위한 데이터 블록 배열 수단과, 헤드의 이동량이 헤드에 의한 엑세스 시에 작아지도록 복수의 입력 디스크 엑세스 요청의 순서를 스케쥴하기 위한 스케쥴링 수단을 포함하며, 헤드는 스케쥴링의 결과에 기초하여 헤드에의한 기록 디스크에 대한 엑세스를 수행한다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 장치는 스큐에 부가하여 동일 데이터 블록의 시작과 끝 사이의 각도 차를 나타내는 갭에 기초하여 배열을 수행하는 데이터 블록 배열 수단을 갖는다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 장치는 제어 스큐와 갭의 복수의 조합 데이터를 가지며, 기록 디스크상의 위치에 따라서 선택적으로 조합 데이터 이용하는 데이터 블록 배열 수단을 가진다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 장치는 갭이 기록디스크의 외측 내지 내측에 이르는 전체 영역에 걸쳐 일정하도록 데이터 블록의 크기를 변화하는 데이터 블록 배열 수단을 가진다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 장치는 기록 트랙의 반경 차로 인해 발생된 데이터 블록의 갭의 변화에 따라서 스큐를 결정하는 스큐결정 수단을 가진다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 장치는 기록 헤드가 현재의 위치에서 기록 디스크의 내주 또는 외주쪽으로 이동될 때 가장 가까운 엑세스 순서로 배열되도록 디스크 엑세스의 복수의 요청의 순서를 변화시키는 스케쥴링수단을 가지며, 다음의 수학식 (5)로 주어지는 지연 시간 Td(L)과 다음의 수학식(6)으로 주어지는 평균 탐색 거리 부근의 탐색 시간 Ts(L)의 차이가 회전 사이클과 비교할 때 충분히 작도록 스큐와 갭을 결정하는 데이터 블록 배열 수단을 가진다.
[수학식 5]
[수학식 6]
La=Lt/(N-1)
여기서, L은 실린더 수의 단위로 탐색 거리,
Bc는 하나의 실린더에 존재하는 데이터 블록 수,
θs는 라디안 단위의 스큐,
θg는 라디안 단위의 갭,
ω는 디스크의 회전 속도(라디안/초),
Lt 는 실린더 수의 단위 순서의 엑세스 요청을 배열할 때 두끝의 엑세스 위치 사이의 거리의 최대치,
N 은 동시에 처리될 엑세스의 수,
m 은 Td(L)가 탐색 거리 L에서 탐색 시간 Ts(L)를 초과하는 경우의 범위 내에서 최소가 되도록 선택된다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 장치는 헤드가 현재의 위치에서 기록 디스크의 내주 또는 외주 쪽으로 이동할 때 출현 순서로 배열되도록 디스크 엑세스의 복수의 요청 순서를 변화시키는 스케쥴링 수단을 가지며, 다음의 수학식 7로 주어지는 지연 시간 Td(L)가 항상 탐색 시간 Ts(L) 보다 길고 지연 시간 Td(L)와 탐색 시간간의 차이가 회전 사이클과 비교하여 충분히 작게 되도록 스큐와 갭을 결정한다.
[수학식 7]
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 장치는 내주에서 외주로 헤드가 이동할 때 이용된 제 1 영역과 외주에서 내주로 헤드가 이동할 때 이용된 제 2 영역으로 분할된 메모리 디스크를 가지며, 헤드의 이동 방향에 기초하여 각각의 영역에서 최적의 스큐 및 갭을 결정하도록 기록 디스크에서 데이터 블록의 위치를 결정하는 데이터 블록 배열 수단을 가지며, 헤드의 이동 방향에 따라서 제 1 및 제 2 영역에 선택적으로 엑세스하는 스케쥴링 수단을 갖는다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 장치는 반경 방향을 따라서 적어도 두 부분으로 디스크를 분할하는 기록 디스크상의 제 1 및 제 2 영역과 디스크상의 최내주에서 최외주로 분산되도록 할당된 제 1 및 제 2 영역을 가진다.
본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법 및 장치에 있어서, 데이터 블록을 배열하는 경우, 블록은 원주 방향(소정의 스큐)으로 이동되도록 배열되고, 따라서 원하는 데이터의 시작이 탐색 동작간 헤드의 위치를 통과하지 않도록 제어가 행해진다. 이 때문에 원하는 데이터의 시작이 다시 복귀될 때까지 대기할 필요가 없고, 탐색 시간 및 회전 지연 시간은 낮게 억압되며, 랜덤 엑세스가 실시간 특성을 유지하면서 고속으로 실현가능하다.
또한, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법 및 장치에 있어서, 스큐는 외주에서 내주로 헤드가 이동할 때 사용된 영역과 내주에서 외주로 헤드가 이동할 때 사용된 영역 사이에서 변화됨에 따라서 최적의 스큐가 헤드의 이동 방향에 관계없이 주어질 수가 있다.
전술한 바와 같이, 본 발명의 기록 디스크에 대한 엑세스를 제어하는 방법 및 그 장치에 따르면, 기록 디스크의 오버헤드, 즉 탐색 시간과 회전 지연 시간의 합이 감축되고, 또한 그의 최대치가 낮은 값으로 보장될 수 있다.
또한, 본 발명에 따른 기록 디스크에 대한 엑세스를 제어하는 방법과 그의 장치에 따르면, 모든 영역에 대해서 헤드의 이동 방향에 대응하는 스큐를 부여함으로써, 헤드의 이동 방향에 무관하게 오버헤드를 줄이는 것이 가능하다.
헤드가 디스크에 엑세스하는 동안 또는 엑세스 기간 후에 헤드의 다음 엑세스 이동을 위한 스케쥴링이 결정된다. 다음의 엑세스가 시작되면, 헤드는 헤드의 다음 엑세스 이동을 위해 결정된 스케쥴링에 의해서 규정되는 시작 위치로 이동된다. 도 2의 장치의 가동 후의 헤드의 최초 엑세스 이동의 경우 헤드는 가동 후 최초 결정된 스케쥴링에 의해서 규정된 시작 위치로 이동된다.
비록 본 발명이 양호한 실시예들과 관련하여 기술되었지만, 본 발명은 이에 국한되지 않으며 당업자들에게 명백한 모든 변형예들을 포함한다.
Claims (28)
- 기록 디스크에 대한 엑세스를 제어하는 방법에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간을 최소화하는 스큐(skew)를 결정하는 단계와,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하는 단계와,상기 헤드가 상기 기록 디스크에 엑세스할 때 상기 헤드의 이동량을 최소화하기 위해 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하는 단계와,상기 스케쥴링 결과에 기초하여 상기 헤드에 의해 상기 기록 디스크에 엑세스하는 단계를 포함하고,상기 기록 디스크상에서의 상기 데이터 블록의 상기 위치 결정은, 상기 결정된 스큐에 부가하여, 동일 데이터 블록의 시작과 끝 사이의 각도 차를 나타내는 갭에 기초하는, 기록 디스크에 대한 엑세스 제어 방법.
- 제 1 항에 있어서,복수의 데이터 블록들에 대한 스큐와 갭의 각각의 조합에 관한 조합 데이터를 결정하는 단계와,상기 기록 디스크상에서의 각각의 데이터 블록의 위치에 따라서 상기 조합 데이터를 선택적으로 사용하는 단계를 더 포함하는, 기록 디스크에 대한 엑세스 제어 방법.
- 기록 디스크에 대한 엑세스를 제어하는 방법에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간을 최소화하는 스큐(skew)를 결정하는 단계와,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하는 단계와,상기 헤드가 상기 기록 디스크에 엑세스할 때 상기 헤드의 이동량을 최소화하기 위해 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하는 단계와,상기 스케쥴링 결과에 기초하여 상기 헤드에 의해 상기 기록 디스크에 엑세스하는 단계를 포함하고,상기 데이터 블록의 크기는 상기 갭이 상기 기록 디스크의 외측으로부터 내측까지의 전체 영역에 걸쳐 일정하도록 변화되는, 기록 디스크에 대한 엑세스 제어방법.
- 기록 디스크에 대한 엑세스를 제어하는 방법에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간을 최소화하는 스큐(skew)를 결정하는 단계와,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하는 단계와,상기 헤드가 상기 기록 디스크에 엑세스할 때 상기 헤드의 이동량을 최소화하기 위해 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하는 단계와,상기 스케쥴링 결과에 기초하여 상기 헤드에 의해 상기 기록 디스크에 엑세스하는 단계를 포함하고,상기 스큐는 기록 트랙의 반경의 차에 기초하여 데이터 블록의 갭의 변화에 따라서 결정되는, 기록 디스크에 대한 엑세스 제어 방법.
- 기록 디스크에 대한 엑세스를 제어하는 방법에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간을 최소화하는 스큐(skew)를 결정하는 단계와,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하는 단계와,상기 헤드가 상기 기록 디스크에 엑세스할 때 상기 헤드의 이동량을 최소화하기 위해 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하는 단계와,상기 스케쥴링 결과에 기초하여 상기 헤드에 의해 상기 기록 디스크에 엑세스하는 단계를 포함하고,상기 스케쥴링 단계는 디스크 엑세스에 대한 복수의 요청들의 순서를 변화시켜서, 상기 헤드가 현재의 위치로부터 상기 기록 디스크의 내주 및 외주중 하나를 향해 이동될 때에 상기 헤드에 가장 가까운 것으로부터 시작하는 순서로 상기 복수의 요청들이 배열되게 하고,상기 기록 디스크상에서의 데이터 블록의 위치를 결정하는 상기 단계는, 평균 탐색 거리 La 부근의 탐색 시간 Ts(L)과 지연 시간 Td(L) 간의 차가 회전 사이클과 비교할 때 충분히 작게 되도록, 상기 스큐에 부가하여 동일 데이터 블록의 시작과 끝 사이의 각도 차를 나타내는 갭에 기초하며, 여기서La = Lt/(N-1)이며,여기서, L은 실린더들의 수의 단위로 탐색 거리,Bc는 하나의 실린더에 존재하는 데이터 블록들의 수,θs는 라디안 단위의 스큐,θg는 라디안 단위의 갭,ω는 디스크의 회전 속도(라디안/초),Lt는 실린더들 수의 단위로 엑세스 요청들을 순서대로 배열할 때 두끝의 엑세스 위치들 사이의 거리의 최대치,N은 동시에 처리될 엑세스들의 수,m은 Td(L)가 탐색 거리 L에서 탐색 시간 Ts(L)를 초과하는 범위 내에서 최소가 되도록 선택되는, 기록 디스크에 대한 엑세스 제어 방법.
- 기록 디스크에 대한 엑세스를 제어하는 방법에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간을 최소화하는 스큐(skew)를 결정하는 단계와,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하는 단계와,상기 헤드가 상기 기록 디스크에 엑세스할 때 상기 헤드의 이동량을 최소화하기 위해 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하는 단계와,상기 스케쥴링 결과에 기초하여 상기 헤드에 의해 상기 기록 디스크에 엑세스하는 단계를 포함하고,상기 스케쥴링 단계는 디스크 엑세스에 대한 복수 요청들의 순서를 변화시켜서, 상기 헤드가 현재의 위치로부터 상기 기록 디스크의 내주 및 외주중 하나를 향해 이동되는 경우에 상기 복수의 요청들이 출현 순서대로 배열되게 하고,상기 기록 디스크상에서의 데이터 블록의 위치를 결정하는 상기 단계는, 지연 시간 Td(L)가 탐색 시간 Ts(L)보다 항상 더 길고 상기 지연 시간 Td(L) 및 상기 탐색 시간 Ts(L) 간의 차가 회전 사이클과 비교하여 충분히 작게 되도록, 상기 스큐에 부가하여, 갭에 기초하고, 여기서,여기서, L은 실린더들의 수의 단위로 탐색 거리,Bc는 하나의 실린더내에 존재하는 데이터 블록들의 수,θs는 라디안 단위의 스큐,θg는 라디안 단위의 갭,ω는 디스크의 회전 속도(라디안/초)인,기록 디스크에 대한 엑세스 제어 방법.
- 기록 디스크에 대한 엑세스를 제어하는 방법에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간을 최소화하는 스큐(skew)를 결정하는 단계와,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하는 단계와,상기 헤드가 상기 기록 디스크에 엑세스할 때 상기 헤드의 이동량을 최소화하기 위해 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하는 단계와,상기 스케쥴링 결과에 기초하여 상기 헤드에 의해 상기 기록 디스크에 엑세스하는 단계를 포함하고,상기 기록 디스크는, 상기 헤드가 내주로부터 외주로 이동할 때 사용하기 위한 제 1 영역들과, 상기 헤드가 외주로부터 내주로 이동할 때 사용하기 위한 제 2 영역들로 분할되며,상기 기록 디스크상에서의 데이터 블록의 위치를 결정하는 상기 단계는 상기 헤드의 이동 방향에 기초하여 각각의 영역들에서 최적의 스큐 및 갭에 기초해서 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하고,상기 스케쥴링 단계는 상기 헤드의 이동 방향에 따라서 상기 제 1 및 제 2 영역들에만 선택적으로 엑세스하는, 기록 디스크에 대한 엑세스 제어 방법.
- 제 7 항에 있어서,상기 기록 디스크상의 상기 제 1 영역들 및 상기 제 2 영역들은 상기 반경방향을 따라서 상기 디스크를 복수의 적어도 두 부분들로 분할하고, 상기 제 1 영역들 및 상기 제 2 영역들 모두 상기 디스크상의 최내주로부터 최외주로 분산되도록 할당되는, 기록 디스크에 대한 엑세스 제어 방법.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,상기 기록 디스크를 헤드가 엑세스할 때 평균 이동 거리의 회전 지연 시간이 최소화되도록 스큐를 결정하는 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 데이터 블록 배열 수단과,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴하기 위한 스케쥴링 수단을 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 데이터 블록 배열 수단은, 상기 스큐에 부가하여, 동일 데이터 블록의 시작과 끝 사이의 각도 차를 나타내는 갭에 기초하여 데이터 블록의 위치를 결정하는, 기록 디스크에 대한 엑세스 제어 장치.
- 제 9 항에 있어서,상기 데이터 블록 배열 수단은 복수의 데이터 블록들에 대한 상기 스큐 및 상기 갭의 각 조합에 관한 조합 데이터를 결정하며, 기록 디스크상에서의 각 데이터 블록의 위치에 따라서 상기 조합 데이터를 선택적으로 사용하는, 기록 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,상기 기록 디스크를 헤드가 엑세스할 때 평균 이동 거리의 회전 지연 시간이최소화되도록 스큐를 결정하는 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 데이터 블록 배열 수단과,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴하기 위한 스케쥴링 수단을 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 데이터 블록 배열 수단은 상기 갭이 상기 기록 디스크의 외측으로부터 내측까지의 전체 영역에 걸쳐 일정하도록 상기 데이터 블록의 크기를 변화시키는, 기록 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,상기 기록 디스크를 헤드가 엑세스할 때 평균 이동 거리의 회전 지연 시간이 최소화되도록 스큐를 결정하는 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 데이터 블록 배열 수단과,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴하기 위한 스케쥴링 수단을 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 스큐 결정 수단은 기록 트랙의 반경의 차에 기초하여 상기 데이터 블록의 갭의 변화에 따라서 상기 스큐를 결정하는, 기록 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,상기 기록 디스크를 헤드가 엑세스할 때 평균 이동 거리의 회전 지연 시간이 최소화되도록 스큐를 결정하는 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 데이터 블록 배열 수단과,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴하기 위한 스케쥴링수단을 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 스케쥴링 수단은 디스크 엑세스에 대한 복수의 요청들의 순서를 변화시켜서, 상기 헤드가 현재의 위치로부터 상기 기록 디스크의 내주 및 외주중 하나를 향해 이동될 때 상기 헤드에 가장 가까운 것으로부터 시작하는 순서로 상기 복수의 요청들이 배열되게 하고,상기 데이터 블록 배열 수단은, 다음의 식(2)에 의해 주어지는 평균 탐색 거리 La 부근의 탐색 시간 Ts(L)과 지연 시간 Td(L) 간의 차이가 회전 사이클과 비교할 때 충분히 작아지도록, 상기 스큐에 부가하여, 동일 데이터 블록의 시작과 끝사이의 각도 차를 나타내는 갭에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하며, 여기서여기서, L은 실린더들의 수의 단위로 탐색 거리,Bc는 하나의 실린더내에 존재하는 데이터 블록들의 수,θs는 라디안 단위의 스큐,θg는 라디안 단위의 갭,ω는 디스크의 회전 속도(라디안/초),Lt는 실린더들의 수의 단위로 엑세스 요청들을 순서대로 배열할 때 두 끝의 엑세스 위치들 사이의 거리의 최대치,N 은 동시에 처리될 엑세스들의 수,m은 Td(L)가 탐색 거리 L에서 탐색 시간 Ts(L)를 초과하는 범위내에서 최소가 되도록 선택되는, 기록 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,상기 기록 디스크를 헤드가 엑세스할 때 평균 이동 거리의 회전 지연 시간이 최소화되도록 스큐를 결정하는 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 데이터 블록 배열 수단과,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴하기 위한 스케쥴링 수단을 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 스케쥴링 수단은 디스크 엑세스에 대한 복수의 요청들의 순서를 변화시켜서, 상기 헤드가 현재의 위치로부터 상기 기록 디스크의 내주 및 외주중 하나를 향해서 이동될 때 상기 복수의 요청들이 출현 순서대로 배열되게 하고,상기 데이터 블록 배열 수단은, 다음의 식에 의해 주어지는 지연 시간 Td(L)가 탐색 시간 Ts(L)보다 항상 더 길고 상기 탐색 시간 Ts(L) 및 상기 지연 시간 Td(L) 간의 차이가 회전 사이클과 비교할 때 충분히 작게되도록, 상기 스큐에 부가하여, 갭에 기초해서 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하고, 여기서,L은 실린더들 수의 단위로 탐색 거리,Bc는 하나의 실린더내에 존재하는 데이터 블록들의 수,θs는 라디안 단위의 스큐,θg는 라디안 단위의 갭,ω는 디스크의 회전 속도(라디안/초)인,기록 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,상기 기록 디스크를 헤드가 엑세스할 때 평균 이동 거리의 회전 지연 시간이 최소화되도록 스큐를 결정하는 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 데이터 블록 배열 수단과,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴하기 위한 스케쥴링 수단을 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 기록 디스크는 상기 헤드가 내주로부터 외주로 이동할 때 사용하기 위한 제 1 영역들과, 상기 헤드가 외주로부터 내주로 이동할 때 사용하기 위한 제 2 영역들로 분할되며,상기 데이터 블록 배열 수단은 상기 헤드의 이동 방향에 기초하여 각각의 영역들에서 최적의 스큐 및 갭에 기초해서 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하고,상기 스케쥴링 수단은 상기 헤드의 이동 방향에 따라서 상기 제 1 및 제 2 영역들에만 선택적으로 엑세스하는, 기록 디스크에 대한 엑세스 제어 장치.
- 제 15 항에 있어서,상기 기록 디스크상의 상기 제 1 영역들 및 상기 제 2 영역들은 반경 방향을 따라 상기 디스크를 복수의 적어도 두 부분들로 분할하고, 상기 제 1 영역들 및 상기 제 2 영역들 모두 상기 디스크상의 최내주로부터 최외주로 분산되도록 할당되는, 기록 디스크에 대한 엑세스 제어 장치.
- 디스크에 대한 엑세스를 제어하는 방법에 있어서,상기 디스크가 헤드에 의해 엑세스될 때마다 평균 이동 거리에서의 회전 지연 시간을 최소화하도록 상기 디스크상에서의 데이터 블록의 위치를 결정하는 단계와,상기 헤드에 의해 상기 디스크가 엑세스될 때 상기 헤드의 이동량을 최소화하도록 복수의 디스크 엑세스 요청들의 순서를 스케쥴링하는 단계와,상기 스케쥴링의 결과에 기초하여 상기 헤드에 의해 상기 디스크에 엑세스하는 단계를 포함하고,상기 위치 결정 단계는,상기 헤드에 의한 디스크의 엑세스 시에 상기 평균 이동 거리에서의 상기 회전 지연 시간이 최소화하도록 스큐를 결정하는 단계와,적어도 그 결정된 스큐에 기초하여 상기 디스크상에서의 데이터 블록의 위치를 결정하는 단계를 더 포함하며, 상기 스큐는 인접 블록들의 시작 사이의 원주 방향으로의 각도 차를 나타내는, 디스크에 대한 엑세스 제어 방법.
- 제 17 항에 있어서,상기 위치 결정 단계는,상기 스큐에 부가하여, 동일 데이터 블록에서의 시작과 끝 사이의 각도 차를 나타내는 갭에 기초하여 상기 디스크상에서의 데이터 블록의 위치를 결정하는, 디스크에 대한 엑세스 제어 방법.
- 디스크에 대한 엑세스 제어 장치에 있어서,상기 디스크가 헤드에 의해 엑세스될 때마다 평균 이동 거리에서의 회전 지연 시간을 최소화하도록 상기 디스크상에서의 데이터 블록의 위치를 결정하기 위한 수단과,상기 헤드에 의해 상기 디스크가 엑세스될 때 상기 헤드의 이동량을 최소화하도록 복수의 디스크 엑세스 요청들의 순서를 스케쥴링하기 위한 수단과,상기 스케쥴링의 결과에 기초하여 상기 헤드에 의해 상기 디스크에 엑세스하기 위한 수단을 포함하고,상기 위치 결정 수단은,상기 헤드에 의한 상기 디스크의 엑세스 시에 평균 이동 거리에서의 회전 지연 시간이 최소화되도록 스큐를 결정하기 위한 수단과,적어도 그 결정된 스큐에 기초하여 상기 디스크상에서의 데이터 블록의 위치를 결정하기 위한 수단을 더 포함하며, 상기 스큐는 인접 블록들의 시작 사이의 원주 방향으로의 각도 차를 나타내는, 디스크에 대한 엑세스 제어 장치.
- 제 19 항에 있어서,상기 위치 결정 수단은, 상기 스큐에 부가하여, 동일 데이터 블록에서 시작과 끝 사이의 각도 차를 나타내는 갭에 기초하여 상기 디스크상에서의 데이터 블록의 위치를 결정하는, 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간이 최소화되도록 스큐를 결정하기 위한 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 블록 할당기와,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하기 위한 스케쥴러를 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 블록 할당기는, 상기 스큐에 부가하여, 동일 데이터 블록의 시작과 끝사이의 각도 차를 나타내는 갭에 기초하여 상기 데이터 블록의 위치를 결정하는, 기록 디스크에 대한 엑세스 제어 장치.
- 제 21 항에 있어서,상기 블록 할당기는 복수의 데이터 블록들에 대한 상기 스큐와 상기 갭의 각조합에 관한 조합 데이터를 결정하며, 상기 기록 디스크상에서의 각 데이터 블록의 위치에 따라서 상기 조합 데이터를 선택적으로 사용하는, 기록 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간이 최소화되도록 스큐를 결정하기 위한 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 블록 할당기와,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하기 위한 스케쥴러를 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 블록 할당기는 상기 갭이 상기 기록 디스크의 외측으로부터 내측까지의 전체 영역에 걸쳐 일정하도록 상기 데이터 블록의 크기를 변화시키는, 기록 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간이 최소화되도록 스큐를 결정하기 위한 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 블록 할당기와,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하기 위한 스케쥴러를 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 스큐 결정 수단은 기록 트랙의 반경의 차에 기초하여 상기 데이터 블록의 갭의 변화에 따라서 상기 스큐를 결정하는, 기록 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간이 최소화되도록 스큐를 결정하기 위한 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 블록 할당기와,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하기 위한 스케쥴러를 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 스케쥴러는 디스크 엑세스에 대한 복수의 요청들의 순서를 변화시켜서, 상기 헤드가 현재의 위치에서 상기 기록 디스크의 내주 및 외주중 하나를 향해 이동될 때 상기 헤드에 가장 가까운 것으로부터 시작하는 순서로 상기 복수의 요청들이 배열되게 하며,상기 블록 할당기는, 다음의 식 (2)에 의해 주어지는 평균 탐색 거리 La 부근의 탐색 시간 Ts(L)과 주어진 지연 시간 Td(L) 간의 차이가 회전 사이클과 비교할 때 충분히 작게 되도록, 상기 스큐에 부가하여, 동일 데이터 블록의 시작과 끝사이의 각도 차를 나타내는 갭에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하며, 여기서,이고, 여기서, L은 실린더들 수의 단위로 탐색 거리,Bc는 하나의 실린더내에 존재하는 데이터 블록들의 수,θs는 라디안 단위의 스큐,θg는 라디안 단위의 갭,ω는 디스크의 회전 속도(라디안/초),Lt는 실린더들 수의 단위로 엑세스 요청들을 순서대로 배열할 때 두끝의 엑세스 위치들 사이의 거리의 최대치,N 은 동시에 처리될 엑세스의 수,m은 Td(L)가 탐색 거리 L에서 탐색 시간 Ts(L)를 초과하는 범위내에서 최소가 되도록 선택되는, 기록 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간이 최소화되도록 스큐를 결정하기 위한 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 블록 할당기와,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하기 위한 스케쥴러를 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 스케쥴러는 디스크 엑세스에 대한 복수의 요청들의 순서를 변화시켜서, 상기 헤드가 현재의 위치로부터 상기 기록 디스크의 내주 및 외주 중 하나를 향해 이동될 때 출현 순서대로 상기 복수의 요청들이 배열되게 하며,상기 블록 할당기는, 다음의 식에 의해 주어지는 지연 시간 Td(L)가 탐색 시간 Ts(L)보다 항상 더 길고 탐색 시간 Ts(L)과 지연 시간 Td(L)간의 차이가 회전 사이클과 비교할 때 충분히 작아지도록, 상기 스큐에 부가하여, 갭에 기초해서 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하고, 여기서,이고, 여기서,L은 실린더들 수의 단위로 탐색 거리,Bc는 하나의 실린더에 존재하는 데이터 블록들의 수,θs는 라디안 단위의 스큐,θg는 라디안 단위의 갭,ω는 디스크의 회전 속도(라디안/초)인,기록 디스크에 대한 엑세스 제어 장치.
- 기록 디스크에 대한 엑세스 제어 장치에 있어서,헤드가 상기 기록 디스크에 엑세스할 때 평균 이동 거리에서의 회전 지연 시간이 최소화되도록 스큐를 결정하기 위한 스큐 결정 수단과,적어도 그 결정된 스큐에 기초하여 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하기 위한 블록 할당기와,상기 헤드의 이동량이 상기 헤드에 의한 상기 기록 디스크의 엑세스 시에 작게 되도록 복수의 입력 디스크 엑세스 요청들의 순서를 스케쥴링하기 위한 스케쥴러를 포함하며,상기 헤드는 상기 스케쥴링의 결과들에 기초하여 상기 기록 디스크에 엑세스하고,상기 기록 디스크는 상기 헤드가 내주로부터 외주로 이동할 때 사용하기 위한 제 1 영역들과, 상기 헤드가 외주로부터 내주로 이동할 때 사용하기 위한 제 2 영역들로 분할되며,상기 블록 할당기는 상기 헤드의 이동 방향에 기초하여 각각의 영역들에서의 최적의 스큐 및 갭에 기초해서 상기 기록 디스크상에서의 데이터 블록의 위치를 결정하고,상기 스케쥴러는 상기 헤드의 이동 방향에 따라서 상기 제 1 및 제 2 영역들에만 선택적으로 엑세스하는, 기록 디스크에 대한 엑세스 제어 장치.
- 제 27 항에 있어서,상기 제 1 영역들 및 상기 제 2 영역들은 반경 방향을 따라서 적어도 두 부분들로 상기 디스크를 분할하고, 상기 제 1 영역들 및 상기 제 2 영역들 모두 상기디스크상의 최내주로부터 최외주로 분산되도록 할당되는, 기록 디스크에 대한 엑세스 제어 장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP95-282175 | 1995-10-30 | ||
JP28217595 | 1995-10-30 | ||
PCT/JP1996/003109 WO1997016783A1 (en) | 1995-10-30 | 1996-10-24 | Methods and apparatus for controlling access to a recording disk |
Publications (2)
Publication Number | Publication Date |
---|---|
KR980700599A KR980700599A (ko) | 1998-03-30 |
KR100333019B1 true KR100333019B1 (ko) | 2002-10-04 |
Family
ID=17649071
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970704121A KR100333019B1 (ko) | 1995-10-30 | 1996-10-24 | 기록디스크엑세스제어방법및장치 |
Country Status (15)
Country | Link |
---|---|
US (2) | US5708632A (ko) |
EP (1) | EP0806003B1 (ko) |
KR (1) | KR100333019B1 (ko) |
CN (1) | CN1141637C (ko) |
AU (1) | AU702528B2 (ko) |
BR (1) | BR9607550A (ko) |
CA (1) | CA2207076C (ko) |
CZ (1) | CZ290692B6 (ko) |
DE (1) | DE69627134T2 (ko) |
ES (1) | ES2191112T3 (ko) |
MY (1) | MY115868A (ko) |
PL (1) | PL184898B1 (ko) |
RU (1) | RU2154309C2 (ko) |
TW (1) | TW332284B (ko) |
WO (1) | WO1997016783A1 (ko) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3659426B2 (ja) | 1994-09-02 | 2005-06-15 | ソニー株式会社 | エツジ検出方法及びエツジ検出装置 |
US6253296B1 (en) * | 1996-09-06 | 2001-06-26 | Intel Corporation | Disk block allocation optimization methodology and applications |
US6742080B1 (en) * | 1996-09-06 | 2004-05-25 | Intel Corporation | Disk block allocation optimization methodology and application |
US6434663B1 (en) | 1996-09-06 | 2002-08-13 | Intel Corporation | Disk block allocation optimization methodology with accommodation for file system cluster size greater than operating system memory page size |
EP0834878A2 (en) | 1996-10-04 | 1998-04-08 | Sony Corporation | Method and device for controlling access to a disc storage device |
US6772284B2 (en) * | 1997-03-18 | 2004-08-03 | Kabushiki Kaisha Toshiba | Disk apparatus capable of continuous display of data using a single recording head |
EP0910086A4 (en) * | 1997-04-07 | 2002-10-28 | Sony Corp | CUTTING SYSTEM AND METHOD |
US6072648A (en) * | 1997-08-14 | 2000-06-06 | Seagate Technology, Inc. | System and method for formatting disc surfaces |
WO1999015953A1 (en) * | 1997-09-24 | 1999-04-01 | Sony Pictures Entertainment, Inc. | Optimizing scheduler for read/write operations in a disk file system |
US6134063A (en) * | 1997-12-30 | 2000-10-17 | Lsi Logic Corporation | Automated multi-track transfers |
US6118873A (en) * | 1998-04-24 | 2000-09-12 | International Business Machines Corporation | System for encrypting broadcast programs in the presence of compromised receiver devices |
US6360053B1 (en) * | 1998-08-07 | 2002-03-19 | Replaytv, Inc. | Method and apparatus for fast forwarding and rewinding in a video recording device |
US20010043795A1 (en) * | 1998-08-07 | 2001-11-22 | Anthony Wood | Video data recorder for recording predefined format shows |
JP4473455B2 (ja) * | 1999-01-12 | 2010-06-02 | 富士通株式会社 | 記録媒体へのアクセスを制御するアクセス制御装置および方法 |
JP3255887B2 (ja) * | 1999-02-15 | 2002-02-12 | 松下電器産業株式会社 | 磁気ディスク装置およびそのディスクアクセス方法 |
US6339811B1 (en) * | 1999-04-21 | 2002-01-15 | Seagate Technologh Llc | Rotationally optimized seek initiation |
US7380137B2 (en) * | 1999-07-20 | 2008-05-27 | International Business Machines Corporation | Content guard system for copy protection of recordable media |
US6591287B1 (en) * | 1999-09-08 | 2003-07-08 | Lucent Technologies Inc. | Method to increase the efficiency of job sequencing from sequential storage |
US6438630B1 (en) | 1999-10-06 | 2002-08-20 | Sun Microsystems, Inc. | Scheduling storage accesses for multiple continuous media streams |
US6385673B1 (en) | 1999-10-06 | 2002-05-07 | Sun Microsystems, Inc. | System and method for adjusting performance of a media storage by decreasing a maximum throughput by a primary derate parameter to specify available & guaranteed rate parameters and determining ring buffer sizes for streams |
US6721789B1 (en) * | 1999-10-06 | 2004-04-13 | Sun Microsystems, Inc. | Scheduling storage accesses for rate-guaranteed and non-rate-guaranteed requests |
JP2001243639A (ja) * | 2000-02-28 | 2001-09-07 | Pioneer Electronic Corp | サーボ制御装置及びサーボ制御方法並びに情報再生装置 |
US6496899B1 (en) | 2000-02-28 | 2002-12-17 | Sun Microsystems, Inc. | Disk scheduling system with bounded request reordering |
FR2812957B1 (fr) * | 2000-08-14 | 2003-01-31 | Cit Alcatel | Procede de memorisation de donnees dans un fichier multimedia utilisant des bases de temps relatives |
US7043567B2 (en) * | 2002-07-22 | 2006-05-09 | Seagate Technology Llc | Method and apparatus for determining the order of execution of queued commands in a data storage system |
US7523256B2 (en) * | 2005-06-15 | 2009-04-21 | Bea Systems, Inc. | System and method for scheduling disk writes in an application server of transactional environment |
US7590799B2 (en) * | 2005-06-16 | 2009-09-15 | Seagate Technology Llc | OSD deterministic object fragmentation optimization in a disc drive |
US7463565B2 (en) * | 2005-08-30 | 2008-12-09 | Dt Soft Ltd. | Method of storing rotating media data in image file |
KR100883651B1 (ko) | 2006-05-18 | 2009-02-18 | 삼성전자주식회사 | 파일을 저장할 디스크의 공간을 할당하는 방법 및 장치 |
JP2008021380A (ja) * | 2006-07-14 | 2008-01-31 | Fujitsu Ltd | シーク制御装置、シーク制御方法、記憶装置 |
JPWO2008129616A1 (ja) * | 2007-04-09 | 2010-07-22 | 東芝ストレージデバイス株式会社 | 記憶装置、記憶装置の制御装置、記憶装置の制御方法 |
US8122501B2 (en) * | 2008-06-20 | 2012-02-21 | International Business Machines Corporation | Traitor detection for multilevel assignment |
US8108928B2 (en) * | 2008-06-20 | 2012-01-31 | International Business Machines Corporation | Adaptive traitor tracing |
US8422684B2 (en) * | 2008-08-15 | 2013-04-16 | International Business Machines Corporation | Security classes in a media key block |
US8571209B2 (en) | 2009-01-19 | 2013-10-29 | International Business Machines | Recording keys in a broadcast-encryption-based system |
US11650737B2 (en) * | 2019-11-26 | 2023-05-16 | International Business Machines Corporation | Disk offset-distance awareness data placement for storage system data protection |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5274507A (en) * | 1991-09-09 | 1993-12-28 | Paul Lee | Parallel data encoding for moving media |
US5581784A (en) * | 1992-11-17 | 1996-12-03 | Starlight Networks | Method for performing I/O's in a storage system to maintain the continuity of a plurality of video streams |
GB2273584B (en) * | 1992-12-16 | 1997-04-16 | Quantel Ltd | A data storage apparatus |
KR940022276A (ko) * | 1993-03-11 | 1994-10-20 | 오오가 노리오 | 병렬연산 처리장치 |
AU2123995A (en) * | 1994-03-18 | 1995-10-09 | Micropolis Corporation | On-demand video server system |
-
1996
- 1996-10-18 TW TW085112760A patent/TW332284B/zh not_active IP Right Cessation
- 1996-10-21 US US08/731,861 patent/US5708632A/en not_active Expired - Fee Related
- 1996-10-24 KR KR1019970704121A patent/KR100333019B1/ko not_active IP Right Cessation
- 1996-10-24 EP EP96935436A patent/EP0806003B1/en not_active Expired - Lifetime
- 1996-10-24 PL PL96322016A patent/PL184898B1/pl not_active IP Right Cessation
- 1996-10-24 DE DE69627134T patent/DE69627134T2/de not_active Expired - Fee Related
- 1996-10-24 CZ CZ19972013A patent/CZ290692B6/cs not_active IP Right Cessation
- 1996-10-24 RU RU97112873/28A patent/RU2154309C2/ru not_active IP Right Cessation
- 1996-10-24 AU AU73363/96A patent/AU702528B2/en not_active Ceased
- 1996-10-24 CA CA002207076A patent/CA2207076C/en not_active Expired - Fee Related
- 1996-10-24 WO PCT/JP1996/003109 patent/WO1997016783A1/en active IP Right Grant
- 1996-10-24 ES ES96935436T patent/ES2191112T3/es not_active Expired - Lifetime
- 1996-10-24 CN CNB961913037A patent/CN1141637C/zh not_active Expired - Fee Related
- 1996-10-24 BR BR9607550A patent/BR9607550A/pt not_active IP Right Cessation
- 1996-10-30 MY MYPI96004529A patent/MY115868A/en unknown
-
1997
- 1997-07-10 US US08/889,906 patent/US5914916A/en not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
IEEE TRANSACTIONS ON COMPUTERS, vol. 40, no.1, (1 January 1991), NEW YORK, (USA), SPENCER W.,"Improving Disk Performance Via Latency Reduction", p.22-30 * |
Also Published As
Publication number | Publication date |
---|---|
MX9704391A (es) | 1997-10-31 |
DE69627134D1 (de) | 2003-05-08 |
ES2191112T3 (es) | 2003-09-01 |
CN1141637C (zh) | 2004-03-10 |
BR9607550A (pt) | 1998-07-07 |
KR980700599A (ko) | 1998-03-30 |
CN1166883A (zh) | 1997-12-03 |
CZ290692B6 (cs) | 2002-09-11 |
CA2207076C (en) | 2001-02-27 |
AU7336396A (en) | 1997-05-22 |
CZ9702013A3 (cs) | 2002-05-15 |
US5708632A (en) | 1998-01-13 |
US5914916A (en) | 1999-06-22 |
WO1997016783A1 (en) | 1997-05-09 |
EP0806003A1 (en) | 1997-11-12 |
DE69627134T2 (de) | 2004-02-19 |
MY115868A (en) | 2003-09-30 |
PL184898B1 (pl) | 2003-01-31 |
PL322016A1 (en) | 1998-01-05 |
CA2207076A1 (en) | 1997-05-09 |
RU2154309C2 (ru) | 2000-08-10 |
TW332284B (en) | 1998-05-21 |
EP0806003B1 (en) | 2003-04-02 |
AU702528B2 (en) | 1999-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100333019B1 (ko) | 기록디스크엑세스제어방법및장치 | |
US5574662A (en) | Disk-based digital video recorder | |
Gemmell et al. | Multimedia storage servers: A tutorial | |
US7809252B2 (en) | Systems and methods for caching multimedia data | |
EP0781432B1 (en) | Multimedia editing system using pre-caching data utilizing thread lists | |
US5765204A (en) | Method and apparatus for adaptive localization of frequently accessed, randomly addressed data | |
US6941419B2 (en) | Method and apparatus for disc drive buffer segment management | |
CA2138300A1 (en) | System and method for user definition of data storage device physical format | |
US6564292B2 (en) | Optimizing allocation of sectors in disc drives | |
JP2001111937A (ja) | データ記録・再生装置、映像データの記録・再生方法、ディスクドライブユニットおよびデータ記録・再生装置の制御ユニット | |
JPH09185864A (ja) | 記録ディスクアクセス制御方法およびその装置 | |
US6314232B2 (en) | Data allocation method, recording medium with data recorded by the method, and data server apparatus | |
US20040019597A1 (en) | Information processing apparatus, method of controlling information processing apparatus, control program for information processing apparatus and recording medium having control program recorded thereon for information processing apparatus | |
JP3809674B2 (ja) | ディスク制御方法および装置 | |
JP2004158179A (ja) | 記録ディスクアクセス制御方法およびその装置 | |
EP1434223B1 (en) | Method and apparatus for multiple data access with pre-load and after-write buffers in a video recorder with disk drive | |
JPH0817171A (ja) | ディスク制御方法および装置 | |
Tse et al. | Improving multimedia systems performance using constant-density recording disks | |
JP3329083B2 (ja) | データ記憶装置及び方法 | |
JP2001118365A (ja) | 記憶階層管理システム、記憶階層管理方法及び記憶階層管理プログラムを記録した記録媒体 | |
MXPA97004391A (en) | Method and apparatus for controlling access to a regis disc | |
JP2001014110A (ja) | ファイル記録再生方法および装置 | |
JPH09330566A (ja) | 情報記録媒体及び情報格納方法 | |
JPH09190294A (ja) | 連続情報記録再生装置 | |
JPH11345094A (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 | ||
FPAY | Annual fee payment |
Payment date: 20090330 Year of fee payment: 8 |
|
LAPS | Lapse due to unpaid annual fee |