Защита программного продукта. Цели защиты программного обеспечения




Защита ПП преследует следующие цели:

1. ограничение несанкционированного доступа к прошраммам или их преднамеренного разрушения или хищения

2. исключение несанкционированного копировния (тиражирования) программ

ПП и БД должны быть защищены по нескольким направлениям от взаимодействия:

1. человека – хищение машинных носителей и документации ПП, нарушение работоспособности ПП и др.

2. аппаратура, т.е. подключение к компьютерных аппаратных средств для считывания программных данных или их физического разрушения

3. специальных программ - приведение ПП и БД в неработоспособное состояние(вирусное заражение), несанкционированное копирование программ и БД.

Самый простой и доступный способ способ защиты ПП и БД-этоограничение доступа. Контроль доступа к ПП и БД строится путем:

1. парольной защите программ при их запуске

2. использование ключевого диска для запуска программ

3. ограничение программ или данных доступа пользователем.

 

13. Программное обеспечение. Классификация ПО

Под программным обеспечением понимается совокупность программ, выполняемых вычислительной системой.

К программному обеспечению относится также вся область деятельности по проектированию и разработке ПО.

- Технология проектирования программ;

- Методы тестирования программ;

- Методы доказательства правильности прогр.;

- Анализ качества работы программ;

- Документирование программ;

- Разработка и использование программных средств, облегчающих процесс проектирования программного обеспечения, и многое другое.

Программное обеспечение – неотъемлемая часть компьютерной системы. Оно является логическим продолжением технических средств.

Классификация ПО

Программы, работающие на компьютере, можно разделить на три категории:

- прикладные программы, непосредственно обеспечивающие выполнение необходимых пользователям работ: редактирование текстов, рисование картинок, обработка информационных массивов и т.д.;

- системные программы, выполняющие различные вспомогательные функции, например создание копии используемой информации, выдачу справочной информации о компьютера, проверку работоспособности устройств компьютера и т.д.;

- Вспомогательное ПО (инструментальные системы и утилиты)

 

14. Служебный уровень. Классификация служебных программных средств

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

Классификация служебных программных средств:

1. Диспетчеры файлов

-копирование

-перемещение

-уничтожение объектов

-создание каталогов

2. средства сжатия данных

3. средства диагностики

4. программы инсталляции

5. средства коммуникации

6. средства компьютерной безопасности

 

15. Прикладной уровень. Классификация прикладного программного обеспечения

Прикладное ПО. Для IBM PC разработаны и используются сотни тысяч различных прикладных программ для различных применений. Наиболее широко применяются программы:

q подготовки текстов (документов) на компьютере – редакторы текстов;

q подготовки документов типографского качества – издательские системы;

q обработки табличных данных – табличные процессоры;

q обработки массивов информации – системы управления базами данных.

Прикладная программа – это любая конкретная программа, способствующая решению какой-либо задачи в пределах данной проблемной области.

1. Текстовые редакторы. Основные функции - это ввод и редактирование текстовых данных. Для операций ввода, вывода и хранения данных текстовые редакторы используют системное программное обеспечение. С этого класса прикладных программ начинают знакомство с программным обеспечением и на нем приобретают первые привычки работы с компьютером.

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

3. Графические редакторы. Широкий класс программ, предназначенных для создания и обработки графических изображений. Различают три категории:

· растровые редакторы;

· векторные редакторы;

· 3-D редакторы (трехмерная графика).

4. Системы управления базами данных (СУБД). Базой данных называют большие массивы данных, организованные в табличные структуры. Основные функции СУБД:

· создание пустой структуры базы данных;

· наличие средств ее заполнения или импорта данных из таблиц другой базы;

· возможность доступа к данных, наличие средств поиска и фильтраци.

В связи с распространением сетевых технологий, от современных СУБД требуется возможность работы с отдаленными и распределенными ресурсами, которые находятся на серверах Интернета.

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

Широкое применение находят в бухгалтерском учете, анализе финансовых и торговых рынков, средствах обработки результатов экспериментов, то есть в автоматизации регулярно повторяемых вычислений больших объемов числовых данных.

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

Особенность CAD-систем состоит в автоматическом обеспечении на всех этапах проектирования технических условий, норм и правил. САПР являются необходимым компонентом для гибких производственных систем (ГВС) и автоматизированных систем управления технологическими процессами (АСУ ТП).

7. Настольные издательские системы. Автоматизируют процесс верстки полиграфических изданий. Издательские системы отличаются расширенными средствами управления взаимодействия текста с параметрами страницы и графическими объектами, но имеют более слабые возможности по автоматизации ввода и редактирования текста. Их целесообразно применять к документам, которые предварительно обработаны в текстовых процессорах и графических редакторах.

8. Редакторы HTML (Web-редакторы). Особый класс редакторов, объединяющих в себе возможности текстовых и графических редакторов. Предназначены для создания и редактирования Web-страниц Интернета. Программы этого класса можно использовать при подготовке электронных документов и мультимедийных изданий.

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

