Дефекты винчестера и методы их скрытия

Винчестер как одно из ненадежных устройств в компьютере. Дефект-листы винчестера, пересчет адресов с пропуском дефектов. Преимущества перестройки карты секторов. Технология самослежения и предупреждения. Основные виды дефектов и причины их появления.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 06.05.2012
Размер файла 1,8 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Содержание

  • Введение
  • 1. Основные теоретические положения
  • 1.1 Винчестер и BAD-секторы
  • 1.2 Что такое S. M. A. R. T
  • 1.3 История возникновения S. M. A. R. T. технологий
  • 1.4 Спецификации S. M. A. R. T.
  • 1.5 Атрибуты S. M. A. R. T.
  • 1.6 Типы атрибутов
  • 1.7 Виды дефектов и причины их появления
  • 1.8 Метод тестирования
  • 1.9 Журналы ошибок (SMART error log)
  • 1.9.1 Log Directory
  • 1.9.2 Summary Error Log
  • 1.9.3 Comprehensive Error Log
  • 1.9.4 Extended Comprehensive Error Log
  • 1.9.5 Self-test Log
  • 1.9.6 Extended Self-test Log
  • 1.9.7 Streaming Performance Log
  • 1.9.8 Write Stream Error Log
  • 1.9.9 Read Stream Error Log
  • 1.9.10 Delayed LBA Sector Log
  • 1.9.11 ECC Uncorrectable Sector Log
  • 1.9.12 Host Vendor Specific Log
  • 1.9.13 Device Vendor Specific Log
  • 2. Реализация функций S. M. A. R. T.
  • 3. Диагностические программы
  • 3.1 MHDD и SMARTUDM
  • 4. Альтернативные методы скрытия дефектов

Введение

Вопрос о надежности жесткого диска, а следовательно - сохранности важных данных, как никогда остро стоит в наше время, когда объемы информации удваиваются каждое десятилетие. Свой вклад в обеспечение надежной работы жестких дисков внесли производители, внедрив в них специальные технологии, позволяющие оценить состояние винчестера и спрогнозировать такие фатальные события, как серьезный сбой или даже выход накопителя из строя.

Выпускаемые накопители информации представляют собой разнообразные запоминающие устройства с различным принципом действия физическими и технически эксплуатационными характеристиками. Основным свойством и назначением накопителей информации является ее хранение и воспроизведение.

Жесткий диск - накопитель, в котором носителями информации являются круглые алюминиевые пластины, обе поверхности которых покрыты слоем магнитного материала. Эти пластины расположены рядом с блоком считывания/записи и размещаются в герметичной коробке для защиты от пыли, влаги и грязи. Принцип работы магнитных запоминающих устройств основан на использовании магнитных свойств материалов. Но из-за старения материалов и различных факторов - как удары, вибрация, повышенная температура жесткие диски из-за могут со временем портиться, следовательно, информация находящаяся на них может потеряться и повлечь за этим большие потери времени и денег.

винчестер дефект сектор адрес

1. Основные теоретические положения

1.1 Винчестер и BAD-секторы

Винчестер - одно из самых ненадежных устройств в компьютере. Ведь кроме сложной электроники он содержит непрерывно работающие механические части. Со временем они изнашиваются, и начинаются различные проблемы, самая распространенная из которых - появление BAD-блоков. Особенно это относится к старым моделям жестких дисков, которые все еще могут использоваться (в частности на предприятиях, где на компьютерах фильмы, игры и другой "тяжелый" контент не держат) и которые уже изрядно поизносились.

BAD-секторы (от англ. - плохой, негодный) есть на любых винчестерах. Как бы тщательно не были изготовлены их диски, на каждом из них найдется несколько мест, запись или чтение которых сопровождается ошибками. Кроме того, встречаются и просто нестабильные участки поверхности, которые могут со временем перерасти в дефекты, что для пользователя недопустимо. Поэтому каждый накопитель после изготовления на заводе, проходит тщательное тестирование, в процессе которого выявляются испорченные секторы. Они помечаются как негодные и заносятся в специальную таблицу - дефект-лист.

Самые первые жесткие диски имели дефект-лист в виде бумажной наклейки, в которую на заводе вписывали адреса нестабильных участков. Эти устройства, представляющие собой слегка измененную копию обычного флоппи-дисковода, могли работать только под своими физическими параметрами: число дорожек, секторов и головок, указанное в их паспорте, точно совпадало с их реальным количеством. Приобретая такое устройство, пользователь читал наклейку и сам заносил адреса нерабочих участков в FAT. После этого операционная система переставала замечать эти дефекты, точно так же, как она не замечает бэд-блоки на дискетах, если они были убраны утилитой Scandisk. Вероятно, в те далекие времена и появился термин "бэд-блок": блоком называли кластер - минимальную единицу логического дискового пространства. На физическом уровне кластер состоит из нескольких секторов, и при повреждении одного сектора ОС объявляет негодным весь кластер. Никаких других методов скрытия дефектов в то время не существовало. А когда появились способы скрывать отдельные секторы, люди не стали выдумывать новые понятия, и до сих пор успешно продолжают пользоваться словом "блок".

Прошло совсем немного времени, прежде чем изготовители додумались до очень интересной вещи: если пользователь все равно помечает bad-блоки, как ненужные, рассудили они, то почему бы не пометить их прямо на заводе? Но как это сделать, если на винчестере нет никакой файловой системы, и неизвестно какая будет? Вот тогда и придумали хитрую штуку, называемую "транслятор": на "блины" стали записывать специальную таблицу, в которой отмечалось, какие секторы следует спрятать от пользователя, а какие - оставить ему. Транслятор стал своеобразным промежуточным звеном, соединяющим физическую систему "диски-головки" с интерфейсом накопителя.

Предполагалось, что при включении жесткий диск сначала прочитает свои внутренние таблицы, скрывая отмеченные в них адреса дефектов, а уже затем допустит к себе BIOS, ОС и прикладные программы. А чтобы пользователь случайно не затер транслятор во время работы, он был помещен в специальную область диска, недоступную обычным программам. Только контроллер мог получить доступ к ней. Это событие произвело настоящий переворот в винчестеростроении, и ознаменовало появление нового поколения накопителей - со служебной зоной.

