Доклад: Файловая система для операционной системы Windows

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ЭКОНОМИКИ И ФИНАНСОВ

КАФЕДРА ИНФОРМАТИКИ

Доклад на тему:

Файловая система для операционной системы Windows

Выполнила

Аристархова Светлана

Студентка группы 246

Санкт-Петербург

2010


Определение файловой системы

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

Файловая система связывает носитель информации с одной стороны и API для доступа к файлам с другой. Когда прикладная программа обращается к файлу, она не имеет никакого представления о том, каким образом расположена информация в конкретном файле, так же, как и на каком физическом типе носителя (CD, жёстком диске, магнитной ленте или блоке флеш-памяти) он записан. Всё, что знает программа это имя файла, его размер и атрибуты. Эти данные она получает от драйвера файловой системы. Именно файловая система устанавливает, где и как будет записан файл на физическом носителе (например, жёстком диске).

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

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

Классификация файловых систем

По предназначению файловые системы можно классифицировать на следующие категории:

Для носителей с произвольным доступом (например, жёсткий диск): FAT32, HPFS, ext2 и др. Поскольку доступ к дискам в разы медленнее, чем доступ к оперативной памяти, для прироста производительности во многих файловых системах применяется асинхронная запись изменений на диск. Для этого применяется либо журналирование, например в ext3, ReiserFS, JFS, NTFS, XFS, либо механизм soft updates и др. Журналирование широко распространено в Linux, применяется в NTFS. Soft updates в BSD системах. Reiser4 не применяет журналирование, все операции в ней атомарны.

Для носителей с последовательным доступом (например, магнитные ленты): QIC и др.

Для оптических носителей CD и DVD: ISO9660, ISO9690, HFS, UDF и др.

Виртуальные файловые системы: AEFS и др.

Сетевые файловые системы: NFS, CIFS, SSHFS, GmailFS и др.

Дляфлэш-памяти: YAFFS, ExtremeFFS.

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

Задачи файловой системы

Основные функции любой файловой системы нацелены на решение следующих задач:

именование файлов;

программный интерфейс работы с файлами для приложений;

отображения логической модели файловой системы на физическую организацию хранилища данных;

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

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

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

Твердотельные носители, такие, как флеш-диски, своим интерфейсом данных похожи на обычные жёсткие диски, но имеют свои проблемы и недостатки. Когда проходит время поиска они нуждаются в особой обработке такими алгоритмами как, Wear leveling и Error detection and correction.

FAT исходно дисковая файловая система теперь часто используется на флеш-дисках. Имеет ограничение на размер файла в 4 гигабайта.

exFAT Расширенная версия FAT, используемая для флеш-дисков. Запатентована Microsoft, часто называется как FAT64 ограничение 264 байт (16 эксабайт).

FFS2 Продолжение файловой системы FFS1, Одна из ранних файловых систем для флеш-карт. Разработана и запатентована Microsoft в начале 1990х годов. U.S. Patent 5392427 (англ.)

TFAT Транзакционная версия FAT файловой системы.

JFFS Оригинальная лог-структурированная Linux файловая система для NOR-флеш-носителей.

JFFS2 Продолжение JFFS для NAND- и NOR-флеш-носителей.

LogFS Предназначена для замены JFFS2, лучшая расширяемость. Находится на ранней стадии разработки.

Non-Volatile File System файловая система для флеш-дисков, разработанная Palm, Inc..

YAFFS Лог структурированная файловая система, предназначенная для NAND-флеш, но может использоваться в NOR-флеш-дисках.

exFAT

exFAT (от англ. Extended FAT расширенная FAT) проприетарная файловая система, предназначенная главным образом для флэш-накопителей. Впервые представленная Microsoft для встроенных устройств в Windows Embedded CE 6.0.

Используется в операционных системах от Microsoft в тех случаях, когда использование других поддерживаемых ими файловых систем (FAT и NTFS) нецелесообразно.

Основными преимуществами перед всеми текущими версиями FAT является:

Теоретический лимит на размер файла 264 байт (16 эксбибайт).

Максимальный размер кластера увеличен до 225 байт (32 мебибайта).

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

Устранён лимит на количество файлов в одной директории.

Введена поддержка списка прав доступа.

