Шпаргалка по "Программированию"

Автор работы: Пользователь скрыл имя, 29 Марта 2011 в 16:28, шпаргалка

Краткое описание

Работа содержит ответы на вопросы по дисциплине "Программирование".

Содержимое работы - 23 файла

билет 1.doc

— 52.00 Кб (Открыть файл, Скачать файл)

Билет 10.doc

— 70.00 Кб (Открыть файл, Скачать файл)

билет 11.doc

— 226.50 Кб (Открыть файл, Скачать файл)

Билет 12.doc

— 73.00 Кб (Открыть файл, Скачать файл)

Билет 13.doc

— 140.50 Кб (Открыть файл, Скачать файл)

Билет 14.doc

— 106.00 Кб (Открыть файл, Скачать файл)

Билет 15.doc

— 115.00 Кб (Открыть файл, Скачать файл)

Билет 16.doc

— 148.00 Кб (Скачать файл)

За исключением  атрибута собственности (логическая защита), разбивающего данные (таблицы) на собственные (принадлежащие данному субъекту) и чужие, физическая защита разбивает данные более тонко. Но можно ли обойтись без физической защиты или, по крайней мере, попытаться, реализовав, например, сложный набор хранимых процедур. В общем-то некоторое подобие такой защиты реализуемо в случае, когда метки добавляются в таблицу в качестве дополнительного атрибута, доступ к таблицам запрещается вообще и ни одно приложение не может выполнить интерактивный SQL-запрос, а только хранимую процедуру и т.п. Ряд реализаций подобного уровня защиты использует вызов набора хранимых процедур с весьма абстрактными (что очень желательно) именами. Система реализации защиты информации в данном случае достаточно сложна и предполагает определенный уровень доверия к администратору безопасности, так как он имеет право изменять структуру базы данных, а значит, и хранимые процедуры, представления. Физически же администратор безопасности в данном случае не изолирован от управления секретными данными.

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

Рассмотрим мандатную  защиту подробнее. В качестве примера  возьмем мандатную защиту СУБД «Линтер», которая получила признание в  весьма специфическом секторе —  силовых структурах, как единственная СУБД, имеющая сертификат по второму классу защиты от несанкционированного доступа, что соответствует классу B3 по американскому национальному стандарту.

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

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

В уже упоминавшихся  «Критериях оценки надежных компьютерных систем» применительно к системам уровня безопасности B описан механизм меток безопасности, реализованный  в рассматриваемых данной статьей  СУБД.

Метка объекта включает следующее:

  1. Группа субъекта, который внес данный объект.
  2. Уровень доступа на чтение — RAL (Read Access Level).
  3. Уровень доступа на запись — WAL (Write Access Level).

Метка субъекта выглядит аналогично:

  1. Группа, к которой принадлежит субъект.
  2. RAL-уровень субъекта, который представляет собой максимальный RAL-уровень доступной субъекту информации.
  3. WAL-уровень субъекта, то есть минимальный RAL-уровень объекта, который может быть создан этим субъектом.

Все пользователи базы данных считаются разбитыми  на непересекающиеся группы. Группа описывает область доступных пользователю данных. Для каждой группы существует администратор группы (уровень DBA для группы), созданный администратором системы. При этом пользователи одной группы не видят данных, принадлежащих пользователям другой группы. В этом плане у СУБД «Линтер» имеется особенность: в системе реализовано такое понятие, как «уровень доверия между группами». При этом уровни доверия не могут быть вложенными. Группа представляет собой числовое значение в диапазоне [1-250]. Группа 0 — группа администратора системы. Только администратор системы может создать пользователя в группе, отличной от своей. Все данные, созданные от имени пользователя, помечаются его группой.

Уровни доступа  вводятся для проверки прав на осуществление чтения-записи информации. Вводятся следующие уровни доступа:

  1. Для пользователя (субъекта):
  • RAL — уровень доступа; пользователь может получать (читать) информацию, RAL-уровень которой не выше его собственного уровня доступа;
  • WAL — уровень доверия на понижение уровня конфиденциальности; пользователь не может вносить информацию с уровнем доступа (RAL-уровнем) более низким, чем данный WAL-уровень пользователя. Иными словами, пользователь не может сделать доступную ему информацию менее конфиденциальной, чем указано в данном параметре.
  1. Для информации:
  • RAL — уровень чтения; пользователь может получать (читать) информацию, RAL-уровень которой не выше его собственного RAL-уровня (может читать менее конфиденциальные данные);
  • WAL — уровень ценности или уровень доступа на запись (модификацию, удаление); пользователь может модифицировать (удалять) информацию, WAL-уровень которой не выше его RAL-уровня.

Создать пользователя с произвольными уровнями может  только администратор системы. Остальные  администраторы (DBA) могут создавать пользователей (или изменять уровень пользователям) лишь в пределах отведенных им уровней. Пользователь может принудительно пометить вводимые данные, указав в списке атрибутов уровни доступа для соответствующих записей и полей (при выполнении операторов INSERT или UPDATE). По умолчанию вносимые данные наследуют уровни пользователя, вносящего/изменяющего данные. Защищаемые объекты: пользователи, таблицы, столбцы, записи (вносится при выполнении INSERT), поля записей (изменяются при выполнении UPDATE). Уровни, как и группы, нельзя использовать в случае, если они не созданы специальными запросами.

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

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

Методы  и средства обеспечения  отказоустойчивости

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

Восстановление  может быть прямым (без возврата к прошлому состоянию) и возвратное.

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

При возвратном восстановлении происходит возврат процесса (или системы) из некорректного состояния в некоторое из предшествующих корректных состояний. При этом возникают следующие проблемы:

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

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

Применение подобных методов в распределенных системах наталкивается на следующие трудности:

  • Для распределенных систем запоминание согласованного глобального состояния является серьезной теоретической проблемой;
  • методы восстановления после отказов для некоторых систем непригодны  из-за прерывания нормального функционирования и др;

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

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

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

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

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

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

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

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

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

Однако  для систем на последней стадии их деградации (при отказе предпоследнего узла сети) на первый план  в  качестве  диагностической  информации  выходят  признаки исправности-неисправности,   формируемые   различными   программно-аппаратными средствами контроля, такими как:

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

Билет 17.doc

— 67.00 Кб (Открыть файл, Скачать файл)

Билет 18.doc

— 86.00 Кб (Открыть файл, Скачать файл)

Билет 19.doc

— 169.00 Кб (Открыть файл, Скачать файл)

Билет 2.doc

— 61.50 Кб (Открыть файл, Скачать файл)

Билет 20.doc

— 102.00 Кб (Открыть файл, Скачать файл)

Билет 3.doc

— 54.00 Кб (Открыть файл, Скачать файл)

Билет 4.doc

— 82.50 Кб (Открыть файл, Скачать файл)

Билет 5.doc

— 46.50 Кб (Открыть файл, Скачать файл)

Билет 6.doc

— 117.00 Кб (Открыть файл, Скачать файл)

Билет 7.doc

— 86.50 Кб (Открыть файл, Скачать файл)

Билет 8.doc

— 77.50 Кб (Открыть файл, Скачать файл)

Билет 9.doc

— 45.00 Кб (Открыть файл, Скачать файл)

Билеты.doc

— 42.50 Кб (Открыть файл, Скачать файл)

ГОТОВОЕ шпоры с 16 вопроса.doc

— 220.50 Кб (Открыть файл, Скачать файл)

ГОТОВОЕ шпоры.doc

— 828.50 Кб (Скачать файл)

Информация о работе Шпаргалка по "Программированию"