Применение RAID-массивов в АИС

Аппаратные и программные RAID-массивы. Расчет объема массива. Временные затраты на расчет и запись контрольных сумм. Пример распределения файлов по JBOD-массиву. Вероятности отказа каждого диска в массиве. Сравнение стандартных уровней RAID-массивов.

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

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

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

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

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

Содержание

Введение

1. Теоретическая часть

1.1 Программный RAID

1.2 Типы RAID массивов

1.2.1 Matrix RAID

1.2.2 JBOD

1.3 Применение RAID массивов

1.4 Комбинированные уровни

1.5 Сравнение стандартных уровней RAID массивов

1.6 Дальнейшее развитие идеи RAID

1.7 Интересный факт

2. Практическая часть

Заключение

Список использованных источников

Введение

Что такое RAID-массив или просто RAID? Расшифровывается эта аббревиатура как "Redundant Array of Independent Disks" или "избыточный (резервный) массив независимых дисков". Говоря по-простому, RAID-массив это совокупность физических дисков, объединенных в один логический.

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

RAID-массивы бывают аппаратные и программные.

Аппаратные RAID-массивы создаются до загрузки ОС посредством специальных утилит, зашитых в RAID-контроллер - нечто вроде BIOS. В результате создания такого RAID-массива уже на стадии инсталляции ОС, дистрибутив "видит" один диск.

Программные RAID-массивы создаются средствами ОС. Т.е. во время загрузки операционная система "понимает", что у нее несколько физических дисков и только после старта ОС, посредством программного обеспечения диски объединяются в массивы. Естественно сама операционная система располагается не на RAID-массиве, поскольку устанавливается до его создания.

"Зачем все это нужно?" - спросите Вы? Отвечаю: для повышения скорости чтения/записи данных и/или повышения отказоустойчивости и безопасности.

1. Теоретическая часть

1.1 Программный (англ. software) RAID

Для реализации RAID можно применять не только аппаратные средства, но и полностью программные компоненты (драйверы). Например, в системах на ядре Linux существуют специальные модули ядра, а управлять RAID-устройствами можно с помощью утилиты mdadm. Программный RAID имеет свои достоинства и недостатки. С одной стороны, он ничего не стоит (в отличие от аппаратных RAID-контроллеров, цена которых от $250). С другой стороны, программный RAID использует ресурсы центрального процессора, и в моменты пиковой нагрузки на дисковую систему процессор может значительную часть мощности тратить на обслуживание RAID-устройств.

Ядро GNU/Linux 2.6.28 (последнее из вышедших в 2008 году) поддерживает программные RAID следующих уровней: 0, 1, 4, 5, 6, 10. Реализация позволяет создавать RAID на отдельных разделах дисков, что аналогично описанному выше Matrix RAID. Поддерживается загрузка с RAID.

ОС семейства Windows NT, такие как Windows NT 3.1/3.5/3.51/NT4/2000/XP/2003 изначально, с момента проектирования данного семейства, поддерживает программный RAID 0, RAID 1 и RAID 5 (см. Dynamic Disk). Более точно, Windows XP Pro поддерживает RAID 0. Поддержка RAID 1 и RAID 5 заблокирована разработчиками, но, тем не менее, может быть включена, путем редактирования системных бинарных файлов ОС.[1] Windows Server 2003 -- 0, 1 и 5. Windows XP Home RAID не поддерживает.

В ОС FreeBSD есть несколько реализаций программного RAID. Так, atacontrol, может как полностью строить программный RAID, так и может поддерживать полуаппаратный RAID на таких чипах как ICH5R. Во FreeBSD, начиная с версии 5.0, дисковая подсистема управляется встроенным в ядро механизмом GEOM. GEOM предоставляет модульную дисковую структуру, благодаря которой родились такие модули как gstripe (RAID 0), gmirror (RAID 1), graid3 (RAID 3), gconcat (объединение нескольких дисков в единый дисковый раздел). Так же существуют устаревшие классы ccd (RAID 0, RAID 1) и gvinum (менеджер логических томов vinum). Начиная с FreeBSD 7.2 поддерживается файловая система ZFS в которой можно собирать следующие уровни RAID: 0, 1, 5, 6, а также комбинируемые уровни.

OpenSolaris и Solaris 10 используют Solaris Volume Manager, который поддерживает RAID-0, RAID-1, RAID-5 и любые их комбинации как 1+0. Поддержка RAID-6 осуществляется в файловой системе ZFS.

1.2 Типы RAID-массивов

"Каким образом RAID-массив может увеличить скорость или обезопасить данные?" - для ответа на этот вопрос рассмотрим основные типы RAID-массивов, как они формируются и что это дает в результате.

RAID-0. Называемый так же "Stripe" или "Лента". Два или более жестких дисков объединяются в один путем последовательного слияния и суммирования объемов. Т.е. если мы возьмем два диска объемом 500Гб и создадим из них RAID-0, операционной системой это будет восприниматься как один диск объемом в терабайт. При этом скорость чтения/записи у этого массива будет вдвое больше, нежели у одного диска, поскольку, например, если база данных расположена таким образом физически на двух дисках, один пользователь может производить чтения данных с одного диска, а другой пользователь производить запись на другой диск одновременно. В то время как в случае расположения базы на одном диске, сам жесткий диск задачи чтения/записи разных пользователей будет выполнять последовательно. RAID-0 позволит выполнять чтение/запись параллельно. Как следствие - чем больше дисков в массиве RAID-0, тем быстрее работает сам массив. Зависимость прямопропорциональная - скорость возрастается в N раз, где N - количество дисков в массиве.

У массива RAID-0 есть только один недостаток, который перекрывает все плюсы от его использования - полное отсутствие отказоустойчивости. В случае смерти одного из физических дисков массива, умирает весь массив. Есть старая шутка на эту тему: "Что обозначает "0" в названии RAID-0? - объем восстанавливаемой информации после смерти массива!"

