- •Краткая история создания ms-dos
- •Архитектура операционной системы
- •1.7. Эффективность и требования, предъявляемые к ос
- •Операционная система qnx
- •10.1. Архитектура
- •10.2. Управление процессами
- •10.3. Средства взаимодействия
- •10.4. Файловая система
- •10.6. Сетевые взаимодействия
- •10.5. Управление устройствами
- •10.7. Графическая система Photon
- •Прогон программы создания процесса
- •Области виртуальной памяти
- •Структура vm_area_struct
- •Современные файловые системы: что выбрать для внешнего накопителя и почему
- •Fat32 — разумный компромисс между совместимостью и прочими характеристиками
- •Ntfs — быстрая, мощная, но избыточная
- •ExFat — будущее флэш-накопителей и не только
- •Прочая экзотика, иногда полезная
- •Faq вместо заключения
Современные файловые системы: что выбрать для внешнего накопителя и почему
Было время, когда вопрос, вынесенный в заголовок статьи, просто не стоял перед пользователями. Несмотря на то что файловых систем было более одной еще до момента появления первых персоналок, выбора обычно не существовало. Просто потому, что разных несовместимых (или лишь частично совместимых) архитектур компьютеров было много, за каждой стояла конкретная фирма, использующая свою собственную операционную систему и имеющая собственные представления о том, «что такое хорошо и что такое плохо». Причем еще и носители данных применялись разные и друг с другом несовместимые. А если и совместимые аппаратно (например, НГМД использовались очень многими вычислительными системами, причем основные типоразмеры дисководов на аппаратном уровне были худо-бедно стандартизованы), то данные все организовывали по-своему. Более-менее совместимыми оказались ленточные накопители, поскольку так уж сложилось исторически, что еще со времен «больших» компьютеров именно они чаще всего применялись для обмена данными между системами различной архитектуры. Но единственными массовыми магнитофонами, которые использовались совместно с персоналками, оказались бытовые, а примитивность типичных компакт-кассет приводила к тому, что все производители, если уж их и использовали, пытались «выжать» из носителя максимум, причем все делали это разными способами.
Ситуация улучшилась лишь тогда, когда стало ясно, что линейка IBM PC (прародительница практически всех выживших на сегодняшний день архитектур ПЭВМ) постепенно становится стандартом де-факто в отрасли (и не только). Ну а когда на рынке появляется доминирующая архитектура, все остальные вынуждены это учитывать — из соображений выживания. Основным сменным носителем данных тогда являлись гибкие диски, так что достаточно быстро средством обеспечения совместимости оказались те их форматы, которые использовала компания IBM. Далеко не лучшие, надо заметить. Причем не только по аппаратуре, хотя и это тоже — несмотря на то что первые дисководы на 3,5″ появились в том же году, что и первые РС, и многие производители начали их использовать еще в первой половине 80-х годов, сама IBM перешла на этот конструктив лишь в 1987 году, а до того момента цеплялась за пятидюймовые дисководы, представленные на рынке еще в 1976 году. Однако и с точки зрения форматирования «оригинальные» разработки IBM уступали даже многим клонам ее компьютеров — в частности, компания на двухсторонних дискетах двойной плотности хранила лишь 360 Кбайт информации, в то время как конкуренты из них же без особых ухищрений выжимали и 600—720 Кбайт. Ну а уж о примитивности файловой системы FAT не рассуждал только ленивый. Хотя, вполне возможно, именно примитивность и стала второй причиной превращения «писюковых дискет» в стандарт — его было очень уж легко поддерживать. Пусть хотя бы только для чтения и в дополнение к собственному «продвинутому» варианту.
Впрочем, с точки зрения сегодняшнего дня все это имеет лишь историческую ценность. Дискеты давно уже перестали использоваться в качестве основного средства переноса информации, да и альтернативных линейке «х86-based» компьютеров на большинстве сегментов рынка не осталось. Однако нельзя сказать, что это полностью решило все проблемы. Дело в том, что на этой са́мой единственной стандартной платформе работает чуть ли не больше операционных систем, чем их было во времена, когда «расцветали все цветы». Даже если взять самое распространенное на рынке семейство, а именно Windows, то оно, строго говоря, неоднородно. Бо́льшая часть инсталляций приходится до сих пор на Windows XP — родом из начала века, но занимающую чуть ли не 2/3 рынка. Где-то четверть последнего приходится на современные версии Windows, а все оставшееся — на сборную солянку из сохранившихся компьютеров с системами, появившимися до Windows XP (их сейчас осталось мало, но все еще встречаются), различные версии MacOS и цельный букет UNIX-систем. Но даже если вам повезло никогда не сталкиваться в практической жизни ни с чем, кроме Windows XP, полностью это проблему не решает — некогда «компьютерные» технологии давно уже вышли за пределы этого рынка, активно вторгаясь в сферу бытовой электроники. Например, большинство сегодняшних видеоплееров умеет работать с USB-накопителями, а в фотоаппаратах или мобильных телефонах повсеместно применяются разнообразные карты памяти. И тут все оказывается просто только в том случае, если, например, карта используется исключительно в «своем» фотоаппарате — форматируем ее средствами камеры и навсегда забываем об этом вопросе :) Однако если нам надо хотя бы обмениваться данными с компьютером, тут уже все не так очевидно…
Причина возникновения проблемы в том, что практически все современные операционные системы за редким исключением поддерживают не одну файловую систему (как это было 20-30 лет назад), а несколько. Причем степень их поддержки может быть совершенно разной. И иногда изменяемой при помощи дополнительных программ. Вариантов масса, поэтому мы не будем пытаться охватить их все в одной небольшой статье. Но достаточное количество базовой информации, дабы можно было понять «куда копать», все же попробуем дать. А для этого достаточно познакомиться с основными доступными файловыми системами, а также их достоинствами и недостатками.
FAT — старая, ограниченная, но вездесущая
Начнем мы со старейшей файловой системы, появившейся еще во времена MS DOS, но, тем не менее, до сих пор иногда встречающейся. К положительным особенностям системы относятся простота, компактность служебных областей и большой срок присутствия на рынке. В общем-то, первые два достоинства непосредственно вытекают из третьего — в 1980 году, когда система и появилась, компьютеры были столь «мощными», а носители информации столь «емкими», что ничего сложного использовать было просто нельзя. Впрочем, оригинальный вариант, а именно FAT12, уже давно вышел из широкого пользования вследствие того, что размер диска с этой системой не может превышать 32 МиБ. Хотя, конечно, к некоторым фотоаппаратам и даже видеокамерам до сих пор умудряются прилагать флэш-карту такого или даже меньшего размера, но полноценно использовать их в подобной комплектации все равно не выйдет.
А вот FAT16, появившаяся 23 года назад, уже интереснее, благо размер как файла, так и раздела доведен уже до 2 ГиБ (для тех, кто еще не успел привыкнуть к двоичным приставкам — это чуть больше двух гигабайт). Теоретически, емкость раздела может достигать и 4 ГиБ при использовании кластеров по 64 Кбайт, однако этот вариант не является стандартным, так что поддерживается далеко не везде. На компьютерах с таким разделом умеют работать системы начиная с Windows NT4 и более новыми этой линейки, но вот ни бытовая техника, ни большинство «альтернативных» систем с ними не совместимо. Таким образом, этот вариант можно считать полностью пригодным лишь для накопителей невысокой емкости. Последних у пользователей на руках достаточно много до сих пор, но «бал правят» не они. А вот во времена флэшек размером до гигабайта была FAT16 весьма актуальной ввиду, как раз, небольших потребностей в объеме для своих нужд. Так, например, на отформатированной под FAT16 флэшке на 128 МБ пользователю остаются доступными 128 621 744 байт, а если использовать FAT32 — 127 921 152 байт. С одной стороны, пустячок, а с другой — лет пять назад «лишние» 700 КБ на дороге не валялись. Недаром Microsoft не рекомендует использовать FAT32 на разделах менее 512 МБ, так что отформатировать их во что-то отличное от FAT16 можно только сторонними средствами.
Последняя все еще актуальная сфера применения этой системы — телефоны, плееры, фотоаппараты и прочая «бытовуха», рассчитанная на поддержку карт SD или microSD, но не поддерживающая SDHC (сейчас такое уже не выпускается, но еще используется). Стандартной файловой системой для этих карт является как раз FAT16, поэтому большинство таких устройств никаких других и не поддерживают. В данном случае крайне желательно форматировать карту исключительно в устройстве, но не делать этого на компьютере. Причина в том, что Windows XP (по крайней мере, про нее это известно точно) иногда умудряется при явном указании ФС отформатировать карту под FAT32, после чего тот же фотоаппарат может ее не увидеть и даже не предложить возможности переформатировать. Решать проблему приходится какой-нибудь альтернативной программой форматирования — снова на компьютере.
