디스크 버퍼

미리 읽기/뒤로 읽기 편집

디스크의 컨트롤러가 물리적 읽기를 실행할 때,액추에이터는 읽기/쓰기 헤드를 올바른 실린더로(또는 그 근처)이동시키고,판독 헤드가 트랙 데이터를 픽업하기 시작하고,플래터 회전이 요청된 데이터를 가져올 때까지 기다려야 한다.

이 대기 중에 요청보다 앞서 읽은 데이터는 요청되지 않지만 무료이므로 일반적으로 나중에 요청되는 경우 디스크 버퍼에 저장됩니다.

마찬가지로,실행해야 할 다른 읽기가 없거나 다음 작동이 나중에 시작되어 제 시간에 완료 될 수 있기 때문에 헤드가 궤도에 머물 수 있다면 요청 된 데이터 뒤에서 데이터를 무료로 읽을 수 있습니다.

여러 개의 요청된 읽기가 동일한 트랙(또는 나선형 트랙)에 있는 경우,이들 사이의 요청되지 않은 대부분의 데이터는 앞뒤 읽기가 됩니다.

속도 매칭편집

컴퓨터에 대한 디스크의 입출력 인터페이스의 속도는 하드 디스크 플래터로 전송되는 속도와 거의 일치하지 않습니다. 입력/출력 공용영역 및 디스크 읽기/쓰기 머리가 둘 다 전속력으로 작동할 수 있다 그래야 디스크 완충기는 이용됩니다.

쓰기 가속도편집

디스크의 내장 마이크로 컨트롤러는 데이터가 실제로 플래터에 기록되기 전에 쓰기 데이터를 수신 한 직후 디스크 쓰기가 완료되었음을 주 컴퓨터에 알릴 수 있습니다. 이 초기 신호는 데이터가 실제로 아직 작성되지 않은 경우에도 주 컴퓨터가 계속 작동 할 수있게합니다. 데이터가 자기 매체에 영구적으로 고정되기 전에 전원이 손실되면 디스크 버퍼에서 데이터가 손실되고 디스크의 파일 시스템이 일치하지 않는 상태로 남아있을 수 있기 때문에 다소 위험 할 수 있습니다.

일부 디스크에서는 쓰기 완료 신호와 데이터 고정 사이의 취약한 기간이 임의로 길어질 수 있는데,이는 새로 도착하는 요청에 의해 쓰기가 무기한 지연될 수 있기 때문입니다. 이러한 이유로 쓰기 가속의 사용은 논란의 여지가 있습니다. 그러나 데이터 캐싱을 위해 배터리 지원 메모리 시스템을 사용하여 일관성을 유지할 수 있지만 일반적으로 하이 엔드 레이드 컨트롤러에서만 찾을 수 있습니다.

또는 쓰기 성능보다 데이터의 무결성이 더 중요하다고 간주될 때 캐싱을 간단히 해제할 수 있습니다. 또 다른 옵션은 신중하게 관리되는 순서로 데이터를 디스크에 보내고 적절한 위치에”캐시 플러시”명령을 실행하는 것입니다.이 명령을 일반적으로 쓰기 장벽 구현이라고합니다.”명령 큐”를 통해 하나의 명령이 작동하는 동안에는 여러 명령을 사용할 수 있습니다. 이 명령은 완료될 때까지 디스크의 끼워넣어진 관제사에 의해 저장됩니다. 한 가지 이점은 디스크의 동일한 영역에 영향을 미치는 명령이 함께 그룹화되도록 명령을 더 효율적으로 처리하도록 다시 정렬 할 수 있다는 것입니다. 읽기가 대기 중인 쓰기 대상의 데이터를 참조할 경우 쓸 데이터가 반환됩니다.

일반적으로 사용 가능한 쓰기 버퍼링과 함께 사용됩니다. 읽기/쓰기 명령이 0 으로 설정되고 쓰기 버퍼링이 활성화된 경우 운영 체제에서 데이터가 물리적으로 미디어에 기록되기 전에 쓰기 작업이 완료된 것을 볼 수 있습니다. 비트가 1 로 설정되고 쓰기 버퍼링이 활성화 된 경우 쓰기 작업은 데이터가 물리적으로 미디어에 기록 된 후에 만 반환됩니다.



+