RAID-1. Называемый так же "Mirror" или "Зеркало". Два или более жестких дисков объединяются в один путем параллельного слияния. Т.е. если мы возьмем два диска объемом 500Гб и создадим из них RAID-1, операционной системой это будет восприниматься как один диск объемом в 500Гб. При этом скорость чтения/записи у этого массива будет такая же, как у одного диска, поскольку, чтение/запись информации производятся на оба диска одновременно. RAID-1 не дает выигрыша в скорости, однако обеспечивает большую отказоустойчивость, поскольку в случае смерти одного из жестких дисков, всегда есть полный дубль информации, находящийся на втором диске. При этом необходимо помнить, что отказоустойчивость обеспечивается только от смерти одного из дисков массива. В случае если данные были удалены целенаправленно, то они удаляются со всех дисков массива одновременно!

RAID-5. Более безопасный вариант RAID-0. Объем массива рассчитывается по формуле (N - 1) * DiskSize, где N - количество дисков в массиве, а DiskSize - объем каждого диска. Т.е. при создании RAID-5 из трех дисков по 500Гб, мы получим массив объемом в 1 терабайт. Суть массива RAID-5 в том, что несколько дисков объединятся в RAID-0, а на последнем диске хранится так называемая "контрольная сумма" - служебная информация, предназначенная для восстановления одного из дисков массива, в случае его смерти. Скорость записи в массиве RAID-5 несколько ниже, поскольку тратится время на расчет и запись контрольной суммы на отдельный диск, зато скорость чтения такая же, как в RAID-0.

Если один из дисков массива RAID-5 умирает, резко падает скорость чтения/записи, поскольку все операции сопровождаются дополнительными манипуляциями. Фактически RAID-5 превращается в RAID-0 и если своевременно не позаботиться восстановлением RAID-массива есть существенный риск потерять данные полностью.

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

RAID-6 - является улучшенным вариантом RAID-5. Суть та же самая, только для контрольных сумм используется уже не один, а два диска, причем контрольные суммы считаются с помощью разных алгоритмов, что существенно повышает отказоустойчивость всего RAID-массива в целом. RAID-6 собирается минимум из четырех дисков. Формула расчета объема массива выглядит как (N - 2) * DiskSize, где N - количество дисков в массиве, а DiskSize - объем каждого диска. Т.е. при создании RAID-6 из пяти дисков по 500Гб, мы получим массив объемом в 1,5 терабайта.

Скорость записи RAID-6 ниже чем у RAID-5 примерно на 10-15%, что обусловлено дополнительными временными затратами на расчет и запись контрольных сумм.

RAID-10 - так же иногда называется RAID 0+1 или RAID 1+0. Представляет собой симбиоз RAID-0 и RAID-1. Массив строится минимум из четырех дисков: на первом канале RAID-0, на втором RAID-0 для повышения скорости чтения/записи и между собой они в зеркале RAID-1 для повышения отказоустойчивости. Таким образом, RAID-10 совмещает в себе плюс первых двух вариантов - быстрый и отказоустойчивый.

RAID-50 - аналогично RAID-10 является симбиозом RAID-0 и RAID-5 - фактически строится RAID-5, только его составляющими элементами являются не самостоятельные жесткие диски, а массивы RAID-0. Таким образом, RAID-50 дает очень хорошую скорость чтения/записи и содержит устойчивость и надежность RAID-5.

RAID-60 - та же самая идея: фактически имеем RAID-6, собранный из нескольких массивов RAID-0.

Так же существуют другие комбинированные массивы RAID 5+1 и RAID 6+1 - они похожи на RAID-50 и RAID-60 с той лишь разницей, что базовыми элементами массива являются не ленты RAID-0, а зеркала RAID-1.

1.2.1 Matrix RAID

Matrix RAID (рисунок 1) -- это технология, реализованная фирмой Intel в своих чипсетах начиная с ICH6R. Строго говоря, эта технология не является новым уровнем RAID (ее аналог существует в аппаратных RAID-контроллерах высокого уровня), она позволяет, используя небольшое количество дисков организовать одновременно один или несколько массивов уровня RAID 1, RAID 0 и RAID 5. Это позволяет за сравнительно небольшие деньги обеспечить для одних данных повышенную надёжность, а для других высокую скорость доступа.

Рисунок 1. Matrix RAID

1.2.2 Just a bunch of disks (JBOD)

JBOD (от англ. Just a bunch of disks, просто пачка дисков) -- RAID-массив дисков, в которых дисковое пространство распределено по жёстким дискам последовательно. Однако в некоторых контроллерах режимом «JBOD» назван режим, при котором контроллер работает как обычный IDE- или SATA-контроллер, то есть с выключенным RAID, в таком случае каждый диск будет виден как отдельное устройство в операционной системе. Этот факт объясняется тем, что термин JBOD, как режим функционирования дисков, ещё окончательно не «устоялся». Часть IT-специалистов трактует его буквально как «пучок» или «куча» дисков, каждый из которых функционирует независимо друг от друга. В этом случае понятие «spanning» (то есть «охват» данными нескольких дисков) относят уже не к JBOD, а к RAID технологиям, поскольку имеет место организация дисков в простейший массив.

Пример распределения файлов по JBOD-массиву (разные файлы выделены разными цветами) (Рисунок 3)

Рисунок 3 Распределения файлов по JBOD-массиву

Характеристики JBOD массива

· Ёмкость массива равна сумме ёмкостей составляющих дисков

· Вероятность отказа приблизительно равна сумме вероятностей отказа каждого диска в массиве (избыточность не предусмотрена)

· Скорость чтения и записи зависит от области данных; она не выше, чем у самого быстрого диска в массиве и не ниже чем у самого медленного

· Нагрузка на процессор при работе минимальная (сравнимая с нагрузкой при работе с единичным диском)

Особенности JBOD массива

· Отказ одного диска позволяет восстановить файлы на остальных дисках (если ни один из их фрагментов не принадлежит повреждённому диску)

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

