
- •Содержание
- •1. Введение и структура лабораторного практикума
- •2. Основные требования, предъявляемые к разрабатываемым программам
- •3. Краткие сведения о проблемной области выполняемых работ
- •Пассивные состояния
- •Активные состояния
- •Операции создания/удаления процессов
- •Операции планирования процессов
- •Операции диспетчеризации процессов
- •Удаление_п
- •Выполнение
- •Возобновление
- •4. Задания для лабораторных работ
- •4.1 Лабораторная работа № 1. ”Программная реализация средств представления и управления процессами в многопрограммных ос”
- •4.1.1. Формирование дескрипторов процессов
- •4.1.2. Определение состояний "поступивших" процессов
- •4.1.3. Формирование и ведение списков дескрипторов процессов
- •4.1.4. Принцип имитации развития процессов
- •4.1.5. Организация взаимодействия с "системой"
- •4.1.5.1. Описание состава и назначения команд пользователя "Система" должна выполнять следующие команды пользователя:
- •4.1.5.2. Основные требования к форме ввода команд "системы"
- •Формирование дескриптора
- •Протокол работы программы
- •4.1.6. Порядок выполнения л.Р. № 1
- •4.1.7. Требования к отчету по л.Р. № 1
- •4.1.8. Контрольные вопросы к л.Р. № 1
- •4.2. Лабораторная работа № 2. "Изучение дисциплин диспетчеризации процессов в многопрограммных ос".
- •4.2.1. Краткое описание схемы одноочередной круговой (циклической) диспетчеризации.
- •Конец … начало
- •З Конец … начало Выполнениеапуск Выбор Завершение
- •4.2.2. Краткое описание алгоритма многоочередной диспетчеризации для операцииИстечение_кванта.
- •Конец … начало
- •4.2.3. Имитация развития процессов при выполнении л. Р. № 2
- •4.2.4. Порядок выполнения л.Р. № 2
- •4.2.5. Требования к отчету по л.Р. № 2
- •4.2.6. Контрольные вопросы к л.Р. № 2
- •4.3. Лабораторная работа № 3. "Реализация дисциплин диспетчеризации процессов с учетом приоритетов".
- •4.3.1. Краткое описание схемы многоочередной диспетчеризации с учетом приоритета.
- •Выполнение
- •Конец … начало
- •4.3.2. Порядок выполнения л.Р. № 3
- •4.3.3. Требования к отчету по л.Р. № 3.
- •4.3.4. Контрольные вопросы к л.Р. № 3
- •4.4. Лабораторная работа № 4. "Реализация дисциплины диспетчеризации процессов с учетом запросов ввода/вывода"
- •4.4.1. Краткое описание схемы диспетчеризации процессов с учетом ввода/вывода и ее реализации.
- •4.4.2. Порядок выполнения и требования к отчету л.Р. № 4
- •4.4.3. Контрольные вопросы к л.Р. № 4
4.1.3. Формирование и ведение списков дескрипторов процессов
В первой лабораторной работе место включения дескриптора процесса в список готовых или ожидающих процессов определяется в соответствии с принципом HPF, а при условии равенства приоритетов у двух или более процессов - в соответствии: с принципом FCFS.
Ниже приводится описание дисциплины диспетчеризации, которую необходимо реализовать в ходе первой лабораторной работы.
Перевод процессов в состояние готовность
Включение дескрипторов процессов в список готовых процессов в соответствии с принятой дисциплиной диспетчеризации может производиться в двух случаях:
- в результате проведения для этого процесса операции "Запуск" при выполнении условий, необходимых- для перевода активизированного процесса в состояние готовность;
- в результате проведения для этого процесса операции "'Выделение_ресурса" - процесс из состояния ожидание переводится в состояние готовность
Перевод процессов в состояние ожидание
Дисциплина диспетчеризации, которую необходимо реализовать в ходе выполнения первой лабораторной работы предусматривает включение дескриптора процесса в список процессов, находящихся в состояний ожидание в следующих случаях:
– в случае проведения в отношении процесса операции "'Запрос_ресурса" - процесс из состояния выполнение переводится в состояние ожидание (реализуется в ходе четвертой работы);
– в результате проведения операции "Запуск" при не выполнении условий, необходимых для перевода активизированного процесса в состояние готовность;
Перевод и вывод процессов в/из состояния выполнение
Перевод процесса в состояние выполнение должен осуществляться "системой" при выполнении для этого процесса операции "Выбор" (данная операция производится в отношении процесса, дескриптор которого в списке готовых процессов стоит первым).
Перевод процесса из состояния выполнениедля дисциплины, реализуемой в ходе первой лабораторной работы, является результатом проведения в отношении этого процесса операции"Завершение" а также операции "Запрос_ресурса" (последнее реализуется при выполнении четвертой лабораторной работы).
4.1.4. Принцип имитации развития процессов
Программы, которые необходимо разработать при выполнении лабораторных работ, формируют и переформируют списковые структуры данных, объединяющие в соответствии с описанной дисциплиной диспетчеризации вводимые дескрипторы процессов. Каждый процесс в "системе" представлен только дескриптором. Вследствие этого развитие процесса реально производиться не может. В "системе", реализуемой в ходе выполнения первой лабораторной работы, смена состояний процесса (процессов), приводящая к переупорядочиванию списковых структур дескрипторов, производится только при поступлении команд пользователя, работающего с "системой". Таких команд (могущих привести к изменению состояний процессов или их положения в списках) всего три:
- "Сформировать дескриптор процесса",
- "Изменить приоритет процесса",
- "Завершить выполнение активного процесса".
4.1.5. Организация взаимодействия с "системой"
Ниже излагаются общие для всех четырех лабораторных работ требования по организации интерфейса "пользователь-программа".