Для того, чтобы все диски одной модели, но с разным количеством дефектов, имели одинаковую емкость, на каждом из них стали оставлять запасные дорожки - резерв, специально предусмотренный для выравнивания емкости однотипных накопителей до стандартной заявленной величины. Его стали располагать в конце диска, возле его центра, и он тоже был недоступен пользователю. Такие винчестеры при выходе с завода не имели не одного видимого bad-сектора. Если в процессе эксплуатации появлялись новые дефекты, пользователь мог сделать низкоуровневое форматирование универсальной утилитой из BIOS материнской платы, и попытаться их скрыть. Иногда, как и на дискетах, это удавалось. Но если повреждения были физическими, то это не помогало: добавить новые дефекты в таблицу и переписать транслятор без специальных программ было невозможно. Поэтому bad-блоки на многих старых дисках (до 1995 года), приходилось скрывать все тем же, устаревшим способом - через FAT. И лишь фирмы Seagate, Maxtor и Western Digital выпустили утилиты для скрытия дефектов с замещением их из резерва.

Прошло время, и винчестеры еще больше изменились. Стремясь увеличить плотность записи, разработчики стали применять различные нестандартные ухищрения: на пластины стали наносить сервометки, предназначенные для более точного попадания головок на дорожки. Появилась технология зонно-секционной записи (ZBR), смысл которой заключался в разном количестве секторов на внешних и внутренних дорожках. Изменился привод головок - вместо шагового двигателя стали применять позиционер в виде подвижной катушки. Да и сами головки и диски изменились настолько, что каждая фирма разработала свою структуру формата нижнего уровня, пригодную только под их технологии. Это сделало невозможным применение универсальных утилит низкоуровневого форматирования из-за того, что транслятор таких винчестеров научился скрывать физический формат накопителей, переводя его в виртуальный.

Написанное на корпусе винчестера число цилиндров, секторов и головок, перестало соответствовать своим истинным значениям, и попытки отформатировать такой винт старыми утилитами, как правило, заканчивались неудачно: его контроллер отвергал стандартную ATA-команду 50h, или просто имитировал форматирование, заполняя винт нулями. Это было специально оставлено для совместимости со старыми программами. По этой же причине процедура Low-Level Format была исключена из BIOS современных материнских плат. А чтобы сделать таким жестким дискам настоящее низкоуровневое форматирование, нужно было обойти транслятор, получив прямой доступ к физическим дорожкам и головкам. Для этого стали использовать технологическую утилиту, запускающую специальный микрокод, записанный в ПЗУ накопителя. Команда вызова этого микрокода - уникальна для каждой модели, и относится к технологическим командам, которые фирмой не разглашаются. Часто такое форматирование нельзя было сделать через стандартный IDE-интерфейс: многие модели HDD выпуска 90-х годов - Conner, Teac и др., а также все современные Seagate, требуют подключения отдельного разъема к терминалу через COM-порт.

Что касается технологических утилит, то они никогда широко не распространялись и обычному пользователю были недоступны. Для широкого применения были написаны "программы-дурилки", осуществляющие псевдо-форматирование через интерфейс: заполнение диска нулями для очистки его от информации. Это видно даже из названий этих утилит, которые можно найти на сайтах производителей жестких дисков: wdclear, fjerase, zerofill и т.д. Естественно, никаких технологических команд в этих программах нет, и поэтому их можно применять к любым винчестерам. Такие утилиты часто оказываются полезны, помогая избавиться от некоторых видов BAD'ов.

Подготовка винчестера на заводе.

Перед скрытием bad-секторов на заводе очень важно выявить все, даже очень маленькие дефекты, а также нестабильные участки, которые могут со временем перерасти в bad-блоки. Ведь если такое случится в процессе эксплуатации, пользователь может лишиться важного файла, да и репутация фирмы, выпустившей такой "недоделанный" накопитель, будет испорчена. Поэтому тестирование винчестеров перед скрытием дефектов занимает очень много времени, как минимум несколько часов, и выполняется в технологическом режиме. Это сделано для исключения временных задержек, неизбежно возникающих при работе транслятора, пересылке данных через кэш и интерфейсную логику. Поэтому на заводе поверхность сканируют только по физическим параметрам. Обычно этим занимается не внешняя программа, а специальный модуль в ПЗУ жесткого диска, работающий без участия интерфейса. Конечным результатом такого тестирование становится получение дефект-листа - электронного списка негодных областей дискового пространства. Он заносится в служебную зону диска и храниться там на протяжении всего срока эксплуатации.

Современные винчестеры имеют два основных дефект-листа: один заполняется на заводе при изготовлении накопителя и называется P-list (-первичный), а второй называется G-list (от слова - растущий), и пополняется в процессе эксплуатации диска, при появлении новых дефектов. Кроме того, некоторые диски, имеют еще и лист серво-дефектов (сервометки, наносимые на пластины винчестеров, тоже иногда имеют ошибки), а многие современные модели содержат еще и список временных (pending) дефектов. В него контроллер заносит "подозрительные" с его точки зрения секторы, например те, что прочитались не с первого раза, или с ошибками.

Получив дефект-лист, приступают к скрытию дефектов. Существует несколько способов их скрытия, каждый из которых имеет свои особенности. Теоретически можно просто переназначить адреса испорченных секторов в резерв и брать их оттуда, но это вызовет потерю производительности диска, так как он, каждый раз обнаруживая сектор, помеченный как негодный, будет вынужден перемещать головки в резервную область, которая может находиться далеко от места дефекта. Если переназначенных секторов будет много - производительность накопителя очень сильно упадет, так как большую часть времени он будет затрачивать на бесполезное дёрганье головками. Более того, быстродействие дисков с разным количеством дефектов будет сильно различаться, что конечно же, при массовом производстве недопустимо. Такой метод скрытия дефектов получил название "метод замещения" или ремап (от англ. перестройка карты секторов).

Из-за многочисленных недостатков, присущих ремапу, при промышленном изготовлении дисков такой метод никогда не применяют, а используют другой алгоритм: после выявления всех дефектов, адреса всех исправных секторов переписываются заново, так, чтобы их номера шли по порядку. Плохие сектора просто игнорируются и в дальнейшей работе не участвуют. Резервная область также остается непрерывной и ее часть присоединяется к концу рабочей области - для выравнивания объема. Такой способ скрытия бэдов сложнее в реализации, чем ремап, но результат стоит затраченных на него усилий - при любом количестве неисправных секторов, замедления работы накопителя не происходит. Этот, второй основной тип скрытия дефектов получил название "метод пропуска сектора". (Существуют и другие алгоритмы заводского скрытия дефектов, например, путем исключения целой дорожки, или при помощи запасного сектора на каждой дорожке, но они имеют недостатки и поэтому в современных накопителях практически не используются).