· Массив может состоять из дисков различной ёмкости и скорости

· Массив легко расширяется дополнительными дисками по мере надобности

В операционной системе Windows JBOD-массив называется spanned volume (возможно создание только на динамических дисках), Red Hat называет подобный тип компоновки linear RAID, в FreeBSD аналогичную задачу решает GEOM класс geom_concat.

1.3 Применение RAID-массивов

Если перейти к практике и поговорить о применении тех или иных RAID-массивов в жизни, то логика довольно проста:

RAID-0 в чистом виде не используем вообще;

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

RAID-5 ставим там, где нужна скорость и отказоустойчивость, но не хватает денег на покупку большего количества жестких дисков или есть необходимость восстанавливать массивы в случае их повреждения, не прекращая работы - тут нам помогут запасные Spare-диски. Обычное применение RAID-5 - хранилища данных;

RAID-6 используется там, где просто страшно или есть реальная угроза смерти сразу нескольких дисков в массиве. На практике встречается достаточно редко, в основном у параноиков;

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

Опять же, если еще упростить, то приходим к выводу, что там где нет большой и объемной работы с файлами вполне достаточно RAID-1 - операционная система, AD, TS, почта, прокси и т.д. Там же, где требуется серьезная работа с файлами: RAID-5 или RAID-10.

Идеальным решением для сервера баз данных представляется машина с шестью физическими дисками, два из которых объединены в зеркало RAID-1 и на нем установлена ОС, а оставшиеся четыре объединены в RAID-10 для быстрой и надежной работы с данными.

1.4 Комбинированные уровни

Помимо базовых уровней RAID 0 - RAID 5, описанных в стандарте, существуют комбинированные уровни RAID 1+0, RAID 3+0, RAID 5+0, RAID 1+5, которые различные производители интерпретируют каждый по-своему.

· RAID 1+0 -- это сочетание зеркалирования и чередования (см. выше).

· RAID 5+0 -- это чередование томов 5-го уровня.

· RAID 1+5 -- RAID 5 из зеркалированных пар.

Комбинированные уровни наследуют как преимущества, так и недостатки своих «родителей»: появление чередования в уровне RAID 5+0 нисколько не добавляет ему надёжности, но зато положительно отражается на производительности. Уровень RAID 1+5, наверное, очень надёжный, но не самый быстрый и, к тому же, крайне неэкономичный: полезная ёмкость тома меньше половины суммарной ёмкости дисков…Стоит отметить, что количество жёстких дисков в комбинированных массивах также изменится. Например для RAID 5+0 используют 6 или 8 жёстких дисков, для RAID 1+0 -- 4, 6 или 8.

1.5 Сравнение стандартных уровней RAID-массивов (Таблица 1)

массив файл запись диск

Таблица 1

Уровень

Количество дисков

Эффективная ёмкость*

Отказоустойчивость

Преимущества

Недостатки

0

любое

S * N

нет

наивысшая производительность

очень низкая надёжность

1

от 2, чётное

S * N / 2

1 диск**

высокая производительность и надёжность

стоимость дискового пространства больше в N-раз

от 3, нечётное

S * N / 2

1 диск**

высокая защищенность данных и неплохая производительность

стоимость дискового пространства больше в N-раз

10 или 01

от 4, чётное

S * N / 2

1 диск**

наивысшая производительность и очень высокая надёжность

двойная стоимость дискового пространства

5

от 3 до 16

S * (N-1)

1 диск

экономичность, высокая надёжность

производительность ниже RAID 0 и 1

50

от 6, чётное

S *(N-1)/2

1 диск**

высокая надёжность и производительность

высокая стоимость и сложность обслуживания

от 4

S * (N - 2)

1 диск

экономичность, высокая надёжность, скорость выше RAID 5

производительность ниже RAID 0 и 1, резервный накопитель работает на холостом ходу и не проверяется

5ЕЕ

от 4

S * (N - 2)

1 диск

быстрое реконструирование данных после сбоя, экономичность, высокая надёжность, скорость выше RAID 5

производительность ниже RAID 0 и 1, резервный накопитель работает на холостом ходу и не проверяется

6

от 4

S * (N - 2)

2 диска

экономичность, наивысшая надёжность

производительность ниже RAID 5

60

от 8, чётное

S * (N - 2) / 2

2 диска**

очень высокая надёжность

высокая стоимость и сложность организации

1.6 Дальнейшее развитие идеи RAID

Синий разъём PCI-X на материнской плате сервера FSC Primergy TX200 S2 специально предназначен для платы ноль-канального RAID (zero-channel RAID, ZCR). Установлен MegaRAID 320-0 Zero Channel RAID Controler фирмы LSI) (Рисунок 2)

Идея RAID-массивов -- в объединении дисков, каждый из которых рассматривается как набор секторов, и в результате драйвер файловой системы «видит» как бы единый диск и работает с ним, не обращая внимания на его внутреннюю структуру. Однако, можно добиться существенного повышения производительности и надёжности дисковой системы, если драйвер файловой системы будет «знать» о том, что работает не с одним диском, а с набором дисков.

Рассмотрим случай, когда требуется увеличение скорости и размера диска без требования увеличения надёжности -- случай, когда используется RAID-0. Если драйвер файловой системы будет знать, что имеет дело с несколькими дисками, он постарается размещать небольшие файлы так, чтобы каждый файл оказался целиком на одном диске -- это эквивалентно снижению фрагментированности файловой системы и позволяет существенно ускорить работу.

Более того: при разрушении любого из дисков в составе RAID-0 вся информация в массиве окажется потерянной. Но если драйвер файловой системы разместил каждый файл на одном диске, и при этом правильно организована структура директорий, то при разрушении любого из дисков будут потеряны только файлы, находившиеся на этом диске; а файлы, целиком находящиеся на сохранившихся дисках, останутся доступными.

1.7.Интересный факт