Введена поддержка транзакций (опциональная возможность, должна поддерживаться устройством).

Поддержка exFAT имеется в Windows XP с Service Pack 2 и 3 с обновлением KB955704, Windows Vista с Service Pack 1, Windows Server 2008, Windows 7.

Технология ReadyBoost в Windows Vista не совместима с устройствами с файловой системой exFAT.

Существует свободный драйвер exFAT в виде патча для ядра Linux, поддерживающий только чтение этой файловой системы.

Лицензионный статус не ясен. Однако известно, что Microsoft успешно запатентовала файловую систему FAT, и в феврале 2009 года подала в суд на компанию TomTom, обвиняя её в их нарушении.

Существует также сторонняя реализация exFAT для Windows XP/ Windows Server 2003, однако она предназначена для непосредственной интеграции в дистрибутив продукта без возможности ручной установки драйвера. Данный порт выполнен на базе драйвера Windows Vista.

В декабре 2009 года Microsoft начала лицензировать файловую систему exFAT для сторонних производителей.

File Allocation Table

FAT (от англ. File Allocation Table таблица размещения файлов) архитектура файловой системы, сейчас широко используемая в картах памяти фотоаппаратов и других устройств.

Разработана Биллом Гейтсом и Марком МакДональдом в 1977 году. Использовалась в качестве основной файловой системы в операционных системах DOS и Microsoft Windows (до версии Windows ME).

Структура FAT определена стандартом ECMA-107.

Структура системы FAT

загрузочный сектор;

таблица размещения файлов собственно FAT (традиционно в двух экземплярах, но вообще-то количество копий указано в загрузочном секторе);

корневой каталог;

файлы.

Для хранения файлов всё доступное для них пространство разбивается на кластеры. Таблица размещения файлов содержит ячейки, каждая из которых соответствует определённому кластеру диска. Если кластер принадлежит файлу, то соответствующая ему ячейка содержит номер следующего кластера этого же файла. Если ячейка соответствует последнему кластеру файла, то она содержит значение FFFF. Таким образом выстраивается цепочка кластеров файла. Неиспользуемые кластеры помечены 0000. Плохие кластеры помечены специальным кодом FFF7.

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

Максимальный размер кластера, который поддерживается в FAT, составляет 64 Кб. Зная, что максимальное количество кластеров, которое можно адресовать шестнадцатиразрядным указателем равно 65536, можно вычислить какой величины раздел можно отформатировать, применяя тот или иной размер кластера. Если взять размер кластера равным размеру физического кластера (сектора), то получим: 65536 * 512 = 32 Мб. Если взять кластер в 2 раза больше, то можно отформатировать раздел уже до 64 Мб. Ввиду того, что разрядность ФС величина постоянная, для форматирования дисков различных размеров будут применяться разные размеры кластеров. Например, чтобы отформатировать диск более 1 Гб, нужно применять кластер 16 КБ. Поскольку размер кластера, являющийся максимально допустимым в этой ФС, равен 64 Кб, то можно определить, что максимальный размер раздела, форматируемый под FAT, равен 4 Гб.

FAT16

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

Это теория, а теперь недостатки: ты никогда не задумывался, что значит "1 в названии файловой системы? А значат они то, что таблица размещения файлов FAT (File Allocation Table) идентифицирует записи, соответствующие дисковым кластерам, при помощи 16-разрядных чисел. Таким образом, в таблице можно разместить не более 65 536 записей (2 в 16-ой степени). А если учитывать то, что максимальный размер кластера - 32 Кбайта, то выходит, что максимальный раздел дискового тома - 2 Гбайта. У тебя логические диски на винте наверное ГОРАЗДО большего размера? Это недостаток номер "раз"(хотя надо отметить, что FAT32 этот недостаток почти что преодолела). Недостаток номер два - это то, что для хранения ВСЕХ файловых атрибутов система FAT использует всего 1 байт. Нельзя хранить ни сведения о праве доступа к файлу, ни о его владельце Недостаток номер "три" кроется в том, что при использовании FAT больший размер дискового тома означает больший размер кластера, а одна из главных "невкусностей FAT" - это то, что один файл = как минимум один кластер. Пример: имеем размер кластера 32 Кбайта и файл размером в 2 Кбайта - в результате файл занимает весь кластер, т.е. мы теряем 30 КбайтПримерно тоже самое получится, если файл будет размером 34 Кбайта - тогда он займет два кластера и во втором мы опять потеряем 30 Кбайт Недостатки номер "четыре и пять" - сведения о физическом расположении файлов хранятся в одном месте - таблице размещения файлов FAT, что: а) увеличивает вероятность повреждения и потери всей информации; б) снижает скорость поиска, т.к. для поиска определенного файла нужно обработать всю таблицу. Нужно признать, что FAT16 создавалась давно, во времена MS-DOS и требованиям того времени вполне удовлетворяла

