Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 14

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»

ІКТА
кафедра ЗІ

ЗВІТ
до лабораторної роботи №1

з курсу: «Безпека програмного забезпечення»


на тему: «Дослідження алгоритмів архівування»

Виконав: ст. гр. КБ-44


Євенко Д. А.
Прийняв: Михайлова О. О.

Львів 2021
Мета роботи: ознайомитись та дослідити алгоритми архівування,
провести порівняльний аналіз звичайного і найкращого методу стискання для
архівів типу RAR та ZIP, розробити рекомендації по використанню форматів
архівування RAR та ZIP стосовно даних різних типів.
Завдання
2.1. Ознайомитись з роботою архіватора WinRAR.
2.2. Створити набори даних різного типу обсягом, що забезпечують час
архівування (розархівування) кожного такого набору на використованому
комп’ютері архіватором WinRAR (формати архівування RAR та ZIP) не менше
10 секунд при встановленому за замовченням ступені стискання:
а) документи Word (*.doc, *.docx);
б) відеофайли (*.avi, *.mp4, *.mkv);
в) аудіофайли (*.mp3);
г) файли динамічних бібліотек (*.dll).
2.3. Виконати, із визначенням часу та ступеня стискання, архівування у формати
RAR та ZIP кожного набору даних при наступних ступенях стискання:
а) за замовченням;
б) максимальний.
2.4. Виконати, із визначенням часу, розархівування створених архівів.
2.5. Отримані результати представити у вигляді таблиць та діаграм.
2.6. Сформулювати висновки за результатами виконаних досліджень та
рекомендації по використанню форматів архівування RAR та ZIP стосовно
даних різних типів.
2.7. Оформити звіт, який повинен містити:
а) титульну сторінку;
б) теоретичну частину;
в) параметри лабораторного стенду (комп’ютера): модель процесора, тактова
частота процесора, обсяг оперативної пам’яті та її тип, параметри жорстких
дисків;
г) хід виконання (у відповідності із заданим порядком виконання),
проілюстрований скріншотами відповідних вікон WinRAR чи їх фрагментів.
д) таблиці та діаграми з результатами досліджень;
е) сформульовані висновки та рекомендації.
Теоретична частина
Алгоритм LZW
Алгоритм LZW є модифікацією LZ78. Алгоритм починає роботу зі
словника розміром 4К, що містить за адресами від 0 до 255 посилання на окремі
символи (таблиця ASCII+), а від 256 до 4095 - посилання на підрядки завдовжки
більше одного символу. У процесі кодування текст розбивається на підрядки, де
кожний новий підрядок є найдовшою фразою, що збігається, що вже
проглянуто, плюс один символ. Новий підрядок кодується індексом його
префікса (фрази словника) і символом, що порушив збіг, після чого нова фраза
заноситься у словник (таблицю рядків). При переповнюванні словника з нього
видаляється або найменш уживана фраза, або усі підрядки завдовжки більше
одного символу.1
LZW-декодер також, як і кодер, заносить нові фрази у словник кожного
разу, якщо знаходить у вхідному потоці новий код. Наприкінці декодування
декодер має такий самий словник фраз, що був накопичений кодером при
кодуванні.
При декодуванні за алгоритмом LZW потрібно дотримуватися такого
правила: словник поповнюється тільки після зчитування першого символу
фрази, що розкодовується із наступного за поточним коду.
Ступінь стиснення визначається в залежності від багатьох факторів. LZW-
стиснення виділяється серед інших, коли зустрічається з потоком даних, що
містить повторювані рядки будь-якої структури. З цієї причини він працює
досить ефективно, коли зустрічає англійський текст. Рівень стиснення може
досягати 50% і вище. Відповідно, стиснення відеоформі і знімків екранів
показує ще більші результати.
Труднощі при стисненні файлів даних трохи більші. Залежно від даних,
результат стиснення може бути як хорошим, так і не дуже задовільним. У
1
Алгоритм LZW. Стаття [Електронний ресурс] – Режим доступу
http://elkniga.info/book_156_glava_42_7.4%C2%A0_Algoritm_LZW.html
деяких випадках "стислий" файл може перевершувати за своїми розмірами
вихідний текст.
Параметри використовуючого пристрою
Процесор: 1x Intel Core i5-8250U Processor(Core i5-8250U)
Базова частота процесора: 1.6 GHz
Частота процесора, що використовувалась: 3.3 GHz
Оперативна память: 2x 4GB DDR4-2133
Жорсткий диск: SSD 256GB
Графічна відеокарта: NVIDIA MX150 2GB
Хід виконання завдання
1. Встановив пробну версію WinRAR, ознайомився в його функціоналом
на налаштуваннями по замовчуванню. Інформацію про встановлену версію
можна побачити на рис. 1.
Рис. 1. Інформація про встановлену версію WinRAR
За замовчуванням було встановлено роботу програми у восьми потоках та
виключено режим низького пріорітету.

Рис. 2. Демонстрація параметрів за замовчуванням.