Сотрудник корпорации Y-E Data, которая является крупнейшим в мире производителем USB флоппи-дисководов, Дэниэл Олсон в качестве эксперимента создал RAID-массив из 4х iPod Shuffle. (рисунок 4) iPod RAID

Рисунок 4. iPod Shuffle

2. Практическая часть

Создание RAID-массивов

Итак, перейдём от теории к практике.

Ели говорить о домашних компьютерах, то наиболее востребованными и популярными являются RAID-массивы уровней 0 и 1. Использование RAID-массивов из трех и более дисков в домашних ПК -- скорее исключение из правила. Связано это с тем, что, с одной стороны, стоимость RAID-массивов возрастает пропорционально количеству задействованных в нем дисков, а с другой -- для домашних компьютеров первоочередное значение имеет емкость дискового массива, а не его производительность и надежность.

Поэтому в дальнейшем мы рассмотрим RAID-массивы уровней 0 и 1 на основе только двух дисков. В задачу нашего исследования будет входить сравнение производительности и функциональности RAID-массивов уровней 0 и 1, созданных на базе нескольких интегрированных RAID-контроллеров, а также исследование зависимости скоростных характеристик RAID-массива от размера страйпа.

Дело в том, что хотя теоретически при использовании RAID-массива уровня 0 скорость чтения и записи должна возрастать вдвое, на практике возрастание скоростных характеристик гораздо менее скромное и для разных RAID-контроллеров оно различно. Аналогично и для RAID-массива уровня 1: несмотря на то что теоретически скорость чтения должна увеличиваться вдвое, на практике не всё так гладко.

Утилита IOmeter

Поскольку мы задумывали эту статью как своеобразное руководство пользователя по созданию и тестированию RAID-массивов, логично будет начать с описания утилиты IOmeter (Input/Output meter), которая, как мы уже отметили, является своеобразным отраслевым стандартом для измерения производительности дисковых систем. Данная утилита бесплатна, и ее можно скачать с ресурса http://www.iometer.org.

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

При тестировании возможно создание специфической модели доступа, или «паттерна», которая позволяет конкретизировать выполнение жестким диском специфических операций. В случае создания конкретной модели доступа разрешается менять следующие параметры:

- размер запроса на передачу данных;

- случайное/последовательное распределение (в %);

- распределение операций чтения/записи (в %);

- количество отдельных операций ввода-вывода, работающих параллельно.

Утилита IOmeter не требует инсталляции на компьютер и состоит из двух частей: собственно IOmeter и Dynamo.

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

Для того чтобы начать работу с программой IOmeter, достаточно запустить файл IOmeter.exe. При этом открывается главное окно программы IOmeter (рис. 5).

Рис. 5. Главное окно программы IOmeter

Нужно отметить, что утилита IOmeter позволяет производить тестирование не только локальных дисковых систем (DAS), но и сетевых накопителей (NAS). К примеру, с ее помощью можно протестировать производительность дисковой подсистемы сервера (файл-сервера), используя для этого несколько сетевых клиентов. Поэтому часть закладок и инструментов в окне утилиты IOmeter относится именно к сетевым настройкам программы. Понятно, что при тестировании дисков и RAID-массивов эти возможности программы нам не потребуются, а потому мы не станем объяснять назначение всех вкладок и инструментов.

Итак, при запуске программы IOmeter в левой части главного окна (в окне Topology) будет отображаться древовидная структура всех запущенных генераторов нагрузки (экземпляров Dynamo). Каждый запущенный экземпляр генератора нагрузки Dynamo называется менеджером (manager). Кроме того, программа IOmeter является многопотоковой и каждый отдельный запущенный поток экземпляра генератора нагрузки Dynamo называется Worker. Количество запущенных Worker'ов всегда соответствует количеству логических ядер процессора.

В нашем примере используется только один компьютер с четырехъядерным процессором, поддерживающим технологию Hyper-Threading, поэтому запускается лишь один менеджер (один экземпляр Dynamo) и восемь (по количеству логических ядер процессора) Worker'ов.

Собственно, для тестирования дисков в данном окне нет необходимости что-либо менять или добавлять.

Если выделить мышью название компьютера в древовидной структуре запущенных экземпляров Dynamo, то в окне Target на вкладке Disk Target отобразятся все диски, дисковые массивы и прочие накопители (включая сетевые), установленные в компьютере. Это те накопители, с которыми программа IOmeter может работать. Носители могут быть помечены желтым или голубым цветом. Желтым цветом отмечаются логические разделы носителей, а голубым -- физические устройства без созданных на них логических разделов. Логический раздел может быть перечеркнут или не перечеркнут. Дело в том, что для работы программы с логическим разделом его нужно прежде подготовить, создав на нем специальный файл, равный по размеру емкости всего логического раздела. Если логический раздел перечеркнут, то это значит, что раздел еще не подготовлен для тестирования (он будет подготовлен автоматически на первом этапе тестирования), ну а если раздел не перечеркнут, то это означает, что на логическом разделе уже создан файл, полностью готовый для тестирования.

Отметим, что, несмотря на поддерживаемую возможность работы с логическими разделами, оптимально тестировать именно не разбитые на логические разделы диски. Удалить логический раздел диска можно очень просто -- через оснастку Disk Management. Для доступа к ней достаточно щелкнуть правой кнопкой мыши на значке Computer на рабочем столе и в открывшемся меню выбрать пункт Manage. В открывшемся окне Computer Management в левой части необходимо выбрать пункт Storage, а в нем -- Disk Management. После этого в правой части окна Computer Management отобразятся все подключенные диски. Щелкнув правой кнопкой по нужному диску и выбрав в открывшемся меню пункт Delete Volume…, можно удалить логический раздел на физическом диске. Напомним, что при удалении с диска логического раздела вся информация на нем удаляется без возможности восстановления.

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

Итак, вернемся к описанию утилиты IOmeter. В окне Target на вкладке Disk Target необходимо выбрать тот диск (или дисковый массив), который будет подвергаться тестированию. Далее необходимо открыть вкладку Access Specifications (рис. 6), на которой можно будет определить сценарий тестирования.

