Иерархическая структура каталогов

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

Простой одноуровневый каталог представляет собой оглавление тома (используется в однопользовательских ОС – рис. 44а). Иерархический, многоуровневый каталог (древовидный или сетевой) – это совокупность каталогов и дескрипторов файлов различной глубины (рис. 44б).

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

Иерархическая структура каталогов - student2.ru

Иерархическая структура каталогов - student2.ru

Операции над директориями

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

 создание директории – вновь созданная директория включает записи с именами «.» и «..», однако считается пустой.

 удаление директории;

 открытие директории для последующего чтения (например, чтобы перечислить файлы, входящие в директорию, процесс должен открыть директорию и считать имена всех файлов, которые она включает);

 закрытие директории после ее чтения для освобождения места во внутренних системных таблицах;

 поиск – данный системный вызов возвращает содержимое текущей записи в открытой директории;

 получение списка файлов в каталоге;

 переименование – имена директорий можно менять, как и имена файлов;

 создание файла – при создании нового файла необходимо добавить в каталог соответствующий элемент;

 удаление файла – удаление из каталога соответствующего элемента.

Особенности организации некоторых файловых систем

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

Учитывая это, рассмотрим подробнее особенности функционирования конкретных файловых систем – как традиционных (например, FAT 16 или FAT 32), так и новых, широко используемых в настоящее время (например, NTFS или UFS).

FAT

Файловая система FAT (от англ. File Allocation Table) была разрабо-тана Биллом Гейтсом (англ. Bill Gates) и Марком МакДональдом (англ. Mark McDonald) в 1977 году и первоначально использовалась в ОС 86-DOS. Чтобы добиться переносимости программ из ОС CP/M в 86-DOS, в ней были сохранены ранее принятые ограничения на имена файлов. В дальнейшем 86-DOS была приобретена Microsoft и стала основой для ОС MS-DOS 1.0, выпущенной в августе 1981 года.

Файловая система FAT была предназначена для работы с гибкими дисками размером менее 1 Мбайт, и вначале не предусматривала поддержки жестких дисков. В настоящее время FAT поддерживает файлы и разделы размером до 2 Гбайт.

В FAT применяются следующие соглашения по именам файлов:

 имя должно начинаться с буквы или цифры и может содержать любой символ ASCII, за исключением пробела и символов « " / \ [ ] : ; | = , ^ * ? »;

 длина имени не превышает 8 символов, за ним следует точка и необязательное расширение длиной до 3 символов;

 регистр символов в именах файлов не различается и не сохраняет- ся.

Логический раздел, отформатированный под файловую систему FAT, имеет следующую структуру

Иерархическая структура каталогов - student2.ru

NTFS

Файловая система NTFS (New Technology File System) – наиболее предпочтительная файловая система при работе с ОС Windows NT, поскольку она была специально для нее разработана.

Диск NTFS условно делится на две части. Первые 12% диска отводятся под так называемую MFT зону (Master File Table или главная файловая таблица) – пространство, в котором происходит рост метафайла MFT.

Иерархическая структура каталогов - student2.ru

Запись каких-либо данных в эту область невозможна. MFT-зона всегда держится пустой – это делается для того, чтобы самый главный, служебный файл не фрагментировался при своем росте. Остальные 88% диска представляют собой обычное пространство для хранения файлов, причем свободное место диска включает в себя всѐ физически свободное место, включая незаполненные фрагменты MFT-зоны.

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

Каждый файл на томе NTFS представлен записью в MFT. Система NTFS резервирует первые 16 записей таблицы размером около 1 Мб для специальной информации. Первая запись таблицы описывает непосредственно саму главную файловую таблицу. За ней следует зеркальная запись MFT. Если первая запись MFT разрушена, NTFS считывает вторую запись, чтобы отыскать зеркальный файл MFT, первая запись которого идентична первой записи MFT. Местоположение сегментов данных MFT и зеркального файла MFT хранится в секторе начальной загрузки. Копия сектора начальной загрузки находится в логическом центре диска. Третья запись MFT содержит файл регистрации, применяемый для восстановления файлов. Семнадцатая и последующие записи главной файловой таблицы используются собственно файлами и каталогами на томе.

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

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

Дисковые массивы RAID

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

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

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

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

На практике, дисковые массивы RAID имеют различные варианты реализации, называемые системами RAID различного уровня – 0, 3 и 5.

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

Благодаря сегментации данных нагрузка ввода/вывода распределяется между всеми дисководами. А поскольку чтение и запись на диски может осуществляться одновременно, производительность возрастает весьма существенно. Но такой подход не обеспечивает защиты данных. Если на диске возникает ошибка, то данные безвозвратно теряются. Системы RAID уровня 0 не предназначены для критически важных приложений, но хорошо подходят для таких задач, как создание и редактирование видео и изображений.

RAID уровня 1. На этом уровне работы RAID обеспечивается зеркалирование дисков. Данные тождественно дублируются на два иден-тичных диска. В случае отказа одного из дисков система продолжает работать с другим диском.

RAID уровня 2. Режим работы системы RAID, на котором обеспечивается чередование дисков и выделяется контрольный диск. При каждой операции чтение происходит со всех дисков.

RAID уровня 3. Предусматривают расщепление данных, выбирают один из дисков для хранения контрольной суммы по разделам. Такой подход позволяет обеспечить определенную отказоустойчивость и особенно полезен в средах, предполагающих интенсивное использование данных, либо в однопользовательских средах для доступа к длинным последовательным записям. Системы RAID уровня 3 не поддерживают перекрытия ввода/вывода и требуют применения синхронизованных дисководов для того, чтобы предотвратить снижение производительности при работе с короткими записями.

