Модули управления процессами предназначены для выполнения следующих базисных операций:
1) создание процесса. Результатом выполнения этой операции является создание самостоятельного процесса, который начинает развиваться (выполняться) параллельно со всеми другими процессами, протекающими в САК. Совокупность всех параллельно развивающихся процессов образует мультизадачную среду системы
2) останов процесса. Любой процесс может быть остановлен (заблокирован) другим процессом, если это необходимо;
3) запуск процесса. Эта операция противоположна операции останова процесса и применяется, если заблокированный процесс должен быть разблокирован;
4) уничтожение процесса. Если процесс уничтожается, то он прекращает свое развитие, а все принадлежащие ему ресурсы освобождаются. Любой процесс может быть уничтожен другим процессом, если это необходимо, а также любой процесс может быть уничтожен самим собой, если он выполнил требуемые функции и больше не нужен.
Модули управления процессами обращаются к управляющей программе ОС и используют возможности управления загрузочными модулями и управления задачами.
Модули управления основной памятью необходимы для выполнения запросов на выделение областей основной памяти. Эти модули выполняют следующие базисные операции:
1) выделение одной или нескольких областей основной памяти требуемого размера из имеющейся свободной области основной памяти и передача их в монопольное владение процессу;
2) освобождение одной или нескольких областей основной памяти, если процесс, ими владеющий, больше не нуждается в них (области основной памяти, принадлежащие процессу, освобождаются автоматически модулями управления процессами, если этот процесс уничтожается);
3) реорганизация основной памяти с целью устранения фрагментации. Эта операция выполняется всякий раз, если запрос на выделение основной памяти не может быть удовлетворен, но свободная память имеется в требуемом объеме.
Модули управления внешней памятью позволяют процессам осуществлять доступ к информационному обеспечению, так как все это обеспечение хранится во внешней памяти. Модули управления внешней памятью используют страничную организацию. Это позволяет, во-первых, уменьшить количество фактических обращений к внешней памяти (количество операций ввода-вывода), а во-вторых, обрабатывать данные сколь угодно сложной структуры, используя технологию обработки списков. К операциям управления внешней памятью относятся:
1) чтение блока данных из внешней памяти в основную по указанному адресу внешней памяти;
2) запись блока данных из основной памяти во внешнюю по указанному адресу внешней памяти;
3) выделение области внешней памяти требуемого размера для нового блока (область внешней памяти не передается в монопольное владение процессу, ее запросившему, а доступна для всех процессов);
4) освобождение области внешней памяти;
5) реорганизации внешней памяти с целью устранения фрагментации.
Логика выполнения операций выделения, освобождения и реорганизации внешней памяти аналогична логике этих же операций для основной памяти;
6) управление режимами обмена для увеличения эффективности доступа к внешней памяти (выбор алгоритма вытеснения страниц, управление режимом «обязательного обновления страниц», накопление статистики и т. д.).
Для выполнения фактических операций ввода-вывода модули управления внешней памятью используют базисный прямой метод доступа (BDAM) ОС. С точки зрения ОС, внешняя память представляется в виде наборов данных, расположенных на томах прямого доступа.
Модули управления терминалами позволяют выполнять операции динамического управления терминалами системы и операции по передаче данных. К этим операциям относятся следующие:
1) динамическое подключение физического монитора (конкретного устройства ввода-вывода). Подключенный монитор становится недоступным для других заданий ОС и может быть использован только для ведения сеанса связи с УМ и сформированными КМ;
2) динамическое отклонение физического терминала. В этом случае конкретный терминал становится недоступным УМ, но может использоваться другими заданиями ОС. Подобное динамическое управление терминалами позволяет другим заданиям ОС работать с теми терминалами, которые в данный момент не обслуживаются УМ, и тем самым увеличить эффективность их использования, так как время решения некоторых задач системой, когда наличие терминалов не требуется, может быть довольно продолжительным;
3) управление очередями сообщений, передаваемых от терминалов (запросы пользователей) к терминалам (ответы пользователям на их запросы);
4) управление форматированием сообщений. Использование средств форматирования сообщений позволяет улучшить «читабельность» информации, выводимой на терминал, а также представляет пользователю возможности автономного редактирования информации, вводимой с терминала.
Для выполнения фактических операций ввода-вывода модули управления терминалами используют существующие методы доступа ОС.
Основным назначением модулей управления состоянием системы является обеспечение надежности ее работы. Соответствующими операциями являются:
1) останов системы. В этом случае текущее состояние системы сохраняется во внешней памяти («замораживается»), все сеансы связи прекращаются и система заканчивает свою работу;
2) рестарт системы. Текущее состояние системы восстанавливается из внешней памяти (это состояние фиксируется во время выполнения операции останова системы) и она продолжает свою работу. Рестарт системы может быть выполнен через любой промежуток времени после останова, при этом система сохраняет полную работоспособность;
3) автоматическое сохранение последовательности состояний.
Так как состояние системы изменяется в процессе формирования и функционирования КМ, то сохранение текущей информации позволяет гарантировать полное восстановление состояний системы после сбоя вычислительных средств или ошибок операционной системы. Операции, связанные с сохранением последовательности состояний, выполняются всякий раз, когда поступает запрос извне.
Модули управления состоянием систем обращаются к управляющей программе ОС при выполнении операций останова и рестарта системы и используют возможность контрольной точки рестарта. Для автоматического сохранения последовательности состояний используется базисный последовательный метод доступа (BSAM) ОС, а соответствующая информация записывается в последовательный набор данных.
Модуль инициализации системы выполняет единственную операцию, которая приводит систему в состояние готовности. Во время функционирования системы этот модуль не используется. После приведения системы в состояние готовности (загрузка ПО в основную память и т. д.) модуль инициализации порождает единственный процесс и передает управление диспетчеру. Процесс, порожденный модулем инициализации, начинает свое развитие и порождает совокупность других процессов, которые обеспечивают требуемую логику функционирования.
Диспетчер также входит в нижний уровень ПО. Он предназначен для распределения такого ресурса, как время центрального процессора между процессами, протекающими в системе. Поскольку рассматриваемое ПО предназначено для работы в однопроцессорном вычислительном средстве, то мультизадачная среда может быть реализована только за счет поперечного диспетчирования всех готовых к выполнению (т. е. незаблокированных в текущий момент времени) процессов.
Диспетчер получает управление всякий раз, когда выполняется какая-либо операция, связанная с управлением процессами или синхронизацией процессов, или если истекает квант времени, отведенный процессу, фактически выполняющемуся в данный момент времени. В любом случае диспетчер выделяет новый квант времени следующему готовому процессу, обеспечивая тем самым параллельное развитие всех готовых процессов, а следовательно, поддерживает мультизадачную среду. Если нет одного готового процесса, диспетчер переводит систему в состояние ожидания до тех пор, пока не произойдет внешнее программное событие, которого ожидает какой-либо процесс.
Следующая группа программных модулей образует средний уровень ПО. Эти модули также предназначены для выполнения основных (базисных) операций, обеспечивающих формирование и функционирование КМ, но являющихся более сложными по сравнению с операциями нижнего уровня. Они не включаются в нижний уровень по следующим двум причинам:
1) модули среднего уровня обращаются для выполнения требуемых операций к модулям нижнего уровня, поэтому включение их в нижний уровень нарушило бы иерархичность уровней ПО — условие, обеспечивающее расширяемость ПО;
2) параллельное выполнение модулей нижнего уровня не допускается, а модули среднего уровня могут выполняться параллельно.
Поток запросов к модулям среднего уровня преобразуется ими в запросы к модулям нижнего уровня, однако некоторые запросы могут быть направлены к модулям нижнего уровня непосредственно.
Модули управления ППИО предназначены для выполнения следующих операций:
1) подготовка и модификация проблемного программного обеспечения. Сюда входят обработка запросов на редактирование исходных текстов программ и обработка запросов на динамический вызов обрабатывающих программ ОС (таких, как компиляторы, редакторы связей и т. д.). В последнем случае выполнение обрабатывающей программы в рамках УМ происходит как развитие соответствующего процесса;
2) подготовка и модификация проблемного информационного обеспечения. Сюда входят обработка запросов на редактирование текстов паспортов программ, запросов на выполнение автономных подготовительных операций с оперативными банками данных, запросов на заполнение словарей и т. д.;
3) доступ к ППИО. Выполнение операции доступа к проблемному ПО предполагает создание списка входных и выходных параметров для конкретного прикладного модуля в соответствии с информацией, выбираемой из его паспорта, а также просчет этого прикладного модуля. При этом просчет модуля реализуется как развитие соответствующего процесса. Операции доступа к прикладному ИО включают в себя в основном действия со списками (поиск в линейных списках, модификация линейных списков, поиск в сетевых списках и т. д.).
Необходимо также заметить, что ППИО не входит непосредственно в рассматриваемое ПО, но модули управления ППИО в совокупности с другими модулями среднего уровня позволяют адаптировать УМ к решению задач в конкретной проблемной области, определяемой соответствующим ППИО.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 |