Рис. 6. Вкладка Access Specifications утилиты IOmeter

В окне Global Access Specifications имеется список предустановленных сценариев тестирования, которые можно присвоить менеджеру загрузки. Впрочем, эти сценарии нам не понадобятся, поэтому все их можно выделить и удалить (для этого предусмотрена кнопка Delete). После этого нажмем на кнопку New, чтобы создать новый сценарий тестирования. В открывшемся окне Edit Access Specification можно определить сценарий загрузки диска или RAID-массива.

Предположим, мы хотим выяснить зависимость скорости последовательного (линейного) чтения и записи от размера блока запроса на передачу данных. Для этого нам нужно сформировать последовательность сценариев загрузки в режиме последовательного чтения при различных размерах блока, а затем последовательность сценариев загрузки в режиме последовательной записи при различных размерах блока. Обычно размеры блоков выбираются в виде ряда, каждый член которого вдвое больше предыдущего, а первый член этого ряда равен 512 байт. То есть размеры блоков составляют следующий ряд: 512 байт, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 Кбайт, 1 Мбайт. Делать размер блока больше 1 Мбайт при последовательных операциях нет смысла, поскольку при таких больших размерах блока данных скорость последовательных операций не изменяется.

Итак, сформируем сценарий загрузки в режиме последовательного чтения для блока размером 512 байт.

В поле Name окна Edit Access Specification вводим название сценария загрузки. Например, Sequential_Read_512. Далее в поле Transfer Request Size задаем размер блока данных 512 байт. Ползунок Percent Random/Sequential Distribution (процентное соотношение между последовательными и выборочными операциями) сдвигаем до упора влево, чтобы все наши операции были только последовательными. Ну а ползунок Percent Read/Write Distribution, задающий процентное соотношение между операциями чтения и записи, сдвигаем до упора вправо, чтобы все наши операции были только чтением. Остальные параметры в окне Edit Access Specification менять не нужно (рис. 7).

Рис. 7. Окно Edit Access Specification для создания сценария загрузки последовательного чтения при размере блока данных 512 байт

Нажимаем на кнопку Ok, и первый созданный нами сценарий отобразится в окне Global Access Specifications на вкладке Access Specifications утилиты IOmeter.

Аналогично нужно создать сценарии и для остальных блоков данных, однако, чтобы облегчить себе работу, проще не создавать сценарий каждый раз заново, нажимая для этого кнопку New, а, выбрав последний созданный сценарий, нажать кнопку Edit Copy (редактировать копию). После этого опять откроется окно Edit Access Specification с настройками нашего последнего созданного сценария. В нем достаточно будет поменять лишь название и размер блока. Проделав аналогичную процедуру для всех остальных размеров блоков, можно приступить к формированию сценариев для последовательной записи, что делается совершенно аналогично, за исключением того, что ползунок Percent Read/Write Distribution, задающий процентное соотношение между операциями чтения и записи, нужно сдвинуть до упора влево.

Аналогично можно создать сценарии для выборочной записи и чтения.

После того как все сценарии будут готовы, их нужно присвоить менеджеру загрузки, то есть указать, с какими сценариями будет работать Dynamo.

Для этого еще раз проверяем, что в окне Topology выделено название компьютера (то есть менеджер нагрузки на локальном ПК), а не отдельный Worker. Это гарантирует, что сценарии нагрузки будут присваиваться сразу всем Worker'ам. Далее в окне Global Access Specifications выделяем все созданные нами сценарии нагрузки и нажимаем кнопку Add. Все выделенные сценарии нагрузки добавятся в окно Assigned Access Specification (рис. 8).

Рис. 8. Присвоение созданных сценариев нагрузки менеджеру нагрузки

После этого нужно перейти к вкладке Test Setup (рис. 9), на которой можно задать время выполнения каждого созданного нами сценария. Для этого в группе Run Time задаем время выполнения сценария нагрузки. Вполне достаточно будет задать время, равное 3 мин.

Рис. 9. Задание времени выполнения сценария нагрузки

Кроме того, в поле Test Description необходимо указать название всего теста. В принципе, данная вкладка имеет массу других настроек, однако для наших задач они не нужны.

После того как все необходимые настройки произведены, рекомендуется сохранить созданный тест, нажав на панели инструментов на кнопку с изображением дискеты. Тест сохраняется с расширением *.icf. Впоследствии можно будет воспользоваться созданным сценарием нагрузки, запустив не файл IOmeter.exe, а сохраненный файл с расширением *.icf.

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

В ходе тестирования промежуточные результаты можно наблюдать на вкладке Result Display, а определить, к какому сценарию нагрузки они относятся, можно на вкладке Access Specifications. В окне Assigned Access Specification исполняемый сценарий отображается зеленым, выполненные сценарии -- красным, а еще не выполненные сценарии -- синим цветом.

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

Создание RAID-массива на базе контроллера GIGABYTE SATA2

Итак, мы начинаем создание RAID-массива на базе двух дисков с использованием интегрированного на плате RAID-контроллера GIGABYTE SATA2. Конечно, сама компания Gigabyte не производит чипов, а потому под чипом GIGABYTE SATA2 скрывается перемаркированный чип другой фирмы. Как можно выяснить из INF-файла драйвера, речь идет о контроллере серии JMicron JMB36x.

Доступ в меню настройки контроллера возможен на этапе загрузки системы, для чего нужно нажать комбинацию клавиш Ctrl+G, когда появится соответствующая надпись на экране. Естественно, прежде в настройках BIOS нужно определить режим работы двух SATA-портов, относящихся к контроллеру GIGABYTE SATA2, как RAID (в противном случае доступ в меню конфигуратора RAID-массива будет невозможен).

