Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Хранение данных и логическая адресация
" Кластер" - это несколько секторов, рассматриваемых операционной системой как одно целое. Почему не отказались от простой работы с секторами? Переход к кластерам произошел потому, что размер таблицы FAT был ограничен, а размер диска увеличивался. В случае FAT16 для диска объемом 512 Мб кластер будет составлять 8 Кб, до 1 Гб - 16 Кб, до 2 Гб - 32 Кб и так далее. Для того чтобы однозначно адресовать блок данных, необходимо указать физический адрес - все три числа (номер цилиндра, номер сектора на дорожке, номер головки). Такой способ адресации диска был широко распространен и получил впоследствии обозначение аббревиатурой CHS (cylinder, head, sector). Именно этот способ был первоначально реализован в BIOS, поэтому впоследствии возникли ограничения, связанные с ним. Непосредственно чтением и записью данных на жесткий диск ведает контроллер диска.Первоначально этот прибор выполнялся в виде самостоятельной платы расширения. Позднее основные функции контроллера были интегрированы в сам жесткий диск. Доступ к нему обеспечивает интерфейс IDE (интегрирован в материнскую плату), SATA или SCSI (чаще всего отдельный адаптер). Современные контроллеры — кэширующие и транслирующие. Кэширующий контроллер имеет внутреннюю кэш-память для хранения считанных данных. При запросе на чтение в эту память считывается вся дорожка диска целиком. При последующих запросах информация из кэш-памяти выдается без повторного чтения диска, то есть очень быстро. Объем кэш-памяти у жестких дисков составляет от 512 Кбайт до нескольких Мбайт.
Транслирующие контроллеры сообщают системе иное число цилиндров, головок и секторов на дорожке, чем имеется на самом деле. Это связано с тем, что системные средства, обеспечивающие первичный доступ к диску, соответствуют давно устаревшему стандарту. Когда-то считалось, что число секторов на каждой дорожке диска одинаково. Например, стандартные функции MSDOS предполагают, что диск содержит не более 1024 цилиндров, 256 головок и 63 секторов на дорожке. Предельный объем диска в этом случае около 8 Гбайт. В то же время, по стандарту АТА (IDE) контроллер может работать с 65536 цилиндрами, 16 головками и 63 секторами. В этом случае предельный объем диска составляет около 30 Гбайт. Интересно, что если наложить оба этих ограничения одновременно, то диск с 1024 цилиндрами, 16 головками и 63 секторами будет иметь объем лишь в 0, 5 Гбайт. Каждое из этих трех ограничений (0, 5 Гбайт, 8 Гбайт и 30 Гбайт) в свое время было источником немалой головной боли, для преодоления которой потребовались значительные усилия. Существует два разных способа обойти указанные ограничения. Первый состоит в том, чтобы система BIOS получала информацию о числе цилиндров, головок и секторов диска, не соответствующую реальной картине. Контроллер корректирует поступающие запросы и пересчитывает их, получая правильные адреса. Обычно при такой трансляции условно увеличивается число головок диска при пропорционально уменьшенном числе цилиндров. Этот прием работает для дисков объемом менее 8 Гбайт. Второй подход основан на механизме трансляции LBA (Logical Block Address— логический адрес блока). В этом случае параметры обращения к диску преобразуют в линейный адрес, который соответствует физическому номеру сектора, отсчитанному от начала диска. В стандарте АТА~2 этот адрес может иметь длину до 28 бит, что соответствует объему жесткого диска до 50О Гбайт.
Операционная система имеет дело не с физическими, а с логическими дисками. Один физический диск может быть разбит на несколько логических. Такой прием применяют, чтобы изолировать друг от друга данные разного назначения, или данные и программы, или данные разных пользователей. Для каждой файловой системы существует оптимальный размер диска, Доступ к данным на дисках меньшего размера может осуществляться быстрее, чем к одному большому диску. Поэтому разбиение физического диска на логические может производиться также с целью повышения эффективности работы.
Основные параметры быстродействия (производительности) жесткого диска
На производительность жёсткого диска влияют несколько параметров: интерфейс, скорость вращения шпинделя, объём кэш-памяти. Интерфейс Первый стандарт интерфейса IDE ( integreited digital interfeis) для винчестеров был разработаны компаниями Western Digital и Compaq Computer в 1986 г. Тогда для подключения использовался 40-проводной кабель и имелась возможность одновременного обслуживания двух устройств. Первые IDE-накопители управлялись центральным процессором, отвлекая значительные вычислительные ресурсы, и обладали множеством других недостатков, главный из которых – слишком малая емкость. Несмотря на это, IDE стал очень популярным стандартом и был зарегистрирован Национальным институтом стандартизации США (ANSI), получив название АТА (а также ATAPI). Первая версия интерфейса, АТА-1, обладала следующими возможностями: · PIO mode 0, 1 и 2 (до 8, 3 МBps) (программируемый ввод/вывод); · DMA mode 0, 1 и 2 (до 8, 3 МBps) (одиночная передача в режиме прямого доступа к памяти); · UDMA mode 0 (до 4, 2 МBps) (групповая передача в режиме прямого доступа к памяти). Единственным различием между IDE и ATA является то, что IDE определяет спецификацию на электронику винчестеров, а ATA – на интерфейсное соединение между HDD и ПК; тем не менее данные термины используются как слова-синонимы. Стандарт IDE совершенствовался, обеспечивал все большую эффективность обмена данными с жестким диском. Появились стандарты PI04 16, 6 Мб/с PI05 33, 3 Мб/с DMAMW-1 13, 3 Мб/с DMAMW-2 16, 6 Мб/С UDMAO 16, 6 Мб/с UDMA1 25 Мб/с UDMA2 33, 3 Мб/с UDMA3 44, 4 Мб/с UDMA4 66, 6 Мб/с UDMA5 100 Мб/с UDMA5 133 Мб/с. Число в названии стандарта соответствует предельной скорости передачи данных в Мбайт/с. Но, в этом случае, скорость передачи данных уже ограничивается помехами в шлейфе, соединяющем диск и материнскую плату компьютера. Линии данных наводят помехи друг на друга, что не позволяет увеличить их пропускную способность до уровня новых стандартов. Эта проблема решалась приобретением нового шлейфа с удвоенным числом проводников. Дополнительные проводники располагаются между линиями данных и заземляются. Это снижает уровень помех. Современные НЖД имеют последовательный интерфейс SATA, лишенный указанных недостатков. SATA (англ. Serial ATA) - последовательный интерфейс обмена данными с накопителями информации. SATA является развитием параллельного интерфейса ATA (IDE), Главным преимуществом SATA перед ATA(IDE) или PATA является использование последовательной шины вместо параллельной. Несмотря на то, что последовательный способ обмена принципиально медленнее параллельного, в данном случае это компенсируется возможностью работы на более высоких частотах за счёт избежания необходимости синхронизации каналов и большей помехоустойчивости кабеля. Пропускная способность интерфейса SATA1 равна 150 МBps. Работа над SATA продолжалась, в 2004-м появилась вторая версия SATA. Увеличилась пропускная способность (со 150 до 300 МBps). Спецификация SATA3 представлена в июле 2008 и предусматривает возможность передачи данных на скорости до 6 Гбит/с (600 Мбайт/с). Большинство жёстких дисков выпускается для двух интерфейсов – SATA и PATA. Их пропускная способность составляет 300 Мбит/с (Serial ATA II) и 133 Мбит/с соотвественно. На первый взгляд Serial ATA выглядит куда привлекательнее. Как говорится, многомегабайтная разница налицо, однако где преимущество от использования интерфейса с пропускной способностью 300 Мб/с, если стандартный жёсткий диск со скоростью вращения шпинделя 7 200 об./мин. имеет скорость чтения с пластин до 90 Мбит/с. Очередной маркетинг с точки зрения производительности. И всё же Serial ATA имеет конструктивное преимущество в виде тонкого шлейфа, который удобнее прокладывать в корпусе, чтобы он не мешал циркуляции воздушных потоков. Основным фактором, оказывающим наибольшее влияние на фактическую скорость передачи данных, является скорость вращения жесткого диска. В общем случае скорость передачи данных накопителей, вращающихся с частотой 7 200 об/мин, будет выше, чем у накопителей со скоростью вращения 5 400 об/мин. Обратите внимание на сравнительные характеристики описанных 120-гигабайтовых дисководов (таблица 1). Таблица 1
Как следует из этой таблицы, более важным показателем эффективности накопителя является средняя скорость передачи данных, величина которой значительно меньше скорости интерфейса, достигающей 133 Мбайт/с. Дисковод, имеющий более высокую скорость передачи интерфейса (133 Мбайт/с, в отличие от 100 Мбайт/с), в действительности оказывается более медленным (разница фактических скоростей составляет примерно 37%). Среднее количество секторов на дорожке примерно равно, поэтому столь высокая разница между скоростями передачи возникает главным образом из-за более высокой (примерно на 33%) скорости вращения одного из накопителей. Как следует из этого примера, скорость передачи интерфейса никакого значения не имеет. В сущности, ни один из накопителей не позволяет передавать данные быстрее, чем со скоростью 66 Мбайт/с (даже из внешних цилиндров), причем увеличение скорости передачи интерфейса на производительность накопителя практически не влияет. Это относится, в частности, к SATA. Производительность интерфейса или пропускная способность интерфейса превращается в ограничивающий фактор при чтении или записи потоковых данных, чаще всего мультимедийных. Быстродействие обеспечивается за счет внутреннего кэширования данных контроллером, производительности интерфейса и скорости вращения диска. Иными словами, быстрый жесткий диск необходим для воспроизведения или записи высококачественного видео или музыки, при работе с телевизионным тюнером, установленным в компьютере, для использования подключенной к компьютеру цифровой камеры. Но для более типичных видов компьютерной деятельности эффект от использования наиболее передовых интерфейсов жестких дисков незначителен.
Скорость вращения Скорость вращения шпинделя является одним из ключевых параметров, определяющих быстродействие накопителя на жёстких дисках. Данный параметр измеряется в оборотах в минуту (RPM или RotatePerMinute) и напрямую связан с линейной скоростью головок чтения/записи. Говоря простым языком, чем быстрее крутится шпиндель, тем больше данных могут считать/записать головки на магнитные пластины. Большинство жёстких дисков, рассчитанных на установку в настольные ПК, имеют скорость вращения шпинделя 7200 об./мин., ноутбучные накопители – 5400 об./мин., старые мобильные накопители – 4200 об./мин. Серверные решения имеют более внушительные характеристики – 10000 или 15000 об./мин. У десктопных решений есть приятные исключения в виде жёстких дисков Western Digital Raptor, у которых скорость вращения пластин составляет внушительные 10000 об./мин. Если учесть, что чтение данных производится целыми дорожками, этот параметр позволяет оценить максимальную скорость обмена данными с жестким диском. Для этого число оборотов в секунду надо умножить на количество головок диска и на объем данных на дорожке. Например, пусть скорость вращения диска составляет 7200 об/мин, то есть 120 об/с. Тогда считываемый за секунду объем данных может составлять 60xNxM Кбайт. Здесь N — число секторов на дорожке, а М — число головок диска. Эту простую формулу легко использовать для определения максимальных возможностей диска. Например, современные диски часто имеют лишь одну рабочую пластину — то есть две головки. Число секторов на дорожке обычно не сообщается, но, видимо, оно достигает 512. Такой диск при самых благоприятных обстоятельствах может обеспечить предельный ноток данных не более 60 Мбайт/с. В любом случае интуитивно понятно, что максимальная производительность жесткого диска пропорциональна скорости его вращения. Но в данном контексте ключевым является слово «максимальная». Достичь такой максимальной производительности можно только при выполнении таких операций, которые на протяжении длительного времени требуют последовательного чтения или записи данных. Только в этом случае дорожки записываются (считываются целиком), а накладные расходы минимальны. Такая ситуация возникает обычно при работе с потоковыми данными, например при воспроизведении видео. Если же данные разбросаны по диску хаотически, скорость чтения данных далека от максимальной и скорость вращения жесткого диска особого значения не имеет. Кэширование НЖД Многие периферийные устройства хранения данных используют кэш для ускорения работы, в частности, жёсткие диски используют кэш-память от 1 до 64 Мбайт, устройства чтения CD/DVD/BD-дисков также кэшируют прочитанную информацию для ускорения повторного обращения. Операционная система также использует часть оперативной памяти в качестве кэша дисковых операций (например, для внешних устройств, не обладающих собственной кэш-памятью, в том числе жёстких дисков, flash-памяти и гибких дисков). Применение кэширования внешних накопителей обусловлено следующими факторами: 1. скорость доступа процессора к оперативной памяти во много раз больше, чем к памяти внешних накопителей; 2. некоторые блоки памяти внешних накопителей используются несколькими процессами одновременно и имеет смысл прочитать блок один раз, затем хранить одну копию блока в оперативной памяти для всех процессов; 3. доступ к некоторым блокам оперативной памяти происходит гораздо чаще, чем к другим, поэтому использование кэширования для таких блоков в целом увеличивает производительность системы; Объем кэш-памяти большинства современных жёстких дисков составляет 8 и 16 Мбайт. В теории больший объём кэш-памяти – это хорошо, жёсткие диски хранят в кэше входящие команды и алгоритмы для предварительного кэширования данных, да и очередь команд NCQ (Native Command Queuing) тоже требует некоторого количества памяти. Однако на практике оказывается, что жёсткий диск с 16 Мбайт кэш-памяти не имеет какой-либо существенной прибавки в скорости по сравнению с аналогичной моделью, оснащённой 8 Мбайт.
Популярное:
|
Последнее изменение этой страницы: 2016-05-03; Просмотров: 435; Нарушение авторского права страницы