10 (Лабораторная работа №10)
Описание файла
DJVU-файл из архива "Лабораторная работа №10", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "информатика" в общих файлах.
Просмотр DJVU-файла онлайн
Распознанный текст из DJVU-файла
Лабораторная работа №10 по курсу «Архитектура ЗВМ, системное программное обеспечение» на 2007/08 учебный год. Отладчики систем программирования ОС 1).з)1Х на ЭВМ Р1я11а1 А!рйа "Использование опмадчико — последнее средспмо, перед тель как бросил>ь систенное програ>строенное и зантиься чезннибудь полегче, поприпер, тиса>евиным оная>зом!" Э Йодан В ходе выполнения работы необходимо проделать и запротоколировать как минимум все описанные действия над некоторой программой на изучаемом языке программирования, в том числе и со специально внесенными ошибками времени выполнения.
Входной контроль знаний по работе проводится по вопросам к зачету №3, часть 2 )3!. Отладчики с1Ьх [1] и абЬ |6) представляют собой интерактивные средства отладки программ, разрабатываемых в соответствующих системах программирования Тгпб4 1)МХ или 6141) Со>прйсг Со1ес>юп. Отладка может производиться путем пошагового иипгерпретативного вьтолнения специальным образом скомпилированой программы, позволяющего осуществлять трассировку работы программы с контролем и изменением значений переменных, установку контрольных точек астапова либо с нолти!ью обрабопжи постертного далина програлены !саге). Строчный интерфейс отладчиков позволяет вести отладку с помощью текстового терминала, а также дает возможность удаленной отладки.
Отладка программы производится в интерактивном реяшме путем ввода команд с терминала. Запуск отладчика производится из командной строки командой г!Ьх или яг!Ь с указанием имени отла>киваемой программы !выполнимого файла в машинных кодах) и, возможно, файла с посмертным дампом саге. Отлаживаемая программа перед отладкой должна быть обязательно скомпилирована с клн>чом компилятора -е.
Основным назначением интерактивного отладчика является поиск динамических ошибок в программе, таких, которые нс удается найти без се выполнения 14). Существует два различных способа использования отладчика: .4начиз да>та аварийного завершения (соке). В случае фатальной ошибки во время выполнения программа аварийно завершается, а содержимое ее области оперативной памяти дампирустся (сохраняется) в файл соте. Для отладки такой программы нужно применять соответствующий отладчик к файлам соте и а.оШ с)Ьх . /а.сШ или ./ссхе илисдЬ -с ./сохе или ./а.сап(в зависимости отиспользуемой системы програмирования, а.оп1 — имя исполняемой программы).
После запуска отладчик попадает в тот блок программы, в котором произошла ошибка, и позволяет просмотреть значения переменных, стек вызова процедур)функци>ц а также произвести откат с тем, чтобы начерно пройти место аварии со скоррсктироваными значениями переменных. Дтишическги> опмадка !без соке) предел>авляет собой по>половое выполнение програилны на тестовьп данных Если автору программы известен набор входных данных, приводящий к ошибке, то отладчик применяется только к оригинальной выполнимой программе: команда с)ьх . /в.
сне или сс)ь . /а. сне. Для пошагового выполнения программы можно установить точку астапова на первой строке основной программы, или несколькими строками выше места предполагаемой ошибки, с помощью специфической для конкретного отладчика командой астапова (а1ор а! для ЙЬх или Ьгеа!сро)п! для лбЬ). Далее необходимо запустить программу командой тип, и после остановки на первой строке программы использовать команды пехг!я1ер для пошагового выполнения. Для вывода текста программы на экран (например, чтобы определить номер первой выполнимой строки основной программы) служит команда !1зг. В процессе пошаговой интерпретации можно отображать текущие значения скалярных и структурных переменных командой рг1п1.
Особенности от задки Паскачь-з>рогргыьи отладчиками Хв!Ь и г/Ьх: 1. После запуска отладчика лг!Ь необходимо выполнить команду зе1 !апппаяе !>власа!, для установки базового языка отладчика (по умолчанию базовый язык — Си!). 2. При использовании О)чБ Разса1 с Р)Ь исходный текст отлаживасмой Паскаль-программы не всегда может быть найден автоматически (развитие ясс, арс и абЬ происходит недостаточно согласовано). В этом случае в начале работы необходимо явно указать имя программы в команде йзг: например, при отладке программы 1аЬ9.р необходимо указать команду бя1 1аЬ9.р:1 С 1 означает показ исходного текста начиная с первой строки). В результате этого отладчик сопоставляет исходный текст двоичному образу и позволяет осуществлять полноценную отладку на уровне входного языка (в том числс задание точек останова и др.).
3. Если в языке Паскаль тело программы (основной блок, раздел операторов) не именуется, лля доступа к ней в отладчиках бЬх и пбЬ используются имена тат и раиса! тат ргоягат соответственно. 4. Отладчик йг)Ь не умеет работать с некоторыми средствами Паскаля, такими как файлы, множества, вложенные процедуры и функции. Видимо потому, что отсутствуют прямые аналоги в языке Си. Основные команды отладчика (нодчйркнупгы минимальнвге сакра>>(еггия)г Описание ИЬх подсказка по разделу помощи отладчика.
Без параметров выводит список разделов. Ье(п (<разде>>>/ распечатка текста функции/процедуры/файла или всей программы, начиная с указанной строки. По умолчанию распечатываются следующие 1О строк программы. Команда меюгет тек ий отлаживаемый айл1 11я1 [<гпт функции/процедурыгфгита> г/ /полгар строки( а1 <номер строки> Ьгеа1гро(п1 <номер строки/гмщ функции> задание точки астапова на указанной строке текущего исходного файла программьг; запуск программы на выполнение. Могут указываться необязательные параметры командной строки и операции перенаправления ввода-вывода гпп (<параметры>/ >пп1 <выражение> печать значения вь ажения, которое может включать переменные программы выполнение очередной строки программы при пошаговой трассировке (процедуры и функции не трассируются, а выполняются за один такт).
Необязательный параметр п указывает число строк программы для выполнения (по умолчанию — 1) пех1 (<п>( выполнение очередной строки программы (с трассировкой вызовов функций/процедур). Пе ед выполнением пел!/в!и о амма должна быть запущена командой гип я1еп (<п>( присваивание значения переменной (при отладке программ на языке Си в качестве символа присваивания использовать знак = г) йяя[дп <имя> = <выражение> яе1 цьчпаЫе <иия>: = <выра>кение> ийа11я <иия-переменной> распечатка определения типа переменной (на языке программирования). аспечатка соде жнмого стека вызовов мг?ре <шт-переиенной> 1я1ас1с (<п>( Ьаск(тасе, Ь1 сопйвпе продолжение выполнения программы после остановки п11 выход из отладчика Нажатие клавиши [Пе(гггп] в пустой командной строке отладчика вызывает повторение предыдущей команды отладчика, обычно используется для повторения команд пех1/я1ер.
Информацию о других командах отладчика в системс Тп>64 (ЛьПХ можно получить по команде пгап ИЬх или прочитать в 5-й главе документа по СП Тшб4 (ЛьПХ[Ц. Более подробные сведения по отладчику аИЬ версии 6.5.50 приведены в полном документе [6), во встроенной документации отладчика и могут быть получены по команде -ьььрр. ° ь.р-;~ь, ьь-р..ььь ° р ° гягь лррьрь~~~~.гьь р..рр -.рьр. 3?ггпгература Тгг>64 !/гь/?ХРгойгапггггег 'в 6гггг/е. Файл АЯС??9/ц ТЕ ргй" (СТ>- креста катин/. Глава 5.
2. Тгг>64 Рагса! Опфте Манна! (тап рс/. 3. Жогоггев Е. А. Лекгриь по технологи> програъгггггровангщ Лекция !О. Тестирование и отладка программного средства. (/9? 4. Бек Л. Введение в сггстемное програмлг>гировангге. (9/, с. 423-429. В и/птолгенгш — классггческая статья про оигладчикн вообгце. г>,,е„г. » Ьр аг„р„., »р. рьЬ Ьч„ри гв Ь.ррЬ.,рчч.гьйнр граЫГггр . Л Р ° г~ььр; » .
Ьрр а Риг ° б. 1)ебггйригррг иц/Ь иг/Ь. Докуменпг по версии б 5 50. -4/8 с., ил. (Ь!/рэУиньлы.ипи огВ/во(!шаге/егЛь дг/Ьрг?/). Сопнаеителиг проф. Зайцев ВЕ.", асс Лебедев АВ., си>преп. Сеггицкии !!А,, доц. СогиииковДВ., преп. Горл!он АА, преп. Иеретягип ИА, и прогр ИзлгагповАА. 2/3 Следует избегать команд вех1/втер, ведущих в языковую среду языка, т.к. путешествие по кодам библиотек компилятора, например функции рг1ппб, бесполезно для начинающего программиста. Соответствующие исходные тексты системных программ могут быть недоступны в момент отладки, либо они могут быть реализованы на другом языке программирования. Кроме того, такие программы, как правило, компилируются без ключа — д. .