Процесс пересчета адресов с пропуском дефектов получил название "внутреннее форматирование". Внутреннее - потому, что весь процесс происходит полностью внутри жесткого диска, по физическим адресам и без участия интерфейса. В это время винчестер находится под управлением встроенной в его ПЗУ микропрограммы, которая анализирует дефект-лист и управляет форматированием. Внешними командами прервать ее нельзя. По окончании форматирования микропрограмма автоматически пересчитывает транслятор (или создает его заново), и диск становится готов к употреблению. После этого он, без единого бэд-блока, поступает с завода к покупателю.

Новые технологии.

Теперь понятно, почему фирменные утилиты не делают никаких операций, связанных с прямым доступом к служебной области. Ведь скрытие дефектов форматированием - это практически полный ремонтный цикл, основанный на внешних параметрах и связанный с четким пониманием каждого шага. И достаточно сделать что-то неправильно, чтобы испортить накопитель. Приведем простой пример: пользователь решил сделать "настоящее" низкоуровневое форматирование путем запуска подпрограммы ПЗУ в технологическом режиме. Процесс обычно длится 10-60 минут, но тут случается перебой с питанием или банальное зависание - и диск остается без транслятора, так как. просто не успевает его заново создать. Это означает, что к дальнейшей работе такое устройство будет непригодно - его просто не увидит ни ОС, ни BIOS.

Страшно даже представить, сколько накопителей может быть "убито" таким образом, из простого любопытства или по ошибке. Особенно, если эти утилиты попадут в руки неопытных пользователей, запускающих на своих компьютерах все подряд. Конечно, диск портится не безвозвратно, и повторным запуском форматирования можно вернуть его к жизни. Но мышление у большинства пользователей устроено так, что столкнувшись с проблемами (не определяющийся в BIOS "труп" вместо винчестера), многие впадают в панику, обвиняя во всем производителей. А им лишние проблемы, естественно не нужны - гораздо важнее заставить винчестер отработать гарантийный срок. Поэтому несколько лет назад в накопители стали закладывать возможность самостоятельно "ремонтировать" сбойные участки - делать ремап. Как было сказано раньше, ремап не нашел применения при заводской подготовке накопителей, но оказался очень удачным решением для скрытия дефектов в бытовых условиях.

Преимущества ремапа перед внутренним форматированием - отсутствие перевода диска в технологический режим, быстрота проведения и безопасность для накопителя. Кроме того, во многих случаях ремап можно делать без удаления файловой системы, и без связанного с этим уничтожения данных. Эта технология получила название automatic defect reassignment (автоматическое переназначение дефектов), а сам процесс - reassign. Таким образом remap и reassign - это по большому счету одно и тоже, хотя термин reassign обычно применяют к отдельному сектору, а remap - ко всему диску.

Работает ремап следующим образом: если при попытке обращения к сектору происходит ошибка, "умный" контроллер понимает, что данный сектор неисправен, и "на лету" помечает его как BAD. Его адрес тут же заносится в таблицу дефектов (G-list). У многих винтов это происходит настолько быстро, что пользователь даже не замечает обнаружение дефекта и его скрытие. Во время работы накопитель постоянно сравнивает текущие адреса секторов с адресами из таблицы и не обращается к дефектным секторам. Вместо этого он переводит головки в резервную область и читает сектор оттуда. К сожалению, из-за времени, затрачиваемого на дальнее позиционирование, такие секторы будут выглядеть, как небольшие провалы на графике чтения. То же самое будет и при записи.

Если ошибка возникает во время обычной работы ОС, автоматический ремап происходит крайне редко. Это связано с тем, что, на большинстве HDD, reassign срабатывает только при записи. А многие ОС перед записью проверяет сектор на целостность, и обнаруживая ошибку, отказывается в него писать. Поэтому, в большинстве случаев для производства ремапа диск надо об этом "попросить" - произвести принудительную низкоуровневую перезапись сектора в обход стандартных функций ОС и BIOS. Это делается программой, способной обращаться к винчестеру напрямую через порты IDE-контроллера. Если во время такой записи возникнет ошибка, контроллер автоматически заменит этот сектор из резерва, и BAD исчезнет.

На этом принципе основана работа большинства утилит так называемого "низкоуровневого форматирования" от производителей. Все они, при желании, могут использоваться для дисков других фирм (если такие программы отказываются работать с чужими накопителями, то это сделано по маркетинговым соображениям). И конечно же, функции ремапа присутствуют во многих универсальных и бесплатных программках.

Наиболее распространенным мифом среди пользователей является утверждение, что для каждого диска нужна своя, "особая" программа скрытия дефектов, а также то, что ремап - это низкоуровневое форматирование. На самом деле это не так. Ремап - это всего лишь разновидность записи информации стандартными средствами, и в большинстве случаев любые утилиты для ремапа могут применяться к любым дискам. Ремап делают не внешние программы, а контроллер жесткого диска. Только он принимает решение о переназначении дефектных секторов. Испортить накопитель "чужие" программы тоже не могут, так как технологические команды в них не используются, а в обычном режиме винчестер никогда не позволит сделать с собой ничего, кроме стандартных операций чтения-записи. Единственное различие между фирменными утилитами заключается в количестве попыток записи/чтения/верификации для разных дисков. Для того, чтобы контроллер "поверил", что в секторе имеется подлежащий скрытию BAD, некоторым винчестерам достаточно одного цикла, а другим - нескольких.

1.2 Что такое S. M. A. R. T

S. M. A. R. T. (Self-Monitoring Analysis and Reporting Technology) - технология самослежения и предупреждения (Технология Самодиагностики, Анализа и Отчета) позволяет отслеживать и предсказывать возникновение ошибок, связанных с функционированием HDD, следовательно появляется возможность вовремя сделать резервную копию данных, тем самым избежать морального и материального ущерба от потери информации.

S. M. A. R. T. - это набор программ, записанных в микрокод винчестера.

Каждая фирма-производитель дисков ведет свои разработки, отсюда и разнообразие параметров для разных дисков. Однако существуют общие параметры.