Меню настройки RAID-контроллера GIGABYTE SATA2 довольно простое. Как мы уже отмечали, контроллер является двухпортовым и позволяет создавать RAID-массивы уровня 0 или 1. Через меню настройки контроллера можно удалить или создать RAID-массив. При создании RAID-массива имеется возможность указать его название, выбрать уровень массива (0 или 1), задать размер страйпа для RAID 0 (128, 84, 32, 16, 8 или 4K), а также определить размер массива.

Если массив создан, то какие-либо изменения в нем уже невозможны. То есть нельзя впоследствии для созданного массива изменить, например, его уровень или размер страйпа. Для этого прежде нужно удалить массив (с потерей данных), а потом создать его заново. Собственно, это свойственно не только контроллеру GIGABYTE SATA2. Невозможность изменения параметров созданных RAID-массивов -- особенность всех контроллеров, которая вытекает из самого принципа реализации RAID-массива.

После того как массив на базе контроллера GIGABYTE SATA2 создан, текущую информацию о нем можно просмотреть, используя утилиту GIGABYTE RAID Configurer, которая устанавливается автоматически вместе с драйвером.

Создание RAID-массива на базе контроллера Marvell 9128

Конфигурирование RAID-контроллера Marvell 9128 возможно только через настройки BIOS платы Gigabyte GA-EX58A-UD7. Вообще, нужно сказать, что меню конфигуратора контроллера Marvell 9128 несколько сыровато и может ввести в заблуждение неискушенных пользователей. Впрочем, об этих незначительных недоработках мы расскажем чуть позже, а пока рассмотрим основные функциональные возможности контроллера Marvell 9128.

Итак, несмотря на то что этот контроллер поддерживает работу с дисками с интерфейсом SATA III, он также полностью совместим с дисками с интерфейсом SATA II.

Контроллер Marvell 9128 позволяет создать RAID-массив уровней 0 и 1 на базе двух дисков. Для массива уровня 0 можно задать размер страйпа 32 или 64 Кбайт, а также указать имя массива. Кроме того, имеется и такая опция, как Gigabyte Rounding, которая нуждается в пояснении. Несмотря на название, созвучное с именем компании-производителя, функция Gigabyte Rounding никакого отношения к ней не имеет. Более того, она никак не связана с RAID-массивом уровня 0, хотя в настройках контроллера ее можно определить именно для массива этого уровня. Собственно, это первая из тех недоработок конфигуратора контроллера Marvell 9128, о которых мы упоминали. Функция Gigabyte Rounding определена только для RAID-массива уровня 1. Она позволяет использовать для создания RAID-массива уровня 1 два диска (например, различных производителей или разные модели), емкость которых немного отличается друг от друга. Функция Gigabyte Rounding как раз и задает разницу в размерах двух дисков, применяемых для создания RAID-массива уровня 1. В контроллере Marvell 9128 функция Gigabyte Rounding позволяет установить разницу в размерах дисков 1 или 10 Гбайт.

Еще одна недоработка конфигуратора контроллера Marvell 9128 заключается в том, что при создании RAID-массива уровня 1 у пользователя имеется возможность выбора размера страйпа (32 или 64 Кбайт). Однако понятие страйпа вообще не определено для RAID-массива уровня 1.

Сравнение производительности RAID-массивов

Для тестирования RAID-массивов с помощью утилиты IOmeter мы создали сценарии нагрузки последовательного чтения, последовательной записи, выборочного чтения и выборочной записи. Размеры блоков данных в каждом сценарии нагрузки составляли следующую последовательность: 512 байт, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 Кбайт, 1 Мбайт.

На каждом из RAID-контроллеров создавался массив RAID 0 со всеми допустимыми размерами страйпов и массив RAID 1. Кроме того, дабы иметь возможность оценить прирост производительности, получаемый от использования RAID-массива, мы также протестировали на каждом из RAID-контроллеров одиночный диск.

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

Контроллер GIGABYTE SATA2

Прежде всего рассмотрим результаты тестирования RAID-массивов на базе контроллера GIGABYTE SATA2 (рис. 10-17). В общем-то контроллер оказался в буквальном смысле загадочным, а его производительность просто разочаровала.

Рис. 10. Скорость последовательных и выборочных операций для диска Western Digital WD1002FBYS (контроллер GIGABYTE SATA2)

Рис. 11. Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 128 Кбайт (контроллер GIGABYTE SATA2)

Рис. 12. Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 64 Кбайт (контроллер GIGABYTE SATA2)

Рис. 13 Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 32 Кбайт (контроллер GIGABYTE SATA2)

Рис. 14. Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 16 Кбайт (контроллер GIGABYTE SATA2)

Рис. 15. Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 8 Кбайт (контроллер GIGABYTE SATA2)

Рис. 16. Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 4 Кбайт (контроллер GIGABYTE SATA2)

Рис. 17. Скорость последовательных и выборочных операций для RAID 1 (контроллер GIGABYTE SATA2)

Если посмотреть на скоростные характеристики одного диска (без RAID-массива), то максимальная скорость последовательного чтения составляет 102 Мбайт/с, а максимальная скорость последовательной записи -- 107 Мбайт/с.

При создании массива RAID 0 с размером страйпа 128 Кбайт максимальная скорость последовательного чтения и записи увеличивается до 125 Мбайт/с, то есть возрастает примерно на 22%.

При размере страйпа 64, 32 или 16 Кбайт максимальная скорость последовательного чтения составляет 130 Мбайт/с, а максимальная скорость последовательной записи -- 141 Мбайт/с. То есть при указанных размерах страйпа максимальная скорость последовательного чтения возрастает на 27%, а максимальная скорость последовательной записи -- на 31%.

Вообще-то это маловато для массива уровня 0, и хотелось бы, чтобы максимальная скорость последовательных операций была выше.

При размере страйпа 8 Кбайт максимальная скорость последовательных операций (чтения и записи) остается примерно такой же, как и при размере страйпа 64, 32 или 16 Кбайт, однако с выборочным чтением -- явные проблемы. При увеличении размера блока данных вплоть до 128 Кбайт скорость выборочного чтения (как и должно быть) возрастает пропорционально размеру блока данных. Однако при размере блока данных более 128 Кбайт скорость выборочного чтения падает практически до нуля (примерно до 0,1 Мбайт/с).