10. Системы автоматизированного перевода. Различают электронные словари и программы перевода языка.

Электронные словари - это средства для перевода отдельных слов в документе. Используются профессиональными переводчиками, которые самостоятельно переводят текст.

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

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

· при абсолютном незнании иностранного языка;

· при необходимости быстрого ознакомления с документом;

· для перевода на иностранный язык;

· для создания черновика, который потом будет подправлен полноценным переводом.

11. Интегрированные системы делопроизводства. Средства для автоматизации рабочего места руководителя. В частности, это функции создания, редактирования и форматирования документов, централизация функций электронной почты, факсимильной и телефонной связи, диспетчеризация и мониторинг документооборота предприятия, координация работы подразделов, оптимизация административно-хозяйственной деятельности и поставка оперативной и справочной информации.

12. Бухгалтерские системы. Имеют функции текстовых, табличных редакторов и СУБД. Предназначены для автоматизации подготовки начальных бухгалтерских документов предприятия и их учета, регулярных отчетов по итогам производственной, хозяйственной и финансовой деятельности в форме, приемлемой для налоговых органов, внебюджетных фондов и органов статистического учета.

13. Финансовые аналитические системы. Используют в банковских и биржевых структурах. Разрешают контролировать и прогнозировать ситуацию на финансовых, торговых рынках и рынках сырья, выполнять анализ текущих событий, готовить отчеты.

14. Экспертные системы. Предназначены для анализа данных, содержащихся в базах знаний и выдачи результатов, при запросе пользователя. Такие системы используются, когда для принятия решения нужны широкие специальные знания. Используются в медицине, фармакологии, химии, юриспруденции. С использованием экспертных систем связана область науки, которая носит название инженерии знаний.

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

15. Геоинформационные системы (ГИС). Предназначены для автоматизации картографических и геодезических работ на основе информации, полученной топографическим или аэрографическими методами.

16. Системы видеомонтажа. Предназначены для цифровой обработки видеоматериалов, монтажа, создания видеоэффектов, исправления дефектов, добавления звука, титров и субтитров. Отдельные категории представляют учебные, справочные и развлекательные системы и программы. Характерной особенностью являются повышенные требования к мультимедийной составляющей.

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

 

16. Компьютерная графика. Классификация графики (растровая, векторная, фрактальная).

Графические редакторы. Широкий класс программ, предназначенных для создания и обработки графических изображений. Различают три категории:

· растровые редакторы;

· векторные редакторы;

· 3-D редакторы (трехмерная графика).

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

Векторные редакторы отличаются способом представления данных изображения. Объектом является не точка, а линия. Каждая линия рассматривается, как математическая кривая ІІІ порядка и представлена формулой. Такое представление компактнее, чем растровое, данные занимают меньше места, но построение объекта сопровождается пересчетом параметров кривой в координаты экранного изображения, и соответственно, требует более мощных вычислительных систем. Широко применяются в рекламе, оформлении обложек полиграфических изданий.

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

 

17 Служебные программы. Программа архивирования данных

Классификация служебных программных средств

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

Процесс сжатия файлов называется архивированием, процесс восстановления сжатых файлов – разархивированием.

Современные архиваторы отличаются скоростью работы, степенью сжатия и использования алгоритмами.

 

 

18. Служебные программы. Дефрагментация диска

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

К дефрагментации жёсткого диска пользователь обращается по необходимости: если файлы пишутся на чистый жёсткий диск, то они записываются на него подряд. Однако невозможно писать файлы только последовательно, т.к. свободное место на диске быстро исчерпывается. Но при удалении файлов в сплошной структуре записей на диске образуются свободные участки. Тогда файл будет записан на диск в виде нескольких фрагментов, называемых кластерами (величиной, кратной сегменту и зависящей от объёма логического диска).

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

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

Программа Дефрагментация диска выполняет две функции:

дефрагментирует файлы. Выше говорилось, что размещение файлов на винчестере происходит на свободных участках фрагментами. Свободные участки могут оказаться как угодно далеко от предыдущих в пределах дискового пространства. Программа перезаписывает файл в соседние кластеры, а каталоги перезаписывает в начало диска, что сокращает время обмена информацией программ с жёстким диском;

всё свободное пространство перемещает ближе к центру диска на внутренние дорожки, которые находятся дальше от считывающей головки.

 

19. Табличный процессор Excel. Назначение и область применения табличных процессоров. Типы данных в Excel. Формулы и функции. Абсолютные, относительные и смешанные адреса ячеек.

Электронными таблицами (табличными процессорами) называются пакеты прикладных программ, предназначенные для проведения расчетов на компьютере в табличной форме.

При использовании электронной таблицы экран компьютера представляется большой таблицей, состоящей из ячеек, организованных прямоугольной координатной сеткой. Колонки обозначены буквами (A...Z, AA...AZ, и т.п.), а ряды - числами (1...65536).

