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

1.12. Программное обеспечение мпс.

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

МП как числовой исполнитель способен выполнять некоторые функционально завершенные последовательности действий над числами - операндами. Эти последовательности маркируются (обозначаются) тем же "языком" чисел, который воспринимается устройством управления МП. Число-маркер, поставленное в соответствие некоторой последовательности действий МП по обработке информации в рамках своей структуры, называется кодом операции, а сама последовательность – командой.

Полный набор команд, которые способен выполнять МП, носит название системы команд. Программой называется последовательность действий конкретного элемента МПС, описанная в терминах его команд.

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

Структура ПО.

На заре возникновения вычислительной техники большую часть затрат при разработке составляли аппаратные средства. В настоящее время при создании МПС свыше 90% затрат прихо­дится на программное обеспечение (ПО), так как совершенствовались технологии производства аппаратных средств, а труд программиста оставался таким же затратным (см. рис.61). Поэтому одним из условий успешного внедрения МПС яв­ляется наличие уже разработанного и хорошо развитого ПО под выб­ранный МПК, которое обычно состоит из двух частей: резидентной и кросс-обеспечения (см. рис.62).

Резидентное ПО - это совокупность программ, разработанных для конкретной МПС на языке используемого в ней процессора. К нему можно отнести:

  • программы самодиагностики для контроля правильности функционирования данной МПС;

  • прикладные программы, непосредственно реализующие функции, возлагаемые на систему пользователями (управление объектами, проектирование изделий и многое другое);

  • операционная система, обеспечиваю­щая как организацию совместного функционирования всех элементов ее структуры (монитор, включающий в себя драйверы внешних устройств – программы, реализующие информационно-логическое сопряжение ВУ с ним), так и распределение ресурсов МПС между прикладными программами (процессами) пользователя (супервизорная часть);

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

Рис.61

Рис.63

Рис.62

Другую большую часть программного обеспечения МПК составляет кросс-обеспечение - это совокупность программ для разработки и отладки резидентного ПО МПС на МПС (ПЭВМ) с другим типом МП. К ним относятся:

  • текстовый редактор, обеспечи­вающий ввод в кросс-систему и корректировку программы пользователя на исходном языке;

  • интерпретатор, осуществляющие перевод программы с исходно­го языка в команды МП с одновременным их исполнением;

  • дизассемблер - транслятор, осуществляющий обратное преобразование исполняемой программы с языка команд МП на формальный язык – Ассемблер;

  • программный эмулятор, позволяющие промоделировать работу МП и прочих аппа­ратных средств разрабатываемой МПС на другой ЭВМ,

и многое другое.

Распределение (картирование) памяти.

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

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

- обработки данных;

- реализации обмена между МП и ВУ (монитор с входя­щими в него драйверами - подпрограммами, преобразующи­ми формат данных при передаче их от одного ВУ или МП к другому);

- планирования, распределения и управления использованием ресурсов МПС (супервизор) и др.

Кроме того, в ЗУ МПС выделяются поля под хранение постоянной (таблицы и константы) и оперативно изменяющейся информации (рабочие ячейки). Применение подпрограмм значительно сокращает потребность в ЗУ.

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

В качестве примера на рисунке 63 приведено укрупненное распределение ПО для ПЭВМ клона РС (фирма IBM) в сравнение с компьютерами фирмы Apple. Это распределение было обусловлено патентной борьбой за рынок ПЭВМ и привело к серьезным проблемам в настоящем времени при их использовании.

Проблемы, возникающие при разработке ПО.

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

- измерения, оценки и управления производительностью труда программистов, подлежащего оплате;

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

- транспортабельности ПО, то есть совместимости его с разны­ми МПС, особенно в массовом производстве;

- эксплуатации ПО (не соответствует ожиданиям заказчика, ошибки при разработке и адаптации МПС к ТОУ и т. д. - наиболее до­рогостоящий вопрос).

Наблюдается нехватка специалистов в этой области и, как следствие, взрывной рост занятости в сфере создания и адаптации ПО к нуждам производства.

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

Все сказанное выше определяет задачи по созданию ПО.

  1. Разработка общей методологии и эффективных технологий программирования.

  1. Повышение квалификации программистов.

  1. Создание средств программного обучения.

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

Мы кратко рассмотрели особенности построения МПС управления ТОУ и "слегка" коснулись таких важных вопросов, как построе­ние многопроцессорных МПС и сетей МПС, реализации микропрограммного управления и др. Желающих углубить свои знания отсылаем к литературе [1-6,8-19] и спецкурсам, читаемым по соответствующим дисциплинам.