В блочных устройствах хранения данных, таких как жесткие диски , чередование — это метод, используемый для улучшения производительности медленной системы путем помещения данных, к которым осуществляется последовательный доступ, в непоследовательные блоки, обычно секторы . Количество физических секторов между последовательными логическими секторами называется коэффициентом пропуска чередования или коэффициентом пропуска . [1] [2] [3]
Исторически чередование использовалось в
Чередование использовалось для наиболее эффективного расположения секторов, так что после считывания сектора отводилось время на обработку, а затем следующий сектор в последовательности был готов к считыванию, как раз когда компьютер был готов это сделать. Таким образом, соответствие чередования секторов скорости обработки ускоряет передачу данных, но неправильное чередование может привести к значительному замедлению работы системы.
Информация обычно хранится на дисках небольшими частями, называемыми секторами или блоками . Они расположены в концентрических кольцах, называемых дорожками , по всей поверхности каждого диска. Хотя может быть проще всего упорядочить блоки непосредственно на каждой дорожке как 1 2 3 4 5 6 7 8 9, для ранних вычислительных устройств последовательный порядок был непрактичен.
Данные для записи или чтения сохраняются в специальной области повторно используемой памяти, называемой буфером . Когда данные требовалось записать, они перемещались в буфер, а затем записывались из буфера на диск. Когда данные считывались, обратный процесс переносил данные сначала в буфер, а затем в системную оперативную память . Большинство ранних компьютеров были недостаточно быстрыми, чтобы прочитать сектор, переместить данные из буфера в системную оперативную память и быть готовыми прочитать следующий сектор к тому времени, когда следующий сектор появлялся под считывающей головкой.
Если бы сектора были расположены в прямом порядке, то после считывания первого сектора компьютер мог бы, например, иметь секторы 2, 3 и 4, проходящие под считывающей головкой, прежде чем он был бы готов снова принимать данные. Компьютеру не нужны секторы 5, 6, 7, 8, 9 или 1, и он должен ждать, пока они пройдут, прежде чем считывать сектор 2. Это ожидание, пока диск не сделает оборот к следующему сектору, замедляет скорость передачи данных.
Чтобы скорректировать задержки обработки, идеальным чередованием для этой системы было бы 1:4, при этом секторы располагаются следующим образом: 1 8 6 4 2 9 7 5 3. Система считывает сектор 1, затем обрабатывает его, пока проходят три сектора 8 6 и 4, а когда микропроцессор снова становится готовым, сектор 2 поступает как раз в тот момент, когда он нужен.
Чередование 1:1 (коэффициент пропуска 0) размещает сектора последовательно — 1 2 3 4 5 6 ... .
Современные блочные устройства хранения данных не требуют чередования. Данные теперь обычно хранятся в виде кластеров (групп секторов), а буфер данных достаточно большой, чтобы все секторы в блоке могли быть прочитаны одновременно без какой-либо задержки между секторами.
Современные компьютеры быстрее жестких дисков — когда это было не так, были распространены большие коэффициенты чередования, но теперь стандартным является чередование 1:1.