Техническое обслуживание и поддержка программного обеспечения
Программное обеспечение (ПО) цифровых телефонных станций состоит из команд управления и данных, хранящихся в памяти цифровой телефонной станции.
Все современные местные цифровые телефонные станции являются станциями с распределенным управлением, т.е. содержат определенное количество управляющих устройств. ПО станции распределено между этими управляющими устройствами. Программное обеспечение каждого управляющего устройства состоит из двух частей:
- программ операционной системы (ОС), которые реализуют системные (общие) функции по управлению ресурсами управляющего устройства (управление очередностью обработки задач, управление временем, управлением памятью и другие);
- прикладных программ, которые реализуют функции обслуживания вызовов или административного управления, возложенные на данное управляющее устройство.
Каждое управляющее устройство имеет собственную ОС, зависящую от задач прикладных программ и ресурсов, которыми располагает управляющее устройство. Все ОС выполняют свои задачи в реальном масштабе времени. Для работы ПО станции необходимо большое количество данных. Совокупность этих данных составляет базу данных станции. Доступ к базе данных осуществляется только через специальные программы ОС.
База данных имеет три типа данных:
- постоянные данные;
- полупостоянные данные;
- переменные данные.
Постоянные данные характеризуют неизменяемые функциональные свойства системы или станции. Примером постоянных данных могут служить данные инициализации. Постоянные данные могут считываться, но не могут изменяться. Такие данные могут замещаться (путем замещения соответствующего программного модуля) только в случае замены ПО станции. Постоянные данные интегрированы в прикладные программы и в программы ОС.
Полупостоянные данные характеризуют статическое состояние станции. Они могут включать данные абонента, линейного окончания и другие. Полупостоянные данные имеют защиту от записи. Программы обслуживания вызовов имеют доступ только для считывания таких данных. В случае необходимости операторы могут изменять эти данные с помощью команд языка человек-машина MML.
Переменные данные характеризуют текущее состояние станции и действия по обслуживанию вызова. Они могут включать информацию, относящуюся к эксплуатационному состоянию аппаратных средств, состоянию соединений и к оперативной готовности ресурсов. Кроме того, эти данные включают в себя результаты действий по обработке вызовов (например, данные по учету стоимости, измерению трафика). Переменные данные не имеют защиты от записи. Они, в основном, считываются и изменяются программами обработки вызовов.
ПО управляющего устройства разбито на ряд программных модулей, выполняющих определенные функции. Программные модули представляют собой наименьшую функциональную единицу ПО.
Часть программного обеспечения загружается в память управляющего устройства по командам ОС из внешней памяти. Освобождение памяти управляющего устройства также производится по командам ОС. Вторая часть ПО, критическая по времени выполнения (например, программы ОС), постоянно загружена в память управляющего устройства (резидентное программное обеспечение).
Основная часть ПО может загружаться в управляющее устройство с внешнего носителя (магнитной ленты, лазерного диска). Другая часть ПО хранится в постоянных запоминающих устройствах (ПЗУ). ПО, хранящееся в ПЗУ, обычно не зависит от конкретного применения станции (например, программы коммутационного поля).
Техническое обслуживание ПО включает:
- контроль работы ПО станции;
- автоматическое обнаружение и устранение ошибок в ПО;
- аварийную сигнализацию об обнаруженных в ПО ошибках;
- устранение сложных ошибок в ПО;
- хранение ПО на внешнем носителе;
- регулярное обновление ПО.
Ошибки в ПО станции составляют незначительную долю от общего числа неисправностей, выявляемых системой технического обслуживания цифровой телефонной станции. Но влияние программных ошибок на работу станции может быть значительным и требовать длительного времени устранения.
Контроль работы ПО цифровой телефонной станции осуществляется автоматически с использованием контрольных программ и контрольных аппаратных средств. Контрольные программы в реальном масштабе времени следят за ошибками в программах, данных и сообщениях между программными модулями.
Для каждого типа станции закладываются индивидуальные контрольные программы. Основными задачами, выполняемыми контрольными программами, являются:
- контроль допустимых значений переменных данных, используемых в программах;
- контроль идентичности данных, записанных в различные ЗУ (в память разных управляющих устройств);
- контроль появления ошибок в хранящейся информации в ЗУ (с помощью проверки контрольных сумм программ и полупостоянных данных);
- проверка определенной характеристики передаваемой между программными модулями сообщений (например, проверка на четность передаваемых сообщений);
- проверка зацикливания программ (с помощью ожидания контрольных импульсов от программы через определенные промежутки времени);
- контроль достоверности адресации ЗУ, т.е. находится ли адрес внутри соответствующего блока переменных;
- контроль попыток записи в защищенную область памяти.
Примером контрольных аппаратных средств является схема исправления однобитных ошибок и обнаружение двухбитных ошибок в ЗУ.
При возникновении программной ошибки ПО станции принимает меры к анализу аварийного сообщения от программы или схемы контроля, сбору и сохранению симптомов ошибки, использованию соответствующих восстановительных мер для устранения программной ошибки.
Автоматическое устранение неисправности осуществляет управляющее устройство, где зафиксирована неисправность, или программа централизованной части подсистемы технического обслуживания цифровой телефонной станции.
Устранение неисправности включает:
- рестарты (перезапуски) различного вида;
- повторную загрузку (перезагрузку) программного обеспечения.
Рестартом (перезапуском) называется процесс, который дает старт программному обеспечению, находящемуся в памяти управляющего устройства, где обнаружена ошибка, с определенной команды.
Различают несколько видов рестартов:
- рестарт с разъединением одного соединения;
- рестарт с разъединением связей в фазе установления соединения;
- рестарт с разъединением всех соединений, установленных или находящихся в фазе установления.
Устранение сбоя всегда начинается с более «мягкого» рестарта.
Если сбой повторяется через некоторое время, то происходит рестарт более высокого порядка.
Если сбой повторяется снова через некоторое время, то техперсоналом производится повторная загрузка (перезагрузка) программного обеспечения с внешнего носителя с разъединением всех устанавливаемых и уже установленных соединений.
На внешнем носителе всегда имеется копия последней версии программ, постоянных и полупостоянных данных.
Рестарты и перезагрузки применяются при обнаружении ошибок в переменных или полупостоянных данных, находящихся в ЗУ управляющего устройства, при кратковременных и часто повторяющихся сбоях управляющего устройства, при зацикливании программ, при неправильной адресации ЗУ, попытках записи программой данных в защищенную область памяти и других ошибках.
При обнаружении ошибок в сообщениях между программными модулями происходит перезапрос ошибочного сообщения у программного модуля - источника сообщения.
Если программы контроля обнаруживают несовпадение идентичных данных, записанных в различных ЗУ, то выполняется автоматическая корректировка данных.
Если в ходе вышеперечисленных восстановительных действий программная ошибка устраняется и не повторяется в течение определенного времени, то считается, что неисправность автоматически устранена и вмешательство технического персонала не требуется.
Аварийная сигнализация сообщает техническому персоналу, обслуживающему цифровую телефонную станцию, о возникновении неисправности в ПО. Аварийная сигнализация сообщает об ошибке в ПО в виде аварийных сообщений, акустических и визуальных сигналов.
Аварийные сообщения выводятся на дисплей терминала технического обслуживания и принтер. В аварийном сообщении указываются признаки ошибки в ПО, где она произошла, действие подсистемы технического обслуживания после обнаружения ошибки (рестарт, перезагрузка), категория срочности устранения ошибки в ПО, если она не устранена, и другая дополнительная информация, которая может потребоваться для проведения восстановительных мероприятий.
Аварийные сообщения записываются станцией в специальном файле и сохраняются в течение времени, определяемом возможностью станции.
Технический персонал должен использовать копию данного файла. Этот файл предназначен для проведения анализа работы ПО цифровой телефонной станции. Длительность хранения файлов определяется техническим руководством станции. Для ошибок, которые не были устранены автоматически и не поддаются устранению с помощью восстановительных действий технического персонала (например, с помощью перезагрузки программного обеспечения с магнитной ленты), должны составляться рапорта с подробным описанием признаков ошибки. Рапорт направляется поставщику оборудования или, в соответствии с договором, в сервисный центр технического обслуживания, который осуществляет послегарантийное обслуживание телефонной станции.
В соответствии с рапортом о неисправности, содержащем максимальную информацию об ошибке в ПО, системный программист сервисного центра обслуживания (при необходимости совместно со специалистами фирмы разработчика ПО) подготавливает необходимые коррекции ПО, проводит тестирование на стенде.
В случае необходимости системный программист может сделать быстро временную «заплату» (коррекция программы на уровне ассемблерных кодов) в программу, где обнаружена ошибка. При этом программа с «заплатой» записывается в ЗУ управляющего устройства, а с предыдущей делается копия на внешний носитель.
Введение новой программы должно производиться в часы наименьшей нагрузки. Перед началом изменения версии ПО делается полная копия предыдущей версии и затем она направляется в центр разработки ПО.
Если новая программа исполняется без ошибок, производится копия новой версии ПО на внешний носитель станции.
В программную и эксплуатационную документацию на станцию специалисты сервисного центра технического обслуживания должны внести соответствующие коррективы, вызванные изменением ПО станции.
Последняя версия ПО (программы, постоянные и полупостоянные данные) должна быть загружена на магнитный (лазерный) диск. При перезагрузках ПО управляющего устройства или всей станции происходит считывание последней версии ПО с магнитного (лазерного) диска.
При вводе модификаций в ПО станции на магнитном (лазерном) диске должна храниться модифицированная версия ПО и предыдущая версия ПО. В случае появления ошибок в модифицированной версии, происходит загрузка предыдущей версии ПО. Резервное копирование ПО производиться не реже одного раза в год.
Для надежности модернизированная версия ПО и предыдущая версия ПО должны храниться в двух копиях или более на магнитных лентах (модернизированная версия - на одной копии и предыдущая версия - на другой). Магнитные ленты должны храниться в специальном месте, безопасном с точки зрения воздействия на ленту неблагоприятных условий (пожара, воды, химических веществ, газов и т.д.) согласно ГОСТ 28 388-89. Доступ к лентам должны иметь только уполномоченные на это специалисты.