Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие по курсу Информатика NEW.doc
Скачиваний:
60
Добавлен:
26.02.2016
Размер:
6.33 Mб
Скачать

7.4. Файловые системы

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

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

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

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

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

Файловая система — еще одно базовое понятие, поддерживаемое виртуально всеми ОС. Как было установлено, основной функцией операционной системы является маскирование особенностей рабо­ты дисков и других устройств и предоставление пользователю понят­ной и удобной абстрактной модели независимых от устройств фай­лов. Системные вызовы необходимы для создания, удаления, чтения или записи файлов. Перед тем как прочитать файл, его нужно раз­местить на диске и открыть, а после прочтения его нужно закрыть. Все эти функции осуществляют системные вызовы.

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

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

Рис. 7.3. Дерево каталогов

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

Каждый файл в иерархии каталогов можно определить, задав его имя пути, называемое также полным именем файла. Путь начинает­ся из вершины структуры каталогов, называемой корневым катало­гом. Абсолютное имя пути состоит из списка каталогов, кото­рые нужно пройти от корневого каталога к файлу, с разделением отдельных компонентов. Отдельные компоненты в ОС UNIX разде­ляются косой чертой /, а в MS-DOS и Windows — обратной косой чертой \.

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

Файловая система характеризует способ хранения и поиска ин­формации на внешнем носителе — жестком диске.

Данные в ПК размещены по иерархическому принципу: на верхнем уровне — логический диск, на втором уровне — папки (ка­талоги), на третьем - файлы/папки. Логический диск — это логическая единица жесткого диска ПК. Разметка жесткого диска осуществляется специальной программой. Количество и размер логических дисков определяются пользовате­лем ПК. Традиционно дисководы для гибких дисков носят название А: и В:. Названия логических дисков винчестера начинаются с С:, D:, Е: и т. д. На диске С: обычно устанавливаются и хранятся систем­ные программы и файлы, а начиная с диска D: — размещается лич­ная информация пользователя.

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