FAT32

Эта файловая система пришла на смену FAT16. Её отличие в том, что таблица размещения файлов FAT (File Allocation Table) идентифицирует записи, соответствующие дисковым кластерам, при помощи 32-разрядных чисел. В соответствии с этим максимальное количество записей становится равным 4 294 967 296 (2 в 32-ой степени). В связи с чем максимальный размер дискового тома существенно увеличивается (до 2 Тбайт). Однако это позволяет преодолеть лишь недостаток номер "раз", однако все остальные - увы остаются, что особенно обидно для владельцев небольших винтов - нерациональное расходование дискового пространства а также частые повреждения разнообразной природы и т.д.

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

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

Версии системы FAT

Существует четыре версии FAT FAT12 , FAT16 , FAT32 и exFAT . Они отличаются количеством бит, отведённых для хранения номера кластера. FAT12 применяется в основном для дискет, FAT16 для дисков малого объёма, а новая exFAT преимущественно для флэш-накопителей.

Изначально FAT не поддерживала иерархическую систему каталогов. Все файлы располагались в корневом каталоге. Это оказалось неудобно. И к тому же малый размер корневого каталога ограничивал количество файлов на диске. Каталоги были введены с выходом MS-DOS 2.0.

В различных операционных системах также были внедрены различные расширения FAT. Например, в DR-DOS имеются дополнительные атрибуты доступа к файлам; в Windows 95, Linux и Proolix поддержка длинных имён файлов (LFN) в формате Unicode (Virtual FAT VFAT); в OS/2 расширенные атрибуты всех файлов.

YAFFS

YAFFS (Yet Another Flash File System ) YAFFS это первая файловая система, разработанная специально для использования на NAND накопителях. Автором является Charles Manning из Новой Зеландии.

Yaffs1 первая версия этой файловой системы, которая работала со страницами памяти размером в 512 байт + 16 служебных байт. Старые модели флеш-памяти позволяли выполнять всего 2 или 3 цикла перезаписи, при отказе записи на страницу, YAFFS помечала ее как сбойную, выставляя байт в служебной области.

YAFFS2

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

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

NTFS

Расшифровывается как New Technology File System .По сравнению с FAT файловая система NTFS обладает куда более сложной структурой и куда более широкими возможностями. В отличии от FAT, файловая система NTFS не хранит всю информацию о расположении файлов в одном месте. Вместо этого сведения о распределении дискового пространства между файлами сохраняются в составе специальных пакетов, которые могут располагаться в любом месте раздела . Структура каталогов NTFS также отличается от структуры каталогов FAT. Дисковые каталоги NTFS лучше приспособлены для осуществления поиска файлов, так как записи о файлах сохраняются с использованием бинарного дерева, а не простого линейного списка (как это было в FAT). Это означает, что для того, чтобы обнаружить файл, требуется проанализировать меньшее количество записей. А если к этому еще прибавить возможность индексирования, то система будет просто летать!