При размере страйпа 4 Кбайт падает не только скорость выборочного чтения при размере блока более 128 Кбайт, но и скорость последовательного чтения при размере блока более 16 Кбайт.

Использование массива RAID 1 на контроллере GIGABYTE SATA2 практически не изменяет (в сравнении с одиночным диском) скорость последовательного чтения, однако максимальная скорость последовательной записи уменьшается до 75 Мбайт/с. Напомним, что для массива RAID 1 скорость чтения должна возрастать, а скорость записи не должна уменьшаться в сравнении со скоростью чтения и записи одиночного диска.

На основании результатов тестирования контроллера GIGABYTE SATA2 можно сделать только один вывод. Использовать данный контроллер для создания массивов RAID 0 и RAID 1 имеет смысл только в том случае, когда все остальные RAID-контроллеры (Marvell 9128, ICH10R) уже задействованы. Хотя представить себе подобную ситуацию довольно сложно.

Контроллер Marvell 9128

Контроллер Marvell 9128 продемонстрировал гораздо более высокие скоростные характеристики в сравнении с контроллером GIGABYTE SATA2. Собственно, различия проявляются даже при работе контроллера с одним диском. Если для контроллера GIGABYTE SATA2 максимальная скорость последовательного чтения составляет 102 Мбайт/с и достигается при размере блока данных 128 Кбайт, то для контроллера Marvell 9128 максимальная скорость последовательного чтения составляет 107 Мбайт/с и достигается при размере блока данных 16 Кбайт.

И для контроллера GIGABYTE SATA2, и для контроллера Marvell 9128 максимальная скорость последовательной записи составляет 107 Мбайт/с. Однако для GIGABYTE SATA2 максимальная скорость последовательной записи обеспечивается при размере блока данных 64 Кбайт, а для Marvell 9128 -- при 16 Кбайт. Как видите, различия в скоростных характеристиках этих контроллеров при работе с одним диском довольно существенные.

При создании массива RAID 0 с размером страйпа 64 и 32 Кбайт максимальная скорость последовательного чтения увеличивается до 211 Мбайт/с, а последовательной записи -- до 185 Мбайт/с. То есть при указанных размерах страйпа максимальная скорость последовательного чтения возрастает на 97%, а максимальная скорость последовательной записи -- на 73%.

Существенной разницы по скоростным показателям массива RAID 0 с размером страйпа 32 и 64 Кбайт не наблюдается, однако применение страйпа 32 Кбайт более предпочтительно, поскольку в этом случае скорость последовательных операций при размере блока менее 128 Кбайт будет немного выше.

Контроллер ICH10R

RAID-контроллер, встроенный в ICH10R, оказался самым высокопроизводительным из всех протестированных нами (рис. 18-23). При работе с одиночным диском (без создания RAID-массива) его производительность фактически такая же, как и производительность контроллера Marvell 9128. Максимальная скорость последовательного чтения и записи составляет 107 Мбайт и достигается при размере блока данных 16 Кбайт.

Рис. 18. Скорость последовательных и выборочных операций для диска Western Digital WD1002FBYS (контроллер ICH10R)

Рис. 19. Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 128 Кбайт (контроллер ICH10R)

Рис. 20. Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 64 Кбайт (контроллер ICH10R)

Рис. 21. Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 32 Кбайт (контроллер ICH10R)

Рис. 22. Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 16 Кбайт (контроллер ICH10R)

Рис. 23. Скорость последовательных и выборочных операций для RAID 0 c размером страйпа 8 Кбайт (контроллер ICH10R)

При создании массива RAID 1 на контроллере ICH10R максимальная скорость последовательных операций составляет 106 Мбайт/с, но достигается она при размере блока всего 8 Кбайт, в то время как для контроллера Marvell 9128 максимальная скорость последовательного чтения в RAID 1 обеспечивается при размере блока 64 Кбайт, а максимальная скорость последовательной записи -- при размере блока 128 Кбайт.

Итак, резюмируя, еще раз подчеркнем, что RAID-контроллер, встроенный в ICH10R, существенно превосходит по производительности все остальные интегрированные RAID-контроллеры. А учитывая, что он обладает и большей функциональностью, оптимально использовать именно этот контроллер и просто забыть о существовании всех остальных (если, конечно, в системе не применяются диски SATA III).

Заключение

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

Как следствие, наверняка многие из Вас, так или иначе, однажды слышали о неких рейд-массивах, которые можно делать из обычных жестких дисков с целью ушустрения работы этих самых дисков и компьютера в целом или обеспечения повышенной надежности хранения данных. Наверняка так же Вы знаете (а если и не знаете, то не беда) о том, что эти массивы имеют разные порядковые номера (0, 1, 2, 3, 4 и пр.), а так же выполняют вполне себе различные функции. Оное явление действительно имеет место быть в природе и, как Вы думаю уже догадались, как раз о этих самых RAID-массивах

RAID -- это дисковый массив (т.е. комплекс или, если хотите, связка) из нескольких устройств, - жестких дисков. Как я и говорил выше, этот массив служит для повышения надёжности хранения данных и/или для повышения скорости чтения/записи информации. Собственно, то чем именно занимается оная связка из дисков, - ускорением работы или повышением безопасности данных, зависит от Вас, а точнее, от выбора текущей конфигурации рейды. Разные типы этих конфигураций как раз и отмечаются разными номерами, - 1, 2, 3, 4 и пр, - и выполняют разные функции.

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

