46444 (607841), страница 2
Текст из файла (страница 2)
При начальной разметке и тестировании современного винчестера на заводе почти всегда обнаруживаются дефектные сектора, которые заносятся в специальную таблицу переназначения. При обычной работе контроллер винчестера подменяет эти сектора резервными, которые специально оставляются для этой цели на каждой дорожке, группе дорожек или выделенной зоне диска. Благодаря этому новый винчестер создает видимость полного отсутствия дефектов поверхности, хотя на самом деле они есть почти всегда.
При включении питания процессор винчестера выполняет тестирование электроники, после чего выдает команду включения шпиндельного двигателя. При достижении некоторой критической скорости вращения плотность увлекаемого поверхностями дисков воздуха становится достаточной для преодоления силы прижима головок к поверхности и поднятия их на высоту от долей до единиц микрон над поверхностями дисков - головки "всплывают". С этого момента и до снижения скорости ниже критической головки "висят" на воздушной подушке и совершенно не касаются поверхностей дисков.
После достижения дисками скорости вращения, близкой к номинальной (у IDE винчестеров обычно - 3600, 4500, 5400 или 7200 об/мин) головки выводятся из зоны парковки и начинается поиск сервометок для точной стабилизации скорости вращения. Затем выполняется считывание информации из служебной зоны - в частности, таблицы переназначения дефектных участков.
В завершение инициализации выполняется тестирование позиционера путем перебора заданной последовательности дорожек - если оно проходит успешно, процессор выставляет на интерфейс признак готовности и переходит в режим работы по интерфейсу.
Во время работы постоянно работает система слежения за положением головки на диске: из непрерывно считываемого сигнала выделяется сигнал рассогласования, который подается в схему обратной связи, управляющую током обмотки позиционера. В результате отклонения головки от центра дорожки в обмотке возникает сигнал, стремящийся вернуть ее на место.
Для согласования скоростей потоков данных - на уровне считывания/записи и внешнего интерфейса - винчестеры имеют промежуточный буфер, часто ошибочно называемый кэшем, объемом обычно в несколько десятков или сотен килобайт. В ряде моделей (например, Quantum) буфер размещается в общем рабочем ОЗУ, куда вначале загружается оверлейная часть микропрограммы управления, отчего действительный объем буфера получается меньшим, чем полный объем ОЗУ (80-90 кб при ОЗУ 128 кб у Quantum). У других моделей (Conner, Caviar) ОЗУ буфера и процессора сделаны раздельными.
При отключении питания процессор, используя энергию, оставшуюся в конденсаторах платы либо извлекая ее из обмоток двигателя, который при этом работает как генератор, выдает команду на установку позиционера в парковочное положение, которая успевает выполниться до снижения скорости вращения ниже критической. В некоторых винчестерах (Quantum) этому способствует помещенное между дисками подпружиненное коромысло, постоянно испытывающее давление воздуха. При ослаблении воздушного потока коромысло дополнительно толкает позиционер в парковочное положение, где тот фиксируется защелкой. Движению головок в сторону шпинделя способствует также центростремительная сила, возникающая из-за вращения дисков.
3. Работа жесткого диска
Теперь - собственно о процессе работы винчестера. После начальной настройки электроники и механики микрокомпьютер винчестера переходит в режим ожидания команд от контроллера, расположенного на системной плате или интерфейсной карте. Получив команду, он включает нужную головку, по сервоимпульсам отыскивает нужную дорожку, дожидается, пока до головки "доедет" нужный сектор, и выполняет считывание или запись информации. Если контроллер запросил чтение/запись не одного сектора, а нескольких - винчестер может работать в так называемом блочном режиме, используя ОЗУ в качестве буфера и совмещая чтение/запись с передачей информации к контроллеру или от него.
Для оптимального использования поверхности дисков применяется так называемая зоновая запись (Zoned Bit Recording - ZBR), принцип которой состоит в том, что на внешних дорожках, имеющих большую длину (а следовательно - и информационную емкость), информация записывается с большей плотностью, чем на внутренних. Таких зон с постоянной плотностью записи в пределах всей поверхности образуется до десятка и более; соответственно, скорость чтения и записи на внешних зонах выше, чем на внутренних. Благодаря этому файлы, расположенные ближе к "началу" винчестера, в целом будут обрабатываться быстрее файлов, расположенных ближе к его "концу".
Теперь о том, откуда берутся неправдоподобно большие количества головок, указанные в параметрах винчестеров. Когда-то эти числа - число цилиндров, головок и секторов на дороже - действительно обозначали реальные физические параметры (геометрию) винчестера. Однако при использовании ZBR количество секторов меняется от дорожки к дорожке, и для каждого винчестера эти числа различны - поэтому стала использоваться так называемая логическая геометрия, когда винчестер сообщает контроллеру некие условные параметры, а при получении команд сам преобразует логические адреса в физические. При этом в винчестере с логической геометрией, например, в 520 цилиндров, 128 головок и 63 сектора (общий объем - 2 Гб) находится, скорее всего, два диска - и четыре головки чтения/записи.
В винчестерах последнего поколения используются технологии PRML (Partial Response, Maximum Likelihood - максимальное правдоподобие при неполном отклике) и S.M.A.R.T. (Self Monitoring Analysis and Report Technology - технология самостоятельного следящего анализа и отчетности). Первая разработана по причине того, что при существующих плотностях записи уже невозможно четко и однозначно считывать сигнал с поверхности диска - уровень помех и искажений очень велик. Вместо прямого преобразования сигнала используется его сравнение с набором образцов, и на основании максимальной похожести делается заключение о приеме того или иного кодового слова - примерно так же мы читаем слова, в которых пропущены или искажены буквы.
Винчестер, в котором реализована технология S.M.A.R.T., ведет статистику своих рабочих параметров (количество старт/стопов и наработанных часов, время разгона шпинделя, обнаруженные/исправленные ошибки и т.п.), которая регулярно сохраняется в перепрограммируемом ПЗУ или в служебных зонах диска. Эта информация накапливается в течение всей жизни винчестера и может быть в любой момент затребована программами анализа; по ней можно судить о состоянии механики, условиях эксплуатации или примерной вероятности выхода из строя.
4. Объем, скорость и время доступа
Основными задачами производителей всегда было увеличение объема хранящейся на дисках информации и скорости работы с этой информацией. Как увеличить объем диска? Наиболее очевидным решением является увеличение количества пластин в корпусе жесткого диска. Подобным образом обычно различаются модели в пределах одного модельного ряда. Этот способ является наиболее простым и позволяет на одной и той же элементной базе получать диски различной емкости. Но у этого способа существуют естественные ограничения: количество дисков не может быть бесконечным. Увеличивается нагрузка на мотор, ухудшаются температурные и шумовые характеристики диска, вероятность брака растет пропорционально количеству пластин, а значит, труднее обеспечить надежность. Среди промышленно производимых дисков наибольшим количеством пластин обладает SCSI диск Seagate Barracuda 180 - у этого винчестера аж 12 пластин! Есть и рекордсмены в области упрощения устройства дисков - это, например, рассмотренный нами далее Maxtor 513DX и 541DX, у которого один диск, используемый только с одной стороны.
Технологически более сложный (и более перспективный) метод увеличения объема - увеличение плотности записи информации. Тут возникает целый ряд технологических проблем. Современные пластины изготовляются из алюминия или даже из стекла (некоторые модели IBM). Магнитное покрытие имеет сложную многослойную структуру и покрыто сверху специальным защитным слоем. Размеры частиц магнитного покрытия уменьшаются, а чувствительность их возрастает. Помимо улучшения параметров самих пластин, существенным усовершенствованиям должна подвергнуться система считывания информации. Необходимо уменьшить зазор между головкой и поверхностью пластины, повысить чувствительность головки. Но и тут законы физики накладывают свои естественные ограничения на предел применения подобных технологий. Ведь размеры магнитных частиц не могут уменьшаться бесконечно.
Самый простой способ увеличить скорость считывания - увеличить скорость вращения пластин. По этому пути и пошли конструкторы. Если пластины вращаются с большей скоростью, то за единицу времени под считывающей головкой проходит больше информации. На увеличение скорости считывания влияет также и рассмотренное выше увеличение плотности записи информации. Именно по этой причине SCSI диски, как правило, обладают большей скоростью вращения. Однако на такой скорости сложнее точно позиционировать головку считывания, поэтому плотность записи там меньше, чем на некоторых IDE дисках, а стоят такие диски больше.
Так как головка при поиске информации перемещается только поперек диска, она вынуждена "ждать", пока диск повернется и сектор с запрашиваемыми данными окажется доступным для чтения. Это время зависит только от скорости вращения диска и называется временем ожидания информации (latency). Но необходимо понимать, что общее время доступа к информации определяется временем поиска нужной дорожки на диске и временем позиционирования внутри этой дорожки. Увеличение скорости вращения диска уменьшает лишь последнее значение. Для уменьшения времени поиска нужной дорожки совершенствуют привод считывающей головки и… уменьшают диаметр пластин диска. Почти все современные винчестеры выпускаются с пластинами диаметром 2,5 дюйма.
Позиционирование головки вообще является отдельной весьма нетривиальной проблемой. Достаточно сказать, что при современной плотности записи приходится учитывать даже тепловое расширение! Таким образом, увеличение скорости вращения диска существенно затрудняет точное позиционирование головки. И в попытках увеличить быстродействие диска иногда приходится жертвовать объемом, используя пластины с меньшей плотностью записи. Неудивительно, что наиболее дорогие и быстрые винчестеры, отличающиеся более высокой скоростью вращения, не используют максимальной технологически доступной на данный момент плотности записи. За скорость приходится платить.
Так какому диску отдать предпочтение? При одинаковом объеме большего внимание заслуживают модели с большей плотностью записи, по сравнению с моделями с большим количеством дисков, хотя бы потому, что у них выше линейная скорость чтения/записи (большие файлы читаются быстрее). Скорость доступа к информации напрямую зависит от скорости вращения пластин (быстрее работа с большим количеством мелких файлов). Но увеличение скорости приводит к удорожанию изделий, а иногда приходится жертвовать и плотностью записи.
5. Интерфейсы жестких дисков
Развитие интерфейсов винчестеров шло двумя параллельными путями: дешевым и дорогим. Дорогое решение заключалось в создании на плате самого винчестера отдельного интеллектуального контроллера, который бы брал на себя значительную часть работы по взаимодействию с винчестером. Результатом этого подхода явился интерфейс SCSI, который быстро завоевал популярность на рынке серверов. Одним из преимуществ этого подхода являлась возможность подключения к компьютеру значительного для того времени количества устройств, требующих для своей работы широкого канала передачи данных.
Простое и дешевое решение - переложить значительную часть операций по вводу-выводу на центральный процессор. У этого решения вполне очевидный недостаток: снижение общей вычислительной мощности системы, особенно заметное при многозадачной работе. А в те времена, когда процессоры не были такими мощными, это сильно ограничивало возможности, в частности, файловых серверов. Результатом воплощения в жизнь этого подхода явился широко распространенный интерфейс IDE.
Этот интерфейс был сравнительно дешев и, хотя не был самым производительным, полностью вытеснил другие интерфейсы с рынка дешевых и недорогих систем. Он постепенно развивался, и со временем появились стандарты UDMA, существенно ускоряющие работу винчестеров, интерфейсы IDE стали более интеллектуальными. А так как производительность процессоров росла быстрее производительности винчестеров, то ограничения интерфейса IDE играли все меньшую роль.
Тем самым на сегодня мы имеем два типа винчестеров: высокопроизводительные SCSI и "ширпотреб" - IDE. Принципиальных различий в устройстве самих винчестеров SCSI и IDE нет, но исторически сложилось, что SCSI рассчитан на сегмент дорогих серверных решений, поэтому в среднем они быстрее и, как следствие, существенно дороже.
Пропускная скорость SCSI значительно выше IDE, целых 160 Мб/с. А IDE работает со скоростью 33, 66 и 133 Мб/с. Соответствующие стандарты называются ATA/33, ATA/66 и ATA/133.
В феврале 2000 года на официальном Форуме разработчиков Intel было объявлено о формировании рабочей группы по созданию стандарта последовательного ATA – SATA (Serial ATA). В течение последних восьми идет процесс постепенного вытеснения параллельного ATA его последовательным собратом SATA.
В SATA используется 7-жильный кабель для обмена данными; обмен происходит по 1 биту за такт (в кабеле 1 линия для приема и 1 – для передачи) и 15-жильный силовой кабель. Одним кабелем можно подключить только одно устройство, что отменяет необходимость устанавливать перемычки (джампера) для устройства Master/Slave. Узкий кабель в гораздо большей мере, чем шлейф параллельного ATA, способствует циркуляции воздуха внутри корпуса PC. Но самое главное – это скорость. Стандарт SATA-150 осуществляет передачу со скоростью 150 Мб/с, что в полтора раза выше, чем UDMA/100. Но SATA-300 и SATA-600 предполагают скорости 300 MBps и 600 MBps соответственно.
Технология SAS, преемница параллельного интерфейса SCSI, опирается на проверенную временем высокую функциональность своего предшественника и обещает значительно расширить возможности современных систем хранения данных масштаба предприятия. SAS обладает целым рядом преимуществ, не доступных традиционным решениям в области хранения данных. В частности, SAS позволяет подключать к одному порту до 16 256 устройств и обеспечивает надёжное последовательное соединение “точка-точка” со скоростью до 3 Гб/с.