Файловая система NTFS обладает встроенной поддержкой длинных имен и расширяемых файловых атрибутов. Благодаря этому разделы NTFS могут хранить информацию, связанную с защитой файлов (например, списки ACL), аудитом доступа к файлам, а также сведения, связанные с правами на владение файлами. Задание дисковой квоты - еще одна возможность NTFS, связанная с возможностью сохранения расширенного количества атрибутов файла. Заключается она в том, что определенному пользователю можно назначить определенный размер дискового пространства, который он может использовать для хранения своих файлов (ты наверно уже сталкивался с этим, если имел дело с каким либо хостингом). Если же ты подобного опыта не имел, то объясняю: при попытке сохранения файла, система анализирует размер всех файлов, которые уже принадлежат тебе (ага, по тому самому атрибуту "владелец" о котором говорилось только что) и сравнивает с назначенной тебе дисковой квотой. Если остаток квоты достаточен для размещения этого файла, то будет выполнено сохранение, в противном случае тебя пошлет подальше сообщением "превышена дисковая квота". Если при использовании FAT самое лучшее на что ты мог рассчитывать - это то, что файл будет занимать на диске не более, чем собственный размер, то при использовании NTFS можешь об этом забыть! В NTFS минимальная единица равна сектору жесткого диска и один файл не означает один кластер! Помимо этого файловая система поддерживает атрибут, позволяющий осуществлять индивидуальную компрессию файлов и каталогов. Новые возможности NTFS5 и Windows 2000 позволяют задействовать архитектуру открытых ключей для шифрования файлов, каталогов или томов с помощью EFS. Кроме того наверняка всех порадует возможность монтирования. Ну и в довершение всего NTFS поддерживает очень большие диски - до 16 экзабайт. (экзабайт - это 1 073 741 824 Гигабайт). Простой пример: Если жесткий диск способен записать 1 мегабайт данных в секунду, то для того, чтобы записать один экзабайт (заметь один, а не шестнадцать), ему потребуется 1000 миллиардов секунд. В одном году 3 миллиона секунд. Следовательно, чтобы сохранить один экзабайт данных потребуется 300 000 лет.


Список литературы

1. Самоучитель работы на компьютере А.Ю Гаевский изд. Технолоджи-3000 2009г.

2. Интернет- энциклопедия Википедия wikipedia.ru

Похожие рефераты:

