скачать рефераты
  RSS    

Меню

Быстрый поиск

скачать рефераты

скачать рефератыРеферат: ОС Linux. Руководство системного администратора

файла, в данном случае символьное устройство. Для обычных файлов

используется символ '-', для каталогов - 'd', для блочных

устройств - 'b' (см. pуководство к команде ls(1) для более

подробной информации).

     Наличие большого количества файлов устройств совсем не

означает, что эти устройства на самом деле установлены. Наличие

файла /dev/sda ни о чем не говорит и совсем не означает, что в

компьютере установлен жесткий диск SCSI. Это предусмотрено для

облегчения установки программ и нового оборудования (нет

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

устройств).

                         4.2  Жесткие диски

     В этом разделе рассматриваются термины, связанные с

использованием жестких дисков.

     Жесткий диск состоит из одной или нескольких круглых пластин,

одна или обе стороны которой покрыты магнитным материалом,

используемым для хранения информации. Для каждой стороны

предусмотрена головка, позволяющая считывать или записывать

информацию. Пластины вращаются на одной оси обычно со скоростью

3600 оборотов в минуту, хотя в более быстрых пpиводах используются

более высокие скорости. Головки перемещаются вдоль радиуса

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

поверхности.

     Центральный процессор (CPU) и жесткий диск обмениваются

информацией через дисковый контроллер. Это упрощает схему

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

дисков могут быть построены с использованием одного интерфейса для

связи с компьютером. Поэтому, например, для считывания сектора

можно воспользоваться всего лишь одной командой вместо сложных

последовательностей электрических сигналов для того, чтобы

переместить головки к нужной позиции, синхронизировать вращение

диска и считывание или запись данных и др. (на самом деле,

интерфейс между компьютером и контроллером тоже достаточно сложен,

но не на столько, на сколько он был бы без использования

контроллера). Котроллер также выполняет и некоторые другие

функции, такие как буфеpизация информации или автоматическая

замена плохих секторов.

     Существуют еще некоторые понятия, знание которых необходимо

для понимания работы жесткого диска. Обычно поверхности делятся на

концентрические кольца, называемые дорожками или трэками, которые,

в свою очередь, делятся на сектора. Такое разделение нужно для

указания нужных позиций на диске и для распределения дискового

пространства на файлы. Для нахождения нужной информации на диске

достаточно примерно следующих данных: "поверхность 3, дорожка 5,

сектор 7". Обычно количество секторов на дорожке одинаково для

всех дорожек на диске, хотя в некоторых устройствах на внешних

трэках размещается большее количество секторов (все сектора имеют

один и тот же физический размер, поэтому на более длинных дорожках

помещается больше секторов). Стандартный размер сектора равен 512

байт. Диск не может оперировать данными, объем которых менее

одного сектора.

     Каждая поверхность разделена на дорожки (и сектора) таким

образом, что при перемещении головки одной поверхности к

какой-либо дорожке, головки остальных поверхностей будут

установлены на этой же дорожке. Совокупность всех таких дорожек

называется цилиндром. Для перемещения головок от одной дорожки

(цилиндра) к другой требуется какое-то количество времени. Таким

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

производится сразу (например, файл), в одном цилиндре, то

необходимость в перемещении головок отпадает. Это повышает

производительность работы диска. Не всегда представляется

возможным разместить файл подобным образом. Файлы, которые

хранятся в разных местах на диске, называются фрагментированными.

     Количество поверхностей (или головок, что в принципе одно и

то же), цилиндров и секторов сильно различается у разных

устройств. Совокупность таких параметров называется структурой

диска, которая хранится в специальной памяти, для питания которой

используются аккумуляторы. Эта память называется CMOS RAM, откуда

операционная система может считывать информацию во время ее

загрузки или во время установки драйвера.

     К сожалению, BIOS построен так, что не представляется

возможным указать дорожку, номер которой превышает 1024, для

записи в CMOS RAM, что является серьезным ограничением для дисков

больших объемов. Для решения этой проблемы контроллер жесткого

диска передает заведомо неправильную информацию о структуре диска

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

соответсвующее реальности. Например, жесткий диск может состоять

из 8 головок, 2048 дорожек с 35 секторами в каждой. В то время как

контроллер может утверждать, что диск имеет 16 головок и 1024

дорожки с 35 секторами в каждой, не превышая предела на хранение в

CMOS RAM числа дорожек и преобразуя адресацию уменьшая номер

головки вдвое и удваивая номер дорожки. Преобразование адресов

