русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2014-11-28; просмотров: 4189; Нарушение авторских прав


 

Первая версия операционной системы Windows 95 использовала файловую систему MS-DOS, с именами файлов из 8 + 3 символов и системами FAT-12 и FAT-16. Во второй версии Windows 95 были разрешены длинные имена файлов в новой файловой системе FAT-32, разработанной для поддержки дисков размером более 8 Гбайт и дисковых разделов больше 2 Гбайт. В операционных системах Windows 98 и Windows Me использовалась также файловая система FAT-32.

В Windows 98 была разработана новая система поддержки длинных имен, обладавшая обратной совместимостью со старой системой имен 8 + 3, применявшейся в MS-DOS. Структура каталогов представляла собой список 32-байтовых описателей, формат которых был заимствован у файловой системы СР/М (написанной для процессора Intel 8080). Однако в 32-байтовом описателе файла оставались незадействованными 10 байт (рис.1), которые стали использоваться в FAT-32 (рис.3.)

 


Изменение каталоговой записи состояло в добавлении пяти новых полей на место неиспользовавшихся 10 байт. Поле «NT» было предназначено для совместимости с Windows NT и обеспечивало отображение имени файла в правильном регистре. Поле «Время создания» (Sec) решило проблему невозможности хранения времени суток в 16-битовом поле с точностью до секунды. Восемь дополнительных разрядов позволили хранить поле «Время создания»(Creation time) с точностью до 10 мс. Поле «Дата последнего доступа» (Last access) было создано для хранения даты последнего доступа к файлу. В связи с переходом на файловую систему FAT-32 для хранения старших разрядов номера начального блока файла потребовались дополнительные 16 бит.

Для предоставления длинным именам файлов обратной совместимости с MS-DOS было принято решение – назначение каждому файлу двух имен: длинного имени файла (в формате Unicode, для совместимости с Windows NT) и имени формата 8 + 3 для совместимости с MS-DOS. При создании файла, имя которого не удовлетворяло правилам MS-DOS, Windows 98 создавало дополнительное имя формата MS-DOS в соответствии с определенным алгоритмом. Использовались первые шесть символов имени, которые при необходимости преобразовывались в верхний регистр ASCII, после чего к ним добавляется суффикс « ~ 1». Если такое имя уже было, то использовался суффикс « ~ 2) и т.д. Кроме того, удалялись пробелы и лишние точки, а определенные символы преобразовывались в символы подчеркивания. Например, имя файла «The time has come the walms» получало формат MS-DOS «THETIM~1».



Имя формата MS-DOS хранилось в каталоге в описателе (рис. 3.). Если у файла было также длинное имя, оно хранилось в одной или нескольких каталоговых записях, предшествующих описателю файла с именем в формате MS-DOS. Каждая такая запись содержала до 13 символов формата Unicode. Элементы имени хранились в обратном порядке, начинаясь сразу перед описателем файла в формате MS-DOS и последующими фрагментами перед ним (рис.4.)

 


Для отличия каталоговых записей, содержащих длинные и короткие имена файла в поле «Атрибуты» (Attributes) для фрагмента длинного имени устанавливалось значение «0x0F», что соответствовало невозмож­ной комбинации атрибутов для описателя файла в MS-DOS. Старые программы, написанные для работы в MS-DOS, при чтении каталога игнорировали такие описа­тели как неверные. Порядок фрагментов имени учитывался в первом байте каталоговой записи. Последний фрагмент имени отмечался добавлением к порядковому номеру числа 64. Поскольку для порядкового номера использовалось 6 бит, теоретически максимальная длина имени файла могла составить 63 х 13 = 819 символов. На практике она ограничивалась 260 символами.

Каждый фрагмент длинного имени содержал поле «Контрольная сумма» (Checksum) во избежание проблем с переводом длинных имен файлов в короткие имена. Реализация файловой системы FAT-32 концептуально близка к реализации файловой системы FAT-16. Однако вместо массива из 65536 элементов в ней используется столько, сколько нужно, чтобы покрыть весь раздел диска. Если диск содержит миллион блоков, то и таблица будет состоять из миллиона элементов. Для экономии памяти система Windows 98 не хранит их все сразу в памяти, а ис­пользует окно, накладываемое на таблицу.

 



<== предыдущая лекция | следующая лекция ==>
Файловая система операционной системы MS-DOS | Файловая система операционной системы UNIX


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.097 сек.