Использование технологии S. M. A. R. T. невозможно без наличия следующих двух составляющих: ПО, встроенного в контроллер накопителя и внешнего ПО, встроенного в хост.

1.3 История возникновения S. M. A. R. T. технологий

На заре развития ПК жесткие диски подключались к достаточно сложным и дорогим контроллерам (данные от диска поступали в аналоговом виде), часто диск и контроллер "понимали" только друг друга. Покупка жесткого диска требовала покупки, установки и настройки контроллера (у которого даже был свой BIOS). В целях исправления такой ситуации было решено (в 1986 году) перенести управляющую логику на плату, непосредственно прикрепляемую к жесткому диску (т.е. "встроить электронику"), а со стороны компьютера оставить достаточно простой хост-контроллер. Благодаря этому система не должна знать ничего о реальных физических параметрах (геометрии, кодировании информации и пр.) диска, подключенного к ней, чтобы успешно с ним работать. Кроме того, производитель диска может спокойно расширять существующие и встраивать новые технологии, не опасаясь потерять совместимость с немного устаревшими системами (в случае с UltraDMA дело в изменении протокола обмена с хост-контроллером, так что это - исключение). К последним относится технология S. M. A. R. T.

S. M. A. R. T. - открытая технология, разработанная фирмой Compaq не для жестких дисков, а для "интеллектуальных" компьютерных устройств. В применении к жестким дискам S. M. A. R. T. была реализована фирмой Quantum в 1995 году, в дальнейшем была поддержана в разработках крупнейшими мировыми производителями жестких дисков - Seagate Technology, IBM, Conner Peripherials, Western Digital и Quantum. Суть S. M. A. R. T. технологии заключается в том, что винчестер сам аппаратно отслеживает состояние своей работоспособности и способен заранее предупредить пользователя о своем предаварийном состоянии.

Предложенная IBM технология предсказания надежности называется PFA (Predictive Failure Analysis). Она заключается в измерении нескольких параметров, включая высоту полета головок над поверхностью дисковых пластин, чтобы предсказать приближающийся сбой. Дисковые накопители, почувствовав ухудшение (деградацию) параметров своей работы, таких как упомянутая высота полета головок, изменяют технологические параметры доступные для считывания и анализа программой SMART HDD, которая в свою очередь уведомляет пользователя о надвигающемся сбое. Измерялось несколько ключевых параметров, и их оценка велась непосредственно в firmware диска. Результат был ограничен одним битом: либо хорошо, либо значение тестируемого параметра сомнительное и может скоро привести диск к выходу из строя. После получения предупреждения пользователи получают возможность предпринять действия, необходимые для обеспечения безопасности своих данных. Немногим позже корпорация Compaq сообщила о революционной разработке в области диагностики, названной IntelliSafe. Эта технология, разработанная при участии Seagate, Quantum и Conner, отслеживает множество показателей и посылает управляющей программе информацию о пороге опасности. Дисковый накопитель затем решает, насколько вероятен сбой и в свою очередь передает сообщение системе вместе с вызвавшим тревогу показателем и пороговым значением. Показатели и пороговые значения, реализованные в

IntelliSafe, варьируются для жестких дисков каждого производителя, но интерфейс и способ, которым сообщения передаются хост-системе, общие для всех.compaq постаралась сделать IntelliSafe общедоступной, представив свои спецификации для вычислительной среды IDE/АТА (документ SFF-8035) в мае 1995 года комитету Small Form Factor Commitee. Компания Seagate быстро определила, что технология предсказания надежности сулит громадные выгоды пользователям, и исследовала возможность сделать версию, доступную другим системным ОЕМ - производителям, интеграторам и независимым производителям программного обеспечения. В разработке этой новой версии она объединилась с фирмами Conner, IBM, Quantum и Western Digital. В результате их сотрудничества и появилась технология S. M. A. R. T., в которой сочетаются концептуальные элементы IntelliSafe от Compaq и PFA от IBM. Возможности S. M. A. R. T. охватывают целые серии показателей, или атрибутов диагностики, подбираемые специально для каждой модели накопителя. Индивидуальный подход при выборе атрибутов очень важен, поскольку архитектура жестких дисков изменяется от модели к модели. Показатели и пороговые значения, которые определяют предсбойное состояние для одной модели, могут ничего не означать для другого винчестера. Другими словами, архитектура привода определяет, какие показатели надлежит измерять и при переходе какого порогового значения стоит бить тревогу. Хотя не все сбои можно предсказать, следует ожидать развития S. M. A. R. T. как технологии по мере накопления опыта в точном предсказании надежности. Постоянные изменения показателей и их значений, связанные с развитием дисковых технологий, также приводят к необходимости индивидуальной настройки и могут послужить основой для улучшения самой технологии предсказания.

Дисковые накопители должны быть способны отслеживать множество

показателей, чтобы обеспечить исчерпывающее предсказание надежности. Один из важнейших элементов в этом деле - понять, что такое сбой. Условно сбои можно разделить на предсказуемые и непредсказуемые.

Непредсказуемые сбои происходят быстро, как в случае проблем с электроникой или механикой привода, таких, например, как бросок напряжения питания, который может повредить чипы или даже схему в целом. Повышение качества, совершенствование конструкции, технологии и производства могут уменьшить вероятность непредсказуемых аварий. Предсказуемые сбои характеризуются деградацией того или иного параметра с течением времени, прежде чем диск выйдет из строя. Это создает возможность выбора показателей, которые можно отслеживать, чтобы на базе их анализа предсказать сбои. Многие механические сбои обычно расцениваются как предсказуемые, такие, например, как деградация высоты полета головок, которая говорит о возможности повреждения поверхности дисков. Некоторые электронные сбои можно отследить по деградации атрибутов, прежде чем они наступят, но чаще именно механические проблемы являются постепенно нарастающими и предсказуемыми. S. M. A. R. T. предупреждает, что стоит заняться процедурой резервирования, и сохраняет в целости пользовательские данные. Механические сбои, которые в основном являются предсказуемыми, составляют около 60 процентов от всех дисковых сбоев. Это число важно, поскольку показывает большие возможности использования технологий предсказания надежности. С развитием технологии S. M. A. R. T. все большее число сбоев становится предсказуемым и попадает в поле ее ответственности, а вероятность потери данных уменьшается.

1.4 Спецификации S. M. A. R. T.