искажает представление операционной системы о структуре диска, что

усложняет размещение требуемой информации на одном цилиндре для

увеличения производительности.

     Преобразование используется только для IDE дисков. В SCSI

дисках используется доступ с применением последовательного номера

сектора (который контроллер преобразует в номер головки, цилиндра

и сектора диска) и другой метод обмена информацией с процессором.

Однако, процессор может не иметь представления о реальной

структуры диска.

     Так как системе Linux часто не известна информация о

структуре диска, то в файловых системах не используется размещение

отдельных файлов в пределах одного цилиндра. Вместо этого

применяется размещение файлов в цепочках последовательно

расположенных секторов, что дает приблизительно одинаковую

производительность. Хотя проблема усложняется за счет

использования специальных возможностей контроллера, таких как

внутреннее кэширование и других автоматических функций.

     Каждый жесткий диск представлен отдельным файлом. Для IDE

дисков обычно существует только два таких файла. Они известны как

/dev/hda и /dev/hdb соответственно. Для SCSI дисков используются

файлы /dev/sda и /dev/sdb и т.д. Подобные обозначения применяются

и для других типов дисков. Файлы устройств для жестких дисков

предоставляют доступ к целому диску, не рассматривая разделы

(которые будут описаны ниже) и поэтому не составляет труда

перепутать разделы диска или информацию в них, если не быть

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

для доступа к информации в MBR (которые также рассмотрены ниже).

                         4.3  Гибкие диски

     Гибкий диск состоит из мягкой пластины, покрытой с одной или

обоих сторон материалом, подобным тому, которым покрыты пластины в

жестком диске. У самой дискеты нет никаких головок, они

установлены в приводе. Дискету можно сравнить с одной пластиной,

установленной в жестком диске, только дискета является съемной и

привод может использоваться для работы с различными дисками, в то

время как жесткий диск является одним неделимым устройством.

     Также как жесткий диск, дискета делится на дорожки и сектора

(а две соответствующие дорожки на разных сторонах составляют

цилиндр), но их намного меньше, чем на жестком диске.

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

Например, привод на 3.5 дюйма может работать с дисками на 720 Кб и

1.44 Мб. Так как при использовании разных типов дисков, работа

самого привода немного различается, к тому же операционная система

должна иметь представление об объеме диска, существует множество

файлов устройств для работы с приводами для гибких дисков.

Напpимеp, файл /dev/fd0H1440 соответствует первому приводу (fd0)

формата 3.5 дюйма с дискетой на 3.5 дюйма высокой плотности (H)

объемом 1440 Кб (1440), т.е. позволяет pаботать с обычными

дискетами на 3.5 дюйма.

     Имена файлов для приводов гибких дисков довольно сложные,

поэтому в системе Linux существует специальный тип устройства,

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

Метод определения заключается в последовательном чтении первого

сектора вставленной дискеты с пpименением различных способов

чтения, до тех пор, пока он не будет правильно считан.

Естественно, диск должен быть сначала отформатирован.

Автоматическими устройствами являются /dev/fd0, /dev/fd1 и т.д.

     Параметры для автоматических устройств, которые используются

для доступа к диску, могут быть установлены с помощью программы

setfdprm(8). Это может быть полезно в некоторых случаях, например,

если используются дискеты нестандартного объема (т.е. дискета

имеет нестандартное количество секторов в дорожке) или если

определение типа диска по какой-либо причине не работает и

соответствующий файл устройства отсутствует.

                       4.4  Форматирование

     Форматирование - это процесс записи специальных отметок на

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

и секторов. Перед форматированием диска его поверхность состоит из

смеси различных магнитных сигналов. При форматировании эти сигналы

упорядочиваются и происходит формирование дорожек и секторов. В

действительности, все намного сложнее и выходит за рамки этой

книги. Нужно знать только то, что диск не может использоваться, до

тех пор пока он не будет отформатирован.

     При работе в MS-DOS, форматирование также включает в себя

процесс создания файловой системы. Там часто эти два процесса

совмещены, особенно при работе с гибкими дисками. Но если нужно

сделать разграничение, то действительным форматированием называют

форматированием на низком уровне, а создание файловой системы -

форматированием на высоком уровне. При работе в системе UNIX (а

также в этой книге) вместо этих двух понятий будут использоваться

понятия форматирование и, соответственно, формирование файловой

системы.

     Для IDE и некоторых SCSI дисков форматирование производится

при их изготовлении и, обычно, не требуется повторения этой

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