2. Підготував файли різного типу та обсягу, які би заархівувалися не
менше ніж за 10 секунд.
Текстовий файл з розширення *.docx наповнив текстом з інших
документів, добавив картинки та відео, після чого стандартним інструментом
«Зберегти як…» конвертував в розширенням *.doc.
Для створення необхідних відеофайлів, я скачав відео з Youtube
тривалістю більше години та конвертував в задані розширення *.avi, *.mp4,
*.mkv. Файли з розширенням *.mp4, *.mkv займали обєм 213 МБ, а з
розширенням майже в два рази більше 422 МБ.
Для створення необхідного аудіофайла, я скачав відео з Youtube
музикального вмісту тривалістю майже три години в роширенні *.mp3.
Для архівування файлів динамічних бібліотек я здійснив пошук по диску
C (де встановлена ОС) файлів з розширенням *.dll та відсортував їх по об’єму
по порядку спадання. Вибрав 5 найбільш важких та помістив їх в директорію
пыд назвою dlls.

Рис. 3.
3.1 Виконав архівування для кожного типу файлів із визначенням
ступення та часу архівування. Результати архівування зображено на рис. 4 – 10.
Рис. 4. Результати архівування файлу з розширенням doc

Рис. 5. Результати архівування файлу з розширенням docx

Рис. 6. Результати архівування файлу з розширенням avi


Рис. 7. Результати архівування файлу з розширенням mp4

Рис. 8. Результати архівування файлу з розширенням mkv


Рис. 9. Результати архівування файлу з розширенням mp3

Рис. 10. Результати архівування набору файлів з розширенням dll


3.2. Провів аналогічні дії, але вже з найкращим(максимальним) методом
стискання. Параметри архівації для найкращого методу стискання зображено на
рис. 11. Результати вимірювань подані в таблиці 1.
.
Рис. 11. Параметри архівації для найкращого (максимального) режиму
стискання
3.3. Провів архівування файлів у формат ZIP для звичайного і найкращого
режиму стискання. Параметри архівації у формат ZIP для звичайного і
найкращого режиму стискання зображено на рис. 12.

Рис. 12. Параметри архівації у формат ZIP для звичайного і найкращого режиму
стискання
4. Виконав розархівування створених архівів та визначив час за який це
було виконано. Розархівування показало, що файли які мали значний ступінь
стискання розархівовуються довше ніж файли, ступінь стискання яких складав
99 %. Файли ступінь стискання яких складав 99% розархівовувалися за 1 сек. На
рис. 13 показано розархівування для файлів ступінь стискання яких був
значним.

Рис. 13. Розархівування архівів dlls.rar та avi.rar


5. Результати дослідження зображено в таблиці 1, 2, 3. До кожної з
таблиць розроблено гістограму.
Таблиця 1
Час архівування файлів (сек.)
* doc docx avi mp4 mkv mp3 dll
RAR(звич.) 29 31 24 13 16 12 32
RAR(найк. 29 34 34 15 16 12 53
)
ZIP(звич.) 11 11 17 13 13 5 10
ZIP(найк.) 20 21 21 15 15 6 12
Час архівування (сек.)
60

50

40

30

20

10

0
RAR(звич.) RAR(найк.) ZIP(звич.) ZIP(найк.)

doc docx avi mp4 mkv mp3 dll

Таблиця 2
Час розархівування файлів (сек.)
* doc docx avi mp4 mkv mp3 dll
RAR(звич.) 2 2 2 1 1 1 4
RAR(найк. 2 3 3 1 1 1 6
)
ZIP(звич.) 2 3 3 1 1 1 10
ZIP(найк.) 3 3 4 1 1 1 6

Час розархівування (сек.)


12

10

0
RAR(звич.) RAR(найк.) ZIP(звич.) ZIP(найк.)

doc docx avi mp4 mkv mp3 dll


Таблиця 3
Ступінь стискання файлів (%)
* doc docx avi mp4 mkv mp3 dll
RAR(звич.) 98 99 63 99 99 99 34
RAR(найк. 97 98 60 98 99 99 32
)
ZIP(звич.) 98 99 83 99 99 99 46
ZIP(найк.) 97 98 80 98 99 99 43

Ступінь стискання файлів (%)


doc docx avi mp4 mkv mp3 dll
99

99
99
99

99

99
99
99

99

99
99
99

99

99
99
99
98

98

98

98
83

83
63

63

46

46
34

34

R AR (з ви ч. ) R AR (н ай к. ) ZI P (з ви ч. ) ZI P (н ай к. )

Висновки
В результаті виконання лабораторної роботи я ознайомився та дослідив
алгоритми архівування. Провів порівняльний аналіз звичайного і найкращого
методу стискання для архівів типу RAR та ZIP, який показав, що найкращий
метод стискання показує кращий ступінь стискання, ніж звичайний, але для
нього необхідно більше часу. Для архівів типа ZIP різниця в часі між звичайним
і найкращим методом стисканням є більша ніж для RAR. Це пояснюється тим,
що для створення ZIP архіву по замовчуваню використовується розмір словника
32 КБ, а для RAR – 32 МБ. Але в щагальному архівація в формат ZIP
відбувається швидше.
На основі отриманих даних, я розробив рекомендації по використанню
форматів архівування RAR та ZIP стосовно даних різних типів:
 для швидкого стискання краще використовувати ZIP архів, але архіви будуть
більшого розміру ніж при RAR архіві
 для великих файлів краще обрати RAR архів з найкращим ступенем
стискання, оскільки він показав найкращі результати по зменшенні в об'ємі
оригінального файлу
 для великих файлів з розширенням для відеофайлів краще використовувати
найкраший метод стискання для RAR архіву
 для відеофайлів, які мають неповторювану інформацію можно використати
ZIP архів для швидкого упакування

You might also like