Лабораторная работа на тему Дослідження файлової структури Курсовая работа на тему Економічні задачі лінійного програмування і методи їх вирішення Курсовая работа на тему Емпіричне дослідження програмного забезпечення Курсовая работа на тему Автоматизация системы управления холодильной установкой Курсовая работа на тему Автоматизированная система управления климатом в тепличных хозяйствах Реферат на тему Автомобильная электроника Курсовая работа на тему Анализ доходов отдела фирмы, занимающейся розничной торговлей офисной мебелью Курсовая работа на тему База данных "Магазин по продаже дисков" Курсовая работа на тему Безпровідна мережа Wi-Fi, її будування Контрольная работа на тему Компьютерная графика Реферат на тему Компьютерная графика Контрольная работа на тему Компьютерная графика Реферат на тему Компьютерная графика и решаемые ею задачи Курсовая работа на тему Компьютерная лингвистика Дипломная работа на тему Компьютерная модель СГ в координатах d, q, 0 в режиме ХХ Курсовая работа на тему Назначение и возможности 3d's МАХ 9.0 Реферат на тему Назначение и основные функции электронных таблиц Лабораторная работа на тему Настройка ОС Windows Контрольная работа на тему Методы информационных технологий в делопроизводстве Учебное пособие: Методы исследования операций Курсовая работа на тему Применение пакетов прикладных программ в экономике Контрольная работа на тему Применение программы Ехсеl для определения заработка водителей такси Курсовая работа на тему Применение симплекс-метода Курсовая работа на тему Проблемы документационного обеспечения управления и использования электронной цифровой подписи Контрольная работа на тему Проблемы защиты информации Курсовая работа на тему Проблемы защиты информации в компьютерных сетях Дипломная работа на тему Проблемы и перспективы развития федеральной целевой программы "Электронная Россия" Контрольная работа на тему Проблемы искусственного интеллекта Реферат на тему Проблемы обеспечения безопасности информации в сети интернет Курсовая работа на тему Проблемы развития информационных технологий в республике Беларусь Реферат на тему Проблемы совершенствования качества выпускаемого программного обеспечения Реферат на тему Проблемы создания искусственного интеллекта Курсовая работа на тему Проблемы социальной информатики Курсовая работа на тему Прогнозирование количественными методами Курсовая работа на тему Програма "Screen Saver" (зберігач екрану) Курсовая работа на тему Програма візуальної демонстрації пошуку елементів у масиві Курсовая работа на тему Програма для анімації музичних творів Курсовая работа на тему Програма для перегляду великих текстових файлів, розмір яких більший за 64 кілобайти Дипломная работа на тему Програма для роботи з файловою системою Курсовая работа на тему Програма для сортування даних методом піраміди Курсовая работа на тему Програма для тестування знань з дисципліни "Програмування на мові С" Курсовая работа на тему Програма емуляції роботи командного процесора операційної системи Статья: Практичний розрахунок ефективності системи електронного документообігу Курсовая работа на тему Практичні аспекти створення програмного забезпечення Лабораторная работа на тему Программа "Учет выдачи и возврата книг" Реферат на тему Проектирование информационных систем Лабораторная работа на тему Символьные вычисления Контрольная работа на тему Система управления проектами Spider Учебное пособие: Системи автоматизованого проектування Учебное пособие: Системи автоматизованого проектування Реферат на тему Системи і методи виявлення вторгнень у компютерні системи Реферат на тему Системы телеобучения Реферат на тему Системы управления базами данных Курсовая работа на тему Системы управления обучения (LMS) Контрольная работа на тему Склад робіт з організації позамашинної інформаційної бази підприємства Реферат на тему Складання сценаріїв в операційній системі LINUX Курсовая работа на тему Скріпт мова управління віконним інтерфейсом на С++ Шпаргалка: Словарь терминов и сокращений Лабораторная работа на тему Сложение и вычитание целых неотрицательных чисел в двоичном коде Реферат на тему Слои, страницы и рабочая область в CorelDraw Контрольная работа на тему События клавиатуры Курсовая работа на тему Совершенные системы контроля как функция менеджмента Лабораторная работа на тему Совершенствование информационного обеспечения организации Контрольная работа на тему Создание базы данных сотрудников в MS Access Курсовая работа на тему Создание базы данных функциональных аналогов Windows-программ для ОС Linux и разработка методики подбора ПО Реферат на тему Создание веб-документов в Word Курсовая работа на тему Создание виоролика во FLASH Учебное пособие: Создание графического интерфейса пользователя Дипломная работа на тему Создание автоматизированной системы по ведению именных накопительных счетов Курсовая работа на тему Создание автоматизированной системы управления Лабораторная работа на тему Создание анимации средствами Macromedia Flash 5 Дипломная работа на тему Создания анимированных изображений в программе Adobe ImageReady Контрольная работа на тему Составление документа о количестве населения 10 крупнейших городов РФ Реферат на тему Специальное аппаратное обеспечение ГИС Курсовая работа на тему Создание сайта на языке ASP.NET Научная работа на тему: Создание сайта об отравлении грибами Дипломная работа на тему Создание структурированного курса дистанционного обучения в среде Moodl Контрольная работа на тему Создание тематического web-сайта с использованием методов CSS и языка Java Script Курсовая работа на тему Создание теста во Flash Дипломная работа на тему Створення компютерної гри засобами Macromedia Flash Дипломная работа на тему Створення презентації в програмі PowerPoint Курсовая работа на тему Створення програми гри "Шибениця" Дипломная работа на тему Створення програми для автоматизації процесу нарахування заробітної плати Курсовая работа на тему Створення програми-органайзера Учебное пособие: Створення простої web-сторінки Курсовая работа на тему Створення синтезатора мови Курсовая работа на тему Створення системи технічого захисту інформації Учебное пособие: Технология хранения, поиска и сортировки информации Лабораторная работа на тему Табличный процессор Microsoft Office Excel. Работа с электронной таблицей как с базой данных Контрольная работа на тему Текстовий редактор MS Word Курсовая работа на тему Текстовий редактор під Windows Реферат на тему Текстові функції в редакторі електронних таблиць Лабораторная работа на тему Текстовый процессор Microsoft Office Word. Создание, редактирование и форматирование текстового документа Курсовая работа на тему Этапы производства микропроцессоров Курсовая работа на тему Этапы разработки программ. Тестирование и отладка. Документирование программ Статья: Язык обработки графов на базе JAVA Лабораторная работа на тему Дослідження побудови та діагностики комп'ютера. Характеристики процесорів Реферат на тему Игровые манипуляторы Отчет по практике: Информационные системы Отчет по практике: Информационные системы предприятия