Интерфейс ATA/IDE

  Интерфейс АТА (AT Attachment) является самым распространенным интерфейсом жестких дисков. Диски, использующие этот интерфейс, часто называются дисками IDE, но сокращение IDE означает «Integrated Disk Electronics» и обозначает жесткий диск со встроенной логической схемой (чего не было в старых
дисках). Интерфейс, используемый дисками «IDE», называется АТА. В этом разделе приводятся некоторые важные детали спецификации АТА, чтобы позднее мы могли обсудить такие технологии, как аппаратная блокировка записи и защищенные области.
Спецификации АТА разрабатывались техническим комитетом Т13 (http:// www.tl3.org), входящим в Международный комитет стандартов информационных технологий (INCITS). Окончательные версии спецификаций распространяются за плату, но предварительные версии можно загрузить бесплатно с сайта INCITS. Для знакомства с жесткими дисками достаточно и предварительных версий.
Диски АТА обслуживаются контроллером, который в современных системах встраивается в материнскую плату. Контроллер передает команды одному или двум дискам АТА по плоскому кабелю. Максимальная длина кабеля составляет 45,7 см. Разъем кабеля имеет 40 контактов, но на новых дисках задействованы 40 дополнительных проводов, не связанных ни с какими контактами. Интерфейс показан на рис. 2.10. Дополнительные провода предотвращают взаимные помехи между проводами. На портативных компьютерах часто устанавливаются более компактные диски с 44-контактным интерфейсом, включающим контакты для питания. Как показано на рис. 2.11, для стыковки двух интерфейсов применяются специальные адаптеры. Также существует 44-контактный интерфейс высокой плотности, применяемый на некоторых портативных устройствах (таких, как Apple iPod).

Рис. 2.10. Диск АТА с 40-контактным разъемом, перемычками и разъемом питания



Рис. 2.11. 44-контактный АТА-диск для портативного компьютера подключается 40-контактным плоским кабелем через адаптер (я благодарен за фото Эохану Кейси (Eoghan Casey))


Интерфейсная линия связи между контроллером и диском называется каналом. Каждый канал может обслуживать два диска, называемых «ведущим» (master) и «ведомым» (slave), хотя ни один из дисков не управляет работой другого. Диски

АТА настраиваются на выполнение роли ведущего или ведомого при помощи физической перемычки на диске. Некоторые диски также поддерживают режим Cable Select, в котором роль ведущего или ведомого назначается в зависимости от того, к какому разъему плоского кабеля подключен диск. На большинстве бытовых компьютеров используются два канала и поддержка до четырех дисков АТА.
Типы адресации секторов
Для выполнения операций чтения и записи данных на диск необходима схема адресации секторов. Как будет показано далее, одному сектору назначаются разные адреса при каждом его использовании разделом, файловой системой или файлом. В этом разделе речь пойдет о физических адресах, то есть адресах секторов по отношению к началу физического носителя информации.
Существует два разных метода физической адресации. На старых жестких дисках используются геометрические параметры и уже упоминавшаяся схема CHS. Упрощенный пример организации адресов цилиндров и головок показан на рис.
2.9.
Схема адресации CHS проста и удобна, но ее возможности оказались слишком ограниченными, поэтому в наши дни она встречается редко. В исходной спецификации АТА задействован 16-разрядный номер цилиндра, 4-разрядный номер головки и 8-разрядный номер сектора, однако в старых версиях BIOS использовался 10-разрядный номер цилиндра, 8-разрядный номер головки и 6-разрядный номер сектора. Следовательно, для взаимодействия с жестким диском через BIOS должен использоваться минимальный размер каждого параметра, вследствие чего максимальный объем диска ограничивается 504 Мбайт.
Чтобы обойти это ограничение, были разработаны новые версии BIOS, транслировавшие «свои» диапазоны адресов в диапазоны адресов, соответствующие спецификации АТА. Например, если приложение запрашивало данные из цилиндра 8, головки 4 и сектора 32, система BIOS транслировала его и запрашивала с диска цилиндр 26, головку 2, сектор 32. Для успешной работы трансляции система BIOS сообщала параметры геометрии диска, отличающиеся от фактических. Процесс трансляции не работает для дисков объемом более 8,1 Гбайт.
Сейчас BIOS с трансляцией адресов встречаются относительно редко, однако если аналитик все же столкнется с такой системой, у него возникнут проблемы. Если извлечь диск из исходной системы и подключить его к тестовому компьютеру, может оказаться, что трансляция не поддерживается или работает иначе. К тому же некоторые методы анализа выполнить не удастся из-за возврата неверных секторов. Для решения проблемы аналитик должен использовать исходную систему или найти аналогичную систему, выполняющую ту же трансляцию. Информацию о том, используется ли в системе трансляция адресов, можно найти в описании версии BIOS на сайте производителя или в справочном описании BIOS.
Ограничение в 8,1 Гбайт, присущее трансляции, необходимо было преодолеть, поэтому от схемы адресации CHS пришлось отказаться. Стандартной стала схема адресации LBA (Logical Block Addresses), в которой каждый сектор обозначается одним числом, начиная с 0. Схема LBA поддерживается с момента выхода первой официальной спецификации АТА. В схеме LBA приложение не обязано ничего знать о геометрии диска; достаточно одного числа. Поддержка адресации CHS была исключена из спецификации АТА в версии АТА-6.

К сожалению, некоторые файловые системы и другие структуры данных продолжают работать со старыми адресами CHS, поэтому в книге нам неоднократно потребуется преобразовывать CHS в LBA. Адрес LBA 0 соответствует адресу CHS 0,0,1, а адрес LBA 1 соответствует адресу CHS 0,0,2. Когда все секторы дорожки будут исчерпаны, используется первый сектор следующей головки того же цилиндра, соответствующий адресу CHS 0,1,1. Представьте, что внешнее кольцо нижней пластины постепенно заполняется, после чего происходит переход к следующей пластине, пока не будет достигнута верхняя пластина. После этого используется второе кольцо нижней пластины. Формула преобразования выглядит так:
LBA = (((ЦИЛИНДР * головок_на_цилиндр) + ГОЛОВКА) * секторов_на_дорожку) + СЕКТОР - 1 где значения ЦИЛИНДР, ГОЛОВКА И СЕКТОР заменяются соответствующими компонентами CHS. Для примера возьмем диск с 16 головками на цилиндр и 63 секторами на дорожку. Адрес CHS 2,3,4 преобразуется в LBA следующим образом:
2208 - (((2 * 16) + 3) * 63) + 4 - 1
<< | >>
Источник: Кэрриэ Б.. Криминалистический анализ файловых систем. 2007

Еще по теме Интерфейс ATA/IDE:

  1. Стандарты интерфейсов
  2. Информационные запасы и информационные ресурсы
  3. Утверждение (подписание) документов. Руководитель как ЛПР-эксперт
  4. ТЕКСТОВЫЕ ОБЪЯВЛЕНИЯ В СЕТИ BEGUN (КОНТЕКСТНАЯ РЕКЛАМА)
  5. СДЕЛАТЬ СЛОЖНОЕ ПРОСТЫМ..
  6. 5.6. Основные функции и особенности RUMUS
  7. Сервисы ЕРС Information Services (EPCIS)
  8. Технологии жестких дисков
  9. 2.2.6. НАДСТРОЙКИ
  10. Документационное обеспечение банковско-финансовой деятельности
  11. Документационное обеспечение правовых органов
  12. Аппаратная реализация RAID
  13. 5.5.4. Примеры программных средств, используемых для поддержки принятия решений
  14. 1.11. НАЙДИТЕ ХОРОШЕГО ПАРТНЕРА, РАБОТАЮЩЕГО В СФЕРЕ ВЕБ-РАЗРАБОТОК