Курс лекций информатика
.pdfОбычное форматирование дисков также как и удаление производится с возможностью восстановления отформатированных данных.
Для полного уничтожения информации на дисках необходимо использовать полное форматирование без возможности восстановления информации или очистку диска специальными программами (например,
Disk Cleanup из NU, Acronis Drive Cleanser или Shredder).
К программам восстановления файлов относятся средства, предназанченные для временного хранения на диске удаленных файлов, программы восстановления файлов и файловой системы.
Программы временного хранения удаленных файлов. Для снижения риска случайного уничтожения нужных для пользователя данных при удалении файлов используются средства их временного хранения. Корзина (Recycle Bin) - это системная папка операционной системы, предназначенная для временного хранения удаляемых пользователем файлов и папок, а так же программа для ее обслуживания. Файлы и папки при удалении перемещаются в Корзину и хранятся в ней, продолжая занимать место на диске. В случае необходимости, они могут быть восстановлены в их исходное местоположение. При восстановлении автоматически создаются удаленнные папки, из которых были удалены восстанавливаемые файлы.
Корзина имеет ограничение на максимальный размер, занимаемый на диске и устанавливаемый пользователем в ее настройках. Когда отведенный пользователем объем Корзины исчерпывается, новые удаленные файлы автоматически вытесняют из нее ранее удаленные. Поэтому вероятность восстановления пользователем удаленных в Корзину файлов зависит от времени, прошедшего после удаления файла, объема данных удаленных после него и размера Корзины. При нехватке места на жестком диске пользователь может самостоятельно очистить Корзину.
Пользователь может также отключить в настройках корзины ее использование. В этом случае, когда файлы будут удаляться без
232
помещения в Корзину, из нее их нельзя восстановить, но имеется возможность восстановления на уровне файловой системы.
Программа Norton Protection (из NU) предотвращает потерю файлов, которые не сохраняются в стандартной Корзине ОС, они дают возможность восстановить копии перезаписанных файлы или файлы, удаленные по сети.
Программы восстановления файлов и файловой системы. Так как при удалении файлов без помещения в Корзину и при ее очистке, операционная система не стирает данные с диска, а помечает пространство, занимаемое удаленными файлами как свободное, удаленную, таким образом, информацию можно восстановить. Самое главное для полноценного восстановлния данных, чтобы на их место не были записаны новые данные. Но даже и в этом случае можно частично восстановить удаленную информацию. Данные очень часто можно восстановить даже после форматирования дисков, при повреждении файловой системы или появлении неисправностей на носителях.
Существует множество программ для восстановления файлов и файловой системы (например: Easy Recover, Tiramisu, Drive Rescue и др).
Программы резервного копирования данных – сервисные программы,
позволяющие создавать резервные копии файлов на различные носители информации или на другой компьютер, а также обеспечивающие надежные механизмы хранения, восстановления и менеджмента файлов (баз данных) на локальном компьютере или в локальной сети.
Данные программы используются для организации автоматизированного процесса резервного копирования данных на компьютере. Они позволяют избавить пользователя ПК от необходимости периодически создавать вручную резервные копии каких-либо данных. Настроив планировщик заданий программы резервного копирования, у пользователя нет необходимости принимать непосредственное участие в данном процессе, т.к. программа выполняет все действия автоматически согласно настройкам. Многие программы позволяют делать сжатые
233
резервные копии данных, проверяют результат выполнения архивирования и выдают отчет пользователю.
Особенно полезными эти программы являются для администраторов баз данных и серверов.
8.5.Программы записи и обслуживания компакт дисков
Запись компакт дисков или DVD можно выполнять на компьютере при помощи пишущих устройств (CD-RW и DVD+/-RW) и специальных служебных программ - Easy CD Creator, WinOnCD, Nero Burning ROM, Direct CD и т.п.
Процесс записи одной дорожки представляет собой единую операцию, которая не может быть прервана, иначе диск будет испорчен. Для обеспечения равномерности поступления записываемой информации на лазер все приводы имеют буфер данных. К сбою записи могут привести механические толчки привода и исчерпание данных в буфере, вызванное запуском параллельных процессов, зависанием программы или ОС.
Используются два основных метода записи на компакт диски: сессионный (для CD-R и CD-RW) или с предварительным форматированием диска (только для CD-RW).
Сессионную запись можно делать в одном из двух режимов: DAO (Disk At Once - весь диск за один прием) и TAO (Track At Once - одна дорожка за один прием). При записи методом TAO лазер включается в начале каждой дорожки и отключается в ее конце. При записи методом DAO лазер включен на протяжении записи всего диска.
Диск, записанный за один прием, является наиболее универсальным и считывается любыми CD-ROM, однако после записи невозможно дописывание новых данных на диск. Этот режим желателен для записи мастер-дисков или для последующего тиражирования дисков.
В режиме TAO пишутся многосессионные диски формата CD-R, допускающие последующую дозапись данных; это также наиболее простой способ записи CD-DA с паузами между дорожками. Используюя ТАО,
234
диск может быть полностью записан как за один прием, так и в несколько приемов.
Недостатком данного приема являются дополнительные расходы (потери) дискового пространства на каждую сессию записи: на первую - 22,5 Мб, на каждую последующую - 13,5 Мб, которые приводят к уменьшению общей емкости диска.
Перед началом записи сессионным способом необходимо сформировать полный список входящих в сессию файлов; последующее добавление файлов на диск после записи возможно лишь в виде дополнительных сессий.
Метод с предварительным форматированием можно использовать только для записи RW-компакт дисков. В этом методе сначала производится разбивка диска на секторы (форматирование), подобно магнитным дискам. После форматирования CD-RW может использоваться, как обычный сменный диск, т.е. стандартные файловые операции копирования, удаления и переименования преобразуются драйвером привода CD-RW в серии операций перезаписи секторов диска. Благодаря этому для работы с дисками CD-RW не требуется специального программного обеспечения, кроме драйвера привода с поддержкой UDF (например, Adaptec DirectCD), программы начальной разметки (Direct CD)
иобычного файлового менеджера.
8.6.Программы обслуживания операционной
системы Windows
Программы оптимизации работы ОС, предназначены для повышения быстродействия компьютера несколькими путями: выполняя корректную установку и удаление программного обеспечения, более эффективно распределяя оперативную память, оптимизируя файлы реестра, отключая ненужные для использования компоненты и службы операционной системы.
Чтобы программы правильно и без сбоев работали в ОС Windows их необходимо устанавливать на компьютер.
235
Установка программного обеспечения – это процедура добавления файлов и папок на жесткий диск и соответствующих данных в системный реестр ОС Windows. В результате установки в меню и на рабочем столе ОС Windows появляются необходимые для запуска программ ярлыки и устанавливаемые программы настраиваются на работу с имеющимися устройствами компьютера.
Программы устанавливаются с дисков, на которых записан дистрибутив. Дистрибутив – это программа (инсталлятор) с совокупностью исходных файлов и папок (хранящихся обычно в сжатом виде), предназначенные для установки программ на компьютер. Инсталлятор – специализированная сервисная программа, обеспечивающая корректную установку программ.
Чтобы установить программу с диска можно открыть папку с дистрибутивом программы, запустить файл setup.exe (install.exe) и следовать инструкциям установки.
Очень часто ненужные или неправильно работающие программы приходится удалять из компьютера. Чтобы после удаления программ ОС работала без сбоев необходимо выполнять процедуру удаления программного обеспечения.
Удаление программного обеспечения (Uninstall - деинсталляция) –
это процедура удаления файлов и папок с жесткого диска и соответствующих данных из системного реестра ОС Windows.
К сожалению, стандартные средства Windows не всегда корректно удаляют программы. Зачастую в некоторых системных файлах остаются записи об уже удаленных программах. Со временем накопившийся таким образом «мусор» в конфигурационных файлах начинает «утяжелять» систему, делает её менее устойчивой и менее производительной.
Файлы реестра Windows представляют собой специальную базу данных, в которой хранится информация об аппаратной и программной конфигурации компьютера.
236
Программы оптимизации работы операционной системы проводят анализ правильности хранения данных в реестре, удаляют ссылки на отсутствующие программы и упорядочивают структуру данных, что приводит к определенному повышению быстродействия системы
(RegCleaner, Customizer XP).
Некоторые программы (Ashampoo UnInstaller) непосредственно предназначены для мониторинга всех изменений при инсталляции программ и используются для последующего корректного их удаления из системы.
Существует ряд интегрированных программ (например, WinXP Manager) позволяющих осуществлять полную оптимизацию работы ОС: повышение скорости загрузки и выключения, очистку жесткого диска от ненужных файлов и реестра от ненужных ссылок, а так же «тонкую» настройку параметров операционной системы (отключать неиспользуемые службы, ненужные компоненты и др.).
Современные программное обеспечение очень сложное, с возможностями использования и настройки. Обычному пользователю требуется очень много времени для освоения всех функций и возможностей настройки. Поэтому появились программы тонкой настройки (Tweak), которые позволяют пользователю в удобном и понятном диалоговом режиме изменять сложные системные параметры работы операционной системы. Программы тонкой настройки существуют для многих программ.
8.7.Программы работы с архивами
Программы-упаковщики (архиваторы) позволяют за счет применения специальных методов "упаковки" информации сжимать информацию на дисках, т.е. создавать копии файлов меньшего размера, а также объединять копии нескольких файлов в один архивный файл. Архивирование используют при хранении запасных (страховых) копий на дискетах или жестких дисках, а также при создании дистрибутивов
237
программных продуктов, чтобы уменьшить количество дискет при продаже или передаче продукта. Следует заметить, что различные упаковщики не совместимы друг с другом - архивный файл, созданный одним упаковщиком, чаще всего нельзя прочесть другим. Поэтому большинство грамотных пользователей держат в системе несколько основных программ архиваторов. Наиболее распространены такие программы, как ARJ, RAR, LHA, ZIP и другие.
Основными характеристиками архиватора являются:
-степень сжатия файла (отношение размера исходного файла к размеру упакованного файла);
-скорость работы;
-сервис (т. е. набор функций архиватора).
Для архивного хранения информации применяются только алгоритмы производящие сжатие без потерь, т.е. допускающие восстановление исходной информации "байт в байт". Существует несколько основных методов упаковки информации:
Running - это самый простой из методов упаковки информации. Предположим имеется строка текста в конце которой стоит 40 пробелов. Налицо явная избыточность имеющейся информации. Проблема сжатия этой строки решается очень просто - эти 40 пробелов (40 байт) сжимаются в 3 байта с помощью упаковки их по методу повторяющихся символов (running). Первый байт, стоящий вместо 40 пробелов в сжатой строке, фактически будет являться пробелом (последовательность была из пробелов). Второй байт - специальный байт "флажка" который указывает что мы должны развернуть предыдущий в строке байт в последовательность при восстановлении строки. Третий байт - байт счета (в нашем случае это будет 40). Как видно из этого примера, достаточно чтобы любой раз, когда мы имеем последовательность из более 3-х одинаковых символов, заменять их выше описанной последовательностью, чтобы на выходе получить блок информации меньший по размеру, но допускающий восстановление информации в исходном виде.
238
LZW - история этого алгоритма начинается с опубликования в мае 1977 г. Дж. Зивом ( J. Ziv ) и А. Лемпелем ( A. Lempel ) статьи в журнале "Информационные теории" под названием "IEEE Trans". В последствии этот алгоритм был доработан Терри А. Велчем (Terry A. Welch) и в окончательном варианте отражен в статье "IEEE Compute" в июне 1984 . В этой статье описывались подробности алгоритма и некоторые общие проблемы с которыми можно столкнуться при его реализации. Позже этот алгоритм получил название - LZW (Lempel - Ziv - Welch).
Алгоритм LZW представляет собой алгоритм кодирования последовательностей неодинаковых символов. Возьмем для примера строку "Объект TSortedCollection порожден от TCollection.". Анализируя эту строку мы можем видеть, что слово "Collection" повторяется дважды. В этом слове 10 символов - 80 бит. И если мы сможем заменить это слово в выходном файле, во втором его включении, на ссылку на первое включение, то получим сжатие информации. Если рассматривать входной блок информации размером не более 64К и ограничится длинной кодируемой строки в 256 символов то, учитывая байт "флаг" получим, что строка из 80 бит заменяется 8+16+8 = 32 бита. Алгоритм LZW как бы "обучается" в процессе сжатия файла. Если существуют повторяющиеся строки в файле, то они будут закодированы в таблицу. Очевидным преимуществом алгоритма является то, что нет необходимости включать таблицу кодировки в сжатый файл. Другой важной особенностью является то, что сжатие по алгоритму LZW является однопроходной операцией в противоположность алгоритму Хаффмана (Huffman), которому требуется два прохода.
Huffman - сжимая файл по алгоритму Хаффмана первое что необходимо сделать - это прочитать файл полностью и подсчитать сколько раз встречается каждый символ из расширенного набора ASCII. Если учитывать все 256 символов, то не будет разницы в сжатии текстового и EXE файла. После подсчета частоты вхождения каждого символа, необходимо просмотреть таблицу кодов ASCII и сформировать мнимую
239
компоновку между кодами по убыванию. То есть, не меняя местонахождение каждого символа из таблицы в памяти отсортировать таблицу ссылок на них по убыванию. Каждую ссылку из последней таблицы называют "узлом". В дальнейшем (в дереве) разместятся указатели которые будут указывает на этот "узел". После создания дерева, с известной частотой вхождения для каждого символа, можно кодировать файл. Кодируя первый символ мы прослеживаем вверх по дереву все повороты ветвей и если мы делаем левый поворот, то запоминаем 0-й бит, и аналогично 1-й бит для правого поворота. Каждый символ изначально представлялся 8-ю битами (один байт), и так как мы уменьшили число битов необходимых для представления каждого символа, следовательно - уменьшили размер выходного файла. Сжатие складывается следующим образом: первоначальный размер файла: 100 байт - 800 бит; размер сжатого файла: 30 байт - 240 бит; 240 - 30% из 800 , так что мы сжали этот файл на 70%. Все это довольно хорошо, но неприятность находится в том факте, что для восстановления первоначального файла, мы должны иметь декодирующее дерево, так как деревья будут различны для разных файлов. Следовательно, мы должны сохранять дерево вместе с файлом. Это превращается в итоге в увеличение размеров выходного файла. В нашей методике сжатия полная таблица для 256 байт будет приблизительно 1 Кбайт длинной. Таблица в нашем примере имеет 5 узлов плюс 6 вершин (где и находятся наши символы), всего 11. 4 байта 11 раз - 44 . Если мы добавим после небольшое количество байтов для сохранения места узла и некоторую другую статистику - наша таблица будет приблизительно 50 байтов длинны. Добавив к 30 байтам сжатой информации, 50 байтов таблицы получаем, что общая длинна архивного файла вырастет до 80 байт. Учитывая, что первоначальная длинна файла в рассматриваемом примере была 100 байт - мы получили 20% сжатие информации. То, что мы действительно выполнили - трансляция символьного ASCII набора в наш новый набор, требующий меньшее количество знаков по сравнению со стандартным.
240
Итак, мы имеем итог из 256 различных комбинаций, которыми можно кодировать байт. Из этих комбинаций лишь 2 по длине равны 8 битам. Если мы сложим число битов, то в итоге получим 1554 бит или 195 байтов. Так в максимуме, мы сжали 256 байт к 195 или 33%, таким образом, максимально идеализированный Huffman может достигать сжатия в 33% когда используется на уровне байта. Одно последнее примечание - алгоритм Хаффмана требует читать входной файл дважды, один раз считая частоты вхождения символов, другой раз - производя непосредственно кодирование.
Большинство программ архиваторов могут работать в трех режимах:
оконный (полноэкранный)
консольный (режим командной строки)
фоновый.
Воконном режиме программа выполняется в окне с собственным интерфейсом. Версии, разработанные под MS DOS могут выполнятся полноэкранном режиме.
Врежиме командной строки программе в виде параметров передаются основные условия выполнения процесса архивирования: вид операции, исходные файлы, название и место создания архива.
Вфоновом режиме программа архиватора вызывается любой прикладной программой, выполняет указанные действия и передает ей результат выполнения, внешне не заметно для пользователя.
Большинство архиваторов имеют однотипный набор команд и близкие параметры сжатия.
Архиватор ARJ. Экономия места для хранения архивных копий при использовании программы ARJ составляет приблизительно 60-70% для текстовых файлов и 20-30% для выполняемых.
Основные возможности программы архивации ARJ: добавление и извлечение файлов из архива, архивирование с паролем, создание многотомных архивов и др.
241