Файл — это поименованная область на носителе информации (диске), содержащая данные. Имя файла определяется по опреде­ленным законам и состоит из 2-х частей: собственно имени и расши­рения (типа). Имя файла может содержать русские и латинские буквы, цифры и некоторые знаки (подчеркивание, пробел, дефис, #, $, ...), длина имени не более 255 символов. Некоторые знаки запрещены для ис­пользования в имени -*,?,/, \ и др., поскольку за ними закреплены в системе определенные функции. Расширение (тип) файла может отсутствовать, но его наличие очень полезно, поскольку позволяет пользователю узнать, какого типа информация находится в файле (.txt — текстовый файл, .doc — документ, . bmp — картинка и т.п.), а операционная система может определить, с помощью какого приложения (программы) можно этот файл прочитать.

Расширения .ехе, .com, .bat определяют исполняемые файлы, файлы, внутри которых находится информация, «понятная» ПК на внутреннем языке. Это расширения файлов-программ (приложений).

Для группировки файлов в группы с целью их поиска использу­ются шаблоны имен. В них могут использоваться определенные символы — символы шаблонов. К ним относятся:

* — обозначает любое количество любых символов;

? — любой один символ.

Рассмотрим несколько примеров (шаблонов):

*.txt - все файлы с расширением txt;

А*.ехе - исполняемые файлы, начинающиеся на А;

?K*.doc - файлы со второй буквой К в названии, сделанные в программе Word.

Небольшой файл (до 1 Кб), содер­жащий строку адреса файла, называет­ся ярлыком.

Путь (адрес) файла - это его место­положение в файловой системе. На­пример, для случая на рис. 7.4, путь к файлу file.txt будет таким:

D:\моя\задания\file.tхt

Рис. 7.4. Фрагмент файловой структуры

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

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

Операционные системы MS-DOS, OS/2, Windows 95 и другие используют файловую систему на основе таблиц размещения файлов (FAT-таблицы), состоящих из 16-разрядных полей. Такая файловая система называется FAT16. Она позволяет разместить в FAT-таблицах не более 65 536 записей (216) о местоположении единиц хранения данных. Для дисков объемом от 1 до 2 Гбайт длина кластера составляет 32 Кбайт (64 сектора). Это не вполне рациональный расход рабочего пространства, поскольку любой файл (даже очень маленький) полностью оккупирует весь кластер, которому соответствует только одна адресная запись в таблице размещения файлов. Даже если файл достаточно велик и располагается в нескольких кластерах, все равно в его конце образуется некий остаток, нерационально расходующий целый кластер.

Для жестких дисков, объем которых приближается к 2 Гбайт, потери, связанные с неэффективностью этой файловой системы, весьма значительны и могут составлять от 25% до 40% полной емкости диска, в зависимости от среднего размера хранящихся файлов. С дисками же размером более 2 Гбайт файловая система FAT16 вообще работать не может.

Начиная с Windows 98 операционные системы семейства Windows (Windows 98, Windows Me, Windows2000, WindowsXP) поддерживают более совершенную версию файловой системы на основе FAТ-таблиц - FAT32 с 32-разрядными полями в таблице размещения файлов. Для дисков размером до 8 Гбайт эта система обеспечивает размер кластера 4 Кбайт (8 секторов).

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

Обслуживание файловой структуры

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

      • создание файлов и присвоение им имен;

      • создание каталогов (папок) и присвоение им имен;

      • переименование файлов и каталогов (папок);

      • копирование и перемещение файлов между дисками компьютера и между каталогами (папками) одного диска;

      • удаление файлов и каталогов (папок);

      • навигация по файловой структуре с целью доступа к заданному файлу, каталогу (папке);

      • управление атрибутами файлов.

Сравнение файловых систем Microsoft Windows.

Под управлением MS Win2000 возможно использование файло­вых систем FAT16, FAT32, NTFS или их комбинаций. Цифры в на­звании файловых систем — FAT16 и FAT32 — указывают на число бит, необходимых для хранения информации о номерах кластеров, используемых файлом. Так, в FAT16 применяется 16-битная адреса­ция и, соответственно, возможно использование до 216 адресов. В Windows 2000 первые четыре бита таблицы расположения файлов FAT32 необходимы для собственных нужд, поэтому в FAT32 число адресов достигает 228.

Среди преимуществ FAT16 можно отметить следующие:

      • файловая система поддерживается ОС MS-DOS, Windows 95, Windows 98, Windows NT, Windows 2000, а также некоторыми ОС UNIX;

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

      • при возникновении проблем с загрузкой с HDD система может быть загружена с системной дискеты;

      • файловая система достаточно эффективна для томов объемом менее 256 Мб.

К недостаткам FAT16 можно отнести:

      • не поддерживается резервная копия загрузочного сектора;

      • в FAT 16 не поддерживается встроенная защита файлов и их сжа­тие.

Среди преимуществ FAT32 важно отметить следующие:

      • выделение дискового пространства выполняется более эффектив­но, особенно для дисков большого объема;

      • корневой каталог в FAT32 представляет собой обычную цепочку кластеров и может находиться в любом месте диска, благодаря этому FAT32 не накладывает никаких ограничений на число эле­ментов в корневом каталоге;

      • за счет использования кластеров меньшего размера занятое дис­ковое пространство на 10—15 % меньше, чем под FAT16.

      • FAT32 является более надежной файловой системой, в частно­сти, она поддерживает возможность перемещения корневого ка­талога и использование резервной копии FAT.

Основные недостатки FAT32:

      • размер тома под Win2000 ограничен 32 Гб;

      • тома недоступны из других ОС — только из Win95 OSR2 и Win98;

      • не поддерживается резервная копия загрузочного сектора;

      • не поддерживается встроенная защита файлов и их сжатие. При работе в Windows 2000 рекомендуется отформатировать все разделы HDD под NTFS, за исключением тех конфигураций, когда используется несколько ОС (кроме Windows 2000 и Windows NT).

Применение NTFS вместо FAT позволяет использовать функции, доступные в NTFS. К ним, в частности, относятся:

      • возможность восстановления. Эта возможность встроена в фай­ловую систему, NTFS и гарантирует сохранность данных за счет того, что используются протокол и некоторые алгоритмы восста­новления информации;

      • сжатие информации. Для томов NTFS Windows 2000 поддержи­вает сжатие отдельных файлов. Такие сжатые файлы могут ис­пользоваться Windows-приложениями без предварительной рас­паковки, которая происходит автоматически при чтении из файла. При закрытии и сохранении файл снова упаковывается;

      • защита файлов и каталогов. Только на томах NTFS возможно задание атрибутов доступа к файлам и папкам;

      • файловая система поддерживает резервную копию загрузочного сектора — она располагается в конце тома;

      • NTFS поддерживает систему шифрования Encrypted File System (EFS), обеспечивающую защиту от неавторизованного доступа к содержимому файлов.

К недостаткам NTFS относятся:

      • NTFS-тома недоступны в MS-DOS, Win95 и Win98;

      • для томов небольшого объема, содержащих много файлов не­большого размера, возможно снижение производительности по сравнению с FAT.

7.5. Утилиты. Архиваторы. Драйверы

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

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

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

Утилиты чаще всего позволяют выполнять следующие функции:

      • обслуживание дисков (форматирование, архивация, сжатие, обеспечение сохранности информации, возможности ее восстановления в случае сбоя и т.д.);

      • обслуживание файлов и каталогов (аналогично оболочкам);

      • создание и обновление архивов;

      • предоставление информации о ресурсах компьютера, о дисковом пространстве, о распределении ОЗУ между программами;

      • печать текстовых и других файлов в различных режимах и форматах;

      • защита от компьютерных вирусов.

Из утилит, получивших наибольшую известность, можно назвать программы MS Plu, а также комплексы программ Norton Navigator и Norton Utilites фирмы Symantec PC Tool Deluxe и др.

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

К утилитам относят следующие программные средства: дисковые компрессоры; дисковые дефрагментаторы; программы резервного копирования данных; архиваторы; программы, опти­мизирующие использование оперативной памяти; программы за­щиты и восстановления данных; антивирусные программы и др. Для обслуживания жесткого диска в среде Windows используются служебные программы. К ним относятся следующие программы и утилиты, которые удовлетворяют минимальным требованиям пользователя ПК: программы дефрагментации диска (DEFRAG), проверки диска (Scandisk), уплотнения диска (DrvSpace), резер­вирования и восстановления файлов (Backup), архиваторы, сис­темный монитор (System monitor), антивирусные программы.

Дадим им краткую характеристику.

Утилита дефрагментации диска (DEFRAG) предназначена для оптимизации работы диска и повышения скорости доступа к нему. При копировании, удалении и перемещении файлов на жестком или гибком диске возникают пустые места, которые затем за­полняются фрагментами других файлов. Файловая система Windows дает возможность хранить файлы фрагментами. Если файл разбит на несколько фрагментов, скорость доступа к нему уменьшается, поскольку на перемещение головок диска к очеред­ному фрагменту требуется намного больше времени, чем на его считывание. Дефрагментация диска состоит в том, что фрагмен­ты файла собираются в один блок.

Можно выбрать один из трех способов дефрагментации: пол­ную дефрагментацию, дефрагментацию только файлов, объеди­нение свободных участков диска.

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

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

Программа уплотнения диска (DrvSpace) предназначена для создания и обслуживания уплотненных (сжатых) дисков. Уплот­ненный диск представляет собой файл на обычном физическом гибком или жестком диске. Работа с таким диском ничем не отли­чается от работы с простым диском. Разница заключается только в том, что при записи на диск данные сжимаются (непосредствен­но перед записью), а при чтении восстанавливаются снова (непос­редственно после считывания), поэтому чтение и запись выпол­няются чуть медленнее, чем для обычного диска.

Программа резервирования (копирования) данных на диске (Backup) работает в трех режимах: резервирования (Backup), вос­становления (Restore) и сравнения исходных данных с их резерв­ными копиями (Compare). Для резервных копий используются дискеты, кассеты с магнитной лентой или другие сменные носите­ли информации, а также возможно резервирование на другие же­сткие диски.

Средства просмотра и воспроизведения. Обычно для работы с файлами данных необходимо загрузить их в "родительскую" при­кладную систему, с помощью которой они были созданы. Это дает возможность просматривать документы и вносить в них измене­ния. Но в тех случаях, когда требуется только просмотр без ре­дактирования, удобно использовать более простые и более уни­версальные средства, позволяющие просматривать документы разных типов.

Средства диагностики. Предназначены для автоматизации процессов диагностики программного и аппаратного обеспече­ния. Они выполняют необходимые проверки и выдают собран­ную информацию в удобном и наглядном виде. Их используют не только для устранения неполадок, но и для оптимизации работы компьютерной системы.

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

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

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

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

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

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

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

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

Антивирусные программы появились почти одновременно с персональными компьютерами, и с тех пор состав их постоянно растет. Современные антивирусные пакеты являются интегриро­ванными средствами для выявления и устранения компьютерных вирусов. В связи с появлением операционных систем (Windows XP, Windows NT, Windows 2000, OS/2 и др.) задача обеспечения анти­вирусной защиты чрезвычайно усложнилась. Одним из наиболее перспективных направлений развития антивирусных средств яв­ляется создание сетевых версий этих продуктов. Сетевой антиви­русный пакет устанавливается на сервер и при обнаружении ви­руса блокирует дальнейшую работу с пораженными ресурсами.

Антивирусные программы обеспечивают диагностику (обнаружение) и лечение (нейтрализацию) вирусов. Термином «вирус» обозначается программа, способная размножаться, внедряясь в другие программы, совершая при этом нежелательные различные действия. Среди антивирусных программ хорошо себя зарекомендовали Norton Antivirus (Фирмы Symantec), MS Antivirus в составе DOS 6.XX (фирмы Microsoft), Dr. Web (фирмы Диалог – Наука), Antiviral Toolki Pro (фирмы Ками), Касперский и др.

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

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

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

Процесс записи файла в архивный файл называется архивированием (упаковкой, сжатием), а извлечение файла из архива – разархивированием (распаковкой). Упакованный (сжатый) файл называется архивом. Архивация информации – это такое преобразование информации, при котором объем информации уменьшается, а количество информации остается прежним. Степень сжатия информации зависит от типа файла, а также от выбранного метода упаковки.

Степень (качество) сжатия файлов характеризуется коэффициентом сжатия Кс, определяемый как отношение объема сжатого файла Vc к объему исходного файла Vo, выраженное в процентах. Чем меньше Кс, тем выше степень сжатия информации. Заметим, что в некоторых литературных источниках встречается определение коэффициента сжатия, обратное приведенному отношению.

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

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

Самым популярным архиватором является WinZip. Объясняется это тем, что формат ZIP считается ми­ровым стандартом архивирования и имеет самую длительную историю развития. Большинство архивов в Internet также имеют формат ZIP. За ним следуют многими любимый WinRAR и набирающий обо­роты WinAce. Все эти архиваторы работают под управлением Windows 98/Me/NT/ 2000/XP.

WinZip. Возможностей его вполне достаточно для того, что­бы обеспечить надежное и эффективное архивирование данных. Про­грамма работает в двух режимах: классическом и режиме мастера, рассчитанном на новичков. Она ориентирована преимущественно на ZIP-архивы, но при этом поддерживает и другие популярные ар­хивные форматы. В числе возможностей WinZip — поддержка техно­логии перетаскивания (drag & drop) и полная интеграция с програм­мами «Мой компьютер» и «Проводник»; создание самораспако­вывающихся файлов; поддержка антивирусных программ; отправка архива по электронной почте и пр. Для защиты архива от несан­кционированного доступа можно при его создании указать пароль. WinZip 9.0 поддерживает 128- и 256-битовое шифрование АЕS, ко­торое обеспечивает намного большую безопасность, чем традицион­но используемый в более ранних версиях архиватора метод шифро­вания Zip 2.0. Кроме того, WinZip 9.0 позволяет теперь обрабатывать файлы практически неограниченного размера.

WinRAR — признанный лидер среди программ-архиваторов по удобству и массовости применения, поддерживающий в настоящее время самый большой набор языков, включая русский. При этом формат RAR в большинстве случаев обеспечивает значительно луч­шее сжатие, чем ZIP, особенно в режиме создания непрерывных ар­хивов. Формат RAR оснащен несколькими очень важными функци­ями, отсутствующими у ZIP, к числу которых, например, можно отнести функцию добавления информации для восстановления, ко­торая позволяет восстановить физически поврежденный файл, и фун­кцию блокировки архивов для предотвращения случайной модифика­ции особенно ценных данных.

Формат RAR позволяет обрабатывать файлы практически неограниченного размера и не только предлага­ет оригинальные и эффективные алгоритмы для сжатия информации различных типов, но и автоматически применяет нужный алгоритм при сжатии файлов. В число его основных особенностей входят: пол­ная поддержка архивов RAR и ZIP; управление архивами других фор­матов; наличие графической оболочки с поддержкой технологии пе­ретаскивания drag & drop; поддержка метода solid-архивирования, при котором может быть достигнута степень сжатия, на 10-50 % пре­вышающая ту, что дают обычные методы; поддержка многотомных архивов (в формате RAR); создание самораспаковывающихся (SFX) обычных и многотомных архивов; возможность создания и исполь­зования томов для восстановления, позволяющих воссоздавать недостающие части многотомных архивов; отправка архива по элек­тронной почте и пр. Для удобства возможно создание избранных па­пок и архивов. Программа поддерживает два варианта работы: клас­сический и с помощью мастера.

В последних версиях предлагаются новые возможности для за­щиты информации за счет применения 128-битного алгоритма шиф­рования данных и имен файлов в архиве с использованием алгорит­ма AES и сохранения данных о правах доступа. Очень удобна появившаяся в одной из последних версий архиватора возможность поиска файлов внутри архивов. Полезна новая команда «Просмотр архива на вирусы», обеспечивающая распаковку архива во времен­ную папку и проверку ее содержимого установленным на компьюте­ре антивирусом. Команда печати позволяет теперь распечатывать как обычные, так и архивированные файлы.

Драйверы

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

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

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

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

Рис. 7.5. Логическое расположение драйверов устройств

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

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

Драйвер устройства выполняет несколько функций:

1) обработку абстрактных запросов чтения и записи независи­мого от устройств и расположенного над ними программного обес­печения;

2) инициализацию устройства;

3) управление энергопотреблением устройства и регистрацией событий;

4) проверку входных параметров. Если они не удовлетворяют оп­ределенным критериям, драйвер возвращает ошибку. В противном случае драйвер преобразует абстрактные термины в конкретные. На­пример, дисковый драйвер может преобразовывать линейный номер блока в номера головки, дорожки и секторы;

5) проверку использования устройства в данный момент. Если ус­тройство занято, запрос может быть поставлен в очередь. Если уст­ройство свободно, проверяется его состояние. Возможно, требуется включить устройство или запустить двигатель, прежде чем начнется перенос данных. Как только устройство готово, может начинаться собственно управление устройством.

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

Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.

Оставленные комментарии видны всем.