Адрес ячейки определяется ее местоположением в таблице. Ячейка задается своими координатами, в которых на первом месте стоит буква, обозначающая колонку, а на втором - число, обозначающее ряд. Например, А1 - ячейка в левом верхнем углу, D5 - ячейка на пересечении 4-го столбца и 5-й строки.

Ячейка, в которую в данный момент вводятся данные, называется активной. Она маркируется табличным курсором (выделяется цветом). В каждый момент времени активной может быть только одна ячейка, она всегда выводится на индикацию.

 

20. Системы программирования. Транслятор, компилятор, интерпретатор

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

Язык программирования служит двум связанным между собой целям: он дает программисту аппарат для задания действий, которые должны быть выполнены, и формирует концепции, которыми пользуется программист, размышляя о том, что делать.

процесс преобразования операторов исходного языка программирования в машинные коды микропроцессора называется трансляцией исходного текста. В настоящее время ручная трансляция программ практически не используется. Трансляция производится специальными программами-трансляторами.

Существует два больших класса программ-трансляторов: компиляторы и интерпретаторы. При использовании компиляторов весь исходный текст программы преобразуется в машинные коды, и именно эти коды записываются в память микропроцессора. При использовании интерпретатора в память микропроцессора записывается исходный текст программы, а трансляция производится при считывании из памяти программ очередного оператора. Естественно, что быстродействие интерпретаторов намного ниже по сравнению с компиляторами, т.к. при использовании оператора в цикле он транслируется многократно. Применение интерпретатора может обеспечить выигрыш только в случае его разработки для языка программирования “высокого” уровня. В этом случае может быть сэкономлена внутренняя память программ, а также облегчен процесс отладки программ (при применении языка программирования BASIC) или облегчен перенос программ с одного типа процессора на другой (при применении языка программирования JAVA).При программировании на языке программирования ASSEMBLER применение интерпретатора приводит к проигрышу по всем параметрам, поэтому для языков программирования низкого уровня применяются только программы–компиляторы.Для программирования микроконтроллеров как на языке программирования “низкого” уровня, так и на языке программирования “высокого” уровня используются только компиляторы, поэтому рассмотрим подробнее виды этих трансляторов.

 

21. Уровни языков программирования. Поколения языков программирования.

Языки программирования для микроконтроллеров

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

Сами языки программирования в свою очередь делятся на две группы:

1. языки программирования "высокого" уровня

2. языки программирования "низкого" уровня.

К языкам программирования "низкого" уровня относятся языки программирования в которых каждому оператору соответствует не более одной машинной команды. Набор машинных команд каждого конкретного процессора обязательно входит в состав такого языка программирования. Языки программирования низкого уровня в настоящее время называются ассемблерами (старое название автокоды). Для каждого процессора существует своя группа ассемблеров. Ассемблеры для одного и того же процессора различаются между собой дополнительными возможностями, облегчающими программирование.

 

22. Языки программирования высокого уровня. Примеры ЯП

Языки программирования "высокого" уровня позволяют заменять один оператор несколькими машинными командами. Это позволяет увеличивать производительность труда программистов. Кроме того, языки "высокого" уровня позволяют писать программы, которые могут выполняться на различных микропроцессорах. (Естественно, что при этом необходимо использовать программы - трансляторы для соответствующего процессора.) В настоящее время наиболее распространены такие языки программирования высокого уровня как С и PLMО преимуществах и недостатках языков высокого и низкого уровней говорилось достаточно много. Выбор языка программирования зависит от состава аппаратуры, для которой пишется программа, а также от требующегося быстродействия всего программно - аппаратного комплекса в целом.В тех случаях, когда объём ОЗУ и ПЗУ мал (в районе нескольких килобайт) альтернативы ассемблеру нет. Именно эти языки программирования позволяют получать самый короткий и самый быстродействующий код программы (при прочих равных условиях, т.к. испортить можно всё!).Языки программирования высокого уровня позволяют значительно сократить время создания программы, но при этом увеличивается размер программы, поэтому для выбора такого языка программирования для микропроцессорных систем необходимо иметь достаточно большой объём памяти программ (несколько десятков килобайт). Увеличение объёма программы связано с несколькими факторами:

1. Язык программирования рассчитывается на все случаи жизни, поэтому в большинстве случаев человек мог бы написать программу короче (исключив не нужные в данном конкретном случае проверки или защиты).

2. Программист не видит к чему приводит использование тех или других операторов языка программирования, поэтому может выбирать операторы, не оптимальные как с точки зрения длины машинного кода программы, так и с точки зрения быстродействия программы.

3. Программист не использует подпрограммы там, где они могли бы сократить объём программы, так как на языке программирования высокого уровня это всего один или несколько операторов.

Первый из этих пунктов постепенно утрачивает своё значение с появлением всё более совершенных трансляторов. Третий пункт тоже решается тем же путём при применении различных видов оптимизаторов, входящих в состав компилятора. Однако в большинстве случаев оптимизатор не может определить одинаковые действия, если они отличаются хотя бы одной командой. Кроме того, оптимизатор работает только в пределах одного модуля

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-08-20 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: