Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
информатика.........).docx
Скачиваний:
11
Добавлен:
11.04.2015
Размер:
112.53 Кб
Скачать
  1. Компью́терная програ́мма — последовательность инструкций, предназначенная для исполнения устройством управления вычислительной машины. Программа — один из компонентов программного обеспечения. В зависимости от контекста, рассматриваемый термин может относиться также и к исходным текстам программы. Компьютерные программы, как объект интеллектуальной собственности, относится к категории нематериальных активов.

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

Прикладной уровень

Служебный уровень

Системный уровень

Базовый уровень

Базовый уровень

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

Системный уровень

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

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

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

Служебный уровень

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

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

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

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

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

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

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

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

  1. 1. Классификация

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

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

Рис. 1. Классификация прикладного программного обеспечения

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

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

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

Свойства алгоритмов:

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

Каждый алгоритм строится в расчете на некоторого исполнителя. Для того чтобы исполнитель мог решить задачу по заданному алгоритму, необходимо, чтобы он был в состоянии понять и выполнить каждое действие, предписываемое командами алгоритма. Такое свойство алгоритмов называется определенностью (или точностью) алгоритма. (Например, в алгоритме указано, что надо взять 3—4 стакана муки. Какие стаканы, что значит 3—4, какой муки?)

Еще одно важное требование, предъявляемое к алгоритмам, - результативность (или конечность) алгоритма. Оно означает, что исполнение алгоритма должно закончиться за конечное число шагов.

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

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

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

Исполнителя характеризуют:

среда;

элементарные действия;

система команд;

отказы.

Среда (или обстановка) - это «место обитания» исполнителя.

Система команд. Каждый исполнитель может выполнять команды только из некоторого строго заданного списка-системы команд исполнителя. Для каждой команды должны быть заданы условия применимости (в каких состояниях среды может быть выполнена команда) и описаны результаты выполнения команды.

После вызова команды исполнитель совершает соответствующее элементарное действие.

Отказы исполнителя возникают, если команда вызывается при недопустимом для нее состоянии среды.

Исполнитель ничего не знает о цели алгоритма. Он выполняет все полученные команды, не задавая вопросов «почему» и «зачем».

  1. Обязательные свойства алгоритмов

1. Дискретность алгоритма-поочередное выполнение команд алгоритма за конечное число шагов приводящее к решению задачи.

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

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

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

2. Oпределенность (или точность) алгоритма - каждая команда алгоритма должна однозначно определять действие исполнителя.

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

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

4. Результативность (конечность) алгоритма - исполнение алгоритма должно закончиться за конечное число шагов.

Для записи алгоритмов используют самые разнообразные средства. Выбор средства определяется типом исполняемого алгоритма. Выделяют следующие основные способы записи алгоритмов:

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

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

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

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

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

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

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

Второй этап заключается в составлении алгоритма решения задачи по выбранной модели.

На третьем этапе алгоритм записывается на языке программирования и полученная программа вводится в ЭВМ. Далее проводится отладка программы, т.е. поиск и ошибок. Различают логические и семантические ошибки. Семантические ошибки возникают, когда программист неправильно записывает конструкции языка программирования. Семантические ошибки отыскать легче, т. к. современные трансляторы языков программирования способны их выявить. Логические ошибки возникают, когда инструкции записаны правильно, но последовательность их выполнения дает неверный результат.

Далее проводится тестирование, которое заключается в запуске программы с использованием контрольных примеров - тестов. Тесты выбирают таким образом, чтобы при работе с ними программа прошла все возможные ветви алгоритма, поскольку на каждом из них могут быть свои ошибки.

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

Общая схема решения задач с помощью ЭВМ выглядит так:

  1. Словесный способ

Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задаётся в про­извольном изложении на естественном языке.

Пример. Записать алгоритм нахождения наибольшего общего дели­теля (НОД) двух натуральных чисел (алгоритм Евклида).

Алгоритм может быть следующим:

1) Задать два числа.

2) Если числа равны, то взять любое из них в качестве ответа и остано­виться, в противном случае продолжить выполнение алгоритма.

3) Определить большее из чисел.

4) Заменить большее из чисел разностью большего и меньшего из чисел.

5) Повторить алгоритм с шага 2.

Описанный алгоритм применим к любым натуральным числам и дол­жен приводить к решению поставленной задачи.

Графический способ

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

Название

Блок-схема

Пояснение

Пуск-останов

  

Начало, конец алгоритма, вход и выход в подпрограмму

Процесс

 

Вычислительное действие или последовательность действий

Решение

 

Проверка условий

Модификация

 

Начало цикла

Предопределён­ный процесс

 

Вычисления по подпрограмме

Ввод-вывод

 

Ввод-вывод в общем виде

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

ЛВС представляет собой коммуникационную сеть, которая соединяет несколько устройств и служит средством для обмена информацией между этими устройствами.

