Файл: А. В. Гордеев А. Ю. Молчанов системное программное обеспечение электронный вариант книги издательства Питер СанктПетербург Челябинск юургу каф. Автоматика и управление 2002 2 Предисловие Настоящий учебник.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 12.01.2024
Просмотров: 1042
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
230
ных или несколько имен. Обязательными для каждого файла в томе NTFS являют- ся атрибут стандартной информации, атрибут имени файла, атрибут дескриптора защиты и атрибут данных. Остальные атрибуты могут встречаться при необходи- мости.
Имя файла в NTFS, в отличие от файловых систем FAT и HPFS, может содер- жать любые символы, включая полный набор национальных алфавитов, так как данное представлены в Unicode – 16-битном представлении, которое дает 65 535
разных символов. Максимальная длина имени файла в NTFS – 255 символов.
Большой вклад в эффективность файловой системы вносит организация ката- лога. Каталог в NTFS представляет собой специальный файл, хранящий ссылки на другие файлы и каталоги, создавая иерархическое строение данных на диске. Файл каталога поделён на блоки, каждый из которых содержит имя файла, базовые атри- буты и ссылку на элемент MFT, который уже предоставляет полную информацию об элементе каталога. Главный каталог диска – корневой – ничем не отличается от обычных каталогов, кроме специальной ссылки на него из начала метафайла MFT.
Внутренняя структура каталога представляет собой бинарное дерево, подобно тому, как это организовано в HPFS. Кстати, при создании файловой системы NTFS
разработчики решили использовать максимально возможное количество эффек- тивных решений из HPFS. К сожалению, не было взято на вооружение разбиение всего дискового пространства на зоны, в каждой из которых хранилась бы инфор- мация об имеющихся свободных кластерах. В результате отказа от этого подхода и введения механизма транзакций скорость работы файловой системы NTFS сущест- венно ниже скорости работы системы HPFS.
Итак, как нам теперь известно, бинарное дерево каталога располагает имена файлов таким образом, чтобы поиск файла осуществлялся с помощью получения двухзначных ответов на вопросы о положении файла. Бинарное дерево способно дать ответ на вопрос: в какой группе, относительно данного элемента, находится искомое имя – выше или ниже? Мы начинаем с такого вопроса к среднему эле- менту, и каждый ответ сужает зону поиска в среднем в два раза. Если представить,
странения в среде Windows 2000.
231
что файлы отсортированы по алфавиту, то ответ на вопрос осуществляется очевид- ным способом – сравнением начальных букв. Область поиска, суженная в два раза,
начинает исследоваться аналогичным образом, начиная опять же со среднего эле- мента.
Заметим, что добавлять файл в каталог в виде дерева не намного труднее, чем в линейный каталог системы FAT. Это сопоставимые по времени операции. Для того чтобы добавить новый файл в каталог, нужно сначала убедиться, что файла с таким именем там ещё нет. Поэтому в системе FAT с линейной организацией запи- сей каталога у нас появляются трудности не только с поиском файла. И это с лих- вой компенсирует саму простоту добавления файла в каталог.
Возможности файловой системы NTFS по ограничению доступа к файлам и каталогам
Рассмотрим основные возможности, связанные как с организацией различных прав доступа к файлам и каталогам при использовании сетевого доступа, так и ло- кальные ограничения на файлы и каталоги. NTFS рассматривает каталоги (папки) и файлы как разнотипные объекты и ведёт отдельные (хотя и перекрывающиеся)
списки прав доступа для каждого типа [36]. Ниже перечислены права NTFS, назна- чаемые папкам (соответствующие права для файлов приведены ниже):
♦ нет доступа (no access) (None)(нет);
♦ полный доступ (full control) (All)(All) (все)(все);
♦ право чтения (read) (RX)(RX) (чтение)(чтение);
♦ право добавления (add) (WX)(not specified) (запись/выполнение не указано);
♦ право добавления и чтения (add&read) (RWX)(RX) (чтение/запись/выпол- нение) (чтение/выполнение);
♦ право просмотра (list) (RX)(not specified) (чтение/выполнение)(не указано);
♦ право изменения (change) (RWXD)(RWXD) (чтение/запись/ выполнение/
удаление) (чтение/запись/выполнение/удаление).
Обратите внимание на два выражения в скобках, указанные после имени права доступа. Первое выражение относится к самой папке, а второе – ко всем файлам,
232
которые могут быть созданы внутри неё. Например, при полном доступе для папки разрешаются любые действия, однако пользователь с полным доступом к папке также будет обладать полным правом доступа ко всем созданным в ней файлам
(если только права доступа к файлу не были изменены его владельцем или админи- стратором). Другими словами, в NTFS файлы и папки по умолчанию наследуют права доступа, установленные для их родительской папки, однако эти права могут быть изменены любым пользователем, которому разрешено изменять права досту- па для соответствующих объектов NTFS.
Файлы в NTFS могут обладать следующими правами:
♦ полный доступ (full control) (All) (все);
♦ нет доступа (no access) (None) (нет);
♦ право изменения (change) (RWXD) (чтение/запись/выполнение/удаление);
♦ право чтения (read) (RX) (чтение/выполнение).
Для прав доступа NTFS, как и для прав общих каталогов, действует принцип поглощения. Исключение составляет право «нет доступа», отменяющее действие всех остальных прав.
При сетевом подключении пользователей права NTFS могут вступить в кон- фликт с правами общих каталогов. В такой ситуации применяется право доступа с наиболее жесткими ограничениями. У многих возникают проблемы с пониманием получаемых при сетевом доступе ограничений. Однако здесь можно легко разо- браться, если помнить, что при доступе по сети к каталогам и файлам, распола- гающихся на томах с NTFS, у нас получаются задействованными два последова- тельных механизма. Сначала мы получаем доступ к файлам, который был опреде- лён сетевыми механизмами. Это право «нет доступа» – «по access», право на «чте- ние» – «read», право «изменение» – «change» и «полный доступ» – «full control».
После этого вступают в силу ограничения на файлы и каталоги, определённые свойствами NTFS. То есть нам нужно преодолеть последовательно два препятст- вия. Другими словами, итоговые права на папки и файлы будут определяться мак- симальными ограничениями, которые были заданы в каждом из механизмов.
233
Помимо перечисленных прав имеется ещё так называемый специальный дос-
туп (Special Access). Если выбрать это право доступа, то на самом деле появляется возможность выбирать несколько прав одновременно из следующего перечня:
♦ полный доступ (full control) (All);
♦ чтение (read) (R);
♦ запись (write) (W);
♦ выполнение (execute) (X);
♦ удаление (delete) (D);
♦ изменение разрешений (change permissions) (P);
♦ изменение владельца (take ownership) (O).
В принципе можно было бы выбирать любые совокупности перечисленных разрешений, однако на практике это, увы, не работает. Например, нельзя указать право Х (исполнение) без права R (чтение), хотя в других системах управления файлами такое право обеспечивается. Оно позволяет выполнять программу, файл которой помечен таким атрибутом, но не дает возможности её скопировать. Мно- гие другие комбинации специальных разрешений тоже не работают должным обра- зом и это надо обязательно иметь в виду. Лучше пользоваться штатными правами на файлы и каталоги, которые были перечислены выше.
Рассмотрим теперь, что происходит с правами на защищённые файлы в NTFS
при их перемещении. Папки более высокого уровня в NTFS обычно обладают теми же правами, что и находящиеся в них файлы и папки. Например, если вы создаете папку внутри другой папки, для которой администраторы обладают правом полно- го доступа, а операторы архива – правом чтения, то новая папка унаследует эти права. То же относится и к файлам, копируемым из другой папки или перемещае- мым из другого раздела NTFS.
Если папка или файл перемещается в другую папку того же раздела NTFS, то атрибуты безопасности не наследуются от нового объекта-контейнера. Например,
если из папки с правами чтения для группы everyone файл перемещается в папку того же раздела с полным доступом для той же группы, то для перемещенного файла будет сохранено исходное право чтения. Дело в том, что при перемещении
234
файлов в границах одного раздела NTFS изменяется только указатель местона- хождения объекта, а все остальные атрибуты (включая атрибуты безопасности) ос- таются без изменений.
Три следующих важных правила помогут определить состояние прав доступа при перемещении или копировании объектов NTFS:
♦ При перемещении файлов в границах раздела NTFS сохраняются исходные права доступа.
♦ При выполнении других операций (создании или копировании файлов, а также их перемещении между разделами NTFS) наследуются права доступа ро- дительской папки.
♦ При перемещении файлов из раздела NTFS в раздел FAT все права NTFS
теряются.
Основные отличия FAT и NTFS
Если говорить о накладных расходах на хранение служебной информации,
FAT отличается от NTFS большей компактностью и меньшей сложностью. В
большинстве томов FAT на хранение таблицы размещения, содержащей информа- цию обо всех файлах тома, расходуется менее 1 Мбайт. Столь низкие накладные расходы позволяют форматировать в FAT жесткие диски малого объёма и флоппи–
диски. В NTFS служебные данные занимают больше места, чем в FAT. Так, каж- дый элемент каталога занимает 2 Кбайт. Однако это имеет и свои преимущества,
так как содержимое файлов объёмом 1500 байт и менее может полностью хранить- ся в элементе каталога.
Система NTFS не может использоваться для форматирования флоппи-дисков.
Не стоит пользоваться ею для форматирования разделов объёмом менее 50-100
Мбайт. Относительно высокие накладные расходы приводят к тому, что для малых разделов служебные данные могут занимать до 25 % объёма носителя. Корпорация
Microsoft рекомендует использовать FAT для разделов объёмом 256 Мбайт и ме- нее, а NTFS – для разделов объёмом 400 Мбайт и более
1 1
Следут заметить, что этим рекомендациям уже более 6 лет. Сейчас, как известно, объёмы дисковых накопителей уже давно перешли рубеж в десяток гигабайт, поэтому упоминание логического диска объёмом в 400 Мбайт пред- ставляется неактуальным.
235
Следующий критерий сравнения – размер файлов. Разделы FAT имеют объём до 2 Гбайт, VFAT – до 4 Гбайт и FAT32 – до 4 Гбайт.
Тем не менее, из-за особенностей своего внутреннего строения разделы FAT
лучше всего работают для разделов объёмом 200 Мбайт и менее. Разделы NTFS
могут достигать 16 Эбайт, однако в настоящее время из-за аппаратных и других системных причин размер файлов ограничивается 2 Тбайт.
Разделы FAT могут использоваться практически во всех операционных систе- мах. За редкими исключениями, с разделами NTFS можно работать напрямую только из Windows NT, хотя и имеются для ряда ОС соответствующие реализации систем управления файлами для чтения файлов из томов NTFS. Так, например,
утилита (драйвер) NTFSDOS позволяет читать данные NTFS на компьютере, за- груженном в режиме MS-DOS. Однако полноценных реализаций для работы с
NTFS вне системы Windows NT пока нет.
Разделы FAT не обеспечивают локальной безопасности. С другой стороны,
разделы NTFS обеспечивают локальную безопасность как файлов, так и каталогов.
Для разделов FAT могут устанавливаться общие права, связанные с общим досту- пом к каталогам в сети. Однако такая защита не помещает пользователю с ло- кальным входом получить доступ к файлам своего компьютера. В отношении безопасности NTFS оказывается предпочтительным вариантом. Разделы NTFS мо- гут запрещать или ограничивать доступ как удаленных, так и локальных поль- зователей. Следовательно, к защищенным файлам смогут обратиться лишь те поль- зователи, которым были предоставлены соответствующие права.
Напомним, что Windows NT содержит специальную утилиту CONVERT.EXE,
которая преобразует тома FAT в эквивалентные тома NTFS, однако для обратного преобразования (из NTFS в FAT) подобных утилит не существует. Чтобы вы- полнить такое обратное преобразование, вам придется создать раздел FAT, ско- пировать в него файлы из раздела NTFS и затем удалить оригиналы. Важно при этом не забывать и о том, что при копировании файлов из NTFS в FAT теряются все атрибуты безопасности NTFS (напомним, что в FAT не предусмотрены сред- ства для определения и последующего хранения этих атрибутов).
236
В последнее время появилось ещё одно очень важное обстоятельство, связан- ное с тем, что объёмы дисковых механизмов намного превысили максимально до- пустимый размер, приемлемый для FAT, – 8,4 Гбайт. Этот предел объясняется мак- симально возможными значениями в адресе сектора, для которого, как мы уже зна- ем, отводится всего 3 байта. Поэтому в подавляющем большинстве случаев при ра- боте в среде Windows-систем используют либо FAT32, либо NTFS. Последняя, без- условно, лучше, но она не поддерживается в широко распространённых ОС Win- dows 98 и ныне всё более часто встречающейся Windows Millennium Edition.
1 ... 15 16 17 18 19 20 21 22 ... 37
Контрольные вопросы и задачи
Вопросы для проверки
1 Почему создание подсистемы ввода/вывода считается одной из самых слож- ных областей проектирования операционных систем?
2 Почему операции ввода/вывода в ОС объявляются привилегированными?
3 Перечислите основные задачи, возлагаемые на супервизор ввода/вывода.
4 В каких случаях устройство ввода/вывода называется инициативным?
5 Какие режимы управления вводом/выводом вы знаете? Опишите каждый из них.
6 Что означает термин «spooling» и что означает термин «swapping»?
7 Чем обеспечивается независимость пользовательских программ от устройств ввода/вывода, подключенных к компьютеру?
8 Что такое синхронный и асинхронный ввод/вывод?
9 Расскажите о кэшировании операций ввода/вывода при работе с накопите- лями на магнитных дисках.
10 Что такое «файловая система»? Что обеспечивает использование той или иной файловой системы? Какие файловые системы, используемые в ОС иПК, вы знаете?
11 Опишите структуру магнитного диска (разбиение дисков на разделы).
Сколько (и каких) разделов может быть на магнитном диске?
12 Как в общем случае осуществляется загрузка ОС после включения компью- тера? Что такое системный и внесистемный загрузчики? Где они располагаются?
237 13 Объясните общие принципы файловой системы FAT. Что такое кластер, от чего зависит его размер?
14 Сравните файловые системы FAT16 и FAT32. В чём заключаются их досто- инства и недостатки?
15 За счёт чего в файловой системе HPFS обеспечена высокая производитель- ность?
16 Что означает «журналирование» файловых операций? Что это даёт?
17 Расскажите о правилах, которые определяют состояние прав доступа при перемещении или копировании объектов, если используется NTFS.
18 Проведите сравнительный анализ файловых систем HPFS и NTFS; пере- числите достоинства и недостатки каждой.
Задания
1 Используя ПК с установленной на нем ОС Windows NT 4.0, исследуйте огра- ничения доступа к файлам и каталогам, которыми обладает файловая система
NTFS. Расскажите о результатах.
2 Используя ПК с установленной на нем ОС Windows NT 4.0, проверьте пра- вила, которые определяют состояние прав доступа при перемещении или копиро- вании объектов при использовании NTFS. Расскажите о результатах.
3 Используя специально выделенный для этих целей ПК, изучите структуру диска и освойте работу с программой Disk Editor. Выполните следующее задание:
♦ Включите компьютер. Во время выполнения программы самотестирования войдите в BIOS и установите возможность загрузки с дискеты.
♦ Загрузите операционную систему, расположенную на магнитном диске. По- кажите преподавателю, что она работает.
♦ Загрузитесь с системной дискеты (на ней должна быть MS-DOS 6.2 или ка- кая-нибудь другая версия DOS).
♦ Запустите программу Disk Editor из комплекта утилит от Питера Нортона. С
помощью встроенных подсказок изучите основные возможности этой утилиты.
♦ Посмотрите структуру диска. Сохраните MBR и загрузочный сектор на свою дискету.