Мультипроцессорные системы. Семафорная техника синхронизации и упорядочивания процессов. Стек – средство обработки структурированных программ, страница 6

резервирует свободную оверлейную область и загружает сам оверлей с дисков, если он не находится в памяти;

освобождает оверлей;

выбирает следующий оверлей из группы.

Распределение и освобождение оверлейных областей осуществляется монитором ресурсов.

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

Система виртуальных машин.

Ряд ОС сделан так, что ОС моделирует работу различных виртуальных ОС (низкого класса).

Каждый пользователь в этом случае может выбрать свою, отличную от других, ОС. Под управлением виртуальных машин (VM) фактически может выполняться несколько ОС сразу, при чём каждая ОС выполняется на своей VM. Примером такой системы является ОС – 370. В обще принятых мультипрограммных системах ресурсы разделяются между процессами, каждому из которых отводится лишь малая часть физических ресурсов.

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

 


                                                                           …

Система виртуальных машин содержит следующие основные компоненты:

1)  управляющая программа (CPControlProgram);

2)  диалоговая мониторная система (CMS - ConversationMonitorSystem);

3)  подсистемасвязисудалённымспулингом (RSCS – Remote Spooling Communication System);

4)  интерактивная система управления задачами (IPCS);

5)  пакетное средство CMS (CMSBatchControl).

Что они делают?

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

CMS– это мощная диалоговая система с диалоговыми средствами разработки программ. Она включает редакторы, трансляторы и средства отладки.

RSCSдаёт возможность передавать и принимать файлы через сеть телеобработки.

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

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

При работе управляющей программы CP процессор может находиться либо в режиме «задача», либо в режиме «система». Для каждой из виртуальных машин CP хранит главный управляющий блок, содержащий виртуальный регистр и виртуальное слово – состояние. Реальная машина всё время переключается между режимами супервизора и задача, и каждая виртуальная машина выполняется на CP в реальном режиме задач. Особую роль в работе

системы играет прерывания, которые представляют собой ключевую точку интерфейса между реальной машиной и CP.

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

UNIX.

Система UNIX проектировалась как инструмент. Система для разработки ПО. В 1979 году была произведена стандартизация, и появился XENIX.

Основные характеристики:

1)  мощный командный язык (Shell);

2)  независимая от устройств файловая система с полной  защитой;

3)  великолепная переносимость системы (система написана на  90% на СИ);

4)  работа со съёмными томами;

5)  инструментальные средства создания программных систем, включая, компилятор с языка СИ, который даёт реесперабельный и разделяемый код, это позволяет создавать конвейеры из относительно маленьких программ;

6)  система включает ряд прикладных пакетов:

редактор текстов;

программируемый интерпретатор с языка Shell;

компиляторы с распространённых языков    программирования (СИ, СИ++ и других);

мощные программы форматирования документов и обработки текстов;

средства межпользовательского общения (почта);

стандартные библиотеки пользовательских и системных программ;

7)  обеспечивает операционную обстановку для сорока пользователей.

Недостатки: система коллективного пользования, а не реального времени.

Минимальные требования:

1)  16 – битовый процессор;

2)  256 Кбайт оперативной памяти (ОЗУ);

3)  накопитель на магнитных дисках.

Устройства:

Центральная часть ОС, UNIX – ядро, содержит 10000 строк на СИ и 1000 – на ассемблере. 

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

Образ состоит из:

образа памяти;

значения общих регистров ЦП;

состояние открытых файлов;

текущая директория.

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

Начинается образ памяти с нулевого  байта, а внизу старший адрес образа памяти.                    

1 – сегмент реентерабельных процедур;

2 – сегмент данных;

3 – сегмент стека (стек прерываний и стек программ;

                                                     0             

             образ памяти

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

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