Передовица » Макулатура » Материалы конференций » Диалоговая система для отладки ПО персонального компьютера

Диалоговая система для отладки ПО персонального компьютера

В.Б. Кулаков, Ю.В. Чугунов, А.К. Яблонский

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

ОК представляет собой непосредственно связанную пару ЭВМ: целевую (в данном случае персональный компьютер "АГАТ-2") и инструментальную микро-ЭВМ "Электроника 60" с соответствующими наборами периферии. ОК предназначен для:

  • автоматизации отладки программ для целевой машины;
  • обеспечения доступа программ пользователя к набору периферийных устройств инструментальной ЭВМ;
  • организации хранения, редактирования и подготовки программ на магнитных носителях инструментальной ЭВМ.

В набор аппаратных средств ОК входят:

1. Аппаратура инструментальной ЭВМ:

  • микро-ЭВМ "Электроника 60";
  • гибкие диски типа "Электроника НГМД-70" ёмкостью 256 Кбайт;
  • видеотерминал VT-340.

2. Аппаратура целевой ЭВМ:

  • микро-ЭВМ "АГАТ-2";
  • блочный дисплей на базе бытового телевизора (разрешение 64x64, 128x128, 256x256, 8 цветов);
  • бытовой магнитофон.

3. Аппаратура связи.

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

ПО ОК разделено на две части: OK1 и ОК2. OK1, размещённый в инструментальной ЭВМ, включает в себя следующие модули:

  • приём директив пользователя;
  • подпрограммы реализации директив;
  • набор программ связи;
  • блок начальной загрузки ОК2.

ОК2, размещённый в целевой ЭВМ, состоит из:

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

ОК2 содержит также блок начальной загрузки, который находится в ПЗУ. В ПО связи по аналогии с ПО сетей выделены: уровень управления физическим устройством связи, включающий собственно передачу, контроль правильности и технику исправления ошибок, транспортный уровень, обеспечивающий разбиение передаваемой информации на пакеты, коммутацию и мультиплексирование пакетов между различными процессами (например, процессом отладчика и самой задачи).

Скорость обмена составляет 220 бит/с в направлении "Электроника 60"→"АГАТ-2" и 140 бит/с в обратном направлении. Отладка производится с помощью организации контрольных точек (КТ), по которым происходит прерывание счета и управление передаётся ОК. ОК даёт возможность пользователю произвести действия, предусмотренные набором директив (например, ознакомиться с состоянием программы, записать информацию в память и регистры, возобновить счёт и т.д.). К настоящему времени реализовано 20 директив, позволяющих пользователю:

  • вводить и редактировать тексты программ с клавиатуры VT-340;
  • хранить их на МД;
  • выдавать содержимое регистров и памяти "АГАТ-2" на экран VT-340, а также записывать в них информацию, вводимую с клавиатуры;
  • запускать задачи на счёт с остановами по КТ;
  • перезагружать ОК2 в случае порчи содержимого памяти, неверно составленной программой пользователя.

Опытная эксплуатация ОК позволила существенно повысить производительность труда программиста при разработке для "АГАТ" транслятора языка Бейсик.

* * *

Использование материалов проекта agatcomp без получения предварительного письменного разрешения agatcomp запрещено.


Почта для обратной связи: mail@agatcomp.ru


Живое общение по теме Агата: Telegram группа Agatcomp.


Накопленные знания и проекты: тематический ФОРУМ.


© 2004-2024 agatcomp.su / agatcomp.ru

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *