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

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

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

В состав подсистемы диспетчеризации ПОВ входят три диспетчера: диспетчер программ высокой срочности ДПВС, диспетчер программ нормальной срочности ДПНС и главный диспетчер ГД. Первый из названных диспетчеров управляет программами приема и выдачи информации, второй – программами обработки информации, а третий координирует ДПВС и ДПНС.

При организации подсистемы диспетчеризации ПОВ необходимо учитывать два основных положения: 1) программы приема и выдачи ППК должны выполнятся со строго заданной периодичностью;

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

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

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

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

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

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

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

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

Рассмотрим структурную организацию временного расписания, положенного в основу работы ДПВС. Расписание состоит из шести функциональных узлов: счетчика подциклов СчПЦ, матрицы циклов МЦ, слова активных программ МАП, слова выполняемых программ СВП, таблицы начальных адресов программ ТНАП и программ П0…,Пi...,Пn-1.

Счетчик подциклов представляет собой позиционный счетчик на kразрядов, работающий по модулю 2k. Содержимое этого счетчикаjсоответствует номеру строки в матрице циклов, т.е. номеру подцикла.

Матрица циклов представляет собой набор единиц и нулей. Наличие единицы на пересечении j-й строки иi-го столбца означает, что в данномj-м подцикле должна выполнятсяi-я программа, а наличие нуля – пропуск этой программы. Расположение единиц и нулей в данной матрице определяет периодичность выполнения программ приема и выдачи информации, а тем самым и их приоритет. Число столбцов в МЦ выбирается равнымn, гдеn– общее число программ приема и выдачи, а числа строк – равным НОК {Ti,i=1…n}(наименьшее общее кратное периодов запуска программ приема и выдачи информации).

Слово САП служит для разрешения или запрещения выполнения программ. Запрещение некоторых программ вызвано причинами перегрузки ЭУМ, а также выполнением отдельных программ в течении определенного промежутка времени. Выполнение программ в данном подцикле регулируется словом СВП, которое формируется путем операции логического умножения над содержимым j-й строки МЦ и слова САП.

Начальные адреса всех программ сведены в таблицу начальных адресов программ. Число строк в этой таблице выбирается равным числу столбцов матрицы циклов. При этом номер i-го столбца матрицы циклов должен соответствоватьi-му адресу в таблице ТНАП. Работа ДПВС в соответствии с рассмотренной структурой происходит следующим образом. Все машинное время работы процессора разделяется на фиксированные промежутки времени, называемые интервалами прерывания (подциклами). Всякий раз по истечении такого интервала диспетчер высокой срочности, получив управление от главного диспетчера:

1) определяет номер строки в МЦ по содержимому СчПЦ;

2) формирует слово СВП как САП & (j-я строка МЦ);

3) осуществляет поразрядный анализ СВП посредством операции поиска самой левой единицы; если в ближайшем слева i-м разряде будет обнаружена единица, то произойдет переход к действию 5; в противном случае – к действию 4;

4) увеличивает на единицу содержимое СчПЦ и передает управление главному диспетчеру, если в СВП не обнаружено единиц, т.е. все программы данного подцикла выполнены;

5) пересчитывает номера i-го разряда СВП со значением единица в номер строки ТНАП и заменяет значение этого разряда на нуль;

6) считывает из строки iТНАП адрес требуемой программы (адрес первой команды в программе) и передает ей управление.

Во время выполнения выбранной программы iДПВС не работает. По окончании выполнения программыiвновь включается в работу ДПВС, начиная с действия 3.

Работа ДПНС с приоритетами программ обработки по относительному расписанию осуществляется по аналогичной схеме, как это рассмотрено для ДПВС. Отличия состоят в следующем:

1) переход с одной строки на другую в матрице циклов производится по мере выполнения всех программ, предусмотренных в данном подцикле;

2) любая программа обработки информации выполнятся при условии наличия на нее хотя бы одного запроса (заявки); этот факт наличия запросов отмечается занесением единиц в соответствующие разряды слова САП.

Рассмотренная структура диспетчеров позволяет реализовать остальные виды приоритетов (относительные и чередующиеся). Предполагается, что старшинство приоритетов выполнения программ устанавливается слева направо по мере расположения разрядов в словах САП и СВП.