RAID уровня 4. Режим работы системы RAID, на котором обеспечивается разбиение данных по дискам с чередованием битов и контрольной суммой. RAID 4 похож на RAID 3, но отличается от него тем, что данные разбиваются на блоки, а не на байты. Таким образом, удалось преодолеть проблему низкой скорости передачи данных небольшого объема. Запись же производится медленно из-за того, что четность для блока генерируется при записи и записывается на единственный диск.

RAID уровня 5. Аналогичны системам уровня 3. Однако контрольная информация на диски заноситься не на отдельный диск, а равномерно по очереди распределяется по всем дискам, что позволяет избежать «узких» мест при работе с контрольным диском. В системах RAID уровня 5 перекрываются все операции ввода/вывода. Для организации подобных систем требуется от трех до пяти дисков. Они лучше подходят для многопользовательских комплексов, для которых производительность не имеет критически важного значения или которые выполняют небольшое количество операций записи.

RAID уровня 10. Зеркалированный массив, который затем записывается последовательно на несколько дисков, как RAID 0. Эта архитектура представляет собой массив типа RAID 0, сегментами которого являются массивы RAID 1. Он объединяет в себе высокую отказоустойчивость и производительность. Нынешние контроллеры используют этот режим по умолчанию для RAID 1. То есть, 1 диск основной, 2-й диск – зеркало, причем чтение производится с них поочередно, как для RAID 0. Собственно, сейчас можно считать что RAID 10 и RAID 1+0 – это просто разное название одного и того же метода аппаратного зеркалирования дисков. Но не стоит забывать, что полноценный RAID 1+0 должен содержать как минимум 4 диска.

Вопросы для самопроверки

1. Какова физическая организация жесткого диска?

2. Какова структура таблицы разделов жесткого диска? Где она располагается?

3. На какие уровни можно разделить логическую схему организации файловой системы? Каково основной назначение каждого из уровней?

4. Какова типовая структура файловой системы на диске?

5. Какие существуют способы выделения дискового пространства? Какой из них наиболее распространен в современных операционных системах?

6. Каковы основные недостатки при связном выделении блоков?

7. Какие существуют способы управления свободным и занятым пространством внешней памяти?

8. Что такое «логический блок диска»? Каким размером он должен обладать?

9. Каковы особенности загрузки ОС в основную память компьютера?

10. Какие типы файлов присутствуют в файловых системах?

11. Какие отличия в организации файловых систем FAT12, FAT16, FAT32?

12. Каковы основные особенности файловой системы NTFS? Что такое MFT-зона?

13. Каковы основные особенности организации файловой системы UFS?

14. Каково основное назначение дисковых массивов RAID?

15. Каковы отличия различных уровней системам RAID?

Тема 5.1 Основные понятия безопасности

Важность решения проблемы информационной безопасности в настоящее время общепризнанна, свидетельством чему служат громкие процессы о нарушении целостности систем. Убытки ведущих компаний США в связи с нарушениями безопасности информации в период с 1997 по 1999 годы составили $360'720'555. Причем только 31% опрошенных компаний смог определить количественно размер потерь. Проблема обеспечения безопасности носит комплексный характер, для ее решения необходимо сочетание законодательных, организационных и программно-технических мер.

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

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

Безопасная система обладает свойствами конфиденциальности, доступности и целостности.

Конфиденциальность(confidentiality) уверенность в том, что секретные данные будут доступны только тем пользователям, которым этот доступ разрешен (такие пользователи называются авторизованными).

Доступность(availability) гарантия того, что авторизованные пользователи всегда получат доступ к данным.

Целостность(integrity) уверенность в том, что данные сохраняют правильные значения. Это требует средств проверки целостности и обеспечивается запретом для неавторизованных пользователей, каким либо образом модифицировать данные.

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

Классификация угроз

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

Общей классификации угроз не существует. Имеет смысл различать неумышленные и умышленные угрозы.

Неумышленные угрозы связаны с:

  • Ошибками оборудования или матобеспечения: сбои процессора, питания, нечитаемые дискеты, ошибки в коммуникациях, ошибки в программах.
  • Ошибками человека: некорректный ввод, неправильная монтировка дисков или лент, запуск неправильных программ, потеря дисков или лент.
  • Форс-мажорными обстоятельствами

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

  • Незаконное проникновение под видом легального пользователя
  • Нарушение функционирования системы с помощью программ-вирусов или программ-червей.
  • Нелегальные действия легального пользователя.

Типизация угроз не слишком строгая.

А.Таненбаум [12] приводит свой список наиболее успешных атак на ОС:

  • Попытки чтения страниц памяти, дисков и лент, которые сохранили информацию предыдыдущего пользователя.
  • Попытки выполнения нелегальных системных вызовов, или системных вызовов с нелегальными параметрами
  • Внедрение программы, которая выводит на экран слово login . Многие легальные пользователи, видя такое, начинают пытаться входить в систему, и их попытки могут протоколироваться (вариант Троянского коня).
  • Попытки торпедировать программу проверки входа в систему путем многократного нажатия клавиш del, break, rubout, cancel и.т.д. В некоторых системах проверочная программа погибает, и вход в систему становится возможным.
  • Подкуп персонала. Hапример, малооплачиваемого секретаря.
  • Использование закладных элементов (дыр), специально оставленных дизайнерами системы.
  • И т.д.

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

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

Наши рекомендации