Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_П.doc
Скачиваний:
3
Добавлен:
31.08.2019
Размер:
3.43 Mб
Скачать

2.4. Компьютерные вирусы

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

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

Пример. Одну из самых популярных антивирусных программ AIDSTESTавтор (Д. Лозинский) обновляет иногда дважды в неделю. Известная антивирусная программа AVPлаборатории Касперского содержит в своей базе данные о нескольких десятках тысяч вирусах, вылечиваемых программой.

Вирусы бывают следующих основных видов:

  • загрузочные – заражающие стартовые секторы дисков, где находится самая важная информация о структуре и файлах диска (служебные области диска, так называемые boot–сектора);

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

  • программные – заражающие исполняемые файлы (например, exe-файлы с непосредственно запускаемыми программами);

  • полиморфные – которые претерпевают изменения (мутации) от заражения к заражению, от носителя к носителю;

  • стелс-вирусы – маскирующиеся, незаметные (не определяющие себя ни размером, ни прямым действием);

  • макровирусы – заражающие документы и шаблоны текстовых редакторов, используемые при их создании;

  • многоцелевые вирусы.

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

Вирусы могут проникать в сеть, например:

  • с внешних носителей информации (из копируемых файлов);

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

  • через Интернет (из загружаемых файлов).

Существуют различные методы и пакеты программ для борьбы с вирусами (антивирусные пакеты).

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

3. Модели решения функциональных и вычислительных задач

3.1. Функции алгебры логики

Рассмотрим множество векторов X = {<x1... xn>}. Будем предполагать, что координаты этих векторов могут принимать значения 0 или 1. Таким образом множество X состоит из 2n векторов. Произведем отображение множества X в множество Y = {0, 1} [6].

Определение. Функцией алгебры логики называется функция, дающая однозначное отображение X в Y.

Определение. Если две функции алгебры логики f1(x1... xn) и

f2( x1... xn) принимают на всех наборах значений аргументов одинаковые значения, то их называют равными

Теорема 1. Число различных функций алгебры логики, зависящих от n аргументов конечно и равно 2n.

Приведем иллюстрацию сказанного на основе анализа таблицы:

x1, x2,..., xn

f(x1, x2,..., xn )

00...00

a1

00...01

a2

00...10

a3

...

...

11...11

a2n

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

Рассмотрим геометрическую интерпретацию области определения функции алгебры логики. Сопоставим наборам аргументов алгебры логики точки n - мерного пространства. Тогда множество 2n таких наборов определит множество вершин n - мерного единичного куба. Таким образом, множество вершин n - мерного единичного куба есть область определения функций алгебры логики. Пусть вершина А соответствует набору

( х1 = 1, х2 = 1, х3 = 1 ), а вершина B - набору ( х1 = 1, х2 = 1, х3 = 0 ).

Тогда графически это может быть представлено следующим рисунком:

X3

A

0 X2

B

X1

Рис. 3.1. Геометрическая интерпретация области определения функции алгебры логики

Рассмотрим основные функции, которые играют важную роль в построении функций алгебры логики и ее приложениях:

1. f = X.

2. f = X

3. f = 0.

4. f = 1.

5. f = X v Y.

6. f = X Y.

7. f = X Y.

8. f = X Y.

9. f = X Y.

10. f = X | Y.

11. f = X Y .

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

  • подстановка в функцию новой функции вместо аргументов;

  • переобозначение аргументов.

Определение. Функция, полученная из f1 ... fk путем применения возможно многократного указанных двух подходов называется суперпозицией функций f1 ... fk.

Пример. Представить в виде таблицы функцию

f (X1,X2 ) = { ( X1 X2 ) v (X1 X2 ) } = X1 | X2.

Решение.

X1

X2

X1 X2

X1 X2

f

0

0

1

0

1

0

1

0

1

1

1

0

0

1

1

1

1

0

0

0

Пример. Показать, что X1 X2 = X1 v X2 на основе построения и сравнения функций по таблицам истинности.

Решение.

X1

X2

X1 X2

X1

X1 v X2

0

0

1

1

1

0

1

1

1

1

1

0

0

0

0

1

1

1

0

1

Аналогично можно показать, что

X1 X2 = ( (X1 v X2) & (X1 v X2 ) ).

X Y = (X1 v X2) & (X1 v X2 ).

(X1 ) = X.

X1 & X2 = (X1 v X2).

X1 v X2 = (X1 & X2).

Рассмотрим свойства конъюнкции, дизъюнкции и отрицания.