Вопрос №1. "Понятие системы. Примеры системы. Свойства сложных систем".
Определение категории система.
Система – целенаправленное множество взаимосвязанных элементов любой природы.
Система – это объект, который определяется множествами элементов, преобразований, правил образования последовательностей элементов.
Система – это объект, состоящий из элементов, свойства которых не сводятся к свойству самого объекта.
Система – это объект, обладающий следующими свойствами:
целостность и декомпозируемость (чёткое определение целостности образования элементов и их чёткое разделение);
наличие существенно устойчивых взаимоотношений элементов;
наличие определённой организации;
наличие таких качеств, которые присущи только системе в целом, но несвойственны ни одному из её элементов.
Под сложной динамической системой следует понимать развивающиеся во времени и в пространстве целостные объекты, состоящие из большого числа элементов и связей и обладающие свойствами, которые отсутствуют у элементов и связей, их образующих.
Выделение и построение любой системы осуществляется этапами:
Постановка цели
Декомпозиция цели на подцели
Определение функций, обеспечивающих достижение цели
Синтез структуры, обеспечивающий выполнение функций.
Цели возникают, когда существует так называемая проблемная ситуация.
Проблемная ситуация – ситуация, которую нельзя разрешить имеющимися средствами.
Цель – состояние, к которому направлена тенденция движения объекта.
Среда – совокупность всех систем, кроме той, которая реализует заданную цель. Ни одна система не является абсолютно замкнутой. Взаимодействие системы со средой реализуется через внешние связи.
Связи могут быть входными и выходными. Они подразделяются на:
информационные
ресурсные
Системы бывают:
социальные простые
биологические сложные
механические вероятностные
химические детерминированные
экологические стохастические
Структура системы представляет собой устойчивую упорядоченность элементов системы и их связей в пространстве и во времени. Структура может быть материальной и формальной.
Формальная структура – совокупность функциональных элементов и их отношений, необходимых и достаточных для достижения системой заданных целей.
Материальная структура – реальное наполнение формальной структуры.
Типы структур систем:
последовательный или цепочечный;
циклически замкнутая;
структура типа “колесо”;
“звезда”;
многосвязная структура;
матричная структура.
Вопрос №2. "Системный анализ. Определение и этапы".
Системный анализ может рассматриваться как методологическая концепция построения сложных систем. Под системным анализом будем понимать реализацию следующих этапов исследования сложной системы:
Построение общих принципов поведения сложной системы;
Формирование совокупности методов анализа;
Решение проблемы сложности и неопределённости;
Определение предельных характеристик системы;
Автоматизация исследований.
В основу понятийного аппарата системного анализа положены следующие категории: система, подсистема, элемент, структура, среда, состояние, цель, композиция, декомпозиция, обратная связь.
Алгоритм системного анализа включает в себя 3 макроэлемента:
Постановка проблемы:
Постановка задачи;
Определение объекта исследования;
Формирование целей;
Задание критериев и ограничений;
Разделение системы и внешней среды:
2.1. Определение границ исследования системы;
Первичная структуризация системы;
Подразделение общей системы на систему и внешнюю среду;
Выделение составных частей среды;
Декомпозиция внешних воздействий на элементарные воздействия;
Разработка математической модели:
Формальное описание
Параметризация модели
Установление зависимости между параметрами
Декомпозиция модели на составные части
Уточнение первичной структуры
Исследование модели
Вопрос №3. "Принципы создания автоматизированных систем управления".
Технология создания автоматизированной системы. Основные понятия.
Автоматизированной системой, согласно нормативным документам, является система человек-машина, обеспечивающая эффективное функционирование объекта, в которой сбор и переработка информации необходимы для реализации функций управления, осуществляется с применением вычислительной техники и средств автоматизации.
При создании Автоматизированной системы серьёзное внимание уделяется так называемому объекту управления.
Под объектом управления понимается совокупность технологического оборудования и реализуемого на нём по соответствующим регламентам процесса производства. Кроме того, в объект управления входят организационные, экономические, финансовые процессы. К технологическому оборудованию отнесём:
технологические агрегаты;
установки;
группы станков, реализующих самостоятельный процесс;
отдельные участки и весь производственный процесс промышленного предприятия.
Совокупность автоматизированной системы и объекта управления будем называть автоматизированным комплексом.
Определение АС, которое мы дали, указывает на наличие в составе системы:
Современных средств сбора и обработки информации;
Человека как субъекта труда, принимающего участие в оценке выработки решений по управлению;
Реализация в системе процесса обработки технологической и технико-экономической информации;
Цели функционирования системы, заключающиеся в общем смысле в оптимизации работы объекта по заданному критерию управления.
Критерием управления могут являться технико-экономические или технологические показатели.
АС является системой управления объектом в том, и только в том случае, если она реализует управление в темпе протекающих на объекте процессов и если в выработке и реализации управляющих решений участвует вычислительная техника, специальные технические средства и человек-оператор.
В состав системы входят следующие базовые элементы:
техническое обеспечение, которое включает в себя:
комплекс средств вычислительной техники (ЭВМ верхнего уровня, ЭВМ нижнего уровня, рабочее место оператора, каналы связи и запасные элементы и приборы);
специальный комплекс технических средств (локальные средства регулирования, средства получения информации о состоянии объекта управления, исполнительные устройства, датчики и устройства контроля и наладки технических средств);
программное обеспечение, включающее в себя:
общее программное обеспечение включает операционные системы, локальные и глобальные сети и комплексы программ технического обслуживания специальных вычислительных средств;
специальное программное обеспечение включает так называемые организующие программы и программы, реализующие алгоритмы контроля и управления;
Информационное обеспечение включает внутримашинную и внемашинную информацию.
Внемашинная информация – это система классификации кодирования и все исходные данные.
Внутримашинная информация – это информационная база и информационные потоки.
Организационное обеспечение включает инструктивно-методические материалы и оперативно-обслуживающий персонал.
А также:
Математическое обеспечение;
Лингвистическое обеспечение;
Правовое обеспечение.
Функции системы:
При создании системы после определения проблемной ситуации в первую очередь определяются конкретные цели функционирования системы. Такими целями могут быть:
экономия топлива, сырья, материалов и других производственных ресурсов;
обеспечение безопасности функционирования объекта;
повышение качества выходного продукта или обеспечение заданных значений параметров выходных изделий;
снижение затрат живого труда;
достижение оптимальной загрузки оборудования;
оптимизация режимов работы технологического оборудования.
Под функцией системы будем подразумевать совокупность действий системы, направленных на достижение определённой частной цели управления.
Совокупность действий системы представляет собой последовательность операций и процедур, выполняемых частями системы. Будем отличать функции системы от функций управления.
Функции системы подразделяются на:
защитные функции реализуют защиту оборудования и человека во внештатных ситуациях. Они включают в себя:
технологическую защиту;
аварийную защиту;
управляющие функции - результатом работы этих функций является выработка и реализация управляющих воздействий на объект управления. К управляющим функциям относятся:
регулирование и стабилизация отдельных параметров;
однотактное логическое управление;
программное логическое управление;
оптимальное управление режимами;
адаптивное управление;
информационные функции реализуют сбор, обработку и представление информации о состоянии автоматизированного объекта оперативному персоналу или передача этой информации для последующей обработки. К информационным функциям относятся:
измерение параметров;
контроль параметров;
вычисление параметров;
формирование и выдача данных оперативному персоналу;
подготовка и передача информации в смежные системы управления;
обобщённая оценка и прогноз состояния автоматизированного комплекса и оборудования.
вспомогательные функции.
Режимы реализации функций:
В зависимости от участия человека в выполнении функций системы различают автоматизированный и автоматический режимы реализации функций.
Автоматизированный режим:
Ручной режим, при котором техническое обеспечение представляет оперативному персоналу контрольно-измерительную информацию об объекте управления, а выбор и реализация управляющих воздействий производится оператором
Режим советчика, при котором техническое обеспечение вырабатывает рекомендации по управлению, а решение об их использовании принимается и реализуется оперативным персоналом
Диалоговый режим, при котором оперативный персонал имеет возможность корректировать постановку и условие задачи, решаемой техническим обеспечением при выработке рекомендаций по управлению объектом.
Автоматический режим:
Режим прямого цифрового либо аналого-цифрового управления, при котором вычислительные средства формируют воздействие на исполнительные органы
Режим косвенного управления, когда средства вычислительной техники автоматически меняют параметры настройки локальных систем управления либо регулирования.
Общие технические требования к системе:
Система и её составляющие должны удовлетворять требованиям, установленным нормативно-технической документацией. Система должна:
обладать признаками системы в части управления объектом;
обеспечивать управление объектом в соответствии с принятыми критериями управления;
выполнять все возложенные на неё функции с заданными характеристиками и показателями качества управления;
обладать требуемым уровнем надёжности, живучести и безопасности;
обеспечить возможность взаимоотношения функционирования системы со смежными системами;
отвечать эргономическим требованиям: к способам и форме представления информации, к размещению технических средств, к созданию условий для нормальной деятельности оперативного персонала;
обладать требуемыми метрологическими характеристиками измерительных каналов;
допускать возможность модернизации и развития в пределах, предусмотренных техническим заданием на создание системы;
нормально функционировать в условиях, указанных в техническом задании на систему;
обеспечивать заданный срок службы системы.
Вопрос №4. "Классификация автоматизированных систем управления".
Автоматизированные системы как объект управления характеризуются множеством параметров или признаков, которые могут выступать в роли классических.
Классификация автоматизированных систем управления проводится с целью:
выбора систем-аналогов для анализа конъюнктурных свойств;
оценки необходимых ресурсов для планирования и нормирования разработки системы;
определения конкурентоспособности создаваемой системы.
К основным классификационным признакам создаваемой системы отнесём следующие:
уровень, занимаемый системой в иерархии экономических, технических отношений:
межгосударственные;
государственные;
отраслевые;
объединений (корпораций);
предприятий (фирм);
технологических объектов;
назначение системы:
административные;
общественные;
политические;
социальные;
оборонные;
коммерческие;
финансовые;
образовательные;
технологические;
транспортные;
связи;
правовые;
функции, реализуемые системой:
организационно-экономические;
технологические;
интегральные;
характер реализуемых задач:
стратегические;
тактические;
оперативные;
форма выходных результатов:
информационно-управляющие;
информационно-советующие;
информационно-справочные;
структура:
централизованные;
иерархические;
децентрализованные;
характер протекания производственного процесса:
непрерывные;
дискретные;
дискретно-непрерывные;
показатель условной информационной мощности:
наименьшие (количество параметров 10-40);
малые (количество параметров 41-160);
средние (количество параметров 161-650);
повышенные (количество параметров 651-2500);
высокие (количество параметров 2501 и выше);
уровень функциональной надёжности:
минимальные (не требуются специальные меры для реализации надёжности);
средние (надёжность регламентируется, но отказы системы не приводят к остановкам объекта);
высокие (надёжность жёстко регламентируется);
топология:
сосредоточенные;
распределённые.
Вопрос №5. "Цели и критерии эффективности автоматизированной системы управления".
Алгоритм анализа (оценки) конъюнктурных свойств системы включает в себя следующие элементы:
формирование множеств свойств (показателей системы);
выбор необходимых показателей и свойств;
формирование сводной таблицы показателей;
выбор аналогов автоматизированной системы управления;
определение значений показателей основных свойств системы и аналогов;
определение комплексных показателей;
принятие решения о конъюнктурных свойствах разрабатываемой системы.
Показатели системы можно разбить на две группы:
технические показатели системы:
быстродействие
живучесть
надёжность
помехоустойчивость
безопасность
точность
функциональную полноту
эргономичность
достоверность вычислений
показатель параллелизма
уровень оптимизации решений:
“экологичность”
эволюционность
престижность
гарантированность
экономические показатели системы:
годовая экономия
годовой экономический эффект
коэффициент эффективности
срок окупаемости капитальных вложений
затраты.
Вопрос №8. Программное обеспечение автоматизированной системы
Программным обеспечением (ПО) вычислительной машины называют совокупность программ и сопровождающей их документации, позволяющую использовать вычислительную машину для решения задач.
Программное
Обеспечение
Системное ПО Прикладное ПО
Системное ПО включает программы, необходимые для согласования работы всего вычислительного комплекса при решении задач, а также при разработке новых программ.
Прикладное ПО разрабатывается и используется для решения конкретных задач пользователей ЭВМ и включает прикладные программы и пакеты программ.
Программное обеспечение можно рассматривать и с точки зрения взаимодействия его элементов.
Вашему вниманию представлена традиционная схема, представляющая иерархию программного обеспечения:
Пользователь
Ядро ОС
Окружение ОС Расширение ОС
Прикладное программное обеспечение
Рассмотрим поподробнее схему, представленную выше.
Ядро ОС является резидентным. С его помощью осуществляется автоматический запуск и проверка готовности основных узлов вычислительного комплекса.
Ядро и окружение ОС образуют базовое программное обеспечение. Расширение ОС занимает промежуточное положение между базовым и прикладным программным обеспечением. Состав и структура его могут сильно варьироваться.
Прикладное программное обеспечение представлено программными средствами, в состав которых входят в основном следующие классы:
Различные оригинальные прикладные, обучающие и игровые программы;
Системы программирования на языках высокого уровня, включающие программы-трансляторы;
Программы-редакторы текстов и изображений, издательские системы;
СУБД;
Пакеты прикладных программ;
Интегрированные системы.
Вопрос №9. "Состав информационного обеспечения и требования к нему".
Информационное обеспечение АСУ - совокупность реализованных решений по объектам, размещению и формам организации информации, циркулирующей в АСУ при ее функционировании.
Информационное обеспечение включает в себя:
нормативно-справочную информацию, которая заимствуется в справочниках и нормативных документах;
классификаторы технико-экономической информации - служат для унификации применяемых в АСУ наименований и обозначений с целью их однозначного определения.;
базу данных, которая содержит в систематизированном виде все необходимые для АСУ данные;
унифицируемые документы, используемые в АСУ, представляют собой набор форм организационно-распорядительной информации в соответствии со стандартом и форм для внутрисистемного пользования.
Методы анализа информационных потоков:
метод инвентаризации позволяет получить полную информацию, т.е. все показатели и все документы. Трудоемкость метода очень велика.
метод типических групп предусматривает регистрацию только представителей однотипных групп документов.
Множество документов, связанных с системой управления, можно разделить на несколько групп:
официальные положения и инструкции, регламентирующие функции подразделений и определяющие сроки и процедуры обработки информации и принятия решений;
входные документы, возникающие вне системы;
систематически обновляемые записи в виде картотек или книг;
промежуточные документы, получаемые и используемые в процессе обработки информации;
выходные документы.
Возможны два вида обмена информации:
документированный - обмен документами, подготовленными и заполненными людьми либо ЭВМ в виде распечаток;
недокументированный - непосредственный или телефонный разговор, общение с ЭВМ через клавиатуру и дисплей.
В системе организационно-распорядительной информации выделяют три группы документов:
организационная, в которую входят уставы, инструкции, правила, руководство пользователя;
распорядительная - постановления, приказы, распоряжения;
справочно-информационная - письма, справки, отчеты, протоколы, справки.
При проектировании диалога человек - ЭВМ предъявляют требования:
диалог должен проектироваться с учетом возможности работы на ЭВМ пользователей с различной степенью подготовленности;
пользователь может прервать свою работы в любой момент и на любом месте, при этом не следует устанавливать специальные правила и процедуры прерывания или окончания сеанса диалога, без выполнения которых произойдут нарушения в работе системы;
в процессе диалога пользователь может продолжить диалог с нужного места;
пользователь не обязан заботиться о том, как его общение с диалоговой системой сказывается и может иметь последствия для других работ. В необходимых случаях должны быть обеспечены защита информации от несанкционированного доступа или требования секретности
Для упорядочения и систематизации описания предметов и понятий их подразделяют по группам и признакам. Процесс такого упорядоченного распределения называется классификацией. Учитываемые при этом признаки сходства или различия объектов называют основанием классификации. Различают иерархическую и фасетную системы классификации.
Классификатор - систематизированный свод наименований и обозначений или шифров группировок. Каждому объекту в классификаторе присваивается шифр в соответствии с принятой системой кодирования. Свойства системы кодирования:
полнота, позволяющая охватывать все множество объектов;
унифицированность, обеспечивающая единство шифров всех объектов;
однозначность, сохраняющая уникальность идентификатора, представленного шифра;
дешифруемость, позволяющая обрабатывать шифры не зависимо от их семантики, и затем отыскивать соответствующий объект;
избыточность и гибкость, дающие возможность расширения изменений в наборе шифров без нарушения структуры классификации.
Существует 4 основные системы кодирования технико-экономической информации, из которых 1 и 2 - классификационные, т.к. основаны на заранее существующей классификации, 3 и 4 - регистрационные (объектам присваиваются номера).
последовательная система кодирования соответствует иерархической системе классификации. Шифр каждой нижестоящей группировки образуется путем добавления элементов к шифру вышестоящей. Такая система обладает хорошей информативностью, но шифры имеют большую длину.
параллельная система кодирования соответствует фасетной системе классификации. В отличие от последовательной, здесь нет зависимости признака, записанного в одних разрядах шифра от других.
порядковая система кодирования - объектам присваиваются последовательные номера.
серийно-порядковая система отличается от порядковой системы тем, что при наличии двух и более классификационных признаков объекты делятся на группы, каждой из которых выделяется серия номеров, присваиваемых аналогично порядковой системе.
Вопрос №10. "Состав работ по созданию интегрированной системы автоматизированного управления".
предпроектная стадия - разработка технико-экономического обоснования и ТЗ на создание ИСАУ;
разработка проектов - разработка технического и рабочего проектов, а для небольшой АСУ - единого технорабочего проекта системы;
ввод в эксплуатацию - проведение монтажных и пусконаладочных работ по технической части системы, завершение мероприятий по подготовке предприятия к внедрению, опытная эксплуатация и приемоналадочные испытания системы;
сопровождение системы.
На основе сбора и анализа данных существуют возможности повышения качества и объема выпускаемой продукции, снижения материальных затрат, а также финансовых и трудовых, улучшение организации производства за счет создания ИСАУ.
ТЗ составляют на основе технико-экономического обоснования. ТЗ включает в себя
функции, выполняемые системой, и документацию к системе.
Вопрос №11. "Организация работ по разработке систем автоматизированного управления".
Участниками проектирования системы являются:
фирма - разработчик аналогичных АС;
заказчик этой системы;
поставщик вычислительной техники и программного обеспечения.
Могут привлекаться профессионалы по созданию баз данных и информационных баз знаний, по локальным вычислительным сетям.
Стадиями создания АС являются:
техническое задание;
техническое проектирование;
рабочее проектирование;
внедрение.
Этап технического задания в свою очередь включает:
стадию предпроектного обследования объекта, на которой устанавливается объект исследования, программа обследования, организационный план обследования;
стадия проведения исследовательской работы включает следующие этапы:
получение сведений о положении, закономерностях развития и функционирования объекта;
получение сведений о возможности рационализации функционирования объекта;
получение исходных данных для построения структурной, функциональной, информационной и технологической моделей объекта.
создание эскиза (облика АС) содержит разработку предварительной структуры, состав автоматизированных функций, общий алгоритм функционирования, предварительный выбор комплекса задач, предварительная оценка затрат, предварительная оценка надежности и эффективности будущей системы, предварительное распределение задач между человеком и вычислительной техникой;
подготовка и выпуск тех. задания на систему.
При разработке технического задания должны быть использованы принципы:
точность изложения;
краткость изложения;
лаконичность;
корректность;
конкретность требований (численное выражение требований);
наличие требований к составу системы;
наличие требований к ее характеристикам;
наличие требований к показателям;
учет требований нормативно - технической документации;
доказательство целесообразности разработки.
Структура технического задания:
общие сведения
назначение и цели создания системы
характеристика объекта автоматизации
требования к системе
состав и содержание работ по созданию системы
порядок контроля и приемки системы
требования к составу и содержанию работ по подготовке объекта автоматизации к вводу системы в действии.
Целью этапа технического проектирования является разработка основных технических решений по создаваемой системе и, возможно, окончательное определение ее стоимости (если это оговорено договором). Работы стадии технического проекта завершаются разработкой:
общесистемных решений;
проектной документации (для тех. проекта строительства);
перечнем необходимых средств вычислительной техники;
документации специального программного и информационного обеспечения.
Основными стадиями этапа рабочего проектирования являются:
разработка рабочей документации на тех. обеспечение;
разработка рабочей документации на программное и информационное обеспечение;
разработка эксплуатационной документации.
Целью этапа внедрения является передача созданной системы в эксплуатацию. Стадии внедрения:
подготовка объекта к внедрению - выполняются работы:
строительно - монтажные по необходимости,
комплектация системы,
обечения персонала.
наладка АС - на этой стадии производятся:
наладка отдельных частей АС,
комплексная наладка системы, целью котрой является проверка и достижение правильности выполнения алгоритмов функционирования системы,. как человеко - машинного комплекса,
проведение испытаний на работоспособность.
опытная эксплуатация системы осуществляется в соответствии с разработанной программой и предусматривает проверку тех. состояния системы, определение качественных и количественных показателей выполнения функций системы, проверку готовности персонала к эксплуатации системы, доработку программного обеспечения и корректировку эксплуатационной документации.
Вопрос №12. "Структура интегрированной системы автоматизированного управления".
Структура ИСАУ определяется по функциональным подразделениям, которые объединяются по признаку выполнения определенных функций или операций.
Функциональная структура АСУ - структура, элементами которой подсистема, функции АСУ или их части, а связи между элементами - потоки информации, циркулирующей между ними в процессе функционирования АСУ.
Структура комплекса технических средств АСУ - структура, элементами которой являются устройства комплекса тех. средств АСУ, а связи между элементами отображают информационный обмен.
Выделяют обеспечивающие подсистемы:
Мат. и программное обеспечение - совокупность мат. методов, моделей и алгоритмов обработки информации. используемых при создании и функционировании АСУ;
информационное обеспечение - совокупность реализуемых решений по объемам, размещению и формам организации информации, циркулирующей в АСУ при ее функционировании;
организационное обеспечение - совокупность документов, регламентирующих деятельность персонала АСУ при ее функционировании;
лингвистическое обеспечение - совокупность языковых средств для формализации естественного языка, построения и сочетания информационных единиц при общении персонала ИСАУ;
правовое обеспечение - совокупность правовых норм, регламентирующих правоотношения при функционировании АСУ и юр. статус результатов ее функционирования.
Состав функциональной подсистемы ИСАУ:
инженерная подготовка производства;
оперативное управление основным производством;
технико-экономическое планирование;
управление финансами;
технологическая подготовка производства;
управление инструментальным обеспечением;
управление сбытом;
бух. учет;
управление транспортным обслуживанием;
управление ремонтным обслуживанием;
управление материально-техническим снабжением;
управление кадрами;
управление делопроизводством;
управление технологическим процессом;
управление качеством продукции;
межфункциональная координация;
управление кап. строительством;
контроль исполнительской дисциплины.
Вопрос №15. "Дерево целей создания ИСАУ".
I. Обеспечение организационной интеграции:
выбрать орг. структуры, определить права и обязанности персонала всех звеньев ИСАУ;
провести регламентацию порядка обмена информацией;
определить ответственности за своевременность и недостоверность предъявления информации;
разработать методическое обеспечение ИСАУ;
обеспечить координацию и синхронизацию действий всех служб и исполнителей;
создать сеть АРМ.
II. Обеспечение функциональной интеграции:
определить набор технико-экономических показателей и технологических параметров для решения всей совокупности задач ИСАУ;
декомпозировать технико-экономические показатели и технологические параметры по уровням управления с целью минимизации объема хранящихся данных и потоков информации;
разработать задачи организации внутриуровневого и межуровневого обмена информацией, обеспечивающих автоматизацию процедуры принятия решений;
разработать сквозные по уровням комплексы задач по всем основным функциям управления;
выбрать критерии совместного функционирования локальных автоматизированных систем;
разработать комплексы задач на основе критериев совместного функционирования локальных автоматизированных систем;
разработать интерфейсы с эксплуатируемыми комплексами задач локальных АСУ;
разработать мат. методы решения задач большой размерности, методы горизонтальной и вертикальной декомпозиции общей модели управления.
III. Обеспечение технической интеграции:
обеспечить техническую, кодовую и программную совместимость комплекса тех. средств локальной АС;
обеспечить высокую достоверность решения задач;
обеспечить максимальную мобильность конфигурации комплекса тех. средств;
обеспечить дистанционный обмен данных между комплексами ЭВМ различного назначения, источниками и потребителями информации по каналам связи;
обеспечить высокие эксплуатационные характеристики комплекса тех. средств;
обеспечить распределенную обработку данных;
обеспечить высокую надежность комплекса тех. средств.
IV. Обеспечение информационной интеграции:
унифицировать формы документов, методики их заполнения и использования;
унифицировать методики реализации плановых и др. расчетов;
создать распределенную иерархическую систему взаимосвязанных баз данных и средств ее ведения;
унифицировать требования к обмену информации;
унифицировать требования к структуре, организации и форматам представления данных;
использовать единую систему классификации и кодирования и средства ее ведения;
обеспечить высокую достоверность хранения данных.
V. Обеспечение программной интеграции:
обеспечить функционирование ИСАУ в условиях наличия различных операционных систем;
обеспечить обмен информацией между различными типами ЭВМ и организацию распределенной обработки данных;
обеспечить разнообразные режимы функционирования системы и ее компонентов;
обеспечить интерфейсы между различными базами данных и системами управления ими, интерфейсы с существующими программными средствами разных уровней;
обеспечить оперативный доступ к базам данных на различных уровнях;
обеспечить организацию вычислительного процесса многомашинного многофункционального комплекса технических средств;
обеспечить мультипрограммный режим работы операционной среды;
обеспечить восстановление после сбоя состояния данных и вычислительного процесса на определенный момент времени;
обеспечить надежность функционирования системы.
Вопрос №16.
Понятие модели. Параметры математических моделей
Модель - это материальный или мысленно представляемый объект или процесс, который в процессе извлечения информации замещает оригинал сохраняя его основные свойства.
Типы моделей:
физические
математические
имитационные
Физические модели - это материальные объекты, представляющие копию изучаемого объекта или явления.
Математическая модель - это формализованная схема описания явления, объекта или процесса, выраженного на математическом языке и отражающая его основные свойства.
Создание Мат. модели делится на три этапа:
Выбор параметров задачи (переменные, неизвестные), выбор которых однозначно определяет моделируемую задачу.
Запись математической модели, т.е. запись условий задачи в виде матем. Соотношений.
Постановка цели на сформулированные модели.
Вопрос №18. Генераторы стандартных псевдослучайных чисел.
1.1. Датчики БСВ
Б а з о в о й случайной величиной (БСВ) в статистическом
моделировании называют непрерывную случайную величину z,
равномерно распределенную на интервале (0,1). Ее плотность
распределения вероятностей (п.р.в.) имеет вид:
f(t) = 1, 0 < t < 1. (1.1)
Математическое ожидание (м.о.) и дисперсия БСВ составляют
M(z) = 1/2 (1.2)
D(z) = 1/12 (1.3)
соответственно.
П р о г р а м м н ы й датчик БСВ обычно вычисляет значения
z ,z , ... по какой-либо рекуррентной формуле типа
z = f(z ) (1.4)
при заданном стартовом значении z .
Заданное значение z полностью определяет всю последователь-
ность реализаций z ,z , ... , поэтому z часто называют п с е в -
д о с л у ч а й н о й величиной. Но ее статистические свойства
идентичны свойствам "чисто случайной" последовательности, что и
обеспечивает успех статистического моделирования.
Программный датчик БСВ имеет следующие преимущества:
- простота создания датчика,
- простота применения,
- простота тиражирования,
- надежность,
- быстродействие,
- высокая точность достижения необходимых статистических
свойств, сравнимая с точностью представления вещественных чисел,
- компактность,
- повторяемость, когда это нужно, любых последовательностей
случайных значений без их предварительного запоминания.
В дальнейшем мы будем рассматривать только программные датчики
БСВ.
Имея датчик БСВ z, можно промоделировать любые случайные
факторы: непрерывные или дискретные случайные величины (как
простые, так и многомерные), случайные события, случайные процессы
и поля и т.д. Для этого достаточно соответствующим образом
преобразовать последовательность z ,z , ... . Поэтому БСВ z и
называют базовой.
Теоретически в качестве базовой можно было бы взять почти
любую случайную величину (с.в.). Использование с.в. z с
распределением (1.1) обусловлено технологическими соображениями:
простотой и экономичностью датчика, простотой преобразования z в
другие случайные факторы, относительной простотой тестирования
датчика.
1.2. Метод середины квадрата
Метод середины квадрата предложен для получения
псевдослучайных чисел Д. фон Нейманом в 1946 г. Вот один из
вариантов этого метода.
(1) Возьмем произвольное четырехзначное число.
(2) Возведем полученное четырехзначное число в квадрат и, если
необходимо, добавим к результату слева нули до
8-мизначного числа.
(3) Возьмем четыре цифры из середины 8-мизначного в
качестве нового случайного четырехзначного числа.
(4) Если нужны еще случайные числа, то перейдем к (2).
Например, если взять в качестве начального числа 1994, то из
него получается следующая последовательность псевдослучайных чисел:
9760 2576 6357 4114 9249 5440 5936 2360
5696 4444 7491 1150 3225 4006 0480 2304
3084 5110 1121 2566 ...
Сам по себе метод середины квадрата не получил широкого
распространения, так как выдает "больше чем нужно малых значений"
[26]. Но открытый в нем принцип используется во многих, если не во
всех, более поздних датчиках БСВ. Этот принцип состоит в вырезании
нескольких цифр из результата какой-либо операции над числами.
1.4. Тестирование равномерности
Обозначим равномерное распределение вероятностей на интервале
(0,1) через R[0,1]. Тогда утверждение, что БСВ z имеет
распределение R[0,1] можно кратко записать в виде z ~ R[0,1].
С помощью статистических тестов проверяют два свойства
датчика, делающих его точной моделью идеальной БСВ - это
р а в н о м е р н о с т ь распределения чисел z , выдаваемых
датчиком на интервале (0,1), и их статистическую н е з а в и с и -
м о с т ь. При этом числа z рассматривают как реализации
некоторой с.в., то есть как статистическую выборку.
Достаточно простым методом проверки равномерности
распределения является частотный тест. Он основан на законе больших
чисел и выполняется по следующему алгоритму.
(1) Разобьем интервал (0,1) на K равных отрезков
(например, K = 10).
(2) Сгенерируем n чисел z , ... ,z с помощью
тестируемого датчика БСВ (например, n = 100).
(3) Подсчитаем, сколько чисел попало в каждый из K
отрезков, т.е. найдем числа попаданий n , ... ,n .
(4) Рассчитаем относительные частоты попаданий в отрезки:
p' = n /n, ... , p' = n /n.
(5) Построим гистограмму частот p' , ... ,p' на K
отрезках интервала (0,1).
(6) Повторим действия (2) - (5) для большего значения n
(напрмер, для n = 10 000).
(7) Оценим по полученным гистограммам сходимость каждой
частоты p' к вероятности p = 1/K того, что БСВ
попадет в i-ый отрезок. Согласно закону больших чисел
должно быть
p' -> 1/K, n -> . (1.6)
Это значит, что высоты столбиков во второй гистограмме
должны в целом быть ближе к уровню 1/K, чем в первой.
Тестирование датчика на равномерность можно совместить с
оцениванием м.о. и дисперсии с.в. Оценки M' и D' для м.о. и
дисперсии рассчитываются соответственно по формулам:
(1.7)
(1.8)
С ростом n оценки M' и D' должны сходиться по вероятности к
точным значениям M(z) = 1/2, D(z) = 1/12 = 0.08333... .
В табл. 1.2 приводится пример тестирования одного из
распространенных датчиков БСВ. На рис. 1.1 и 1.2 показаны
соответствующие гистограммы. Судя по этим результатам,
протестированный здесь датчик отвечает требованию равномерности.
Пример испытания датчика Табл. 1.2
----------------------------------------------------------
Рассчитываемые оценки | Длина выборки n
|-------------------------------
| n = 1000 | n = 100 000
--------------------------|------------------|------------
Оценки для м.о. | M' | 0.4928 | 0.4992
| | |
и дисперсии | D' | 0.0841 | 0.0832
--------------------|-----|------------------|------------
| | |
| p' | 0.114 | 0.10136
| | |
| p' | 0.097 | 0.09974
| | |
| p' | 0.100 | 0.09868
| | |
| p' | 0.108 | 0.10130
| | |
Частоты | p' | 0.094 | 0.10155
| | |
| p' | 0.096 | 0.09896
| | |
| p' | 0.096 | 0.09928
| | |
| p' | 0.102 | 0.10015
| | |
| p' | 0.104 | 0.10085
| | |
| p' | 0.089 | 0.09813
--------------------------|------------------|------------
Сумма частот | 1.000 | 1.000
----------------------------------------------------------
1.5. Тестирование независисмости
Простейшую проверку статистической независимости реализаций
z ,z , ... можно осуществить, оценивая корреляцию между числами
z и z , отстоящими друг от друга на шаг s > 1.
Для вывода формулы, по которой можно рассчитать коэффициент
корреляции чисел z и z, расссмотрим две произвольные с.в.
x, y. Коэффициент корреляции определяется для них формулой:
M(xy) - M(x)M(y)
R(x,y) = ---------------- . (1.9)
D(x)D(y)
Если известно, что x,y ~ R[0,1], то M(x) = M(y) = 1/2
и D(x) = D(y) = 1/12, то есть формула (1.9) принимает вид:
R(x,y) = 12 M(xy) - 3. (1.10)
Условимся рассматривать пару чисел (z ,z ) как
реализацию пары с.в. (x,y). Тогда в выборке z , ... ,z имеем
всего n-s реализаций этой пары:
(z ,z ), (z ,z ), ... ,(z ,z ).
По ним можно рассчитать оценку R' коэффициента корреляции R(x,y),
заменяя в (1.10) м.о. M(xy) соответствующим средним
арифметическим:
1
R' = 12 ----- ( z z ) - 3 . (1.11)
n-s
С ростом n оценка R' должна приближаться к нулю, в противном
случае датчик БСВ не отвечает требованию независисмости.
Конечно, если R' сходятся к нулю, то это еще не гарантирует
наличие независимости, но все же один из тестов оказывается успешно
выдержанным. При желании всегда можно продолжить испытания датчика
другими методами.
В табл. 1.3 показан пример тестирования датчика БСВ. Как видно
из таблицы, оценки коэффициентов корреляции для s = 1,2,3
постепенно сходятся к нулю. На рис. 1.3 изображены соответствующие
графики.
Табл. 1.3
-------------------------------------
| | Оценка R'для s = 1,2,3 |
| n |------------------------|
| | s = 1 s = 2 s = 3 |
|----------|------------------------|
| | |
| 1000 | 0.175 0.142 0.232 |
| 2000 | 0.071 0.059 0.111 |
| 3000 | 0.007 0.021 0.043 |
| 4000 | 0.017 0.040 0.043 |
| 5000 | 0.019 0.045 0.042 |
| 6000 | 0.009 0.031 0.039 |
| 7000 | -0.003 0.019 0.027 |
| 8000 | -0.003 0.021 0.028 |
| | |
-------------------------------------
1.6. Другие методы тестирования
1.6.3. Специальные тесты
Еще более сильные тесты разработаны специально для проверки
равномерного распределения. К их числу относятся:
- тест "гиперкубов" на равномерное заполнение N-мерных кубов
точками с координатами (z , ... ,z ), (z , ... ,z ), ... ,
описанный в [5,30];
- тест "серий" на длину подпоследовательностей (например, на
длину серий чисел z , которые начинаются одной и той же цифрой)
[5,15];
- тест "максимумов и минимумов" [15].
1.6.4. Проверка практикой
Любое тестирование датчиков БСВ все-же остается частичным.
Поэтому Ермаков и Михайлов в [5] отмечают, что кроме специального
статистического тестирования "... чрезвычайно важна проверка с
помощью решения типовых задач, допускающих независимую оценку
результатов аналитическими или численными методами. Можно сказать,
что представление о надежности псевдослучайных чисел создается в
процессе их использования с тщательной проверкой результатов
всегда, когда это возможно".
1.6.5. Точные методы
Точные методы применяются наряду со статистическими для
д о к а з а т е л ь с т в а тех или иных частных свойств датчиков
БСВ.
В ряде точных исследований вероятностные характеристики
датчиков рассчитывают п о в с е м у периоду z , ... ,z ,
что, очевидно, равносильно статистическому тестированию датчика по
выборке бесконечного объема: z , ... ,z . Этот подход используется
у Кнута [15], а также у Кавью и Макферсона [31].
1.6.6. Тестирование апериодичности
К точным методам следует отнести также методы тестирования
апериодичности. При поиске длины периода в последовательности
z ,z , ... требуется, вообще говоря, сравнивать каждое новое
число z со всеми предыдущими. Однако непосредственное сравнение
z с каждым из чисел z , ... ,z привело бы к чересчур
большим затратам машинного времени, возрастающим на каждом шаге i.
Более эффективный алгоритм тестирования апериодичности опубликован
Ю.Г.Полляком в [21].
1.6.7. Методы теории чисел
Длину периода и некоторые другие важные характеристики
датчиков можно определять также точными методами теории чисел [2].
Результаты подобных алгебраических исследований можно найти в [30].
Для примера приведем следующую интересную теорему.
Т е о р е м а . Пусть в (1.5) m - простое число. Максимально
возможное значение периода T = m-1 достигается, если k не кратно
m и величины
также не кратны m,
где p , ... ,p - простые числа, входящие в каноническое
разложение числа m-1 на сомножители: m-1 =
1.7. Другие алгоритмы генерации БСВ
1.7.1. Не все то золото, что блестит
Прежде, чем дать информацию о некоторых других методах
построения БСВ, сделаем одно важное замечание.
Уже более двадцати лет назад была опубликована библиография
[35], которая содержит 491 ссылку на литературу по датчикам
случайных чисел. Двумя годами позднее Дж. Клейнен в [12] приходит,
однако, к выводу, что "все еще нет высококачественного генератора
псевдослучайных чисел". Одновременно с ним Льюис [33] и Марсалья
[34] указывают: "Многие широко распространенные генераторы
фактически непригодны". Предостережение о распространенности плохих
генераторов делает также И.М.Соболь в [26].
Дж. Клейнен в [12] отмечает, что "Наилучший в настоящее время,
по-видимому, мультипликативный генератор, однако он требует
тщательного выбора сомножителя".
1.7.2. Датчики с большой длиной периода
В [32] рекомендуются следующие шесть вариантов множителя k
для датчика (1.5) с m = 2 -1 :
1078318381, 1203248318, 397204094,2027812808, 1323257245, 764261123.
Во всех этих случаях длина периода T = m-1. Поэтому в качестве
стартового значения можно брать любое целое число от 1 до m-1.
1.7.3. Линейная смешанная формула
Эта формула является обобщением (1.5):
A = (k A + ... + k A + C) mod m, (1.12)
z = a /m, i = 1,2, ... ,
где - порядок,
A , A , ... , A - стартовые значения,
k , ... , k - множители.
Здесь длина периода T < m .
1.7.4. Квадратичный конгруэнтный метод
Это еще один вариант обобщения (1.5). В нем используется
формула:
A = (k A + k A + C) mod m, (1.13)
z = a /m, i = 1,2, ... .
1.7.5. Метод Макларена - Марсальи
Для повышения точности моделирования БСВ Макларен и Марсалья
предложили комбинировать два простейших датчика БСВ, если их
точность моделирования недостаточно высока.
Пусть x ,y , i = 0,1,2, ... - две псевдослучайные
последовательности, порождаемые независимыми датчиками Д1 и Д2
сответственно; V = { V(0), ... , V(K-1) } - вспомогательная таблица
целых чисел. Вначале таблица V заполняется первыми K членами
последовательности x :
V(j) = x , j = 0,1, ... , K-1.
Через z будем обозначать псевдослучайную последовательность
метода Макларена-Марсальи. Число z определяется путем выполнения
следующей последовательности операций:
j = | y K |,
z = V(j),
V(j) = x , i = 0,1,2, ... ,
где операция | y K | означает целую часть y K.
Мы видим, что Д2 используется здесь для случайного выбора
элемента из таблицы V, а Д1 заменяет этот элемент новым случайным
значением.
Этот метод позволяет ослабить зависимость между числами z и
получать длину периода до T T , где T ,T - периоды
датчиков Д1 и Д2 соответственно. Например, при T = T = 2 - 2
(см. п. 1.7.2) и K = 9 мы можем получить T 2,2 10 , то есть
больше гугола (больше 10 ). Это, очевидно, перекрывает любые
практические потребности и даже возможности исчерпания периода.
Обратим внимание также на то, что быстродействие метода - то
есть количество операций, выполняемых на каждом шаге - практически
не зависист от размера K вспомогательной таблицы.
1.7.6. О датчике системы GPSS
Т.Дж. Шрайбер в [29] описал датчик БСВ, встроенный в язык GPSS
(в версииях для IBM 360/370). В этом датчике комбинируются
следующие идеи, отличающие его от датчика (1.5).
Произведение двух больших чисел представляется в д е с я -
т и ч н о й форме. Получается 20 - разрядное число, из которого 6
средних цифр берутся в качестве очередного целого псевдослучайного
числа A .
Из произведения выбирается еще одно псевдослучайное число -
правая половина 60 - разрядного д в о и ч н о г о представления
произведения. Она используется на следующем шаге i+1 вместо A
для формирования нового десятичного произведения с k.
В качестве множителя k на каждом таком шаге используется один
из восьми коэффициентов, выбираемый случайно с помощью третьего
псевдослучайного числа, составляемого из цифр "другой средней части
произведения".
Точное описание алгоритма и данные тестирования этого датчика
в [29] не приводятся, как и в фирменной документации [6,24]. Наше
доверие к датчику может питаться авторитетом фирмы IBM и, в
особенности, широким апробированием языка GPSS в прикладных
исследованиях и в учебных курсах моделирования.
Хорошим подтверждением высокого качества датчика можно считать
также работу [4], где на GPSS моделируются системы массового
обслуживания и результаты сравниваются с точными аналитическими
решениями. По этому поводу см. п.1.6.4.
1.7.7. О проблемах программирования
В известной нам литературе параметры датчиков сильно зависят
от длины машинного слова. Дело в том, что в алгоритмах вычисления
БСВ используются большие целые числа. А так как непосредственное
программирование операций над ними может привести к переполнению
разрядной сетки ЭВМ, то ряд операций приходится разбивать на
промежуточные шаги, в которых учитываются тонкости машинной
арифметики. В результате текст программы оказывается существенно
зависимым от модели ЭВМ и от используемого языка программирования.
Или же он содержит операции настройки на длину слова и на
особенности обработки переполнений в ЭВМ, как, например, в прил.1 в
[30].
Работа на границе диапазона представимых целых чисел - это
специфическая трудность при программировании датчиков БСВ._
Вопрос №19. "Основные понятия имитационного моделирования".
Имитационная модель (ИМ) - программа, при выполнении которой на ЭВМ в численном виде воспроизводится процесс функционирования системы в соответствии с известным причинно-следственным механизмом, определяющим состояния элементов системы в очередные моменты времени через их состояния в прошлом.
Системы делятся на непрерывные (все переменные представляют собой непрерывные функции времени) и дискретные.
Движение в модельном времени в программе осуществляется по принципу ?t - малых приращений времени. Поэтому мат. аппарат при моделировании непрерывных систем в значительной мере совпадает с численными методами решения диф. уравнений. В дискретных системах все переменные являются дискретными функциями времени. Это значит, что их изменение осуществляется мгновенно в отдельные моменты времени, между которыми значения переменных не меняются. Все изменения называются событиями. Количество типов событий для данного класса систем ограничено. Каждый тип события моделируется отдельной программной процедурой. Перемещения в модельном времени происходят по принципу ?z - от события к событию.
Соответственно языки программирования ИМ систем делятся на языки моделирования дискретных систем, языки моделирования непрерывных систем, языки моделирования непрерывно - дискретных систем. Всего известно несколько сотен хорошо документированных языков ИМ. Наиболее распространенным и проверенным считается язык GPSS.
ИМ отличается от аналитического тем, что не требует составления и решения уравнений, не связано с применением формальных понятий определенного мат. аппарата, уровень детализации при моделировании может быть произвольным. Поэтому реальная система может быть промоделирована с любой точностью (единственное ограничение - хорошее знание исследуемой системы).
Выполнение ИМ на ЭВМ называется имитационным экспериментом (ИЭ). Чтобы накопить информацию о показателях функционирования системы применяют два метода планирования ИЭ:
параллельный эксперимент - при заданном начальном состоянии системы прогон модели осуществляется N раз. В каждом прогоне начальные значения датчиков БСВ (непрерывная случайная величина, равномерная распределенная на интервале от 0 до 1). В результате получается N независимых реализаций процесса. Так как все реализации независимы, можно находить не только среднее значение процесса, но и определить точность результата усреднения классическими методами. Результат усреднения дает информацию обо всем процессе, включая фазы переходного и стационарного процессов.
последовательный эксперимент - основан на применении теоремы об эргодическом процессе: "для эргодического процесса среднее по множеству равно среднему по времени". В последовательном эксперименте выполняется один достаточно длинный прогон, в котором среднее значение процесса определяется как среднее по времени. Последовательный эксперимент позволяет рассчитывать оценки достаточно легко, но в нем теряется информация о переходном процессе.
Вопрос №20. Основы концептуального проектирования БД
Этап концептуального проектирования связан с описанием и синтезом разнообразных информационных требований пользователей в первоначальный проект баз данных. Результатом этого этапа является высокоуровневое представление информационных требований, например, такое как диаграмма “сущность-связь”. Основу этой диаграммы составляет набор сущностей, который представляет или моделирует определенную совокупность сведений, специфицированную в требованиях. Сущности могут быть описаны атрибутами, позволяющими детализировать свойства сущности. Один или несколько атрибутов могут служить идентификатором для обозначения отдельных экземпляров сущности. Связи между сущностями отображают функциональные аспекты информации, представленной сущностями.
Существует несколько подходов к построению диаграмм типа “сущность-связь”. Общим для всех подходов является набор из четырех основных проектных решений или шагов:
Определение сущностей.
Определение атрибутов сущностей.
Идентификация ключевых атрибутов сущностей.
Определение связей между сущностями.
Хотя существует некоторая общность мнений о необходимости этих шагов для построения информационной структуры, тем не менее нет общего соглашения относительно порядка их выполнения. Главное, что здесь необходимо, это чтобы первоначальная информационная структура была хотя бы частично независимой от процесса обработки, что позволит обеспечить гибкость процесса проектирования.
Подход к концептуальному проектированию обычно предполагает, что рассматривается представление одного-единственного пользователя. При этом возможно предположить, что таким единственным пользователем является администратор или проектировщик базы данных, который понимает требования всех пользователей и объединяет эти требования в полный набор согласованных спецификаций. Альтернативным является подход, в котором “интеграция представлений” выполняется как часть процесса концептуального проектирования.
Основы концептуального проектирования.
Концептуальное проектирование оперирует информацией, независимой от любой фактической реализации (т. е. от любой конкретной системы технического или программного обеспечения). Цель концептуального проектирования именно в том и состоит, чтобы представить информацию в доступной пользователю форме, не зависящей от спецификаций системы, но реализуемой несколькими системами.
Существует два подхода к концептуальному проектированию:
Объектное представление;
Моделирование сущностей.
Экспертные оценки концептуальной модели данных.
Метод экспертных оценок ставит следующие основные вопросы:
Обладает ли концептуальная модель достаточной полнотой?
Достаточно ли хорошо она отражает предметную область?
Корректна ли она?
Подобные или более детализированные вопросы относительно всех аспектов системы (требований пользователя, программирования, операций и т. д.) не должны остаться без ответа. В процессе экспертизы выявляется все, что в проекте упущено, и это несомненно идет на пользу его полноте.
Корректность модели тщательно проверяется при анализе архитектуры системы. При этом требования пользователя к данным и процессам, а также к типизации процессов и данных рассматриваются с различных позиций.
В ходе экспертизы проекта исследуются особенности преобразования данных, т. е. процесс трансформации информационной модели в СУБД-зависимое представление. Первый шаг - определение правильности и полноты самой информационной модели. На следующем шаге исследуется СУБД-зависимое представление.
Вопрос №21.
Проектирование физической реализации БД.
Проектирование физической реализации БД производится по всем схемам и подсхемам разрабатываемой программы на СУБД или любом другом языке, который может быть включаться в программу СУБД.
Различают следующие методы доступа к БД:
блочный
индексно-последовательный
прямой (с относительной или абсолютной адресацией )
к инвертированным файлам
виртуальный метод
Запросы к БД могут быть следующие:
“Получить всё” ( 90-100 % информации из БД )
“Получить одну” ( GET UNIKUM )
“Получить некоторые” ( 0 - 10 % информации из БД )
Выгрузка и загрузка БД осуществляется последовательным методом ( “получить всё” )
При этом применяются следующие методы и функции:
Функция хеширования ( рандомизации )
Мультисписковый файл - дополнительный служебный файл, в котором указаны отдельные данные, хранящиеся в БД.
Доступ к инвертированным файлам
При физической реализации БД следуют двум критериям:
Объём внешней памяти
Время реакции на запрос
Характеристики методов доступа к БД с учётом указанных выше критериев:
( знак “+” означает возрастание критерия, “-” - убывание )
Последовательный метод : 1 - “-”, 2 - “+”
К инвертированному файлу : 1 - “+”, 2 - “-”
Хеширования : 1 - “+”, 2 - “-”
Время реакции на запрос.
Т. ожид. Т 0
t = Tn/2 Работа процессора Работа Т. ожид На
интерпретации ядра экран
Т.
Т общ. = ожид.
Работа
накопителя
Вопрос №23. Функции администратора БД.
Администратор базы данных (АБД) - под этим понятием подразумевается лицо (или группа лиц, возможно, целое штатное подразделение), на которое возложено управление средствами базы данных организации.
АБД должен быть энергичной и способной личностью, организатором по призванию, желательно с техническим уклоном.
В его функции входит:
координировать все действия по проектированию, реализации и ведению БД; учитывать перспективные и текущие требования пользователей; следить, чтобы БД удовлетворяла актуальным информационным потребностям;
решать вопросы, связанные с расширением БД в связи с изменением границ ПО;
разрабатывать и реализовывать меры по обеспечению защиты данных от некомпетентного их использования, от сбоев технических средств, по обеспечению секретности определенной части данных и разграничению доступа к данным;
выполнять работы по ведению словаря данных; контролировать избыточность и противоречивость данных, их достоверность;
следить за тем, чтобы БнД отвечал заданным требованиям по производительности, т. е. чтобы обработка запросов выполнялась за приемлемое время; -выполнять при необходимости изменения методов хранения данных, путей доступа к ним, связей между данными, форматов данных; определять степень влияния изменений в данных на всю БД; -координировать вопросы технического обеспечения системы аппаратными средствами исходя из требований, предъявляемых БД к оборудованию;
координировать работы системных программистов, разрабатывающих дополнительное программное обеспечение для улучшения эксплуатационных характеристик системы.
координировать работы прикладных программистов, разрабатывающих новые ПП и выполнять проверку и включение прикладных программ в состав программного обеспечения системы И Т. П.
Вопрос №24. "СУБД. Определение и архитектура".
СУБД - комплекс программных средств, который позволяет создать БД (файл, структура и хранение в котором построены так, что информация из него берется путем запроса), поддерживать ее в актуальном состоянии и осуществляет выдачу ответов на запросы БД.
Основные функции СУБД:
создание БД;
поддержка логической (изменение логических представлений, не затрагивая их физических представлений) и физической независимости данных;
организация доступа пользователю;
разграничение прав доступа пользователю: явное указание прав доступа, паролевая защита;
обеспечение логической (наличие непротиворечивых данных) и физической (сохранность на физическом уровне: копирование, организация зеркальных дисков) целостности данных;
должны быть средства настройки;
организация многопользовательской работы.
Модули СУБД:
ядро, которое управляет накопителем;
окружение системы - ряд утилит, которые выполняют определенные действия:
утилиты администрирования,
средства разработки приложений,
утилиты копирования, восстановления,
утилиты импорта / экспорта файла,
обучающая утилита.
Архитектура СУБД:
Архитектура - компоненты, которые поддерживают определенный взгляд на данные.
Уровень 1 - внешний: компоненты, которые поддерживают уровень пользователя.
Уровень 2 - внутренний: функциональные компоненты, которые поддерживают БД в среде хранения.
Уровень 3 - концептуальный: обеспечивает единый взгляд на БД. Этот уровень содержит внешний интерфейс (связь с пользователем) и внутренний интерфейс (связь между уровнями).
Вопрос №25. Понятие и назначение интерфейса при проектировании БД
Наиболее развитые СУБД имеют следующие преимущества и характерные особенности:
"дружественный" интерфейс с пользователем;
встроенную программу интерактивной помощи, а иногда и наличие интерактивной обучающей программы;
средства автоматического создания, использования и модификации базы данных без необходимости программирования, генераторы программ, отчетов, форматов;
развитые языки программирования баз данных — более 200 команд и функций.
Дружественная система такого рода предлагает пользователю иерархически построенное меню. С его помощью выбирается требуемая функция системы.
Для ввода данных, их просмотра и редактирования в базе данных чаще всего используются два способа их представления - табличный и в виде экранных форм. Экранные формы применяют в случаях, когда длина записи данных превышает размер строки дисплея или когда удобнее работать с привычной формой документа. Для изображения форм ввода-вывода применяется обычно псевдографика, и выводятся они на экран в текстовом режиме. Вывод результатов обработки пользовательских запросов осуществляется в виде так называемых отчетов. Наиболее часто используются отчеты табличной формы.
Записи в такой таблице обычно сортируются по заданному ключу. Для групп записей с одинаковым значением некоторой части ключа или полного ключа, а также для всего множества записей могут строиться итоговые значения по заданным столбцам таблицы. Допускается иерархия группирования записей, и для разных инструментальных средств возможна различная ее глубина.
Наряду с табличной используется и так называемая ленточная или свободная форма отчета, каждая запись которого может занимать несколько строк, и форматы разных записей могут быть различны.
Выводимые прикладной системой отчеты могут выводиться на экран дисплеем или печататься на принтере.
Традиционно построенное приложение использующее перечисленные функциональные компоненты, предусматривает выполнение некоторого набора типовых процедур. Обеспечивается, в частности, ввод записей в базу данных с верификацией их по заданным простым ограничениям целостности, например, по диапазону изменения значений числового поля формы или по шаблону значения строкового поля. Кроме того, возможны просмотр, редактирование и удаление записей, а также поиск записей по задаваемому через экранную форму критерию. При этом пользователь задает значения поисковых полей формы, имея в виду, что в результате поиска должны быть найдены и показаны все записи, имеющие такие же значения всех поисковых полей. К числу типовых процедур приложения относится также вывод отчета по любой форме, известной системе, на экран дисплея или на принтер.
Дружественный характер СУБД для ПЭВМ хорошо сочетается с главной направленностью технологии персональных ЭВМ на обеспечение комфортных условий работы пользователей. Благодаря этому достигается существенно более высокая производительность труда пользователя при создании и эксплуатации "персональных" баз данных, чем при выполнении подобных работ на "больших" ЭВМ со свойственными их социальной пользовательской среде значительными накладными расходами и более низкой надежностью.
Интерфейс СУБД с различными классами пользователей обычно обеспечивается широким диапазоном языков. В нем также предусматриваются соответствующие средства для проектирования и использования баз данных. В подавляющем большинстве СУБД для ПЭВМ предусматривается интерактивный режим работы пользователей. При этом широко используются интерфейсы в стиле меню с указанием для пользователя альтернативных вариантов выбора возможных действий и способов их инициирования, с отображением текущего состояния системы БД и диагностикой ошибок. В системах, обладающих языками программирования ("программируемые" СУБД), средства такого интерфейса избавляют пользователя от необходимости знания команд языка программирования для выполнения требуемых функций.
Благодаря этому расширяется круг возможных пользователей системы. В некоторых развитых СУБД предусматривается несколько уровней пользовательских интерфейсов, предъявляющих различные требования к их квалификации. Такие возможности предусмотрены, например, в системах dBaseIII РLUS и dВаsе IV, R:Base, Раrаdох. Значительное внимание уделяется минимизации с помощью функциональных клавиш действий пользователя, необходимых для инициирования часто требуемых функций. Освоение системных средств и интерпретация возникающих в процессе работы ситуаций существенно облегчаются благодаря созданию эффективных электронных учебников, средств глобальной и контекстно-зависимой помощи пользователю в оперативном режиме, а также средств диагностики ошибок. Такие средства стали необходимыми компонентами любого программного продукта для ПЭВМ.
Многие СУБД предоставляют пользователю возможность взаимного обмена данными, содержат соответствующие программы-конверторы для преобразования данных из одного формата в другой.
Сбалансированное сочетание простоты освоения и использования "поверхностных" функций таких массовых СУБД, как dBaseIII РLUS , R:Base, Раrаdох, обширных функциональных возможностей и прочих интерфейсов, обеспечивает этим системам широкую сферу применения. Например, первые впечатления от таких СУБД даже порождают у непрофессионального пользователя иллюзию того, что любую ИС можно реализовать вообще без какого-либо программирования в кратчайшие сроки и без заметных трудозатрат, что в этой области вообще не существует проблем и профессиональной специфики, требующей специальных знаний. Однако, по мере усложнения информационных потребностей, когда уже не удается обойтись средствами простейшего пользовательского интерфейса с системой и приходится прибегать к ее языку программирования, иллюзии начинают рассеиваться.
Если объемы данных в БД достигают значительных размеров, при выполнении операций, требующих прямого доступа, пользователя начинает беспокоить недостаточно высокая реактивность системы. Для решения проблемы повышения производительности системы БД уже недостаточно хорошего знания только языка программирования. Необходимы профессиональные знания в области технологии БД, понимание архитектуры системы, знание механизмов доступа к БД в рассматриваемой СУБД, умение эффективно проектировать базу данных.
Вопрос №26. Общая концепция и типы структур распределенных баз данных
Распределенная база - это база, распределенная на нескольких установках, но обеспечивается доступ к единственному информационному пространству. Для таких баз характерно наличие информационно - вычислительной сети. Архитектура распределенной базы должна соответствовать архитектуре сети (т.к. нет протоколов сети).
Структура распределенной базы бывает двух видов: однородная неоднородная.
Однородная база данных распределена на сегменты по функциональному признаку. Доступ осуществляется через единую сущность если таблицы не пересекаются. Обработка клиент - сервер затруднительна(т.к. на некоторых машинах нагрузка растет не пропорционально). Однородные базы применяются в основном для кольцевых сетей.
Неоднородные базы в свою очередь делятся на централизованные и децентрализованные.
В децентрализованных базах каждый пользователь может иметь свой сегмент который должен быть скопирован на центральный сервер. Вся обработка идет на машине пользователя. Процедура транзакции должна заканчиваться стиранием рабочей копии.
В централизованных базах работу конечного пользователя можно организовать на упрощенных терминалах. Вся обработка информации производится на центральном сервере клиенту выдается готовый ответ. Центральный сервер должен быть дубль машиной (работают одновременно две машины одна ведущая другая ведомая в случае разногласий должен вмешаться администратор ).
Вопрос №27. Жизненный цикл базы данных
Жизненный цикл - это развитие системы базы данных во времени.
Поэтому жизненный цикл базы данных можно разбить на следующие основные стадии:
Проектирование;
Эксплуатация;
Вывод из эксплуатации.
Проектирование.
На стадии проектирования разрабатываются технический и рабочий проекты.
Техническое проектирование.
Во время технического проектирования базы данных проектировщик должен проделать следующую работу:
1. Обследовать предметную область автоматизации.
2. Определить объекты и перечень их атрибутов, для каждого объекта выделить первичные ключи и провести нормализацию.
3. Установить все структурные, иерархические связи между объектами и все запросные связи, обеспечивающие обработку всех запросов пользователей и баз данных. Начертить схему проекта со всеми объектами и связями.
4. Выработать технологию обслуживания базы данных
5. Выбрать компьютер и инструментальные средства (конкретную СУБД) для реализации.
6. Проверить корректность проекта.
7. Определить сроки реализации банка данных.
Рабочее проектирование.
На стадии рабочего проектирования базы данных необходимо проделать следующие работы:
1. Описать средствами СУБД и ввести в ЭВМ схемы всех отношений.
2. Разработать интерфейсы пользователей с базой данных.
3. Разработать программное обеспечение базы данных для всех приложений.
4. Заполнить базу данных контрольными данными и отладить ее.
5. Разработать контрольные примеры, провести тестирование системы и скорректировать технологию ее обслуживания.
6. Составить необходимые инструкции по системе и обучить пользователей.
Эксплуатация.
Ввод в эксплуатацию банков данных довольно длительный и сложный процесс, который предусматривает:
Организацию сбора информации
Заполнение БД
Сдачу БД в эксплуатацию
Реорганизация и реструктуризация при эксплуатации
Вывод из эксплуатации.
Существует правило, что сведенья из Базы Данных не должны уничтожаться, а передаются в Государственный архив. Срок хранения в архиве определяется ценностью информации. Так данные о заработной плате хранятся 75 лет. В архиве все хранится на магнитных лентах, поэтому вся База Данных переносится на твердый носитель. Выгрузка Базы Данных организовывается не по записям, а по полям. При этом может возникнуть сбой, если сдвинулся один из реквизитов. Поэтому при выгрузке Базы Данных происходит подсчет контрольных сумм в двоичном виде по строкам и по столбцам для нахождения сбоя в Базе Данных. Но при восстановлении утерянных символов существует опасность (10 процентов) получения неверного результата. Поэтому лучше заново загрузить блок. В этом случае надежность гарантируется.
Вопрос №28. Статические и динамические структуры данных, их особенности.
Ответ:
Существуют динамические и статические объекты. У обычные переменные сразу после её описания резервируется область памяти, и эта область закрепляется за переменной на все время работы программы. Такого рода переменные называют статическими переменными. Часто бывает так, что какая-то переменная нужна не на всё время выполнение программы, а только на какую-то часть этого времени. Такие временные программные объекты могут занимать значительный объем памяти и одновременное существование всех таких объектов может потребовать столь большого объема машинной памяти, что соответствующая программа просто не сможет разместиться в ограниченной оперативной памяти машины. Переменные которые могут резервировать область памяти, а затем снова освобождать во время выполнения программы стали называть динамическими. Динамические объекты будут возникать в процессе выполнения программы, а действия над ними необходимо задавать уже до выполнения.
В Паскале для работы с динамическими объектами предусматривается специальный тип переменных, так называемый ссылочный тип. Каждому динамическому объекту в программе сопоставляется статическая переменная ссылочного типа. В терминах этих ссылочных переменных обосновываются действия над соответствующими динамическими объектами.
Динамические объекты и ссылки:
<имя ссылочного типа> = ^ <имя типа>,
где
^ - называемая “крышка”, признак ссылочного типа,
<имя типа> - это имя либо статического, либо ранее описанного типа значения.
Рассмотрим листинг программы написанный на языке Паскаль:
Uses
Crt;
Type
masiv = array[1..10] of Integer;
DinMas = ^masiv;
RefMas = ^Real;
Var
p, d :Integer;
q
: ^ char;
RabMas
:DinMas;
RefMas
: array [1..15] of RefReal;
r
:Integer;
Begin
End;
Значение переменной р может быть ссылкой на динамический объект целого типа. Значение переменной q - ссылка на динамический объект литерного типа. Значение переменной RabMas - ссылка на динамический объект значение, которого является массив из 10 целых чисел. Значения статических ссылочных переменных указывают место в памяти соответствующего динамического объекта. поэтому переменные ссылочного типа часто называют указателями.
Динамическому объекту в отличие от статических не дается имен в обычном понимание этого слова. Для ссылки на динамический объект в Паскале имеется такое понятие как переменная с указателем:
<имя переменной с указателем> = <ссылочная переменная> ^ ,
где
<ссылочная переменная> - это имя той статической переменой ссылочного типа, которая в программе поставлена в соответствие данному динамическому типу.
“Крышка” после ссылочной переменной свидетельствует о том, что здесь речь идет не о значении ссылочной переменной, а о значении того программного объекта на которой указывает эта ссылочная переменная.
Отличия использования динамических переменных от статических переменных:
вместо описания самих динамических переменных в программе даются описания указателей(статических переменных ссылочного типа) поставленных в соответствие динамическим переменным;
в подходящем месте программы должно быть представлено порождение каждой из динамической переменной (в Паскале процедура New);
для ссылки на динамическую переменную используется переменная с указателем.
Если в процессе выполнения программы некоторая динамический объект созданный ранее становиться не нужным, то его можно уничтожить, что позволит освободить оперативную память, которую он занимал.
Вопрос №29. Основные технологии программирования. Нисходящая и восходящая технологии программирования.
Ответ:
Методы регламентирующие высокий профессиональный уровень написания программ независимо или почти независимо от языка, операционной системы ЭВМ и решаемой задачи:
система методов, способов и приемов разработки и отладки программ;
совокупность организационно-административных и инженерно-технических средств поддерживающих создание, документирования, распространения и сопровождения программного продукта.
Для описания этих средств применяются графы, диаграммы и т.п. Унифицируется и стандартизируются административно-управленческие приемы и средства, коммуникатируются документация. Регламентируется этапность жизненного цикла программного продукта и применительно к этим этапам, разрабатывается нормативы производительного труда, надежность и качества изделий.
Основой технологии программирования служит модульность программы главной чертой которой является:
стандартизация;
паспортизация модулей;
межмодульный интерфейс;
унификация.
Технология программирования базируется на поэтапном построение программ, т. е. нисходящее и восходящее проектирование. Необходимость перехода к нисходящему проектированию при создании больших систем программного обеспечения стала очевидной в результате неудачных попыток по созданию программ из методов восходящего проектирования. Метод восходящего проектирования заключается в том, что вначале разрабатывается отдельные модули на языке низкого уровня, а затем они объединяются в систему. Поэтому недостатки проекта часто обнаруживаются только при отладке программного комплекса, т. е. оказывается, что множество модулей было написано и проверено только для того, чтобы быть затем забракованными. В противоположность этому при нисходящем проектировании сначала пишут и проверяются управляющие программы, а функциональные модули добавляют в процессе разработки системы. Таким образом, создание системы происходит путем её расширения уровень за уровнем с проверкой и объединением модулей в процессе программирования, а не после её окончания. На каждом уровне процесса проектирования отрабатываются программы обслуживания и определяются данные.
Нисходящее проектирование систем программного обеспечения обычно начинается с логического проектирования, обеспечивающего согласованную работу нескольких модулей, которым необходим доступ к совместно используемым данным.
Легко заметить, что преимущество нисходящего проектирования по сравнению с восходящим есть преимущество процесса при наличии обратной связи по сравнению с процессом без обратной связи. При восходящем проектировании программы не проверяются как составная часть системы до окончания разработки. При нисходящем же проектирование их проверяют сразу, в контуре системы. Если допущены ошибки в проектирование или в программирование, нисходящее проектирование позволяет обнаружить их на ранних этапах, когда программа еще находиться у разработчика. Восходящее же проектирование приводит к ошибкам, которые могут быть обнаружены только при комплексной отладки, когда разработчик модуля уже переключился на другую работу.
Разрабатывать программы с использованием метода нисходящего проектирования сложнее, чем применяя метод восходящего проектирования, но затраченные усилия окупаются на этапе объединения и отладки. Реализация метода нисходящего проектирования дает возможность предвидеть, что будет представлять собой система не только по окончанию разработки, но и на каждой промежуточной стадии. Продемонстрируем это на примере строительства моста. При проектирование моста на бумаге сначала изображают ферму, затем другие детали моста, в том числе опоры. Но для строительства моста нужен конструкторский план размещения каждой фермы и их соединений с помощью опор.
Разработка системы программного обеспечения методом восходящего проектирования напоминает проектирование моста на бумаге. Нужен только окончательный проект, и тогда можно надеяться, что и без конструкторского плана все пойдёт гладко. К сожалению, людям, в том числе и конструкторам, свойственно ошибаться, поэтому реализация этого подхода сопровождается рядом трудностей.
Нисходящее проектирование систем программного обеспечения схоже с реальным строительством моста. Нахождение главного звена проекта является важной и значительной технической проблемой. Главное звено - это то, которое разрабатывается как часть системы в первую очередь и является основой для разработки промежуточных и окончательных программ в непрерывном итерационном процессе, включающем кодирование, объединение модулей и тестированием.
Вопрос №30.Алгоритмические языки высокого уровня, их сравнительные характеристики.
Ответ:
Для сравнения выбраны два языка высокого уровня: Паскаль и Си.
Предпосылки.
Программы, написанные на языке Паскаль, отличаются большей надежностью, чем программы, написанные на языке Си. Основной причиной этого является сильная типизация в языке Паскаль, а кроме того, наличие в языке Паскаль более богатого набора типов данных. Это обеспечивает “удобочитаемость” и более высокую мобильность программ, написанных на Паскале, по сравнению с программами, написанными на Си. Однако в силу своей гибкости и отсутствия ограничений язык Си обеспечивает возможность использования его в более широком спектре областей применения.
Типы данных.
Наиболее существенное различие между Си и Паскалем - в трактовке типов данных в каждом из них. Если первый является результатом эволюционного развития безтиповых языков программирования, то второй был создан под влиянием языков программирования и развитой типизацией данных.
Язык программирования является языком программирования с сильной типизацией данных, если:
каждый объект в этом языке программирования принадлежит точно одному из существующих в этом языке в этом языке программирования;
преобразование типов осуществляется только путем преобразования значений из одного типа в другой;
преобразование типов не производится путем трактовки представления значения как данных различных типов.
2. Сравнение особенностей языков СИ и ПАСКАЛЯ
2.1. Типы данных.
2.1.1. Описание переменных.
В языке Си описание переменных выглядит следующим образом:
[класс_памяти] [тип][список_переменных]
Область действия переменной зависит от связанного с этой переменной класса памяти и места в программе, где помещено описание этой переменной. Областью действия переменной может быть составной оператор или блок, функция, файл с исходным текстом, совокупность всех файлов с исходными текстами. Время жизни переменной определяется связанным с этой переменной классом памяти и может совпадать с временем выполнения составного оператора или блока, функции, программы.
Описание переменных в Си может сопровождаться их инициализацией определенным значением. Однако переменные, имеющие структурированные типы (например, массивы), могут быть инициализированы в процессе их описания только в том случае, если они являются статическими. По умолчанию статические переменные инициализируются значением 0. Следствием этого является отсутствие возможности обнаружения ошибок, связанных с неправильной инициализацией переменных.
В языке Паскаль описание переменных выглядит следующим образом:
var список_переменных: тип
Описание переменных в Паскале не может сопровождаться их инициализацией определенным значением. Поэтому инициализация переменных обязательно должна осуществляться до их использования с помощью оператора присваивания или ввода. Переменная является локальной по отношению к процедуре, внутри которой она описана, и глобальной по отношению к процедурам, вложенным в процедуру, внутри которой она описана. Время жизни переменной совпадает с временем выполнения процедуры, внутри которой она описана.
В Паскале массивы различного размера имеют различный тип. Это приводит к тому, что невозможно написать подпрограмму, аргументом которой является массив произвольного размера. По этой причине, например, невозможно создать библиотеку подпрограмм общего назначения для работы со строками.
В языке Си индексы массивов могут быть только целого типа и всегда начинаются с нуля. В Паскале в качестве индексов массивов могут быть использованы константы и переменные любого скалярного типа, кроме вещественного.
Базовые типы данных.
В языке Си можно выделить три типа данных: символьный, целый и вещественный. Язык Си предполагает три размера целых значений и два размера вещественных. Для манипуляции отдельными битами и адресами значения могут использоваться как беззнаковые.
В языке Паскаль имеется четыре стандартных скалярных типа данных: булевский, символьный, целый, вещественный. Кроме того, программист имеет возможность конструировать новые скалярные типы путем перечисления всех возможных значений. Речь идет о скалярных перечисляемых типах. Например:
type day = (sun, mon, tue, wed, thu, fri, sat)
Значения нового типа будут представляться идентификаторами, которые будут константами этого нового типа. Теперь имеется возможность описания переменны нового типа:
var d1,d2: day
В Паскале имеется возможность конструировать новые скалярные типы данных путем выделения поддиапазона из одного ранее определенного скалярного типа данных за счет указания нижней и верхней границ этого поддиапазона.
Type
weekday = ( mon .. fri); { поддиапазон типа }
digit = ‘0’ . . ‘9’; {поддиапазон множества допустимых символов}
2.1.3. Символические константы.
В языке Си определение символической константы реализовано как макроопределение, обрабатываемое препроцессором транслятора с языка Си. Например
# define DAYS 29 { присваивается значение}
# define WEEK (DAYS /7 ) { присваивается значение выражения}
В языке Паскаль описание символической константы осуществляется с помощью служебного слова const. Например,
const имя = значение
Значения в описаниях символических констант могут быть любого из скалярных типов. Использовать выражения при описании символических констант в Паскале запрещается.
Указатели
Указатели в языке Си могут указывать на объекты различных типов. В отличие от языка Си в языке Паскаль ссылки (указатели) используются только для доступа к динамическим объектам специфицированного типа. Ссылки не могут использоваться в Паскале для доступа к объектам, описанным явным образом.
Выделение и освобождение памяти не является частью языка Си, в то время как они являются частью языка Паскаль. При использовании Паскаля о выделении памяти для размещения некоторого объекта памяти заботится сам транслятор с языка Паскаль. При использовании Си ответственность за выделение памяти для размещения некоторого объекта возлагается на программиста, который должен явно указать размер выделяемой памяти, а это служит дополнительным потенциальным источником ошибок.
2.2. Операторы.
Управляющие конструкции в языках Си и Паскаль похожи, но есть некоторые отличия.
Имеющийся в Си оператор-переключатель switch обеспечивает нахождение необходимой ветви, выполнение списка операторов , соответствующего этой ветви, и списка операторов, соответствующих всем следующим за ней ветвям. Чтобы ограничиться лишь списком операторов, соответствующим найденной ветви, необходимо в качестве последнего оператора в этом списке использовать оператор завершения break, который обеспечивает выход из оператора -переключателя switch. Это является недостатком, поскольку ухудшает “удобочитаемость”, надежность и модифицируемость программ, особенно в тех случаях, когда для различных альтернатив используются частично - перекрывающиеся фрагменты. В Паскале оператор варианта case обеспечивает выбор одной из взаимоисключающих альтернатив, что более удобно по сравнению по switch в Си. Однако case в Паскале не обеспечивает возможности выполнения некоторых действий, если среди ветвей отсутствует необходимая (такая возможность легко обеспечивается оператором-переключателем switch в Си с помощью служебного слова default ). Это неудобно, поскольку требует перед выполнение case явным образом выявлять наличие такой ситуации.
В языке Си отсутствует оператор цикла, аналогичный оператору цикла for в Паскале, в котором он гарантированно завершается, а направление изменения переменной цикла (увеличение и уменьшение) в нем определено лексически и число итераций известно заранее, т.е. до момента входа в этот оператор ( если только выход из этого оператора не осуществляется с помощью оператора перехода goto ). Эти свойства оператора цикла for в языке Паскаль улучшают “удобочитаемость” программ и облегчает их верификацию. К сожалению, приращение переменной цикла for в Паскале ограничено лишь значениями +1 и -1, что является серьезным неудобством.
В Паскале отсутствуют операторы безусловной передачи управления, аналогичные оператору завершения break и оператору продолжения continue в языке Си. Это вынуждает использовать оператор перехода goto или дополнительные переменные, обеспечивающие возможность выявления исключительных ситуаций. Кроме того, необходимо отметить недостаток оператора goto в языке Паскаль, связанный с тем, что в качестве меток используют не мнемонические обозначения, а целые значения без знака.
Неявное преобразование типов в процессе выполнения оператора присваивания в Паскале разрешено только в двух случаях - от типа с более узким диапазоном к типу с более широким диапазоном для ограниченных (интервальных) типов и от целого к вещественному. В Си неявное преобразование типов в процессе выполнения оператора присваивания разрешено всегда независимо от типов операндов в левой и правой частях оператора присваивания.
2.3. Структура программ.
Язык Паскаль навязывает жесткую последовательность расположения частей программы для обеспечения возможности проведения однопроходной трансляции. Тело программы располагается не непосредственно за описанием данных, а отделяется от него описанием процедур и функций. Это ухудшает “удобочитаемость” программ. В Си имеются лучшие средства структуризации программ. В частности, переменные могут быть описаны в начале любого блока, что стимулирует использование локальных переменных.
В отличие от Си в Паскале существует два типа подпрограмм - подпрограммы, возвращающие некоторое значение (функции), и подпрограммы, не возвращающие никакого значения (процедуры). Введение в Паскаль двух типов подпрограмм преследовало цель улучшения “удобочитаемости”. Функции в Паскале могут возвращать значения любых скалярных типов или указатели, кроме значения структурированных типов. В языке Си функции могут возвращать значения любых типов, кроме массивов. В отличие от языка Си в Паскале допускается вложенность процедур и функций друг в друга.
В Паскале число фактических параметров должно быть равно числу формальных параметров, указанных при описании подпрограммы. В частности, невозможно написать подпрограмму, имеющую переменное число параметров. В языке Си можно написать функцию, имеющую переменное число параметров, но реализация таких функций, как правило, оказывается машинно-зависимой, что приводит к потере мобильности.
В отличие от Си в Паскале подпрограммы завершаются только в результате выполнения последнего оператора подпрограммы. Это соответствует философии структурного программирования, в соответствии с которой каждая языковая конструкция должна иметь ровно один вход и ровно один выход. Однако с практической точки зрения это оказывается не совсем удобно, поскольку требует использования оператора перехода goto.
Вопрос №31. Структурное программирование
Структурное программирование – это метод, предполагающий создание улучшенных программ. Он служит для организации проектирования и кодирования программ таким образом, чтобы предотвратить большинство логических ошибок и обнаружить те, которые допущены.
Структурное программирование включает три главные составляющие:
проектирование сверху-вниз;
модульное программирование;
структурное кодирование.
Метод проектирования программ “сверху-вниз” вначале предусматривает
определение задачи в общих чертах, а затем постепенное уточнение структуры путем внесения более мелких деталей. Построение программы представляет собой последовательность шагов такого уточнения. Первоначально рекомендуется описать задачу на естественном языке. На каждом последующем шаге необходимо выявить основные функции, которые нужно выполнить, т.е. данная задача разбивается на ряд подзадач до тех пор, пока они не станут настолько простыми, что каждой из них будет соответствовать один модуль, который можно записать на алгоритмическом языке. Причем действие каждого модуля может быть описано одной фразой. Далее должны быть описаны данные, отмечены основные структуры и вид обработки данных. Каждый модуль должен иметь тестовые данные, описываемые вместе с модулем, которые впоследствии используются на этапе тестирования.
Модульное программирование – это искусство разбиения задачи на некоторое число модулей, умение широко использовать стандартные модули путем их параметрической настройки.
Структурное кодирование состоит в получении правильной программы из некоторых простых логических структур. Оно базируется на строго доказанной теореме о структурировании, которая утверждает, что любую правильную программу (с одним входом, одним выходом, без зацикливания и недостижимых команд) можно написать с использованием только следующих основных логических структур: линейная (следование), нелинейная (развилка) и циклическая (цикл, или повторение).
Комбинации правильных программ, полученные с использованием этих трех основных структур, также являются правильными программами. Причем каждая структура имеет один вход и один выход. Применяя итерацию и вложение основных структур, можно получить программу любого размера и сложности. При использовании только указанных структур отпадает необходимость в безусловных переходах и метках. Поэтому иногда структурное кодирование понимают в узком смысле как программирование без “GOTO”.
Вопрос №32. Основные принципы тестирования и верификации программ
Тестирование является одним из этапов жизненного цикла ПИ, направленным на повышение качественных характеристик. При создании типичного ПИ около 40% общего времени и более 49% общей стоимости расходуется на проверку (тестирование) разрабатываемой программы.
Программы как объекты тестирования имеют ряд особенностей, которые отличают процесс их тестирования от общепринятого, применяемого при разработке аппаратуры и других технических изделий. Особенностями тестирования ПИ являются:
отсутствие эталона (программы), которому должна соответствовать тестируемая программа;
высокая сложность программ и принципиальная невозможность исчерпывающего тестирования;
практическая невозможность создания единой методики тестирования (формализации процесса тестирования) в силу большого разнообразия ПИ по их сложности, функциональному назначению, области использования и т.д.
Применительно к ПИ тестирование – это процесс многократного выполнения программы с целью обнаружения ошибок .
Программа тестируется для того, чтобы повысить уровень ее надежности,
т.е. выявить максимальное число ошибок.
Цель тестирования – выявление как можно большего числа ошибок.
Из правильного определения тестирования вытекает ряд принципов, которые интуитивно ясны, но именно поэтому на них не обращают внимания.
Принцип 1. Процесс тестирования более эффективен, если проводится не автором программы.
Тестовый прогон, в результате которого не выявлено ошибок считается неудачным (неэффективным). Таким образом, тестирование – это процесс деструктивный (разрушительный). И особенно трудным и малоэффективным он является для самого автора программы, так как после выполнения конструктивной части при проектировании и написании программы ему трудно перестроиться на деструктивный образ мышления и, создав программу, тут же приступить к пристрастному выявлению в ней ошибок. Очевидно, что обнаружение недостатков в своей деятельности противоречит человеческой психологии.
Принцип 2. Описание предполагаемых значений результатов тестовых прогонов должно быть необходимой частью тестового набора данных.
Этот принцип довольно сложно, а в некоторых случаях даже невозможно реализовать на практике. Сложность его заключается в том, что при тестировании программы (модуля) необходимо для каждого входного набора данных рассчитать вручную ожидаемый результат или найти допустимый интервал изменения выходных данных. Процесс этот очень трудоемкий даже для небольших программ, так как он требует ручных расчетов, следуя логике алгоритма программы.
Из рассмотренного принципа, который трудно реализуем, но которого следует придерживаться логически, вытекает следующий.
Принцип 3. Необходимо досконально изучать результаты каждого теста.
Из практики видно, что значительная часть всех обнаруженных в конечном итоге ошибок могла быть выявлена в результате самых первых тестовых прогонов, но они были пропущены вследствие недостаточно тщательного анализа первых тестовых прогонов.
Принцип 4. Тесты для неправильных и непредусмотренных входных данных должны разрабатываться также тщательно, как для правильных, предусмотренных.
При обработке данных, выходящих за область допустимых значений, в тестируемой программе должна быть предусмотрена диагностика в виде сообщений. Если же сообщение о причине невозможности обработки по предложенному алгоритму отсутствует, и программа завершается аварийно или ведет себя непредсказуемо, то такая программа не может считаться работоспособной и требует существенной доработки.
Принцип 5. Необходимо проверять не только, делает ли программа то, для чего она предназначена, но и не делает ли она то, что не должна делать.
Необходимо любую программу проверить на нежелательные побочные эффекты. Например, если программа обработки и печати какой-нибудь ведомости дублирует первую или последнюю строку, то она содержит ошибку.
Принцип 6. Вероятность наличия необнаруженных ошибок в части программы пропорциональна числу ошибок, уже обнаруженных в этой части.
Из этого принципа можно сделать вывод: если в какой-нибудь части программы обнаружено больше ошибок, чем в других, то ее необходимо тестировать более тщательно.
Метод верификации
Один пользователь заполняет БД с документов, второй сравнивает на соответствие Таким образом выявляются ошибки. (массивный подход)
Один заполняет, второй заполняет посимвольно. При этом ошибки блокируются в дальнейшем заполнении БД. (символьный подход)
Верность данного метода составляет 95-98%. Остальные 2-5% достоверности информации обнаруживаются после использования БД.
Немедленное размещение собранных на входных бланках данных в БД не представляется целесообразным по следующим причинам:
данные неминуемо содержат большое число ошибок, допущенных как при сборе информации, так и при переносе ее на бланки. Эти ошибки проще выявить и исправить до загрузки данных в БД. Попытка же помещения в БД ошибочных данных может привести к нарушению ограничений целостности, что в конечном счете скажется на эффективности информационной системы;
собранные данные отражают форматы входных бланков, которые, в свою очередь, разработаны на основе структуры исходных документов. При этом организация данных не ориентирована на оптимизацию алгоритма загрузки БД, вследствие чего непосредственный ввод в базу данных может оказаться крайне длительной процедурой, а соответствующий алгоритм неоправданно сложным.
Поскольку речь идет о вводе большой и заранее подготовленной порции данных, то перед загрузкой в БД целесообразнее выполнить проверку корректности данных и преобразовать их к виду, ориентированному на последующую обработку. На входе такой программы используются значения заполненных входных бланков, а на выходе - протокол обнаруженных ошибок и файл, содержащий подмножество данных со структурой, ориентированной на алгоритм их загрузки в БД. Назовем этот файл загрузочным файлом (ЗФ).
На практике функции контроля и преобразования могут выполнять несколько программ, каждая из которых ориентирована на определенный формат входного бланка.
Выявленные ошибочные данные подлежат исправлению, повторному вводу.
Вопрос №33. Физическая и логическая структуры данных на диске под управлением операционной системы MS-DOS.
Ответ:
Физический формат диска
Информация размещается в секторах фиксированной длины, расположенных на концентрических дорожках поверхности диска. Число секторов на дорожке конкретного носителя также постоянно.
Диск может иметь одну или две рабочих поверхности. НЖМД содержит один или более дисков. Однако под жестким диском обычно понимают весь пакет магнитных дисков. Число дорожек на поверхности дискеты (число цилиндров), как правило, составляет 40 или 80. Жесткие диски могут иметь несколько сотен тысяч цилиндров. Количество рабочих поверхностей и цилиндров является аппаратной характеристикой дисковода. Программист может (в рамках допустимого диапазона) изменить число цилиндров.
Число секторов на дорожке задается программно (драйвером устройства). Стандартными для различных НГМД являются величины 8, 9, 15 и 18. Жесткие диски имеют обычно 17, 32 или более секторов на дорожку. Также как и число цилиндров программист может изменить приведенные значения.
Каждый сектор состоит из поля данных и поля служебной информации, ограничивающей и идентифицирующей его. Размер сектора также устанавливается драйвером. Пользовательский интерфейс DOS поддерживает единственный размер сектора - 512 байт. BIOS же непосредственно предоставляет возможности работы с секторами 128, 256, 512 или 1024 байт. Можно также в ручную обрабатывать секторы с другими размерами.
Число цилиндров, секторов на дорожке и размер сектора устанавливаются при форматировании диска и в последующем без повторной его инициализации изменены быть не могут.
Заметим, что изощренным программированием контроллера дисковода можно добиться форматирования диска с различными числом секторов на дорожках и размерами секторов. Такая техника часто используется разработчиками ПО с целью защиты программных продуктов от несанкционированного копирования. Например, на одной из дорожек можно создать дополнительный сектор, содержащий ключ (пароль). Программный продукт при запуске проверяет его наличие и реагирует на его отсутствие прекращением работы. Системные средства копирования дисков и файлов оставят этот сектор незамеченным, вследствие чего несанкционированная копия программного изделия функционировать не будет. Описанная техника широко применялась для 8-секторных дискет, где остается место для девятого сектора. Имеются и такие системы защиты, которые записывают ключи в межсекторные промежутки.
Физический адрес сектора на диске представляется триадой [t-h-s], где t - номер цилиндра, h - номер рабочей поверхности диска, а s - номер сектора на дорожке. Номер цилиндра t лежит в диапазоне 0..T-1, где Т - количество цилиндров. Номер рабочей поверхности диска h принадлежит диапазону 0..H-1, где Н - число магнитных головок в приводе. Номер сектора на дорожке s указывается в диапазоне 1..S, где S - количество секторов на дорожке.
Напомним, что обмен информацией между ОЗУ и дисками физически осуществляется только секторами.
Логический формат диска
Каждая дискета обычно рассматривается DOS как единственный логический диск.
Жесткий диск организуется иначе. Он может быть подразделен на несколько разделов, используемых различными ОС. Максимальное число разделов равно четырем. Собственно DOS может использовать один или два раздела. Первый из них должен быть первичным разделом DOS, второй - может быть только расширенным разделом DOS. В первичном разделе DOS может быть сформирован только один логический диск, а в расширенном - любое их количество. Каждый логический диск "управляется" своим логическим приводом.
На логическом уровне считается, что секторы логического диска имеют непрерывную нумерацию от 0 до N-1, где N=T*H*S - количество секторов на диске. Соответствие между физическим адресом сектора и его логическим номером n (для дискет) определяется следующей формулой:
n=(t*H*S)+(h*S)+s-1 (2.1)
Таким образом, сначала нумеруются секторы на нулевой дорожке нулевой поверхности, затем - на нулевой дорожке первой поверхности и т.д. После перенумерации секторов на нулевых дорожках всех поверхностей описанный процесс повторяется для первой и всех последующих дорожек.
Каждому логическому диску на винчестере соответствует своя (относительная) логическая нумерация. Физическая же адресация жесткого диска сквозная. В формуле (2.1) это нужно учитывать, вычитая из вычисленного n абсолютный логический номер первого сектора данного логического диска, чтобы получить смещение в секторах относительно его начала (т.е. относительный логический номер).
Формулу (2.1) можно использовать и в обратном направлении для определения физического адреса сектора по его логическому номеру:
t = n / (H * S) (2.2)
h = (n - (t * H * S)) / S (2.3)
s = n - ((t * H * S) + (h * S)) + 1 (2.4)
Здесь символ / обозначает целочисленное деление.
Приведенные выше формулы для дискет с единственным логическим диском можно использовать без каких-либо поправок. Для жестких дисков дело обстоит несколько иначе: полученные t, h и s нужно увеличить на значения, соответствующие задействованной в других целях предшествующей области дискового пространства.
Логическое дисковое пространство любого логического диска делится на две области: системную область и область данных.
Системная область логического диска создается и инициализируется при форматировании, а в последующем обновляется при манипулировании файловой структурой. Область данных логического диска содержит файлы и каталоги, подчиненные корневому. Она в отличие от системной области доступна через пользовательский интерфейс DOS.
Системная область состоит из следующих, расположенных в логическом адресном пространстве подряд, компонентов:
загрузочной записи (BR - Boot Record);
зарезервированных секторов (RSec - Reserved Sector);
таблицы размещения файлов (FAT - File Allocation Table);
корневого каталога (RDir - Root Directory).
BR находится в секторе с физическим адресом [0-0-1] (для дискеты) и содержит блок параметров диска (DPB - Disk Parameter Block), а также блок начальной загрузки (БНЗ). Сектор, содержащий BR, называется стартовым.
За BR могут располагаться несколько RSec, используемых DOS. Стартовый сектор логического диска с BR относится к числу RSec. Обычно это единственный RSec на логическом диске. FAT является очень важной информационной структурой. Она представляет собой карту (образ) области данных, в которой описывается состояние каждого кластера и связываются в цепочку принадлежащие одному файлу (некорневому каталогу) кластеры. Кластер - это минимальная единица дисковой памяти, выделяемая файлу (или некорневому каталогу). Каждый из них занимает целое число кластеров. Последний кластер при этом может быть задействован не полностью. Кластер представляет собой один или несколько смежных секторов в логическом дисковом адресном пространстве (точнее - только в области данных). На дискетах кластер занимает один или два сектора, а на жестких дисках - обычно четыре или восемь секторов.
Логическое разбиение области данных на кластеры как совокупности секторов взамен использования одиночных секторов имеет следующий смысл:
- уменьшается возможная фрагментация файлов;
- уменьшается размер FAT, а следовательно, и объем системной области логического диска;
- ускоряется доступ к файлу, так как в несколько раз сокращается длина цепочек фрагментов дискового пространства, выделенных для него.
Однако слишком большой размер кластера ведет к неэффективному использованию области данных, особенно в случае большого количества маленьких файлов.
В связи с тем, что FAT используется при доступе к диску очень интенсивно, она обычно загружается в ОЗУ (в буфера ввода-вывода или кэш) и остается там настолько долго, насколько это возможно.
В связи с чрезвычайной важностью FAT она обычно хранится в двух идентичных экземплярах, второй из которых непосредственно следует за первым. Обновляются копии FAT одновременно. Используется же только первый экземпляр. Если он по каким-либо причинам окажется разрушенным, то произойдет обращение ко второму экземпляру.
RDir является корнем древовидной файловой структуры логического диска и не может удален никакими средствами. В связи с тем, что память под RDir выделяется статически, имеется ограничение количества содержащихся в нем файлов и подкаталогов.
Некорневые каталоги в области данных размещаются аналогично файлам (динамически), вследствие чего на их длину ограничение не накладывается.
В BR и FAT хранится дескриптор носителя, чтобы можно было быстро определить формат логического диска. Однако он обладает определенной неоднозначностью.
Особенности формата логического диска на винчестере состоят в следующем:
- увеличен размер кластера;
- увеличены размеры FAT и RDir;
- элементы FAT могут быть 16-битными;
- максимальное число элементов корневого каталога обычно составляет 512;
- дескриптором носителя является F8H.
На жестком диске имеется односекторная главная загрузочная запись (MBR - Master Boot Record), содержащая внесистемный загрузчик (NSB - Non-System Bootstrap), а также таблицу разделов (PT - Partition Table) и имеющая физический адрес [0-0-1]. Таблица разделов (Partition Table) - структура данных, указывающая на разбиение жесткого диска на части. Она описывает размещение и характеристики имеющихся на винчестере разделов.
Таким образом, в стартовом секторе физического жесткого диска находится не BR, а MBR.
NSB служит для копирования в ОЗУ блока начальной загрузки из BR логического диска в активном разделе и передачи на него управления, что осуществляется при загрузке DOS.
Вслед за MBR размещаются разделы.
Первичный раздел DOS включает только системный логический диск без каких-либо дополнительных информационных структур.
Расширенный раздел DOS можно рассматривать как жесткий диск в миниатюре: он содержит вторичную MBR (SMBR - Secondary MBR), в состав которой вместо PT входит таблица логического диска (LDT - Logical Disk Table), ей аналогичная. LDT описывает размещение и характеристики раздела, содержащего единственный логический диск, а также может специфицировать следующую SMBR. Следовательно, если в расширенном разделе DOS создано m логических дисков, то он содержит m SMBR, связанных в список. Каждый элемент этого списка описывает соответствующий логический диск и ссылается (кроме последнего) на следующий элемент списка.
Вопрос №34 Организация разработки АРМ
Предпроектное обследование объекта автоматизации (анализ функций разработчика, типы информации, типы информационных связей)
Создание документации на АРМ
Цели, назначения системы(для чего этот АРМ предназначен)
Описание объекта автоматизации (фиксируется ,что за должность выполнял работник до времени автоматизации)
Требования к авт. функциям (каким требованиям будет удовлетворять объект после автоматизации)
Требования к видам обеспечения:
ТО (согласуется с заказчиком);
ПО (более подробно расписать способность к адаптации, к изменению условий эксплуатации, граничные спецификации системы)
ИО :
указать структуру (поле, тип, длина, комментарии)
граничные спецификации
администрирование (способы реорганизации и реструктуризации)
ОИ (меры и действия, которые должен предпринять заказчик для эксплуатации системы)
План - график работ
Виды работ |
Срок |
Цена |
Итоги:
Этап проектирования (определение алгоритмов выполнения функций с выбором технических и программных средств)
Этап реализации проекта (программирование и кодирование)
Ввод в эксплуатацию и сопровождение
Вопрос №35. Состав типовых пакетов прикладных программ
По современным взглядам, ППП – это совокупность совместимых программ для решения определенного класса задач.
Совместимость программ, составляющих ППП, означает возможность их взаимного использования, общность структуры управляющих данных и используемых информационных массивов. Кроме того, ППП следует рассматривать как самостоятельное программное изделие, как особый вид прикладного ПО.
В зависимости от функционального назначения выделяют ППП, расширяющие возможности ОС.
Среди пакетов, предназначенных для решения прикладных задач пользователей, иногда выделяют методо-ориентированные и проблемно-ориентированные пакеты.
Проблемно-ориентированные пакеты предназначены для решения групп задач, использующих общие данные. Это наиболее многочисленная группа пакетов. Проблемная ориентация может выражаться в общем характере операций, выполняемых пакетом.
Проблемная ориентация может быть представлена и общей прикладной проблемой, решение которой распадается на отдельные задачи, для каждой из которых в пакете предусмотрен свой алгоритм.
Составные части ППП:
ПВЯ Управляющая
программа Информационная
база
Обслуживающие Обрабатывающие
модули модули
Описание конкретного задания пользователя на входном языке пакета называют программой на входном языке.
Обрабатывающие модули выполняют преобразование данных, составляющих информационную базу пакета.
Чтобы обеспечить взаимодействие пакета с пользователем и управляющих модулей пакета с информационной базой и обрабатывающими модулями, в состав пакета включаются обслуживающие модули.
Таким образом, ППП можно рассматривать как объединение входного языка, информационной базы, управляющих, обслуживающих и обрабатывающих программных модулей. Совокупность обрабатывающих модулей часто называют функциональным наполнением пакета. Управляющие и обслуживающие модули называются системной частью пакета, или системным наполнением пакета.
Вопрос №38. "Процесс передачи данных. Спектральное представление сигналов".
Сигнал - физический процесс, отображающий передаваемое сообщение (т.е. совокупность знаков, содержащих ту или иную информацию).
Сигнал является функцией времени, даже если сообщение таковым не является. Если сигнал представляет собой функцию U(t), принимающую только определенные дискретные значения Un (например, 0 или 1), то его называют дискретным по состоянию. Если сигнал принимает любые значения в некотором интервале, то он называется непрерывным по состоянию.
Иногда сигнал задается не на всей оси времени, а только в определенные моменты времени tn. Такие сигналы называются дискретными по времени, в отличие от непрерывных по времени, заданных на всей оси t.
Сигнал является объектом транспортировки по каналам связи. Поэтому определяют параметры сигнала:
длительность сигнала Tc;
динамический диапазон Hc;
ширина спектра Fc.
Любой сигнал, рассматриваемый как временной процесс, имеет начало и конец. Поэтому Длительность сигнала определят интервал времени, в пределах которого сигнал существует.
Динамический диапазон определяется как отношение наибольшей мгновенной мощности сигнала к той наименьшей мощности, которую надо отличать от 0 при заданном качестве передачи. Выражается обычно в децибелах.
Ширина спектра дает представление о скорости изменения сигнала внутри интервала его существования. Ширина спктра сигнала определяется диапазоном частот, в пределах которого сосредоточена его основная энергия.
Вводят еще одну характеристику - объем сигнала Vc, которая дает общее представление о возможностях данного ансамбля сигналов, как переносчиков сообщений. Чем больше Vc ,тем больше информации можно "вложить" в этот объем, и тем труднее передать такой сигнал по каналу связи.
Vc = Tc * Hc * Fc.
Обобщенная структура передачи информации:
s(t) z(t)
И АЦП КИ КК Мод среда Демод ДекК ДекИ ЦАП П
?(t) ?(t)
система синхронизации
Цифровой канал передачи информации
И - источник может быть аналоговым (например, человек, говорящий по телефону) и цифровым (например, компьютер).
Из источника информация передается в АЦП - аналогово - цифровой преобразователь, в котором происходит преобразование этой информации по уровню и времени. Преобразованная информация поступает в КИ - кодер источника, уменьшающий избыточность информации. Далее информация предается в КК - кодер канала. Кодер канала учитывает специфику среды распространения сигнала, проявляющуюся в характере ошибок, вносимых в процесс передачи. Затем Мод - модулянт перекладывает передаваемую информацию на физический переносчик (сигнал) s(t). На среду передачи сигнала действуют помехи: ?(t) - мультиплекативные помехи (умножаются на сигнал) и ?(t) - аддитивные помехи (складываются с сигналом). В итоге получаем процесс z(t) = ?(t) * s(t) + ?(t). Этот процесс проходит стадию демодуляции Демод, т.е. процесс снятия информации с физического носителя и его фильтрация. Процессы, происходящие в ДекК, ДекИ и ЦАП позволяют получателю П получить переданную информацию не в цифровой, а в аналоговой форме.
Если передача информации происходит поочередно источником и получателем, то это симплексная линия передачи. При одновременной передачи информации источником и каналом - дублексная линия передачи.
Вопрос №39. "Способы повышения надежности передачи данных".
Служба обеспечения безопасности информации - совокупность различных мероприятий (правовых, организационных, технических), направленных на предотвращение или существенное затруднение ущерба интересов поставщиков и потребителей информации.
Основная целенаправленность мер:
обеспечение целостности информации (полноты, точности, достоверности);
сохранение конфиденциальности информации, предупреждение несанкционированного получения информации;
обеспечение доступности информации, т.е. доступа к информации пользователей, имеющих на то надлежащие полномочия.
Угрозы информационной безопасности:
перехват данных;
анализ трафика посторонним лицом;
изменение потока сообщений;
повтор процесса установления соединения и передачи сообщения;
отказ пользователя от сообщений, инициированный из вне;
нарушение связи;
несанкционированный доступ в службу обработки сообщений;
угроза хранилищу данных.
Защита от этих угроз:
секретность данных;
использование методов аутентификации;
методы обеспечения целостности данных;
управление доступом;
служба сохранности информации;
отслеживание доставки информации.
Организационные аспекты информационной безопасности:
разработка политики информационной безопасности;
анализ рисков;
мероприятия, обеспечивающие информационную безопасность;
план действий в чрезвычайных ситуациях;
подбор средств обеспечения информационной безопасности.
Группы средств обеспечения информационной безопасности:
контроль доступа;
шифрование;
аутентификация;
антивирусная защита;
авторизация входных и выходных потоков;
резервное хранение и восстановление информации.
Вопрос №40. "Основные компоненты информационных сетей".
Мультиплексор передачи данных - устройство, используемое почти во всех системах. Его основная функция - обеспечитьсовместное использование одной линии связи, обычно телефонного канала, несколькими машинами конечных пользователей (ЭВМ или терминал) или портами.
Модем - выступает в качестве стыка между цифровыми системами и аналоговыми устройствами.
Устройство обслуживания данных - полностью обеспечивает цифровой канал. Это цифровая система, осуществляющая передачу 1 или 0 как дискретных цифровых сигналов от одного конечного пользователя к другому.
Оборудование коммутации данных - является фактически основой сети ЭВМ. Основной функцией чвляется коммутация и маршрутизация данных пользователя (трафика) в сети к месту назначения. Оборудование коммутации данных может установить маршрут передачи данных в место назначения через промежуточные компоненты, в том числе и другие коммутационные устройства.
Групповой контроллер - предназначен для управления группой терминалов. Он получает данные от главной ЭВМ и направляет сообщения в удаленные терминалы или из удаленных терминалов.
Вопрос №41. "Эталонная модель взаимодействия открыты систем".
Уровень - это вид услуг, которые должны выполнятся на этом уровне, и средства, которыми эти услуги выполняются.
К средствам относится совокупность правил взаимодействия на определенном уровне, алгоритмы и программы, реализующие эти правила. все это определяется как протокол взаимодействия на определенном уровне.
ЭМВОС предполагает 7 уровней взаимодействия. Услуги предоставляются снизу вверх.
Физический уровень:
Обеспечивает физический контакт между системами и представляет верхнему уровню средства для передачи сигналов и информации (радиоканал, кабельный).
Канальный уровень:
Служит для побитовой передачи сигналов, кодовых комбинаций, обеспечивающих обнаружение и исправление ошибок. реализует средства повышения достоверности передачи (параллельная передача, обратная связь, кодирование). Возможна реализация средств тестирования канала. канальный уровень использует одно или несколько физических соединений.
Сетевой уровень:
Обеспечивает доставку блока информации в соответствии с адресом, указанным в заголовке блока. Настроен в основном на передачу пакетов. Функции уровня:
маршрутизация
ретрансляция
сетевые соединения
мультиплексирование сетевых соединений
сегментация укрупнение
обнаружение и исправление ошибок
упорядочение данных
управление потоками
передача срочных данных
выбор и повторная установка службы
Транспортный уровень:
Обеспечивает прозрачную передачу данных между сеансовыми объектами и освобождает их от выполнения функций по организации надежной и эффективной передачи данных. В 3-х фазах транспортного уровня могут выполнятся следующие функции:
1. фаза установления соединения
выбор сетевого соединения, наиболее удовлетворяющего требованиям сеансового объекта с учетом стоимости качества обслуживания;
решение о целесообразности мультиплексирования или расщепления транспортного соединения с целью оптимизации использования сетевых соединений;
выбор оптимального размера транспортного пакета;
выбор функций, которые будут задействованы в фазе передачи данных;
отображение транспортных адресов в сетевые;
обеспечение идентификации различных транспортных соединений между одной и той же парой транспортных точек доступа;
передача служебных данных.
2. фаза передачи данных
доведение транспортных служебных данных до сеансовых объектов получателей;
упорядочение данных;
укрупнение данных;
сцепление данных;
сегментация данных;
мультиплексирование или расщепление данных;
управление потоком;
обнаружение и исправление ошибок;
передача срочных данных;
разграничение транспортных и служебных данных;
идентификация транспортного соединения.
3. фаза разъединения соединения
оповещение о причине разъединения;
идентификация разъединяемого транспортного соединения;
передача служебных данных.
Сеансовый уровень (уровень сессий):
Устанавливает сеансовые соединения (диалог) между двумя взаимодействующими представительными объектами и поддерживает информационный обмен между ними.
установление сеансового соединения;
разъединение сеансового соединения;
обмен обычными данными;
обмен срочными данными;
управление взаимодействием;
синхронизация сеансового уровня;
оповещение об особых состояниях.
Представительный уровень:
Обеспечивает независимость прикладных объектов от используемого синтаксиса (от правил кодирования передаваемой информации).
запрос установления сеанса;
согласование и повторное согласование синтаксиса;
преобразование синтаксиса;
запрос завершения сеанса.
Прикладной уровень:
Обеспечивает доступ в среду ВОС для прикладных процессов, которые обмениваются информацией посредством прикладных объектов, прикладных протоколов и служб представлений. Кроме передачи данных, прикладная служба (совокупность объектов прикладного уровня) может выполнять следующие услуги:
идентификация партнеров, предполагающих взаимодействие;
определение текущей готовности партнеров, предполагающих взаимодействовать;
установление полномочий для передачи;
согласование механизма секретности;
аутентификация (узнавание) партнера;
определение методологии назначения цен, достаточности ресурсов, приемлемого качества обслуживания;
синхронизация взаимодействующих приложений;
выбор дисциплины диалога, включающей процедуры инициализации и завершения;
согласование ответственности за обнаружение ошибок и процедур управления целостностью данных;
идентификация ограничений по синтаксису данных.
Вопрос №43. "Основные конфигурации локальных и территориальных компьютерных сетей".
ТОПОЛОГИЯ "ОБЩАЯ ШИНА".
В этой топологии компьютеры соединяются единственным кабелем, который называется корпусом (сегмент), а он в свою очередь соединяет все компьютеры сети в одну линию. Сетевые данные в виде электронных сигналов посылаются во все рабочие станции сети; однако, информация принимается только компьютером, адрес которого совпадает с адресом поступающего сигнала. Только один компьютер в данный момент времени может принять сообщение. Так как сигнал посылается полностью в сеть, то он передается из одного конца кабеля в другой. Если сигнал передается непрерывно, то он скачет назад и вперед вдоль кабеля и мешает другим компьютерам принять сигналы. Следовательно, сигналы могут быть остановлены после нахождения нужного адреса.
"Общая шина" - это пассивная топология. Компьютеры на общей шине не отвечают за передвижение данных из одного компьютера в следующий. Если один компьютер не доступен, то это не нарушает покой остальных в сети LAN.
Нарушения в кабеле будут прерывать путь сигнала между двумя концами, последует скачок сигнала, и вся сеть остановится. Нарушения случаются, если кабель был перерезан или если соединение было свободным или не скреплено. Например, если вышел из строя один из компьютеров, он заменяется и кабель не теряет свои свойства, которые могут вызвать в нем нарушения. При нарушениях в кабеле компьютеры в сети будут способны функционировать отдельно. Но так как при нарушениях сеть получается не замкнута, компьютеры не способны функционировать между собой.
ТОПОЛОГИЯ "ЗВЕЗДА".
Эта топология отличается от топологии “общей шины”, тем что все компьютеры соединены кабелем, имеющим центральный компонент. Сигналы передаются из одного компьютера в другой через центральный. Т.е. сигнал покидает один компьютер и попадает в центральный, который отвечает за передачу этого сигнала нужному компьютеру.
Если один компьютер в такой сети вышел из стоя, то он не может передавать или принимать сообщения, и другие компьютеры не могут с ним взаимодействовать.
Если сломался центральный, то все компьютеры функционируют автономно, но сигналы передавать не могут. Что означает действительную зависимость сети.
ТОПОЛОГИЯ "КОЛЬЦО".
Кольцевое соединение компьютеров имеет вид круга. Каждый компьютер не конечный. Сигналы передаются по кольцу по часовой стрелке и проходят через каждый компьютер. В отличие от пассивной “общей шины”, каждый компьютер поддерживает и передает сигнал дальше. В действительности кабель от каждого компьютера проходит через центральный. Все сообщения из компьютера должны пройти через него до того, как попадут в нужный.
Сигналы, которые передаются по кольцу, являются сообщениями. Сообщение передается из компьютера в компьютер, пока не найдет тот, который имеет данные для получения этого сообщения. Передающий компьютер имеет электронный адрес для получения и передачи данных. Затем передающий компьютер передает сигнал, сообщающий о том, что передаются данные. Когда они попадают в нужный компьютер происходит копирование. Сигнал передается по кольцу до тех пор, пока передающий компьютер не получит сигнал о том, что все данные передались. Сигнал передается через каждый компьютер, и неудача одного компьютера отражается на всей сети.
ТОПОЛОГИЯ "ЗВЕЗДА - ОБЩАЯ ШИНА".
Сегодня многие топологии сетей являются комбинациями “Общей шины”, “Звезды” и “Кольца”.
Например, топология “Звезда - Общая шина”. В этой топологии несколько элементов “Звезды” соединяются с линиями “Общей шины”. В этой комбинации, если один компьютер вышел из строя, это не скажется на сети. Другие компьютеры будут связываться друг с другом. Если центральный вышел из строя, то все компьютеры, подсоединенные к нему не будут взаимодействовать с другими. Если центральный, который вышел из строя, является связующим между двумя другими центральными, то сеть будет разъединена, и сообщения между ними передаваться не будут.
Вопрос №44. Многопользовательские и многозадачные операционные системы
Назначение ОС состоит в организации выполнения программ пользователей.
Для того чтобы выполнить какую-либо программу пользователь должен передать в ОС сведения об этой программе. По способу передачи этой информации различают ОС пакетной обработки и диалоговые ОС. (см. рис.).
Наиболее развитой системой пакетной обработки является оперативная система ЕС ЭВМ.
Пакетная обработка может быть организована как в однозадачном, так и в мультизадачном режиме.
Диалоговая ОС может быть предназначена для одновременного обслуживания одного или нескольких пользователей. Однопользовательские диалоговые ОС обычно разрабатываются для персональных ЭВМ. Многопользовательские диалоговые ОС применяются на больших и малых ЭВМ, оборудование пользователей. Однопользовательские ОС обычно не обеспечивают мультизадачный режим работы, тогда как многопользовательские ОС строятся как мультизадачные.
На следующем рисунке приведен вариант классификации ОС:
Операционные
Системы
Пакетной обработки Диалоговые
О-з М-з ОО-з ММ-з
С фчз Без вп С пчз
С пчз С вп С вп
С вп
Итак, теперь расшифруем все сокращения:
О-з – однозадачные
М-з – многозадачные
ОО-з – однопользовательские однозадачные
ММ-з – многопользовательские мультизадачные
С фчз – с фиксированным числом задач
С пчз – спеременным числом задач
С вп – с виртуальной памятью
Без вп – без виртуальной памяти
Несмотря на довольно четкую классификацию, на вопрос какая ОС лучше нет однозначного ответа. Так например, при решении задач, требующих затрат машинного времени, может оказаться более предпочтительней пакетная обработка, тогда как задачи, время решения которых измеряется секундами, удобнее решать с использованием диалоговых ОС.
Вопрос №46. Характеристики современных операционных систем
С точки зрения пользователя персонального компьютера, операционная система – это группа команд, с помощью которых управляют работой компьютера.
Операционная система позволяет осуществлять совместную работу различных внешних устройств и компьютера.
Перед рассмотрением основных характеристик совершим небольшой экскурс в историю создания и развития операционных систем.
Первой операционной системой была CP/M, разработанная фирмой Digital Research. Операционная система CP/M очень быстро стала стандартом для персональных компьютеров. Она была разработана на базе 8-разрядных микропроцессоров типа Z80, 6800 и 8080. Конструкция микропроцессора ограничивала объем основной памяти 64 Кб. Персональные компьютеры, основанные на применении операционной системы CP/M, продавались в первой половине 1980-х годов.
С появлением новых персональных компьютеров возникла новая операционная система, известная как PC-DOS. Она, в отличие от CP/M, могла функционировать в компьютерах, созданных на базе микропроцессора типа 8088.
Название PC-DOS быстро закрепилось в качестве названия операционной системы для компьютеров фирмы IBM. Та же операционная система, которая предлагалась фирмой Microsoft другим фирмам-изготовителям ЭВМ, получила название MS-DOS.
Но время, как известно, не стоит на месте и быстро развивающаяся индустрия персональных компьютеров начала предъявлять новые требования к характеристикам операционных систем. Поэтому в апреле 1987 года, в один и тот же день, фирмы IBM и Microsoft выпустили новую операционную систему под названием OS/2. Важнейшим ее отличием было увеличение объема основной памяти и многозадачность.
Итак, для изучения основных характеристик операционных систем рассмотрим одну из самых распространенных. Это MS-DOS.
В состав MS-DOS входит большое число внутренних и внешних команд (расширяющееся от версии к версии). Внутренние команды находятся в оперативной памяти после начальной загрузки операционной системы, внешние – хранятся в виде программных файлов на диске и загружаются по запросу.
При вводе любой информации пользователем MS-DOS пытается интерпретировать ее как требование на выполнение внутренней команды. Если такой команды не существует, происходит поиск соответствующего файла на диске, его загрузка (в случае успешного поиска) и выполнение.
Для того чтобы отличить файлы, которые могут выполняться, от других файлов, имена файлов строятся из двух составных элементов: собственно имени файла (до 8 символов) и типа файла (три символа), иногда называемого расширением имени. В большинстве команд указывается полное имя файла, в котором составные элементы разделены точкой. Есть типы файлов, распознаваемые системой, и за ними закреплены определенные названия; пользователь может сам формировать типы файлов произвольно (обычно это файлы с данными).
Файлы, которые могут выполняться, должны быть одного из трех типов:
COM – внешняя команда;
EXE – выполняемый файл;
BAT – файл, составленный как пакет, содержащий обращения к командам и вызов программ.
При вызове для выполнения файла одного из трех этих типов, достаточно указать его собственное имя без расширения.
Многим командам работы с файлами можно задавать имя группы файлов по образцу. В этом образце используются символы “*” и “?”. Звездочка обозначает любую комбинацию любого количества символов, а знак вопроса – любой один символ.
Есть команды, в которых нельзя пользоваться образцами; при вызове команд, программ и пакетов для выполнения образцами пользоваться нельзя.
В операционной системе имеется множество команд, которые обычному пользователю либо не нужны. Либо он обращается к ним очень редко. С другой стороны существует ряд команд, которые практически ежедневно применяются при работе с компьютером. К ним относятся:
DIR – вывод каталога
FORMAT – форматирование дисков
COPY – копирование файла
DEL – удаление файла
RENAME – изменение имени файла
При каждом запуске компьютера в его оперативную память загружаются три файла операционной системы DOS: COMMAND.COM, IO.SYS, MSDOS.SYS. После этого операционная система автоматически выполняет команды, содержащиеся в файлах CONFIG.SYS и AUTOEXEC/BAT. Тем самым пользователь освобождается от необходимости ввода этих команд при каждом запуске компьютера. Выполнение соответствующих операций каждый раз занимало бы несколько десятков минут и приводило бы к лишней работе, причем, что не менее важно, многие пользователи просто не способны самостоятельно выполнить все необходимые действия. Для них вполне достаточно, что кто-то подготовил компьютер к эксплуатации. Их участие в запуске сводится к включению питания, после чего загрузка производится автоматически, без каких-либо манипуляций с клавиатурой.
Вопрос №51. "Автоматизация управления технологическими процессами".
АСУТП - это АСУ для выработки и реализации управляющих воздействий на технологический объект управления в соответствии с принятым критерием управления и заданными ограничениями.
Особенности АСУТП:
для управления материальными объектами;
непосредственно воздействуют на технологический объект управления;
получают информацию от технологического объекта автоматически с помощью технических средств без участия человека;
обеспечивают управление техническим объектом в целом;
технические средства участвуют в выработке решений по управлению;
осуществляют воздействие на объект в том же темпе, что и протекающие в нем технологические процессы;
наличие обратных связей, замкнутых техническими средствами без участия человека, дает возможность работы в автоматическом режиме;
отсутствие жесткой связи с организационной структурой объекта управления.
Вопрос №52. "Общесистемные решения АСУТП".
К основным общесистемным решениям относятся:
выбор и обоснование уровня автоматизации управления;
организация оперативного контура управления (оперативный контур - контур, в котором работает оперативный персонал);
выбор варианта архитектуры АСУТП;
обоснование выполнения требований по функциональной надежности, точности измерительных каналов, качеству автомат. регулирования, времени реакции и стоимости создания системы.
Выбор уровня автоматизации управления состоит в проектировании человеко-машинных алгоритмов функционирования системы с назначением на каждую реализуемую системой функцию структурных элементов. которые ее осуществляют. При решении задачи распределения функций между человеком и проектируемыми техническими средствами автоматизации учитываются следующие количественные показатели:
вероятность безошибочного выполнения функций;
время выполнения;
точность реализации функций;
затраты на реализацию.
При обосновании уровня автоматизации, организации оперативного контура и выборе архитектуры АСУТП используется метод функционально - стоимостного анализа (ФСА). Этот метод предполагает выбор варианта общесистемных решений, обеспечивающего минимум приведенных затрат при ограничениях на допустимые значения технических характеристик. При этом критерий приведенных затрат включает как прямые затраты, связанные с реализацией функций управления с определенным уровнем качества. так и производственные издержки в зависимости от достигаемых параметров технологического процесса.
Вопрос №53. "Архитектура АСУТП".
Архитектура - принципы и способы программно-технической реализации функций АСУТП и принципы и способы обеспечения важнейших технических характеристик системы: надежности, живучести, точности и т.д.
Существуют два подхода к рассмотрению архитектуры АСУТП:
функциональный подход, при котором рассматриваются способы реализации и степень автоматизации функций контроля и управления, и их взаимодействие между собой;
структурный подход, при котором рассматриваются способы реализации технической структуры системы.
К функциональной структуре АСУТП относятся:
архитектура централизованного контроля и управления - для нее характерно отсутствие единой информационной базы и независимость функций друг от друга, в том числе информационных и управляющих;
архитектура информационно - вычислительных систем (ИВС) - для нее характерна единая система сбора информации, первичная обработка и формирование информационной базы. Остальные функции решаются на основе информации, имеющейся в базе. Недостаток в том. что управляющая часть автоматизирована слабо;
архитектура управляющих вычислительных систем (УВС) в режиме советчика - промежуточная между информационными и управляющими системами. Отличается от ИВС тем, что на основе единой информационной базы дополнительно решаются функции мат. моделирования и формирование рекомендаций по управлению;
архитектура УВС - супервизор: в системах с супервизорным управлением, кроме рекомендаций, формируются непосредственно команды, обеспечивающие координацию функций управления;
архитектура УВС непосредственного цифрового управления - на основе единой информационной базы реализуются и функции логического управления, и автоматического регулирования.
При структурном подходе выделяют виды архитектур:
децентрализованная архитектура:
в них отдельные структурные подсистемы АСУТП независимы друг от друга. Каждая подсистема имеет свой сбор информации, свою обработку, свой оперативный персонал. При выходе одной подсистемы из строя, остальные продолжают работать.
централизованная архитектура:
в них все информационные и управляющие функции централизованы в одном центре обработки информации.
Недостатки архитектуры:
потеря работоспособности при выходе из строя центра обработки информации;
высокая информационная нагрузка на центр обработки информации;
большое количество кабельных связей.
Преимущества:
возможность координированного управления;
персонала немного.
иерархическая архитектура предполагает наличие в технической структуре системы нескольких уровней сбора и обработки информации. На нижнем уровне осуществляется сбор информации и управление исполнительными механизмами, на средних - предварительная обработка информации и координация систем нижнего уровня, на верхнем - формирование обобщенной информации и управление объектом в целом.
сетевая архитектура:
магистральная - основным элементом является сетевая магистраль, к которой в качестве абонента АСУТП подключаются отдельные структурные элементы АСУТП и оперативный контур. С информационной точки зрения сетевая магистральная архитектура может быть централизованной и распределенной, в зависимости от того, какие протоколы обмена используются в сети. Недостатки:
- живучесть системы целиком зависит от надежности магистрали;
- в АСУТП для реализации функций управления используют разные виды сетей, а в магистральной архитектуре используется один вид.
распределенная многоуровневая:
Сети нижнего уровня используются для первичного сбора информации и управления исполнительными механизмами. На среднем уровне управления используются сети с произвольным доступом и дисциплиной передачи маркера. С помощью этих сетей реализуется задача обмена с сетями нижнего уровня, функции автоматизации регулирования, логического управления и координация работы отдельных подсистем. На верхнем уровне используются сети со случайным доступом, в которых работает оперативный контур. На каждом уровне может быть несколько сетей одного или различных типов.
Вопрос №54. "Основные элементы АСУТП".
Основными элементами АСУТП являются совокупность средств обработки и сбора информации и технических средств воздействия на объект (исполнительный механизм).
Вопрос №55. "Подсистемы и функции АСУТП".
Функции АСУТП:
I. информационный класс:
1. измерение - определение значений технологических параметров;
2. контроль - сравнение измеренных значений с заданными;
3. сигнализация - оповещение об отклонениях параметров от заданных значений;
4. регистрация - накопление измеренных значений параметров;
5. отображение информации оперативному персоналу;
вычислительного характера:
6. косвенное измерение - вычисление значений параметров, измерить которые непосредственно невозможно;
7. расчет технико - эксплуатационных показателей - количество выработанной электрической, тепловой энергии и т.д.;
8. формирование оперативной отчетности работы оперативного персонала;
9. прогнозирование поведения объекта на основе мат. моделирования.
II. управляющий класс:
1. автоматическое регулирование - автоматическое поддержание значений технологических параметров в заданных пределах и обеспечение необходимого качества переходных процессов;
2. логическое управление - формирование совокупности дискретных значений управляющих воздействий в зависимости от выполнения определенных условий или в определенной временной последовательности;
3. блокировки - автомат. запрет выполнения определенных операций по управлению;
4. дистанционное управление - команды формируются оператором дискретно;
5. функционально - групповое управление - автомат. выполнение сложной технологической функции во времени;
6. функция защит - функция включения специальных защитных технологических систем, которые предотвращают возникновение аварий или позволяют локализовать ее последствия;
вычислительного характера:
7. формирование рекомендаций по управлению;
8. функция оптимального управления объектом в целом.
Подсистемы АСУТП:
функциональные - совокупность программно-технических средств автоматизации и персонала, реализующая определенную функцию управления;
структурные - совокупность программно-технических средств автоматизации и персонала, осуществляющих управление отдельными структурными элементами технологического объекта.
Вопрос №56. "Виды обеспечения АСУТП".
общесистемные решения - решения, определяющие принципы построения и архитектуру системы;
организационное обеспечение - содержит комплект документов, определяющих состав и функции персонала, регламент работы системы и порядок работы персонала при ее эксплуатации;
информационное обеспечение - совокупность массивов информации, документов;
математическое обеспечение - совокупность мат. моделей и алгоритмов управления, реализуемых в системе;
программное обеспечение - совокупность программ, обеспечивающих работу АСУТП;
техническое обеспечение - совокупность технических средств автоматизации.
Общесистемные решения, техническое и математическое обеспечения играют особую роль.
Вопрос №57. "Законы регулирования в АСУТП".
Законы регулирования - функциональные зависимости, реализуемые автоматическими регуляторами в АСУТП в составе систем автоматического регулирования.
Основные законы регулирования:
пропорциональный;
пропорционально - дифференциальный;
пропорционально - интегральный;
пропорционально - интегрально - дифференциальный.
Простейшая схема регулирования имеет следующий вид:
xвх ?x U x
Зад Р ОУ
ОУ - объект управления,
Р - регулятор,
Зад - задатчик,
?x = xвх - x - рассогласование.
Регулятор преобразует ?x так, чтобы на входе объекта управления присутствовал управляющий сигнал U, обеспечивающий необходимое качество регулирования.
Основными параметрами, характеризующими качество регулирования являются:
время регулирование - время от момента поступления управляющего воздействия до достижения заданного значения с установленной точностью;
перерегулирование - величина максимального превышения заданного уровня регулируемой величины, которая обеспечивается регулятором;
колебательность - количество колебаний выходной величины до достижения установленного значения;
точночность.
Законы автоматического регулирования должны обеспечивать по возможности минимальное время регулирования,отсутствие или минимальное значение перерегулирования, отсутствие или минимальное значение колебательности.
Пропорциональный закон регулирования имеет вид:
U = k * ?x, где k - коэффициент передачи регулятора.
Пропорциональный регулятор при увеличении k обеспечивает уменьшение времени регулирования, но при больших величинах k в системе может возникнуть колебательный эффект. Пропорциональный регулятор обладает ненулевой статической ошибкой регулирования, т.е. нельзя точно достичь заданную величину.
x y
k
Передаточная функция такой системы имеет вид:
W(k) = y / x = k / (1 + k).
Выходная величина: y = k * x / (1 + k).
Статическая погрешность регулятора: x - y = ? = x / (1 + k).
Для того чтобы улучшить динамические характеристики пропорционального регулятора в его состав можно ввести динамические звенья:
дифференцирующее звено;
интегрирующее звено;
дифференцирующее и интегрирующее звено.
Пропорционально - дифференцированный закон регулирования имеет вид:
U = kп * (1 + Tд * p) * ?x,
где p - оператор дифференцирования,
Tд - постоянная времени дифференцирования,
kп - коэффициент передачи.
Управляющий сигнал пропорционален входному сигналу и первой производной этого входного сигнала.
Пропорционально - дифференцированный регулятор обеспечивает меньшее время регулирования, чем пропорциональный регулятор и меньшую колебательность. Пропорционально - дифференцированный регулятор обладает статической ошибкой:
? = xзад / [1 + k * (1 + Tд * p)]. В установившемся режиме x = const, следовательно, производная от x равна 0, ? = xзад / (1 + k).
Пропорционально - интегральный закон имеет вид:
U = k * (1 + 1 / Tи * p) * ?x, где Tи - постоянная времени интегрирования.
Статическая погрешномсть нулевая.
Пропорционально - интегрально - дифференциалный закон сочетает в себе пропорционально - дифференциальный и пропорционально - интегральный.
Вопрос №58. "Математическое обеспечение АСУТП. Определение и состав".
Математическое обеспечение - совокупность математических моделей и алгоритмов, используемых для реализации функций управления.
Математические модели - система мат. уравнений, описывающих характеристики объекта моделирования. Модель характеризуется переменными, параметрами и функциональными зависимостями.
Применительно к мат. моделям АСУТП переменными являются:
управляющие воздействия (параметры на выходе);
управляемые переменные (параметры на входе);
возмущающие воздействия (описывают характер внешнего влияния на объект).
Функциональные зависимости - мат. выражения, которые увязывают входные и выходные параметры модели.
Параметры - значения коэффициентов и других констант, входящих в функциональную зависимость.
Модели используются при реализаций функций АСУТП, требующих количественной оценки отклика объекта на управляющее воздействие. Функции:
автоматическое регулирование;
прогнозирование;
рекомендации оператору.
Классификация мат. моделей АСУТП:
1. По способу построения:
теоретические (аналитические) строятся по данным о внутренней структуре объекта;
формальные, для построения которых не надо знать физическую природу объекта. С объектом проводятся эксперименты, затем обрабатываются выходные параметры. В результате получаем зависимости между входными и выходными параметрами, которые можно описать аналитически.
2. По типу языка описания:
текстовые содержат описание объекта;
графические - топологические схемы;
математические.
3. По зависимости переменных от времени:
статические (не зависят от времени) - для описания в установившихся режимах;
динамические (зависят от времени) - для описания переходных режимов, когда параметры объекта существенно изменяются во времени.
4. По зависимости параметров модели от пространственных координат:
с распределенными параметрами - описываются диф. уравнениями в частных производных;
с сосредоточенными параметрами.
5. По степени учета случайных факторов:
статистические (учитывают случайные факторы);
детерминированные (не учитывают случайные факторы).
Для целей управления в АСУТП детерминированные динамические модели.
Виды динамических моделей в АСУТП:
диф. уравнения описывают динамическую зависимость между входными и выходными переменными.
В общем виде это линейное диф. уравнение:
n dkxвых(t) m dlxвх(t)
?ak * = ?bl * , где ak и bl - переменные.
k=0 dtk l=0 dtl
В моделях АСУТП диф. уравнения выше 2-го порядка практически не используются.
переходная характеристика h(t) описывает изменение выходной величины моделируемого объекта при скачкообразном изменении входной величины на единицу при нулевых начальных условиях. при подаче на вход скачкообразного сигнала единичной величины, на выходе получается плавная кривая - переходная характеристика, по виду которой определяют диф. уравнение.
импульсная характеристика k(t) - зависимость выходной величины от дельта функции ?(t), т.е. импульсная характеристика показывает изменение выходной величины от подачи на вход объекта единичного импульса нулевой ширины. Импульсная характеристика представляет собой первую производную от переходной характеристики:
k(t) = dh(t) / dt.
частотные характеристики W(jw)определяет изменение амплитуды и фазы выходной величины в установившемся режиме при подаче на вход объекта гармонического воздействия (синусоиды).
Входная величина: xвх = A * sinwt.
Выходная величина равна сумме гармоник:
n
xвых = ? Bj * sin(wt + ?j),
j=0
где Bj - амплитуда j-ой гармоники,
?j - фазовый сдвиг j-ой гармоники.
Чаще всего объекты носят линейный характер. Для линейной системы выходной величиной является синусоидальный сигнал:
xвых = Bj * sin(wt + ?).
Если менять частоту входного сигнала 0 < w < ?, то ампдитуда и фаза выходного сигнала будут меняться.
Частотная характеристика - функция частоты и времени:
W = xвых (w) / xвх (w) = B(w) * sin(wt + ?(w)) / A * sinwt.
Чтобы перейти к функции от частоты, необходимо применить преобразование Фурье:
?
?
F(jw) = ? f(t) * e-j w t dt.
- ?
После этого получим:
W(jw) = xвых (jw) / xвх (jw) = ? bl * (jw)l / ? ak * (jw)k = B(w) * ej ?(w) / A.
На практике рассматривают отдельно зависимость амплитуды от частоты и зависимость фазы от частоты, т.е. характеристики:
амплитудно - частотную - отношение амплитуды выходного сигнала к амплитуде входного сигнала в зависимости от частоты;
фазово - частотную характеристику - изменение фазы выходного сигнала по отношению к входному в зависимости от частоты.
Частотная характеристика есть преобразование Фурье от импульсной характеристики:
W(jw) = F [ k(t) ].
передаточная функция - отношениеизображения по Лапласу выходной величины объекта к изображению по Лапласу при нулевых начальных условиях.
Преобразование Лапласа связывает функцию комплексной переменной (изображение) с соответствующей функцией действительной переменной (оригинал):
?
?
L (s) = ? f(t) * e- s t dt,
- ?
где s = ? + j? - комплексное число,
f(t) - оригинал,
L(s) - изображение.
С помощью проебразований Лапласа диф. уравнение примет вид:
? ak * sk * Xl вых = ? bl * sl *Xl вх.
Следовательно, передаточная функция - функция комплексной переменной:
W(s) = Xl вых / Xl вх = ? bl * sl / ? ak * sk = (b0 + b1s +b2s2 + ...) / (a0 + a1s +a2s2 + ...).
Алгоритмы в АСУТП:
Алгоритм - совокупность операций, реализуемых в строго определенной последовательности, выполнение которых приводит к решению конкретной задачи или достижению конкретного результата в соответствии с заданными критериями.
Алгоритм должен обладать следующими свойствами:
однозначность;
непротиворечивость;
конечность (результат должен был получен за конечное число шагов);
массовость (независимость от исходных данных).
В АСУТП существуют алгоритмы реализации основных функций АСУТП, т.е.
алгоритмы сбора и первичной обработки первичной информации;
алгоритмы сигнализации;
алгоритмы автоматического регулирования;
алгоритмы логического управления;
алгоритмы технологических и аварийных защит;
алгоритмы отображения информации;
алгоритмы мат. моделирования;
алгоритмы расчета технико - экономических показателей.
Алгоритмы реализации конкретных функций в АСУТП формируются на основе библиотеки элементарных алгоритмических модулей. В состав такой библиотеки входят:
модули контроля достоверности информации;
модули масштабирования входных сигналов;
модули фильтрации входных сигналов;
модули восстановления информации от конкретных типов датчиков;
модули реализации элементарных функций;
модули моделирования динамических звеньев (усилительного, дифференциального, интегрирующего звеньев);
модули нелинейных элементов (зона нечувствительности, зона ограничения, релейные элементы);
модули интерполяции нелинейных функций;
модули логических операций;
модули автоматического регулирования;
модули метрологического обеспечения (вычисление мат. ожидания, дисперсии).
Пользуясь библиотекой можно сконструировать нужный алгоритм.
Рассмотрим модуль масштабирования входных сигналов. На выходе датчиков формируется электрический сигнал: напряжение ил ток. Обработка информации должна проводиться в единицах измерения натуральных величин. Перевод значения электрической величины в значение натуральной величины называется масштабированием.
T0 T0 = C + (D - C) * (I - A) / (B - A) - алгоритм перевода величины I
в T0.
D T0 - температура, I - сила тока.
C
xвх (I)
A B
Вопрос 17.
Планирование статистического эксперимента.
Задача планирования.
i’=1,..,n
Xi g(x)
yi’
Xi ~ Px
X = (x1,..,xk) вектор случайных величин (многомерный) имеющий распределение Px.
Xi - реализация вектора.
g(x) - функциональное преобразование, которое в общем случае осуществляется с помощью сложной программы (модели)
yi’ - реализация выходной случайной величины.
n - длина выборки, равная числу опытов, равняется числу циклов
i’ - номер очередного цикла.
- приближается к точному значению M(y) при n -> oo
Задача планирования эксперимента состоит в нахождении такого n , при котором достигается заданная точность оценки .
Теоретическое решение задачи планирования.
Оценка является случайной величиной, т. к. Представляет собой функцию от случайных величин.
В типовой схеме статист-го эксперимента используются независимые реализации Xi , поэтому случайные величины Y-ки на выходе так же независимы. Из центральной предельной теоремы вытекает, что сл. величина ~ N(m,).
Определим параметры этого распределения.
n=1000
n=100
n=10
M(y)
;
с ростом n амплитуда возрастает в раз
Оценка отклоняется от искомого M(y) не более, чем на 3
(в инженерном смысле).
Можно сказать по этому , что
является аналогом абсолютной погрешности , а 3 самой абс. погрешностью.
В качестве аналога относительной погрешности для оценки используют её коэффициент вариации. ;
В качестве самой относительной погрешности величину 3V - правило трёх вариаций. Отсюда находим теоретическое решение задачи планирования.
Если задана точность , то для её достижения требуется число опытов ;
Если задана точность V, то требуется соответственно ;
Данным решением трудно воспользоваться на практике, поскольку значения и как правило заранее неизвестны. Иногда и оценивают приближённо с помощью некоторого числа пробных опытов.
Метод авто останова .
Пусть требуется достичь относительной ошибки V = 0.01
Примечание: min A = 2. Т.к. необходимо исключить одно ложное подтверждение точности, которое всегда возникает при n = 1.
НАЧАЛО
N = 1, A = 10
S1 = 0, S2 = 0
Датчик X
y = g(x)
S1 = S1 + Y
S2 = S2 + Y2
Dy’=S2/n-My’ 2
V’=Vy’/
НЕТ ДА
V’<=0.01
n
=
n
+
1
A = A - 1
нет
A = 0
да
My’,Vy’,Vy
КОНЕЦ
n - число опытов,
A - параметр для надёжности
S1 - сумма
S2 - сумма квадратов
Dy’-приближённая дисперсия СВ
Vy’-приближённый коэфф-т СВ
V’ -приближённая относительная погрешность оценки.
Интерактивный контроль.
В случае, когда длительность статист-х экспериментов не слишком велика, удобен так же вариант планирования, который состоит в визуальном наблюдении за изменением точности в ходе эксперимента.
Значения ’ и V’ выводятся для некоторых n на экран и по ним принимаются решения об остановке или продлении эксперимента.
Этот метод позволяет выбрать разумный компромисс м/у желанием выбрать маленькую погрешность и желанием не тратить много лишнего времени.
Область данных BIOS
Таблица векторов прерываний
Область данных DOS
MP BIOS
Подключенные внешние драйвера
Резидентный модуль КП (около 4 Кбайт)
Область памяти для резидентных программ и данных
Область памяти для машинных программ
Транзитный модуль КП
Видеопамять для некоторых режимов
Видеопамять для MGA и HGA
Видеопамять CGA
Факультативные модули ПЗУ в адаптерах
Окно отображаемой памяти
Интерпретатор Basic’ a
BIOS
Расширенная память под данные и виртуальный диск ( для IBM PC AT и старше)
00000Н
00400Н
00500Н
А0000Н
В0000Н
В8000Н
С8000Н
Е0000Н
F6000Н
FE000Н
100000Н
*
ОЗУ
ПЗУ
(до 224 Кбайт)
Память дисплейного адаптера
(до 160 Кбайт)
ОЗУ
(до 640 Кбайт)
45. Распределение оперативной памяти в операционной системе .