К. Хамахер, З. Вранешич, С. Заки - Организация ЭВМ - 5-е издание (2003) (1114649), страница 90
Текст из файла (страница 90)
Среднее время поиска составляет 6 мс. Диск вращается со скоростью 10 000 об/мин, так что средняя задержка позиционирования равна 3 мс (половина от времени одного оборота). Среднее время внутренней пересылки данных от дорожки в буфер данных дискового контроллера составляет 34 Мбайт/с. Если диск подключен к шине БСБ1, его внешняя скорость пересылки 384 Глава 5. Система памяти может быть равной 160 Мбайт/с. Таким образом, для сглаживания различия в скоростях пересылки данных необходима схема буферизации, описанная в следующем разделе. Существуют диски н меньших габаритов. Например, на 1-дюймовом диске может храниться 1 Гбайт данных. Такой диск размером со спичечный коробок весит менее унции (28,3 г). Его можно использовать в портативном оборудовании и карманных устройствах.
В цифровой камере на нем может храниться порядка 1000 фотографий. Интересно, что первый диск емкостью 1 Гбайт был создан 1ВМ в 1980 году. Этот диск имел размер кухонного оборудования, весил 250 кг и стоил 40 тыс. долларов. Буфер данных С остальной частью компьютерной системы жесткий диск соединяется так же, как любые другие устройства. Обычно для этого применяется стандартная шина, в частности шина ЯС81, описанная в разделе 4.7.2. Дисковое устройство с интегрированным интерфейсом ЯСЯ1 обычно называют ЯС81-диском. Шина ЯС81 позволяет пересылать данные с гораздо более высокой скоростью, чем они могут считываться с дисковых дорожек. Поэтому для сглаживания разницы в скорости в дисковое устройство интегрируется буфер данных, представляющий собой полупроводниковую память, в которой может храниться несколько мегабайтов данных. Запрошенные данные пересылаются между дисковыми дорожками и буфером со скоростью, определяемой скоростью вращения диска.
А пересылка данных между этим буфером и другими подключенными к шине устройствами может выполняться с максимальной скоростью шины. У буфера данных имеется еще одно назначение: он часто используется для кэширования данных диска. Когда диск получает запрос на чтение, контроллер проверяет, нет ли нужных данных в кэше (буфере). Если они там присутствуют, поместить их на шину ЯС81 можно не в течение нескольких миллисекунд, как в случае непосредственного обращения к диску, а за несколько микросекунд.
В противном случае данные считываются с диска обычным образом и сохраняются в каше. Поскольку велика вероятность того, что в последующих обращениях к диску будут запрошены данные, расположенные в непосредственной близости от текущих данных, контроллер может инициировать чтение в кэш большего количества данных, потенциально сократив время ответа на следующий запрос. Обычно кэш достаточно велик и в нем хранятся целые дорожки, так что пересылка содержимого дорожки в буфер данных начинается сразу после того, как только головка чтения/записи оказывается над этой дорожкой.
Контроллер диска За функционирование дискового устройства отвечает дисковый контроллер, кото. рый обеспечивает интерфейс между этим дисковым устройством и шиной, соединяющей его с остальной частью компьютерной системы. Контроллер может использоваться для управления более чем одним дисковым устройством (рис. 5.31). 5.9. Внешние запоминающие устройства 385 Рис. 5.31. диски, соединенные с системной шиной Контроллер диска соединяется непосредственно с процессорной системной шиной или шиной расширения, например с РС1.
Он содержит множество регистров, содержимое которых может считываться и записываться операционной системой. Таким образом, операционная система взаимодействует с контролером диска точно так же, как с другими интерфейсами ввода-вывода (глава 4). Для пересылки данных между диском и основной памятью контроллер использует механизм прямого доступа к памяти. Речь идет о пересылке данных в буфер и из буфера, входящего в состав модуля дискового контролера. Операционная система инициирует передачу с помощью запросов считывания и записи с последующей загрузкой в регистры контроллера необходимой адресной и управляющей информации. Речь идет в первую очередь о следующей информации: + адресе основной памяти — адресе первого блока или слова, подлежащего пересылке или предназначенного для приема данных; + адресе на диске — местоположении сектора, содержащего начало нужного блока слов; + количестве слов в пересылаемом блоке (счетчике слов). Адрес на диске — зто логический адрес, генерируемый операционной системой.
Соответствующий физический адрес на диске может быть иным. Например, если при форматировании диска будут обнаружены дефектные секторы, дисковый контроллер подставит вместо них другие. Обычно на каждой дорожке специально для зтой цели имеется несколько запасных секторов, а в цилиндре может быть даже запасная дорожка. Перечислим основные функции контроллера. + Поиск — контроллер заставляет дисковод переместить головку чтения/ записи к нужной дорожке.
+ Чтение — контроллер инициирует операцию чтения начиная с адреса, заданного в адресном регистре диска. Считанные с диска данные собираются в слова и помещаются в буфер данных для пересылки в основную память. Количество слов задается в регистре счетчика слов. 386 Глава 5. Система памяти + Запись — контроллер пересылает данные на диск с использованием управляющего метода, сходного с методом выполнения операции чтения. + Контроль ошибок — контроллер формирует для прочитанных из сектора данных код корректировки ошибок (ЕСС) и сравнивает его со значением ЕСС, прочитанным с диска. Если эти два значения не совпадают, он пытается исправить ошибку.
В противном случае оп генерирует прерывание, чтобы проинформировать операционную систему о произошедшей ошибке. В ходе операции записи контроллер вычисляет значение ЕСС для помещаемых в сектор данных и сохраняет его на диске. Если диск соединяется с шиной, поддерживающей пакетную пересылку данных, контроллер может использовать ее преимущества. Например, контроллер ЯСБ1-диска применяет протокол шины БС51, описанной в главе 4. Программное обеспечение и операционная система Все операции пересылки данных, в которых участвуют дисковые устройства, инициируются операционной системой.
Диск является энергонезависимым запоминающим устройством, так что на нем хранится и сама операционная система. В процессе работы компьютера модули операционной системы по мере необходимости загружаются в основную память. Когда питание отключается, содержимое основной памяти теряется. После того как питание включается снова, операционная система копируется в основную память в ходе процесса, называемого загрузкой.
Для того чтобы система могла инициировать загрузку, небольшая часть основной памяти реализуется в виде энергонезависимой КОМ. В ней хранится маленькая программа-монитор, которая может считать и записать данные из основной памяти, а также прочитать с диска один блок данных, хранящийся по адресу О. Этот блок, называемый блоком начальной загрузки, содержит программу-загрузчик. Сначала КОМ-монитор загружает в основную память блок начальной загрузки, а затем загрузчик из этого блока загружает с диска основные части операционной системы.
Доступ к диску выполняется значительно медленнее, чем доступ к основной памяти — главным образом из-за задержки поиска. После того как операционная система инициирует операцию обращения к диску, она обычно передает управление какой-нибудь другой задаче, чтобы максимально рационально использовать время до завершения передачи данных. Когда данные будут переданы, контроллер диска сообщит об этом операционной системе посредством прерывания. Если в компьютерной системе имеется много дисков, операционной системе может потребоваться прочитать или записать данные на несколько из них.
Для того чтобы наиболее эффективно выполнить эту операцию, можно совместить пересылку, управляемую механизмом прямого доступа к памяти, с поиском иа другом диске. Управление такими параллельными операциями ввода-вывода выполняет операционная система. Гибкие диски Рассмотренные выше устройства называются жесткими дисками. Существуют также гибкие диски — более простые и дешевые съемные диски меньшего размера, представляющие гибкие пластиковые дискеты с магнитным покрытием.
Такая 5.9. Внешние запоминающие устройства 387 дискета заключена в пластиковый конверт с небольшим отверстием, через которое с ней контактирует головка чтения/записи. В центре дискеты имеется еше одно отверстие, необходимое для ее вращения. Одной из простейших схем, используемых в первых гибких дисках для записи данных, было описанное выше фазовое или манчестерское кодирование. Диски с закодированной таким образом информацией назывались дисками одинарной ллотноали.
В современных гибких дисках применяется более сложный вариант этой же схемы, называемый двойной плотностью. Она вдвое увеличивает плотность записи информации, хотя и усложняет схему дискового контроллера Основными достоинствами гибких дисков являются их малая стоимость и то, что их легко вынимать из компьютера и использовать в качестве переносных носителей.
Но, с другой стороны, гибкие диски отличаются очень малой емкостью, большим временем доступа и к тому же они менее надежны, чем жесткие диски. Стандартная дискета имеет диаметр 3,25 дюйма и может содержать 1,44 или 2 Мбайт данных. Существуют гибкие диски и большого объема. Одна из их разновидностей, так называемые Х1Р-дисхи, позволяет хранить свыше 100 Мбайт данных. Правда, с появлением перезаписываемых компакт-дисков, о которых рассказывается ниже, популярность технологии гибких дисков несколько уменьшилась.