Лока́льная вычисли́тельная сеть (ЛВС, локальная сеть, сленг. локалка; англ. Local Area Network, LAN) — компьютерная сеть, покрывающая обычно относительно небольшую территорию или небольшую группу зданий (дом, офис, фирму, институт). Также существуют локальные сети, узлы которых разнесены географически на расстояния более 12 500 км (космические станции и орбитальные центры). Несмотря на такие расстояния, подобные сети всё равно относят к локальным.

Компоненты компьютеров в составе ЛВС:

адаптеры;

кабели;

сетевые операционные системы.

Каналы сети ЛВС

Оконечное оборудование сети, такое как компьютер или ПЛК инициирует установление связи путем отправки сообщений. Коммуникационное оборудование, такое как модем, принимает, обрабатывает и передает сообщения. Таким образом, в ЛВС существует как минимум один отправитель сообщений и несколько получателей сообщений. Такая схема связи называется каналом. Различают симплекс, полудуплекс и дуплекс каналы.

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

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

В режиме полного дуплекса коммуникационное оборудование одновременно передает и получает данные. В настоящее время применяются в основном системы полного дуплекса.

Среда передачи ЛВС

Имеется три основных типа среды передачи в сетях ЛВС:

Витая пара.

Коаксиальные кабели.

Волоконно-оптические кабели.

Все эти типы кабелей используются для подключения различного оборудования к ЛВС. Из-за простоты монтажа, технического обслуживания, а также более низкой стоимости, экранированные и неэкранированные кабели (UTP/STP) являются наиболее распространенными. В электронной промышленности созданы различные стандарты для витой пары. Экранированная витая пара обладает большим иммунитетом к различным электромагнитным помехам, чем неэкранированная. Каждые две пары кабеля используются для одного канала передачи. Как правило, в производственных цехах более предпочтительно использовать экранированный кабель, где обычно присутствует электромагнитный шум. Наиболее часто по витой паре данные передаются со скоростью 16Мбс или 100Мбс. 16Мбс кабель имеет 3-4 скрутки на фут. 100Мбс кабель обычно имеет 3-4 скрутки на дюйм и может применяться для передачи данных на более значительные расстояния.

Коаксиальный кабель более дорогой, но он намного лучше защищен от помех, чем витая пара. В ЛВС используется три вида коаксиального кабеля в зависимости от типа передаваемого сигнала: основной (обычный), широкополосный и магистральный. В основном в сетях ЛВС используется 50 Ом кабель, а не обычный 75 Ом кабель. Обычный коаксиальный 50 Ом кабель используется исключительно для передачи цифровых сигналов. Заметим, что витая пара также используется в основном для передачи цифровых сигналов. В широкополосных и магистральных коаксиальных кабелях сигнал передается в аналоговом виде, поэтому модем перед отправкой сигнала преобразовывает его из цифрового в аналоговый. Это связано с тем, что аналоговые сигналы можно передавать на более значительные расстояния, чем цифровые, а также с тем, что аналоговый сигнал менее подвержен затуханию и воздействию шумов. По широкополосному коаксиальному кабелю часто передают сразу несколько частот. Заметим, что в широкополосные кабели часто используются для передачи телевизионных сигналов. Широкополосные кабели и необходимое для их работы оборудование значительно дороже.

Волоконно-оптические кабели могут нести сигнал со скоростью до 2Гбс и более на расстояние до 100 км и больше. Волоконно-оптические кабели наиболее защищены от электромагнитных помех, т.к. несут оптические сигналы. В волоконно-оптическом канале могут передаваться сразу несколько частот. Материальные затраты на монтаж, техническое обслуживание волоконно-оптических кабелей значительно выше, чем у витой пары или коаксиального кабеля.

В настоящее время из-за затрат для монтажа ЛВС наиболее распространен кабель на витой паре.

Топология ЛВС

Физическое расположение устройств в сети ЛВС называется топологией. Общеприняты топологии кольца, шины, дерева и звезды. В сетевой топологии сигнал движется по кольцу и копируется принимающей станцией. Затем сигнал поглощается передающей станцией. В шине сигнал также передается от станции к станции, копируется принимающей станцией, но поглощается конечной точкой шины (терминатором). Дерево схоже с шиной в своей топологии, но является более сложным, т.к. имеет разветвления, которые требуют более сложной логики. В звезде передача данных контролируется центральным узлом передачи.

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

Схема доступа к сети ЛВС

В сетях ЛВС обычно используется три вида схем доступа. Master-Slave, Token Ring и схема множественного доступа с контролем коллизий.

В схеме Master-Slave инициатором передачи всегда выступает главный ПЛК, который опрашивает остальные устройства из своего списка, чтоб определить какая станция передает данные, определяя одновременно, какая станция должна эти данные получить.

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

В схеме множественного доступа каждая станция одновременно прослушивает сеть и определяет не было ли одновременных посылок сообщений. В этом случае она прекращает передачу на определенное время, а затем продолжает. Схема CSMA/CD используется в сетях Ethernet, Fast Ethernet и Gigabit Ethernet.