Технология S. M. A. R. T. была подготовлена для оборудования IDE/АТА

после представления спецификации SFF-8035 публично. Накопители SCSI строятся на основе разных спецификаций и стандартов, которые определяются документом X3T10/94-100 организации ANSI. Используемая компанией Seagate программа систем S. M. A. R. T. включает оба индустриальных стандарта, благодаря чему эта технология доступна для накопителей с интерфейсом как IDE/АТА, так и SCSI. Атрибуты и пороговые значения для системы предсказания надежности S. M. A. R. T. одинаковы для обоих интерфейсов, отличаются лишь предупреждения о грозящей опасности. В системах на основе IDE/АТА программное обеспечение хост-компьютера интерпретирует тревожный сигнал, полученный от накопителя в результате выполнения команды report status, описанной спецификацией S. M. A. R. T. Хост регулярно опрашивает накопитель и проверяет по этой команде состояние устройства. Если полученный при очередном обращении за статусом сигнал говорит о грозящем сбое, выдается соответствующее предупреждение пользователю или системному администратору. Благодаря этому у системного администратора появляется возможность перенести на ближайшее время запланированную процедуру резервирования данных и заменить накопитель. Такая схема допускает расширение в будущем, когда появятся сообщения, касающиеся показателей не только жестких дисков, такие как предупреждения о перегреве, нарушении функционирования приводов CD-ROM, стримеров и других устройств ввода/вывода. Хост-система способна обрабатывать атрибуты и сообщать о сбоях, пользуясь не только командой report status для жестких дисков. В общих чертах накопители SCSI со встроенным предсказанием надежности сообщают системе лишь сведения о том, нарушены условия надежной работы или нет.

Первые винчестеры (например, WD AC21200) имели очень несовершенный SMART из четырех-шести атрибутов. Но вскоре был разработан стандарт SMART-II, и с момента его появления в большинстве накопителей появилась такая особенность, как внутренняя диагностика и самоконтроль. Эта функция основана на проведении серии автономных внутренних тестов, которые можно запустить стандартными ATA-командами, и предназначена для углубленного контроля над состоянием механики накопителя, поверхности дисков и многих других параметров.

После выполнения тестов, накопитель в обязательном порядке обновляет показания во всех SMART-атрибутах, в соответствии со своим текущим состоянием. Время тестирования может варьироваться от нескольких секунд до часа. Активизировать тесты SMART можно, например, программой MHDD (консольная команда "smart test"). После запуска тестов возможны "странные" явления, очень похожие на те, что возникают при работе дефрагментатора: непрерывное горение индикатора HDD и звук интенсивного движения головок. Это нормальное явление: винчестер сканирует поверхность для поиска дефектов. Нужно просто подождать некоторое время, пока самотестирование закончится, и диск успокоится.

Позже появилась спецификация SMART-III, в которой имеется не только функция обнаружения дефектов поверхности, но и возможность их восстановления "на лету" и многие другие новшества. Одной из его разновидностей стала система Data Lifeguard, применяемая в накопителях Western Digital. Ее суть заключается в следующем: если к диску не происходит никаких обращений, он начинает самостоятельно сканировать поверхность, выявляя нестабильные секторы, и при их обнаружении переносит данные в резервную область. После чего делает ему reassign. Таким образом данные оказываются спасены еще до того, как на этом месте возникнет настоящий BAD. В отличие от SMART-мониторинга, Data Lifeguard не может быть отключен внешними командами и работает постоянно. Поэтому "видимые" BAD-блоки на современных винчестерах Western Digital практически никогда не появляются.

С 2007 года компания HP разработала технологию SMART IV. Отличие от предыдущих технологий - добавление кода четности для каждых 512 байтов в кэше диска.

Эта проверка четности обеспечивает более полное выявление ошибок целостности данных.

1.5 Атрибуты S. M. A. R. T.

S. M. A. R. T. предусматривает слежение за работой головок, мотора (шпинделя) и электроники и отображение результатов в виде нескольких параметров, называемых атрибутами, к которым относятся ошибки чтения-записи, время раскрутки шпинделя, число отработанных часов и т.д. - всего около 50-ти.

Все атрибуты имеют уникальный номер (ID), одинаковый для всех производителей. Разные производители предпочитают разные наборы атрибутов. Они выбираются производителем, основываясь на их способности предсказывать ухудшение рабочих характеристик накопителя или определить его дефектность.

Данные хранятся в шестнадцатеричном виде, называемом "raw value", а потом пересчитываются в "value". Изначально всякому атрибуту присваивается условное (нормализованное) значение 100, реже - 200, а также определяется более низкий пороговый уровень (threshold). В ходе работы диска постоянно происходит подсчет различных событий (ошибки, сбои, включения питания и др.), значения атрибутов при этом уменьшаются (могут и увеличиваться - при хороших событиях). Это - Self-monitoring.

Значения атрибутов (value) используются для представления относительной надежности отдельного эксплуатационного или эталонного атрибута. Допустимое значение атрибута лежит в диапазоне от 1 до 255. Его высокое значение говорит о том, что результат анализа данной рабочей характеристики указывает на низкую вероятность ее ухудшения или выхода накопителя из строя. Соответственно, низкое значение атрибута говорит о том, что результат анализа данной рабочей характеристики указывает на высокую вероятность ее ухудшения или выхода накопителя из строя.

Каждый атрибут имеет собственное пороговое значение (threshold), которое используется для сравнения со значением атрибута (value) и указывает на ухудшение рабочих характеристик или дефектность накопителя. Числовое значение порогового атрибута определяется производителем через конструкционные особенности накопителя и анализ результатов испытаний на надежность. Пороговое значение каждого атрибута указывает на его нижнюю допустимую границу, до которой накопитель нормально функционирует. Если значение (value) опустится ниже порогового, жесткий диск проинформирует систему о наличии серьезных проблем. Это - Alerting and Reporting. Сам жесткий диск никого не оповещает, это делает система, обращающаяся к нему за информацией.

К наиболее часто наблюдаемым критически важным характеристикам относятся:

Raw Read Error Rate - частота ошибок при чтении данных с диска, происхождение которых обусловлено аппаратной частью диска.

Spin Up Time - время раскрутки пакета дисков из состояния покоя до рабочей скорости. При расчете нормализованного значения (Value) практическое время сравнивается с некоторой эталонной величиной, установленной на заводе. Не ухудшающееся немаксимальное значение при Spin Up Retry Count Value = max (Raw равном 0) не говорит ни о чем плохом. Отличие времени от эталонного может быть вызвано рядом причин, например блок питания подкачал.

Spin Up Retry Count - число повторных попыток раскрутки дисков до рабочей скорости, в случае если первая попытка была неудачной. Ненулевое значение Raw (соответственно немаксимальное Value) свидетельствует о проблемах в механической части накопителя.

Seek Error Rate - частота ошибок при позиционировании блока головок. Высокое значение Raw свидетельствует о наличии проблем, которыми могут являться повреждение сервометок, чрезмерное термическое расширение дисков, механические проблемы в блоке позиционирования и др. Постоянное высокое значение Value говорит о том, что все хорошо.

Reallocated Sector Count - число операций переназначения секторов. SMART в современных способен произвести анализ сектора на стабильность работы "на лету" и в случае признания его сбойным произвести его переназначение.

Таблица известных атрибутов IDE и Serial ATA дисков:

Hex

Имя атрибута

Описание

1

1

Raw Read Error Rate

Частота ошибок при чтении данных с диска, происхождение которых обусловлено аппаратной частью диска. Для всех дисков Seagate, Samsung (семейства F1 и более новые) и Fujitsu 2,5" это - число внутренних коррекций данных, проведенных до выдачи в интерфейс, следовательно на пугающе огромные цифры можно реагировать спокойно.

2

2

Throughput Performance

Общая производительность диска. Если значение атрибута уменьшается, то велика вероятность, что с диском есть проблемы.

3

3

Spin-Up Time

Время раскрутки пакета дисков из состояния покоя до рабочей скорости. Растет при износе механики (повышенное трение в подшипнике и тп), также может свидетельствовать о некачественном питании (например, просадке напряжения при старте диска).

4

4

Start/Stop Count

Полное число циклов запуск-остановка шпинделя. У дисков некоторых производителей (например, Seagate) - счетчик включения режима энергосбережения. В поле raw value хранится общее количество запусков/остановок диска.

5

5

Reallocated Sectors Count

Число операций переназначения секторов. Когда диск обнаруживает ошибку чтения/записи, он помечает сектор "переназначенным" и переносит данные в специально отведенную резервную область. Вот почему на современных жестких дисках нельзя увидеть Bad-блоки - все они спрятаны в переназначенных секторах. Этот процесс называют remapping, а переназначенный сектор - remap Чем больше значение, тем хуже состояние поверхности дисков. Поле raw value содержит общее количество переназначенных секторов. Рост значения этого атрибута может свидетельствовать об ухудшении состояния поверхности блинов диска.

6

6

Read Channel Margin

Запас канала чтения. Назначение этого атрибута не документировано. В современных накопителях не используется.

7

7

Seek Error Rate

Частота ошибок при позиционировании блока магнитных головок. Чем их больше, тем хуже состояние механики и/или поверхности жесткого диска. Также на значение параметра может повлиять перегрев и внешние вибрации (например, от соседних дисков в корзине).

8

8

Seek Time Performance

Средняя производительность операции позиционирования магнитными головками. Если значение атрибута уменьшается (замедление позиционирования), то велика вероятность проблем с механической частью привода головок.

9

9

Power-On Hours (POH)

Число часов (минут, секунд - в зависимости от производителя), проведенных во включенном состоянии. В качестве порогового значения для него выбирается паспортное время наработки на отказ (MTBF - mean time between failure).

10

Spin-Up Retry Count

Число повторных попыток раскрутки дисков до рабочей скорости в случае, если первая попытка была неудачной. Если значение атрибута увеличивается, то велика вероятность неполадок с механической частью.

11

0B

Recalibration Retries

Количество повторов запросов рекалибровки в случае, если первая попытка была неудачной. Если значение атрибута увеличивается, то велика вероятность проблем с механической частью.

12

Device Power Cycle Count

Количество полных циклов включения-выключения диска.

13

0D

Soft Read Error Rate

Число ошибок при чтении, по вине программного обеспечения, которые не поддались исправлению. Все ошибки имеют не механическую природу и указывают лишь на неправильную разметку/взаимодействие с диском программ или операционной системы.

184

B8

End-to-End error

Данный атрибут - часть технологии HP SMART IV, это означает, что после передачи через кэш памяти буфера данных паритет данных между хостом и жестким диском не совпадают.

187

BB

Reported UNC Errors

Ошибки, которые не могли быть восстановлены, используя методы устранения ошибки аппаратными средствами.

190

BE

Airflow Temperature (WDC)

Температура воздуха внутри корпуса жесткого диска. Для дисков Seagate рассчитывается по формуле (100 - HDA temperature). Для дисков Western Digital - (125 - HDA).

191

BF

G-sense error rate

Количество ошибок, возникающих в результате ударных нагрузок. Атрибут хранит показания встроенного акселерометра, который фиксирует все удары, толчки, падения и даже неаккуратную установку диска в корпус компьютера.

192

CO

Power-off retract count

Число циклов выключений или аварийных отказов (включений/выключений питания накопителя).

193

C1

Load/Unload Cycle

Количество циклов перемещения блока магнитных головок в парковочную зону/ в рабочее положение.

194

C2

HDA temperature

Здесь хранятся показания встроенного термодатчика для механической части диска - банки (HDA - Hard Disk Assembly). Информация снимается со встроенного термодатчика, которым служит одна из магнитных головок, обычно нижняя в банке. В битовых полях атрибута фиксируются текущая, минимальная и максимальная температура. Не все программы, работающие со SMART, правильно разбирают эти поля, так что к их показаниям стоит относиться критично.

195

C3

Hardware ECC Recovered

Число коррекции ошибок аппаратной частью диска (чтение, позиционирование, передача по внешнему интерфейсу) На дисках с SATA-интерфейсом значение нередко ухудшается при повышении частоты системной шины - SATA очень чувствителен к разгону.

196

C4

Reallocation Event Count

Число операций переназначения. В поле "raw value" атрибута хранится общее число попыток переноса информации с переназначенных секторов в резервную область. Учитываются как успешные, так и неуспешные попытки.

197

C5

Current Pending Sector Count

Число секторов, являющихся кандидатами на замену. Они не были еще определены как плохие, но считывание с них отличается от чтения стабильного сектора, это так называемые подозрительные или нестабильные сектора. В случае успешного последующего прочтения сектора он исключается из числа кандидатов. В случае повторных ошибочных чтений накопитель пытается восстановить его и выполняет операцию переназначения (rernaping). Рост значения этого атрибута может свидетельствовать о физической деградации жесткого диска.

198

С6

Uncorrectable Sector Count

Число неисправимых ошибок при обращении к сектору {Возможно, имелось в виду "число некорректируемых (средствами диска) секторов", но никак не число самих ошибок}. В случае увеличения числа ошибок велика вероятность критических дефектов поверхности и/или механики накопителя.

199

С7

UltraDMA CRC Error Count

Число ошибок, возникающих при передаче данных по внешнему интерфейсу в режиме UltraDMA (нарушения целостности пакетов и тп). Рост этого атрибута свидетельствует о плохом (мятом, перекрученном) кабеле и плохих контактах. Также подобные ошибки появляются при разгоне шины PCI, сбоях питания, сильных электромагнитных наводках, а иногда и по вине драйвера.

200

С8

Write Error Rate/ Multi-Zone Error Rate

Показывает общее количество ошибок, происходящих при записи сектора. Показывает общее число ошибок записи на диск Может служить показателем качества поверхности и механики накопителя.

201

С9

Soft read error rate

Частота появления "программных" ошибок при чтении данных с диска. Данный параметр показывает частоту появления ошибок при операциях чтения с поверхности диска по вине программного обеспечения, а не аппаратной части накопителя.

202

Сa

Data Address Mark errors

Number of Data Address Mark (DAM) errors (or) vendor-specific.

203

СВ

Run out cancel

Количество ошибок ЕСС.

204

СС

Soft ECC correction

Количество ошибок ЕСС, скорректированных программным способом.

205

CD

Thermal asperity rate (TAR)

Number of thermal asperity errors.

206

СЕ

Flying height

Высота между головкой и поверхностью диска.

207

CF

Spin high current

Amount of high current used to spin up the drive.

208

D0

Spin buzz

Nurnoer of ouzz routines to spin up the drive.

209

D1

Offline seek performance

Drive's seek performance during offline operations.

220

DC

Disk Shift

Дистанция смещения блока дисков относительно шпинделя. В основном возникает из-за удара или падения. Единица измерения неизвестна. При увеличении атрибута диск быстро становится неработоспособным.

221

DD

G-Sense Error Rate

Число ошибок, возникших из-за внешних нагрузок и ударов. Атрибут хранит показания встроенного датчика удара.

222

DE

Loaded Hours

Время, проведенное блоком магнитных головок между выгрузкой из парковочной области в рабочую область диска и загрузкой блока обратно в парковочную область.

223

DF

Load/Unload Retry Count

Количество новых попыток выгрузок/загрузок блока магнитных головок в/из парковочной области после неудачной попытки.

224

Е0

Load Friction

Величина силы трения блока магнитных головок при его выгрузке из парковочной области.

225

Е1

Load Cycle Count

Количество циклов перемещения блока магнитных головок в парковочную область.

226

Е2

Load 'In'-time

Время, за которое привод выгружает магнитные головки из парковочной области на рабочую поверхность диска.

227

ЕЗ

Torque Amplification Count

Количество попыток скомпенсировать вращающий момент.

228

Е4

Power-Off Retract Cycle

Количество повторов автоматической парковки блока магнитных головок в результате выключения питания.

230

Е6

GMR Head Amplitude

Амплитуда "дрожания" (расстояние повторяющегося перемещения блока магнитных головок).

231

Е7

Temperature

Температура жесткого диска.

240

F0

Head flying hours

Время позиционирования головки.

250

FA

Read error retry rate

Число ошибок во время чтения жесткого диска.

Список известных атрибутов SCSI дисков:

01Buffer over/under run counters

02_0000Write errors corrected without substantial delay

02_0001Write errors corrected with possible delays

02_0002Total write errors

02_0003Total write errors corrected

02_0004Total write errors corrected by algorythm

02_0005Total bytes written

02_0006Total uncorrected write errors

03_0000Read errors corrected by ECC hardware method

03_0001Read errors corrected with possible delays

03_0002Total read errors

03_0003Total read errors corrected

03_0004Total read errors corrected by algorythm

03_0005Total bytes read

03_0006Total uncorrected read errors

04_0000Read reverse errors corrected by ECC hardware method

04_0001Read reverse errors corrected with possible delays

04_0002Total read reverse errors

04_0003Total read reverse errors corrected

04_0004Total read reverse errors corrected by algorythm

04_0005Total bytes read reverse

04_0006Total uncorrected read reverse errors

05_0000Verify errors corrected without substantial delay

05_0001Verify errors corrected with possible delays

05_0002Total verify errors

05_0003Total verify errors corrected

05_0004Total verify errors corrected by algorythm

05_0005Total bytes verified

05_0006Total uncorrected verify errors

06_0000Non medium errors

07Last error event

0BLast deferred error or asynchronous event

0D_0000Temperature

0D_0001Reference temperature

0E_0001Manufacture date (year/week)

0E_0002Accounting date

0E_0003Specified cycle count over device lifetime

0E_0004Accumulated start-stop cycles

0FApplication client parameter data

10Self test results log

18Protocol specific port log

37_0000Blocks sent to initiator

37_0001Blocks received from initiator

37_0002Blocks read from cache and sent to initiator

37_0003I/O commands with size smaller than segment size

37_0004I/O commands with size larger than segment size

3E_0000Power on time

3E_0008Remaining minutes until next internal test

Note: some manufacturers may use the attributes for different purposes also. Attributes not listed here are "vendor specific" attributes (their purpose is not known).

1.6 Типы атрибутов

Каждый атрибут может иметь некоторый набор флагов, определяющих его функциональные особенности. Ниже приводятся все шесть основных типов и их краткие описания.

Pre-failure (PF). Если атрибут имеет этот тип, то поле threshold атрибута содержит минимально допустимое значение атрибута, ниже которого не гарантируется работоспособность накопителя и резко увеличивается вероятность его выхода из строя.

On-line collection (OC). Указывает, что значение данного атрибута обновляется (вычисляется) во время выполнения on-line тестов S. M. A. R. T. или же во время обоих видов тестов (on-line/off-line). В противном случае, значение атрибута обновляется только при выполнении off-line тестов.

