Основные алгоритмические структуры Алгоритм может быть реализован в виде комбинации трех базовых алгоритмических конструкций: линейной, разветвленной, циклической.
Алгоритм линейной структуры— алгоритм, в котором предписываемые действия выполняются последовательно: Оператор1 — Оператор2 — ... — Операторе. Такой порядок выполнения действий называется естественным.
Алгоритм разветвленной структуры— алгоритм, в котором предусмотрено разветвление выполняемой последовательности действий в зависимости от результата проверки какого-то условия. Условие — это некоторое логическое выражение. Если условие (логическое выражение) принимает значение «истина», то выполняется Оператор 1, в противном случае — значение «ложь» — выполняется Оператор2. Оператор1 и Оператор2 могут представлять собой группу операторов, а также могут быть условными операторами. В случае отсутствия Оператора2 получаем конструкцию с неполным ветвлением.
Алгоритм циклической структуры(цикл с повторением) — алгоритм, в котором предусмотрено неоднократное выполнение одной и той же последовательности действий. Эту последовательность действий называют телом цикла.
Если количество повторений известно, то используют цикл со счетчиком, иначе — цикл с предварительной или последующей проверкой условия повторения.
Циклическую структуру реализуют операторы трех типов.
Оператор FOR...DO действует следующим образом. Тело цикла выполняется для каждого значения параметра цикла / от его начального Ml до конечного значения М2 включительно. J, Ml, M2 — чаще всего переменные целого типа. Шаг изменения переменной цикла / равен +1 или -1.
Оператор WHILE...DO действует следующим образом. Каждый раз предварительно проверяется значение логического выражения. Пока оно истинно, выполняется тело цикла. Как только оно становится ложным, происходит выход за пределы цикла. Если с самого начала значение логического выражения является ложным, то тело цикла не выполняется ни разу.
Оператор REPEAT...UNTIL действует следующим образом. Тело цикла выполняется, пока значение логического выражения ложно. Тело цикла выполняется как минимум один раз.
Все алгоритмические конструкции имеют общее свойство: один вход и один выход. Допускается неограниченное соединение структур и их вложение друг в друга, что позволяет проектировать сложные алгоритмы.
Специализированное программное обеспечение для защиты программ и данных. Компьютерные вирусы и антивирусные программы.
В современном мире значительная часть деятельности человека в самых разных отраслях связана с автоматизированной обработкой данных. Это делает подавляющее большинство производственных, финансовых, обслуживающих и административных процессов зависимыми от надежного функционирования информационных систем и придает весьма высокую стоимость данным, которые в них обрабатываются.
Защита этих данных как от случайного повреждения, так и от злонамеренных действий — цель целой отрасли в области разработки программных и аппаратных средств, отрасли обеспечения информационной безопасности.
При обеспечении информационной безопасности ее рассматривают как процесс сохранения трех аспектов безопасности информации: целостности (логической непротиворечивости, соответствия выполняемым задачам обработки), доступности (возможности проведения всех необходимых операций с обрабатываемыми данными) и конфиденциальности (политики распространения и использования данных).
Наибольшее значение меры по обеспечению информационной безопасности имеют при работе в общедоступных телекоммуникационных сетях и самом крупном их объединении — Интернете.
Для обеспечения безопасности информации при персональной работе применяют несколько видов программного обеспечения. Каждый из этих видов позволяет организовать защиту от реализации некоторых угроз.
Наиболее распространены:
1. Антивирусные программы — средства выявления и устранения вредоносного программного обеспечения.
2. Брандмауэры — программы, реализующие политику взаимодействия с внешними сетями и контролирующие ее исполнение.
3. Средства разграничения доступа к информации на основе некоторых специальных данных (учетных записей пользователей, паролей на доступ к информации, ключей шифрования).
Компьютерные вирусы— это программы или фрагменты программного кода, которые, после запуска, могут вопреки воле пользователя выполнять различные операции на этом компьютере — создавать или удалять объекты, модифицировать файлы данных или программные файлы, осуществлять действия по собственному распространению по локальным вычислительным сетям или по сети Интернет. Такая модификация программных файлов, файлов данных или загрузочных секторов дисков, при которой последние сами становятся носителями вирусного кода и в свою очередь могут осуществлять вышеперечисленные операции, называется заражением (инфицированием).
Существует большое количество вирусов, классифицируемых по различным критериям. Для борьбы с подавляющим большинством вирусов применяются различные антивирусные программы.
Наиболее распространены:
1. Программы-сканеры (полифаги).Эти программы после запуска анализируют файлы на диске на предмет обнаружения программного кода вирусных программ. При их обнаружении полифаги принимают меры к удалению вредоносного кода, его блокированию или удалению всей вредоносной программы. Корректность и эффективность работы такой программы зависят от ее своевременного обновления (программы обнаруживают и удаляют в основном известные вирусы и их модификации) и настройки параметров сканирования и удаления. Не обеспечивают мониторинга в реальном времени.
2. Программы-мониторы.Проверяют файлы запускаемые, открываемые или модифицируемые во время работы системы. Способ проверки сходен с принципом работы полифагов, зачастую они используют общие базы данных о вирусах и механизмы их удаления. Позволяют принимать меры более оперативно, но не выявляют вирусы уже имеющиеся на диске (например, пропущенные устаревшей версией монитора до обновления). Дополняют полифаги.
3. Программы-фильтры.Эти программы проверяют поток данных, принимаемых системой по определенному протоколу (электронной почты, Web-страниц и пр.) Позволяют защитить компьютер от получения вредоносных программ из сети.
4. Программы-детекторынежелательного программного обеспечения (ПО). С многими свободно распространяемыми программами или свободно доступными WEB-страницами связаны формально не вредоносные программы, которые тем не менее могут затруднять работу пользователя, использовать его компьютер для нежелательных операций или разглашать личные данные пользователей. Значительная часть таких программ выявляется антивирусами-полифагами, но иногда это не программы, а настройки уже имеющегося ПО. В таких ситуациях антивирусы бесполезны. Выявляют такие настройки и устраняют их программы-детекторы (Anti-SpyWare).
Все эти программы не могут полноценно противостоять распространяющимся с помощью уязвимостей в сетевом программном обеспечении вирусам-червям. Для защиты от таких программ необходимо своевременно обновлять уже установленное ПО (обновлениями, выпущенными производителями), а также применять программы контроля работы с сетями — брандмауэры.
Таким образом, защита — комплексная задача, требующая грамотного применения набора взаимодействующих программ, а также своевременного их обновления.
|