действительности, форматирование диска может привести к ухудшению

его работы, например, по причине того, что диск должен быть

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

замены плохих секторов.

     Форматируемые диски часто поставляются со специальной

программой, потому как внутренние интерфейсы у разных приводов

различны. Эта программа обычно раположена в микросхеме BIOS

контроллера или поставляется отдельно как программа для MS-DOS. Ни

одни из них не могут быть использованы для системы Linux.

     Во время форматирования могут быть обнаружены плохие блоки

или сектора, которые не должны быть использованы при дальнейшей

работе. Эти функции возлагаются на файловую систему. Хотя можно

создать небольшой раздел диска, который включает в себя только

плохие блоки. Это эффективно при большом количестве плохих блоков,

так как при работе файловой системы могут возникнуть некоторые

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

     Для форматирования дискет используется программа fdformat(8).

В качестве параметра указывается файл устройства. Например,

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

размером 3.5 дюйма высокой плотности в первом приводе для гибких

дисков:

ttyp5 root ~ $ fdformat /dev/fd0H1440

Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.

Formatting ... done

Verifying ... done

ttyp5 root ~ $

     Если для форматирования используется автоматическое

устройство (например, /dev/fd0), то сначала нужно указать

параметры этого устройства с помощью программы setfdprm(8). Для

получения такого же результата, как в предыдущем примере, нужно

выполнить следующие действия:

ttyp5 root ~ $ setfdprm /dev/fd0 1440/1440

ttyp5 root ~ $ fdformat /dev/fd0

Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.

Formatting ... done

Verifying ... done

Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.

Formatting ... done

Verifying ... done

ttyp5 root ~ $

     Обычно проще указать точный файл устройства, который

соответствует типу форматируемого диска.

     Программа fdformat также используется для выявления плохих

блоков. Она обрабатывает плохой блок несколько раз. Если проблема

не очень серьезна (загрязненная рабочая поверхность

считывающих/записывающих головок, плохой контакт в разъеме

контроллера), то fdformat продолжит свою работу, но возникновение

реальной ошибки прервет процесс проверки. Ядро отображает

появление каждой ошибки на терминале. Если используется syslog, то

сообщение поступает в файл /usr/adm/messages. fdformat не сообщает

специфику ошибки (обычно это не имеет значения, так как дисководы

это довольно дешевые устройства и их замена не составляет

проблем).

ttyp5 root ~ $ fdformat /dev/fd0H1440

Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.

Formatting ... done

Verifying ... read: Unknown error

ttyp5 root ~ $

     Команда badblocks(8) используется для поиска плохих блоков на

любом диске или разделе диска (включая гибкие диски). Она не

форматирует диск, поэтому может быть использована для проверки

даже существующих файловых систем. В следующем примере

рассматривается проверка 3.5 дюймовой дискеты с двумя плохими

блоками.

ttyp5 root ~ $ badblocks /dev/fd0H1440

718

719

ttyp5 root ~ $

     Программа выводит номера найденных плохих блоков. Во многих

файловых системах есть средства, позволяющие избежать

использования таких блоков. Для таких целей существует список

известных плохих блоков, который инициализируется при установке

файловой системы и может быть модифицирован в дальнейшем.

Первичный поиск плохих блоков производится при выполнении команды

mkfs (которая инициализирует файловую систему), в последующем

проверка производится с помощью программы badblocks, а модификация

списка - при помощи команды fsck. Эти команды будут рассмотрены

ниже.

                       4.5  Дисковые разделы

     Весь жесткий диск может быть разбит на несколько разделов,

причем каждый раздел представлен так, как если бы это был

отдельный диск. Разделение используется, например, при работе с

двумя операционныи системами на одном диске. При этом каждая

операционная система использует для работы отдельный раздел и не

взаимодействует с другими. Таким образом, две различные системы

могут быть установлены на одном жестком диске. Без использования

разделов в данном случае возникла бы необходимость в приобритении

второго диска.

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

случаев для этого нет необходимости, так как их объем достаточно

мал.

            4.5.1  MBR, загрузочные сектора и таблица разделов

     Информация о разделении жесткого диска находится в первом

секторе (т.е. в первом секторе первой дорожки первого диска). Этот

сектор называется MBR (сокращение от Master Boot Record) этого

диска. При загрузке компьютера BIOS загружает его в память и

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

таблицу разделов, находит активный раздел (т.е. раздел, отмеченный

как загрузочный) и считывает первый сектор этого раздела, который

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

© 2010.