Performance related (PR). Указывает на то, что значение этого атрибута напрямую зависит от производительности накопителя по отдельным показателям (seek/throughput/etc. performance). Обычно обновляется после выполнения self-test`ов SMART.

Error rate (ER). Указывает на то, что значение атрибута отражает относительную частоту ошибок по данному параметру (raw read/write, seek, etc.).

Events count (EC). Указывает на то, что атрибут является счетчиком событий.

Self-preserve (SP). Указывает на то, что значение атрибута обновляется и сохраняется автоматически (обычно при каждом старте накопителя и при выполнении тестов SMART).

1.7 Виды дефектов и причины их появления

Рассмотрим структуру сектора, в том виде, каким его видит электроника винта "изнутри":

Упрощенная структура сектора жесткого диска

Рис.1. Упрощенная структура сектора жесткого диска

Как видно из рисунка 1, все намного сложнее, чем могло показаться на первый взгляд, даже с помощью дискового редактора. Сектор состоит из заголовка-идентификатора и области данных. Начало сектора помечается специальным байтом - адресным маркером (1). Он служит для сообщения контроллеру о том, что сектор находится под головкой. Затем следуют ячейки, в которых содержится уникальный адрес сектора в формате CHS (2) и его контрольная сумма - для проверки целостности записанного адреса (3).512 байт данных пользователя помещаются в отдельном поле (4), к которому при записи добавляется несколько десятков байт избыточной информации, предназначенной для коррекции ошибок чтения с помощью ECC-кода (5). Рядом с данными размещается 4 байта циклической контрольной суммы (CRC) данных, которая служит для проверки целостности данных пользователя, и сообщения системе коррекции ошибок при ее нарушении (6). Для более надежной работы сектора при колебаниях скорости вращения имеются байты-пробелы (7). У некоторых винчестеров имеется дополнительный байт после AM - в нем сектор помечается как BAD.

Структура низкоуровневого формата сильно различается у разных моделей накопителей, и определяется типом используемого контроллера, его микропрограммой и изобретательностью разработчиков.

Пока структура формата не нарушена, винчестер работает исправно, четко выполняя свои обязанности - хранение информации. Но стоит вмешаться злым силам - и в зависимости от вида разрушений, они проявляются как BAD-секторы разной степени тяжести.

Дефекты можно разделить на две большие группы: физические и логические. Рассмотрим каждый их вид подробно.

Физические дефекты

Дефекты поверхности. Возникают при механическом повреждении магнитного покрытия внутри пространства сектора, например из-за царапин, вызванных пылью, старением блинов или небрежным обращением с жестким диском. Такой сектор должен быть помечен как негодный и исключен из обращения.

Серво-ошибки. У всех современных накопителей для перемещения головок используется система, получившая название "звуковая катушка", которая в отличие от шагового двигателя старых винтов, не имеет какой-либо дискретности перемещения. Для точного попадания головок на дорожки в дисках используется система с обратной связью, которая ориентируются по специальным магнитным сервометкам, нанесенным на диск. Сервометки имеются на каждой стороне каждого диска. Они расположены равномерно вдоль всех дорожек, и строго радиально, как спицы в колесе, образуя сервоформат. Он не относится к формату нижнего уровня и на рисунке не показан, но имеется абсолютно у всех современных винчестеров, и играет важнейшую роль. По сервометкам происходит стабилизация скорости вращения двигателя и удержание головки на заданном треке, независимо от внешних воздействий и тепловой деформации элементов.


Подобные документы

  • Жесткий диск (винчестер): общее понятие, предназначение, структура. Основные операции по обслуживанию дисков. Процесс форматирования диска. Логические и физические дефекты, возникающие на диске и методы их устранения. Дефрагментация и очистка винчестера.

    презентация [264,1 K], добавлен 23.10.2013

  • Исследование показателей емкости винчестера, скорости вращения магнитных дисков, объема кэш-памяти, типов интерфейса подключения (IDE, SCSI, SATA) и разновидностей накопителей с целью выбора качественного жесткого диска для домашнего использования.

    контрольная работа [93,1 K], добавлен 18.06.2011

  • Причины появления информационных систем. Назначение электронных вычислительных машин: числовые расчеты, обработка, хранение и передача информации. Созданиеи первого жесткого магнитного диска - винчестера. Разработка локальной сети для передачи информации.

    презентация [339,2 K], добавлен 06.01.2014

  • Форматирование диска на низком уровне, создание физических структур: треков, секторов, управляющей информации. Разбиение объема винчестера на логические диски. Высокоуровневое форматирование, запись логических структур, ответственных за хранение файлов.

    статья [15,0 K], добавлен 05.04.2010

  • Понятие, классификация и состав памяти персонального компьютера. Доступ к информации в оперативном запоминающем устройстве, функции кэш-памяти. Основные свойства жесткого диска (винчестера). Виды дисководов, сохранение данных на гибких магнитных дисках.

    курсовая работа [551,1 K], добавлен 31.01.2012

  • Интересные факты из истории развития устройства винчестера, жесткого диска и персональных компьютеров. Революция в технологии записи и хранения информации. Главные преимущества и недостатки твердотельных накопителей по сравнению с жёсткими дисками.

    контрольная работа [34,4 K], добавлен 22.12.2011

  • Современные внешние жесткие диски. Основные характеристики винчестера. Скорость вращения шпинделя. Скорость передачи данных при последовательном доступе. Состав и основные компоненты прибора. Установка и техническое обслуживание жесткого диска.

    курсовая работа [728,1 K], добавлен 13.06.2012

  • Сокращение затрат на ремонтные работы по устранению дефектов, достигаемых при использовании информационной системы для их контроля. Анализ предметной области и программных средств. Расчет экономии за счет увеличения производительности труда пользователя.

    дипломная работа [3,8 M], добавлен 19.01.2017

  • Подготовка к сборке компьютера. Установка процессора, оперативной памяти, материнской платы и винчестера. Подключение питания и периферийных устройств. Решение проблем при включении. Установка программного обеспечения, операционной системы, конфигурация.

    курсовая работа [40,9 K], добавлен 26.04.2014

  • Создание автоматизированной системы диагностики конструктивных дефектов на основе акустических сигналов. Структурная схема автоматизированной системы. Методика анализа звукового сигнала. Алгоритм сравнения полученных данных с помощью модуля Diag.

    курсовая работа [658,5 K], добавлен 14.07.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.