7. Классификация программного обеспечения
Програ́ммное обеспе́чение - совокупность программ системы обработки информации и программных документов, необходимых для эксплуатации этих программ (ГОСТ 19781-90).
Также - совокупность программ, процедур и правил, а также документации, относящихся к функционированию системы обработки данных (СТ ИСО 2382/1-84).
Программное обеспечение является одним из видов обеспечения вычислительной системы, наряду с техническим (аппаратным), математическим, информационным, лингвистическим, организационным и методическим обеспечением.
В компьютерном сленге часто используется слово софт от английского слова software, которое в этом смысле впервые применил в статье в American Mathematical Monthly математик из Принстонского университета Джон Тьюки (англ. John W. Tukey) в 1958 году.
Программное обеспечение принято по назначению подразделять на системное, прикладное и инструментальное (инструментальные системы), а по способу распространения и использования на несвободное/закрытое, открытое и свободное. Свободное программное обеспечение может распространяться, устанавливаться и использоваться на любых компьютерах дома, в офисах, школах, вузах, а также коммерческих и государственных учреждениях без ограничений.
Системное ПО – это совокупность программ для обеспечения работы компьютера. Системное ПО подразделяется на базовое и сервисное. Системные программы предназначены для управления работой вычислительной системы, выполняют различные вспомогательные функции (копирования, выдачи справок, тестирования, форматирования и т. д).
Базовое ПО включает в себя:
операционные системы;
оболочки;
сетевые операционные системы.
Сервисное ПО включает в себя программы (утилиты):
диагностики;
антивирусные;
обслуживания носителей;
архивирования;
обслуживания сети.
Прикладное ПО – это комплекс программ для решения задач определённого класса конкретной предметной области. Прикладное ПО работает только при наличии системного ПО.
Прикладные программы называют приложениями. Они включает в себя:
текстовые процессоры;
табличные процессоры;
базы данных;
интегрированные пакеты;
системы иллюстративной и деловой графики (графические процессоры);
экспертные системы;
обучающие программы;
программы математических расчетов, моделирования и анализа;
игры;
коммуникационные программы.
Особую группу составляют системы программирования (инструментальные системы), которые являются частью системного ПО, но носят прикладной характер. Системы программирования – это совокупность программ для разработки, отладки и внедрения новых программных продуктов. Системы программирования обычно содержат:
трансляторы;
среду разработки программ;
библиотеки справочных программ (функций, процедур);
отладчики;
редакторы связей и др.
8. Информационно-поисковые системы и их классификация
ИПС (информационно-поисковая система) - это система, обеспечивающая поиск и отбор необходимых данных в специальной базе с описаниями источников информации (индексе) на основе информационно-поискового языка и соответствующих правил поиска.
Главной задачей любой ИПС является поиск информации релевантной информационным потребностям пользователя. Очень важно в результате проведенного поиска ничего не потерять, то есть найти все документы, относящиеся к запросу, и не найти ничего лишнего. Поэтому вводится качественная характеристика процедуры поиска - релевантность.
Релевантность - это соответствие результатов поиска сформулированному запросу.
Каждая ИПС предназначена для решения определенного класса задач, для которых характерен свой набор объектов и их признаков. ИПС бывают двух типов:
1. Документографические. В документографических ИПС все хранимые документы индексируются специальным образом, т. е. каждому документу присваивается индивидуальный код, составляющий поисковый образ. Поиск идет не по самим документам, а по их поисковым образам. Именно так ищут книги в больших библиотеках. Сначала отыскивают карточку в каталоге, а затем по номеру, указанному на ней, отыскивается и сама книга.
2. Фактографические. В фактографичеких ИПС хранятся не документы, а факты, относящиеся к какой-либо предметной области. Поиск осуществляется по образцу факта.
Большинство поисковых систем ищут информацию на сайтах Всемирной паутины, но существуют также системы, способные искать файлы на ftp-серверах, товары в интернет-магазинах, а также информацию в группах новостей Usenet.
Популярные поисковые системы
Всеязычные:
Google (34,4 % Русскоязычного сегмента [5])
Bing (0,9 % Русскоязычного сегмента)
Yahoo! (0,2 % Рунета) и принадлежащие этой компании поисковые машины:
Inktomi
AltaVista
Alltheweb
Англоязычные и международные:
AskJeeves (механизм Teoma)
Русскоязычные - большинство «русскоязычных» поисковых систем индексируют и ищут тексты на многих языках - украинском, белорусском, английском и др. Отличаются же они от «всеязычных» систем, индексирующих все документы подряд, тем, что в основном индексируют ресурсы, расположенные в доменных зонах, где доминирует русский язык или другими способами ограничивают своих роботов русскоязычными сайтами.
Яндекс (46,3 % Рунета)
Mail.ru (8,9 % Рунета)
Rambler (3,3 % Рунета)
Nigma (0,5 % Рунета)
Генон (0,1 % Рунета)
Gogo.ru (<0,1 % Рунета)
Aport (<0,1 % Рунета)
9. Компьютерные вирусы и их классификация
Компьютерный вирус - это специальная программа, Способная самопроизвольно присоединяться к другим программам и при запуске последних выполнять различные нежелательные действия: порчу файлов и каталогов; искажение результатов вычислений; засорение или стирание памяти; создание помех в работе компьютера. Наличие вирусов проявляется в разных ситуациях.
Некоторые программы перестают работать или начинают работать некорректно.
На экран выводятся посторонние сообщения, сигналы и другие эффекты.
Работа компьютера существенно замедляется.
Структура некоторых файлов оказывается испорченной.
Имеются несколько признаков классификации существующих вирусов:
по среде обитания;
по области поражения;
по особенности алгоритма;
по способу заражения;
по деструктивным возможностям.
По среде обитания различают файловые, загрузочные, макро- и сетевые вирусы.
Файловые вирусы - наиболее распространенный тип вирусов. Эти вирусы внедряются в выполняемые файлы, создают файлы-спутники (companion-вирусы) или используют особенности организации файловой системы (link-вирусы).
Загрузочные вирусы записывают себя в загрузочный сектор диска или в сектор системного загрузчика жесткого диска. Начинают работу при загрузке компьютера и обычно становятся резидентными.
Макровирусы заражают файлы широко используемых пакетов обработки данных. Эти вирусы представляют собой программы, написанные на встроенных в эти пакеты языках программирования. Наибольшее распространение получили макровирусы для приложений Microsoft Office.
Сетевые вирусы используют для своего распространения протоколы или команды компьютерных сетей и электронной почты. Основным принципом работы сетевого вируса является возможность самостоятельно передать свой код на удаленный сервер или рабочую станцию. Полноценные компьютерные вирусы при этом обладают возможностью запустить на удаленном компьютере свой код на выполнение.
На практике существуют разнообразные сочетания вирусов - например, файлово-загрузочные вирусы, заражающие как файлы, так и загрузочные секторы дисков, или сетевые макровирусы, которые заражают редактируемые документы и рассылают свои копии по электронной почте.
Как правило, каждый вирус заражает файлы одной или нескольких ОС. Многие загрузочные вирусы также ориентированы на конкретные форматы расположения системных данных в загрузочных секторах дисков. По особенностям алгоритма выделяют резидентные; вирусы, стелс-вирусы, полиморфные и др. Резидентные вирусы способны оставлять свои копии в ОП, перехватывать обработку событий (например, обращение к файлам или дискам) и вызывать при этом процедуры заражения объектов (файлов или секторов). Эти вирусы активны в памяти не только в момент работы зараженной программы, но и после. Резидентные копии таких вирусов жизнеспособны до перезагрузки ОС, даже если на диске уничтожены все зараженные файлы. Если резидентный вирус является также загрузочным и активизируется при загрузке ОС, то даже форматирование диска при наличии в памяти этого вируса его не удаляет.
К разновидности резидентных вирусов следует отнести также макровирусы, поскольку они постоянно присутствуют в памяти компьютера во время работы зараженного редактора.
Стелс-алгоритмы позволяют вирусам полностью или частично скрыть свое присутствие. Наиболее распространенным стелс-алгоритмом является перехват запросов ОС на чтение/запись зараженных объектов. Стелс-вирусы при этом либо временно лечат эти объекты, либо подставляют вместо себя незараженные участки информации. Частично к стелс-вирусам относят небольшую группу макровирусов, хранящих свой основной код не в макросах, а в других областях документа - в его переменных или в Auto-text.
Полиморфность (самошифрование) используется для усложнения процедуры обнаружения вируса. Полиморфные вирусы - это трудно выявляемые вирусы, не имеющие постоянного участка кода. В общем случае два образца одного и того же вируса не имеют совпадений. Это достигается шифрованием основного тела вируса и модификациями программы-расшифровщика.
При создании вирусов часто используются нестандартные приемы. Их применение должно максимально затруднить обнаружение и удаление вируса.
По способу заражения различают троянские программы, утилиты скрытого администрирования, Intended-вирусы и т. д.