Просто, например, в случае построения 0-вой версии (описание вариаций 0, 1, 2, 3 и пр., - читайте ниже) Вы получите ощутимый прирост производительности. Да и вообще жесткий диск нынче как раз таки узкий канал в быстродействии системы. Почему? Ну судите сами, - процессоры обзаводятся ядрами, частотами, кэшем и архитектурой; видеокарты, - числом пиксельных конвейеров, количеством и разрядностью памяти, шейдерными блоками, частотами видеопроцессоров и кое-где даже количеством этих процессоров; оперативная память, - частотами и таймингами; жесткие диски же растут разве что в объеме ибо скорость оборота головки оных (за исключением редких моделей типа Raptor'ов) замерла уже довольно давно на отметке в 7200, кэш тоже не то чтобы растет, архитектура остается почти прежней.. В общем в плане производительности диски стоят на месте (ситуацию могут спасти разве что развивающиеся SSD), а ведь они играют весомую роль в работе системы и, местами, полновесных приложений.

В случае же построения единичного (в смысле за номером 1) рейда Вы чуток потеряете в производительности, но зато получите почти 100%-ую гарантию безопасности Ваших данных ибо оные будут до байтика полностью закалиться и даже в случае выхода из строя одного диска, - все целиком и полностью будет находится на втором без всяких потерь.

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

Физически RAID-массив представляет собой от двух до n-го количества жестких дисков подключенных к мат.плате поддерживающей возможность создания RAID (или к соотвествующему контроллеру, что реже ибо оные дороги для рядового пользователя (контроллеры обычно используются на серверах в силу повышенной надежности и производительности)), т.е. на глаз ничего внутри системника не изменяется, никаких лишних подключений или соединений дисков между собой или с чем-то еще попросту нет. В общем в аппаратной части всё почти как всегда, а изменяется лишь программный подход, который, собственно, и задает, путем выбора типа рейда, как именно должны работать подключенные диски.

Программно, в системе, после создания рейда, тоже не появляется никаких особенных причуд. По сути вся разница в работе с рейдом заключается только в небольшой настройке в биосе, которая собственно организует рейд (см.ниже) и в использовании драйвера. В остальном ВСЁ совершенно тоже самое - в “Мой компьютер” те же C, D и прочие диски, всё те же папки, файлы.. В общем и программно, на глаз, полная идентичность.

Установка массива не представляет собой ничего сложного: просто берем мат.плату, которая поддерживает технологию RAID, берем два полностью идентичных, - это важно!, - как по характеристикам (размеру, кэшу, интерфейсу и пр) так и по производителю и модели, диска и подключаем их к оной мат.плате. Далее просто включаем компьютер, заходим в BIOS и выставляем параметр SATA Configuration: RAID. После этого в процессе загрузки компьютера (как правило, до загрузки Windows) появляется панель отображающая информацию о диска в рейде и вне него, где, собственно нужно нажать CTR-I, чтобы настроить рейд (добавить диски в него, удалить и тд и тп). Собственно, вот и все. Дальше идет установка Windows и прочие радости жизни, т.е, опять же, всё как всегда.

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

Как я уже говорил, RAID массивов существует несколько видов (как минимум из основного базиса, - это RAID 1, RAID 2, RAID 3, RAID 4, RAID 5, RAID 6).

Список использованных источников

1. Ташков П.А. Восстановление данных на 100%, 2009.- 208с.

2. http://www.windxp.com.ru/articles48.htm

3. http://www.itsaturn.ru/articles/article13.html

4. http://ru.wikipedia.org/wiki/RAID

5. http://www.itsaturn.ru/articles/article13.html

6. http://www.compress.ru/article.aspx?id=21065

7. http://sonikelf.ru/chto-takoe-raid-massivy-i-zachem-oni-nuzhny/?comments=1

Размещено на Allbest.ru


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

  • Понятие и назначение, основы создания RAID–массивов, принципы их работы и законы функционирования. Классификация и разновидности систем RAID, их отличительные признаки, оценка преимуществ и недостатков каждого вида. Тестовая разработка RAID-массива.

    курсовая работа [1,7 M], добавлен 24.04.2010

  • Проектирование программы объединения двух накопителей в один узел памяти для увеличения ее объёма и скорости доступа к ней. Создание RAID-массива нулевого уровня как средство повышения быстродействия дисковой подсистемы, его преимущества и недостатки.

    дипломная работа [1,0 M], добавлен 29.12.2014

  • RAID - масив з декількох дисків, керованих контролером, взаємопов'язаних швидкісними каналами. Рівні RAID масивів: переваги та недоліки. Кількість жорстких дисків в комбінованих масивах. Розподіл файлів по JBOD-масиву. Мережеві системи зберігання даних.

    контрольная работа [1,6 M], добавлен 15.03.2013

  • Широкое использование компьютерных и информационных технологий. Концепции типов данных. Алгоритмы сортировки одномерных массивов. Описание двумерного массива Паскаля. Методы доступа к элементам массивов. Индексные, динамические и гетерогенные массивы.

    курсовая работа [66,3 K], добавлен 07.12.2010

  • Изучение понятия и основных видов массивов. Ввод массива с клавиатуры и вывод на экран. Сортировка массивов. Метод простых обменов (пузырьковая сортировка). Сортировка простым выбором и простым включением. Решение задач с использованием массивов Паскаля.

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

  • Производители жестких дисков и их классификация. Повышение плотности записи на винчестере. Дисковые массивы, некоторые аспекты реализации RAID-систем. Файловые системы FAT 16, FAT 32, NTFS. Диски со встроенным шифрованием. Форматирование жесткого диска.

    книга [2,4 M], добавлен 10.09.2013

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

    лабораторная работа [12,8 K], добавлен 09.01.2011

  • Понятие массива и правила описания массивов в программах на языке С. Рассмотрение основных алгоритмов обработки одномерных массивов. Примеры программ на языке С для всех рассмотренных алгоритмов. Примеры решения задач по обработке одномерных массивов.

    учебное пособие [1,1 M], добавлен 22.02.2011

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

    дипломная работа [354,2 K], добавлен 15.12.2012

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

    отчет по практике [309,0 K], добавлен 07.01.2014

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