Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
vstup.docx
Скачиваний:
26
Добавлен:
13.03.2016
Размер:
1.28 Mб
Скачать

3. Моделювання систем за допомогою безперервних марківських ланцюгів.

На практике значительно чаще встречаются ситуации, когда переходы системы из состояния в состояние происходит в случайные моменты времени, которые заранее указать невозможно: например, выход из строя любого элемента аппаратуры, окончание ремонта (восстановление) этого элемента. Для описания таких процессов в ряде случаев может быть с успехом применена схема марковского случайного процесса с дискретными состояниями и непрерывным временем – непрерывная цепь Маркова. Покажем, как выражаются вероятности состояний для такого процесса. Пусть S={S1,S2,…Sn}. Обозначим через pi(t) - вероятность того, что в момент t система Sбудет находиться в состоянии). Очевидно. Поставим задачу – определить для любого t pi(t). Вместо переходных вероятностей  Pijвведем в рассмотрение плотности вероятностей перехода

.

  Если не зависит от t, говорят об однородной цепи, иначе - о неоднородной. Пусть нам известныдля всех пар состояний (задан размеченный граф состояний). Оказывается, зная размеченный граф состояний можно определить p1(t),p2(t)..pn(t) как функции времени. Эти вероятности удовлетворяют определенного вида дифференциальным уравнениям, (уравнения Колмогорова).


 

Интегрирование этих уравнений при известном начальном состоянии системы даст искомые вероятности состояний как функции времени. Заметим, что p1+p2+p3+p4=1 и можно обойтись тремя уравнениями.

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

Екзаменаційний білет № 3

1. Планування. Управління ресурсами, боротьба з взаємоблокуванням.

Управління пам’яттю.

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

Типы планирования:

  • краткосрочное (выработка решения о том, какой из процессов будет выполняться следующим),

  • среднесрочное (выработка решения о добавлении процесса в число процессов, размещённых в оперативной памяти),

  • долгосрочное (выработка решения о том, добавлять ли процесс к выполняемым);

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

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

- выделения свободного ресурса одному из процессов, запросивших ресурс для использования;

- приостановки (блокировки) процессов, выдавших запросы на ресурсы, занятые другими процессами.

При разработке алгоритмов взаимоисключения должны соблюдаться следующие требования:

  • Взаимоисключения должны осуществляться в принудительном порядке

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

  • Не должно возникать ситуации бесконечного ожидания входа в критическую секцию

  • Когда в критическом разделе нет ни одного процесса, любой процесс, запросивший возможность входа в к/р должен его немедленно получить.

  • Не должно делаться никаких предположений ни о количестве процессов, ни об их относительной скорости выполнения

  • Любой процесс должен находиться в к/р ограниченное время

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

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

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

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

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

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

2. Основні теоретико-множинні (об’єднання, пересічення, віднімання, декартовий добуток) операції реляційної алгебри. Коротка характеристика та приклади.

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

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

Объединение Пересечение Разность

- Декартовое произведение

Операции с множествами:

Объединение R U S. Объединение 2х отношений R и S определяет новое отношение, которое включает все кортежи содержащиеся только вR, только вS, одновременно вR и S, причем все дубликаты кортежей исключены. При этом отношенияR и Sдолжны быть совместимы по объединению.

Разность RS. Разностью 2х отношенийR и Sсостоит из кортежей, которые есть в отношенииR, но отсутствуют в отношенииS, причем отношенияR и Sдолжны быть совместимы по объединению.

Пересечение R S.Операция пересечения определяет отношение, которые содержат кортежи присутствующие как в отношенииR, так и в отношении S. R и Sдолжны быть совместимы по объединению.

Декартовое произведение R х S. Декартовое произведение определяет новое отношение, которое является результатом конкатенации (сцепления) каждого кортежа изR с каждым кортежем изS.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]